Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarco Pesenti Gritti <mpgritti@gmail.com>2008-10-20 15:29:15 (GMT)
committer Marco Pesenti Gritti <mpgritti@gmail.com>2008-10-20 15:29:15 (GMT)
commit3cf713d3bd0db9b439d16d33776be55df43a4252 (patch)
treee5d2497728925965659b3c37accf1000ba429c6f
parent768fdde9297a7285e5bf1f5357505e9aaa01f877 (diff)
parent3677b3eb675137a0f3d9e0aac318b6ab4660d298 (diff)
Merge branch 'master' of git+ssh://dev.laptop.org/git/sugar
-rw-r--r--bin/sugar-session13
-rw-r--r--src/jarabe/desktop/activitieslist.py8
-rw-r--r--src/jarabe/desktop/favoritesview.py15
-rw-r--r--src/jarabe/desktop/groupbox.py4
-rw-r--r--src/jarabe/desktop/homebox.py2
-rw-r--r--src/jarabe/desktop/homewindow.py5
-rw-r--r--src/jarabe/desktop/meshbox.py2
-rw-r--r--src/jarabe/frame/frame.py1
-rw-r--r--src/jarabe/journal/journalactivity.py1
-rw-r--r--src/jarabe/journal/misc.py14
-rw-r--r--src/jarabe/model/bundleregistry.py4
11 files changed, 53 insertions, 16 deletions
diff --git a/bin/sugar-session b/bin/sugar-session
index 4f8dfa7..eb76fda 100644
--- a/bin/sugar-session
+++ b/bin/sugar-session
@@ -17,9 +17,15 @@
import sys
import os
+if os.environ.get('SUGAR_LOGGER_LEVEL', '') == 'debug':
+ import time
+ print '%r STARTUP: Starting the shell' % time.time()
+ sys.stdout.flush()
+
import gettext
-import gconf
+import logging
+import gconf
import gtk
import gobject
import dbus.glib
@@ -38,11 +44,13 @@ from jarabe import config
from jarabe import service
def uisetup_completed_cb():
+ logging.debug('STARTUP: --- uisetup_completed_cb ---')
from jarabe.model import screen
screen.set_dcon_freeze(0)
def uisetup_delayed_cb(home_window):
+ logging.debug('STARTUP: --- uisetup_delayed_cb ---')
from jarabe.journal import journalactivity
from jarabe.view import keyhandler
from jarabe import frame
@@ -56,7 +64,6 @@ def uisetup_delayed_cb(home_window):
def main():
service.start_logsmanager()
-
logger.start('shell')
intro.check_profile()
@@ -84,8 +91,8 @@ def main():
home_window = HomeWindow()
home_window.show()
- gobject.idle_add(uisetup_delayed_cb, home_window)
gobject.idle_add(uisetup_completed_cb)
+ gobject.idle_add(uisetup_delayed_cb, home_window)
try:
gtk.main()
diff --git a/src/jarabe/desktop/activitieslist.py b/src/jarabe/desktop/activitieslist.py
index a39e525..2ce4973 100644
--- a/src/jarabe/desktop/activitieslist.py
+++ b/src/jarabe/desktop/activitieslist.py
@@ -14,6 +14,8 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+import logging
+
import gobject
import gtk
import hippo
@@ -37,6 +39,8 @@ class ActivitiesList(gtk.VBox):
}
def __init__(self):
+ logging.debug('STARTUP: Loading the activities list')
+
gobject.GObject.__init__(self)
scrolled_window = gtk.ScrolledWindow()
@@ -57,10 +61,12 @@ class ActivitiesList(gtk.VBox):
self._box.props.background_color = style.COLOR_WHITE.get_int()
canvas.set_root(self._box)
+ gobject.idle_add(self.__connect_to_bundle_registry_cb)
+
+ def __connect_to_bundle_registry_cb(self):
registry = bundleregistry.get_registry()
for info in registry:
self._add_activity(info)
-
registry.connect('bundle-added', self.__activity_added_cb)
registry.connect('bundle-removed', self.__activity_removed_cb)
diff --git a/src/jarabe/desktop/favoritesview.py b/src/jarabe/desktop/favoritesview.py
index 4ffa7fe..2afb933 100644
--- a/src/jarabe/desktop/favoritesview.py
+++ b/src/jarabe/desktop/favoritesview.py
@@ -71,6 +71,8 @@ class FavoritesView(hippo.Canvas):
}
def __init__(self, **kwargs):
+ logging.debug('STARTUP: Loading the favorites view')
+
gobject.GObject.__init__(self, **kwargs)
# DND stuff
@@ -88,11 +90,6 @@ class FavoritesView(hippo.Canvas):
self._layout = None
self._alert = None
- registry = bundleregistry.get_registry()
- registry.connect('bundle-added', self.__activity_added_cb)
- registry.connect('bundle-removed', self.__activity_removed_cb)
- registry.connect('bundle-changed', self.__activity_changed_cb)
-
# More DND stuff
self.add_events(gtk.gdk.BUTTON_PRESS_MASK |
gtk.gdk.POINTER_MOTION_HINT_MASK)
@@ -103,6 +100,14 @@ class FavoritesView(hippo.Canvas):
self.connect('drag-drop', self.__drag_drop_cb)
self.connect('drag-data-received', self.__drag_data_received_cb)
+ gobject.idle_add(self.__connect_to_bundle_registry_cb)
+
+ def __connect_to_bundle_registry_cb(self):
+ registry = bundleregistry.get_registry()
+ registry.connect('bundle-added', self.__activity_added_cb)
+ registry.connect('bundle-removed', self.__activity_removed_cb)
+ registry.connect('bundle-changed', self.__activity_changed_cb)
+
def _add_activity(self, activity_info):
icon = ActivityIcon(activity_info)
icon.connect('erase-activated', self.__erase_activated_cb)
diff --git a/src/jarabe/desktop/groupbox.py b/src/jarabe/desktop/groupbox.py
index 5f4bdf2..b77ae6e 100644
--- a/src/jarabe/desktop/groupbox.py
+++ b/src/jarabe/desktop/groupbox.py
@@ -14,6 +14,8 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+import logging
+
import gobject
import gtk
import hippo
@@ -31,6 +33,8 @@ from jarabe.desktop.spreadlayout import SpreadLayout
class GroupBox(hippo.Canvas):
__gtype_name__ = 'SugarGroupBox'
def __init__(self):
+ logging.debug("STARTUP: Loading the group view")
+
gobject.GObject.__init__(self)
self._box = hippo.CanvasBox()
diff --git a/src/jarabe/desktop/homebox.py b/src/jarabe/desktop/homebox.py
index 999fede..8580140 100644
--- a/src/jarabe/desktop/homebox.py
+++ b/src/jarabe/desktop/homebox.py
@@ -50,6 +50,8 @@ class HomeBox(gtk.VBox):
__gtype_name__ = 'SugarHomeBox'
def __init__(self):
+ logging.debug("STARTUP: Loading the home view")
+
gobject.GObject.__init__(self)
self._favorites_view = favoritesview.FavoritesView()
diff --git a/src/jarabe/desktop/homewindow.py b/src/jarabe/desktop/homewindow.py
index e88fca6..37509b4 100644
--- a/src/jarabe/desktop/homewindow.py
+++ b/src/jarabe/desktop/homewindow.py
@@ -14,6 +14,8 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+import logging
+
import gtk
from sugar.graphics import style
@@ -27,12 +29,13 @@ from jarabe.model.shell import ShellModel
from jarabe.model import shell
_HOME_PAGE = 0
-_GROUP_PAGE = 1
+_GROUP_PAGE = 1
_MESH_PAGE = 2
_TRANSITION_PAGE = 3
class HomeWindow(gtk.Window):
def __init__(self):
+ logging.debug('STARTUP: Loading the desktop window')
gtk.Window.__init__(self)
accel_group = gtk.AccelGroup()
diff --git a/src/jarabe/desktop/meshbox.py b/src/jarabe/desktop/meshbox.py
index 3170d35..31dc1e0 100644
--- a/src/jarabe/desktop/meshbox.py
+++ b/src/jarabe/desktop/meshbox.py
@@ -444,6 +444,8 @@ class MeshToolbar(gtk.Toolbar):
class MeshBox(gtk.VBox):
__gtype_name__ = 'SugarMeshBox'
def __init__(self):
+ logging.debug("STARTUP: Loading the mesh view")
+
gobject.GObject.__init__(self)
self._model = neighborhood.get_model()
diff --git a/src/jarabe/frame/frame.py b/src/jarabe/frame/frame.py
index 49574f8..a1daced 100644
--- a/src/jarabe/frame/frame.py
+++ b/src/jarabe/frame/frame.py
@@ -94,6 +94,7 @@ class Frame(object):
MODE_NON_INTERACTIVE = 2
def __init__(self):
+ logging.debug("STARTUP: Loading the frame")
self.mode = None
self._palette_group = palettegroup.get_group('frame')
diff --git a/src/jarabe/journal/journalactivity.py b/src/jarabe/journal/journalactivity.py
index 1f63696..0513382 100644
--- a/src/jarabe/journal/journalactivity.py
+++ b/src/jarabe/journal/journalactivity.py
@@ -115,6 +115,7 @@ class JournalActivityDBusService(dbus.service.Object):
class JournalActivity(Window):
def __init__(self):
+ logging.debug("STARTUP: Loading the journal")
Window.__init__(self)
self.set_title(_('Journal'))
diff --git a/src/jarabe/journal/misc.py b/src/jarabe/journal/misc.py
index 269f238..19322ad 100644
--- a/src/jarabe/journal/misc.py
+++ b/src/jarabe/journal/misc.py
@@ -177,13 +177,15 @@ def resume(jobject, bundle_id=None):
activity_bundle = registry.get_bundle(activities[0].get_bundle_id())
activityfactory.create_with_uri(activity_bundle, bundle.get_start_uri())
else:
- if not get_activities(jobject) and bundle_id is None:
- logging.warning('No activity can open this object, %s.' %
- jobject.metadata.get('mime_type', None))
- return
if bundle_id is None:
- bundle_id = get_activities(jobject)[0].get_bundle_id()
- bundle = registry.get_bundle(bundle_id)
+ activities = get_activities(jobject)
+ if not activities:
+ logging.warning('No activity can open this object, %s.' %
+ jobject.metadata.get('mime_type', None))
+ return
+ bundle_id = activities[0].get_bundle_id()
+
+ bundle = registry.get_bundle(bundle_id)
activity_id = jobject.metadata['activity_id']
object_id = jobject.object_id
diff --git a/src/jarabe/model/bundleregistry.py b/src/jarabe/model/bundleregistry.py
index 279f1a9..1ddeea3 100644
--- a/src/jarabe/model/bundleregistry.py
+++ b/src/jarabe/model/bundleregistry.py
@@ -42,6 +42,7 @@ class BundleRegistry(gobject.GObject):
}
def __init__(self):
+ logging.debug('STARTUP: Loading the bundle registry')
gobject.GObject.__init__(self)
self._mime_defaults = self._load_mime_defaults()
@@ -186,9 +187,12 @@ class BundleRegistry(gobject.GObject):
return False
def _add_bundle(self, bundle_path):
+ logging.debug('STARTUP: Adding bundle %r' % bundle_path)
try:
bundle = ActivityBundle(bundle_path)
except MalformedBundleException:
+ logging.error('Error loading bundle %r:\n%s' % (bundle_path,
+ ''.join(traceback.format_exception(*sys.exc_info()))))
return None
self._bundles.append(bundle)