diff options
author | Kirill Primak <vyivel@eclair.cafe> | 2023-01-09 18:28:59 +0300 |
---|---|---|
committer | Simon Zeni <simon@bl4ckb0ne.ca> | 2023-01-16 15:37:59 -0500 |
commit | 53c9a4a6438824abfb3d539bf55aec92074977e0 (patch) | |
tree | 1a98f99cdc1fc1857d4d211c8c128add7c26af3a /sway/input/seat.c | |
parent | swaynag: call swaynag_destroy on clean exit (diff) | |
download | sway-53c9a4a6438824abfb3d539bf55aec92074977e0.tar.gz sway-53c9a4a6438824abfb3d539bf55aec92074977e0.tar.zst sway-53c9a4a6438824abfb3d539bf55aec92074977e0.zip |
input/tablet: handle focusing NULL surface
Additionally, rename the function responsible for switching focus to
match its behavior better.
Diffstat (limited to 'sway/input/seat.c')
-rw-r--r-- | sway/input/seat.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/sway/input/seat.c b/sway/input/seat.c index 151303a9..18b63715 100644 --- a/sway/input/seat.c +++ b/sway/input/seat.c | |||
@@ -177,11 +177,11 @@ static void seat_keyboard_notify_enter(struct sway_seat *seat, | |||
177 | state->pressed_keycodes, state->npressed, &keyboard->modifiers); | 177 | state->pressed_keycodes, state->npressed, &keyboard->modifiers); |
178 | } | 178 | } |
179 | 179 | ||
180 | static void seat_tablet_pads_notify_enter(struct sway_seat *seat, | 180 | static void seat_tablet_pads_set_focus(struct sway_seat *seat, |
181 | struct wlr_surface *surface) { | 181 | struct wlr_surface *surface) { |
182 | struct sway_seat_device *seat_device; | 182 | struct sway_seat_device *seat_device; |
183 | wl_list_for_each(seat_device, &seat->devices, link) { | 183 | wl_list_for_each(seat_device, &seat->devices, link) { |
184 | sway_tablet_pad_notify_enter(seat_device->tablet_pad, surface); | 184 | sway_tablet_pad_set_focus(seat_device->tablet_pad, surface); |
185 | } | 185 | } |
186 | } | 186 | } |
187 | 187 | ||
@@ -205,7 +205,7 @@ static void seat_send_focus(struct sway_node *node, struct sway_seat *seat) { | |||
205 | #endif | 205 | #endif |
206 | 206 | ||
207 | seat_keyboard_notify_enter(seat, view->surface); | 207 | seat_keyboard_notify_enter(seat, view->surface); |
208 | seat_tablet_pads_notify_enter(seat, view->surface); | 208 | seat_tablet_pads_set_focus(seat, view->surface); |
209 | sway_input_method_relay_set_focus(&seat->im_relay, view->surface); | 209 | sway_input_method_relay_set_focus(&seat->im_relay, view->surface); |
210 | 210 | ||
211 | struct wlr_pointer_constraint_v1 *constraint = | 211 | struct wlr_pointer_constraint_v1 *constraint = |
@@ -1322,7 +1322,7 @@ void seat_set_focus_surface(struct sway_seat *seat, | |||
1322 | } | 1322 | } |
1323 | 1323 | ||
1324 | sway_input_method_relay_set_focus(&seat->im_relay, surface); | 1324 | sway_input_method_relay_set_focus(&seat->im_relay, surface); |
1325 | seat_tablet_pads_notify_enter(seat, surface); | 1325 | seat_tablet_pads_set_focus(seat, surface); |
1326 | } | 1326 | } |
1327 | 1327 | ||
1328 | void seat_set_focus_layer(struct sway_seat *seat, | 1328 | void seat_set_focus_layer(struct sway_seat *seat, |