Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTomeu Vizoso <tomeu@sugarlabs.org>2009-04-05 16:36:05 (GMT)
committer Tomeu Vizoso <tomeu@sugarlabs.org>2009-04-06 13:15:21 (GMT)
commitf15b689132082f8edc7408902aad9c27809624b9 (patch)
tree2bd6459e131da501ac67f39cdeb20bcadb69f4cc
parent2b5160b801b8adb0970beea446f539480208aba1 (diff)
Take into account launcher windows when checking if an already instance is running #461
-rw-r--r--src/jarabe/model/shell.py2
-rw-r--r--src/jarabe/view/service.py9
2 files changed, 8 insertions, 3 deletions
diff --git a/src/jarabe/model/shell.py b/src/jarabe/model/shell.py
index cfc49ab..709eb03 100644
--- a/src/jarabe/model/shell.py
+++ b/src/jarabe/model/shell.py
@@ -77,7 +77,7 @@ class Activity(gobject.GObject):
self._activity_id = activity_id
self._activity_info = activity_info
self._launch_time = time.time()
- self._launching = False
+ self._launching = True
if window is not None:
self.set_window(window)
diff --git a/src/jarabe/view/service.py b/src/jarabe/view/service.py
index a2439ce..df00ba6 100644
--- a/src/jarabe/view/service.py
+++ b/src/jarabe/view/service.py
@@ -80,10 +80,15 @@ class UIService(dbus.service.Object):
@dbus.service.method(_DBUS_SHELL_IFACE,
in_signature="s", out_signature="b")
def ActivateActivity(self, activity_id):
+ """Switch to the window related to this activity_id and return a boolean
+ indicating if there is a real (ie. not a launcher window) activity
+ already open.
+ """
activity = self._shell_model.get_activity_by_id(activity_id)
- if activity:
+
+ if activity is not None and activity.get_window() is not None:
activity.get_window().activate(gtk.get_current_event_time())
- return True
+ return not activity.props.launching
return False