diff options
author | Marco Pesenti Gritti <marco@localhost.localdomain> | 2006-08-11 09:37:35 (GMT) |
---|---|---|
committer | Marco Pesenti Gritti <marco@localhost.localdomain> | 2006-08-11 09:37:35 (GMT) |
commit | cb47f17b31dde57823d46d974e983aa7fe7cad98 (patch) | |
tree | d97b9c32ab156a4052b49c6e90b37d53ca95c011 /shell/Session.py | |
parent | 27456ff7231b65ffc4409f76b167110e32790626 (diff) |
Move session stuff to his own package
Diffstat (limited to 'shell/Session.py')
-rw-r--r-- | shell/Session.py | 82 |
1 files changed, 0 insertions, 82 deletions
diff --git a/shell/Session.py b/shell/Session.py deleted file mode 100644 index 985f1af..0000000 --- a/shell/Session.py +++ /dev/null @@ -1,82 +0,0 @@ -import os -import gtk -import gobject -import time -import dbus -import dbus.dbus_bindings - -from sugar.presence import PresenceService -from Shell import Shell -from Process import Process -import sugar.env - -class DbusProcess(Process): - def __init__(self): - config = sugar.env.get_dbus_config() - cmd = "dbus-daemon --print-address --config-file %s" % config - Process.__init__(self, cmd) - - def get_name(self): - return 'Dbus' - - def start(self): - Process.start(self, True) - dbus_file = os.fdopen(self._stdout) - addr = dbus_file.readline() - addr = addr.strip() - dbus_file.close() - os.environ["DBUS_SESSION_BUS_ADDRESS"] = addr - -class MatchboxProcess(Process): - def __init__(self): - options = '-use_titlebar no' - - kbd_config = os.path.join(sugar.env.get_data_dir(), 'kbdconfig') - options += ' -kbdconfig %s' % kbd_config - - command = 'matchbox-window-manager %s' % options - print command - Process.__init__(self, command) - - def get_name(self): - return 'Matchbox' - -class PresenceServiceProcess(Process): - def __init__(self): - Process.__init__(self, "sugar-presence-service") - - def get_name(self): - return "PresenceService" - - def start(self): - Process.start(self) - bus = dbus.Bus() - ret = False - # Wait for the presence service to start up - while not ret: - ret = dbus.dbus_bindings.bus_name_has_owner(bus._connection, PresenceService.DBUS_SERVICE) - time.sleep(0.2) - -class Session: - """Takes care of running the shell and all the sugar processes""" - def __init__(self, registry): - self._registry = registry - - def start(self): - """Start the session""" - process = DbusProcess() - process.start() - - process = MatchboxProcess() - process.start() - - process = PresenceServiceProcess() - process.start() - - shell = Shell(self._registry) - shell.start() - - try: - gtk.main() - except KeyboardInterrupt: - print 'Ctrl+C pressed, exiting...' |