tablet-shell: Use seat_list rather than primary seat
Activate surfaces for all seats when showing the grid, not just the primary seat. Signed-off-by: Daniel Stone <daniel@fooishbar.org>
This commit is contained in:
committed by
Kristian Høgsberg
parent
4034c7ac21
commit
162f78af68
+8
-9
@@ -240,9 +240,10 @@ minimize_zoom_done(struct weston_zoom *zoom, void *data)
|
|||||||
{
|
{
|
||||||
struct tablet_shell *shell = data;
|
struct tablet_shell *shell = data;
|
||||||
struct weston_compositor *compositor = shell->compositor;
|
struct weston_compositor *compositor = shell->compositor;
|
||||||
struct weston_seat *seat = (struct weston_seat *) compositor->seat;
|
struct weston_seat *seat;
|
||||||
|
|
||||||
weston_surface_activate(shell->home_surface, seat);
|
wl_list_for_each(seat, &compositor->seat_list, link)
|
||||||
|
weston_surface_activate(shell->home_surface, seat);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@@ -250,7 +251,7 @@ tablet_shell_switch_to(struct tablet_shell *shell,
|
|||||||
struct weston_surface *surface)
|
struct weston_surface *surface)
|
||||||
{
|
{
|
||||||
struct weston_compositor *compositor = shell->compositor;
|
struct weston_compositor *compositor = shell->compositor;
|
||||||
struct weston_seat *seat = (struct weston_seat *) compositor->seat;
|
struct weston_seat *seat;
|
||||||
struct weston_surface *current;
|
struct weston_surface *current;
|
||||||
|
|
||||||
if (shell->state == STATE_SWITCHER) {
|
if (shell->state == STATE_SWITCHER) {
|
||||||
@@ -268,7 +269,8 @@ tablet_shell_switch_to(struct tablet_shell *shell,
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
fprintf(stderr, "switch to %p\n", surface);
|
fprintf(stderr, "switch to %p\n", surface);
|
||||||
weston_surface_activate(surface, seat);
|
wl_list_for_each(seat, &compositor->seat_list, link)
|
||||||
|
weston_surface_activate(surface, seat);
|
||||||
tablet_shell_set_state(shell, STATE_TASK);
|
tablet_shell_set_state(shell, STATE_TASK);
|
||||||
weston_zoom_run(surface, 0.3, 1.0, NULL, NULL);
|
weston_zoom_run(surface, 0.3, 1.0, NULL, NULL);
|
||||||
}
|
}
|
||||||
@@ -423,11 +425,8 @@ tablet_shell_unlock(struct wl_listener *listener, void *data)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
go_home(struct tablet_shell *shell)
|
go_home(struct tablet_shell *shell, struct weston_seat *seat)
|
||||||
{
|
{
|
||||||
struct weston_seat *seat =
|
|
||||||
(struct weston_seat *) shell->compositor->seat;
|
|
||||||
|
|
||||||
if (shell->state == STATE_SWITCHER)
|
if (shell->state == STATE_SWITCHER)
|
||||||
tablet_shell_send_hide_switcher(&shell->resource);
|
tablet_shell_send_hide_switcher(&shell->resource);
|
||||||
|
|
||||||
@@ -482,7 +481,7 @@ home_key_binding(struct wl_seat *seat, uint32_t time,
|
|||||||
toggle_switcher(shell);
|
toggle_switcher(shell);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
go_home(shell);
|
go_home(shell, (struct weston_seat *) seat);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user