the positioning of outputs, tracks
the surfaces on the outputs and
sends enter/leave for the surfaces
Additionally the output_map will
handle re-location of windows if
a output mode is changed, an output is
added or removed.
The shell has been updated to use the
primary output for the initial placement.
The fullscreen/maximize requests will now
handle the shell part correctly. For real
fullscreen output the rendering has to be
changed.
The output name is considered unique
and an output can be retrieved from
the map by location, output or name.
This can be used as the base for HiDPI
handling.
This changes the state handling logic of wl_surface to automatically
track subsurface pending in the form of transactions. The role enum
(and the associated type parameter) is no more, and replaced by a
general-purpose typemap-like container on surfaces.
The new logic is introduced in the files:
- `src/wayland/compositor/cache.rs`
- `src/wayland/compositor/transaction.rs`
The rest of the PR is the fallout of these changes, as well as a few
trivial clippy fixes.
This commit adds an xwayland feature to anvil. Right now, this feature
doesn't do much. anvil uses the smithay code to start XWayland, but does
not do anything with it once it is running.
Signed-off-by: Uli Schlachter <psychon@znc.in>