diff options
author | Ryan Dwyer <ryandwyer1@gmail.com> | 2018-05-16 20:29:04 +1000 |
---|---|---|
committer | Ryan Dwyer <ryandwyer1@gmail.com> | 2018-05-16 20:29:04 +1000 |
commit | fc96f004d21ea52d95d3bbd68316c27e3a46409b (patch) | |
tree | 11af860046e84f5015676312f5a45a20739baf40 /sway/tree | |
parent | 2df8f266cd758221ad6e0fa182feb3b4c6d4142c (diff) | |
download | sway-fc96f004d21ea52d95d3bbd68316c27e3a46409b.tar.xz |
Don't steal focus when a view changes its title
Fixes #1989
Diffstat (limited to 'sway/tree')
-rw-r--r-- | sway/tree/view.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/sway/tree/view.c b/sway/tree/view.c index ec7f3031..833345c5 100644 --- a/sway/tree/view.c +++ b/sway/tree/view.c @@ -365,8 +365,7 @@ void view_execute_criteria(struct sway_view *view) { return; } struct sway_seat *seat = input_manager_current_seat(input_manager); - struct sway_container *prior_workspace = - container_parent(view->swayc, C_WORKSPACE); + struct sway_container *prior_focus = seat_get_focus(seat); list_t *criterias = criteria_for_view(view, CT_COMMAND); for (int i = 0; i < criterias->length; i++) { struct criteria *criteria = criterias->items[i]; @@ -388,7 +387,7 @@ void view_execute_criteria(struct sway_view *view) { seat_set_focus(seat, view->swayc); } list_free(criterias); - seat_set_focus(seat, seat_get_focus_inactive(seat, prior_workspace)); + seat_set_focus(seat, prior_focus); } void view_map(struct sway_view *view, struct wlr_surface *wlr_surface) { |