diff options
Diffstat (limited to 'rpms/sugar/0025-accessibility_0002_magnifier_extension.patch.patch')
-rw-r--r-- | rpms/sugar/0025-accessibility_0002_magnifier_extension.patch.patch | 127 |
1 files changed, 127 insertions, 0 deletions
diff --git a/rpms/sugar/0025-accessibility_0002_magnifier_extension.patch.patch b/rpms/sugar/0025-accessibility_0002_magnifier_extension.patch.patch new file mode 100644 index 0000000..9a2a432 --- /dev/null +++ b/rpms/sugar/0025-accessibility_0002_magnifier_extension.patch.patch @@ -0,0 +1,127 @@ +From efd8f0a023902aae41d07bc576908e6b067e67aa Mon Sep 17 00:00:00 2001 +From: Unknown <unknown@unknown.org> +Date: Mon, 1 Nov 2010 17:59:06 +0100 +Subject: [PATCH sugar 25/74] accessibility_0002_magnifier_extension.patch + +--- + extensions/globalkey/Makefile.am | 1 + + extensions/globalkey/magnifier.py | 96 +++++++++++++++++++++++++++++++++++++ + 2 files changed, 97 insertions(+), 0 deletions(-) + create mode 100644 extensions/globalkey/magnifier.py + +diff --git a/extensions/globalkey/Makefile.am b/extensions/globalkey/Makefile.am +index 69afac2..49a8dd7 100644 +--- a/extensions/globalkey/Makefile.am ++++ b/extensions/globalkey/Makefile.am +@@ -2,5 +2,6 @@ sugardir = $(pkgdatadir)/extensions/globalkey + + sugar_PYTHON = \ + __init__.py \ ++ magnifier.py \ + screenshot.py \ + viewsource.py +diff --git a/extensions/globalkey/magnifier.py b/extensions/globalkey/magnifier.py +new file mode 100644 +index 0000000..c25d9e7 +--- /dev/null ++++ b/extensions/globalkey/magnifier.py +@@ -0,0 +1,96 @@ ++# Copyright (C) 2010 Plan Ceibal <comunidad@plan.ceibal.edu.uy> ++ ++import os ++ ++import ConfigParser ++import logging ++import gobject ++ ++from jarabe.view.viewsource import setup_view_source ++from sugar import env ++ ++ ++PATH_VMG_CONFIG = os.environ['HOME'] + '/.magnifier.ini' ++BOUND_KEYS = ['<shift>F13', 'F13', '<control>F13'] ++ ++def handle_key_press(key): ++ logger = logging.getLogger('magnifier') ++ logger.setLevel(logging.DEBUG) ++ logger.debug("Ejecutando magnifier......" + key) ++ if (key=='<shift>F13'): ++ set_ruta_archivo() ++ set_GraphicsTools() ++ if (key=='<control>F13'): ++ set_ruta_archivo() ++ set_InvertColors() ++ _run_cmd_async('launchVmg') ++ ++def get_GraphicsTools(): ++ return leer_config('General', 'GraphicsTools') ++ ++def set_GraphicsTools(): ++ grabar_config_GraphicsTools('General', 'GraphicsTools') ++ ++def grabar_config_GraphicsTools(encabezado, etiqueta): ++ parser = ConfigParser.ConfigParser() ++ parser.read(PATH_VMG_CONFIG) ++ val_old = get_GraphicsTools() ++ if val_old == '1': ++ parser.set(encabezado, etiqueta, '0') ++ arch = open(PATH_VMG_CONFIG, 'w') ++ parser.write(arch) ++ arch.close() ++ else: ++ parser.set(encabezado, etiqueta, '1') ++ arch = open(PATH_VMG_CONFIG, 'w') ++ parser.write(arch) ++ arch.close() ++ ++def get_InvertColors(): ++ return leer_config('General', 'InvertColors') ++ ++def set_InvertColors(): ++ grabar_config_InvertColors('General', 'InvertColors') ++ ++def grabar_config_InvertColors(encabezado, etiqueta): ++ parser = ConfigParser.ConfigParser() ++ parser.read(PATH_VMG_CONFIG) ++ val_old = get_InvertColors() ++ if val_old == '1': ++ parser.set(encabezado, etiqueta, '0') ++ arch = open(PATH_VMG_CONFIG, 'w') ++ parser.write(arch) ++ arch.close() ++ else: ++ parser.set(encabezado, etiqueta, '1') ++ arch = open(PATH_VMG_CONFIG, 'w') ++ parser.write(arch) ++ arch.close() ++ ++def leer_config(encabezado, etiqueta): ++ parser = ConfigParser.ConfigParser() ++ parser.read(PATH_VMG_CONFIG) ++ return parser.get(encabezado, etiqueta) ++ ++def set_ruta_archivo(): ++ try: ++ f = file(PATH_VMG_CONFIG) ++ except: ++ PATH_VMG_CONFIG = "/root/.magnifier.ini" ++ ++def _run_cmd_async(cmd): ++ logger = logging.getLogger('magnifier') ++ logger.setLevel(logging.DEBUG) ++ try: ++ gobject.spawn_async([find_and_absolutize('launchVmg')]) ++ logger.debug("Ejecuto magnifier") ++ except Exception, e: ++ logger.debug("Error ejecutando magnifier" + str(e)) ++ ++def find_and_absolutize(script_name): ++ paths = env.os.environ['PATH'].split(':') ++ for path in paths: ++ looking_path = path + '/' + script_name ++ if env.os.path.isfile(looking_path): ++ return looking_path ++ return None +-- +1.7.6 + |