Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/rpms/sugar/0027-accessibility_0004_cp_accessibility_mouse.patch.patch
diff options
context:
space:
mode:
Diffstat (limited to 'rpms/sugar/0027-accessibility_0004_cp_accessibility_mouse.patch.patch')
-rw-r--r--rpms/sugar/0027-accessibility_0004_cp_accessibility_mouse.patch.patch305
1 files changed, 305 insertions, 0 deletions
diff --git a/rpms/sugar/0027-accessibility_0004_cp_accessibility_mouse.patch.patch b/rpms/sugar/0027-accessibility_0004_cp_accessibility_mouse.patch.patch
new file mode 100644
index 0000000..d8cabbf
--- /dev/null
+++ b/rpms/sugar/0027-accessibility_0004_cp_accessibility_mouse.patch.patch
@@ -0,0 +1,305 @@
+From 9e33a1bc941bdd0f4a9a15be83742d290c112142 Mon Sep 17 00:00:00 2001
+From: Unknown <unknown@unknown.org>
+Date: Mon, 1 Nov 2010 18:22:25 +0100
+Subject: [PATCH sugar 27/74] accessibility_0004_cp_accessibility_mouse.patch
+
+[fixed shell script syntax]
+Signed-off-by: Sascha Silbe <sascha-pgp@silbe.org>
+---
+ bin/sugar.in | 10 +++-
+ data/gtkrc-contrast.em | 1 -
+ data/gtkrc.em | 1 -
+ extensions/cpsection/accessibility/model.py | 23 +++++++-
+ extensions/cpsection/accessibility/view.py | 80 +++++++++++++++++++++++++++
+ src/jarabe/model/accessibility.py | 50 ++++++++++++++++-
+ 6 files changed, 159 insertions(+), 6 deletions(-)
+
+diff --git a/bin/sugar.in b/bin/sugar.in
+index ed24561..90fbf8f 100644
+--- a/bin/sugar.in
++++ b/bin/sugar.in
+@@ -87,7 +87,15 @@ if [ -f ~/.sugar/debug ]; then
+ . ~/.sugar/debug
+ fi
+
+-echo Xcursor.theme: sugar | xrdb -merge
++
++if gconftool-2 --dir-exists=/desktop/sugar/peripherals/mouse ; then
++ CURSOR_THEME="$(gconftool-2 --get /desktop/sugar/peripherals/mouse/cursor_theme)"
++else
++ CURSOR_THEME="sugar"
++fi
++
++
++echo Xcursor.theme: $CURSOR_THEME | xrdb -merge
+ metacity --no-force-fullscreen -d $DISPLAY &
+
+ exec sugar-session
+diff --git a/data/gtkrc-contrast.em b/data/gtkrc-contrast.em
+index dceb103..3ed4717 100644
+--- a/data/gtkrc-contrast.em
++++ b/data/gtkrc-contrast.em
+@@ -6,7 +6,6 @@ else:
+ }@
+ gtk-theme-name = "sugar-@scaling-contrast"
+ gtk-icon-theme-name = "sugar"
+-gtk-cursor-theme-name = "sugar"
+ gtk-toolbar-style = GTK_TOOLBAR_ICONS
+ gtk-icon-sizes = "@icon_sizes"
+ gtk-cursor-blink-timeout = 3
+diff --git a/data/gtkrc.em b/data/gtkrc.em
+index d4e1a7c..4459c42 100644
+--- a/data/gtkrc.em
++++ b/data/gtkrc.em
+@@ -6,7 +6,6 @@ else:
+ }@
+ gtk-theme-name = "sugar-@scaling"
+ gtk-icon-theme-name = "sugar"
+-gtk-cursor-theme-name = "sugar"
+ gtk-toolbar-style = GTK_TOOLBAR_ICONS
+ gtk-icon-sizes = "@icon_sizes"
+ gtk-cursor-blink-timeout = 3
+diff --git a/extensions/cpsection/accessibility/model.py b/extensions/cpsection/accessibility/model.py
+index 8769d24..6e5b154 100644
+--- a/extensions/cpsection/accessibility/model.py
++++ b/extensions/cpsection/accessibility/model.py
+@@ -21,8 +21,9 @@
+
+ keyboard = accessibility.Keyboard()
+ screen = accessibility.Screen()
++mouse = accessibility.Mouse()
+
+-KEYWORDS = ['mouse_keys', 'sticky_keys', 'bounce_keys', 'contrast']
++KEYWORDS = ['mouse_keys', 'sticky_keys', 'bounce_keys', 'contrast', 'white_mouse', 'accel_mouse']
+
+ def get_mouse_keys():
+ return keyboard.get_mouse_keys()
+@@ -58,4 +59,22 @@ def set_contrast(activar):
+ screen.set_contrast(activar)
+
+ def print_contrast():
+- print str(get_contrast())
+\ No newline at end of file
++ print str(get_contrast())
++
++def get_white_mouse():
++ return mouse.get_white_mouse()
++
++def set_white_mouse(activar):
++ mouse.set_white_mouse(activar)
++
++def print_white_mouse():
++ print str(get_white_mouse())
++
++def get_accel_mouse():
++ return mouse.get_accel_mouse()
++
++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
+diff --git a/extensions/cpsection/accessibility/view.py b/extensions/cpsection/accessibility/view.py
+index bae14dc..23de47e 100644
+--- a/extensions/cpsection/accessibility/view.py
++++ b/extensions/cpsection/accessibility/view.py
+@@ -57,6 +57,7 @@ def __init__(self, model, alerts=None):
+
+ self._view_keyboard_options()
+ self._view_screen_options()
++ self._view_mouse_options()
+
+
+ def _view_keyboard_options(self):
+@@ -98,6 +99,26 @@ def _view_screen_options(self):
+
+ self._vbox_section.pack_start(self.box_pm_screen, expand=False)
+ self.box_pm_screen.show()
++
++ def _view_mouse_options(self):
++ separator_pm_mouse = gtk.HSeparator()
++ self._vbox_section.pack_start(separator_pm_mouse, expand=False)
++ separator_pm_mouse.show()
++
++ label_pm_mouse = gtk.Label(_('Mouse'))
++ label_pm_mouse.set_alignment(0, 0)
++ self._vbox_section.pack_start(label_pm_mouse, expand=False)
++ label_pm_mouse.show()
++
++ self.box_pm_mouse = gtk.VBox()
++ self.box_pm_mouse.set_border_width(style.DEFAULT_SPACING * 2)
++ self.box_pm_mouse.set_spacing(style.DEFAULT_SPACING)
++
++ self._view_white_mouse()
++ self._view_acceleration_mouse()
++
++ self._vbox_section.pack_start(self.box_pm_mouse, expand=False)
++ self.box_pm_mouse.show()
+
+ def _set_mouse_keys(self, widget):
+ state = widget.get_active()
+@@ -119,6 +140,17 @@ def _set_contrast(self, widget):
+ self._zone_alert.props.msg = self.restart_msg
+ self._zone_alert.show()
+
++ def _set_white_mouse(self, widget):
++ state = widget.get_active()
++ self._model.set_white_mouse(state)
++ self.restart_alerts.append('zone')
++ self.needs_restart = True
++ self._zone_alert.props.msg = self.restart_msg
++ self._zone_alert.show()
++
++ def cb_digits_scale_accel_mouse(self, adj):
++ self._model.set_accel_mouse(adj.value)
++
+ def undo(self):
+ self._model.set_mouse_keys(self.init_state_mouse_keys)
+ self._model.set_sticky_keys(self.init_state_sticky_keys)
+@@ -126,6 +158,12 @@ def undo(self):
+
+ self._model.set_contrast(self.init_state_contrast)
+ self.btn_contrast.set_active(self.init_state_contrast)
++
++ self._model.set_white_mouse(self.init_state_white_mouse)
++ self.btn_white_mouse.set_active(self.init_state_white_mouse)
++
++ self.adj_accel_mouse.set_value(self.init_state_accel_mouse)
++
+ self.needs_restart = False
+ self._zone_alert.hide()
+
+@@ -186,3 +224,45 @@ def _view_contrast(self):
+ lbl_contrast.set_alignment(0, 0)
+ self.box_pm_screen.pack_start(lbl_contrast, True, True, 2)
+ lbl_contrast.show()
++
++ def _view_white_mouse(self):
++ self.btn_white_mouse = gtk.CheckButton(_('White Mouse'))
++ self._white_mouse_pm_change_handler = self.btn_white_mouse.connect("toggled", self._set_white_mouse)
++ self.init_state_white_mouse = self._model.get_white_mouse()
++ if self.init_state_white_mouse:
++ self.btn_white_mouse.handler_block(self._white_mouse_pm_change_handler)
++ self.btn_white_mouse.set_active(True)
++ self.btn_white_mouse.handler_unblock(self._white_mouse_pm_change_handler)
++ else:
++ self.btn_white_mouse.set_active(False)
++ self.box_pm_mouse.pack_start(self.btn_white_mouse, True, True, 2)
++ self.btn_white_mouse.show()
++
++ lbl_white_mouse = gtk.Label(_('Show the mouse cursor white.'))
++ lbl_white_mouse.set_alignment(0, 0)
++ self.box_pm_mouse.pack_start(lbl_white_mouse, True, True, 2)
++ lbl_white_mouse.show()
++
++ def _view_acceleration_mouse(self):
++ box_accel_mouse = gtk.HBox(False, 0)
++ box_accel_mouse.set_border_width(0)
++ lbl_accel_mouse = gtk.Label(_('Acceleration: '))
++ lbl_accel_mouse.show()
++ box_accel_mouse.pack_start(lbl_accel_mouse, False, False, 0)
++
++ self.init_state_accel_mouse = self._model.get_accel_mouse();
++ self.adj_accel_mouse = gtk.Adjustment(self.init_state_accel_mouse, 0.0, 5.0, 1.0, 1.0, 0.0)
++ self.adj_accel_mouse.connect("value_changed", self.cb_digits_scale_accel_mouse)
++ self.scale_accel_mouse = gtk.HScale(self.adj_accel_mouse)
++ self.scale_accel_mouse.set_digits(0)
++ self.scale_accel_mouse.show()
++
++ box_accel_mouse.pack_start(self.scale_accel_mouse, True, True, 0)
++ box_accel_mouse.show()
++
++ self.box_pm_mouse.pack_start(box_accel_mouse, True, True, 2)
++
++ desc_accel_mouse = gtk.Label(_('Controller acceleration mouse.'))
++ desc_accel_mouse.set_alignment(0, 0)
++ self.box_pm_mouse.pack_start(desc_accel_mouse, True, True, 2)
++ desc_accel_mouse.show()
+\ No newline at end of file
+diff --git a/src/jarabe/model/accessibility.py b/src/jarabe/model/accessibility.py
+index 0324495..c06f5c0 100644
+--- a/src/jarabe/model/accessibility.py
++++ b/src/jarabe/model/accessibility.py
+@@ -17,6 +17,7 @@
+ # You should have received a copy of the GNU General Public License
+ # along with this program. If not, see <http://www.gnu.org/licenses/>.
+
++import gtk
+ import subprocess
+ import gconf
+
+@@ -67,8 +68,10 @@ def run_config_keyboard(self):
+
+ class Screen:
+
+- CONTRAST_THEME="sugar-contrast"
+ DEFAULT_THEME="sugar"
++ DEFAULT_FONT_SIZE=7
++ CONTRAST_THEME="sugar-contrast"
++ CONTRAST_FONT_SIZE=9.5
+
+ def get_contrast(self):
+ client = gconf.client_get_default()
+@@ -79,9 +82,52 @@ def set_contrast(self, activar):
+ client = gconf.client_get_default()
+ if (activar):
+ client.set_string("/desktop/sugar/interface/gtk_theme", self.CONTRAST_THEME)
++ client.set_float('/desktop/sugar/font/default_size', self.CONTRAST_FONT_SIZE)
+ else:
+ client.set_string("/desktop/sugar/interface/gtk_theme", self.DEFAULT_THEME)
++ client.set_float('/desktop/sugar/font/default_size', self.DEFAULT_FONT_SIZE)
++
++class Mouse:
++
++ WHITE_CURSOR_THEME="FlatbedCursors.White.Huge"
++ DEFAULT_CURSOR_THEME="sugar"
++
++ def get_white_mouse(self):
++ client = gconf.client_get_default()
++ value = client.get_string("/desktop/sugar/peripherals/mouse/cursor_theme")
++ return value==self.WHITE_CURSOR_THEME
++
++ def set_white_mouse(self, activar):
++ client = gconf.client_get_default()
++ if (activar):
++ client.set_string("/desktop/sugar/peripherals/mouse/cursor_theme", self.WHITE_CURSOR_THEME)
++ else:
++ client.set_string("/desktop/sugar/peripherals/mouse/cursor_theme", self.DEFAULT_CURSOR_THEME)
++
++ def _set_white_mouse_setting(self):
++ cursor_theme = self.DEFAULT_CURSOR_THEME
++ if (self.get_white_mouse()):
++ cursor_theme = self.WHITE_CURSOR_THEME
++ settings = gtk.settings_get_default()
++ settings.set_property("gtk-cursor-theme-name", "%s" % (cursor_theme))
++
++ def get_accel_mouse(self):
++ client = gconf.client_get_default()
++ value = client.get_float("/desktop/sugar/peripherals/mouse/motion_acceleration")
++ return value
++
++ def set_accel_mouse(self, value):
++ client = gconf.client_get_default()
++ client.set_float("/desktop/sugar/peripherals/mouse/motion_acceleration", value)
++ self.run_config_mouse()
++
++ def _set_accel_mouse_setting(self):
++ cmd = ['xset', 'm' , str(self.get_accel_mouse())]
++ subprocess.call(cmd)
+
++ def run_config_mouse(self):
++ self._set_accel_mouse_setting()
++ self._set_white_mouse_setting()
+
+ class AccessibilityManager:
+ def setup_accessibility(self):
+@@ -90,3 +136,5 @@ def setup_accessibility(self):
+ if is_accessibility:
+ keyboard = Keyboard()
+ keyboard.run_config_keyboard()
++ mouse = Mouse()
++ mouse.run_config_mouse()
+--
+1.7.6
+