Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/shell
diff options
context:
space:
mode:
authorMarco Pesenti Gritti <marco@localhost.localdomain>2006-12-21 11:37:02 (GMT)
committer Marco Pesenti Gritti <marco@localhost.localdomain>2006-12-21 11:37:02 (GMT)
commit5623c8a3b19806563c86f007a649b4e59bda0bd2 (patch)
treef74839023adb845924f70ba7f7c289f1767011fd /shell
parent1d98e5f6bf3de6b1a161c7fba863fa0b0bd628ab (diff)
Change the Activity execute method to add a result boolean (handle/not handled).
When the camera key is pressed the Shell send and command to the active activity, if that's not handled than it startup org.laptop.CameraActivity.
Diffstat (limited to 'shell')
-rw-r--r--shell/view/ActivityHost.py3
-rw-r--r--shell/view/Shell.py11
2 files changed, 10 insertions, 4 deletions
diff --git a/shell/view/ActivityHost.py b/shell/view/ActivityHost.py
index f87b65b..3da8e77 100644
--- a/shell/view/ActivityHost.py
+++ b/shell/view/ActivityHost.py
@@ -90,6 +90,9 @@ class ActivityHost:
else:
return profile.get_color()
+ def execute(self, command, args):
+ self._activity.execute(command, args)
+
def share(self):
self._activity.share()
self._chat_widget.share()
diff --git a/shell/view/Shell.py b/shell/view/Shell.py
index dad78be..e5d49de 100644
--- a/shell/view/Shell.py
+++ b/shell/view/Shell.py
@@ -88,9 +88,12 @@ class Shell(gobject.GObject):
self._frame = Frame(self)
self._frame.show_and_hide(3)
- def _open_terminal_cb(self):
- self.start_activity('org.sugar.Terminal')
- return False
+ def _handle_camera_key(self):
+ if self._current_host:
+ if self._current_host.execute('camera', []):
+ return
+
+ self.start_activity('org.laptop.CameraActivity')
def __global_key_pressed_cb(self, grabber, key):
if key == 'F1':
@@ -114,7 +117,7 @@ class Shell(gobject.GObject):
elif key == '<shft><alt>F10':
self.toggle_chat_visibility()
elif key == '0xDC': # Camera key
- pass
+ self._handle_camera_key()
elif key == '0xE0': # Overlay key
self.toggle_chat_visibility()
elif key == '0x93': # Frame key