diff options
author | 2018-09-23 10:39:24 +1000 | |
---|---|---|
committer | 2018-10-06 19:16:41 +1000 | |
commit | c620f76bea08bdab6cfa17a5b3128a4924c6df4d (patch) | |
tree | e574ca18b226531da7fc67dbcc4720cbfa2eedbb /swaylock/shadow.c | |
parent | Merge pull request #2771 from RyanDwyer/swaylock-seat-capabilities (diff) | |
download | sway-c620f76bea08bdab6cfa17a5b3128a4924c6df4d.tar.gz sway-c620f76bea08bdab6cfa17a5b3128a4924c6df4d.tar.zst sway-c620f76bea08bdab6cfa17a5b3128a4924c6df4d.zip |
Move sticky containers when switching workspace via criteria
* Create a view on workspace 1
* Switch to workspace 2 (on the same output) and create a floating
sticky view
* Use criteria to focus the view on workspace 1
Previously, we only moved the sticky containers when using
workspace_switch, but the above method of focusing doesn't call it. This
patch relocates the sticky-moving code into seat_set_focus_warp.
A side effect of this patch is that if you have a sticky container
focused and then switch workspaces, the sticky container will no longer
be focused. It would previously retain focus.
In seat_set_focus_warp, new_output_last_ws was only set when changing
outputs, but now it's always set. This means new_output_last_ws and
last_workspace might point to the same workspace, which means we have to
make sure we don't destroy it twice. It now checks to make sure they're
different, and to make this more obvious I've moved both calls to
workspace_consider_destroy to be next to each other.
Diffstat (limited to 'swaylock/shadow.c')
0 files changed, 0 insertions, 0 deletions