aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
* Use wlroots 0.12.0 for v1.5 CIv1.5Libravatar Pedro Côrte-Real2021-05-19
| | | | | While inside the v1.5 branch make sure we stay on wlroots 0.12.0 so that the build doesn't fail.
* ci: fix archlinux buildsLibravatar Ronan Pigott2021-05-19
| | | | | | | | | The "xorg-server-xwayland" package has become "xorg-xwayland" in Arch. Our egl requirement was previously satisfied by xorg-server-xwayland's dependency on libgl, which "xorg-xwayland" does not have. So add the libegl dependency as well. (cherry picked from commit ba943c694cec527580c4d9f2098157dad6af55b1)
* ci: Update alpine xwayland package nameLibravatar Kenny Levinsen2021-05-19
| | | | (cherry picked from commit 3287b12fff45f931a456cbd01579db2e9259c164)
* view: Set parent for view_child subsurfaces on initLibravatar Kenny Levinsen2021-05-19
| | | | | | | | | | | | | view_child_init was calling view_init_subsurfaces, which did not set the parent attribute for the subchildren. This lead to the subchildren acting as standalone children. If the parent was an xdg_popup, this would make the subchild unaware of the popup position. Introduce view_child_init_subsurfaces for view_child_init to use instead. Closes: https://github.com/swaywm/sway/issues/6038 (cherry picked from commit 1a6471be172fc2da75bbc5b7e6e3b3c99dbafc51)
* view: Mark subchildren as unmapped in view_child_destroyLibravatar Kenny Levinsen2021-05-19
| | | | | | | | | The subchildren lose their parent association at this point, so they will not be able to see that the parent is unmapped. Instead, just set the subchildren to be unmapped directly. (cherry picked from commit 79e43b19d795d68a3916a19d9afadc4ccbb7d4db)
* view: Recursively check mapped of view_child treeLibravatar Kenny Levinsen2021-05-19
| | | | | | A subsurface may be set to mapped without its parent. (cherry picked from commit e7af5b630916c5620cb7806993530ef4ca965591)
* build: bump version to 1.5.11.5.1Libravatar Simon Ser2020-11-10
|
* build: bump wlroots dependency to 0.12.0Libravatar Simon Ser2020-11-10
| | | | (cherry picked from commit 5ae4f65045c04df7ad2d87142b4064803d97a73e)
* Bump version to 1.51.5Libravatar Simon Ser2020-07-16
|
* Bump wlroots dependency to 0.11.0Libravatar Simon Ser2020-07-16
| | | | (cherry picked from commit 9f944ff05d8ba86c11f3d694120bf0c960e57905)
* input/cursor: don't send wl_pointer.motion event on pointer unlock warpLibravatar Tudor Brindus2020-07-15
| | | | | | | | | | On warping to a cursor hint, update the pointer position we track as well, so that on the next pointer rebase we don't send an unexpected synthetic motion event to clients. Fixes #5405. (cherry picked from commit 6b9a9b62462c0fae7b09294700112c569a3ccc19)
* Add check for empty GEOM variableLibravatar Vinko Kašljević2020-07-15
| | | | | | | | In case when slurp is used to select part of screen or a window, if user aborts the selection, grimshot will capture the whole screen instead of exiting. This is fixed with check for empty variable. (cherry picked from commit c65cd1cffa5a791202ee913afef40dffdc54e5bc)
* Add note on quoting to swaymsg manpageLibravatar Campbell Vertesi2020-07-15
| | | | (cherry picked from commit acbe9028157c67eb3937299ff86e5ee26816a408)
* xdg_shell: schedule configure on maximize requestsLibravatar Ronan Pigott2020-07-15
| | | | (cherry picked from commit 4dd46f06acc520449b980a5ea52be544cc5bfb6d)
* Assert output is found before removing from listLibravatar Simon Ser2020-07-15
| | | | | References: https://github.com/swaywm/sway/issues/5483 (cherry picked from commit 9bb70283e967037e6d57bc863ef96d3b5185a989)
* rephrase swayidle-timout example to improve readabilityLibravatar Jonas Große Sundrup2020-07-15
| | | | (cherry picked from commit 10ec97c073ea7c06f7c129a4baa4576783248148)
* Make the default workspace commands compatible with i3Libravatar Wai Hon Law2020-07-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | **Problem** When I rename the workspace to something like "1:web", `$mod+1` does not move to the "1:web" with the default config. This breaks the expectation of i3 users. **Cause** The default Sway binding for `$mod+1` does not have the number keyword: ``` bindsym $mod+1 workspace 1 ``` Instead, the default Sway binding for `$mod+1` is ``` bindsym Mod1+1 workspace number $ws1 ``` https://github.com/i3/i3/commit/e6662df114329ba45bd1d117c731b3dc8bdd13fb is the corresponding commit from i3. (cherry picked from commit 585236f1687930d36e1d47d69e0a45fe3dcbd0cf)
* config/output: don't change output state before commitLibravatar Simon Ser2020-07-15
| | | | | | | | | | | | | | | | | | | | | | | | Previously, we called output_disable prior to wlr_output_commit. This mutates Sway's output state before the output commit actually succeeds. This results in Sway's state getting out-of-sync with wlroots'. An alternative fix [1] was to revert the changes made by output_disable in case of failure. This is a little complicated. Instead, this patch makes it so Sway's internal state is never changed before a successful wlr_output commit. We had two output flags: enabled and configured. However enabled was set prior to the output becoming enabled, and was used to prevent the output event handlers (specifically, the mode handler) from calling apply_output_config again (infinite loop). Rename enabled to enabling and use it exclusively for this purpose. Rename configure to enabled, because that's what it really means. [1]: https://github.com/swaywm/sway/pull/5521 Closes: https://github.com/swaywm/sway/issues/5483 (cherry picked from commit 5432f00adfdd8375fb422ad9033253d17f04efc7)
* Reload command now matches i3's implementationLibravatar Geoffrey Casper2020-07-15
| | | | (cherry picked from commit ea3ba203cc65671d9bf9da5ddbc698b18ed7685c)
* protocols: sync wlr-layer-shell-unstable-v1 with wlrootsLibravatar Jan Beich2020-07-15
| | | | (cherry picked from commit 1d149230ea1fbe7bc5ac906e235db3c1fdc63afa)
* commands/move: maintain workspace_layout when movingLibravatar Tudor Brindus2020-07-15
| | | | | | Fixes #5157. (cherry picked from commit b4a75a1ab2a72842830aeea37733311f85e6f660)
* Replace unprintable characters in input device idLibravatar wb96882020-07-15
| | | | (cherry picked from commit 17ff13fc84fd74ddcee68a302af156d7bf81ed85)
* tree/view: fix segfault in view_update_titleLibravatar Simon Ser2020-07-15
| | | | | | | | | xdg-shell doesn't allow clients to set the title to NULL, so we shouldn't need to call wlr_foreign_toplevel_handle_v1_set_title with an empty string to reset the old one. Closes: https://github.com/swaywm/sway/issues/5488 (cherry picked from commit b5a35c484f651e25b226c9661669c8a40439f09b)
* Unset DISPLAY when wlr_xwayland failsLibravatar Simon Ser2020-07-15
| | | | | | | Avoids having applications connect to a leftover DISPLAY when Xwayland fails to initialize. (cherry picked from commit eb4fa183088d0361e2492780e303e2965c5ecae1)
* Don't set xwayland cursor when wlr_xwayland failedLibravatar Simon Ser2020-07-15
| | | | | | This causes a NULL pointer dereference. (cherry picked from commit dfccd2a4c483a6ff03350cd4ac5e3fada1f40f2e)
* seat: fix segfault in sway_input_method_relay_set_focusLibravatar Simon Ser2020-07-15
| | | | | | | | sway_input_method_relay_set_focus was called before sway_input_method_relay_init. Closes: https://github.com/swaywm/sway/issues/5503 (cherry picked from commit 1bfbf262cc501db7bd94f651ea16aa4af607f548)
* commands/move: unwrap workspace container on move to new workspaceLibravatar Tudor Brindus2020-07-15
| | | | | | | | | | | If moving e.g. `T[app app]` into a new workspace with `workspace_layout tabbed`, then post-move the tree in that workspace will be `T[T[app app]]`. This still happens with horizontal or vertical workspace layout, but is less visible since those containers have no decorations. Fixes #5426. (cherry picked from commit 92891fb1edef5136ae4eb35fec5b8523f031be81)
* Update version to v1.5-rc2v1.5-rc2Libravatar Drew DeVault2020-07-01
|
* tree/view: Make foreign-toplevel app_id fallback to classLibravatar Johan Bjäreholt2020-07-01
| | | | | | | | | | | | | | | It is not a part of the foreign-toplevel-management protocol to get the class of a toplevel, only for getting the app_id. For xwayland clients this is an issue because that means that you cannot identify what application the toplevel refers to which is the point of the app_id property. By falling back to class when an app_id does not exist solves this problem. Phoc also uses app_id and class interchangeably in their implementation of foreign-toplevel-management, in fact they always do that and not only for just this protocol. https://source.puri.sm/Librem5/phoc/-/blob/c8d8a4c5440a6c1647b09dbd3bba7999f9cd433c/src/xwayland.c#L236
* output: simplify loop over layer surfacesLibravatar Isaac Freund2020-06-30
|
* seat: Refocus seat when wlr_drag is destroyedLibravatar Kenny Levinsen2020-06-30
| | | | | | | | | | | | wlr_drag installs grabs for the full duration of the drag, leading to the drag target not being focused when the drag ends. This leads to unexpected focus behavior, especially for the keyboard which requires toggling focus away and back to set. We can only fix the focus once the grabs are released, so refocus the seat when the wlr_drag destroy event is received. Closes: https://github.com/swaywm/sway/issues/5116
* transaction: Mark client resize immediately readyLibravatar Kenny Levinsen2020-06-30
| | | | | | | | | | | | | If a client commits a new size on its own, we create a transaction for the resize like any other. However, this involves sending a configure and waiting for the ack, and wlroots will not send configure events when there has been no change. This leads to transactions timing out. Instead, just mark the view ready immediately by size when the client is already ready, so that we avoid waiting for an ack that will never come. Closes: https://github.com/swaywm/sway/issues/5490
* tree/view: fix smart borders with tabbed/stacked ancestorLibravatar Tudor Brindus2020-06-27
| | | | Fixes #5484.
* input/pointer: correctly handle bindings for synthetic eventsLibravatar Tudor Brindus2020-06-25
| | | | | | This commit addresses a regression introduced in 8fa74ad. Fixes #5481.
* Update version to 1.5-rc11.5-rc1Libravatar Simon Ser2020-06-24
|
* Add Romanian translationLibravatar taminaru2020-06-23
|
* Implement wlr-foreign-toplevel-management-v1Libravatar Drew DeVault2020-06-23
|
* input_cmd_click_method: fix typo in error textLibravatar Tudor Brindus2020-06-19
|
* input/seat: don't notify keyboard grabs with NULL surface on shutdownLibravatar Tudor Brindus2020-06-19
| | | | Fixes #5469, a minor regression introduced in #5368.
* input: disable events for map_to_output devices when output not presentLibravatar Tudor Brindus2020-06-19
| | | | Fixes #3449.
* input/pointer: don't trigger pointer bindings for emulated inputLibravatar Tudor Brindus2020-06-18
| | | | | | | | | | Prior to this commit, a tablet device could trigger mouse button down bindings if the pen was pressed on a surface that didn't bind tablet handlers -- but it wouldn't if the surface did bind tablet handlers. We should expose consistent behavior to users so that they don't have to care about emulated vs. non-emulated input, so stop triggering bindings for any non-pointer devices.
* input/cursor: send idle events based off device type, not input typeLibravatar Tudor Brindus2020-06-18
| | | | | | | | Previously, a tablet or touch device could report activity as a pointer device if it went through pointer emulation. This commit refactors idle sources to be consistently reported based on the type of the device that generated an input event, and now how that input event is being processed.
* grimshot: fix POSIX complianceLibravatar David Arnold2020-06-17
| | | | source is not POSIX compliant, '.' is. https://stackoverflow.com/a/11588629
* grimshot: Unary operator expectedLibravatar David Arnold2020-06-17
| | | | fixes this error: /usr/local/bin/grimshot: line 22: [: ==: unary operator expected
* Add support for viewporterLibravatar Simon Ser2020-06-17
| | | | | | Depends on [1]. [1]: https://github.com/swaywm/wlroots/pull/2092
* input/pointer: don't trigger pointer bindings for emulated inputLibravatar Tudor Brindus2020-06-16
| | | | | | | | | | Prior to this commit, a tablet device could trigger mouse button down bindings if the pen was pressed on a surface that didn't bind tablet handlers -- but it wouldn't if the surface did bind tablet handlers. We should expose consistent behavior to users so that they don't have to care about emulated vs. non-emulated input, so stop triggering bindings for any non-pointer devices.
* input/tablet: focus appropriate node on tip downLibravatar Tudor Brindus2020-06-16
| | | | | | | | | This commit makes tablet input more usable when `focus_follows_mouse` is set to `no`. Previously, tapping down on surfaces that bound tablet input would not switch focus, whereas tapping on surfaces that didn't (and hence went through pointer emulation) did.
* input/keyboard: wlr_keyboard_group enter and leaveLibravatar Brian Ashworth2020-06-16
| | | | | | | | This adds support for wlr_keyboard_group's enter and leave events. The enter event just updates the keyboard's state. The leave event updates the keyboard's state and if the surface was notified of a press event for any of the keycodes, it is refocused so that it can pick up the current keyboard state without triggering any keybinds.
* i3-compat: add GET_BINDING_STATE IPC commandLibravatar Jason Nader2020-06-14
|
* Remove view child surface_{map,unmap} listeners on destroyLibravatar Simon Ser2020-06-12
|