aboutsummaryrefslogtreecommitdiff
path: root/sway/commands
AgeCommit message (Collapse)Author
2018-06-01Fix binding bindcode flag initializationfrsfnrrg
2018-06-01Use XKB keycode numbering for bindcodefrsfnrrg
2018-06-01Share common code between bindsym and bindcode commandsfrsfnrrg
2018-06-01Merge pull request #2027 from RyanDwyer/implement-floatingDrew DeVault
Implement floating
2018-06-01Fix cmd_workspace crash when a surface has focusBrian Ashworth
2018-06-01Fix changing borders on floating viewsRyan Dwyer
2018-06-01Adjust move command to account for changed coordinate systemRyan Dwyer
2018-06-01Prevent splitting a floating viewRyan Dwyer
2018-06-01Replace is_floating boolean with functionRyan 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-28Implement config parser for workspace_layoutBrian Ashworth
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-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-26Implement swap commandBrian Ashworth
2018-05-25Clean up container title functionsRyan Dwyer
* Add and use lenient_strcat and lenient_strncat functions * Rename `concatenate_child_titles` function as that's no longer what it does * Rename `container_notify_child_title_changed` because we only need to notify that the tree structure has changed, not titles * Don't notify parents when a child changes its title * Update ancestor titles when changing a container's layout * Eg. create nested tabs and change the inner container to stacking * No need to store tree presentation in both container->name and formatted_title
2018-05-22Implement stacked layoutRyan Dwyer
2018-05-21Implement tabbed layoutRyan Dwyer
2018-05-20Fix border commands from changing focusBrian Ashworth
2018-05-17Implement show_marksRyan Dwyer
2018-05-15Change unmark implemention to match i3'sRyan Dwyer
2018-05-15Implement marksRyan Dwyer
2018-05-14Kill wl_shellemersion
2018-05-14Revert "Revert "Merge pull request #1943 from RyanDwyer/criteria-improvements""Ryan Dwyer
This reverts commit 32a572cecfd0f6072a78ce0a381a2f8365f9010a. This reimplements the criteria overhaul in preparation for fixing a known bug.
2018-05-13Merge pull request #1824 from snaggen/idleDrew DeVault
DPMS and lock handling
2018-05-13Idle handling for dpms/lockscreen et alMattias Eriksson
Swayidle handles idle events and allows for dpms and lockscreen handling. It also handles systemd sleep events, and can raise a lockscreen on sleep Fixes #541
2018-05-12Revert "Merge pull request #1943 from RyanDwyer/criteria-improvements"Drew DeVault
This reverts commit 3e1bf721c69cb6df70c3dc3d3d4933e987339676, reversing changes made to 2217518bd554d0f11dafa7ec4e8f35f2e4762fbd.
2018-05-11Merge pull request #1943 from RyanDwyer/criteria-improvementsDrew DeVault
Overhaul criteria implementation
2018-05-11Implement hide_edge_bordersBrian Ashworth
2018-05-11Merge pull request #1956 from ggreer/move-focusDrew DeVault
cmd_move_container: Focus a window on the source workspace.
2018-05-10cmd_move_container: Focus a window on the source workspace.Geoff Greer
In Sway 0.15, moving a window to another workspace would cause a window on the source workspace to be focused. This restores that behavior, allowing you to quickly move a lot of windows to another workspace.
2018-05-10Allow setting border widths for normal borders using default_border.Geoff Greer
In Sway 0.15, `default_border normal 1` would set 1px wide borders. This recreates that behavior.
2018-05-11Overhaul criteria implementationRyan Dwyer
The criteria struct now uses properties for each token type rather than the list_t list of tokens. The reason for this is that different token types have different data types: pcre, string and number to name a few. This solution should be more flexible moving forward. A bonus of this is that criteria is now easier to understand when looking at the struct definition. The criteria parser has been rewritten because the previous one didn't support valueless pairs (eg. [class="foo" floating]). Criteria now has types. Types at the moment are CT_COMMAND, CT_ASSIGN_WORKSPACE and CT_ASSIGN_OUTPUT. i3 uses types as well. Previously the assign command was creating a criteria with 'move to workspace <name>' as its command, but this caused the window to appear briefly on the focused workspace before being moved to the assigned workspace. It now creates the view directly in the assigned workspace. Each view will only execute a given criteria once. This is achieved by storing a list of executed criteria in the view. This is the same strategy used by i3. Escaping now works properly. Previously you could do things like [class="Fire\"fox"] and the stored value would be 'Fire\"fox', but it should be (and now is) 'Fire"fox'. The public functions in criteria.c are now all prefixed with criteria_. Xwayland views now listen to the set_title, set_class and set_window_type events and criteria will be run when these happen. XDG shell has none of these events so it continues to update the title in handle_commit. Each view type's get_prop function has been split into get_string_prop and get_int_prop because some properties like the X11 window ID and window type are numeric. The following new criteria tokens are now supported: * id (X11 window ID) * instance * tiling * workspace
2018-05-06Revert "exec_always: Search for executables in /usr/lib/sway"Rostislav Pehlivanov
This reverts commit 7709340727fe2834f87b43aeeaef878694d5acd6.
2018-05-06Revert "Make the LIBDIR path configurable"Rostislav Pehlivanov
This reverts commit 1670b46bf6e56d37e69ab0fa32c6799e83397020.
2018-05-06Revert "Meson: Replace option `instlibdir` with `libexecdir`"Rostislav Pehlivanov
This reverts commit 830c4ef74c00dbe448da46cdbc576178abc5728e.
2018-05-06Revert "command/exec_always: Use wlr_log for logging errors in the child ↵Rostislav Pehlivanov
process" This reverts commit 177c67e6b89404d9d477b82c00c1353cd4696096.
2018-05-06Implement pango supportRyan Dwyer
Implements support for the pango: prefix in the font command. Closes #1903.
2018-05-06Fix PATH setenv() in exec_alwaysRyan Dwyer
2018-05-05Merge branch 'master' into usr-libemersion
2018-05-05command/exec_always: Use wlr_log for logging errors in the child processNicolas Braud-Santoni
2018-05-05Meson: Replace option `instlibdir` with `libexecdir`Nicolas Braud-Santoni
Derive a value from it, called `rundir` rather than writing join_paths(libexecdir, 'sway') all over the place.
2018-05-05Make the LIBDIR path configurableNicolas Braud-Santoni
2018-05-05exec_always: Search for executables in /usr/lib/swayNicolas Braud-Santoni
2018-05-05Move code for re-arranging after font height change into a common placeRyan Dwyer
2018-05-05Fix memory leak in title_format commandRyan Dwyer