aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorLines
2022-03-17sway/input/cursor: take device mm size from wlr_tabletSimon Zeni-6/+7
2022-03-15remove unnecessary strlen callNihal Jere-2/+2
2022-03-15swaynag: remove redundant status variables in mainNihal Jere-14/+10
Instead, we just use `status` for all failures.
2022-03-15swaynag: remove unnecessary zero of swaynag structNihal Jere-1/+0
Global variables are initialized to 0.
2022-03-15swaynag: statically allocate button_close, and move declarationNihal Jere-10/+5
Every swaynag has a close button, so it doesn't make sense to allocate it dynamically. The declaration is moved later to when it is actually needed.
2022-03-15swaynag: allocate button_details with detailsNihal Jere-18/+8
They are used together, so it doesn't make sense to allocate them separately.
2022-03-15Updating criteria checking with PCRE2Bill Li-8/+8
2022-03-14swaybar: set opaque regionSimon Ser-0/+9
When the background color is fully opaque, set the surface's opaque region to the whole surface.
2022-03-14swaybar: remove swaybar_output.input_regionSimon Ser-8/+3
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-43/+53
Closes: https://github.com/swaywm/sway/issues/6838
2022-03-08Remove WLR_SWITCH_STATE_TOGGLE usageSimon Ser-8/+26
Ref [1]. [1]: https://gitlab.freedesktop.org/wlroots/wlroots/-/commit/4792446ee8f50104bd207d9ccd8558a7e4eb4514
2022-03-06commands/focus: fix segfault when no container is already focused.Nicolas Avrutin-6/+10
Fixes #6690.
2022-03-05sway/input: destroy sway_switch properlyMoon Sungjoon-0/+1
Fix: #6861 Added seat_device_destroy function to seat_device_destroy function.
2022-03-04sway/input: don't pass possibly invalid modifiers pointerAlexander Gramiak-2/+0
active_keyboard may be NULL, in which case an invalid pointer could be passed to wlr_input_method_keyboard_grab_v2_send_modifiers. This procedure call is unnecessary since wlroots commit 372a52ec "input method: send modifiers in set_keyboard", so the call can simply be removed. Fixes #6836.
2022-02-28swaynag: die on all allocation failuresNihal Jere-0/+36
2022-02-24Don't enter seatop_move_floating when fullscreenThomas Hebb-2/+4
Currently, a floating window that's been fullscreened can send us xdg_toplevel::move, and we'll enter seatop_move_floating, which lets us drag the surface around while it's fullscreen. We don't want this--fullscreen surfaces should always be aligned to the screen--so add the same check that seatop_default already does when entering this mode. Tested with Weston's weston-fullscreen demo, which sends a move request if you click anywhere on its surface.
2022-02-22Remove some erroneous apostrophes in commentsThomas Hebb-3/+3
2022-02-21sway/input: use wlr_input_device from input device baseSimon Zeni-3/+3
2022-02-21sway/commands: add missing wlr_keyboard interface include in xkb_switch_layoutSimon Zeni-0/+1
2022-02-08Remove all sprintf callsSimon Ser-6/+7
Replace them with snprintf, which ensures buffer overflows won't happen.
2022-02-08Fix snprintf compiler warningMuhamed Hobi-2/+2
2022-02-07xdg-shell: use wlr_xdg_popup in sway_xdg_popupSimon Ser-7/+7
Improved type safety.
2022-02-07xdg-shell: use wlr_xdg_toplevel in sway_viewSimon Ser-56/+40
Improved type safety. Closes: https://github.com/swaywm/sway/issues/6813
2022-02-07readme: use relative links for translationsSimon Ser-19/+19
2022-02-07readme: sort language list alphabeticallySimon Ser-15/+15
2022-02-07readme: add link to Italian translationSimon Ser-1/+2
2022-02-07Translated README into ItalianMarco Rubin-0/+73
2022-02-06Minor update to focus_on_window_activationAlexander Browne-5/+5
Removed xwayland limitation since wayland clients are supported via xdg-activation.
2022-02-03Chase wlroots xdg-shell refactorKirill Primak-15/+16
2022-01-31chore: chase wlr_output_layout_get_box() updateKirill Primak-49/+53
https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3439
2022-01-31xwayland: listen to `request_activate` eventTuomas Yrjölä-0/+18
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-31Use bools for CLI flagsSimon Ser-5/+5
2022-01-23swaynag: remove buffer destruction conditionKirill Primak-7/+2
An address of a variable can never be NULL, so checking it doesn't make sense; and `destroy_buffer()` can operate on already destroyed buffers anyway. Fixes #6780
2022-01-22input/cursor: pass through pointer hold gesturesTudor Brindus-0/+28
This just follows swaywm/wlroots#3047, so `wl_pointer_gestures_v1` clients can be notified of these events.
2022-01-22cmd/swap: error on swapping a container with itselfRonan Pigott-1/+4
2022-01-19tray: do not render passive itemsTobias Bengfort-0/+5
https://www.freedesktop.org/wiki/Specifications/StatusNotifierItem/StatusNotifierItem/#org.freedesktop.statusnotifieritem.status
2022-01-18build: execute wlroots subproject before finding depsSimon Ser-14/+10
wlroots often requires dependencies more recent than Sway's. Executing the wlroots subproject first will give Meson a chance to find these newer dependencies, possibly via subprojects. The subproject will override the "wlroots" dependency when executed, so we don't need to use get_variable anymore. References: https://github.com/swaywm/sway/pull/6498#issuecomment-1001746017
2022-01-18transaction: destroying nodes aren't hiddenRouven Czerwinski-1/+1
Commit 37d7bc69986f ("transaction: Only wait for ack from visible views") introduced a check which uses view_is_visible() to check if a view is still visible on the screen. However view_is_visible() will early return in case the node is in the destroying state. This is incorrect for transactions, since a destroying view which is visible will trigger configure events for other clients. This bug was visible when repeatedly opening and closing two views side by side, since we ignore the destroying node we get a frame where the still open view is shown with the old configure values and the rest is the desktop background. The next frame is than correct again. Fix this by considering destroying views as visible, we correctly wait for them and send the configure events to other views in time, fixing the background flicker. Fixes #6473
2022-01-18treat fullscreen windows as 'tiled' for commands/focusPatrick Hilhorst-1/+2
2022-01-17input/cursor: treat swipe begin as idle activity tooTudor Brindus-0/+1
Accidentally overlooked in fd53f80.
2022-01-17input/cursor: count pointer gestures as idle activityTudor Brindus-0/+5
Fixes https://github.com/swaywm/sway/issues/6765.
2022-01-16commands/focus: drop trailing whitespaceSimon Ser-1/+1
2022-01-13Upgrade for wlroots surface refactoringSimon Ser-10/+16
See [1] for details. [1]: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3412
2022-01-12build: fix building with basuKirill Chibisov-3/+10
02b412a introduced the use of list for sdbus deps, however it was assuming that all packages which were in a list has a version higher than 239. That is true for libsystemd and libelogind, since they use the same versions, however basu is using version numbers which are way lower than what libsystemd/libelogind are using, so basu only build is failing.
2022-01-12xdg-shell: use toplevel geometry to adjust the popup boxAleksei Bavshin-2/+2
`popup_unconstrain` uses view coordinates to init the output box for popups. However wlroots expects the box to be set in a toplevel surface coordinate system, which is not always equal to view. The difference between those is a window geometry set via xdg-shell. GTK4 reserves some space for client-side decoration and thus has a window with top left corner not matching to (0, 0) of a surface. The box calculated without taking that into account was slightly shifted compared to the actual output and allowed to position part of the popup off screen.
2022-01-11Print deprecation notice when running SUIDKenny Levinsen-0/+3
SUID privilege drop is needed for the "builtin"-backend of libseat, which copied our old "direct" backend behavior for the sake of compatibility and ease of transition. libseat now has a better alternative in the form of seatd-launch. It uses the normal seatd daemon and libseat backend and takes care of SUID for us. Add a soft deprecation warning to highlight our future intent of removing this code. The deprecation cycle is needed to avoid surprises when sway no longer drops privileges.
2022-01-11meson: check: false on run_commandKenny Levinsen-2/+2
Future meson releases will change the default and warns when the implicit default is used, breaking builds. Explicitly set check: false to maintain behavior and silence warnings.
2022-01-09Add safety assert in parse_movement_unitSimon Ser-0/+6
Let's add this just in case a caller passes argc == 0. References: https://github.com/swaywm/sway/issues/6737#issuecomment-1008082540
2022-01-08Destroy sub-surfaces with parent layer-shell surfaceSimon Ser-5/+23
Closes: https://github.com/swaywm/sway/issues/6337
2022-01-09commands/move: Fix crash when pos_y is omittedDavid96-0/+4
Fixes #6737