diff options
author | Drew DeVault <sir@cmpwn.com> | 2018-04-03 17:03:29 -0400 |
---|---|---|
committer | Drew DeVault <sir@cmpwn.com> | 2018-04-04 18:47:48 -0400 |
commit | b7e779491232b825f6edc0b199e7564e93f1e332 (patch) | |
tree | 00457213fa57ec07692bb093392a83203e0e9960 /include | |
parent | 06fbd51ff5563f548599615a6baf5a1854bf9983 (diff) | |
download | sway-b7e779491232b825f6edc0b199e7564e93f1e332.tar.xz |
Implement input-inhibit in sway, swaylock
Diffstat (limited to 'include')
-rw-r--r-- | include/sway/input/seat.h | 5 | ||||
-rw-r--r-- | include/swaylock/swaylock.h | 1 |
2 files changed, 6 insertions, 0 deletions
diff --git a/include/sway/input/seat.h b/include/sway/input/seat.h index 53031d70..4b0fc3c1 100644 --- a/include/sway/input/seat.h +++ b/include/sway/input/seat.h @@ -32,6 +32,9 @@ struct sway_seat { // If the focused layer is set, views cannot receive keyboard focus struct wlr_layer_surface *focused_layer; + // If exclusive_client is set, no other clients will receive input events + struct wl_client *exclusive_client; + struct wl_listener focus_destroy; struct wl_listener new_container; @@ -88,4 +91,6 @@ void seat_apply_config(struct sway_seat *seat, struct seat_config *seat_config); struct seat_config *seat_get_config(struct sway_seat *seat); +bool seat_allow_input(struct sway_seat *seat, struct wlr_surface *surface); + #endif diff --git a/include/swaylock/swaylock.h b/include/swaylock/swaylock.h index ddca633d..06c94ead 100644 --- a/include/swaylock/swaylock.h +++ b/include/swaylock/swaylock.h @@ -33,6 +33,7 @@ struct swaylock_state { struct wl_display *display; struct wl_compositor *compositor; struct zwlr_layer_shell_v1 *layer_shell; + struct zwlr_input_inhibit_manager_v1 *input_inhibit_manager; struct wl_shm *shm; struct wl_list surfaces; struct swaylock_args args; |