swayfx/sway/commands
Ryan Dwyer 82423991a8 Reload config using idle event
This patch makes it so when you run reload, the actual reloading is
deferred to the next time the event loop becomes idle. This avoids
several use-after-frees and removes the workarounds we have to avoid
them.

When you run reload, we validate the config before creating the idle
event. This is so the reload command will still return an error if there
are validation errors. To allow this, load_main_config has been adjusted
so it doesn't apply the config if validating is true rather than
applying it unconditionally.

This also fixes a memory leak in the reload command where if the config
failed to load, the bar_ids list would not be freed.
2018-10-08 19:28:53 +10:00
..
bar swaybar: fix setting binding mode indicator 2018-09-28 13:48:59 +01:00
input Fix some missing commands in sway-input(5) 2018-10-03 07:50:37 -04:00
output Handle shell special characters in bg file path 2018-09-28 23:12:24 -04:00
seat Implement type safe arguments and demote sway_container 2018-09-05 18:01:43 +10:00
assign.c commands: complete assign command 2018-08-18 17:25:06 +01:00
bar.c Change _XOPEN_SOURCE defines to _POSIX_C_SOURCE 2018-09-03 09:08:49 +02:00
bind.c Reload config using idle event 2018-10-08 19:28:53 +10:00
border.c Improve CSD logic 2018-09-27 22:51:37 +10:00
client.c Shim client.background and client.placeholder 2018-10-07 14:44:37 -04:00
create_output.c Fix compilation against wlroots without X11 backend 2018-09-21 21:25:03 +10: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 commands: fix exec quoting 2018-08-29 10:55:12 +01:00
exit.c remove checks for command handlers 2018-02-24 13:22:57 -05:00
floating.c Introduce seat_set_focus_container and seat_set_focus_workspace 2018-09-06 19:26:56 +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 Rename seat_get_active_child to seat_get_active_tiling_child 2018-09-16 22:01:54 +10:00
focus_follows_mouse.c Switch to using a function to parse booleans 2018-07-23 21:33:17 -04:00
focus_on_window_activation.c Implement focus_on_window_activation 2018-09-02 18:20:34 +10: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 Introduce seat_set_focus_container and seat_set_focus_workspace 2018-09-06 19:26:56 +10:00
gaps.c Don't allow negative gaps 2018-09-29 12:58:54 +10:00
hide_edge_borders.c Handle border options for gaps 2018-10-01 21:19:06 -04:00
include.c Write to swaynag pipe fd directly on config errors 2018-08-03 10:37:35 -04:00
input.c add tap-and-drag setting to sway-input 2018-09-29 11:49:41 +02:00
kill.c Implement type safe arguments and demote sway_container 2018-09-05 18:01:43 +10:00
layout.c Make gaps implementation consistent with i3-gaps 2018-09-29 11:08:19 +10:00
mark.c Implement type safe arguments and demote sway_container 2018-09-05 18:01:43 +10: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 Flatten container in workspace_rejigger 2018-09-23 14:32:26 +10:00
no_focus.c Implement no_focus command 2018-07-16 22:18:12 +10:00
nop.c commands: add nop 2018-08-18 15:50:26 +01:00
opacity.c Implement type safe arguments and demote sway_container 2018-09-05 18:01:43 +10:00
output.c Remove layout.c 2018-08-26 12:05:16 +10:00
raise_floating.c Add configuration for raising containers on focus 2018-10-03 16:23:12 +02:00
reload.c Reload config using idle event 2018-10-08 19:28:53 +10:00
rename.c Implement type safe arguments and demote sway_container 2018-09-05 18:01:43 +10:00
resize.c Return an error when resizing is a no op 2018-09-29 17:05:55 +10:00
scratchpad.c Implement type safe arguments and demote sway_container 2018-09-05 18:01:43 +10:00
seat.c commands: prevent running empty seat command 2018-09-08 19:53:27 +01:00
set.c commands: require set variable to start with $ 2018-08-18 15:50:26 +01:00
show_marks.c Implement type safe arguments and demote sway_container 2018-09-05 18:01:43 +10:00
smart_borders.c Handle border options for gaps 2018-10-01 21:19:06 -04:00
smart_gaps.c Implement type safe arguments and demote sway_container 2018-09-05 18:01:43 +10:00
split.c Implement type safe arguments and demote sway_container 2018-09-05 18:01:43 +10:00
sticky.c Implement type safe arguments and demote sway_container 2018-09-05 18:01:43 +10:00
swap.c Introduce seat_set_focus_container and seat_set_focus_workspace 2018-09-06 19:26:56 +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
tiling_drag.c Introduce tiling_drag directive 2018-09-11 17:17:19 +10:00
title_format.c Implement type safe arguments and demote sway_container 2018-09-05 18:01:43 +10:00
unmark.c Implement type safe arguments and demote sway_container 2018-09-05 18:01:43 +10:00
urgent.c Implement type safe arguments and demote sway_container 2018-09-05 18:01:43 +10:00
workspace.c Make gaps implementation consistent with i3-gaps 2018-09-29 11:08:19 +10: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