aboutsummaryrefslogtreecommitdiffstats
path: root/include/sway/config.h
diff options
context:
space:
mode:
authorLibravatar Michael Weiser <michael.weiser@gmx.de>2020-02-16 00:40:18 +0100
committerLibravatar Brian Ashworth <bosrsf04@gmail.com>2020-03-11 23:51:37 -0400
commit3ee5aace33f1b5673ab372afba38480338ba8b90 (patch)
treea91724f17a916a6075c71f555968fa046973fddd /include/sway/config.h
parentinput: Add support for keyboard shortcuts inhibit (diff)
downloadsway-3ee5aace33f1b5673ab372afba38480338ba8b90.tar.gz
sway-3ee5aace33f1b5673ab372afba38480338ba8b90.tar.zst
sway-3ee5aace33f1b5673ab372afba38480338ba8b90.zip
commands: Add shortcuts_inhibitor command
Add a command to influence keyboard shortcuts inhibitors. In its current form it can be used to activate, deactivate or toggle an existing inhibitor on the surface currently receiving input. This can be used to define an escape shortcut such as: bindsym --inhibited $mod+Escape seat - shortcuts_inhibitor deactivate It also allows the user to configure a per-seat default of whether keyboard inhibitors are honoured by default (the default) or not. Using the activate/toggle command they can then enable the lingering inhibitor at a later time of their choosing. As a side effect this allows to specifically address a named seat for actions as well, whatever use-case that might serve. Signed-off-by: Michael Weiser <michael.weiser@gmx.de>
Diffstat (limited to 'include/sway/config.h')
-rw-r--r--include/sway/config.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/sway/config.h b/include/sway/config.h
index fdd65efd..359f9604 100644
--- a/include/sway/config.h
+++ b/include/sway/config.h
@@ -177,6 +177,12 @@ enum seat_config_allow_constrain {
177 CONSTRAIN_DISABLE 177 CONSTRAIN_DISABLE
178}; 178};
179 179
180enum seat_config_shortcuts_inhibit {
181 SHORTCUTS_INHIBIT_DEFAULT, // the default is currently enabled
182 SHORTCUTS_INHIBIT_ENABLE,
183 SHORTCUTS_INHIBIT_DISABLE
184};
185
180enum seat_keyboard_grouping { 186enum seat_keyboard_grouping {
181 KEYBOARD_GROUP_DEFAULT, // the default is currently smart 187 KEYBOARD_GROUP_DEFAULT, // the default is currently smart
182 KEYBOARD_GROUP_NONE, 188 KEYBOARD_GROUP_NONE,
@@ -201,6 +207,7 @@ struct seat_config {
201 list_t *attachments; // list of seat_attachment configs 207 list_t *attachments; // list of seat_attachment configs
202 int hide_cursor_timeout; 208 int hide_cursor_timeout;
203 enum seat_config_allow_constrain allow_constrain; 209 enum seat_config_allow_constrain allow_constrain;
210 enum seat_config_shortcuts_inhibit shortcuts_inhibit;
204 enum seat_keyboard_grouping keyboard_grouping; 211 enum seat_keyboard_grouping keyboard_grouping;
205 uint32_t idle_inhibit_sources, idle_wake_sources; 212 uint32_t idle_inhibit_sources, idle_wake_sources;
206 struct { 213 struct {