diff options
author | Simon Ser <contact@emersion.fr> | 2023-11-22 00:49:23 +0100 |
---|---|---|
committer | Simon Ser <contact@emersion.fr> | 2023-12-13 10:11:35 +0100 |
commit | dbd70faf2e0a8115f681995801fd4b82f4682604 (patch) | |
tree | f9c5f8dbf55396f1d7df172bf57386e13a3ce2f7 /sway/input/seat.c | |
parent | Detect proprietary DisplayLink drivers (diff) | |
download | sway-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.c | 5 |
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 | ||
1111 | static void send_unfocus(struct sway_container *con, void *data) { | 1110 | static void send_unfocus(struct sway_container *con, void *data) { |
@@ -1373,7 +1372,6 @@ void seat_set_focus_layer(struct sway_seat *seat, | |||
1373 | void seat_set_exclusive_client(struct sway_seat *seat, | 1372 | void 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 | ||
1414 | struct sway_node *seat_get_focus_inactive(struct sway_seat *seat, | 1411 | struct sway_node *seat_get_focus_inactive(struct sway_seat *seat, |