aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sway/desktop/xwayland.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/sway/desktop/xwayland.c b/sway/desktop/xwayland.c
index d608c8b6..3e08b20e 100644
--- a/sway/desktop/xwayland.c
+++ b/sway/desktop/xwayland.c
@@ -154,12 +154,10 @@ static void handle_map_notify(struct wl_listener *listener, void *data) {
struct sway_view *view = sway_surface->view;
container_view_destroy(view->swayc);
- struct sway_container *parent = root_container.children->items[0];
- parent = parent->children->items[0]; // workspace
-
- struct sway_container *cont = container_view_create(parent, view);
+ struct sway_seat *seat = input_manager_current_seat(input_manager);
+ struct sway_container *focus = sway_seat_get_focus_inactive(seat, &root_container);
+ struct sway_container *cont = container_view_create(focus, view);
view->swayc = cont;
-
arrange_windows(cont->parent, -1, -1);
sway_input_manager_set_focus(input_manager, cont);
}