summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarius Vlad <marius.vlad@collabora.com>2020-04-04 18:25:09 +0300
committerJan-Simon Moeller <jsmoeller@linuxfoundation.org>2020-04-10 15:32:56 +0000
commit1ee1bff64338dede1f72981a6f3787718ce47335 (patch)
tree1d982c0e4fccfa8dfac6412bce774b7b30e466be
parent0e66ee13b73e3ca218fbd81ba86d3ce8e04d1e54 (diff)
desktop: Remove the active surface only if matches the one being displayed
We incorrectly removed the active surface being displayed even if it wasn't the one currently displayed, so this patch only removes the active surface if the surface being removed is the same as the one being displayed. Bug-AGL: SPEC-3318 Signed-off-by: Marius Vlad <marius.vlad@collabora.com> Change-Id: I78c19692d59c3e355b2d140b75d8aadc9d8f2009
-rw-r--r--src/desktop.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/desktop.c b/src/desktop.c
index 7c6c19a..da28fc6 100644
--- a/src/desktop.c
+++ b/src/desktop.c
@@ -117,7 +117,7 @@ desktop_surface_removed(struct weston_desktop_surface *dsurface, void *userdata)
return;
/* reset the active surface as well */
- if (output && output->active) {
+ if (output && output->active && output->active == surface) {
output->active->view->is_mapped = false;
output->active->view->surface->is_mapped = false;