summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDavid King <amigadave@amigadave.com>2014-09-09 16:50:09 +0100
committerDavid King <amigadave@amigadave.com>2014-09-09 16:50:09 +0100
commit6efd4960cfc57bea26fb7d169a5f600164f0bfd9 (patch)
treecae8a0f6b7d1641464e011cb1a1e6fcbecf3dcb9 /src
parent5d2c9c16b17c61338b8b1796144736e4377feaf7 (diff)
downloadcheese-6efd4960cfc57bea26fb7d169a5f600164f0bfd9.tar.gz
Fix crash when animating countdown
https://bugzilla.gnome.org/show_bug.cgi?id=735285
Diffstat (limited to 'src')
-rw-r--r--src/cheese-countdown.vala16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/cheese-countdown.vala b/src/cheese-countdown.vala
index d8f4e4fa..736b0ee2 100644
--- a/src/cheese-countdown.vala
+++ b/src/cheese-countdown.vala
@@ -24,6 +24,8 @@ internal class Cheese.Countdown : GLib.Object
public delegate void CountdownCallback ();
private Clutter.Text countdown_actor;
private unowned CountdownCallback completed_callback;
+ private Clutter.PropertyTransition pulse_in;
+ private Clutter.PropertyTransition pulse_out;
private int current_value = 0;
private GLib.Settings settings;
public bool running;
@@ -46,14 +48,13 @@ internal class Cheese.Countdown : GLib.Object
*/
private void fade_out ()
{
- var pulse_out = new Clutter.PropertyTransition ("opacity");
+ pulse_out = new Clutter.PropertyTransition ("opacity");
pulse_out.set_duration (500);
pulse_out.set_from_value (255);
pulse_out.set_to_value (0);
- pulse_out.remove_on_complete = true;
pulse_out.completed.connect (fade_in);
-
- this.countdown_actor.add_transition ("pulse-out", pulse_out);
+ pulse_out.animatable = countdown_actor;
+ pulse_out.start ();
}
/**
@@ -72,14 +73,13 @@ internal class Cheese.Countdown : GLib.Object
this.countdown_actor.text = this.current_value.to_string ();
this.current_value--;
- var pulse_in = new Clutter.PropertyTransition ("opacity");
+ pulse_in = new Clutter.PropertyTransition ("opacity");
pulse_in.set_duration (500);
pulse_in.set_from_value (0);
pulse_in.set_to_value (255);
- pulse_in.remove_on_complete = true;
pulse_in.completed.connect (fade_out);
-
- this.countdown_actor.add_transition ("pulse-in", pulse_in);
+ pulse_in.animatable = countdown_actor;
+ pulse_in.start ();
}
/**