aboutsummaryrefslogtreecommitdiff
path: root/include/sway
AgeCommit message (Collapse)Author
2018-06-27Remove transaction_add_damageRyan Dwyer
Instead, damage each container when applying the transaction.
2018-06-26Remove incorrect assertion and supporting codeRyan Dwyer
Children can exist when destroying a container, such as when destroying the last output. Sway is not terminating in that case.
2018-06-26Rename view's free callback to destroyRyan Dwyer
2018-06-26Damage output when a fullscreen view unmapsRyan Dwyer
Also moved the arranging into view_unmap to avoid excessive code duplication.
2018-06-25Implement transaction timings debugRyan Dwyer
Launch sway with SWAY_DEBUG=txn_timings to enable it.
2018-06-24Implement atomic layout updates for xwayland viewsRyan Dwyer
2018-06-24Force transactions to complete in orderRyan Dwyer
This forces transactions to complete in order by using a singly linked list stored in the sway server.
2018-06-23Fix crash when deleting last child in a tabbed or stacked containerRyan Dwyer
There was no `current` child because the container was destroyed. This makes it fall back to looking in the parent's current children list.
2018-06-23Merge remote-tracking branch 'upstream/master' into atomicRyan Dwyer
2018-06-23Implement atomic layout updates for tree operationsRyan Dwyer
This implements atomic layout updates for when views map, reparent or unmap.
2018-06-19Perform (partial) server initialization before dropping privileges.Tobias Blass
Some operations during backend creation (e.g. becoming DRM master) require CAP_SYS_ADMIN privileges. At this point, sway has dropped them already, though. This patch splits the privileged part of server_init into its own function and calls it before dropping its privileges. This fixes the bug with minimal security implications.
2018-06-18Preserve buffers during transactionsRyan Dwyer
* Also fix parts of the rendering where it was rendering the pending state instead of current.
2018-06-18Merge remote-tracking branch 'upstream/master' into atomicRyan Dwyer
2018-06-12Fix keyboard shortcut handling inconsistenciesfrsfnrrg
* Ensure that modifier keys are identified even when the next key does not produce a keysym. This requires that modifier change tracking be done for each sway_shortcut_state. * Permit regular and --release shortcuts on the same key combination. Distinct bindings are identified for press and release cases; note that the release binding needs to be identified for both key press and key release events. * Maintain ascending sort order for the shortcut state list, and keep track of the number of pressed key ids, for simpler (and hence faster) searching of the list of key bindings. * Move binding duplicate detection into get_active_binding to avoid duplicating error messages.
2018-06-12Sort binding key listsfrsfnrrg
Sort the list comprising the set of keys for the binding in ascending order. (Keyboard shortcuts depend only on the set of simultaneously pressed keys, not their order, so this change should have no external effect.) This simplifies comparisons between bindings.
2018-06-11Merge remote-tracking branch 'upstream/master' into atomicRyan Dwyer
2018-06-09Merge pull request #2124 from emersion/drag-iconsDrew DeVault
Render drag icons
2018-06-09Implement gaps (PR #2047)Nate Symer
2018-06-09Render drag iconsemersion
2018-06-09Refactor everything that needs to arrange windowsRyan Dwyer
* The arrange_foo functions are now replaced with arrange_and_commit, or with manually created transactions and arrange_windows x2. * The arrange functions are now only called from the highest level functions rather than from both high level and low level functions. * Due to the previous point, view_set_fullscreen_raw and view_set_fullscreen are both merged into one function again. * Floating and fullscreen are now working with transactions.
2018-06-09Make main properties be the pending stateRyan Dwyer
2018-06-09WIP: Atomic layout updates ground workRyan Dwyer
2018-06-08Restore workspaces to outputs based on priorityBrian Ashworth
2018-06-06Switch output storing from list_t to wl_listBrian Ashworth
2018-06-06Store sway_outputs so that they can be reenabledBrian Ashworth
2018-06-03Refactor cmd_output to use config_subcommandBrian Ashworth
2018-06-02Address first round of review for generic blocksBrian Ashworth
2018-06-02Make command block implementation genericBrian Ashworth
2018-06-01Comment to explain sway_shortcut_state listsfrsfnrrg
2018-06-01Rewrite shortcut handling code to avoid hardcoded valuesfrsfnrrg
The same shortcut algorithm is now used for keycodes, raw keysyms, and translated keysyms. Pressed keysyms are now stored in association with the keycodes that generated them. Modifier keycodes (and associated keysyms) are identified retroactively by the subsequent change to the modifier flags.
2018-06-01Fix mpv damage issue when unfullscreening into floatingRyan Dwyer
2018-06-01Don't unmaximize floating viewsRyan Dwyer
2018-06-01Don't let xwayland views set position unless unmanagedRyan Dwyer
2018-06-01Remove container_self_or_parent_floatingRyan Dwyer
2018-06-01Rename container_set_geometry_from_viewRyan Dwyer
2018-06-01Store swayc coordinates as layout-localRyan Dwyer
2018-06-01Rename set_maximized functions to set_tiledRyan Dwyer
2018-06-01Fix unfullscreening a floating viewRyan Dwyer
2018-06-01Replace is_floating boolean with functionRyan Dwyer
2018-06-01Use L_FLOATING instead of reapable booleanRyan Dwyer
2018-06-01Implement floatingRyan Dwyer
2018-06-01Send frame done to floating viewsDrew DeVault
Also centers them on the screen when initially floated In the future we'll need a more sophisticated solution than that
2018-06-01Implement `floating enable`Drew DeVault
2018-05-28Support i3's legacy force_focus_wrapping commandBrian Ashworth
2018-05-28Merge pull request #2060 from RedSoxFan/focus-wrappingemersion
Implement focus_wrapping
2018-05-27Implement focus_wrappingBrian Ashworth
2018-05-28Fix ancestor typosRyan Dwyer
2018-05-27Merge pull request #2050 from smlx/focus-fixDrew DeVault
Focus containers only on entry.
2018-05-27Implement bindsym/bindcode --lockedfrsfnrrg
Adds the --locked flag to bindsym and bindcode commands. When a keyboard's associated seat has an exclusive client (i.e, a screenlocker), then bindings are only executed if they have the locked flag. When there is no such client, this restriction is lifted.
2018-05-28Move previous cursor_position inline.Scott Leggett