Rather than using a single hardcoded seat to activate new windows within a compositor, reset the focus for all seats.
Signed-off-by: Daniel Stone <[email protected]> --- src/shell.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/shell.c b/src/shell.c index 887ce45..96fef1c 100644 --- a/src/shell.c +++ b/src/shell.c @@ -2053,6 +2053,7 @@ map(struct desktop_shell *shell, struct weston_surface *surface, struct shell_surface *shsurf; enum shell_surface_type surface_type = SHELL_SURFACE_NONE; struct weston_surface *parent; + struct weston_seat *seat; int panel_height = 0; shsurf = get_shell_surface(surface); @@ -2151,9 +2152,10 @@ map(struct desktop_shell *shell, struct weston_surface *surface, case SHELL_SURFACE_TOPLEVEL: case SHELL_SURFACE_FULLSCREEN: case SHELL_SURFACE_MAXIMIZED: - if (!shell->locked) - activate(shell, surface, - (struct weston_seat *) compositor->seat); + if (!shell->locked) { + wl_list_for_each(seat, &compositor->seat_list, link) + activate(shell, surface, seat); + } break; default: break; -- 1.7.10 _______________________________________________ wayland-devel mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/wayland-devel
