diff options
author | Marco 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) |
commit | 17a1cb7ae4f6b6179235d2332abb0b6a0f81a38e (patch) | |
tree | e53487e9ba35f50783a42ad3d32792dfe944a667 /shell | |
parent | 1ee6b7faf09fbaadb5b662967d12a7980365976a (diff) |
Adapt to the new hardware manager
Diffstat (limited to 'shell')
-rw-r--r-- | shell/Makefile.am | 3 | ||||
-rw-r--r-- | shell/hardwaremanager.py (copied from shell/view/dconmanager.py) | 27 | ||||
-rw-r--r-- | shell/view/Makefile.am | 1 | ||||
-rw-r--r-- | shell/view/Shell.py | 19 | ||||
-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) |