Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTomeu Vizoso <tomeu@tomeuvizoso.net>2008-07-05 12:20:28 (GMT)
committer Tomeu Vizoso <tomeu@tomeuvizoso.net>2008-07-05 12:20:28 (GMT)
commit184181edf40145de5cbd37ba3f9cbc3c9d13e822 (patch)
tree0d9f24613aed3856d4d6afa38332bc7c68c84b02 /src
parent95769bd75d0adaa47afabc0f98d0e51100bc1a84 (diff)
#7339 Stop the launching box to pulse in the background indefinitely
Diffstat (limited to 'src')
-rw-r--r--src/view/home/launchbox.py12
-rw-r--r--src/view/pulsingicon.py6
2 files changed, 15 insertions, 3 deletions
diff --git a/src/view/home/launchbox.py b/src/view/home/launchbox.py
index dfbec40..da4cb84 100644
--- a/src/view/home/launchbox.py
+++ b/src/view/home/launchbox.py
@@ -46,6 +46,8 @@ class LaunchBox(hippo.Canvas):
self._home = shellmodel.get_instance().get_home()
self._home.connect('active-activity-changed',
self.__active_activity_changed_cb)
+ self._home.connect('launch-failed', self.__launch_ended_cb)
+ self._home.connect('launch-completed', self.__launch_ended_cb)
self._update_icon()
@@ -72,15 +74,23 @@ class LaunchBox(hippo.Canvas):
def _update_icon(self):
activity = self._home.get_active_activity()
- if activity:
+ if activity is not None:
self._activity_icon.props.file_name = activity.get_icon_path()
self._activity_icon.props.pulse_color = activity.get_icon_color()
else:
self._activity_icon.props.file_name = None
+ if activity is not None and activity.props.launching:
+ self.resume()
+ else:
+ self.suspend()
+
def __active_activity_changed_cb(self, model, activity):
self._update_icon()
+ def __launch_ended_cb(self, model, activity):
+ self._update_icon()
+
class _Animation(animator.Animation):
def __init__(self, icon, start_size, end_size):
animator.Animation.__init__(self, 0.0, 1.0)
diff --git a/src/view/pulsingicon.py b/src/view/pulsingicon.py
index 235e7f9..c733043 100644
--- a/src/view/pulsingicon.py
+++ b/src/view/pulsingicon.py
@@ -91,7 +91,8 @@ class PulsingIcon(Icon):
def _start_pulsing(self, restart=False):
if restart:
self._phase = 0
- self._pulse_hid = gobject.timeout_add(_INTERVAL, self.__pulse_cb)
+ if self._pulse_hid is None:
+ self._pulse_hid = gobject.timeout_add(_INTERVAL, self.__pulse_cb)
def _stop_pulsing(self):
if self._pulse_hid is not None:
@@ -183,7 +184,8 @@ class CanvasPulsingIcon(CanvasIcon):
def _start_pulsing(self, restart=False):
if restart:
self._phase = 0
- self._pulse_hid = gobject.timeout_add(_INTERVAL, self.__pulse_cb)
+ if self._pulse_hid is None:
+ self._pulse_hid = gobject.timeout_add(_INTERVAL, self.__pulse_cb)
def _stop_pulsing(self):
if self._pulse_hid is not None: