swayfx/sway/commands
Ryan Dwyer d6cd79c342 Implement iterators per container type
This introduces the following `for_each` functions:

* root_for_each_workspace
* root_for_each_container
* output_for_each_workspace
* output_for_each_container
* workspace_for_each_container

And introduces the following `find` functions:

* root_find_output
* root_find_workspace
* root_find_container
* output_find_workspace
* output_find_container
* workspace_find_container
* container_find_child

And removes the following functions:

* container_descendants
* container_for_each_descendant
* container_find

This change is preparing the way for demoting sway_container. Eventually
these functions will accept and return sway_outputs, sway_workspaces and
sway_containers (meaning a C_CONTAINER or C_VIEW).

This change also makes it easy to handle abnormalities like the
workspace floating list, root's scratchpad list and (once implemented)
root's saved workspaces list for when there's no connected outputs.
2018-08-18 23:38:54 +10:00
..
bar bar: free old position when changing 2018-07-15 21:47:22 +01:00
input Add xkb_numlock/xkb_capslock commands (#2311) 2018-07-25 17:24:45 +02:00
output Don't call swaynag_log for bg when not reading 2018-08-08 17:04:12 -04:00
seat Fix border commands from changing focus 2018-05-20 23:12:33 -04:00
assign.c Update for swaywm/wlroots#1126 2018-07-09 22:54:30 +01:00
bar.c Update for swaywm/wlroots#1126 2018-07-09 22:54:30 +01:00
bind.c ipc: add binding event 2018-08-01 16:57:15 +01:00
border.c Simplify transactions by utilising a dirty flag on containers 2018-07-14 23:14:55 +10:00
client.c Convert border_colors.text to float[4] 2018-05-03 08:14:17 -04:00
default_border.c Allow setting border widths for normal borders using default_border. 2018-05-10 23:35:37 -07:00
default_floating_border.c Implement default_floating_border command and adjust CSD behaviour 2018-07-17 10:14:33 +10:00
default_orientation.c Add default_orientation command 2018-03-30 10:43:55 -04:00
exec.c Update for swaywm/wlroots#1126 2018-07-09 22:54:30 +01:00
exec_always.c Move workspace pid code to root.c 2018-08-04 14:01:49 +10:00
exit.c remove checks for command handlers 2018-02-24 13:22:57 -05:00
floating.c Rename container_sort_workspaces and container_wrap_children 2018-08-18 22:02:03 +10:00
floating_minmax_size.c Implement floating_minimum_size and floating_maximum_size 2018-07-11 22:16:48 +10:00
floating_modifier.c Implement floating_modifier <mod> [inverse|normal] 2018-07-24 18:41:08 -04:00
focus.c Refactor seat_get_focus functions 2018-08-17 17:32:53 +10:00
focus_follows_mouse.c Switch to using a function to parse booleans 2018-07-23 21:33:17 -04:00
focus_wrapping.c Address review comments on parse_boolean 2018-07-23 21:37:53 -04:00
font.c Implement pango support 2018-05-06 08:25:22 +10:00
for_window.c Update for swaywm/wlroots#1126 2018-07-09 22:54:30 +01:00
force_display_urgency_hint.c Fix urgent timer logic and remove unnecessary header includes 2018-07-21 10:28:07 +10:00
force_focus_wrapping.c Switch to using a function to parse booleans 2018-07-23 21:33:17 -04:00
fullscreen.c Rename container_sort_workspaces and container_wrap_children 2018-08-18 22:02:03 +10:00
gaps.c Simplify transactions by utilising a dirty flag on containers 2018-07-14 23:14:55 +10:00
hide_edge_borders.c Implement iterators per container type 2018-08-18 23:38:54 +10:00
include.c Write to swaynag pipe fd directly on config errors 2018-08-03 10:37:35 -04:00
input.c Restrict CapsLock and NumLock commands to the configuration file 2018-07-25 17:24:45 +02:00
kill.c address feedback 2018-04-03 19:23:59 -04:00
layout.c commands: fix layout implementation (also better name for previous split layout) 2018-08-06 14:17:58 +01:00
mark.c ipc: add window::mark event 2018-08-01 16:57:15 +01:00
mode.c Create list for mouse binds when creating new mode 2018-07-31 23:49:42 -04:00
mouse_warping.c Implement mouse warping 2018-03-31 13:05:45 -04:00
move.c Rename container_sort_workspaces and container_wrap_children 2018-08-18 22:02:03 +10:00
no_focus.c Implement no_focus command 2018-07-16 22:18:12 +10:00
opacity.c Simplify damage tracking functions, use them in layer shell 2018-04-06 11:45:40 -04:00
output.c Reset outputs on reload 2018-07-20 22:17:20 -04:00
reload.c Write to swaynag pipe fd directly on config errors 2018-08-03 10:37:35 -04:00
rename.c Rename container_sort_workspaces and container_wrap_children 2018-08-18 22:02:03 +10:00
resize.c Implement resizing tiled containers via cursor 2018-08-12 10:45:54 +10:00
scratchpad.c Separate root-related code 2018-08-04 14:01:20 +10:00
seat.c Address first round of review for generic blocks 2018-06-02 08:07:44 -04:00
set.c Update for swaywm/wlroots#1126 2018-07-09 22:54:30 +01:00
show_marks.c Implement iterators per container type 2018-08-18 23:38:54 +10:00
smart_gaps.c Simplify transactions by utilising a dirty flag on containers 2018-07-14 23:14:55 +10:00
split.c Allow splitting a floating view 2018-07-28 22:41:04 +10:00
sticky.c Replace is_floating boolean with function 2018-06-01 23:14:58 +10:00
swap.c Implement iterators per container type 2018-08-18 23:38:54 +10:00
swaybg_command.c Update for swaywm/wlroots#1126 2018-07-09 22:54:30 +01:00
swaynag_command.c Write to swaynag pipe fd directly on config errors 2018-08-03 10:37:35 -04:00
title_format.c Move code for re-arranging after font height change into a common place 2018-05-05 22:29:37 +10:00
unmark.c Implement iterators per container type 2018-08-18 23:38:54 +10:00
urgent.c Switch to using a function to parse booleans 2018-07-23 21:33:17 -04:00
workspace.c commands: check for special workspaces in workspace & move commands 2018-08-06 14:17:58 +01:00
workspace_layout.c Implement config parser for workspace_layout 2018-05-28 22:55:06 -04:00
ws_auto_back_and_forth.c Add workspace_auto_back_and_forth command 2018-04-08 16:44:59 +02:00