Commit Graph

4177 Commits

Author SHA1 Message Date
Ryan Dwyer
8789ceea87 Fix pointer events for overlapping floating views
Fixes #2315.
2018-07-20 09:41:36 +10:00
Drew DeVault
d28c4c0094
Merge pull request #2314 from emersion/update-wlroots-1148
Update for swaywm/wlroots#1148
2018-07-19 14:18:13 -07:00
Drew DeVault
3483f1ea1a
Merge branch 'master' into update-wlroots-1148 2018-07-19 14:09:19 -07:00
emersion
4154234eee Update for swaywm/wlroots#1148 2018-07-19 21:54:46 +01:00
minus
bfcfabee2b swaybar: Fix scroll handling on workspace buttons
As well as ignoring scroll events on status elements when click_events
is enabled.
Previously, using the scroll wheel on a workspace button would switch to
that workspace instead of scrolling through them. Clicks and scrolling
on status elements would always be processed by swaybar, too. So in case
you were using scrolling as volume control on a status item, swaybar
would additionally scroll through your workspaces.
2018-07-19 21:15:01 +02:00
Drew DeVault
da9c86c608
Merge pull request #2310 from RyanDwyer/assign-output
Implement assign to output
2018-07-19 10:10:38 -07:00
emersion
d8badceb54
Merge pull request #2304 from RedSoxFan/fix-2298
Fix deferred command handling
2018-07-19 16:14:25 +01:00
Ryan Dwyer
54b00d351e Implement assign to output
Eg. assign [class="Firefox"] output foo
2018-07-19 22:36:38 +10:00
emersion
3a13455b4e
Merge pull request #2309 from RyanDwyer/xwayland-set-hints
Allow xwayland views to become urgent when on a non-visible workspace
2018-07-19 13:29:58 +01:00
emersion
eecb393401
Merge branch 'master' into xwayland-set-hints 2018-07-19 12:22:47 +01:00
emersion
cb4309b7cd
Merge pull request #2305 from RyanDwyer/focus-output
Implement focus output command
2018-07-19 12:10:56 +01:00
emersion
3dab83d6eb
Merge pull request #2308 from RyanDwyer/fix-double-transaction
Fix crash and render issues involving cursor_send_pointer_motion
2018-07-19 12:10:37 +01:00
Ryan Dwyer
63d6233fcb Allow xwayland views to become urgent when on a non-visible workspace
This removes the urgency stuff from the commit handler and puts it in a
new set_hints handler instead. This allows the xwayland surface to
become urgent without having to commit (which doesn't happen if it's on
an non-visible workspace).
2018-07-19 21:08:51 +10:00
Ryan Dwyer
32806d16ee Use parse_movement_direction 2018-07-19 20:17:48 +10:00
Ryan Dwyer
8533c35a9f Fix crash and render issues involving cursor_send_pointer_motion
Fixes #2303, as well as a crash.

To replicate the crash:

* Have multiple outputs
* In config: for_window [<criteria>] workspace foo
* Also in config: workspace foo output <left-output-name>
* Focus the right output, and ensure workspace foo doesn't exist
* Launch the app that triggers the criteria

When the view maps, it calls workspace_switch which calls
send_set_focus which calls cursor_send_pointer_motion which calls
transaction_commit_dirty. This call to transaction_commit_dirty is not
meant to happen at this time because the tree isn't guaranteed to be in
a consistent state, but I'm not sure how exactly this leads to the crash
or render issues.

In this case the transaction is already committed by the view
implementation's handle_map function. So the solution is to remove it
from cursor_send_pointer_motion and add it to the other functions in
cursor.c which call cursor_send_pointer_motion.
2018-07-19 19:49:50 +10:00
emersion
dfb45ded1c
Merge pull request #2306 from RyanDwyer/move-workspace-crash
Fix crash when moving workspace to output
2018-07-19 08:24:34 +01:00
Ryan Dwyer
dad3a8deee Fix crash when moving workspace to output 2018-07-19 16:52:02 +10:00
Ryan Dwyer
08736255a3 Defer the focus commands 2018-07-19 16:41:02 +10:00
Ryan Dwyer
a173b79c54 Implement focus output command 2018-07-19 16:33:27 +10:00
Brian Ashworth
ec65286606 Fix deferred command handling 2018-07-19 01:39:58 -04:00
Drew DeVault
4931d0ddc5
Merge pull request #2300 from emersion/override-redirect-updates
Handle xwayland override_redirect flag change
2018-07-18 12:42:09 -07:00
emersion
747725b8bb Don't unfocus when an override redirect window is mapped 2018-07-18 20:00:48 +01:00
emersion
fb4eca5d56 Handle xwayland override_redirect flag change
This fixes syncplay menus.
2018-07-18 19:10:08 +01:00
Drew DeVault
ca695482ec
Merge pull request #2292 from emersion/update-cursor-on-focus
Update cursor on focus change
2018-07-17 19:53:12 -07:00
Drew DeVault
81e4bbf8b2
Merge pull request #2294 from RedSoxFan/fix-swaylock-args
Fix swaylock arguments
2018-07-17 19:52:12 -07:00
Brian Ashworth
7885a138af Fix swaylock arguments 2018-07-17 21:50:15 -04:00
Ryan Dwyer
5903fb4640
Merge pull request #2229 from vilhalmer/destroy-output-destroy-empty-workspaces
Destroy empty workspace when destroying its output
2018-07-18 10:39:08 +10:00
Ryan Dwyer
8ce7e3b44e
Merge branch 'master' into destroy-output-destroy-empty-workspaces 2018-07-18 09:32:03 +10:00
emersion
48b911a459
Merge pull request #2281 from pvsr/X11_click
Send clicks to swaybar blocks as X11 button ids
2018-07-18 00:16:15 +01:00
Peter Rice
e43c20134a remove unnecessary parens 2018-07-17 19:04:04 -04:00
emersion
03d49490cc Update cursor on focus change
This allows to send wl_pointer.enter when switching between views
in a split/tabbed layout for instance. This (1) updates the cursor
image accordingly (2) makes it unnecessary to move the mouse before
scrolling. It's harmless to always call cursor_send_pointer_motion
because in case the focused surface hasn't changed this is a no-op.

The `last_focus != NULL` condition is required otherwise
cursor_send_pointer_motion will crash when sway starts up (the
sway_output doesn't yet have a workspace).
2018-07-17 23:04:55 +01:00
Drew DeVault
bec982bba6
Merge pull request #2289 from frsfnrrg/memory-fixes
Fix memory leaks and reference to uninitialized
2018-07-17 08:46:53 -07:00
frsfnrrg
3931cb85b2 Fix memory leak in sway/desktop/idle_inhibit_v1.c 2018-07-17 11:35:24 -04:00
frsfnrrg
37471ac649 Fix memory leak in handle_layer_shell_surface 2018-07-17 11:35:24 -04:00
frsfnrrg
600676688a Free individual criteria in free_config
Also free cmd_list when cleaning up a struct criteria.
2018-07-17 11:35:00 -04:00
frsfnrrg
b3014f7b16 Fix uninitialized pointer in view_unmap
Otherwise, sway crashes due to uninitialized pointer
dereference when AddressSanitizer is active.
2018-07-17 10:42:48 -04:00
Brian Ashworth
f516dbfb6d
Merge pull request #2286 from RyanDwyer/default-floating-border
Implement default_floating_border command and adjust CSD behaviour
2018-07-16 22:21:00 -04:00
Brian Ashworth
10fc7a5b49
Merge branch 'master' into default-floating-border 2018-07-16 22:12:29 -04:00
Drew DeVault
db3a363734 Revert "config: free include path on successful load"
This reverts commit 92450883d7.
2018-07-16 21:02:13 -04:00
Drew DeVault
9c8d73dad6
Merge pull request #2287 from RyanDwyer/superfluous-urgent-events
Remove superfluous IPC urgent events
2018-07-16 17:59:30 -07:00
Ryan Dwyer
9cbff272cb Remove superfluous IPC urgent events
When an xwayland view is mapped, the IPC urgent event was being sent on
every surface commit.

I had intentionally ommitted the check because I figured an urgent
surface could update its urgent timestamp by sending urgent a second
time. But that's not how it works in xwayland's case, and it makes for
more complicated code.
2018-07-17 10:27:03 +10:00
Ryan Dwyer
75c699db62 Implement default_floating_border command and adjust CSD behaviour 2018-07-17 10:14:33 +10:00
Drew DeVault
7268d544c2
Merge pull request #2285 from emersion/cleanup-swayidle
swayidle: cleanup
2018-07-16 16:34:04 -07:00
Peter Rice
14511da75d send scroll events to swaybar blocks 2018-07-16 18:55:11 -04:00
Peter Rice
79a998849b make hotspot callback take an x11 button id 2018-07-16 18:55:04 -04:00
Drew DeVault
d6bd314dff
Merge pull request #2276 from RyanDwyer/urgency
Implement urgency base functionality
2018-07-16 15:39:08 -07:00
Ryan Dwyer
255dc8bbb0 swaybar: Read urgent colors from IPC 2018-07-17 08:29:43 +10:00
emersion
297e32126f
Merge pull request #2265 from RedSoxFan/implement-1962
Implement swaylock configuration file parsing
2018-07-16 22:25:25 +01:00
emersion
4657ea5a42 swayidle: cleanup
No idea why wlr_output_layout was involved here.
2018-07-16 22:20:53 +01:00
Brian Ashworth
7b91712416 Switch to using getopt_long for config flag 2018-07-16 12:17:40 -04:00