Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorUnknown <unknown@unknown.org>2010-11-01 17:24:33 (GMT)
committer Anish Mangal <anish@activitycentral.com>2012-02-01 12:33:29 (GMT)
commit47aa5bc29ba8e9c393668c3c65313095e9c1584a (patch)
tree6ea5f5cf41eedb9a91c5ffcf17fe88f3fa1b3903
parent9b0fb0dd80269f2664feaff460e1d6688390a870 (diff)
accessibility_0008_cp_show-virtualkeyboard-for-accessibility.patch
-rw-r--r--extensions/cpsection/accessibility/model.py13
-rw-r--r--extensions/cpsection/accessibility/view.py32
-rw-r--r--extensions/deviceicon/virtualkeyboard.py10
-rw-r--r--extensions/globalkey/virtualkeyboard.py10
-rw-r--r--src/jarabe/model/accessibility.py8
5 files changed, 65 insertions, 8 deletions
diff --git a/extensions/cpsection/accessibility/model.py b/extensions/cpsection/accessibility/model.py
index 9afec04..2298ec0 100644
--- a/extensions/cpsection/accessibility/model.py
+++ b/extensions/cpsection/accessibility/model.py
@@ -23,7 +23,7 @@ keyboard = accessibility.Keyboard()
screen = accessibility.Screen()
mouse = accessibility.Mouse()
-KEYWORDS = ['mouse_keys', 'sticky_keys', 'bounce_keys', 'contrast', 'white_mouse', 'accel_mouse', 'capital_letters']
+KEYWORDS = ['mouse_keys', 'sticky_keys', 'bounce_keys', 'virtualkeyboard', 'contrast', 'white_mouse', 'accel_mouse', 'capital_letters']
def get_mouse_keys():
return keyboard.get_mouse_keys()
@@ -52,6 +52,15 @@ def set_bounce_keys(activar):
def print_bounce_keys():
print str(get_bounce_keys())
+def get_virtualkeyboard():
+ return keyboard.get_virtualkeyboard()
+
+def set_virtualkeyboard(activar):
+ keyboard.set_virtualkeyboard(activar)
+
+def print_virtualkeyboard():
+ print str(get_virtualkeyboard())
+
def get_contrast():
return screen.get_contrast()
@@ -86,4 +95,4 @@ def set_accel_mouse(valor):
mouse.set_accel_mouse(valor)
def print_accel_mouse():
- print str(get_accel_mouse()) \ No newline at end of file
+ print str(get_accel_mouse())
diff --git a/extensions/cpsection/accessibility/view.py b/extensions/cpsection/accessibility/view.py
index f06f7ae..6208466 100644
--- a/extensions/cpsection/accessibility/view.py
+++ b/extensions/cpsection/accessibility/view.py
@@ -77,6 +77,7 @@ class accessibility(SectionView):
self._view_mouse_keys()
self._view_sticky_keys()
self._view_bounce_keys()
+ self._view_virtualkeyboard()
self._vbox_section.pack_start(self.box_pm_keyboard, expand=False)
self.box_pm_keyboard.show()
@@ -133,6 +134,14 @@ class accessibility(SectionView):
state = widget.get_active()
self._model.set_bounce_keys(state)
+ def _set_virtualkeyboard(self, widget):
+ state = widget.get_active()
+ self._model.set_virtualkeyboard(state)
+ self.restart_alerts.append('zone')
+ self.needs_restart = True
+ self._zone_alert.props.msg = self.restart_msg
+ self._zone_alert.show()
+
def _set_contrast(self, widget):
state = widget.get_active()
self._model.set_contrast(state)
@@ -165,6 +174,9 @@ class accessibility(SectionView):
self._model.set_sticky_keys(self.init_state_sticky_keys)
self._model.set_bounce_keys(self.init_state_bounce_keys)
+ self._model.set_virtualkeyboard(self.init_state_virtualkeyboard)
+ self.btn_virtualkeyboard.set_active(self.init_state_virtualkeyboard)
+
self._model.set_contrast(self.init_state_contrast)
self.btn_contrast.set_active(self.init_state_contrast)
@@ -219,6 +231,24 @@ class accessibility(SectionView):
self.box_pm_keyboard.pack_start(lbl_bounce, True, True, 2)
lbl_bounce.show()
+ def _view_virtualkeyboard(self):
+ self.btn_virtualkeyboard = gtk.CheckButton(_('Virtual keyboard'))
+ self._virtualkeyboard_pm_change_handler = self.btn_virtualkeyboard.connect("toggled", self._set_virtualkeyboard)
+ self.init_state_virtualkeyboard = self._model.get_virtualkeyboard()
+ if self.init_state_virtualkeyboard:
+ self.btn_virtualkeyboard.handler_block(self._virtualkeyboard_pm_change_handler)
+ self.btn_virtualkeyboard.set_active(True)
+ self.btn_virtualkeyboard.handler_unblock(self._virtualkeyboard_pm_change_handler)
+ else:
+ self.btn_virtualkeyboard.set_active(False)
+ self.box_pm_keyboard.pack_start(self.btn_virtualkeyboard, True, True, 2)
+ self.btn_virtualkeyboard.show()
+
+ lbl_virtualkeyboard = gtk.Label(_('Show virtual keyboard on frame.'))
+ lbl_virtualkeyboard.set_alignment(0, 0)
+ self.box_pm_keyboard.pack_start(lbl_virtualkeyboard, True, True, 2)
+ lbl_virtualkeyboard.show()
+
def _view_contrast(self):
self.btn_contrast = gtk.CheckButton(_('Contrast'))
self._contrast_pm_change_handler = self.btn_contrast.connect("toggled", self._set_contrast)
@@ -298,4 +328,4 @@ class accessibility(SectionView):
desc_accel_mouse.show()
def setup(self):
- pass \ No newline at end of file
+ pass
diff --git a/extensions/deviceicon/virtualkeyboard.py b/extensions/deviceicon/virtualkeyboard.py
index 955f79b..fbd0b35 100644
--- a/extensions/deviceicon/virtualkeyboard.py
+++ b/extensions/deviceicon/virtualkeyboard.py
@@ -13,6 +13,7 @@ from sugar.graphics import style
from jarabe.frame.frameinvoker import FrameWidgetInvoker
import jarabe.view.virtualkeyboard
+from jarabe.model import accessibility
class DeviceView(TrayIcon):
@@ -66,7 +67,10 @@ class VirtualkeyboardPalette(Palette):
except:
pass
-
def setup(tray):
- tray.add_device(DeviceView())
-
+ try:
+ keyboard = accessibility.Keyboard()
+ if keyboard.get_virtualkeyboard():
+ tray.add_device(DeviceView())
+ except:
+ logging.error('show virtual keyboard device icon')
diff --git a/extensions/globalkey/virtualkeyboard.py b/extensions/globalkey/virtualkeyboard.py
index bba0877..8cf4b0b 100644
--- a/extensions/globalkey/virtualkeyboard.py
+++ b/extensions/globalkey/virtualkeyboard.py
@@ -1,9 +1,15 @@
import logging
import jarabe.view.virtualkeyboard
+from jarabe.model import accessibility
BOUND_KEYS = ['<alt>k']
def handle_key_press(key):
- logging.debug('load virtual keyboard')
- jarabe.view.virtualkeyboard.Teclado()
+ try:
+ keyboard = accessibility.Keyboard()
+ if keyboard.get_virtualkeyboard():
+ logging.debug('load virtual keyboard')
+ jarabe.view.virtualkeyboard.Teclado()
+ except:
+ logging.error('show virtual keyboard globalkey')
diff --git a/src/jarabe/model/accessibility.py b/src/jarabe/model/accessibility.py
index 299f8d4..b1b2b8a 100644
--- a/src/jarabe/model/accessibility.py
+++ b/src/jarabe/model/accessibility.py
@@ -50,6 +50,14 @@ class Keyboard:
client.set_bool("/desktop/sugar/accessibility/keyboard/bouncekeys_enable", activar)
self.run_config_keyboard()
+ def get_virtualkeyboard(self):
+ client = gconf.client_get_default()
+ return client.get_bool("/desktop/sugar/accessibility/keyboard/virtualkeyboard_enable")
+
+ def set_virtualkeyboard(self, activar):
+ client = gconf.client_get_default()
+ client.set_bool("/desktop/sugar/accessibility/keyboard/virtualkeyboard_enable", activar)
+
def run_config_keyboard(self):
cmd = ['ax']
if self.get_sticky_keys():