aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-07-22Implement xdg shell request_move and request_resize eventsRyan Dwyer
Also does a few other related things: * Now uses enum wlr_edges instead of our own enum resize_edge * Now uses wlr_xcursor_get_resize_name and removes our own find_resize_edge_name * Renames drag to move for consistency
2018-07-22Use wlr_keyboard_get_modifiersRyan Dwyer
2018-07-22Use separate function for choosing edge cursorRyan Dwyer
2018-07-22Improve resize performance by partially flushing the transaction queueRyan Dwyer
When interactively resizing some views (eg. Nautilus), new transactions are added to the queue faster than the client can process them. Previously, we would wait for the entire queue to be ready before applying any of them, but in this case the transactions would time out, giving the client choppy performance. This changes the queue handling so it applies the transactions up to the first waiting transaction, without waiting for the entire queue to be ready.
2018-07-22Fix clicking xwayland menusRyan Dwyer
2018-07-22Use max multiplier when resizing while preserving ratioRyan Dwyer
2018-07-22Fix damage issue when moving and resizingRyan Dwyer
2018-07-22Make mod + resize do it from the top left cornerRyan Dwyer
2018-07-22Use WLR_MODIFIER_SHIFTRyan Dwyer
2018-07-22Implement floating_modifier and mouse operations for floating viewsRyan Dwyer
This implements the following: * `floating_modifier` configuration directive * Drag a floating window by its title bar * Hold mod + drag a floating window from anywhere * Resize a floating view by dragging the border * Resize a floating view by holding mod and right clicking anywhere on the view * Resize a floating view and keep aspect ratio by holding shift while resizing using either method * Mouse cursor turns into resize when hovering floating border or corner
2018-07-21Merge pull request #2320 from RedSoxFan/reset-outputs-on-reloadRyan Dwyer
Reset outputs on reload
2018-07-20Reset outputs on reloadBrian Ashworth
2018-07-20Merge pull request #2317 from RyanDwyer/force-display-urgency-hintBrian Ashworth
Implement force_display_urgency_hint
2018-07-21Fix urgent timer logic and remove unnecessary header includesRyan Dwyer
2018-07-21Implement force_display_urgency_hintRyan Dwyer
The directive sets the timeout before an urgent view becomes normal again after switching to it from another workspace. Also: * When an xwayland surface removes the urgent hint while the timer is active, we now ignore the request. This happens as soon as the view receives focus, so it was effectively making the timer pointless. * The timeout is now only applied when switching to it from another workspace.
2018-07-20Merge pull request #2318 from RedSoxFan/fix-output-wildcardemersion
Fix output wildcard handling
2018-07-20Fix output wildcard handlingBrian Ashworth
2018-07-20Merge pull request #2313 from minus7/swaybar-hotspot-input-fixDrew DeVault
swaybar: Fix scroll handling on workspace buttons
2018-07-19Merge pull request #2316 from RyanDwyer/fix-floating-pointer-eventsBrian Ashworth
Fix pointer events for overlapping floating views
2018-07-20Fix pointer events for overlapping floating viewsRyan Dwyer
Fixes #2315.
2018-07-19Merge pull request #2314 from emersion/update-wlroots-1148Drew DeVault
Update for swaywm/wlroots#1148
2018-07-19Merge branch 'master' into update-wlroots-1148Drew DeVault
2018-07-19Update for swaywm/wlroots#1148emersion
2018-07-19swaybar: Fix scroll handling on workspace buttonsminus
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-19Merge pull request #2310 from RyanDwyer/assign-outputDrew DeVault
Implement assign to output
2018-07-19Merge pull request #2304 from RedSoxFan/fix-2298emersion
Fix deferred command handling
2018-07-19Implement assign to outputRyan Dwyer
Eg. assign [class="Firefox"] output foo
2018-07-19Merge pull request #2309 from RyanDwyer/xwayland-set-hintsemersion
Allow xwayland views to become urgent when on a non-visible workspace
2018-07-19Merge branch 'master' into xwayland-set-hintsemersion
2018-07-19Merge pull request #2305 from RyanDwyer/focus-outputemersion
Implement focus output command
2018-07-19Merge pull request #2308 from RyanDwyer/fix-double-transactionemersion
Fix crash and render issues involving cursor_send_pointer_motion
2018-07-19Allow xwayland views to become urgent when on a non-visible workspaceRyan Dwyer
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-19Use parse_movement_directionRyan Dwyer
2018-07-19Fix crash and render issues involving cursor_send_pointer_motionRyan Dwyer
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-19Merge pull request #2306 from RyanDwyer/move-workspace-crashemersion
Fix crash when moving workspace to output
2018-07-19Fix crash when moving workspace to outputRyan Dwyer
2018-07-19Defer the focus commandsRyan Dwyer
2018-07-19Implement focus output commandRyan Dwyer
2018-07-19Fix deferred command handlingBrian Ashworth
2018-07-18Merge pull request #2300 from emersion/override-redirect-updatesDrew DeVault
Handle xwayland override_redirect flag change
2018-07-18Don't unfocus when an override redirect window is mappedemersion
2018-07-18Handle xwayland override_redirect flag changeemersion
This fixes syncplay menus.
2018-07-17Merge pull request #2292 from emersion/update-cursor-on-focusDrew DeVault
Update cursor on focus change
2018-07-17Merge pull request #2294 from RedSoxFan/fix-swaylock-argsDrew DeVault
Fix swaylock arguments
2018-07-17Fix swaylock argumentsBrian Ashworth
2018-07-18Merge pull request #2229 from vilhalmer/destroy-output-destroy-empty-workspacesRyan Dwyer
Destroy empty workspace when destroying its output
2018-07-18Merge branch 'master' into destroy-output-destroy-empty-workspacesRyan Dwyer
2018-07-18Merge pull request #2281 from pvsr/X11_clickemersion
Send clicks to swaybar blocks as X11 button ids
2018-07-17remove unnecessary parensPeter Rice
2018-07-17Update cursor on focus changeemersion
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).