diff options
author | Marius Vlad <marius.vlad@collabora.com> | 2024-02-07 17:46:15 +0200 |
---|---|---|
committer | Marius Vlad <marius.vlad@collabora.com> | 2024-02-22 13:51:33 +0000 |
commit | 70a2d75e8e35d94bf2b1aef430ac7ed8cd3d96bc (patch) | |
tree | 8b999f0547c500c76d13f7f6f5e3e50fd1e0ed6d | |
parent | 000b725db81ae79ffec0a7a84a2c4aab2778dc82 (diff) |
src: Don't attempt to split background role window
If that window is a background one, this patch avoids doing that. The
background surface role needs to always be available. Discovered while
testing it out with flutter embedder.
Bug-AGL: SPEC-4839
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
Change-Id: Ia46b7ae590ea4feafa8a67efeb8ad540f6d2dfa0
-rw-r--r-- | src/layout.c | 2 | ||||
-rw-r--r-- | src/shell.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/src/layout.c b/src/layout.c index 0ab7e7c..95d3e54 100644 --- a/src/layout.c +++ b/src/layout.c @@ -1050,7 +1050,7 @@ ivi_layout_reset_split_surfaces(struct ivi_compositor *ivi) return; output = ivisurf->current_completed_output; - if (output->previous_active) { + if (output->previous_active && output->background != output->previous_active) { struct weston_view *ev = output->previous_active->view; struct weston_output *woutput = output->output; diff --git a/src/shell.c b/src/shell.c index cce4dec..a44dddf 100644 --- a/src/shell.c +++ b/src/shell.c @@ -1921,7 +1921,7 @@ void shell_set_app_split(struct wl_client *client, struct wl_resource *res, return; } - if (output->previous_active) { + if (output->previous_active && output->background != output->previous_active) { struct weston_view *ev = output->previous_active->view; if (!weston_view_is_mapped(ev)) |