Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMarco Pesenti Gritti <marco@localhost.localdomain>2008-06-07 08:51:42 (GMT)
committer Marco Pesenti Gritti <marco@localhost.localdomain>2008-06-07 08:51:42 (GMT)
commitd4b76298019eddf9b306e58ab6608224514e3830 (patch)
treefc6ea0f2456f66d646af2d4887748482c4a869f2 /src
parent1c56367091189b7193da1143e05bdf81702742a9 (diff)
Remove pending activity. Eben thinks we are better served
by a delay before advertising the new active activity on the network.
Diffstat (limited to 'src')
-rw-r--r--src/model/homemodel.py51
-rw-r--r--src/view/Shell.py13
-rw-r--r--src/view/frame/activitiestray.py2
-rw-r--r--src/view/frame/friendstray.py6
-rw-r--r--src/view/home/activitiesring.py12
5 files changed, 20 insertions, 64 deletions
diff --git a/src/model/homemodel.py b/src/model/homemodel.py
index 5538f84..1a42969 100644
--- a/src/model/homemodel.py
+++ b/src/model/homemodel.py
@@ -50,10 +50,7 @@ class HomeModel(gobject.GObject):
([gobject.TYPE_PYOBJECT])),
'active-activity-changed': (gobject.SIGNAL_RUN_FIRST,
gobject.TYPE_NONE,
- ([gobject.TYPE_PYOBJECT])),
- 'pending-activity-changed': (gobject.SIGNAL_RUN_FIRST,
- gobject.TYPE_NONE,
- ([gobject.TYPE_PYOBJECT]))
+ ([gobject.TYPE_PYOBJECT]))
}
def __init__(self):
@@ -61,7 +58,6 @@ class HomeModel(gobject.GObject):
self._activities = []
self._active_activity = None
- self._pending_activity = None
screen = wnck.screen_get_default()
screen.connect('window-opened', self._window_opened_cb)
@@ -78,7 +74,7 @@ class HomeModel(gobject.GObject):
def get_previous_activity(self):
activities = self._get_activities_with_window()
- i = activities.index(self._pending_activity)
+ i = activities.index(self._active_activity)
if len(activities) == 0:
return None
elif i - 1 >= 0:
@@ -88,7 +84,7 @@ class HomeModel(gobject.GObject):
def get_next_activity(self):
activities = self._get_activities_with_window()
- i = activities.index(self._pending_activity)
+ i = activities.index(self._active_activity)
if len(activities) == 0:
return None
elif i + 1 < len(activities):
@@ -96,34 +92,8 @@ class HomeModel(gobject.GObject):
else:
return activities[0]
- def get_pending_activity(self):
- """Returns the activity that would be seen in the Activity zoom level
-
- In the Home (or Neighborhood or Groups) zoom level, this
- indicates the activity that would become active if the user
- switched to the Activity zoom level. (In the Activity zoom
- level, this just returns the currently-active activity.)
- Unlike get_active_activity(), this never returns None as long
- as there is any activity running.
- """
- return self._pending_activity
-
- def _set_pending_activity(self, home_activity):
- if self._pending_activity == home_activity:
- return
-
- self._pending_activity = home_activity
- self.emit('pending-activity-changed', self._pending_activity)
-
def get_active_activity(self):
- """Returns the activity that the user is currently working in
-
- In the Activity zoom level, this returns the currently-active
- activity. In the other zoom levels, it returns the activity
- that was most-recently active in the Activity zoom level, or
- None if the most-recently-active activity is no longer
- running.
- """
+ """Returns the activity that the user is currently working in"""
return self._active_activity
def _set_active_activity(self, home_activity):
@@ -183,8 +153,8 @@ class HomeModel(gobject.GObject):
home_activity.props.launching = False
self.emit('activity-started', home_activity)
- if self._pending_activity is None:
- self._set_pending_activity(home_activity)
+ if self._active_activity is None:
+ self._set_active_activity(home_activity)
def _window_closed_cb(self, screen, window):
if window.get_window_type() == wnck.WINDOW_NORMAL:
@@ -219,7 +189,6 @@ class HomeModel(gobject.GObject):
act = self._get_activity_by_xid(window.get_xid())
if act is not None:
- self._set_pending_activity(act)
self._set_active_activity(act)
def _add_activity(self, home_activity):
@@ -228,20 +197,16 @@ class HomeModel(gobject.GObject):
def _remove_activity(self, home_activity):
if home_activity == self._active_activity:
- self._set_active_activity(None)
-
- if home_activity == self._pending_activity:
- # Figure out the new _pending_activity
windows = wnck.screen_get_default().get_windows_stacked()
windows.reverse()
for window in windows:
new_activity = self._get_activity_by_xid(window.get_xid())
if new_activity is not None:
- self._set_pending_activity(new_activity)
+ self._set_active_activity(new_activity)
break
else:
logging.error('No activities are running')
- self._set_pending_activity(None)
+ self._set_active_activity(None)
self.emit('activity-removed', home_activity)
self._activities.remove(home_activity)
diff --git a/src/view/Shell.py b/src/view/Shell.py
index 875e9a5..6da4790 100644
--- a/src/view/Shell.py
+++ b/src/view/Shell.py
@@ -56,7 +56,6 @@ class Shell(gobject.GObject):
self._hosts = {}
self._screen = wnck.screen_get_default()
self._current_host = None
- self._pending_host = None
self._screen_rotation = 0
self._key_handler = KeyHandler()
@@ -71,8 +70,6 @@ class Shell(gobject.GObject):
home_model.connect('activity-removed', self._activity_removed_cb)
home_model.connect('active-activity-changed',
self._active_activity_changed_cb)
- home_model.connect('pending-activity-changed',
- self._pending_activity_changed_cb)
gobject.idle_add(self._start_journal_idle)
@@ -120,12 +117,6 @@ class Shell(gobject.GObject):
self._current_host = host
- def _pending_activity_changed_cb(self, home_model, home_activity):
- if home_activity:
- self._pending_host = self._hosts[home_activity.get_xid()]
- else:
- self._pending_host = None
-
def get_model(self):
return self._model
@@ -192,8 +183,8 @@ class Shell(gobject.GObject):
self.take_activity_screenshot()
if level == shellmodel.ShellModel.ZOOM_ACTIVITY:
- if self._pending_host is not None:
- self._pending_host.present()
+ if self._current_host is not None:
+ self._current_host.present()
self._screen.toggle_showing_desktop(False)
else:
self._model.set_zoom_level(level)
diff --git a/src/view/frame/activitiestray.py b/src/view/frame/activitiestray.py
index 020cb68..0566399 100644
--- a/src/view/frame/activitiestray.py
+++ b/src/view/frame/activitiestray.py
@@ -191,7 +191,7 @@ class ActivitiesTray(HTray):
self._home_model = shellmodel.get_instance().get_home()
self._home_model.connect('activity-added', self.__activity_added_cb)
self._home_model.connect('activity-removed', self.__activity_removed_cb)
- self._home_model.connect('pending-activity-changed',
+ self._home_model.connect('active-activity-changed',
self.__activity_changed_cb)
self._invites = shellmodel.get_instance().get_invites()
diff --git a/src/view/frame/friendstray.py b/src/view/frame/friendstray.py
index 86decaa..b9d8c07 100644
--- a/src/view/frame/friendstray.py
+++ b/src/view/frame/friendstray.py
@@ -54,8 +54,8 @@ class FriendsTray(VTray):
reply_handler=self._get_activities_cb)
home_model = shellmodel.get_instance().get_home()
- home_model.connect('pending-activity-changed',
- self._pending_activity_changed_cb)
+ home_model.connect('active-activity-changed',
+ self._active_activity_changed_cb)
def _get_activities_cb(self, activities_list):
for act in activities_list:
@@ -117,7 +117,7 @@ class FriendsTray(VTray):
self._left_hid = activity_ps.connect(
'buddy-left', self.__buddy_left_cb)
- def _pending_activity_changed_cb(self, home_model, home_activity):
+ def _active_activity_changed_cb(self, home_model, home_activity):
if home_activity is None:
return
diff --git a/src/view/home/activitiesring.py b/src/view/home/activitiesring.py
index 4432279..394d31a 100644
--- a/src/view/home/activitiesring.py
+++ b/src/view/home/activitiesring.py
@@ -176,16 +176,16 @@ class CurrentActivityIcon(CanvasIcon, hippo.CanvasItem):
CanvasIcon.__init__(self, cache=True)
self._home_model = shellmodel.get_instance().get_home()
- if self._home_model.get_pending_activity() is not None:
- self._update(self._home_model.get_pending_activity())
+ if self._home_model.get_active_activity() is not None:
+ self._update(self._home_model.get_active_activity())
- self._home_model.connect('pending-activity-changed',
- self.__pending_activity_changed_cb)
+ self._home_model.connect('active-activity-changed',
+ self.__active_activity_changed_cb)
self.connect('button-release-event', self.__button_release_event_cb)
def __button_release_event_cb(self, icon, event):
- self._home_model.get_pending_activity().get_window().activate(1)
+ self._home_model.get_active_activity().get_window().activate(1)
def _update(self, home_activity):
_logger.debug('CurrentActivityIcon._update')
@@ -199,7 +199,7 @@ class CurrentActivityIcon(CanvasIcon, hippo.CanvasItem):
palette = CurrentActivityPalette(home_activity)
self.set_palette(palette)
- def __pending_activity_changed_cb(self, home_model, home_activity):
+ def __active_activity_changed_cb(self, home_model, home_activity):
self._update(home_activity)
class RingLayout(gobject.GObject, hippo.CanvasLayout):