diff options
author | Tomeu Vizoso <tomeu@tomeuvizoso.net> | 2008-07-05 12:20:28 (GMT) |
---|---|---|
committer | Tomeu Vizoso <tomeu@tomeuvizoso.net> | 2008-07-05 12:20:28 (GMT) |
commit | 184181edf40145de5cbd37ba3f9cbc3c9d13e822 (patch) | |
tree | 0d9f24613aed3856d4d6afa38332bc7c68c84b02 /src | |
parent | 95769bd75d0adaa47afabc0f98d0e51100bc1a84 (diff) |
#7339 Stop the launching box to pulse in the background indefinitely
Diffstat (limited to 'src')
-rw-r--r-- | src/view/home/launchbox.py | 12 | ||||
-rw-r--r-- | src/view/pulsingicon.py | 6 |
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: |