summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorCarlos Garnacho <carlosg@gnome.org>2020-12-07 18:18:00 +0100
committerMarge Bot <marge-bot@gnome.org>2020-12-08 15:37:38 +0000
commit96e320ba5a2f9e191d08ce4424f659384ab02fe3 (patch)
treef8370c139772f18a79ca46c264b6cc2aa140f884 /src
parent49b3ac2f8665ad5721e7c5435b7c4aa9db813ddc (diff)
downloadmutter-96e320ba5a2f9e191d08ce4424f659384ab02fe3.tar.gz
clutter: Drop CLUTTER_DESTROY_NOTIFY event
Stop propagating this as a Clutter event. DestroyNotify is only relevant on nested X11 sessions, so handle it specifically in place. Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1623>
Diffstat (limited to 'src')
-rw-r--r--src/backends/x11/meta-stage-x11.c7
-rw-r--r--src/core/events.c3
-rw-r--r--src/tests/clutter/interactive/test-events.c3
-rw-r--r--src/tests/clutter/interactive/test-grab.c3
4 files changed, 5 insertions, 11 deletions
diff --git a/src/backends/x11/meta-stage-x11.c b/src/backends/x11/meta-stage-x11.c
index 18c64b6ca..650076c74 100644
--- a/src/backends/x11/meta-stage-x11.c
+++ b/src/backends/x11/meta-stage-x11.c
@@ -734,9 +734,10 @@ meta_stage_x11_translate_event (MetaStageX11 *stage_x11,
g_debug ("Destroy notification received for stage, win:0x%x",
(unsigned int) xevent->xany.window);
- event->any.type = CLUTTER_DESTROY_NOTIFY;
- event->any.stage = stage;
- res = TRUE;
+ g_return_val_if_fail (META_IS_STAGE_X11_NESTED (stage_x11),
+ FALSE);
+ meta_quit (META_EXIT_SUCCESS);
+ res = FALSE;
break;
case ClientMessage:
diff --git a/src/core/events.c b/src/core/events.c
index d6fbdb9f4..8859a342f 100644
--- a/src/core/events.c
+++ b/src/core/events.c
@@ -110,8 +110,7 @@ handle_idletime_for_event (const ClutterEvent *event)
if (event->any.flags & CLUTTER_EVENT_FLAG_SYNTHETIC ||
event->type == CLUTTER_ENTER ||
event->type == CLUTTER_LEAVE ||
- event->type == CLUTTER_STAGE_STATE ||
- event->type == CLUTTER_DESTROY_NOTIFY)
+ event->type == CLUTTER_STAGE_STATE)
return;
core_monitor = meta_idle_monitor_get_core ();
diff --git a/src/tests/clutter/interactive/test-events.c b/src/tests/clutter/interactive/test-events.c
index 633d71d69..1d1c63dd4 100644
--- a/src/tests/clutter/interactive/test-events.c
+++ b/src/tests/clutter/interactive/test-events.c
@@ -350,9 +350,6 @@ input_cb (ClutterActor *actor,
case CLUTTER_STAGE_STATE:
g_print ("[%s] STAGE STATE", clutter_actor_get_name (source_actor));
break;
- case CLUTTER_DESTROY_NOTIFY:
- g_print ("[%s] DESTROY NOTIFY", clutter_actor_get_name (source_actor));
- break;
case CLUTTER_TOUCHPAD_PINCH:
g_print ("[%s] TOUCHPAD PINCH", clutter_actor_get_name (source_actor));
break;
diff --git a/src/tests/clutter/interactive/test-grab.c b/src/tests/clutter/interactive/test-grab.c
index 3b3a268a6..fc1912f9f 100644
--- a/src/tests/clutter/interactive/test-grab.c
+++ b/src/tests/clutter/interactive/test-grab.c
@@ -62,9 +62,6 @@ debug_event_cb (ClutterActor *actor,
case CLUTTER_STAGE_STATE:
printf("[%s] STAGE STATE", source);
break;
- case CLUTTER_DESTROY_NOTIFY:
- printf("[%s] DESTROY NOTIFY", source);
- break;
case CLUTTER_TOUCH_BEGIN:
g_print ("[%s] TOUCH BEGIN", source);
break;