Use focus for new windows xwayland/wl_shell
This commit is contained in:
parent
669f91b991
commit
61c1c3e7af
|
@ -131,14 +131,11 @@ void handle_wl_shell_surface(struct wl_listener *listener, void *data) {
|
|||
sway_surface->destroy.notify = handle_destroy;
|
||||
wl_signal_add(&shell_surface->events.destroy, &sway_surface->destroy);
|
||||
|
||||
// TODO: actual focus semantics
|
||||
swayc_t *parent = root_container.children->items[0];
|
||||
parent = parent->children->items[0]; // workspace
|
||||
|
||||
swayc_t *cont = new_view(parent, sway_view);
|
||||
struct sway_seat *seat = input_manager_current_seat(input_manager);
|
||||
swayc_t *focus = sway_seat_get_focus_inactive(seat, &root_container);
|
||||
swayc_t *cont = new_view(focus, sway_view);
|
||||
sway_view->swayc = cont;
|
||||
|
||||
arrange_windows(cont->parent, -1, -1);
|
||||
|
||||
sway_input_manager_set_focus(input_manager, cont);
|
||||
}
|
||||
|
|
|
@ -233,10 +233,9 @@ void handle_xwayland_surface(struct wl_listener *listener, void *data) {
|
|||
return;
|
||||
}
|
||||
|
||||
swayc_t *parent = root_container.children->items[0];
|
||||
parent = parent->children->items[0]; // workspace
|
||||
|
||||
swayc_t *cont = new_view(parent, sway_view);
|
||||
struct sway_seat *seat = input_manager_current_seat(input_manager);
|
||||
swayc_t *focus = sway_seat_get_focus_inactive(seat, &root_container);
|
||||
swayc_t *cont = new_view(focus, sway_view);
|
||||
sway_view->swayc = cont;
|
||||
|
||||
arrange_windows(cont->parent, -1, -1);
|
||||
|
|
Loading…
Reference in a new issue