Age | Commit message (Collapse) | Author |
|
This reverts commit ee5f98ad49fed0439f3313ec685307831d1d1d05.
This intoduced problems where outputs could not be turned off because
they had flips pending.
|
|
This commit makes more output properties (mode, enabled, scale and transform)
atomic. This means that they are double-buffered and only applied on commit.
Compositors now need to call wlr_output_commit after setting any of those
properties.
Internally, backends still apply properties sequentially. The behaviour should
be exactly the same as before. Future commits will update some backends to take
advantage of the atomic interface. Some backends are non-atomic by design, e.g.
the X11 backend or the legacy DRM backend.
Updates: https://github.com/swaywm/wlroots/issues/1640
|
|
|
|
Also fix rootston setting the preferred mode when another mode is specified in
the config file.
|
|
The deleted includes are redundant, because other headers will include
the necessary files. Additionally, they cause build failures, because
including EGL/egl.h or EGL/eglext.h directly, instead of through
wlr/render/egl.h or wlr/render/interface.h, will mean that
MESA_EGL_NO_X11_HEADERS will not have been defined, and so the EGL
headers will attempt to pull in unnecessary X11 headers that may not
exist on the system.
For the headers produced by glgen.sh, the includes couldn't simply be
deleted, because no other header would include the EGL headers. Neither
wlr/render/egl.h or wlr/render/interface.h felt appropriate to include,
so I opted instead to copy the MESA_EGL_NO_X11_HEADERS definition before
the EGL includes.
|
|
We should also be careful when using wlr_output_layout_get_box(), since
it may return null.
|
|
Fixes https://github.com/swaywm/wlroots/issues/1610
|
|
|
|
|
|
|
|
|
|
|
|
Broken by 62fd03a7beb18da6c4a5929e38739cf2199dfa79
Closes: #1631
|
|
|
|
|
|
|
|
|
|
This implements rootston surface iterators to ease rendering, sending
frame/presentation events and accumulating damage.
|
|
|
|
|
|
Fixes fullscreen mode in e.g. RetroArch and ioquake3.
|
|
Fixes #1094
|
|
|
|
This is one more step towards [1]. This gives more freedom to the compositor
wrt. how it handles damage.
[1]: https://github.com/swaywm/wlroots/issues/1363
|
|
Rendering in wlr_output_swap_buffers has unfortunate side-effects.
|
|
This wasn't using direct scan-out. Direct scan-out will probably
work differently with @ascent12's work anyway.
|
|
This prevents some annoying issues when e.g. not including wlr/config.h or
making a typo in the guard name.
|
|
Fix damage tracking for surfaces with transforms
|
|
Transforms were applied, but scale wasn't.
|
|
layer-shell overlays
Otherwise the overlays will no tbe drawn.
Closes: #1300
|
|
|
|
|
|
|
|
|
|
This calculates and returns the effective damage of the surface in
surface coordinates, including the client damage (in buffer
coordinates), and damage induced by resize or move events.
|
|
* Rename the constraint_create signal to new_constraint for
consistency
* Move the constraint_destroy signal to the constraint itself
* Use rotate_child_position instead of duplicating logic
* Fix inert constraint resource handling
* Style fixes
|
|
Damage tracking on transformed surfaces now work (see
"weston-simple-damage --rotation=90"), using either of buffer or surface
damage.
|
|
|
|
|
|
|
|
|
|
Allow to add additional modes to outputs
|
|
|
|
This allows to pass custom modes.
|
|
|
|
|
|
|
|
|
|
The texture is managed by the surface's wlr_buffer now. In
particular, the buffer can destroy the texture early if it becomes
invalid.
|
|
|