Commit graph

6461 commits

Author SHA1 Message Date
Devin Bayer
8a7f4d5333 sway 1.5.1
This is a bugfix release which adds support for wlroots 0.12.0.
 
 Simon Ser (2):
       build: bump wlroots dependency to 0.12.0
       build: bump version to 1.5.1
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEENP+VJs/vDpejQOLkD9574OiPXkgFAl+qxYUACgkQD9574OiP
 Xki2BBAAusN/5OJQfNQZ5UWVDff4ZRcp5Lty8xgloLtSFm8Rn2FRhaJjP1p+dsiw
 2NBmoixnds/ziRMpyR/82HxQBpHXE/Zm73lamvQ695QwyFU1EcCaicMZrHAEl5op
 b+ZySCH1zEEyZU5ltN1buVerkG0QM70aFjTau6h7BAfbVPJymTmSvXssIhdGt6Mb
 RdHtxoDn++D4UmHDkt7+YznHnOskyw8SKHcbW2oVpf65a0NKyDhUnFV2mLCX89+u
 zDC+3IDw+FV+Bu8bZHOxfgs1lkbnxD1DGCKf3v/n8BOvOxykygbS3ZMN2g907jmN
 TDXpIOevL3b5OqDs3kMQayIPxCVpt9Iqqlkg6K99b2d4SgmjzNuHMFOp81u+nIre
 U/RwO20U94fYWA2yut1MrtlMm0b12OTNoQYxQJZCzrIJuStmJ6rqonoJEFdfj7g6
 wR3SdVkGEaBGzDjZTZVFibgt67TiSQc0RMaGEK5zi1wFnmKLR/O4cZvI1fOXUr5V
 aVEuhlTeHjcUJTPKmFYiKxcz71260pyvy2VRIYcs3cke+086p5ZLMIgVZ7uEDm7x
 40CH5i40Lb0J/acruMgEzZF6U0AmJyJmy37NF914v8Zc4uzjX8LX9J4GIZ93bcZd
 PUvD/KfNOJi8eS7SMimjSbwo1yT7nTkCwXOXpqGNRdlhCM2XFFY=
 =e4ID
 -----END PGP SIGNATURE-----

Merge tag '1.5.1' into color-profiles

sway 1.5.1

This is a bugfix release which adds support for wlroots 0.12.0.

Simon Ser (2):
      build: bump wlroots dependency to 0.12.0
      build: bump version to 1.5.1
2021-01-21 17:08:25 +01:00
Simon Ser
eca57594a0
build: bump version to 1.5.1 2020-11-10 17:47:31 +01:00
Simon Ser
3cb59e31ca
build: bump wlroots dependency to 0.12.0
(cherry picked from commit 5ae4f65045)
2020-11-10 17:47:01 +01:00
Devin Bayer
47abe18e2c color mgmt: bug fixes 2020-08-03 11:23:42 +02:00
Devin Bayer
7ec61567c2 color management 2020-07-29 16:45:17 +02:00
Simon Ser
108b8e97b7
Bump version to 1.5 2020-07-16 01:04:23 +02:00
Simon Ser
8ee58a3ad0
Bump wlroots dependency to 0.11.0
(cherry picked from commit 9f944ff05d)
2020-07-16 01:04:17 +02:00
Tudor Brindus
e79e89c94d
input/cursor: don't send wl_pointer.motion event on pointer unlock warp
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 6b9a9b6246)
2020-07-15 19:41:26 +02:00
Vinko Kašljević
a314deeaa3
Add check for empty GEOM variable
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 c65cd1cffa)
2020-07-15 19:27:13 +02:00
Campbell Vertesi
105c69d431
Add note on quoting to swaymsg manpage
(cherry picked from commit acbe902815)
2020-07-15 19:27:13 +02:00
Ronan Pigott
28bcb1e6f2
xdg_shell: schedule configure on maximize requests
(cherry picked from commit 4dd46f06ac)
2020-07-15 19:27:13 +02:00
Simon Ser
863b9c8ad9
Assert output is found before removing from list
References: https://github.com/swaywm/sway/issues/5483
(cherry picked from commit 9bb70283e9)
2020-07-15 19:27:13 +02:00
Jonas Große Sundrup
773e745f52
rephrase swayidle-timout example to improve readability
(cherry picked from commit 10ec97c073)
2020-07-15 19:27:13 +02:00
Wai Hon Law
3d6010e480
Make the default workspace commands compatible with i3
**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
```

e6662df114
is the corresponding commit from i3.

(cherry picked from commit 585236f168)
2020-07-15 19:27:12 +02:00
Simon Ser
d5f5885c94
config/output: don't change output state before commit
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 5432f00adf)
2020-07-15 19:27:12 +02:00
Geoffrey Casper
f5ba5cbcf6
Reload command now matches i3's implementation
(cherry picked from commit ea3ba203cc)
2020-07-15 19:27:12 +02:00
Jan Beich
585cf904c5
protocols: sync wlr-layer-shell-unstable-v1 with wlroots
(cherry picked from commit 1d149230ea)
2020-07-15 19:27:12 +02:00
Tudor Brindus
83382f0b4e
commands/move: maintain workspace_layout when moving
Fixes #5157.

(cherry picked from commit b4a75a1ab2)
2020-07-15 19:27:12 +02:00
wb9688
c199c8d6ea
Replace unprintable characters in input device id
(cherry picked from commit 17ff13fc84)
2020-07-15 19:27:12 +02:00
Simon Ser
cdff693e2e
tree/view: fix segfault in view_update_title
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 b5a35c484f)
2020-07-15 19:27:12 +02:00
Simon Ser
2cc61bbbbe
Unset DISPLAY when wlr_xwayland fails
Avoids having applications connect to a leftover DISPLAY when Xwayland
fails to initialize.

(cherry picked from commit eb4fa18308)
2020-07-15 19:27:11 +02:00
Simon Ser
1c5046d7e4
Don't set xwayland cursor when wlr_xwayland failed
This causes a NULL pointer dereference.

(cherry picked from commit dfccd2a4c4)
2020-07-15 19:22:39 +02:00
Simon Ser
70cc5236ec
seat: fix segfault in sway_input_method_relay_set_focus
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 1bfbf262cc)
2020-07-15 19:22:39 +02:00
Tudor Brindus
472dce6621
commands/move: unwrap workspace container on move to new workspace
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 92891fb1ed)
2020-07-15 19:22:05 +02:00
Geoffrey Casper
ea3ba203cc Reload command now matches i3's implementation 2020-07-07 17:15:57 -04:00
Nick Diego Yamane
e5954f321f seat/dnd: support null drag icon surfaces
As per the Wayland spec [1]:

> The icon surface is an optional (can be NULL) surface that provides an
> icon to be moved around with the cursor.

However, as of now Sway "start_drag" signal handler does not starts the
DND session unless a non-NULL drag icons is provided. This patch fixes
it by skipping handling of the drag icon if it is null.

Fixes #5509

[1] https://wayland.freedesktop.org/docs/html/apa.html#protocol-spec-wl_data_device

Signed-off-by: Nick Diego Yamane <nickdiego@igalia.com>
2020-07-07 00:05:35 +02:00
Brian Ashworth
bac9559665 ISSUE_TEMPLATE: Use the newer issue templates
This utilizes the newer Github issue templates. They allow for the user
to specify what type of issue they are submitting to allow for a more
specific issue template to be shown.

In addition to a hopefully easier to read/parse/follow bug report
template, this also include templates for enhancements and i3
compatibility. This also includes a link to the IRC under the section
title Questions.

For the three templates, the labels bug, enhancement, and i3-compat will
be automatically applied for the appropriate report to assist in
triaging.

Hopefully, this will result in less questions and issues for new window
management functionality on Github and allow for better quality issues
being submitted. At the very least, it allows us to outline our
stances for bugs, enhancements, and i3-compatibility in an easier to
read format.
2020-07-06 23:30:14 +02:00
Jan Beich
1d149230ea protocols: sync wlr-layer-shell-unstable-v1 with wlroots 2020-07-05 09:58:39 +02:00
Tudor Brindus
b4a75a1ab2 commands/move: maintain workspace_layout when moving
Fixes #5157.
2020-07-03 18:40:59 -04:00
wb9688
17ff13fc84 Replace unprintable characters in input device id 2020-07-03 14:59:20 +02:00
Simon Ser
b5a35c484f tree/view: fix segfault in view_update_title
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
2020-07-03 09:23:35 +02:00
Simon Ser
eb4fa18308 Unset DISPLAY when wlr_xwayland fails
Avoids having applications connect to a leftover DISPLAY when Xwayland
fails to initialize.
2020-07-02 23:55:56 -04:00
Simon Ser
dfccd2a4c4 Don't set xwayland cursor when wlr_xwayland failed
This causes a NULL pointer dereference.
2020-07-02 23:55:56 -04:00
Simon Ser
1bfbf262cc seat: fix segfault in sway_input_method_relay_set_focus
sway_input_method_relay_set_focus was called before
sway_input_method_relay_init.

Closes: https://github.com/swaywm/sway/issues/5503
2020-07-02 17:11:05 -04:00
Tudor Brindus
92891fb1ed commands/move: unwrap workspace container on move to new workspace
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.
2020-07-01 18:43:20 -04:00
Tudor Brindus
105bf23998 Minor wording changes in Romanian README.md translation 2020-07-01 21:30:18 +02:00
Drew DeVault
8b2ff2f1b3 Update version to v1.5-rc2 2020-07-01 14:36:29 -04:00
Johan Bjäreholt
1f8dbb320a tree/view: Make foreign-toplevel app_id fallback to class
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.
c8d8a4c544/src/xwayland.c (L236)
2020-07-01 17:21:57 +02:00
Isaac Freund
76adcc3fd3 output: simplify loop over layer surfaces 2020-06-30 16:19:00 +02:00
Kenny Levinsen
492267a5d6 seat: Refocus seat when wlr_drag is destroyed
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
2020-06-30 13:27:51 +02:00
Kenny Levinsen
d0f7e0f481 transaction: Mark client resize immediately ready
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
2020-06-30 10:59:33 +02:00
Tudor Brindus
bb85b9070d tree/view: fix smart borders with tabbed/stacked ancestor
Fixes #5484.
2020-06-27 21:05:58 -04:00
Tudor Brindus
c822427091 input/pointer: correctly handle bindings for synthetic events
This commit addresses a regression introduced in 8fa74ad.

Fixes #5481.
2020-06-25 21:32:15 +02:00
Simon Ser
ba0232e6f0
Update version to 1.5-rc1 2020-06-24 19:29:13 +02:00
taminaru
64f080fa27 Add Romanian translation 2020-06-23 22:59:27 +02:00
Drew DeVault
8d5e627bc9 Implement wlr-foreign-toplevel-management-v1 2020-06-23 22:26:00 +02:00
Tudor Brindus
eeb90a7963 input_cmd_click_method: fix typo in error text 2020-06-19 22:48:53 +02:00
Tudor Brindus
2270b4c213 input/seat: don't notify keyboard grabs with NULL surface on shutdown
Fixes #5469, a minor regression introduced in #5368.
2020-06-19 18:46:01 +02:00
Tudor Brindus
b3f08597cd input: disable events for map_to_output devices when output not present
Fixes #3449.
2020-06-19 10:02:22 +02:00
Tudor Brindus
d328c2439c input/pointer: don't trigger pointer bindings for emulated input
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.
2020-06-18 22:35:01 +02:00