From cd3efeba492f934c976503c1d1697a3c7ac4856b Mon Sep 17 00:00:00 2001 From: Marco Pesenti Gritti Date: Fri, 01 Jun 2007 12:04:54 +0000 Subject: Fix raw X windows --- (limited to 'shell') diff --git a/shell/model/Makefile.am b/shell/model/Makefile.am index fcc936b..6296ed2 100644 --- a/shell/model/Makefile.am +++ b/shell/model/Makefile.am @@ -12,5 +12,4 @@ sugar_PYTHON = \ MeshModel.py \ ShellModel.py \ homeactivity.py \ - homemodel.py \ - homerawwindow.py + homemodel.py diff --git a/shell/model/homeactivity.py b/shell/model/homeactivity.py index ad42310..c22e8be 100644 --- a/shell/model/homeactivity.py +++ b/shell/model/homeactivity.py @@ -91,7 +91,7 @@ class HomeActivity(gobject.GObject): if self._bundle: return self._bundle.get_icon() else: - return None + return 'theme:stock-missing' def get_icon_color(self): """Retrieve the appropriate icon colour for this activity @@ -137,7 +137,10 @@ class HomeActivity(gobject.GObject): def get_type(self): """Retrieve bundle's "service_name" for future reference""" - return self._bundle.get_service_name() + if self._bundle: + return self._bundle.get_service_name() + else: + return None def get_shared(self): """Return whether this activity is using Presence service sharing""" diff --git a/shell/model/homerawwindow.py b/shell/model/homerawwindow.py deleted file mode 100644 index 363e407..0000000 --- a/shell/model/homerawwindow.py +++ /dev/null @@ -1,59 +0,0 @@ -# Copyright (C) 2007, Red Hat. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - -import time - -from sugar import profile -from sugar import util - -class HomeRawWindow(object): - def __init__(self, window): - self._activity_id = util.unique_id() - self._window = window - self._launch_time = time.time() - - def get_activity_id(self): - return self._activity_id - - def get_service(self): - return None - - def get_title(self): - return self._window.get_name() - - def get_icon_name(self): - return 'theme:stock-missing' - - def get_icon_color(self): - return profile.get_color() - - def get_id(self): - return None - - def get_xid(self): - return self._window.get_xid() - - def get_window(self): - return self._window - - def get_type(self): - return 'RawXApplication' - - def get_shared(self): - return False - - def get_launch_time(self): - return self._launch_time diff --git a/shell/shellservice.py b/shell/shellservice.py index 819b299..e29d9b0 100644 --- a/shell/shellservice.py +++ b/shell/shellservice.py @@ -132,7 +132,8 @@ class ShellService(dbus.service.Object): new_id = "" if new_activity: new_id = new_activity.get_activity_id() - self.CurrentActivityChanged(new_id) + if new_id: + self.CurrentActivityChanged(new_id) def _bundle_to_activity_info(self, bundle): return ActivityInfo(bundle.get_name(), bundle.get_icon(), diff --git a/shell/view/frame/FriendsBox.py b/shell/view/frame/FriendsBox.py index d98c27c..f1dfedd 100644 --- a/shell/view/frame/FriendsBox.py +++ b/shell/view/frame/FriendsBox.py @@ -111,8 +111,11 @@ class FriendsBox(hippo.CanvasBox): def _active_activity_changed_cb(self, home_model, home_activity): if home_activity: activity_id = home_activity.get_activity_id() - ps = self._pservice.get_activity(activity_id) - self._set_activity_ps(ps) + if activity_id: + ps = self._pservice.get_activity(activity_id) + self._set_activity_ps(ps) + else: + self._set_activity_ps(None) else: self._set_activity_ps(None) -- cgit v0.9.1