Age | Commit message (Collapse) | Author |
|
Allowing sandboxed clients to request DRM leases has security
implications.
|
|
See https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4397
|
|
It is no longer in use.
|
|
evdi is open-source, but is just some condom for their proprietary
user-space driver.
|
|
This is less punishing for users with the Nvidia driver loaded but
not used by Sway (e.g. for CUDA).
|
|
|
|
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4310
|
|
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4440
|
|
As a first step, deny access to privileged protocols to sandboxed
apps.
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3589
|
|
We support the standard idle-notify protocol since Sway 1.8.
|
|
|
|
Regular clients are not allowed to use this interface. wlroots
already sends a protocol error if a non-Xwayland client tries to
use this interface, but let's remove all temptation by hiding it
completely.
|
|
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4106
|
|
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3696
|
|
We only have a single running server, no need to keep track of
multiple server instances. Also no need to support multiple
idle inhibit managers.
|
|
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4046
|
|
This allows for layer shell surfaces to receive focus while the surface is explicitly focused, i.e allowing
text fields to receive keyboard input just like a regular surface.
|
|
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3696
|
|
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3511
|
|
|
|
See: https://github.com/swaywm/sway/issues/4511
Adds a bool config option `primary_selection`, which explicitly
enables/disables the primary selection clipboard. Defaults to enabled.
This is implemented as a launch-only option which enables or disables the creation of the
`zwp_primary_selection_device_manager_v1` global.
Co-authored-by: Tilde Rose <t1lde@protonmail.com>
|
|
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3903
|
|
|
|
|
|
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3814
|
|
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3599
|
|
|
|
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3753
|
|
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3428
|
|
This ensures that those surprised by the deprecation of SUID operation
receive an error rather than accidentally having sway run as root.
This detection will be removed in a future release.
|
|
Wlroots does not yet support the newer xdg-shell versions and now
requires the compositor to set the supported xdg-shell version during
creation. Set this to v2 for sway as well.
Fixes https://github.com/swaywm/sway/issues/7001
|
|
|
|
The existing code gives this error when compiled with GCC 12:
../sway/server.c: In function ‘server_init’:
../sway/server.c:217:75: error: ‘%d’ directive output may be truncated writing between 1 and 11 bytes into a region of size 8 [-Werror=format-truncation=]
217 | snprintf(name_candidate, sizeof(name_candidate), "wayland-%d", i);
| ^~
../sway/server.c:217:66: note: directive argument in the range [-2147483647, 32]
217 | snprintf(name_candidate, sizeof(name_candidate), "wayland-%d", i);
| ^~~~~~~~~~~~
../sway/server.c:217:17: note: ‘snprintf’ output between 10 and 20 bytes into a destination of size 16
217 | snprintf(name_candidate, sizeof(name_candidate), "wayland-%d", i);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Because i is never negative, this is a false positive, but it is easy to
change i to unsigned to silence the error.
|
|
|
|
See [1] for details.
[1]: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3412
|
|
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/1376
|
|
We use the headless backend to create a special fallback output
used when no other output is connected. However this messes up the
"real" headless output names users have come to expect (e.g.
currently the first headless output will be named "HEADLESS-2"
instead of "HEADLESS-1").
Fix this by setting the output name with [1].
[1]: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3395
|
|
wlroots removed the support for the noop backend. Instead we rely on the
headless backend to provide the fallback output.
|
|
Update for the wlroots breaking change in [1].
[1]: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3367
|
|
wlroots now required the compositor to create its own wlr_renderer and
wlr_allocator to initialize the wlr_output
|
|
This prevents sway from extending the desktop to i.e. VR headsets, and makes
them available for DRM leasing.
Non-desktop wlr_outputs will be offered through the wlr_drm_lease_v1_manager
interface for client to lease.
|
|
See https://github.com/swaywm/wlroots/pull/2718.
|
|
References: https://github.com/swaywm/wlroots/pull/2833
|
|
The transaction system contains a necessary optimization where a popped
transaction is combined with later, similar transactions. This breaks
the chronological order of states, and can lead to desynchronized
geometries.
To fix this, we replace the queue with only 2 transactions: current and
pending. If a pending transaction exists, it is updated with new state
instead of creating additional transactions.
As we never have more than a single waiting transaction, we no longer
need the queue optimization that is causing problems.
Closes: https://github.com/swaywm/sway/issues/6012
|
|
Co-authored-by: Jason Francis <cycl0ps@tuta.io>
|
|
It's removed upstream [1].
[1]: https://github.com/swaywm/wlroots/pull/2561
|
|
|
|
|
|
See https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/486
|
|
Avoids having applications connect to a leftover DISPLAY when Xwayland
fails to initialize.
|