aboutsummaryrefslogtreecommitdiffstats
path: root/sway/input/seat.c
diff options
context:
space:
mode:
authorLibravatar Simon Ser <contact@emersion.fr>2023-11-22 00:49:23 +0100
committerLibravatar Simon Ser <contact@emersion.fr>2023-12-13 10:11:35 +0100
commitdbd70faf2e0a8115f681995801fd4b82f4682604 (patch)
treef9c5f8dbf55396f1d7df172bf57386e13a3ce2f7 /sway/input/seat.c
parentDetect proprietary DisplayLink drivers (diff)
downloadsway-dbd70faf2e0a8115f681995801fd4b82f4682604.tar.gz
sway-dbd70faf2e0a8115f681995801fd4b82f4682604.tar.zst
sway-dbd70faf2e0a8115f681995801fd4b82f4682604.zip
input/seat: drop exclusive_client
This was a input-inhibit concept.
Diffstat (limited to 'sway/input/seat.c')
-rw-r--r--sway/input/seat.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/sway/input/seat.c b/sway/input/seat.c
index 0fd0e8e6..3ef0d713 100644
--- a/sway/input/seat.c
+++ b/sway/input/seat.c
@@ -1104,8 +1104,7 @@ bool seat_is_input_allowed(struct sway_seat *seat,
1104 } 1104 }
1105 return false; 1105 return false;
1106 } 1106 }
1107 struct wl_client *client = wl_resource_get_client(surface->resource); 1107 return true;
1108 return seat->exclusive_client == client || seat->exclusive_client == NULL;
1109} 1108}
1110 1109
1111static void send_unfocus(struct sway_container *con, void *data) { 1110static void send_unfocus(struct sway_container *con, void *data) {
@@ -1373,7 +1372,6 @@ void seat_set_focus_layer(struct sway_seat *seat,
1373void seat_set_exclusive_client(struct sway_seat *seat, 1372void seat_set_exclusive_client(struct sway_seat *seat,
1374 struct wl_client *client) { 1373 struct wl_client *client) {
1375 if (!client) { 1374 if (!client) {
1376 seat->exclusive_client = client;
1377 // Triggers a refocus of the topmost surface layer if necessary 1375 // Triggers a refocus of the topmost surface layer if necessary
1378 // TODO: Make layer surface focus per-output based on cursor position 1376 // TODO: Make layer surface focus per-output based on cursor position
1379 for (int i = 0; i < root->outputs->length; ++i) { 1377 for (int i = 0; i < root->outputs->length; ++i) {
@@ -1408,7 +1406,6 @@ void seat_set_exclusive_client(struct sway_seat *seat,
1408 now.tv_nsec / 1000, point->touch_id); 1406 now.tv_nsec / 1000, point->touch_id);
1409 } 1407 }
1410 } 1408 }
1411 seat->exclusive_client = client;
1412} 1409}
1413 1410
1414struct sway_node *seat_get_focus_inactive(struct sway_seat *seat, 1411struct sway_node *seat_get_focus_inactive(struct sway_seat *seat,