Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarco Pesenti Gritti <mpg@redhat.com>2006-05-23 20:02:13 (GMT)
committer Marco Pesenti Gritti <mpg@redhat.com>2006-05-23 20:02:13 (GMT)
commit03af8bceea40471a022a8a46c5d8a7121edb8100 (patch)
tree18f2877aac93c9068129f88b73664de9f2c32489
parentf2e9500a9bf8251620f88c8093f5487b0da4e796 (diff)
Simplify redirecting output to the console
-rwxr-xr-xsugar/browser/browser.py5
-rwxr-xr-xsugar/chat/chat.py22
-rw-r--r--sugar/session/LogWriter.py8
-rw-r--r--sugar/session/session.py4
-rwxr-xr-xsugar/sugar3
5 files changed, 21 insertions, 21 deletions
diff --git a/sugar/browser/browser.py b/sugar/browser/browser.py
index f67f4a4..2ad6131 100755
--- a/sugar/browser/browser.py
+++ b/sugar/browser/browser.py
@@ -355,9 +355,8 @@ class BrowserShell(dbus.service.Object):
self.__browsers.append(browser)
browser.activity_connect_to_shell()
-if len(sys.argv) > 1 and sys.argv[1] == "--console":
- sys.stdout = LogWriter("Web")
- sys.stderr = LogWriter("Web")
+log_writer = LogWriter("Web")
+log_writer.start()
gtk.rc_parse(sugar.env.get_data_file('browser.rc'))
diff --git a/sugar/chat/chat.py b/sugar/chat/chat.py
index 0a165fd..02b0568 100755
--- a/sugar/chat/chat.py
+++ b/sugar/chat/chat.py
@@ -696,17 +696,11 @@ class ChatShell(dbus.service.Object):
def send_text_message(self, message):
self._group_chat.send_text_message(message)
-
-def main():
- if len(sys.argv) > 1 and sys.argv[1] == "--console":
- sys.stdout = LogWriter("Chat")
- sys.stderr = LogWriter("Chat")
-
- ChatShell.get_instance().open_group_chat()
- try:
- gtk.main()
- except KeyboardInterrupt:
- pass
-
-if __name__ == "__main__":
- main()
+log_writer = LogWriter("Chat")
+log_writer.start()
+
+ChatShell.get_instance().open_group_chat()
+try:
+ gtk.main()
+except KeyboardInterrupt:
+ pass
diff --git a/sugar/session/LogWriter.py b/sugar/session/LogWriter.py
index 92cbf65..7c6be75 100644
--- a/sugar/session/LogWriter.py
+++ b/sugar/session/LogWriter.py
@@ -1,3 +1,6 @@
+import os
+import sys
+
import dbus
class LogWriter:
@@ -7,6 +10,11 @@ class LogWriter:
proxy_obj = bus.get_object('com.redhat.Sugar.Logger', '/com/redhat/Sugar/Logger')
self._logger = dbus.Interface(proxy_obj, 'com.redhat.Sugar.Logger')
+ def start(self):
+ if os.environ.has_key('SUGAR_USE_CONSOLE'):
+ sys.stdout = self
+ sys.stderr = self
+
def write(self, s):
try:
self._logger.log(self._application, s)
diff --git a/sugar/session/session.py b/sugar/session/session.py
index 4d57a20..96ed29e 100644
--- a/sugar/session/session.py
+++ b/sugar/session/session.py
@@ -9,7 +9,7 @@ import gtk
from sugar.shell import shell
from sugar import env
-def start(console):
+def start():
shell.main()
activities = []
@@ -34,8 +34,6 @@ def start(console):
for activity in activities:
args = [ 'python', '-m', activity ]
- if console:
- args.append('--console')
os.spawnvp(os.P_NOWAIT, 'python', args)
try:
diff --git a/sugar/sugar b/sugar/sugar
index c1c4252..f634089 100755
--- a/sugar/sugar
+++ b/sugar/sugar
@@ -68,11 +68,12 @@ else:
append_to_python_path(os.path.expanduser('~/.sugar/activities'))
if console:
+ os.environ['SUGAR_USE_CONSOLE'] = 'yes'
print 'Redirecting output to the console, press ctrl+d to open it.'
from sugar.session import session
-session.start(console)
+session.start()
if dbus_daemon_pid:
stop_dbus(dbus_daemon_pid)