diff options
author | Marius Vlad <marius.vlad@collabora.com> | 2023-06-13 13:47:19 +0300 |
---|---|---|
committer | Marius Vlad <marius.vlad@collabora.com> | 2023-06-13 13:58:28 +0300 |
commit | e089e3ba1b7581a93834ce6e74824db95f55389c (patch) | |
tree | 245ebdedee2c65f04d0453ae30cc04a86036a865 | |
parent | 07c332f0b8c32976dc3b0ad7f8433de7641e4778 (diff) |
shell: Don't reset the activation area always
Rather than doing that always, be more selective, and perform it if we
had already an application active.
Bug-AGL: SPEC-4829
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
Change-Id: I707f92d1cc1f820af493bae9daa5a948aa452ad8
-rw-r--r-- | src/shell.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/shell.c b/src/shell.c index 2f8a722..1aabb5a 100644 --- a/src/shell.c +++ b/src/shell.c @@ -1795,18 +1795,20 @@ unbind_agl_shell(struct wl_resource *resource) } wl_list_for_each(output, &ivi->outputs, link) { - struct weston_geometry area = {}; /* reset the active surf if there's one present */ if (output->active) { + struct weston_geometry area = {}; + output->active->view->is_mapped = false; output->active->view->surface->is_mapped = false; weston_layer_entry_remove(&output->active->view->layer_link); output->active = NULL; + + output->area_activation = area; } - output->area_activation = area; insert_black_curtain(output); } |