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>2007-01-08 12:09:13 (GMT)
committer Marco Pesenti Gritti <marco@localhost.localdomain>2007-01-08 12:09:13 (GMT)
commit17a1cb7ae4f6b6179235d2332abb0b6a0f81a38e (patch)
treee53487e9ba35f50783a42ad3d32792dfe944a667 /shell
parent1ee6b7faf09fbaadb5b662967d12a7980365976a (diff)
Adapt to the new hardware manager
Diffstat (limited to 'shell')
-rw-r--r--shell/Makefile.am3
-rw-r--r--shell/hardwaremanager.py (copied from shell/view/dconmanager.py)27
-rw-r--r--shell/view/Makefile.am1
-rw-r--r--shell/view/Shell.py19
-rw-r--r--shell/view/hardwaremanager.py (renamed from shell/view/dconmanager.py)27
5 files changed, 47 insertions, 30 deletions
diff --git a/shell/Makefile.am b/shell/Makefile.am
index 38b0443..8b1b2c2 100644
--- a/shell/Makefile.am
+++ b/shell/Makefile.am
@@ -9,6 +9,7 @@ bin_SCRIPTS = \
sugardir = $(pkgdatadir)/shell
sugar_PYTHON = \
- __init__.py
+ __init__.py \
+ hardwaremanager.py
EXTRA_DIST = $(bin_SCRIPTS)
diff --git a/shell/view/dconmanager.py b/shell/hardwaremanager.py
index 48fba73..c305f14 100644
--- a/shell/view/dconmanager.py
+++ b/shell/hardwaremanager.py
@@ -16,21 +16,28 @@
import dbus
-DCON_MANAGER_INTERFACE = 'org.laptop.DCONManager'
-DCON_MANAGER_SERVICE = 'org.laptop.DCONManager'
-DCON_MANAGER_OBJECT_PATH = '/org/laptop/DCONManager'
+HARDWARE_MANAGER_INTERFACE = 'org.laptop.HardwareManager'
+HARDWARE_MANAGER_SERVICE = 'org.laptop.HardwareManager'
+HARDWARE_MANAGER_OBJECT_PATH = '/org/laptop/HardwareManager'
-class DCONManager(object):
+class HardwareManager(object):
COLOR_MODE = 0
- BLACK_AND_WHITE_MODE = 1
+ B_AND_W_MODE = 1
def __init__(self):
bus = dbus.SystemBus()
- proxy = bus.get_object(DCON_MANAGER_SERVICE, DCON_MANAGER_OBJECT_PATH)
- self._service = dbus.Interface(proxy, DCON_MANAGER_INTERFACE)
+ proxy = bus.get_object(HARDWARE_MANAGER_SERVICE,
+ HARDWARE_MANAGER_OBJECT_PATH)
+ self._service = dbus.Interface(proxy, HARDWARE_MANAGER_INTERFACE)
- def set_mode(self, mode):
+ def set_display_mode(self, mode):
self._service.set_mode(mode)
- def set_brightness(self, level):
- self._service.set_backlight_level(level)
+ def set_display_brightness(self, level):
+ self._service.set_display_brightness(level)
+
+ def toggle_keyboard_brightness(self):
+ if self._service.get_keyboard_brightness():
+ self._service.set_keyboard_brightness(False)
+ else
+ self._service.set_keyboard_brightness(True)
diff --git a/shell/view/Makefile.am b/shell/view/Makefile.am
index 0f9573a..d7ab5f5 100644
--- a/shell/view/Makefile.am
+++ b/shell/view/Makefile.am
@@ -11,5 +11,4 @@ sugar_PYTHON = \
clipboardmenu.py \
OverlayWindow.py \
Shell.py \
- dconmanager.py \
stylesheet.py
diff --git a/shell/view/Shell.py b/shell/view/Shell.py
index 03a3bad..24e62a1 100644
--- a/shell/view/Shell.py
+++ b/shell/view/Shell.py
@@ -29,7 +29,7 @@ from view.ActivityHost import ActivityHost
from sugar.activity import ActivityFactory
from sugar.activity import Activity
from view.frame.Frame import Frame
-from view.dconmanager import DCONManager
+from hardwaremanager import HardwareManager
from _sugar import KeyGrabber
from _sugar import AudioManager
import sugar
@@ -45,7 +45,7 @@ class Shell(gobject.GObject):
style.load_stylesheet(view.stylesheet)
- self._dcon_manager = DCONManager()
+ self._hw_manager = HardwareManager()
self._audio_manager = AudioManager()
self._key_grabber = KeyGrabber()
@@ -99,6 +99,7 @@ class Shell(gobject.GObject):
self._key_grabber.grab('0xE0') # Overlay key
self._key_grabber.grab('0x93') # Frame key
self._key_grabber.grab('0x7C') # Power key
+ self._key_grabber.grab('0x86') # Keyboard brightness
self._key_grabber.grab('<alt>Tab')
# For non-OLPC machines
@@ -115,13 +116,13 @@ class Shell(gobject.GObject):
elif key == 'F4':
self.set_zoom_level(sugar.ZOOM_ACTIVITY)
elif key == 'F5':
- self._dcon_manager.set_brightness(0)
+ self._hw_manager.set_display_brightness(0)
elif key == 'F6':
- self._dcon_manager.set_brightness(5)
+ self._hw_manager.set_display_brightness(5)
elif key == 'F7':
- self._dcon_manager.set_brightness(9)
+ self._hw_manager.set_display_brightness(9)
elif key == 'F8':
- self._dcon_manager.set_brightness(15)
+ self._hw_manager.set_display_brightness(15)
elif key == 'F9':
self._audio_manager.set_volume(0)
elif key == 'F10':
@@ -131,9 +132,9 @@ class Shell(gobject.GObject):
elif key == 'F12':
self._audio_manager.set_volume(100)
elif key == '<alt>F5':
- self._dcon_manager.set_mode(DCONManager.COLOR_MODE)
+ self._hw_manager.set_display_mode(HardwareManager.COLOR_MODE)
elif key == '<alt>F8':
- self._dcon_manager.set_mode(DCONManager.BLACK_AND_WHITE_MODE)
+ self._hw_manager.set_display_mode(HardwareManager.B_AND_W_MODE)
elif key == '<shft><alt>F9':
self._frame.notify_key_press()
elif key == '<shft><alt>F10':
@@ -146,6 +147,8 @@ class Shell(gobject.GObject):
self._frame.notify_key_press()
elif key == '0x7C': # Power key
self._shutdown()
+ elif key == '0x86': # Keyboard brightness
+ self._hw_manager.toggle_keyboard_brightness()
elif key == '<alt>Tab':
self.set_zoom_level(sugar.ZOOM_HOME)
box = self._home_window.get_home_box()
diff --git a/shell/view/dconmanager.py b/shell/view/hardwaremanager.py
index 48fba73..47c50bf 100644
--- a/shell/view/dconmanager.py
+++ b/shell/view/hardwaremanager.py
@@ -16,21 +16,28 @@
import dbus
-DCON_MANAGER_INTERFACE = 'org.laptop.DCONManager'
-DCON_MANAGER_SERVICE = 'org.laptop.DCONManager'
-DCON_MANAGER_OBJECT_PATH = '/org/laptop/DCONManager'
+HARDWARE_MANAGER_INTERFACE = 'org.laptop.HardwareManager'
+HARDWARE_MANAGER_SERVICE = 'org.laptop.HardwareManager'
+HARDWARE_MANAGER_OBJECT_PATH = '/org/laptop/HardwareManager'
-class DCONManager(object):
+class HardwareManager(object):
COLOR_MODE = 0
- BLACK_AND_WHITE_MODE = 1
+ B_AND_W_MODE = 1
def __init__(self):
bus = dbus.SystemBus()
- proxy = bus.get_object(DCON_MANAGER_SERVICE, DCON_MANAGER_OBJECT_PATH)
- self._service = dbus.Interface(proxy, DCON_MANAGER_INTERFACE)
+ proxy = bus.get_object(HARDWARE_MANAGER_SERVICE,
+ HARDWARE_MANAGER_OBJECT_PATH)
+ self._service = dbus.Interface(proxy, HARDWARE_MANAGER_INTERFACE)
- def set_mode(self, mode):
+ def set_display_mode(self, mode):
self._service.set_mode(mode)
- def set_brightness(self, level):
- self._service.set_backlight_level(level)
+ def set_display_brightness(self, level):
+ self._service.set_display_brightness(level)
+
+ def toggle_keyboard_brightness(self):
+ if self._service.get_keyboard_brightness():
+ self._service.set_keyboard_brightness(False)
+ else:
+ self._service.set_keyboard_brightness(True)