aboutsummaryrefslogtreecommitdiff
path: root/sway/server.c
AgeCommit message (Collapse)Author
2023-08-24Hide xwayland_shell_v1 from regular clientsSimon Ser
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.
2023-07-24Add support for cursor-shape-v1Simon Ser
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4106
2023-07-12Send wl_surface.preferred_buffer_scaleSimon Ser
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3696
2023-06-23idle-inhibit-v1: simplify with server globalSimon Ser
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.
2023-06-08Handle gamma-control-v1 set_gamma eventsSimon Ser
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4046
2023-06-06Add support for wlr-layer-shell ON_DEMAND keyboard interactivityErik Reider
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.
2023-04-14Pass version to wlr_compositor_create()Simon Ser
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3696
2023-02-10Add support for fractional-scale-v1Simon Ser
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3511
2023-02-05launcher: support external launcher tokensRonan Pigott
2022-12-05Add `primary_selection` config optionAidan Dang
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>
2022-11-30Chase breaking changes in wlroots!3903Simon Ser
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3903
2022-11-28Make DRM backend optionalSimon Ser
2022-11-26launcher: initialize launcher_ctxs once on startupRonan Pigott
2022-11-15Update for wlroots!3814Simon Ser
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3814
2022-11-15ipc: add view content typeSimon Ser
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3599
2022-11-14sway/server: specify wlr-layer-shell version on creationSimon Zeni
2022-10-14Add support for ext-idle-notify-v1Simon Ser
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3753
2022-08-04Enable single-pixel-buffer-v1Simon Ser
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3428
2022-06-03Refuse to start when SUID is detectedKenny Levinsen
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.
2022-05-16server: request xdg-shell v2Rouven Czerwinski
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
2022-04-29Implement ext-session-lock-v1Daniel De Graaf
2022-04-09Avoid format-truncation warningDaniel De Graaf
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.
2022-02-08Fix snprintf compiler warningMuhamed Hobi
2022-01-13Upgrade for wlroots surface refactoringSimon Ser
See [1] for details. [1]: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3412
2021-12-13Add support for linux-dmabuf surface hintsSimon Ser
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/1376
2021-12-09Fixup headless output namesSimon Ser
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
2021-11-25sway: replace noop_output by fallback_outputSimon Zeni
wlroots removed the support for the noop backend. Instead we rely on the headless backend to provide the fallback output.
2021-11-25Replace wlr_headless_backend_create_with_renderer callSimon Ser
Update for the wlroots breaking change in [1]. [1]: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3367
2021-11-18sway: create wlr_renderer and wlr_allocatorSimon Zeni
wlroots now required the compositor to create its own wlr_renderer and wlr_allocator to initialize the wlr_output
2021-09-09introduce wlr_drm_lease_v1Simon Zeni
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.
2021-06-02Implement xdg-activation-v1Simon Ser
See https://github.com/swaywm/wlroots/pull/2718.
2021-04-11Remove WLR_HAS_XDG_FOREIGN checksSimon Ser
References: https://github.com/swaywm/wlroots/pull/2833
2021-02-16transactions: Amend pending transactionsKenny Levinsen
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
2021-02-02xdg-foreign: add v1 and v2 implementationsAleksei Bavshin
Co-authored-by: Jason Francis <cycl0ps@tuta.io>
2020-12-30Remove create_renderer_func argumentSimon Ser
It's removed upstream [1]. [1]: https://github.com/swaywm/wlroots/pull/2561
2020-12-08Handle secondary headless backend failuresSimon Ser
2020-12-08Drop gtk-primary-selection supportIsaac Freund
2020-09-16server: Avoid using "wayland-0" as WAYLAND_DISPLAYGeoffrey Casper
See https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/486
2020-07-02Unset DISPLAY when wlr_xwayland failsSimon Ser
Avoids having applications connect to a leftover DISPLAY when Xwayland fails to initialize.
2020-06-23Implement wlr-foreign-toplevel-management-v1Drew DeVault
2020-06-17Add support for viewporterSimon Ser
Depends on [1]. [1]: https://github.com/swaywm/wlroots/pull/2092
2020-05-27Log Xwayland startup failuresTudor Brindus
Though unlikely, this commit makes server initialization totally explicit in the logs.
2020-05-01Add a secondary headless backendSimon Ser
This allows the create_output command to work on DRM too.
2020-04-04Port input method and text input from rootstonxdavidwu
This ports swaywm/wlroots#1203, swaywm/wlroots#1303, swaywm/wlroots#1308, swaywm/wlroots#1759 rootston part to sway. Co-Authored-By: Leo Chen <leo881003@gmail.com>
2020-02-26Add support for wlr-output-power-management-unstable-v1Simon Ser
2019-11-17Add sway_surfaceIvan Molodetskikh
For extending wlr_surface with additional things.
2019-09-25input: Add support for tablet protocol.John Chadwick
Sway has basic support for drawing tablets, but does not expose properties such as pressure sensitivity. This implements the wlr tablet v2 protocol, providing tablet events to Wayland clients.
2019-08-20cmd_xwayland: add force for immediate launchBrian Ashworth
This just adds a force option to cmd_xwayland that allows for xwayland to be immediately launched instead of lazily launched. This is useful for slower machines so it can be part of the startup time instead of when the user is actively trying to use it
2019-08-20Remove xdg-shell v6 supportSimon Ser
All major toolkits and apps have gained xdg-shell stable support. Closes: https://github.com/swaywm/sway/issues/3690
2019-07-27Remove all wayland-server.h includesSimon Ser
The documentation for wayland-server.h says: > Use of this header file is discouraged. Prefer including > wayland-server-core.h instead, which does not include the server protocol > header and as such only defines the library PI, excluding the deprecated API > below. Replacing wayland-server.h with wayland-server-core.h allows us to drop the WL_HIDE_DEPRECATED declaration. This commit si similar to wlroots' ca45f4490ccc ("Remove all wayland-server.h includes").