compositor-wayland: Remove unused output handling code

Signed-off-by: Jason Ekstrand <jason@jlekstrand.net>
compositor-wayland: rename wayland_compositor.inputs to input_list

Signed-off-by: Jason Ekstrand <jason@jlekstrand.net>
compositor-wayland: Fix cursor coordinate transforms so it works on translated outputs

Signed-off-by: Jason Ekstrand <jason@jlekstrand.net>
compositor-wayland: Move config parsing into backend_init

This cleans up the configuration and command parsing and separates it from
compositor/output initialization.

Signed-off-by: Jason Ekstrand <jason@jlekstrand.net>
compositor-wayland: Add a --scale option

Signed-off-by: Jason Ekstrand <jason@jlekstrand.net>
compositor-wayland: Add fullscreen support

This adds fullscreen support to the wayland backend.  You can make any
output fullscreen by the shortcut CTRL+ALT+F.  You can also run weston with
the --fullscreen option which causes it to create a single fullscreen
output.

Signed-off-by: Jason Ekstrand <jason@jlekstrand.net>
westoy: Fix the version number we request for wl_seat

If the compositor supports a lower version, like version 2, we need
to request that instead of version 3.
westoy: Remove window_touch_move

It seems to be the same as window_move, except it ignores the passed
in serial (???) and instead just uses the one of the display.
westoy: Remove unused support for window parents

It seems that this was only used by the popup menu infrastructure,
which can handle this all on its own. Implementing e.g. transients
in the future can be done with a simple xdg_shell_set_transient_for.
westoy: Use subsurfaces for tooltips instead of transient windows

Transient windows, at least not as they are today, don't exist in
xdg_shell. Subsurfaces allow for specially placed surfaces relative
to a window, so use these instead.
westoy: Remove some accessors for wl_shell / wl_shell_surface

We want to remove support for these deprecated interfaces. Since
nothing is using them, this is a simple change.
westoy: Remove fullscreen methods

These aren't supported under xdg_shell, at least not right now.
If xdg_shell ever gets support for them, we can revert this commit
and adapt it.
westoy: Remove MAXIMIZED and FULLSCREEN as separate window types

xdg_shell changes this around so that they are flags on the remote
object itself, not separate surface types. Move to a system where
we calculate the state from the flags ourselves and set the appropriate
wl_shell_surface type.

When we port to xdg_shell, we'll drop these flags and simply sync
on the client.
westoy: Schedule a full resize when we add a subsurface

If a client adds a subsurface, we need to make sure it's allocated
properly, so queue a resize and redraw on the parent window.
westoy: Port the toy toolkit over to xdg-shell