From 1afedcb94c0517b5434e2220e63b997cf01427bd Mon Sep 17 00:00:00 2001 From: ftilde Date: Sat, 12 Dec 2020 00:11:58 +0100 Subject: Fix for_window criteria and mouse button bindings Previously, the special case handling of scratchpad and unmark commands was (probably accidentally) limited to criteria directly handled in the execute_command function. This would exclude: 1. for_window criteria, as these are handled externally for views and 2. and mouse bindings which select target the node currently under the mouse cursor. As a concrete example `for_window [app_id="foobar"] move scratchpad, scratchpad show` would show (or hide due to the toggling functionality) another window from the scratchpad, instead of showing the window with app_id "foobar". This commit replaces the "using_criteria" flag with "node_overridden" with the more general notion of signifying that the node (and container/workspace) in the current command handler context of the sway config is not defined by the currently focused node, but instead overridden by other means, i.e., criteria or mouse position. --- include/sway/config.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'include/sway/config.h') diff --git a/include/sway/config.h b/include/sway/config.h index 59f22ae2..2a1df2b6 100644 --- a/include/sway/config.h +++ b/include/sway/config.h @@ -559,7 +559,7 @@ struct sway_config { struct sway_node *node; struct sway_container *container; struct sway_workspace *workspace; - bool using_criteria; + bool node_overridden; // True if the node is selected by means other than focus struct { int argc; char **argv; -- cgit v1.2.3-54-g00ecf