diff options
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.patch | 305 |
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 + |