59 lines
1.8 KiB
Diff
59 lines
1.8 KiB
Diff
|
From: =?utf-8?b?Ik1hcmNvIFRyZXZpc2FuIChUcmV2acOxbyki?= <mail@3v1n0.net>
|
||
|
Date: Fri, 20 Sep 2019 16:13:03 +0200
|
||
|
Subject: clutter/timeline: Use a function to cancel the delay timeout
|
||
|
|
||
|
Avoid repeating the same code for canceling the delay timeout, using a
|
||
|
function for later uses.
|
||
|
|
||
|
https://gitlab.gnome.org/GNOME/mutter/merge_requests/805
|
||
|
|
||
|
Origin: upstream, commit:63a0b702c94af013b94ad3f32a8c5ba86bf6dfba
|
||
|
Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/eoan/+source/mutter/+bug/1841794
|
||
|
Bug: https://gitlab.gnome.org/GNOME/mutter/issues/815
|
||
|
---
|
||
|
clutter/clutter/clutter-timeline.c | 17 +++++++----------
|
||
|
1 file changed, 7 insertions(+), 10 deletions(-)
|
||
|
|
||
|
diff --git a/clutter/clutter/clutter-timeline.c b/clutter/clutter/clutter-timeline.c
|
||
|
index 0c026eb..df7db16 100644
|
||
|
--- a/clutter/clutter/clutter-timeline.c
|
||
|
+++ b/clutter/clutter/clutter-timeline.c
|
||
|
@@ -424,6 +424,11 @@ clutter_timeline_set_custom_property (ClutterScriptable *scriptable,
|
||
|
g_object_set_property (G_OBJECT (scriptable), name, value);
|
||
|
}
|
||
|
|
||
|
+static void
|
||
|
+clutter_timeline_cancel_delay (ClutterTimeline *timeline)
|
||
|
+{
|
||
|
+ g_clear_handle_id (&timeline->priv->delay_id, g_source_remove);
|
||
|
+}
|
||
|
|
||
|
static void
|
||
|
clutter_scriptable_iface_init (ClutterScriptableIface *iface)
|
||
|
@@ -550,11 +555,7 @@ clutter_timeline_dispose (GObject *object)
|
||
|
|
||
|
priv = self->priv;
|
||
|
|
||
|
- if (priv->delay_id)
|
||
|
- {
|
||
|
- g_source_remove (priv->delay_id);
|
||
|
- priv->delay_id = 0;
|
||
|
- }
|
||
|
+ clutter_timeline_cancel_delay (self);
|
||
|
|
||
|
if (priv->progress_notify != NULL)
|
||
|
{
|
||
|
@@ -1216,11 +1217,7 @@ clutter_timeline_pause (ClutterTimeline *timeline)
|
||
|
if (priv->delay_id == 0 && !priv->is_playing)
|
||
|
return;
|
||
|
|
||
|
- if (priv->delay_id)
|
||
|
- {
|
||
|
- g_source_remove (priv->delay_id);
|
||
|
- priv->delay_id = 0;
|
||
|
- }
|
||
|
+ clutter_timeline_cancel_delay (timeline);
|
||
|
|
||
|
priv->msecs_delta = 0;
|
||
|
set_is_playing (timeline, FALSE);
|