aboutsummaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)AuthorLines
2022-10-14Add support for ext-idle-notify-v1Simon Ser-0/+1
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3753
2022-10-09Use keyboard_state.focused_surface directlyFerdinand Schober-2/+0
2022-10-09allow pointer_constraints on layer_shell surfacesFerdinand Schober-0/+2
2022-10-07sway/commands/output: Add command for unplugging non-physical outputsAndri Yngvason-0/+1
2022-09-19sway: add non-desktop outputs to json when running `swaymsg -t get_outputs`Alex Maese-0/+2
2022-09-19sway: Add non-desktop-output typeAlex Maese-0/+9
Currently, when encountering a non-desktop display, sway offers the output for leasing and returns without storing it in a sway specific output type like `struct sway_output`. Additionally, running `swaymsg -t get_outputs` doesn't show non-desktop outputs. This commit stores the non-desktop outputs into a struct called `sway_output_non_desktop`, and adds them to a list on `sway_root`
2022-07-04Remove internal references to DPMSSimon Ser-8/+2
While at it, use an int for the config field, just like we do for all other fields.
2022-07-01Reuse parsed PangoFontDescriptionHugo Osvaldo Barrera-7/+9
Avoids parsing the configured font each time text is rendered.
2022-07-01Reject font values that are invalid for pangoHugo Osvaldo Barrera-2/+4
Use pango to parse font configuration early, and reject the command as invalid if the value is invalid for pango. Since we're already parsing the font into a `PangoFontDescription`, keep that instance around and avoid re-parsing the font each time we render text. Fixes: https://github.com/swaywm/sway/issues/6805
2022-06-23Rename dpms output command to powerSimon Ser-0/+1
The "dpms" command refers to VESA Display Power Management Signaling, a deprecated standard. It's superseded by VESA DPM. Instead of tying out command name to a particular standard, use the neutral term "power".
2022-06-22Remove access to wlr_input_device unionSimon Ser-0/+3
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3626 Closes: https://github.com/swaywm/sway/issues/7077
2022-06-03Refuse to start when SUID is detectedKenny Levinsen-2/+0
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-30sway: add bindgesture commandFlorian Franzen-3/+161
Co-authored-by: Michael Weiser <michael.weiser@gmx.de>
2022-05-27xdg-shell: schedule a configure on maximize requestKirill Primak-0/+1
This commit reverts 03879290dbee26127f6867ef60bc2a7f9a6c8c5f and fc84bcb7fb0ffa29b1f9bed287762241a3473803.
2022-05-18realtime: request SCHED_RR using CAP_SYS_NICERouven Czerwinski-0/+2
Try to gain SCHED_RR (round-robin) realtime scheduling privileges before starting the server. This requires CAP_SYS_NICE on Linux systems. We additionally register a pthread_atfork callback which resets the scheduling class back to SCHED_OTHER (the Linux system default). Due to CAP_SYS_NICE, setting RLIMIT_RTPRIO has no effect on the process as documented within man 7 sched (from Linux): Privileged (CAP_SYS_NICE) threads ignore the RLIMIT_RTPRIO limit; as with older kernels, they can make arbitrary changes to scheduling policy and priority. See getrlimit(2) for further information on RLIMIT_RTPRIO Note that this requires the sway distribution packagers to set the CAP_SYS_NICE capability on the sway binary. Supersedes #6992
2022-05-11config: Remove unused mouse binding structureMichael Weiser-9/+1
Mouse bindings are handled alongside normal bindings. Remove the unused separate data structure definition to avoid confusion. Signed-off-by: Michael Weiser <michael.weiser@gmx.de>
2022-04-29Implement ext-session-lock-v1Daniel De Graaf-0/+19
2022-03-17sway/input: follow up wlroots input device events renamingSimon Zeni-3/+3
2022-03-15swaynag: allocate button_details with detailsNihal Jere-1/+1
They are used together, so it doesn't make sense to allocate them separately.
2022-03-14swaybar: remove swaybar_output.input_regionSimon Ser-1/+0
No need to keep the region around, we can immediately destroy it after the wl_surface.set_input_region request.
2022-03-12Replace pcre with pcre2ndren-3/+4
Closes: https://github.com/swaywm/sway/issues/6838
2022-03-08Remove WLR_SWITCH_STATE_TOGGLE usageSimon Ser-1/+7
Ref [1]. [1]: https://gitlab.freedesktop.org/wlroots/wlroots/-/commit/4792446ee8f50104bd207d9ccd8558a7e4eb4514
2022-02-22Remove some erroneous apostrophes in commentsThomas Hebb-1/+1
2022-02-07xdg-shell: use wlr_xdg_popup in sway_xdg_popupSimon Ser-1/+1
Improved type safety.
2022-02-07xdg-shell: use wlr_xdg_toplevel in sway_viewSimon Ser-1/+1
Improved type safety. Closes: https://github.com/swaywm/sway/issues/6813
2022-01-31xwayland: listen to `request_activate` eventTuomas Yrjölä-0/+1
When REAPER submenu is closed `XCB_CLIENT_MESSAGE` with type `NET_ACTIVE_WINDOW` is sent to set focus to parent menu. Closes: https://github.com/swaywm/sway/issues/6324
2022-01-22input/cursor: pass through pointer hold gesturesTudor Brindus-0/+2
This just follows swaywm/wlroots#3047, so `wl_pointer_gestures_v1` clients can be notified of these events.
2022-01-13Upgrade for wlroots surface refactoringSimon Ser-7/+7
See [1] for details. [1]: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3412
2022-01-08Destroy sub-surfaces with parent layer-shell surfaceSimon Ser-0/+3
Closes: https://github.com/swaywm/sway/issues/6337
2021-12-17output: change output::destroy to output::disableRonan Pigott-1/+1
This changes output::destroy to output::disable and emits it only once when an output is disabled, instead of twice in succession.
2021-12-13swaynag: remove xdg-output logicSimon Ser-3/+0
We can just get the output name from wl_output directly, now that wl_output version 4 exists.
2021-12-13Add support for linux-dmabuf surface hintsSimon Ser-0/+2
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/1376
2021-12-10Add focused_tab_titleVsevolod-0/+6
2021-11-25sway: replace noop_output by fallback_outputSimon Zeni-2/+1
wlroots removed the support for the noop backend. Instead we rely on the headless backend to provide the fallback output.
2021-11-23Add 'output render_bit_depth [8|10]' commandManuel Stoeckl-0/+8
This makes it possible to hint to the renderer and backends how many bits per channel the buffers that the compositor draws windows onto should have. Renderers and backends may deviate from this if they do not support the formats with higher bit depth.
2021-11-18sway: create wlr_renderer and wlr_allocatorSimon Zeni-0/+3
wlroots now required the compositor to create its own wlr_renderer and wlr_allocator to initialize the wlr_output
2021-10-30Bump RLIMIT_NOFILESimon Ser-0/+2
Wayland compositors handle many file descriptors: client connections, DMA-BUFs, sync_files, wl_data_device pipes, and so on. Bump the limit to the max. Closes: https://github.com/swaywm/sway/issues/6285
2021-10-29Add smart_gaps inverse_outer commandbR3iN-1/+7
Add a subcommand for `smart_gaps` that enables outer gaps only on workspaces with exactly one visible child. Also add documentation for `smart_gaps toggle`.
2021-10-25refactor: use JSON_MAX_DEPTH everywhereJason Nader-0/+3
2021-10-01commands: Remove unused code after 1d3681f52135Evgeniy Khramtsov-8/+0
Clang 13 reports: ../sway/commands.c:470:23: error: variable 'context' set but not used [-Werror,-Wunused-but-set-variable] enum command_context context = 0; ^ Last use of was removed in commit 1d3681f52135. Downstream PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=258813
2021-09-25layer-shell: fix commit handlerKirill Primak-0/+1
This commit makes sure the extents are kept up-to-date, fixes not damaging the surface if its layer shell-specific state didn't change, and adds a check if the layer shell-specific state didn't change but the surface got mapped/unmapped, which could affect keyboard focus.
2021-09-21xdg-shell: remove unused request_maximize listenerKirill Primak-1/+0
2021-09-20Add -Dnoscanout debug optionSimon Ser-0/+1
This can help debugging direct scan-out issues, such as [1]. [1]: https://github.com/swaywm/wlroots/issues/3185
2021-09-20swaybar: properly draw blocks with transparent black borderNathan Schulte-0/+1
while the draw itself is a no-op, alignment must still be accounted this requires more signalling about the blocks (border_set; was the border set?)
2021-09-13Rename pango_printf to render_textSimon Ser-1/+1
This avoids using the pango_ prefix, reserved for functions coming from the Pango library.
2021-09-09introduce wlr_drm_lease_v1Simon Zeni-0/+4
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-09-08view: fix child position calcKirill Primak-1/+1
Previously, the position was calculated incorrectly for nested subsurfaces.
2021-09-02seatop_down: End if surface is destroyed or other seatop startsSimon Plakolb-1/+1
If the surface the pointer started to interact with is destroyed we also want the seatop_down to end. In case a drag is initiated we receive a call to handle_end.
2021-09-02input: Use seatop_down on layer surface clickSimon Plakolb-0/+3
This solves an issue where layer-shell items would not receive a button release event when the pointer left them while being pressed. The default seatop changes focus immediately while seatop_down defers any focus changes until the pointer is released or seatop_down is destroyed.
2021-08-31Add `output modeline` commandDavid Rosca-0/+3
Only works with DRM backend.