From 6d08d6336791865a491edb474fb40056d20c769a Mon Sep 17 00:00:00 2001 From: Teunissen Enabling Date: Fri, 26 Apr 2013 21:47:38 +0200 Subject: [PATCH 01/22] fixed xml errors (contributors) from this point on, buildable. --- java/.DS_Store | Bin 0 -> 6148 bytes java/res/layout/activity_prefs.xml | 16 +- java/res/values-es-rUS/strings.xml | 497 +++++++++++++++-------------- java/res/values-es/strings.xml | 497 +++++++++++++++-------------- java/res/values-fr/strings.xml | 497 +++++++++++++++-------------- java/res/values-nl/strings.xml | 497 +++++++++++++++-------------- java/res/values/strings.xml | 89 +++--- 7 files changed, 1060 insertions(+), 1033 deletions(-) create mode 100644 java/.DS_Store diff --git a/java/.DS_Store b/java/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..5008ddfcf53c02e82d7eee2e57c38e5672ef89f6 GIT binary patch literal 6148 zcmeH~Jr2S!425mzP>H1@V-^m;4Wg<&0T*E43hX&L&p$$qDprKhvt+--jT7}7np#A3 zem<@ulZcFPQ@L2!n>{z**++&mCkOWA81W14cNZlEfg7;MkzE(HCqgga^y>{tEnwC%0;vJ&^%eQ zLs35+`xjp>T0 + android:summary="@string/contributor_ma_summary" + android:title="@string/contributor_ma" /> + + + + + + diff --git a/java/res/values-es-rUS/strings.xml b/java/res/values-es-rUS/strings.xml index f770b98..f88572c 100644 --- a/java/res/values-es-rUS/strings.xml +++ b/java/res/values-es-rUS/strings.xml @@ -1,248 +1,253 @@ - + - "Vibrar al pulsar tecla" - "Sonido al pulsar tecla" - "Corregir errores de escritura" - "Habilitar la introducción de corrección de errores" - "Errores de introducción de datos en vista horizontal" - "Permitir la corrección de error de entrada" - "Sugerencias de palabras" - "Corregir automáticamente la palabra anterior" - "Sugerencias de palabras" - "Configuración de sugerencia de palabras" - "Habilitar autocompletar al escribir" - "Autocompletar" - "Aumentar el tamaño del campo de texto" - "Ocultar sugerencias de palabras en la vista horizontal" - "Uso de mayúsculas auto." - "Escribir en mayúscula el principio de la frase" - "Puntuación automática" - "Correcciones rápidas" - "Corrige los errores tipográficos que se cometen con más frecuencia." - "Mostrar sugerencias" - "Muestra las palabras sugeridas mientras se escribe." - "Autocompletar" - "La barra espaciadora y los signos de puntuación insertan automáticamente la palabra resaltada." - "0" - "1" - "2" - "%s : Guardada" - "á" - "é" - "í" - "ó" - "úü" - "§ß" - "ñ" - "ç" - "ýÿ" - "i" - "Mantén pulsada una tecla para ver los caracteres acentuados (ø, ö, etc.)." - "Pulsa la tecla \"Atrás\" ↶ para cerrar el teclado en cualquier momento." - "Acceso a números y símbolos" - Mantén pulsada la palabra situada más a la izquierda para añadirla al diccionario - "Toca esta sugerencia para continuar »" - "Toca aquí para cerrar la sugerencia y comenzar a escribir." - "El teclado se abre cada vez que tocas un campo de texto" - Mantén pulsada una tecla para ver los caracteres acentuados\n(ø, ö, ô, ó, etc.) - "Toca esta tecla para cambiar al teclado de números y símbolos"\".\" - "Toca esta tecla de nuevo para volver a las letras" - "Mantén pulsada esta tecla para cambiar la configuración del teclado como, por ejemplo, la opción de autocompletar"\".\" - "¡Pruébalo!" - "Ir" - "Sig." - "Hecho" - "Enviar" - "?123" - "123" - "ABC" - "ALT" - "Abrir el teclado"\n\n\"Pulsa cualquier campo de texto.\" - "Cerrar el teclado"\n\n\"Pulsa la tecla \"Atrás\".\" - "Mantén pulsada una tecla para acceder a las opciones."\n\n\"Accede a los signos de puntuación y a los acentos.\" - "Configuración del teclado"\n\n"Mantén pulsada la tecla "\"?123\"\".\" - ".com" - ".net" - ".org" - ".gov" - ".edu" - "Teclado Tecla" - Configuración de Tecla Access - Método de entrada - Habilitar entrada de voz - Añade una tecla de acceso rápido a comandos de voz y reconocimiento de voz - Mostrar la tecla de acentos - Agrega una tecla que permite introducir caracteres acentuados y otras variantes - Configuración de entrada alternativa - Conectar al Tecla Shield - Bluetooth no soportado - Bluetooth desactivado - Intenta una conexión con un Tecla Shield cercano - Desconectar temporalmente el Tecla Shield - Selecciona para permitir que otro dispositivo se conecte al Tecla Shield - Modo pantalla completa - Utiliza la pantalla completa como un único pulsador - Activar siempre el altavoz - Activa el altavoz para llamadas de voz, comandos de voz y entrada de voz. - Mostrar teclado de navegación - Muestra un pequeño teclado para navegar cuando no se introduce texto - Tiempo de espera del teclado de navegación - Ajuste el retardo para que el teclado de navegación se oculte automáticamente - Ocultar teclado de navegación - Pulsa para símbolos - Pulsa para letras y números - Configuración de entrada Morse - Ajustar las preferencias y el modo de entrada Morse - Usar entrada Morse - Proporciona un método de entrada Morse que sustituye el teclado estándar - Mostrar guía Morse - Muestra un conjunto de claves/valores Morse arriba del teclado - Método de entrada Morse - Unidad de tiempo Morse - Seleccione su unidad de tiempo Morse - Configura la frecuencia de repetición - Ajustar la frecuencia de repetición de un punto/raya Morse cuando se mantiene presionado un interruptor - Configurar la frecuencia de repetición - Duración de pulsación larga para restablecimiento - Ajusta la duración de la pulsación larga para regresar a la pantalla de inicio - ¿Está seguro que desea restablecer las acciones predeterminadas? - - No - Mas rápido - Mas lento - "Hecho" - Configuración de escaneo - Ajustar el modo y la velocidad de escaneo - Activar auto-escaneo - Escanea el teclado automáticamente - Activar escaneo inverso - Escanea al pulsar el interruptor y selecciona al soltarlo - Velocidad de auto-escaneo - Ajusta la velocidad de escaneo - Configurar acciones de interruptores - Personaliza las acciones asignadas a cada interruptor de entrada - ECU 1 / Adelante - ECU 2 / Reversa - ECU 3 / Izquierda - ECU 4 / Derecha - Interruptor 1 - Interruptor 2 - Acción Tecla de ECU 1 / Adelante - Acción Tecla de ECU 2 / Reversa - Acción Tecla de ECU 3 / Izquierda - Acción Tecla de ECU 4 / Derecha - Acción Tecla de Interruptor 1 - Acción Tecla de Interruptor 2 - Acción Morse de ECU 1 / Adelante - Acción Morse de ECU 2 / Reversa - Acción Morse de ECU 3 / Izquierda - Acción Morse de ECU 4 / Derecha - Acción Morse de Interruptor 1 - Acción Morse de Interruptor 2 - Restablecer las acciones predeterminadas - Asignar valores predeterminados a las acciones de interruptores - Restablecer acciones de interruptores - Configuración avanzada - Conectando al Tecla Shield - No se puede conectar el Tecla Shield - Conexión al Tecla Shield cancelada - No hay ningún Tecla Shield en el radio de alcance - Buscando Tecla Shields. Espere por favor… - Método de entrada Morse habilitado - Método de entrada Morse deshabilitado - Interruptor de pantalla completa activado - Interruptor de pantalla completa desactivado - Por favor seleccione Tecla Access como su método de entrada por defecto antes de ajustar la configuración. - ¡No hay aplicaciones de reconocimiento de voz disponibles! - Voice Search no está instalado! - Entrada de voz de Tecla - Configurando Tecla… - Acerca de Tecla Access - El equipo - Los que hicieron de Tecla Acces una realidad - Equipo básico - Jan Richards - Manager & User Experience - Jorge Silva - Programador Principal - Mauricio Meza - Experiencia de usuario - Eric Wan - Programador Junior - Programadores - Eric Ma - Voluntario - Eric Ma - Voluntario - Eric Ma - Voluntario - Mejoras - Mats Lundalv - Cancelación automática de escaneo - Traductores - - "Ninguno" - "Básico" - "Avanzado" - - - @string/prediction_none - @string/prediction_basic - @string/prediction_full - - - Inmediatamente - Después de 4 segundos - Después de 8 segundos - Después de 15 segundos - Después de 30 segundos - Después de 60 segundos - Nunca - - - Nunca - 1000 ms - 950 ms - 900 ms - 850 ms - 800 ms - 750 ms - 700 ms - 650 ms - 600 ms - 550 ms - 500 ms - - - Ninguno - Escanea siguiente - Escanea anterior - Salir, cancelar - Selecciona elemento destacado - - - Ninguno - Punto (Morse) - Raya (Morse) - Final de caracter Morse - Retroceso (Morse) - Ocultar teclado Morse - - - Modo de triple interruptor - Mode de doble interruptor - Modo de interruptor único - - - 3 segundos - 6 segundos - 9 segundos - 12 segundos - 16 segundos - 20 segundos - 25 segundos - 32 segundos - 40 segundos - - + + "Vibrar al pulsar tecla" + "Sonido al pulsar tecla" + "Corregir errores de escritura" + "Habilitar la introducción de corrección de errores" + "Errores de introducción de datos en vista horizontal" + "Permitir la corrección de error de entrada" + "Sugerencias de palabras" + "Corregir automáticamente la palabra anterior" + "Sugerencias de palabras" + "Configuración de sugerencia de palabras" + "Habilitar autocompletar al escribir" + "Autocompletar" + "Aumentar el tamaño del campo de texto" + "Ocultar sugerencias de palabras en la vista horizontal" + "Uso de mayúsculas auto." + "Escribir en mayúscula el principio de la frase" + "Puntuación automática" + "Correcciones rápidas" + "Corrige los errores tipográficos que se cometen con más frecuencia." + "Mostrar sugerencias" + "Muestra las palabras sugeridas mientras se escribe." + "Autocompletar" + "La barra espaciadora y los signos de puntuación insertan automáticamente la palabra resaltada." + "0" + "1" + "2" + "%s : Guardada" + "á" + "é" + "í" + "ó" + "úü" + "§ß" + "ñ" + "ç" + "ýÿ" + "i" + "Mantén pulsada una tecla para ver los caracteres acentuados (ø, ö, etc.)." + "Pulsa la tecla \"Atrás\" ↶ para cerrar el teclado en cualquier momento." + "Acceso a números y símbolos" + Mantén pulsada la palabra situada más a la izquierda para añadirla al diccionario + "Toca esta sugerencia para continuar »" + "Toca aquí para cerrar la sugerencia y comenzar a escribir." + "El teclado se abre cada vez que tocas un campo de texto" + Mantén pulsada una tecla para ver los caracteres acentuados\n(ø, ö, ô, ó, etc.) + "Toca esta tecla para cambiar al teclado de números y símbolos"\".\" + "Toca esta tecla de nuevo para volver a las letras" + "Mantén pulsada esta tecla para cambiar la configuración del teclado como, por ejemplo, la opción de autocompletar"\".\" + "¡Pruébalo!" + "Ir" + "Sig." + "Hecho" + "Enviar" + "?123" + "123" + "ABC" + "ALT" + "Abrir el teclado"\n\n\"Pulsa cualquier campo de texto.\" + "Cerrar el teclado"\n\n\"Pulsa la tecla \"Atrás\".\" + "Mantén pulsada una tecla para acceder a las opciones."\n\n\"Accede a los signos de puntuación y a los acentos.\" + "Configuración del teclado"\n\n"Mantén pulsada la tecla "\"?123\"\".\" + ".com" + ".net" + ".org" + ".gov" + ".edu" + "Teclado Tecla" + Configuración de Tecla Access + Método de entrada + Habilitar entrada de voz + Añade una tecla de acceso rápido a comandos de voz y reconocimiento de voz + Mostrar la tecla de acentos + Agrega una tecla que permite introducir caracteres acentuados y otras variantes + Configuración de entrada alternativa + Conectar al Tecla Shield + Bluetooth no soportado + Bluetooth desactivado + Intenta una conexión con un Tecla Shield cercano + Desconectar temporalmente el Tecla Shield + Selecciona para permitir que otro dispositivo se conecte al Tecla Shield + Modo pantalla completa + Utiliza la pantalla completa como un único pulsador + Activar siempre el altavoz + Activa el altavoz para llamadas de voz, comandos de voz y entrada de voz. + Mostrar teclado de navegación + Muestra un pequeño teclado para navegar cuando no se introduce texto + Tiempo de espera del teclado de navegación + Ajuste el retardo para que el teclado de navegación se oculte automáticamente + Ocultar teclado de navegación + Pulsa para símbolos + Pulsa para letras y números + Configuración de entrada Morse + Ajustar las preferencias y el modo de entrada Morse + Usar entrada Morse + Proporciona un método de entrada Morse que sustituye el teclado estándar + Mostrar guía Morse + Muestra un conjunto de claves/valores Morse arriba del teclado + Método de entrada Morse + Unidad de tiempo Morse + Seleccione su unidad de tiempo Morse + Configura la frecuencia de repetición + Ajustar la frecuencia de repetición de un punto/raya Morse cuando se mantiene presionado un interruptor + Configurar la frecuencia de repetición + Duración de pulsación larga para restablecimiento + Ajusta la duración de la pulsación larga para regresar a la pantalla de inicio + ¿Está seguro que desea restablecer las acciones predeterminadas? + + No + Mas rápido + Mas lento + "Hecho" + Configuración de escaneo + Ajustar el modo y la velocidad de escaneo + Activar auto-escaneo + Escanea el teclado automáticamente + Activar escaneo inverso + Escanea al pulsar el interruptor y selecciona al soltarlo + Velocidad de auto-escaneo + Ajusta la velocidad de escaneo + Configurar acciones de interruptores + Personaliza las acciones asignadas a cada interruptor de entrada + ECU 1 / Adelante + ECU 2 / Reversa + ECU 3 / Izquierda + ECU 4 / Derecha + Interruptor 1 + Interruptor 2 + Acción Tecla de ECU 1 / Adelante + Acción Tecla de ECU 2 / Reversa + Acción Tecla de ECU 3 / Izquierda + Acción Tecla de ECU 4 / Derecha + Acción Tecla de Interruptor 1 + Acción Tecla de Interruptor 2 + Acción Morse de ECU 1 / Adelante + Acción Morse de ECU 2 / Reversa + Acción Morse de ECU 3 / Izquierda + Acción Morse de ECU 4 / Derecha + Acción Morse de Interruptor 1 + Acción Morse de Interruptor 2 + Restablecer las acciones predeterminadas + Asignar valores predeterminados a las acciones de interruptores + Restablecer acciones de interruptores + Configuración avanzada + Conectando al Tecla Shield + No se puede conectar el Tecla Shield + Conexión al Tecla Shield cancelada + No hay ningún Tecla Shield en el radio de alcance + Buscando Tecla Shields. Espere por favor… + Método de entrada Morse habilitado + Método de entrada Morse deshabilitado + Interruptor de pantalla completa activado + Interruptor de pantalla completa desactivado + Por favor seleccione Tecla Access como su método de entrada por defecto antes de ajustar la configuración. + ¡No hay aplicaciones de reconocimiento de voz disponibles! + Voice Search no está instalado! + Entrada de voz de Tecla + Configurando Tecla… + Acerca de Tecla Access + El equipo + Los que hicieron de Tecla Acces una realidad + Equipo básico + Jan Richards + Manager & User Experience + Jorge Silva + Programador Principal + Mauricio Meza + Experiencia de usuario + Eric Wan + Programador Junior + Programadores + Eric Ma + Voluntario + Elyas Bhy + Voluntario + Rishab Garg + Voluntario + Jeroen Teunissen + Teunissen Enabling + Mejoras + Mats Lundalv + Cancelación automática de escaneo + Traductores + + + "Ninguno" + "Básico" + "Avanzado" + + + @string/prediction_none + @string/prediction_basic + @string/prediction_full + + + Inmediatamente + Después de 4 segundos + Después de 8 segundos + Después de 15 segundos + Después de 30 segundos + Después de 60 segundos + Nunca + + + Nunca + 1000 ms + 950 ms + 900 ms + 850 ms + 800 ms + 750 ms + 700 ms + 650 ms + 600 ms + 550 ms + 500 ms + + + Ninguno + Escanea siguiente + Escanea anterior + Salir, cancelar + Selecciona elemento destacado + + + Ninguno + Punto (Morse) + Raya (Morse) + Final de caracter Morse + Retroceso (Morse) + Ocultar teclado Morse + + + Modo de triple interruptor + Mode de doble interruptor + Modo de interruptor único + + + 3 segundos + 6 segundos + 9 segundos + 12 segundos + 16 segundos + 20 segundos + 25 segundos + 32 segundos + 40 segundos + + + \ No newline at end of file diff --git a/java/res/values-es/strings.xml b/java/res/values-es/strings.xml index f770b98..f88572c 100644 --- a/java/res/values-es/strings.xml +++ b/java/res/values-es/strings.xml @@ -1,248 +1,253 @@ - + - "Vibrar al pulsar tecla" - "Sonido al pulsar tecla" - "Corregir errores de escritura" - "Habilitar la introducción de corrección de errores" - "Errores de introducción de datos en vista horizontal" - "Permitir la corrección de error de entrada" - "Sugerencias de palabras" - "Corregir automáticamente la palabra anterior" - "Sugerencias de palabras" - "Configuración de sugerencia de palabras" - "Habilitar autocompletar al escribir" - "Autocompletar" - "Aumentar el tamaño del campo de texto" - "Ocultar sugerencias de palabras en la vista horizontal" - "Uso de mayúsculas auto." - "Escribir en mayúscula el principio de la frase" - "Puntuación automática" - "Correcciones rápidas" - "Corrige los errores tipográficos que se cometen con más frecuencia." - "Mostrar sugerencias" - "Muestra las palabras sugeridas mientras se escribe." - "Autocompletar" - "La barra espaciadora y los signos de puntuación insertan automáticamente la palabra resaltada." - "0" - "1" - "2" - "%s : Guardada" - "á" - "é" - "í" - "ó" - "úü" - "§ß" - "ñ" - "ç" - "ýÿ" - "i" - "Mantén pulsada una tecla para ver los caracteres acentuados (ø, ö, etc.)." - "Pulsa la tecla \"Atrás\" ↶ para cerrar el teclado en cualquier momento." - "Acceso a números y símbolos" - Mantén pulsada la palabra situada más a la izquierda para añadirla al diccionario - "Toca esta sugerencia para continuar »" - "Toca aquí para cerrar la sugerencia y comenzar a escribir." - "El teclado se abre cada vez que tocas un campo de texto" - Mantén pulsada una tecla para ver los caracteres acentuados\n(ø, ö, ô, ó, etc.) - "Toca esta tecla para cambiar al teclado de números y símbolos"\".\" - "Toca esta tecla de nuevo para volver a las letras" - "Mantén pulsada esta tecla para cambiar la configuración del teclado como, por ejemplo, la opción de autocompletar"\".\" - "¡Pruébalo!" - "Ir" - "Sig." - "Hecho" - "Enviar" - "?123" - "123" - "ABC" - "ALT" - "Abrir el teclado"\n\n\"Pulsa cualquier campo de texto.\" - "Cerrar el teclado"\n\n\"Pulsa la tecla \"Atrás\".\" - "Mantén pulsada una tecla para acceder a las opciones."\n\n\"Accede a los signos de puntuación y a los acentos.\" - "Configuración del teclado"\n\n"Mantén pulsada la tecla "\"?123\"\".\" - ".com" - ".net" - ".org" - ".gov" - ".edu" - "Teclado Tecla" - Configuración de Tecla Access - Método de entrada - Habilitar entrada de voz - Añade una tecla de acceso rápido a comandos de voz y reconocimiento de voz - Mostrar la tecla de acentos - Agrega una tecla que permite introducir caracteres acentuados y otras variantes - Configuración de entrada alternativa - Conectar al Tecla Shield - Bluetooth no soportado - Bluetooth desactivado - Intenta una conexión con un Tecla Shield cercano - Desconectar temporalmente el Tecla Shield - Selecciona para permitir que otro dispositivo se conecte al Tecla Shield - Modo pantalla completa - Utiliza la pantalla completa como un único pulsador - Activar siempre el altavoz - Activa el altavoz para llamadas de voz, comandos de voz y entrada de voz. - Mostrar teclado de navegación - Muestra un pequeño teclado para navegar cuando no se introduce texto - Tiempo de espera del teclado de navegación - Ajuste el retardo para que el teclado de navegación se oculte automáticamente - Ocultar teclado de navegación - Pulsa para símbolos - Pulsa para letras y números - Configuración de entrada Morse - Ajustar las preferencias y el modo de entrada Morse - Usar entrada Morse - Proporciona un método de entrada Morse que sustituye el teclado estándar - Mostrar guía Morse - Muestra un conjunto de claves/valores Morse arriba del teclado - Método de entrada Morse - Unidad de tiempo Morse - Seleccione su unidad de tiempo Morse - Configura la frecuencia de repetición - Ajustar la frecuencia de repetición de un punto/raya Morse cuando se mantiene presionado un interruptor - Configurar la frecuencia de repetición - Duración de pulsación larga para restablecimiento - Ajusta la duración de la pulsación larga para regresar a la pantalla de inicio - ¿Está seguro que desea restablecer las acciones predeterminadas? - - No - Mas rápido - Mas lento - "Hecho" - Configuración de escaneo - Ajustar el modo y la velocidad de escaneo - Activar auto-escaneo - Escanea el teclado automáticamente - Activar escaneo inverso - Escanea al pulsar el interruptor y selecciona al soltarlo - Velocidad de auto-escaneo - Ajusta la velocidad de escaneo - Configurar acciones de interruptores - Personaliza las acciones asignadas a cada interruptor de entrada - ECU 1 / Adelante - ECU 2 / Reversa - ECU 3 / Izquierda - ECU 4 / Derecha - Interruptor 1 - Interruptor 2 - Acción Tecla de ECU 1 / Adelante - Acción Tecla de ECU 2 / Reversa - Acción Tecla de ECU 3 / Izquierda - Acción Tecla de ECU 4 / Derecha - Acción Tecla de Interruptor 1 - Acción Tecla de Interruptor 2 - Acción Morse de ECU 1 / Adelante - Acción Morse de ECU 2 / Reversa - Acción Morse de ECU 3 / Izquierda - Acción Morse de ECU 4 / Derecha - Acción Morse de Interruptor 1 - Acción Morse de Interruptor 2 - Restablecer las acciones predeterminadas - Asignar valores predeterminados a las acciones de interruptores - Restablecer acciones de interruptores - Configuración avanzada - Conectando al Tecla Shield - No se puede conectar el Tecla Shield - Conexión al Tecla Shield cancelada - No hay ningún Tecla Shield en el radio de alcance - Buscando Tecla Shields. Espere por favor… - Método de entrada Morse habilitado - Método de entrada Morse deshabilitado - Interruptor de pantalla completa activado - Interruptor de pantalla completa desactivado - Por favor seleccione Tecla Access como su método de entrada por defecto antes de ajustar la configuración. - ¡No hay aplicaciones de reconocimiento de voz disponibles! - Voice Search no está instalado! - Entrada de voz de Tecla - Configurando Tecla… - Acerca de Tecla Access - El equipo - Los que hicieron de Tecla Acces una realidad - Equipo básico - Jan Richards - Manager & User Experience - Jorge Silva - Programador Principal - Mauricio Meza - Experiencia de usuario - Eric Wan - Programador Junior - Programadores - Eric Ma - Voluntario - Eric Ma - Voluntario - Eric Ma - Voluntario - Mejoras - Mats Lundalv - Cancelación automática de escaneo - Traductores - - "Ninguno" - "Básico" - "Avanzado" - - - @string/prediction_none - @string/prediction_basic - @string/prediction_full - - - Inmediatamente - Después de 4 segundos - Después de 8 segundos - Después de 15 segundos - Después de 30 segundos - Después de 60 segundos - Nunca - - - Nunca - 1000 ms - 950 ms - 900 ms - 850 ms - 800 ms - 750 ms - 700 ms - 650 ms - 600 ms - 550 ms - 500 ms - - - Ninguno - Escanea siguiente - Escanea anterior - Salir, cancelar - Selecciona elemento destacado - - - Ninguno - Punto (Morse) - Raya (Morse) - Final de caracter Morse - Retroceso (Morse) - Ocultar teclado Morse - - - Modo de triple interruptor - Mode de doble interruptor - Modo de interruptor único - - - 3 segundos - 6 segundos - 9 segundos - 12 segundos - 16 segundos - 20 segundos - 25 segundos - 32 segundos - 40 segundos - - + + "Vibrar al pulsar tecla" + "Sonido al pulsar tecla" + "Corregir errores de escritura" + "Habilitar la introducción de corrección de errores" + "Errores de introducción de datos en vista horizontal" + "Permitir la corrección de error de entrada" + "Sugerencias de palabras" + "Corregir automáticamente la palabra anterior" + "Sugerencias de palabras" + "Configuración de sugerencia de palabras" + "Habilitar autocompletar al escribir" + "Autocompletar" + "Aumentar el tamaño del campo de texto" + "Ocultar sugerencias de palabras en la vista horizontal" + "Uso de mayúsculas auto." + "Escribir en mayúscula el principio de la frase" + "Puntuación automática" + "Correcciones rápidas" + "Corrige los errores tipográficos que se cometen con más frecuencia." + "Mostrar sugerencias" + "Muestra las palabras sugeridas mientras se escribe." + "Autocompletar" + "La barra espaciadora y los signos de puntuación insertan automáticamente la palabra resaltada." + "0" + "1" + "2" + "%s : Guardada" + "á" + "é" + "í" + "ó" + "úü" + "§ß" + "ñ" + "ç" + "ýÿ" + "i" + "Mantén pulsada una tecla para ver los caracteres acentuados (ø, ö, etc.)." + "Pulsa la tecla \"Atrás\" ↶ para cerrar el teclado en cualquier momento." + "Acceso a números y símbolos" + Mantén pulsada la palabra situada más a la izquierda para añadirla al diccionario + "Toca esta sugerencia para continuar »" + "Toca aquí para cerrar la sugerencia y comenzar a escribir." + "El teclado se abre cada vez que tocas un campo de texto" + Mantén pulsada una tecla para ver los caracteres acentuados\n(ø, ö, ô, ó, etc.) + "Toca esta tecla para cambiar al teclado de números y símbolos"\".\" + "Toca esta tecla de nuevo para volver a las letras" + "Mantén pulsada esta tecla para cambiar la configuración del teclado como, por ejemplo, la opción de autocompletar"\".\" + "¡Pruébalo!" + "Ir" + "Sig." + "Hecho" + "Enviar" + "?123" + "123" + "ABC" + "ALT" + "Abrir el teclado"\n\n\"Pulsa cualquier campo de texto.\" + "Cerrar el teclado"\n\n\"Pulsa la tecla \"Atrás\".\" + "Mantén pulsada una tecla para acceder a las opciones."\n\n\"Accede a los signos de puntuación y a los acentos.\" + "Configuración del teclado"\n\n"Mantén pulsada la tecla "\"?123\"\".\" + ".com" + ".net" + ".org" + ".gov" + ".edu" + "Teclado Tecla" + Configuración de Tecla Access + Método de entrada + Habilitar entrada de voz + Añade una tecla de acceso rápido a comandos de voz y reconocimiento de voz + Mostrar la tecla de acentos + Agrega una tecla que permite introducir caracteres acentuados y otras variantes + Configuración de entrada alternativa + Conectar al Tecla Shield + Bluetooth no soportado + Bluetooth desactivado + Intenta una conexión con un Tecla Shield cercano + Desconectar temporalmente el Tecla Shield + Selecciona para permitir que otro dispositivo se conecte al Tecla Shield + Modo pantalla completa + Utiliza la pantalla completa como un único pulsador + Activar siempre el altavoz + Activa el altavoz para llamadas de voz, comandos de voz y entrada de voz. + Mostrar teclado de navegación + Muestra un pequeño teclado para navegar cuando no se introduce texto + Tiempo de espera del teclado de navegación + Ajuste el retardo para que el teclado de navegación se oculte automáticamente + Ocultar teclado de navegación + Pulsa para símbolos + Pulsa para letras y números + Configuración de entrada Morse + Ajustar las preferencias y el modo de entrada Morse + Usar entrada Morse + Proporciona un método de entrada Morse que sustituye el teclado estándar + Mostrar guía Morse + Muestra un conjunto de claves/valores Morse arriba del teclado + Método de entrada Morse + Unidad de tiempo Morse + Seleccione su unidad de tiempo Morse + Configura la frecuencia de repetición + Ajustar la frecuencia de repetición de un punto/raya Morse cuando se mantiene presionado un interruptor + Configurar la frecuencia de repetición + Duración de pulsación larga para restablecimiento + Ajusta la duración de la pulsación larga para regresar a la pantalla de inicio + ¿Está seguro que desea restablecer las acciones predeterminadas? + + No + Mas rápido + Mas lento + "Hecho" + Configuración de escaneo + Ajustar el modo y la velocidad de escaneo + Activar auto-escaneo + Escanea el teclado automáticamente + Activar escaneo inverso + Escanea al pulsar el interruptor y selecciona al soltarlo + Velocidad de auto-escaneo + Ajusta la velocidad de escaneo + Configurar acciones de interruptores + Personaliza las acciones asignadas a cada interruptor de entrada + ECU 1 / Adelante + ECU 2 / Reversa + ECU 3 / Izquierda + ECU 4 / Derecha + Interruptor 1 + Interruptor 2 + Acción Tecla de ECU 1 / Adelante + Acción Tecla de ECU 2 / Reversa + Acción Tecla de ECU 3 / Izquierda + Acción Tecla de ECU 4 / Derecha + Acción Tecla de Interruptor 1 + Acción Tecla de Interruptor 2 + Acción Morse de ECU 1 / Adelante + Acción Morse de ECU 2 / Reversa + Acción Morse de ECU 3 / Izquierda + Acción Morse de ECU 4 / Derecha + Acción Morse de Interruptor 1 + Acción Morse de Interruptor 2 + Restablecer las acciones predeterminadas + Asignar valores predeterminados a las acciones de interruptores + Restablecer acciones de interruptores + Configuración avanzada + Conectando al Tecla Shield + No se puede conectar el Tecla Shield + Conexión al Tecla Shield cancelada + No hay ningún Tecla Shield en el radio de alcance + Buscando Tecla Shields. Espere por favor… + Método de entrada Morse habilitado + Método de entrada Morse deshabilitado + Interruptor de pantalla completa activado + Interruptor de pantalla completa desactivado + Por favor seleccione Tecla Access como su método de entrada por defecto antes de ajustar la configuración. + ¡No hay aplicaciones de reconocimiento de voz disponibles! + Voice Search no está instalado! + Entrada de voz de Tecla + Configurando Tecla… + Acerca de Tecla Access + El equipo + Los que hicieron de Tecla Acces una realidad + Equipo básico + Jan Richards + Manager & User Experience + Jorge Silva + Programador Principal + Mauricio Meza + Experiencia de usuario + Eric Wan + Programador Junior + Programadores + Eric Ma + Voluntario + Elyas Bhy + Voluntario + Rishab Garg + Voluntario + Jeroen Teunissen + Teunissen Enabling + Mejoras + Mats Lundalv + Cancelación automática de escaneo + Traductores + + + "Ninguno" + "Básico" + "Avanzado" + + + @string/prediction_none + @string/prediction_basic + @string/prediction_full + + + Inmediatamente + Después de 4 segundos + Después de 8 segundos + Después de 15 segundos + Después de 30 segundos + Después de 60 segundos + Nunca + + + Nunca + 1000 ms + 950 ms + 900 ms + 850 ms + 800 ms + 750 ms + 700 ms + 650 ms + 600 ms + 550 ms + 500 ms + + + Ninguno + Escanea siguiente + Escanea anterior + Salir, cancelar + Selecciona elemento destacado + + + Ninguno + Punto (Morse) + Raya (Morse) + Final de caracter Morse + Retroceso (Morse) + Ocultar teclado Morse + + + Modo de triple interruptor + Mode de doble interruptor + Modo de interruptor único + + + 3 segundos + 6 segundos + 9 segundos + 12 segundos + 16 segundos + 20 segundos + 25 segundos + 32 segundos + 40 segundos + + + \ No newline at end of file diff --git a/java/res/values-fr/strings.xml b/java/res/values-fr/strings.xml index 1d71bba..818cb89 100644 --- a/java/res/values-fr/strings.xml +++ b/java/res/values-fr/strings.xml @@ -1,248 +1,253 @@ - + - Vibrer à chaque touche - Son à chaque touche - Corriger les fautes de frappe - "Activer la correction des erreurs de saisie" - Fautes de frappe en mode paysage - "Activer la correction des erreurs de saisie" - Saisie prédictive - Corriger automatiquement le mot précédent - Suggestion de mots - "Paramètres de la saisie prédictive" - Activer la saisie semi-automatique - Saisie semi-automatique - Agrandir le champ de texte - Masquer la saisie prédictive en mode paysage - Majuscules automatiques - Mettre en majuscule la première lettre de chaque phrase - Ponctuation automatique - Corrections rapides - Corrige les fautes de frappe courantes - Afficher les suggestions - Afficher les suggestions de termes lors de la saisie - Saisie semi-automatique - La barre d\'espace et la ponctuation insèrent automatiquement le mot surligné - 0 - 1 - 2 - %s : Enregistré - àâæ - èéêë - îï - ôœ - ùûü - §ß - "ñ" - ç - "ýÿ" - i - Maintenir une touche enfoncée pour afficher les accents (à, é, etc.) - Appuyez sur la touche Retour ↶ pour fermer le clavier à tout moment - Accéder aux chiffres et aux symboles - Appuyer et maintenir le doigt sur le mot le plus à gauche pour l\'ajouter au dictionnaire - Touchez ce conseil pour continuer - Touchez ici pour fermer ce conseil et commencer à saisir votre texte ! - Le clavier s\'affiche à chaque fois que vous touchez une zone de texte - Maintenez & une touche enfoncée pour afficher les accents\n(ø, ö, ô, ó, etc.)" - Appuyez sur cette touche pour basculer vers les chiffres et les symboles - Retourner aux lettres en appuyant de nouveau sur cette touche - Maintenez cette touche enfoncée afin de modifier les paramètres du clavier, tels que la saisie semi-automatique - Essayez ! - Go - Suivant - Terminé - Envoyer - \?123 - 123 - ABC - ALT - Ouvrir le clavier\n\nAppuyez sur un champ de texte. - Fermer le clavier\n\nAppuyez sur la touche Retour. - Appuyer sur une touche de manière prolongée pour accéder aux options\n\nAccédez à la ponctuation et aux accents. - Paramètres du clavier\n\nAppuyez et maintenez la touche\?123\. - ".com" - ".net" - ".org" - ".gov" - ".edu" - Tecla Access - Paramètres de Tecla Access - Méthode d\'entrée - Activer la reconnaissance vocale - Ajoute une touche pour un accès rapide aux commandes vocales et à la reconnaissance vocale - Montrer les touches des accents - Ajoute une touche rémanente qui active les caractères accentués et les caractères spéciaux - Paramètres des entrées alternatives - Se connecter au Tecla Shield - Bluetooth n\'est pas pris en charge - Bluetooth est désactivé - Tente une connexion à un Tecla Shield à proximité - Déconnecter temporairement le Tecla Shield - Cocher pour permettre à un autre appareil de se connecter au Tecla Shield - Interrupteur en mode plein écran - Utiliser l\'écran entier comme un seul interrupteur - Toujours utiliser le téléphone en mode haut-parleur - Pour les appels vocaux, les commandes vocales et les entrées vocales, utiliser le téléphone en mode haut-parleur. - Montrer le clavier de navigation - Montre un petit clavier de navigation quand aucun texte n\'est introduit - Temps avant disparition du clavier de Navigation - Ajuste le délai avant que le clavier de navigation ne se masque automatiquement - Masquer le clavier de navigation - Enfoncer pour afficher les symboles - Appuyer pour saisir des lettres et des chiffres - Paramètres d\'entrée de morse - Régler les préférences du mode d\'entrée Morse - Activer le mode d\'entrée Morse - Fournit un mode d\'entrée de morse qui remplace le clavier standard - Voir le guide du mode d\'entrée Morse - Affiche un ensemble de clés/valeurs Morse au-dessus du clavier - Mode d\'entrée Morse - Unité de temps Morse - Sélectionnez votre unité de temps Morse - Configurer la fréquence de répétition - Ajuster la fréquence de répétition d\'un dit/dah lorsqu\'un commutateur est enfoncé - Configurer la fréquence de répétition - Délai de réinitialisation avec pression longue - Ajuster le délai de la pression longue avant de retourner à l\'écran d\'accueil - Êtes-vous sûr de vouloir réinitialiser les actions par défaut ? - Oui - Non - Plus rapide - Plus lent - Terminé - Paramètres de numérisation - Régler la vitesse ainsi que le mode de balayage - Activer le self-scanning - Scanne le clavier automatiquement - Activer le scan inverse - Scanner lorsque l\'interrupteur est pressé et sélectionner quand il est relâché - Vitesse de scan - Ajuste la vitesse de scan - Configurer les actions des commutateurs - Personnaliser les actions assignées à chaque commutateur - ECU 1 / Avant - ECU 2 / Inverse - ECU 3 / Gauche - ECU 4 / Droite - Commutateur 1 - Commutateur 2 - ECU 1 / Action de Tecla en avant - ECU 2 / Action de Tecla en inverse - ECU 3 / Action de Tecla à gauche - ECU 4 / Action de Tecla à droite - Action Tecla pour Commutateur 1 - Action Tecla pour Commutateur 2 - ECU 1 / Action du morse en avant - ECU 2 / Action du morse en inverse - ECU 3 / Action du morse à gauche - ECU 4 / Action du morse à droite - Action Morse pour Commutateur 1 - Action Morse pour Commutateur 2 - Rétablir les actions par défaut - Réinitialisation des actions des commutateurs aux valeurs par défaut - Réinitialisation des actions des commutateurs - Paramètres d\'entrées avancés - Connexion au Tecla Shield - Impossible de se connecter au Tecla Shield - Connexion au Tecla Shield annulé - Pas de Tecla Shield à portée - Recherche de Tecla Shields. Veuillez patienter… - Méthode d\'entrée Morse activé - Méthode d\'entrée Morse désactivé - Interrupteur en mode plein écran activé - Interrupteur en mode plein écran désactivé - Sélectionnez Tecla Access comme votre mode d\'entrée par défaut avant de régler les paramètres. - Aucune application de reconnaissance vocale disponible ! - Voice Search n\'est pas installé! - Entrée vocale Tecla - Configuration de Tecla… - À propos de Tecla Access - L\'équipe - En savoir plus à propos des créateurs de Tecla - L\'équipe de base - Jan Richards - Manager & User Experience - Jorge Silva - Developpeur sénior - Mauricio Meza - L\'expérience utilisateur - Eric Wan - Développeur junior - Programmeurs - Eric Ma - Bénévoles - Eric Ma - Bénévoles - Eric Ma - Bénévoles - Améliorations - Mats Lundalv - Auto-annuler le balayage - Traducteurs - - Aucun - Basique - Avancé - - - @string/prediction_none - @string/prediction_basic - @string/prediction_full - - - Immédiatement - Après 4 secondes - Après 8 secondes - Après 15 secondes - Après 30 secondes - Après 60 secondes - Jamais - - - Jamais - 1000 ms - 950 ms - 900 ms - 850 ms - 800 ms - 750 ms - 700 ms - 650 ms - 600 ms - 550 ms - 500 ms - - - Aucun - Step-scan suivant - Step-scan précédent - Annuler - Sélectionnez le surligné - - - Aucun - Dit Morse - Dah Morse - Charactère de fin Morse - Retour arrière Morse - Cacher la vue de l\'IME Morse - - - Mode triple-touche - Mode double-touche - Mode touche unique - - - 3 secondes - 6 secondes - 9 secondes - 12 secondes - 16 secondes - 20 secondes - 25 secondes - 32 secondes - 40 secondes - - + + Vibrer à chaque touche + Son à chaque touche + Corriger les fautes de frappe + "Activer la correction des erreurs de saisie" + Fautes de frappe en mode paysage + "Activer la correction des erreurs de saisie" + Saisie prédictive + Corriger automatiquement le mot précédent + Suggestion de mots + "Paramètres de la saisie prédictive" + Activer la saisie semi-automatique + Saisie semi-automatique + Agrandir le champ de texte + Masquer la saisie prédictive en mode paysage + Majuscules automatiques + Mettre en majuscule la première lettre de chaque phrase + Ponctuation automatique + Corrections rapides + Corrige les fautes de frappe courantes + Afficher les suggestions + Afficher les suggestions de termes lors de la saisie + Saisie semi-automatique + La barre d\'espace et la ponctuation insèrent automatiquement le mot surligné + 0 + 1 + 2 + %s : Enregistré + àâæ + èéêë + îï + ôœ + ùûü + §ß + "ñ" + ç + "ýÿ" + i + Maintenir une touche enfoncée pour afficher les accents (à, é, etc.) + Appuyez sur la touche Retour ↶ pour fermer le clavier à tout moment + Accéder aux chiffres et aux symboles + Appuyer et maintenir le doigt sur le mot le plus à gauche pour l\'ajouter au dictionnaire + Touchez ce conseil pour continuer + Touchez ici pour fermer ce conseil et commencer à saisir votre texte ! + Le clavier s\'affiche à chaque fois que vous touchez une zone de texte + Maintenez & une touche enfoncée pour afficher les accents\n(ø, ö, ô, ó, etc.)" + Appuyez sur cette touche pour basculer vers les chiffres et les symboles + Retourner aux lettres en appuyant de nouveau sur cette touche + Maintenez cette touche enfoncée afin de modifier les paramètres du clavier, tels que la saisie semi-automatique + Essayez ! + Go + Suivant + Terminé + Envoyer + \?123 + 123 + ABC + ALT + Ouvrir le clavier\n\nAppuyez sur un champ de texte. + Fermer le clavier\n\nAppuyez sur la touche Retour. + Appuyer sur une touche de manière prolongée pour accéder aux options\n\nAccédez à la ponctuation et aux accents. + Paramètres du clavier\n\nAppuyez et maintenez la touche\?123\. + ".com" + ".net" + ".org" + ".gov" + ".edu" + Tecla Access + Paramètres de Tecla Access + Méthode d\'entrée + Activer la reconnaissance vocale + Ajoute une touche pour un accès rapide aux commandes vocales et à la reconnaissance vocale + Montrer les touches des accents + Ajoute une touche rémanente qui active les caractères accentués et les caractères spéciaux + Paramètres des entrées alternatives + Se connecter au Tecla Shield + Bluetooth n\'est pas pris en charge + Bluetooth est désactivé + Tente une connexion à un Tecla Shield à proximité + Déconnecter temporairement le Tecla Shield + Cocher pour permettre à un autre appareil de se connecter au Tecla Shield + Interrupteur en mode plein écran + Utiliser l\'écran entier comme un seul interrupteur + Toujours utiliser le téléphone en mode haut-parleur + Pour les appels vocaux, les commandes vocales et les entrées vocales, utiliser le téléphone en mode haut-parleur. + Montrer le clavier de navigation + Montre un petit clavier de navigation quand aucun texte n\'est introduit + Temps avant disparition du clavier de Navigation + Ajuste le délai avant que le clavier de navigation ne se masque automatiquement + Masquer le clavier de navigation + Enfoncer pour afficher les symboles + Appuyer pour saisir des lettres et des chiffres + Paramètres d\'entrée de morse + Régler les préférences du mode d\'entrée Morse + Activer le mode d\'entrée Morse + Fournit un mode d\'entrée de morse qui remplace le clavier standard + Voir le guide du mode d\'entrée Morse + Affiche un ensemble de clés/valeurs Morse au-dessus du clavier + Mode d\'entrée Morse + Unité de temps Morse + Sélectionnez votre unité de temps Morse + Configurer la fréquence de répétition + Ajuster la fréquence de répétition d\'un dit/dah lorsqu\'un commutateur est enfoncé + Configurer la fréquence de répétition + Délai de réinitialisation avec pression longue + Ajuster le délai de la pression longue avant de retourner à l\'écran d\'accueil + Êtes-vous sûr de vouloir réinitialiser les actions par défaut ? + Oui + Non + Plus rapide + Plus lent + Terminé + Paramètres de numérisation + Régler la vitesse ainsi que le mode de balayage + Activer le self-scanning + Scanne le clavier automatiquement + Activer le scan inverse + Scanner lorsque l\'interrupteur est pressé et sélectionner quand il est relâché + Vitesse de scan + Ajuste la vitesse de scan + Configurer les actions des commutateurs + Personnaliser les actions assignées à chaque commutateur + ECU 1 / Avant + ECU 2 / Inverse + ECU 3 / Gauche + ECU 4 / Droite + Commutateur 1 + Commutateur 2 + ECU 1 / Action de Tecla en avant + ECU 2 / Action de Tecla en inverse + ECU 3 / Action de Tecla à gauche + ECU 4 / Action de Tecla à droite + Action Tecla pour Commutateur 1 + Action Tecla pour Commutateur 2 + ECU 1 / Action du morse en avant + ECU 2 / Action du morse en inverse + ECU 3 / Action du morse à gauche + ECU 4 / Action du morse à droite + Action Morse pour Commutateur 1 + Action Morse pour Commutateur 2 + Rétablir les actions par défaut + Réinitialisation des actions des commutateurs aux valeurs par défaut + Réinitialisation des actions des commutateurs + Paramètres d\'entrées avancés + Connexion au Tecla Shield + Impossible de se connecter au Tecla Shield + Connexion au Tecla Shield annulé + Pas de Tecla Shield à portée + Recherche de Tecla Shields. Veuillez patienter… + Méthode d\'entrée Morse activé + Méthode d\'entrée Morse désactivé + Interrupteur en mode plein écran activé + Interrupteur en mode plein écran désactivé + Sélectionnez Tecla Access comme votre mode d\'entrée par défaut avant de régler les paramètres. + Aucune application de reconnaissance vocale disponible ! + Voice Search n\'est pas installé! + Entrée vocale Tecla + Configuration de Tecla… + À propos de Tecla Access + L\'équipe + En savoir plus à propos des créateurs de Tecla + L\'équipe de base + Jan Richards + Manager & User Experience + Jorge Silva + Developpeur sénior + Mauricio Meza + L\'expérience utilisateur + Eric Wan + Développeur junior + Programmeurs + Eric Ma + Bénévoles + Elyas Bhy + Bénévoles + Rishab Garg + Bénévoles + Jeroen Teunissen + Teunissen Enabling + Améliorations + Mats Lundalv + Auto-annuler le balayage + Traducteurs + + + Aucun + Basique + Avancé + + + @string/prediction_none + @string/prediction_basic + @string/prediction_full + + + Immédiatement + Après 4 secondes + Après 8 secondes + Après 15 secondes + Après 30 secondes + Après 60 secondes + Jamais + + + Jamais + 1000 ms + 950 ms + 900 ms + 850 ms + 800 ms + 750 ms + 700 ms + 650 ms + 600 ms + 550 ms + 500 ms + + + Aucun + Step-scan suivant + Step-scan précédent + Annuler + Sélectionnez le surligné + + + Aucun + Dit Morse + Dah Morse + Charactère de fin Morse + Retour arrière Morse + Cacher la vue de l\'IME Morse + + + Mode triple-touche + Mode double-touche + Mode touche unique + + + 3 secondes + 6 secondes + 9 secondes + 12 secondes + 16 secondes + 20 secondes + 25 secondes + 32 secondes + 40 secondes + + + \ No newline at end of file diff --git a/java/res/values-nl/strings.xml b/java/res/values-nl/strings.xml index d946871..4ef4f46 100644 --- a/java/res/values-nl/strings.xml +++ b/java/res/values-nl/strings.xml @@ -1,248 +1,253 @@ - + - "Trillen bij druk op een toets" - "Geluid bij druk op een toets" - "Typefouten corrigeren" - "Foutcorrectie tijdens invoer inschakelen" - "Invoerfouten in liggende weergave" - "Foutcorrectie tijdens invoer inschakelen" - "Woordsuggesties" - "Het vorige woord automatisch corrigeren" - "Woordsuggesties" - "Instellingen voor woordsuggesties" - "Automatisch voltooien tijdens typen inschakelen" - "Automatisch voltooien" - "Tekstveld vergroten" - "Woordsuggesties verbergen in liggende weergave" - "Automatisch hoofdlettergebruik" - "Hoofdletter gebruiken aan het begin van een zin" - "Automatische interpunctie" - "Snelle oplossingen" - "Hiermee worden veelvoorkomende typefouten gecorrigeerd" - "Suggesties weergeven" - "Voorgestelde woorden weergeven tijdens typen" - "Auto-aanvullen" - "Gemarkeerd woord automatisch invoegen met spatiebalk en interpunctie" - "0" - "1" - "2" - "%s : Opgeslagen" - "àáâãäåæ" - "èéêë" - "ìíîï" - "òóöø" - "ùúûü" - "§ß" - "" - "" - "" - "i" - "Houd een toets ingedrukt om diakritische tekens weer te geven (ø, ö, enzovoort)" - "Druk op elk gewenst moment op de toets Terug ↶ om het toetsenbord te sluiten" - "Toegang tot cijfers en symbolen" - Houd het meest linkse woord ingedrukt om het toe te voegen aan het woordenboek - "Raak deze tip aan om door te gaan »" - "Raak dit punt aan om deze tip te sluiten en te beginnen met typen." - "Het toetsenbord wordt geopend wanneer u een tekstveld aanraakt" - Raak de sleutel aan en hou het ingedrukt om accenten te zien (ø, ö, ô, ó, enz.) - "Schakel over naar cijfers en symbolen door deze toets aan te raken" - "Ga terug naar letters door deze toets nogmaals aan te raken" - "Blijf deze toets aanraken om toetsenbordinstellingen te wijzigen, zoals auto-aanvullen" - "Probeer het zelf!" - "Beginnen" - "Volgende" - "Gereed" - "Verzenden" - "?123" - "123" - "ABC" - "Alt" - "Het toetsenbord openen"\n\n\"Raak een tekstveld aan.\" - "Het toetsenbord sluiten"\n\n\"Druk op de terugtoets.\" - "Een toets blijven aanraken voor opties"\n\n\"Toegang tot interpunctie en diakritische tekens.\" - "Toetsenbordinstellingen"\n\n"Blijf de toets "\"?123\"\" aanraken.\" - ".com" - ".net" - ".org" - ".gov" - ".edu" - "Tecla-toetsenbord" - Tecla Access instellingen - Invoer methode - Maak stem ingave mogelijk - Voegt een toets toe voor snelle toegang tot gesproken commando\'s en spraakherkenning - Toon accenten toets - Laat sticky key zien waarmee tekens met accenten en andere varianten worden toegevoegd - Alternatieve invoer instellingen - Verbinding maken met Tecla Shield - Bluetooth is niet ondersteund - Bluetooth is uitgeschakeld - Probeert een verbinding met een nabijgelegen Tecla Shield te maken - Tijdelijk verbinding verbreken met Tecla Shield - Aanvinken om een ander apparaat te laten verbinden met Tecla Shield - Volledig scherm schakelaar instelling - Gebruikt het volledige scherm als één enkele schakelaar - Altijd speakerphone gebruiken - Speaker voor spraakoproepen, spraakopdrachten en stem input inschakelen. - Toon altijd toetsenbord - Toont een klein navigatie toetsenbord wanneer geen tekst wordt ingevoerd - Toetsenbord navigatie time-out - Pas de vertraging aan vóór de toetsenbord navigatie automatisch verdwijnt - Verberg toetsenbord navigatie - Tik voor symbolen - Druk voor letters en cijfers - Morse invoer instellingen - Morse mode en voorkeuren aanpassen - Morse invoer activeren - Biedt een Morse invoermethode die het standaard toetsenbord vervangt - Toon Morse HUD - Laat een aantal Morse sleutels/waarden boven het toetsenbord zien - Morse invoermethode - Morse tijdseenheid - Selecteer uw Morse tijdseenheid - Configureren herhaal frequentie - Stel de herhaal frequentie van een dit/dah in wanneer u een schakelaar indrukt - Herhaalfrequentie configureren - Lang indrukken resetvertraging - Pas het lang indrukken met vertraging aan alvorens terug te keren naar Home - Weet u zeker dat u alle instellingen op standaardwaarden terug wilt zetten? - Ja - Neen - Sneller - Trager - "Gereed" - Scaninstellingen - Scan modus en snelheid aanpassen - Activeer zelf-scanning - Scant het toetsenbord automatisch - Laat inverse scanning toe - Start het scannen bij het drukken en selecteer bij het loslaten - Scansnelheid - Pas de scansnelheid aan - Configureren schakelaar acties - Pas de acties aan die toegewezen zijn aan elke invoerschakelaar - ECU 1 / Vooruit - ECU 2 / Achteruit - ECU 3 / Links - ECU 4 / Rechts - Schakelaar 1 - Schakelaar 2 - ECU 1 / Tecla actie Vooruit - ECU 2 / Tecla actie Achteruit - ECU 3 / Tecla actie Links - ECU 4 / Tecla actie Rechts - Knop 1 Tecla Aktie - Knop 2 Tecla Aktie - ECU 1 / Voorwaarts Morse actie - ECU 2 / Terug Morse actie - ECU 3 / links Morse actie - ECU 4 / rechts Morse actie - Schakelaar 1 Morse actie - Schakelaar 2 Morse actie - Herstel standaard acties - Reset schakelaar acties op standaardwaarden - Reset schakelaar acties - Geavanceerde invoer instellingen - Verbinding maken met Tecla Shield - Kon geen verbinding maken met Tecla Shield - Verbinding met Tecla Shield geannuleerd - Geen Tecla Shield beschikbaar - Op zoek naar Tecla Shields. Een ogenblik geduld… - Morse invoermethode ingeschakeld - Morse invoermethode uitgeschakeld - Volledig scherm schakelaar modus ingeschakeld - Volledig scherm schakelaar modus uitgeschakeld - Selecteer Tecla toegang als uw standaard invoermethode voordat u uw instellingen aanpast. - Geen spraakherkenning applicaties beschikbaar! - Voice Search is niet geïnstalleerd! - Tecla Stem ingave - Tecla instellen ... - About Tecla Access - The Team - Learn who made Tecla a reality - Core Team - Jan Richards - Manager & User Experience - Jorge Silva - Lead Developer - Mauricio Meza - User Experience - Eric Wan - Junior Developer - Coders - Eric Ma - Volunter - Eric Ma - Volunter - Eric Ma - Volunter - Enhancements - Mats Lundalv - Auto-cancel scan - Translators - - "Geen" - "Basis" - "Geavanceerd" - - - @string/prediction_none - @string/prediction_basic - @string/prediction_full - - - Onmiddellijk - Na 4 seconden - Na 8 seconden - Na 15 seconden - Na 30 seconden - Na 60 seconden - Nooit - - - Nooit - 1000 ms - 950 ms - 900 ms - 850 ms - 800 ms - 750 ms - 700 ms - 650 ms - 600 ms - 550 ms - 500 ms - - - "Geen" - Stap-scan volgende - Stap-scan vorige - Annuleren - Selecteer de gemaarkeerde - - - "Geen" - Morse dit - Morse dah - Morse einde van karakter - Morse backspace - Morse IME weergave verbergen - - - Drievoudige toets-modus - Dubbel-toets modus - Eén toets modus - - - 3 seconden - 6 seconden - 9 seconden - 12 seconden - 16 seconden - 20 seconden - 25 seconden - 32 seconden - 40 seconden - - + + "Trillen bij druk op een toets" + "Geluid bij druk op een toets" + "Typefouten corrigeren" + "Foutcorrectie tijdens invoer inschakelen" + "Invoerfouten in liggende weergave" + "Foutcorrectie tijdens invoer inschakelen" + "Woordsuggesties" + "Het vorige woord automatisch corrigeren" + "Woordsuggesties" + "Instellingen voor woordsuggesties" + "Automatisch voltooien tijdens typen inschakelen" + "Automatisch voltooien" + "Tekstveld vergroten" + "Woordsuggesties verbergen in liggende weergave" + "Automatisch hoofdlettergebruik" + "Hoofdletter gebruiken aan het begin van een zin" + "Automatische interpunctie" + "Snelle oplossingen" + "Hiermee worden veelvoorkomende typefouten gecorrigeerd" + "Suggesties weergeven" + "Voorgestelde woorden weergeven tijdens typen" + "Auto-aanvullen" + "Gemarkeerd woord automatisch invoegen met spatiebalk en interpunctie" + "0" + "1" + "2" + "%s : Opgeslagen" + "àáâãäåæ" + "èéêë" + "ìíîï" + "òóöø" + "ùúûü" + "§ß" + "" + "" + "" + "i" + "Houd een toets ingedrukt om diakritische tekens weer te geven (ø, ö, enzovoort)" + "Druk op elk gewenst moment op de toets Terug ↶ om het toetsenbord te sluiten" + "Toegang tot cijfers en symbolen" + Houd het meest linkse woord ingedrukt om het toe te voegen aan het woordenboek + "Raak deze tip aan om door te gaan »" + "Raak dit punt aan om deze tip te sluiten en te beginnen met typen." + "Het toetsenbord wordt geopend wanneer u een tekstveld aanraakt" + Raak de sleutel aan en hou het ingedrukt om accenten te zien (ø, ö, ô, ó, enz.) + "Schakel over naar cijfers en symbolen door deze toets aan te raken" + "Ga terug naar letters door deze toets nogmaals aan te raken" + "Blijf deze toets aanraken om toetsenbordinstellingen te wijzigen, zoals auto-aanvullen" + "Probeer het zelf!" + "Beginnen" + "Volgende" + "Gereed" + "Verzenden" + "?123" + "123" + "ABC" + "Alt" + "Het toetsenbord openen"\n\n\"Raak een tekstveld aan.\" + "Het toetsenbord sluiten"\n\n\"Druk op de terugtoets.\" + "Een toets blijven aanraken voor opties"\n\n\"Toegang tot interpunctie en diakritische tekens.\" + "Toetsenbordinstellingen"\n\n"Blijf de toets "\"?123\"\" aanraken.\" + ".com" + ".net" + ".org" + ".gov" + ".edu" + "Tecla-toetsenbord" + Tecla Access instellingen + Invoer methode + Maak stem ingave mogelijk + Voegt een toets toe voor snelle toegang tot gesproken commando\'s en spraakherkenning + Toon accenten toets + Laat sticky key zien waarmee tekens met accenten en andere varianten worden toegevoegd + Alternatieve invoer instellingen + Verbinding maken met Tecla Shield + Bluetooth is niet ondersteund + Bluetooth is uitgeschakeld + Probeert een verbinding met een nabijgelegen Tecla Shield te maken + Tijdelijk verbinding verbreken met Tecla Shield + Aanvinken om een ander apparaat te laten verbinden met Tecla Shield + Volledig scherm schakelaar instelling + Gebruikt het volledige scherm als één enkele schakelaar + Altijd speakerphone gebruiken + Speaker voor spraakoproepen, spraakopdrachten en stem input inschakelen. + Toon altijd toetsenbord + Toont een klein navigatie toetsenbord wanneer geen tekst wordt ingevoerd + Toetsenbord navigatie time-out + Pas de vertraging aan vóór de toetsenbord navigatie automatisch verdwijnt + Verberg toetsenbord navigatie + Tik voor symbolen + Druk voor letters en cijfers + Morse invoer instellingen + Morse mode en voorkeuren aanpassen + Morse invoer activeren + Biedt een Morse invoermethode die het standaard toetsenbord vervangt + Toon Morse HUD + Laat een aantal Morse sleutels/waarden boven het toetsenbord zien + Morse invoermethode + Morse tijdseenheid + Selecteer uw Morse tijdseenheid + Configureren herhaal frequentie + Stel de herhaal frequentie van een dit/dah in wanneer u een schakelaar indrukt + Herhaalfrequentie configureren + Lang indrukken resetvertraging + Pas het lang indrukken met vertraging aan alvorens terug te keren naar Home + Weet u zeker dat u alle instellingen op standaardwaarden terug wilt zetten? + Ja + Neen + Sneller + Trager + "Gereed" + Scaninstellingen + Scan modus en snelheid aanpassen + Activeer zelf-scanning + Scant het toetsenbord automatisch + Laat inverse scanning toe + Start het scannen bij het drukken en selecteer bij het loslaten + Scansnelheid + Pas de scansnelheid aan + Configureren schakelaar acties + Pas de acties aan die toegewezen zijn aan elke invoerschakelaar + ECU 1 / Vooruit + ECU 2 / Achteruit + ECU 3 / Links + ECU 4 / Rechts + Schakelaar 1 + Schakelaar 2 + ECU 1 / Tecla actie Vooruit + ECU 2 / Tecla actie Achteruit + ECU 3 / Tecla actie Links + ECU 4 / Tecla actie Rechts + Knop 1 Tecla Aktie + Knop 2 Tecla Aktie + ECU 1 / Voorwaarts Morse actie + ECU 2 / Terug Morse actie + ECU 3 / links Morse actie + ECU 4 / rechts Morse actie + Schakelaar 1 Morse actie + Schakelaar 2 Morse actie + Herstel standaard acties + Reset schakelaar acties op standaardwaarden + Reset schakelaar acties + Geavanceerde invoer instellingen + Verbinding maken met Tecla Shield + Kon geen verbinding maken met Tecla Shield + Verbinding met Tecla Shield geannuleerd + Geen Tecla Shield beschikbaar + Op zoek naar Tecla Shields. Een ogenblik geduld… + Morse invoermethode ingeschakeld + Morse invoermethode uitgeschakeld + Volledig scherm schakelaar modus ingeschakeld + Volledig scherm schakelaar modus uitgeschakeld + Selecteer Tecla toegang als uw standaard invoermethode voordat u uw instellingen aanpast. + Geen spraakherkenning applicaties beschikbaar! + Voice Search is niet geïnstalleerd! + Tecla Stem ingave + Tecla instellen ... + About Tecla Access + The Team + Learn who made Tecla a reality + Core Team + Jan Richards + Manager & User Experience + Jorge Silva + Lead Developer + Mauricio Meza + User Experience + Eric Wan + Junior Developer + Coders + Eric Ma + Vrijwilliger + Elyas Bhy + Vrjwilliger + Rishab Garg + Vrijwilliger + Jeroen Teunissen + Teunissen Enabling + Enhancements + Mats Lundalv + Auto-cancel scan + Translators + + + "Geen" + "Basis" + "Geavanceerd" + + + @string/prediction_none + @string/prediction_basic + @string/prediction_full + + + Onmiddellijk + Na 4 seconden + Na 8 seconden + Na 15 seconden + Na 30 seconden + Na 60 seconden + Nooit + + + Nooit + 1000 ms + 950 ms + 900 ms + 850 ms + 800 ms + 750 ms + 700 ms + 650 ms + 600 ms + 550 ms + 500 ms + + + "Geen" + Stap-scan volgende + Stap-scan vorige + Annuleren + Selecteer de gemaarkeerde + + + "Geen" + Morse dit + Morse dah + Morse einde van karakter + Morse backspace + Morse IME weergave verbergen + + + Drievoudige toets-modus + Dubbel-toets modus + Eén toets modus + + + 3 seconden + 6 seconden + 9 seconden + 12 seconden + 16 seconden + 20 seconden + 25 seconden + 32 seconden + 40 seconden + + + \ No newline at end of file diff --git a/java/res/values/strings.xml b/java/res/values/strings.xml index a6592d7..dcae367 100644 --- a/java/res/values/strings.xml +++ b/java/res/values/strings.xml @@ -228,10 +228,10 @@ Bluetooth is disabled Attempts a connection to a nearby Tecla Shield - - Temporarily Disconnect Tecla Shield - Check to allow another device to connect to Tecla Shield - + + Temporarily Disconnect Tecla Shield + Check to allow another device to connect to Tecla Shield + Fullscreen switch mode Uses the entire screen as a single switch @@ -247,8 +247,8 @@ Navigation keyboard timeout Adjust the delay before the navigation keyboard automatically hides - Hide navigation keyboard - + Hide navigation keyboard + Immediately After 4 seconds @@ -258,7 +258,6 @@ After 60 seconds Never - Never 1000 ms @@ -273,7 +272,6 @@ 550 ms 500 ms - None Step-scan next @@ -294,7 +292,7 @@ Double-key mode Single-key mode - + Tap for symbols Tap for letters & numbers @@ -302,23 +300,23 @@ Morse input settings Adjust Morse input mode and preferences - + Enable Morse input Provides a Morse input method that replaces the standard keyboard - + Show Morse HUD Displays a set of Morse keys/values above the keyboard - + - Morse input method - - - Morse time unit - Select your Morse time unit - - + Morse input method + + + Morse time unit + Select your Morse time unit + + Configure repeat frequency Adjust the repeat frequency of a dit/dah when holding down a switch Configure the repeat frequency @@ -338,7 +336,7 @@ 32 seconds 40 seconds - + Are you sure you want to reset to default actions? Yes @@ -352,7 +350,7 @@ Scanning settings Adjust the scanning mode and speed - + Enable self-scanning Scans the keyboard automatically @@ -391,9 +389,8 @@ Restore default actions Reset switch actions to default values Reset Switch Actions - Advanced input settings - + Connecting to Tecla Shield Could not connect to Tecla Shield @@ -411,34 +408,32 @@ Tecla Voice Input Configuring Tecla… - - + + About Tecla Access The Team Learn who made Tecla a reality - Core Team - Jan Richards - Manager & User Experience - Jorge Silva - Lead Developer - Mauricio Meza - User Experience - Eric Wan - Junior Developer - + Jan Richards + Manager & User Experience + Jorge Silva + Lead Developer + Mauricio Meza + User Experience + Eric Wan + Junior Developer Coders - Eric Ma - Volunter - Elyas Bhy - Summer Intern - Rishab Garg - Summer Intern - + Eric Ma + Volunter + Elyas Bhy + Summer Intern + Rishab Garg + Summer Intern + Jeroen Teunissen + Teunissen Enabling Enhancements - Mats Lundalv - Auto-cancel scan - - Translators + Mats Lundalv + Auto-cancel scan + Translators - + \ No newline at end of file From f7e3691223598377e8932c72d861d27426a41437 Mon Sep 17 00:00:00 2001 From: Teunissen Enabling Date: Fri, 26 Apr 2013 21:58:18 +0200 Subject: [PATCH 02/22] Revert "Merge pull request #205 from sagarchandarana123/issue203" This reverts commit d38433151cf71fefca113515ea8b591e54bfde37, reversing changes made to 2f0d0ac9694136061dacaebc638132e8c63032f2. --- .../tecla/framework/SwitchEventProvider.java | 51 +++++-------------- .../src/ca/idi/tecla/framework/TeclaApp.java | 6 --- 2 files changed, 13 insertions(+), 44 deletions(-) diff --git a/framework/src/ca/idi/tecla/framework/SwitchEventProvider.java b/framework/src/ca/idi/tecla/framework/SwitchEventProvider.java index 97b50c5..c66b985 100644 --- a/framework/src/ca/idi/tecla/framework/SwitchEventProvider.java +++ b/framework/src/ca/idi/tecla/framework/SwitchEventProvider.java @@ -1,8 +1,5 @@ package ca.idi.tecla.framework; -import java.util.Timer; -import java.util.TimerTask; - import android.app.Service; import android.content.BroadcastReceiver; import android.content.Context; @@ -39,6 +36,7 @@ private void init() { //Intents & Intent Filters registerReceiver(mReceiver, new IntentFilter(TelephonyManager.ACTION_PHONE_STATE_CHANGED)); + registerReceiver(mReceiver, new IntentFilter(Intent.ACTION_NEW_OUTGOING_CALL)); mSwitchEventIntent = new Intent(SwitchEvent.ACTION_SWITCH_EVENT_RECEIVED); @@ -136,45 +134,22 @@ public void injectSwitchEvent(int switchChanges, int switchStates) { @Override public void onReceive(Context context, Intent intent) { + //if enabled in prefs, activate speaker phone whenever an outgoing call is placed + if (intent.getAction().equals(Intent.ACTION_NEW_OUTGOING_CALL)) { + TeclaStatic.logD(CLASS_TAG, "New Outgoing Call Placed"); + + if(TeclaApp.persistence.isSpeakerphoneEnabled()) + TeclaApp.getInstance().useSpeakerphone(); + + } + if (intent.getAction().equals(TelephonyManager.ACTION_PHONE_STATE_CHANGED)) { TeclaStatic.logD(CLASS_TAG, "Phone state changed"); mPhoneRinging = false; TelephonyManager tm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE); - int phoneState = tm.getCallState(); - switch(phoneState){ - case TelephonyManager.CALL_STATE_RINGING: - TeclaStatic.logD(CLASS_TAG, "Phone ringing"); - mPhoneRinging = true; - break; - case TelephonyManager.CALL_STATE_OFFHOOK: - //if enabled in prefs, activate speaker phone whenever the phone is off the hook - TeclaStatic.logD(CLASS_TAG, "Phone off the hook"); - if(TeclaApp.persistence.isSpeakerphoneEnabled()){ - - if (android.os.Build.VERSION.SDK_INT >= 16){ - /* Turn the speaker on after a short delay, - * so that Jellybean's auto-turnoff-speaker is completed - * by PhoneUtils.java (API 16 onwards) - * - * Increase the delay if the problem still occurs - */ - int delay = 200;// in ms - new Timer().schedule(new TimerTask() { - @Override - public void run() { - TeclaStatic.logD(CLASS_TAG, "Enabling Speaker"); - TeclaApp.getInstance().useSpeakerphone(); - } - }, delay); - } - else { //no delay - TeclaApp.getInstance().useSpeakerphone(); - } - - } - - - + if (tm.getCallState() == TelephonyManager.CALL_STATE_RINGING) { + TeclaStatic.logD(CLASS_TAG, "Phone ringing"); + mPhoneRinging = true; } } } diff --git a/framework/src/ca/idi/tecla/framework/TeclaApp.java b/framework/src/ca/idi/tecla/framework/TeclaApp.java index ebad64d..7823517 100644 --- a/framework/src/ca/idi/tecla/framework/TeclaApp.java +++ b/framework/src/ca/idi/tecla/framework/TeclaApp.java @@ -179,14 +179,8 @@ public void answerCall() { buttonUp.putExtra(Intent.EXTRA_KEY_EVENT, new KeyEvent(KeyEvent.ACTION_UP, KeyEvent.KEYCODE_HEADSETHOOK)); sendOrderedBroadcast(buttonUp, "android.permission.CALL_PRIVILEGED"); - /* Not required to enable speaker here, as the listener in - * ca.idi.tecla.framework.SwitchEventProvider changed from outgoing-call to Off-hook, - * handling both incoming and outgoing calls - if(TeclaApp.persistence.isSpeakerphoneEnabled()) useSpeakerphone(); - - */ } public void postDelayedFullReset(long delay) { From d117a136eb2ccb0d3ae34b02842429afcddbfc61 Mon Sep 17 00:00:00 2001 From: Teunissen Enabling Date: Fri, 26 Apr 2013 21:59:28 +0200 Subject: [PATCH 03/22] Revert "Revert "Merge pull request #205 from sagarchandarana123/issue203"" This reverts commit f7e3691223598377e8932c72d861d27426a41437. --- .../tecla/framework/SwitchEventProvider.java | 51 ++++++++++++++----- .../src/ca/idi/tecla/framework/TeclaApp.java | 6 +++ 2 files changed, 44 insertions(+), 13 deletions(-) diff --git a/framework/src/ca/idi/tecla/framework/SwitchEventProvider.java b/framework/src/ca/idi/tecla/framework/SwitchEventProvider.java index c66b985..97b50c5 100644 --- a/framework/src/ca/idi/tecla/framework/SwitchEventProvider.java +++ b/framework/src/ca/idi/tecla/framework/SwitchEventProvider.java @@ -1,5 +1,8 @@ package ca.idi.tecla.framework; +import java.util.Timer; +import java.util.TimerTask; + import android.app.Service; import android.content.BroadcastReceiver; import android.content.Context; @@ -36,7 +39,6 @@ private void init() { //Intents & Intent Filters registerReceiver(mReceiver, new IntentFilter(TelephonyManager.ACTION_PHONE_STATE_CHANGED)); - registerReceiver(mReceiver, new IntentFilter(Intent.ACTION_NEW_OUTGOING_CALL)); mSwitchEventIntent = new Intent(SwitchEvent.ACTION_SWITCH_EVENT_RECEIVED); @@ -134,22 +136,45 @@ public void injectSwitchEvent(int switchChanges, int switchStates) { @Override public void onReceive(Context context, Intent intent) { - //if enabled in prefs, activate speaker phone whenever an outgoing call is placed - if (intent.getAction().equals(Intent.ACTION_NEW_OUTGOING_CALL)) { - TeclaStatic.logD(CLASS_TAG, "New Outgoing Call Placed"); - - if(TeclaApp.persistence.isSpeakerphoneEnabled()) - TeclaApp.getInstance().useSpeakerphone(); - - } - if (intent.getAction().equals(TelephonyManager.ACTION_PHONE_STATE_CHANGED)) { TeclaStatic.logD(CLASS_TAG, "Phone state changed"); mPhoneRinging = false; TelephonyManager tm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE); - if (tm.getCallState() == TelephonyManager.CALL_STATE_RINGING) { - TeclaStatic.logD(CLASS_TAG, "Phone ringing"); - mPhoneRinging = true; + int phoneState = tm.getCallState(); + switch(phoneState){ + case TelephonyManager.CALL_STATE_RINGING: + TeclaStatic.logD(CLASS_TAG, "Phone ringing"); + mPhoneRinging = true; + break; + case TelephonyManager.CALL_STATE_OFFHOOK: + //if enabled in prefs, activate speaker phone whenever the phone is off the hook + TeclaStatic.logD(CLASS_TAG, "Phone off the hook"); + if(TeclaApp.persistence.isSpeakerphoneEnabled()){ + + if (android.os.Build.VERSION.SDK_INT >= 16){ + /* Turn the speaker on after a short delay, + * so that Jellybean's auto-turnoff-speaker is completed + * by PhoneUtils.java (API 16 onwards) + * + * Increase the delay if the problem still occurs + */ + int delay = 200;// in ms + new Timer().schedule(new TimerTask() { + @Override + public void run() { + TeclaStatic.logD(CLASS_TAG, "Enabling Speaker"); + TeclaApp.getInstance().useSpeakerphone(); + } + }, delay); + } + else { //no delay + TeclaApp.getInstance().useSpeakerphone(); + } + + } + + + } } } diff --git a/framework/src/ca/idi/tecla/framework/TeclaApp.java b/framework/src/ca/idi/tecla/framework/TeclaApp.java index 7823517..ebad64d 100644 --- a/framework/src/ca/idi/tecla/framework/TeclaApp.java +++ b/framework/src/ca/idi/tecla/framework/TeclaApp.java @@ -179,8 +179,14 @@ public void answerCall() { buttonUp.putExtra(Intent.EXTRA_KEY_EVENT, new KeyEvent(KeyEvent.ACTION_UP, KeyEvent.KEYCODE_HEADSETHOOK)); sendOrderedBroadcast(buttonUp, "android.permission.CALL_PRIVILEGED"); + /* Not required to enable speaker here, as the listener in + * ca.idi.tecla.framework.SwitchEventProvider changed from outgoing-call to Off-hook, + * handling both incoming and outgoing calls + if(TeclaApp.persistence.isSpeakerphoneEnabled()) useSpeakerphone(); + + */ } public void postDelayedFullReset(long delay) { From 3898e7e63e97db432e0f87c68d0479b1f31fa7e4 Mon Sep 17 00:00:00 2001 From: Teunissen Enabling Date: Sat, 27 Apr 2013 19:50:55 +0200 Subject: [PATCH 04/22] Added prefs menu items added some items, improved some others (fixed strings --> xml vars) --- java/res/layout/activity_prefs.xml | 85 +++++++++++++++++++++-------- java/res/values-nl/strings.xml | 29 +++++++--- java/res/values/strings.xml | 14 +++++ java/src/.DS_Store | Bin 0 -> 6148 bytes 4 files changed, 97 insertions(+), 31 deletions(-) create mode 100644 java/src/.DS_Store diff --git a/java/res/layout/activity_prefs.xml b/java/res/layout/activity_prefs.xml index 9085804..fcb67f6 100644 --- a/java/res/layout/activity_prefs.xml +++ b/java/res/layout/activity_prefs.xml @@ -317,29 +317,35 @@ android:key="prediction_settings" android:title="@string/prediction_category" > - - - + android:key="desktop_settings" + android:title="@string/desktop_settings_title" > - + + + + + + + + + + + + + + + + + + + + + - + @@ -434,6 +467,10 @@ + + diff --git a/java/res/values-nl/strings.xml b/java/res/values-nl/strings.xml index 4ef4f46..62ed7ba 100644 --- a/java/res/values-nl/strings.xml +++ b/java/res/values-nl/strings.xml @@ -158,11 +158,26 @@ Geen spraakherkenning applicaties beschikbaar! Voice Search is niet geïnstalleerd! Tecla Stem ingave - Tecla instellen ... - About Tecla Access + + + Nog niet geimplementeerd + + + Noodnummer configuratie + Noodnummer: telefoon + Telefoon noodnummer instellen + Emergency SMS # + SMS noodnummer instellen + email nood-adres + Noodoproep per email versturen + GPS-locatie doormelden + Geef GPS-locatie door in email of SMS + + Tecla instellen … + Over Tecla Access The Team - Learn who made Tecla a reality - Core Team + Kijk wie Tecla mogelijk gemaakt hebben + Hoofd Team Jan Richards Manager & User Experience Jorge Silva @@ -171,7 +186,7 @@ User Experience Eric Wan Junior Developer - Coders + Programmeurs Eric Ma Vrijwilliger Elyas Bhy @@ -180,10 +195,10 @@ Vrijwilliger Jeroen Teunissen Teunissen Enabling - Enhancements + Uitbreidingen Mats Lundalv Auto-cancel scan - Translators + Vertalers "Geen" diff --git a/java/res/values/strings.xml b/java/res/values/strings.xml index dcae367..812bf0a 100644 --- a/java/res/values/strings.xml +++ b/java/res/values/strings.xml @@ -409,6 +409,20 @@ Tecla Voice Input Configuring Tecla… + + Not yet implemented + + + Emergency call settings + Emergency phone # + Configure emergency phone number + Emergency SMS # + Configure emergency SMS number + Emergency email address + Configure emergency email address + Enable GPS tracking + Forward GPS location in SMS and email + About Tecla Access The Team diff --git a/java/src/.DS_Store b/java/src/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..5008ddfcf53c02e82d7eee2e57c38e5672ef89f6 GIT binary patch literal 6148 zcmeH~Jr2S!425mzP>H1@V-^m;4Wg<&0T*E43hX&L&p$$qDprKhvt+--jT7}7np#A3 zem<@ulZcFPQ@L2!n>{z**++&mCkOWA81W14cNZlEfg7;MkzE(HCqgga^y>{tEnwC%0;vJ&^%eQ zLs35+`xjp>T0 Date: Sat, 27 Apr 2013 20:40:18 +0200 Subject: [PATCH 05/22] contributors fix (xml) fixed contributors (again) in res/... --- java/res/layout/activity_prefs.xml | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/java/res/layout/activity_prefs.xml b/java/res/layout/activity_prefs.xml index fcb67f6..f22ab52 100644 --- a/java/res/layout/activity_prefs.xml +++ b/java/res/layout/activity_prefs.xml @@ -320,7 +320,7 @@ + android:title="@string/desktop_settings_title" > - + @@ -467,10 +469,6 @@ - - From a2317eadd46b9aafd96b986d30d37334906cda13 Mon Sep 17 00:00:00 2001 From: Teunissen Enabling Date: Sun, 28 Apr 2013 15:34:14 +0200 Subject: [PATCH 06/22] added switch-action Emergency callout added to switch actions. Some cleaning. --- framework/.DS_Store | Bin 0 -> 6148 bytes java/res/layout/activity_prefs.xml | 14 ++++++++------ java/res/values-nl/strings.xml | 1 + java/res/values/strings.xml | 1 + 4 files changed, 10 insertions(+), 6 deletions(-) create mode 100644 framework/.DS_Store diff --git a/framework/.DS_Store b/framework/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..5008ddfcf53c02e82d7eee2e57c38e5672ef89f6 GIT binary patch literal 6148 zcmeH~Jr2S!425mzP>H1@V-^m;4Wg<&0T*E43hX&L&p$$qDprKhvt+--jT7}7np#A3 zem<@ulZcFPQ@L2!n>{z**++&mCkOWA81W14cNZlEfg7;MkzE(HCqgga^y>{tEnwC%0;vJ&^%eQ zLs35+`xjp>T0 + + + - - - diff --git a/java/res/values-nl/strings.xml b/java/res/values-nl/strings.xml index 62ed7ba..68bfeb3 100644 --- a/java/res/values-nl/strings.xml +++ b/java/res/values-nl/strings.xml @@ -239,6 +239,7 @@ Stap-scan vorige Annuleren Selecteer de gemaarkeerde + Noodnummer bellen & bericht versturen "Geen" diff --git a/java/res/values/strings.xml b/java/res/values/strings.xml index 812bf0a..86aa7eb 100644 --- a/java/res/values/strings.xml +++ b/java/res/values/strings.xml @@ -278,6 +278,7 @@ Step-scan previous Step out, cancel Select highlighted + Call emergency nr & send message None From 6be9bef67f5a509f17790408085c69ed18259f43 Mon Sep 17 00:00:00 2001 From: Teunissen Enabling Date: Wed, 1 May 2013 14:42:31 +0200 Subject: [PATCH 07/22] Editable fields in prefs screen added editable fields (tel# sms# email addr) in prefs screen --- java/res/layout/activity_prefs.xml | 31 +++++++++++++++++++----------- java/res/values-nl/strings.xml | 27 +++++++++++++++++--------- java/res/values/strings.xml | 16 ++++++++++----- 3 files changed, 49 insertions(+), 25 deletions(-) diff --git a/java/res/layout/activity_prefs.xml b/java/res/layout/activity_prefs.xml index f9cb74a..31c9e27 100644 --- a/java/res/layout/activity_prefs.xml +++ b/java/res/layout/activity_prefs.xml @@ -403,23 +403,32 @@ android:title="@string/emergency_GPS_setting" > - - + android:title="@string/emergency_phone_title" > + - - + android:title="@string/emergency_SMS_title" > + - - + android:summary="@string/emergency_email_summary" + android:title="@string/emergency_email_title" > + diff --git a/java/res/values-nl/strings.xml b/java/res/values-nl/strings.xml index 68bfeb3..8b71a1c 100644 --- a/java/res/values-nl/strings.xml +++ b/java/res/values-nl/strings.xml @@ -158,22 +158,31 @@ Geen spraakherkenning applicaties beschikbaar! Voice Search is niet geïnstalleerd! Tecla Stem ingave - - + + Nog niet geimplementeerd - + - Noodnummer configuratie - Noodnummer: telefoon + Noodoproep configuratie + Telefonisch noodnummer Telefoon noodnummer instellen - Emergency SMS # + Geef telefoonnummer voor noodgevallen: + Telefoon noodnummer + SMS Noodnummer SMS noodnummer instellen - email nood-adres - Noodoproep per email versturen + Geef SMS-nummer voor noodgevallen: + SMS Noodnummer + email nood-adres + Noodoproep per email versturen + Geef email-adres voor noodgevallen: + Nood email-adres GPS-locatie doormelden Geef GPS-locatie door in email of SMS - + + Tecla instellen … + + Over Tecla Access The Team Kijk wie Tecla mogelijk gemaakt hebben diff --git a/java/res/values/strings.xml b/java/res/values/strings.xml index 86aa7eb..023f6aa 100644 --- a/java/res/values/strings.xml +++ b/java/res/values/strings.xml @@ -278,7 +278,7 @@ Step-scan previous Step out, cancel Select highlighted - Call emergency nr & send message + Emergency callout None @@ -415,12 +415,18 @@ Emergency call settings - Emergency phone # + Emergency phone # Configure emergency phone number - Emergency SMS # + Emergency telephone number + Enter emergency telephone number + Emergency SMS # Configure emergency SMS number - Emergency email address - Configure emergency email address + Emergency SMS number + Enter emergency SMS number + Emergency email address + Configure emergency email address + Emergency email address + Enter emergency email address Enable GPS tracking Forward GPS location in SMS and email From e503e79e5c5d96162a99dfe21d9cb66e77ecc9ad Mon Sep 17 00:00:00 2001 From: Teunissen Enabling Date: Tue, 14 May 2013 13:24:55 +0200 Subject: [PATCH 08/22] callout proc in place callout procedure in place but still TODO, prefs are loaded --- java/res/layout/activity_prefs.xml | 5 +- java/src/.DS_Store | Bin 6148 -> 0 bytes java/src/ca/idi/tekla/TeclaApp.java | 9 +- java/src/ca/idi/tekla/TeclaPrefs.java | 4 - java/src/ca/idi/tekla/ime/TeclaIME.java | 23 ++-- .../ca/idi/tekla/util/EmergencyCallout.java | 34 +++++ java/src/ca/idi/tekla/util/Persistence.java | 121 +++++++++++------- 7 files changed, 130 insertions(+), 66 deletions(-) delete mode 100644 java/src/.DS_Store create mode 100644 java/src/ca/idi/tekla/util/EmergencyCallout.java diff --git a/java/res/layout/activity_prefs.xml b/java/res/layout/activity_prefs.xml index 31c9e27..e5418f6 100644 --- a/java/res/layout/activity_prefs.xml +++ b/java/res/layout/activity_prefs.xml @@ -407,7 +407,8 @@ android:defaultValue="" android:dialogMessage="@string/emergency_phone_dialogMesssage" android:dialogTitle="@string/emergency_phone_dialogTitle" - android:key="emergency_telephone_number" + android:key="emergency_phone_number" + android:persistent="true" android:summary="@string/emergency_phone_summary" android:title="@string/emergency_phone_title" > @@ -417,6 +418,7 @@ android:dialogMessage="@string/emergency_SMS_dialogMesssage" android:dialogTitle="@string/emergency_SMS_dialogTitle" android:key="emergency_SMS_number" + android:persistent="true" android:summary="@string/emergency_SMS_summary" android:title="@string/emergency_SMS_title" > @@ -426,6 +428,7 @@ android:dialogMessage="@string/emergency_email_dialogMesssage" android:dialogTitle="@string/emergency_email_dialogTitle" android:key="emergency_email_address" + android:persistent="true" android:summary="@string/emergency_email_summary" android:title="@string/emergency_email_title" > diff --git a/java/src/.DS_Store b/java/src/.DS_Store deleted file mode 100644 index 5008ddfcf53c02e82d7eee2e57c38e5672ef89f6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeH~Jr2S!425mzP>H1@V-^m;4Wg<&0T*E43hX&L&p$$qDprKhvt+--jT7}7np#A3 zem<@ulZcFPQ@L2!n>{z**++&mCkOWA81W14cNZlEfg7;MkzE(HCqgga^y>{tEnwC%0;vJ&^%eQ zLs35+`xjp>T0 Date: Wed, 15 May 2013 22:53:09 +0200 Subject: [PATCH 09/22] phone callout added It is actually calling on keysytroke. Not very beautifull, but solid however. --- java/src/ca/idi/tekla/TeclaApp.java | 1 - java/src/ca/idi/tekla/ime/TeclaIME.java | 2 +- .../ca/idi/tekla/util/EmergencyCallout.java | 28 ++++++++-------- .../ca/idi/tekla/util/EmergencyPhoneCall.java | 32 +++++++++++++++++++ 4 files changed, 48 insertions(+), 15 deletions(-) create mode 100644 java/src/ca/idi/tekla/util/EmergencyPhoneCall.java diff --git a/java/src/ca/idi/tekla/TeclaApp.java b/java/src/ca/idi/tekla/TeclaApp.java index 22701bc..7369fcf 100644 --- a/java/src/ca/idi/tekla/TeclaApp.java +++ b/java/src/ca/idi/tekla/TeclaApp.java @@ -92,7 +92,6 @@ private void init() { persistence.unsetInverseScanningChanged(); persistence.setScreenOn(); - emergencyCallout.test(); //Intents & Intent Filters registerReceiver(mReceiver, new IntentFilter(Intent.ACTION_SCREEN_OFF)); registerReceiver(mReceiver, new IntentFilter(Intent.ACTION_SCREEN_ON)); diff --git a/java/src/ca/idi/tekla/ime/TeclaIME.java b/java/src/ca/idi/tekla/ime/TeclaIME.java index d10f04a..f2a4341 100644 --- a/java/src/ca/idi/tekla/ime/TeclaIME.java +++ b/java/src/ca/idi/tekla/ime/TeclaIME.java @@ -2031,7 +2031,7 @@ private void handleSwitchEvent(SwitchEvent switchEvent) { break; case SwitchEvent.ACTION_EMERGENCY: - TeclaApp.emergencyCallout.Callout(); + TeclaApp.emergencyCallout.Callout(this); break; default: diff --git a/java/src/ca/idi/tekla/util/EmergencyCallout.java b/java/src/ca/idi/tekla/util/EmergencyCallout.java index cb72e3e..e3824be 100644 --- a/java/src/ca/idi/tekla/util/EmergencyCallout.java +++ b/java/src/ca/idi/tekla/util/EmergencyCallout.java @@ -1,33 +1,35 @@ package ca.idi.tekla.util; +import android.content.Context; import ca.idi.tecla.framework.TeclaStatic; import ca.idi.tekla.TeclaApp; -public class EmergencyCallout { +public class EmergencyCallout extends ca.idi.tekla.ime.TeclaIME { - public void Callout() { - TeclaStatic.logD(TeclaApp.CLASS_TAG, " Emergency switch event detected: "+ emergency_email_address()); + public void Callout(Context context) { + TeclaStatic.logD(TeclaApp.CLASS_TAG, " Emergency proc context: " + context.toString()); + TeclaStatic.logD(TeclaApp.CLASS_TAG, " Emergency proc GPS Setting: " + emergency_GPS_setting()); + TeclaStatic.logD(TeclaApp.CLASS_TAG, " Emergency proc Phone number: " + emergency_phone_number()); + TeclaStatic.logD(TeclaApp.CLASS_TAG, " Emergency proc SMS number: " + emergency_SMS_number()); + TeclaStatic.logD(TeclaApp.CLASS_TAG, " Emergency proc Email address: "+ emergency_email_address()); + if(emergency_phone_number().length() > 0) { + new EmergencyPoneCall().execute(context); + } } - - - // called from init of TeclaApp, probably deleted before RC version - public void test() { - TeclaStatic.logD(TeclaApp.CLASS_TAG, " Emergency test proc GPS Setting: " + emergency_GPS_setting()); - TeclaStatic.logD(TeclaApp.CLASS_TAG, " Emergency test proc Phone number: " + emergency_phone_number()); - TeclaStatic.logD(TeclaApp.CLASS_TAG, " Emergency test proc SMS number: " + emergency_SMS_number()); - TeclaStatic.logD(TeclaApp.CLASS_TAG, " Emergency test proc Email address: "+ emergency_email_address()); - } - + public boolean emergency_GPS_setting() { return TeclaApp.persistence.getEmergencyGPSSetting(); } + public String emergency_phone_number() { return TeclaApp.persistence.getEmergencyPhoneNumber().toString(); } + public String emergency_SMS_number() { return TeclaApp.persistence.getEmergencySMSNumber().toString(); } + public String emergency_email_address() { return TeclaApp.persistence.getEmergencyEmailAddress().toString(); } diff --git a/java/src/ca/idi/tekla/util/EmergencyPhoneCall.java b/java/src/ca/idi/tekla/util/EmergencyPhoneCall.java new file mode 100644 index 0000000..75c6069 --- /dev/null +++ b/java/src/ca/idi/tekla/util/EmergencyPhoneCall.java @@ -0,0 +1,32 @@ +package ca.idi.tekla.util; + +import android.content.Context; +import android.content.Intent; +import android.net.Uri; +import android.os.AsyncTask; +import ca.idi.tecla.framework.TeclaStatic; +import ca.idi.tekla.TeclaApp; + +class EmergencyPoneCall extends AsyncTask { + + @Override + protected Void doInBackground(Context... params) { + Context context = params[0]; + + TeclaStatic.logD(TeclaApp.CLASS_TAG, " doInBackground context: " + context.toString()); + try { + Intent intent = new Intent(Intent.ACTION_CALL,Uri.parse("tel:"+emergency_phone_number())); + //intent.addFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK); + intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + context.startActivity(intent); + } catch (Exception e) { + TeclaStatic.logD(TeclaApp.CLASS_TAG, " doInBackground error: " + e); + } + return null; + } + + public String emergency_phone_number() { + return TeclaApp.persistence.getEmergencyPhoneNumber().toString(); + } + +} \ No newline at end of file From a16c8939fb4749ea14f72e6e3363ee82583fa060 Mon Sep 17 00:00:00 2001 From: Teunissen Enabling Date: Fri, 17 May 2013 16:35:05 +0200 Subject: [PATCH 10/22] SMS message including GPS/network position added If emergency SMS given in prefs, send one including location (if seting acked in prefs). Repaired keypressed/release expiriment in TeclaIME (which was part of a stupid idea). TODO: send email with -or without- position and improve procs. --- java/src/ca/idi/tekla/ime/TeclaIME.java | 1206 +++++++++-------- .../ca/idi/tekla/util/EmergencyCallout.java | 67 +- .../src/ca/idi/tekla/util/EmergencyEmail.java | 33 + .../ca/idi/tekla/util/EmergencyPhoneCall.java | 10 +- java/src/ca/idi/tekla/util/EmergencySMS.java | 48 + java/src/ca/idi/tekla/util/Persistence.java | 2 +- 6 files changed, 792 insertions(+), 574 deletions(-) create mode 100644 java/src/ca/idi/tekla/util/EmergencyEmail.java create mode 100644 java/src/ca/idi/tekla/util/EmergencySMS.java diff --git a/java/src/ca/idi/tekla/ime/TeclaIME.java b/java/src/ca/idi/tekla/ime/TeclaIME.java index f2a4341..0031a17 100644 --- a/java/src/ca/idi/tekla/ime/TeclaIME.java +++ b/java/src/ca/idi/tekla/ime/TeclaIME.java @@ -75,8 +75,8 @@ /** * Input method implementation for Qwerty'ish keyboard. */ -public class TeclaIME extends ca.idi.tecla.framework.TeclaIMEService - implements KeyboardView.OnKeyboardActionListener { +public class TeclaIME extends ca.idi.tecla.framework.TeclaIMEService implements + KeyboardView.OnKeyboardActionListener { static final boolean TRACE = false; private static final String PREF_VIBRATE_ON = "vibrate_on"; @@ -97,9 +97,11 @@ public class TeclaIME extends ca.idi.tecla.framework.TeclaIMEService private static final int QUICK_PRESS = 200; // Weight added to a user picking a new word from the suggestion strip static final int FREQUENCY_FOR_PICKED = 3; - // Weight added to a user typing a new word that doesn't get corrected (or is reverted) + // Weight added to a user typing a new word that doesn't get corrected (or + // is reverted) static final int FREQUENCY_FOR_TYPED = 1; - // A word that is frequently typed and get's promoted to the user dictionary, uses this + // A word that is frequently typed and get's promoted to the user + // dictionary, uses this // frequency. static final int FREQUENCY_FOR_AUTO_ADD = 250; @@ -109,7 +111,7 @@ public class TeclaIME extends ca.idi.tecla.framework.TeclaIMEService // Contextual menu positions private static final int POS_SETTINGS = 0; private static final int POS_METHOD = 1; - + private TeclaKeyboardView mIMEView; private CandidateViewContainer mCandidateViewContainer; private CandidateView mCandidateView; @@ -119,21 +121,21 @@ public class TeclaIME extends ca.idi.tecla.framework.TeclaIMEService private AlertDialog mOptionsDialog; KeyboardSwitcher mKeyboardSwitcher; - - // Morse variables + + // Morse variables private TeclaMorse mTeclaMorse; private Keyboard.Key mSpaceKey; private Keyboard.Key mSendtoPCKey; private int mSpaceKeyIndex; private int mRepeatedKey; private long mMorseStartTime; - - //Morse key modes + + // Morse key modes public static final int TRIPLE_KEY_MODE = 0; public static final int DOUBLE_KEY_MODE = 1; public static final int SINGLE_KEY_MODE = 2; - - //Morse typing error margin (single-key mode) + + // Morse typing error margin (single-key mode) private static final float ERROR_MARGIN = 1.15f; private UserDictionary mUserDictionary; @@ -157,16 +159,14 @@ public class TeclaIME extends ca.idi.tecla.framework.TeclaIMEService private boolean mAutoCap; private boolean mQuickFixes; private boolean mShowSuggestions; - - - private int mCorrectionMode; - private int mOrientation; - - + + private int mCorrectionMode; + private int mOrientation; + // Keycode of the key which is on repeat private int mRepeatingKeyCode; private boolean wasAutoRepeating; - + // Indicates whether the suggestion strip is to be on in landscape private boolean mJustAccepted; private CharSequence mJustRevertedSeparator; @@ -182,23 +182,21 @@ public class TeclaIME extends ca.idi.tecla.framework.TeclaIMEService // Align sound effect volume on music volume private final float FX_VOLUME = -1.0f; private boolean mSilentMode; - private ToneGenerator mTone = new ToneGenerator(AudioManager.STREAM_DTMF, 100); + private ToneGenerator mTone = new ToneGenerator(AudioManager.STREAM_DTMF, + 100); private int mToneType = ToneGenerator.TONE_CDMA_DIAL_TONE_LITE; private String mWordSeparators; private String mSentenceSeparators; - - - private int wifi_ping_count=0; + private int wifi_ping_count = 0; private Thread wifisearcherthread; private static TeclaIME instance; - - public static TeclaIME getInstance(){ + + public static TeclaIME getInstance() { return instance; } - - + Handler mHandler = new Handler() { @Override public void handleMessage(Message msg) { @@ -213,7 +211,8 @@ public void handleMessage(Message msg) { mTutorial.start(); } else { // Try again soon if the view is not yet showing - sendMessageDelayed(obtainMessage(MSG_START_TUTORIAL), 100); + sendMessageDelayed(obtainMessage(MSG_START_TUTORIAL), + 100); } } break; @@ -223,32 +222,34 @@ public void handleMessage(Message msg) { } } }; - + @Override public void onCreate() { - + super.onCreate(); mTeclaMorse = new TeclaMorse(this); - instance=this; + instance = this; // Setup Debugging - //if (TeclaApp.DEBUG) android.os.Debug.waitForDebugger(); + // if (TeclaApp.DEBUG) android.os.Debug.waitForDebugger(); TeclaStatic.logD(CLASS_TAG, "Creating IME..."); - //setStatusIcon(R.drawable.ime_qwerty); + // setStatusIcon(R.drawable.ime_qwerty); mKeyboardSwitcher = new KeyboardSwitcher(this); final Configuration conf = getResources().getConfiguration(); initSuggest(conf.locale.toString()); mOrientation = conf.orientation; - mVibrateDuration = getResources().getInteger(R.integer.vibrate_duration_ms); + mVibrateDuration = getResources().getInteger( + R.integer.vibrate_duration_ms); // register to receive ringer mode changes for silent mode - registerReceiver(mReceiver, new IntentFilter(AudioManager.RINGER_MODE_CHANGED_ACTION)); + registerReceiver(mReceiver, new IntentFilter( + AudioManager.RINGER_MODE_CHANGED_ACTION)); initTeclaA11y(); -// initDesktop(); + // initDesktop(); } - + private void initSuggest(String locale) { mLocale = locale; mSuggest = new Suggest(this, R.raw.main); @@ -260,16 +261,18 @@ private void initSuggest(String locale) { mSuggest.setContactsDictionary(mContactsDictionary); mSuggest.setAutoDictionary(mAutoDictionary); mWordSeparators = getResources().getString(R.string.word_separators); - mSentenceSeparators = getResources().getString(R.string.sentence_separators); - } - -/* private void initDesktop(){ - TeclaApp.mSendToPC=false; - wifisearcherthread=new Thread(desktopsearcher); - + mSentenceSeparators = getResources().getString( + R.string.sentence_separators); } -*/ - @Override public void onDestroy() { + + /* + * private void initDesktop(){ TeclaApp.mSendToPC=false; + * wifisearcherthread=new Thread(desktopsearcher); + * + * } + */ + @Override + public void onDestroy() { super.onDestroy(); mUserDictionary.close(); mContactsDictionary.close(); @@ -278,7 +281,6 @@ private void initSuggest(String locale) { TeclaShieldManager.disconnect(this); } - @Override public void onConfigurationChanged(Configuration conf) { if (!TextUtils.equals(conf.locale.toString(), mLocale)) { @@ -288,10 +290,12 @@ public void onConfigurationChanged(Configuration conf) { if (conf.orientation != mOrientation) { commitTyped(getCurrentInputConnection()); mOrientation = conf.orientation; - - // If the fullscreen switch is enabled, change its size to match screen - if(isFullScreenShowing()) { - TeclaStatic.logD(CLASS_TAG, "Changing size of fullscreen overlay."); + + // If the fullscreen switch is enabled, change its size to match + // screen + if (isFullScreenShowing()) { + TeclaStatic.logD(CLASS_TAG, + "Changing size of fullscreen overlay."); Display display = getDisplay(); mSwitchPopup.update(display.getWidth(), display.getHeight()); } @@ -300,9 +304,9 @@ public void onConfigurationChanged(Configuration conf) { mKeyboardSwitcher = new KeyboardSwitcher(this); } mKeyboardSwitcher.makeKeyboards(true); - + super.onConfigurationChanged(conf); - + if (mKeyboardSwitcher.isMorseMode()) { updateSpaceKey(); mIMEView.invalidate(); @@ -311,19 +315,19 @@ public void onConfigurationChanged(Configuration conf) { @Override public View onCreateInputView() { - mIMEView = (TeclaKeyboardView) getLayoutInflater().inflate( - R.xml.input, null); + mIMEView = (TeclaKeyboardView) getLayoutInflater().inflate(R.xml.input, + null); mKeyboardSwitcher.setInputView(mIMEView); mKeyboardSwitcher.makeKeyboards(true); mIMEView.setOnKeyboardActionListener(this); mIMEView.setTeclaMorse(mTeclaMorse); mIMEView.setService(this); - + if (TeclaApp.persistence.isMorseModeEnabled()) mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_MORSE, 0); else mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_NAV, 0); - + TeclaStatic.logD(CLASS_TAG, "Soft IME view created."); TeclaApp.highlighter.setIMEView(mIMEView); return mIMEView; @@ -334,25 +338,27 @@ public View onCreateCandidatesView() { // No candidates view in Morse mode if (!TeclaApp.persistence.isMorseModeEnabled()) { mKeyboardSwitcher.makeKeyboards(true); - mCandidateViewContainer = (CandidateViewContainer) getLayoutInflater().inflate( - R.layout.candidates, null); + mCandidateViewContainer = (CandidateViewContainer) getLayoutInflater() + .inflate(R.layout.candidates, null); mCandidateViewContainer.initViews(); - mCandidateView = (CandidateView) mCandidateViewContainer.findViewById(R.id.candidates); + mCandidateView = (CandidateView) mCandidateViewContainer + .findViewById(R.id.candidates); mCandidateView.setService(this); setCandidatesViewShown(true); // TODO: Tecla - uncomment to enable suggestions - //return mCandidateViewContainer; + // return mCandidateViewContainer; } return null; } - @Override + @Override public void onStartInputView(EditorInfo attribute, boolean restarting) { - // In landscape mode, this method gets called without the input view being created. + // In landscape mode, this method gets called without the input view + // being created. if (mIMEView == null) { return; } - + mKeyboardSwitcher.makeKeyboards(false); TextEntryState.newSession(this); @@ -362,32 +368,39 @@ public void onStartInputView(EditorInfo attribute, boolean restarting) { mCompletionOn = false; mCompletions = null; mCapsLock = false; - - switch (attribute.inputType&EditorInfo.TYPE_MASK_CLASS) { + + switch (attribute.inputType & EditorInfo.TYPE_MASK_CLASS) { case EditorInfo.TYPE_CLASS_NUMBER: case EditorInfo.TYPE_CLASS_DATETIME: if (TeclaApp.persistence.isMorseModeEnabled()) - mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_MORSE, attribute.imeOptions); + mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_MORSE, + attribute.imeOptions); else - mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_SYMBOLS, attribute.imeOptions); + mKeyboardSwitcher.setKeyboardMode( + KeyboardSwitcher.MODE_SYMBOLS, attribute.imeOptions); break; case EditorInfo.TYPE_CLASS_PHONE: if (TeclaApp.persistence.isMorseModeEnabled()) - mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_MORSE, attribute.imeOptions); + mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_MORSE, + attribute.imeOptions); else - mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_PHONE, attribute.imeOptions); + mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_PHONE, + attribute.imeOptions); break; case EditorInfo.TYPE_CLASS_TEXT: if (TeclaApp.persistence.isMorseModeEnabled()) - mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_MORSE, attribute.imeOptions); + mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_MORSE, + attribute.imeOptions); else { - mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_TEXT, attribute.imeOptions); - //startPrediction(); + mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_TEXT, + attribute.imeOptions); + // startPrediction(); mPredictionOn = true; // Make sure that passwords are not displayed in candidate view - int variation = attribute.inputType & EditorInfo.TYPE_MASK_VARIATION; - if (variation == EditorInfo.TYPE_TEXT_VARIATION_PASSWORD || - variation == EditorInfo.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD ) { + int variation = attribute.inputType + & EditorInfo.TYPE_MASK_VARIATION; + if (variation == EditorInfo.TYPE_TEXT_VARIATION_PASSWORD + || variation == EditorInfo.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD) { mPredictionOn = false; } if (variation == EditorInfo.TYPE_TEXT_VARIATION_EMAIL_ADDRESS @@ -398,16 +411,20 @@ public void onStartInputView(EditorInfo attribute, boolean restarting) { } if (variation == EditorInfo.TYPE_TEXT_VARIATION_EMAIL_ADDRESS) { mPredictionOn = false; - mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_EMAIL, attribute.imeOptions); + mKeyboardSwitcher.setKeyboardMode( + KeyboardSwitcher.MODE_EMAIL, attribute.imeOptions); } else if (variation == EditorInfo.TYPE_TEXT_VARIATION_URI) { mPredictionOn = false; - mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_URL, attribute.imeOptions); + mKeyboardSwitcher.setKeyboardMode( + KeyboardSwitcher.MODE_URL, attribute.imeOptions); } else if (variation == EditorInfo.TYPE_TEXT_VARIATION_SHORT_MESSAGE) { - mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_IM, attribute.imeOptions); + mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_IM, + attribute.imeOptions); } else if (variation == EditorInfo.TYPE_TEXT_VARIATION_FILTER) { mPredictionOn = false; } else if (variation == EditorInfo.TYPE_TEXT_VARIATION_WEB_EDIT_TEXT) { - // If it's a browser edit field and auto correct is not ON explicitly, then + // If it's a browser edit field and auto correct is not ON + // explicitly, then // disable auto correction, but keep suggestions on. if ((attribute.inputType & EditorInfo.TYPE_TEXT_FLAG_AUTO_CORRECT) == 0) { disableAutoCorrect = true; @@ -419,12 +436,13 @@ public void onStartInputView(EditorInfo attribute, boolean restarting) { mPredictionOn = false; disableAutoCorrect = true; } - // If it's not multiline and the autoCorrect flag is not set, then don't correct - if ((attribute.inputType & EditorInfo.TYPE_TEXT_FLAG_AUTO_CORRECT) == 0 && - (attribute.inputType & EditorInfo.TYPE_TEXT_FLAG_MULTI_LINE) == 0) { + // If it's not multiline and the autoCorrect flag is not set, + // then don't correct + if ((attribute.inputType & EditorInfo.TYPE_TEXT_FLAG_AUTO_CORRECT) == 0 + && (attribute.inputType & EditorInfo.TYPE_TEXT_FLAG_MULTI_LINE) == 0) { disableAutoCorrect = true; } - if ((attribute.inputType&EditorInfo.TYPE_TEXT_FLAG_AUTO_COMPLETE) != 0) { + if ((attribute.inputType & EditorInfo.TYPE_TEXT_FLAG_AUTO_COMPLETE) != 0) { mPredictionOn = false; mCompletionOn = true && isFullscreenMode(); } @@ -432,14 +450,17 @@ public void onStartInputView(EditorInfo attribute, boolean restarting) { } break; case EditorInfo.TYPE_NULL: - mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_NAV, attribute.imeOptions); + mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_NAV, + attribute.imeOptions); updateShiftKeyState(attribute); break; default: if (TeclaApp.persistence.isMorseModeEnabled()) - mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_MORSE, attribute.imeOptions); + mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_MORSE, + attribute.imeOptions); else - mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_TEXT, attribute.imeOptions); + mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_TEXT, + attribute.imeOptions); updateShiftKeyState(attribute); } mIMEView.closing(); @@ -447,7 +468,8 @@ public void onStartInputView(EditorInfo attribute, boolean restarting) { mPredicting = false; mDeleteCount = 0; setCandidatesViewShown(false); - if (mCandidateView != null) mCandidateView.setSuggestions(null, false, false, false); + if (mCandidateView != null) + mCandidateView.setSuggestions(null, false, false, false); loadSettings(); // Override auto correct if (disableAutoCorrect) { @@ -462,16 +484,17 @@ public void onStartInputView(EditorInfo attribute, boolean restarting) { } mPredictionOn = mPredictionOn && mCorrectionMode > 0; checkTutorial(attribute.privateImeOptions); - if (TRACE) Debug.startMethodTracing("/data/trace/latinime"); + if (TRACE) + Debug.startMethodTracing("/data/trace/latinime"); int thisKBMode = mKeyboardSwitcher.getKeyboardMode(); - if(mLastKeyboardMode != thisKBMode) { + if (mLastKeyboardMode != thisKBMode) { mLastKeyboardMode = thisKBMode; evaluateStartScanning(); } evaluateNavKbdTimeout(); } - + @Override public void onFinishInput() { super.onFinishInput(); @@ -483,8 +506,8 @@ public void onFinishInput() { @Override public void onUpdateSelection(int oldSelStart, int oldSelEnd, - int newSelStart, int newSelEnd, - int candidatesStart, int candidatesEnd) { + int newSelStart, int newSelEnd, int candidatesStart, + int candidatesEnd) { super.onUpdateSelection(oldSelStart, oldSelEnd, newSelStart, newSelEnd, candidatesStart, candidatesEnd); @@ -494,8 +517,9 @@ public void onUpdateSelection(int oldSelStart, int oldSelEnd, } else { // If the current selection in the text view changes, we should // clear whatever candidate text we have. - if (mComposing.length() > 0 && mPredicting && (newSelStart != candidatesEnd - || newSelEnd != candidatesEnd)) { + if (mComposing.length() > 0 + && mPredicting + && (newSelStart != candidatesEnd || newSelEnd != candidatesEnd)) { mComposing.setLength(0); mPredicting = false; updateSuggestions(); @@ -504,7 +528,8 @@ public void onUpdateSelection(int oldSelStart, int oldSelEnd, if (ic != null) { ic.finishComposingText(); } - } else if (!mPredicting && !mJustAccepted + } else if (!mPredicting + && !mJustAccepted && TextEntryState.getState() == TextEntryState.STATE_ACCEPTED_DEFAULT) { TextEntryState.reset(); } @@ -519,7 +544,8 @@ public void hideWindow() { TeclaApp.highlighter.stopSelfScanning(); TeclaApp.highlighter.clear(); } - if (TRACE) Debug.stopMethodTracing(); + if (TRACE) + Debug.stopMethodTracing(); if (mOptionsDialog != null && mOptionsDialog.isShowing()) { mOptionsDialog.dismiss(); mOptionsDialog = null; @@ -535,18 +561,19 @@ public void hideWindow() { @Override public boolean onEvaluateFullscreenMode() { // never go to fullscreen mode - //return super.onEvaluateFullscreenMode(); + // return super.onEvaluateFullscreenMode(); return false; } @Override public void onDisplayCompletions(CompletionInfo[] completions) { -// if (false) { -// Log.i("foo", "Received completions:"); -// for (int i=0; i<(completions != null ? completions.length : 0); i++) { -// Log.i("foo", " #" + i + ": " + completions[i]); -// } -// } + // if (false) { + // Log.i("foo", "Received completions:"); + // for (int i=0; i<(completions != null ? completions.length : 0); i++) + // { + // Log.i("foo", " #" + i + ": " + completions[i]); + // } + // } if (mCompletionOn) { mCompletions = completions; if (completions == null) { @@ -555,11 +582,12 @@ public void onDisplayCompletions(CompletionInfo[] completions) { } List stringList = new ArrayList(); - for (int i=0; i<(completions != null ? completions.length : 0); i++) { + for (int i = 0; i < (completions != null ? completions.length : 0); i++) { CompletionInfo ci = completions[i]; - if (ci != null) stringList.add(ci.getText()); + if (ci != null) + stringList.add(ci.getText()); } - //CharSequence typedWord = mWord.getTypedWord(); + // CharSequence typedWord = mWord.getTypedWord(); mCandidateView.setSuggestions(stringList, true, true, true); mBestWord = null; setCandidatesViewShown(isCandidateStripVisible() || mCompletionOn); @@ -582,7 +610,6 @@ public void onComputeInsets(TeclaIMEService.Insets outInsets) { } } - /** * Hardware key down! */ @@ -590,16 +617,13 @@ public void onComputeInsets(TeclaIMEService.Insets outInsets) { public boolean onKeyDown(int keyCode, KeyEvent event) { switch (keyCode) { case KeyEvent.KEYCODE_BACK: - // FIXME: Tecla - Prevent soft input method from consuming the back key - /*if (event.getRepeatCount() == 0 && mInputView != null) { - if (mInputView.handleBack()) { - return true; - } else if (mTutorial != null) { - mTutorial.close(); - mTutorial = null; - } - } - break;*/ + // FIXME: Tecla - Prevent soft input method from consuming the back + // key + /* + * if (event.getRepeatCount() == 0 && mInputView != null) { if + * (mInputView.handleBack()) { return true; } else if (mTutorial != + * null) { mTutorial.close(); mTutorial = null; } } break; + */ return false; case KeyEvent.KEYCODE_DPAD_DOWN: case KeyEvent.KEYCODE_DPAD_UP: @@ -627,12 +651,14 @@ public boolean onKeyUp(int keyCode, KeyEvent event) { } // Enable shift key and DPAD to do selections if (TeclaApp.highlighter.isSoftIMEShowing() && mIMEView.isShifted()) { - event = new KeyEvent(event.getDownTime(), event.getEventTime(), - event.getAction(), event.getKeyCode(), event.getRepeatCount(), - event.getDeviceId(), event.getScanCode(), - KeyEvent.META_SHIFT_LEFT_ON | KeyEvent.META_SHIFT_ON); + event = new KeyEvent(event.getDownTime(), event.getEventTime(), + event.getAction(), event.getKeyCode(), + event.getRepeatCount(), event.getDeviceId(), + event.getScanCode(), KeyEvent.META_SHIFT_LEFT_ON + | KeyEvent.META_SHIFT_ON); InputConnection ic = getCurrentInputConnection(); - if (ic != null) ic.sendKeyEvent(event); + if (ic != null) + ic.sendKeyEvent(event); return true; } break; @@ -657,15 +683,14 @@ public void onWindowHidden() { @Override public boolean onEvaluateInputViewShown() { - return shouldShowIME()? - true:super.onEvaluateInputViewShown(); + return shouldShowIME() ? true : super.onEvaluateInputViewShown(); } private BroadcastReceiver mReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); - + if (action.equals(AudioManager.RINGER_MODE_CHANGED_ACTION)) // receive ringer mode changes to detect silent mode updateRingerMode(); @@ -674,14 +699,18 @@ public void onReceive(Context context, Intent intent) { handleSwitchEvent(new SwitchEvent(intent.getExtras())); } if (action.equals(TeclaShieldService.ACTION_SHIELD_CONNECTED)) { - TeclaStatic.logD(CLASS_TAG, "Received Shield connected intent."); - if (!mShieldConnected) mShieldConnected = true; + TeclaStatic + .logD(CLASS_TAG, "Received Shield connected intent."); + if (!mShieldConnected) + mShieldConnected = true; showIMEView(); evaluateStartScanning(); } if (action.equals(TeclaShieldService.ACTION_SHIELD_DISCONNECTED)) { - TeclaStatic.logD(CLASS_TAG, "Received Shield disconnected intent."); - if (mShieldConnected) mShieldConnected = false; + TeclaStatic.logD(CLASS_TAG, + "Received Shield disconnected intent."); + if (mShieldConnected) + mShieldConnected = false; evaluateStartScanning(); } if (action.equals(TeclaApp.ACTION_SHOW_IME)) { @@ -689,31 +718,36 @@ public void onReceive(Context context, Intent intent) { showIMEView(); evaluateStartScanning(); evaluateNavKbdTimeout(); - //TODO: Assume/force persistent keyboard preference + // TODO: Assume/force persistent keyboard preference } if (action.equals(TeclaApp.ACTION_HIDE_IME)) { TeclaStatic.logD(CLASS_TAG, "Received hide IME intent."); hideSoftIME(); } if (action.equals(TeclaApp.ACTION_START_FS_SWITCH_MODE)) { - TeclaStatic.logD(CLASS_TAG, "Received start fullscreen switch mode intent."); + TeclaStatic.logD(CLASS_TAG, + "Received start fullscreen switch mode intent."); startFullScreenSwitchMode(500); } if (action.equals(TeclaApp.ACTION_STOP_FS_SWITCH_MODE)) { - TeclaStatic.logD(CLASS_TAG, "Received stop fullscreen switch mode intent."); + TeclaStatic.logD(CLASS_TAG, + "Received stop fullscreen switch mode intent."); stopFullScreenSwitchMode(); } if (action.equals(Highlighter.ACTION_START_SCANNING)) { - TeclaStatic.logD(CLASS_TAG, "Received start scanning IME intent."); + TeclaStatic.logD(CLASS_TAG, + "Received start scanning IME intent."); evaluateStartScanning(); } if (action.equals(Highlighter.ACTION_STOP_SCANNING)) { - TeclaStatic.logD(CLASS_TAG, "Received stop scanning IME intent."); + TeclaStatic.logD(CLASS_TAG, + "Received stop scanning IME intent."); evaluateStartScanning(); } if (action.equals(TeclaApp.ACTION_INPUT_STRING)) { TeclaStatic.logD(CLASS_TAG, "Received input string intent."); - String input_string = intent.getExtras().getString(TeclaApp.EXTRA_INPUT_STRING); + String input_string = intent.getExtras().getString( + TeclaApp.EXTRA_INPUT_STRING); typeInputString(input_string); } if (action.equals(TeclaApp.ACTION_ENABLE_MORSE)) { @@ -732,7 +766,7 @@ public void onReceive(Context context, Intent intent) { } } }; - + private void commitTyped(InputConnection inputConnection) { if (mPredicting) { mPredicting = false; @@ -742,7 +776,8 @@ private void commitTyped(InputConnection inputConnection) { } mCommittedLength = mComposing.length(); TextEntryState.acceptedTyped(mComposing); - mAutoDictionary.addWord(mComposing.toString(), FREQUENCY_FOR_TYPED); + mAutoDictionary.addWord(mComposing.toString(), + FREQUENCY_FOR_TYPED); } updateSuggestions(); } @@ -750,13 +785,14 @@ private void commitTyped(InputConnection inputConnection) { private void postUpdateShiftKeyState(int delay) { mHandler.removeMessages(MSG_UPDATE_SHIFT_STATE); - mHandler.sendMessageDelayed(mHandler.obtainMessage(MSG_UPDATE_SHIFT_STATE), delay); + mHandler.sendMessageDelayed( + mHandler.obtainMessage(MSG_UPDATE_SHIFT_STATE), delay); } public void updateShiftKeyState(EditorInfo attr) { InputConnection ic = getCurrentInputConnection(); - if (attr != null && mIMEView != null && mKeyboardSwitcher.isAlphabetMode() - && ic != null) { + if (attr != null && mIMEView != null + && mKeyboardSwitcher.isAlphabetMode() && ic != null) { int caps = 0; EditorInfo ei = getCurrentInputEditorInfo(); if (mAutoCap && ei != null && ei.inputType != EditorInfo.TYPE_NULL) { @@ -768,10 +804,12 @@ public void updateShiftKeyState(EditorInfo attr) { private void swapPunctuationAndSpace() { final InputConnection ic = getCurrentInputConnection(); - if (ic == null) return; + if (ic == null) + return; CharSequence lastTwo = ic.getTextBeforeCursor(2, 0); if (lastTwo != null && lastTwo.length() == 2 - && lastTwo.charAt(0) == KEYCODE_SPACE && isSentenceSeparator(lastTwo.charAt(1))) { + && lastTwo.charAt(0) == KEYCODE_SPACE + && isSentenceSeparator(lastTwo.charAt(1))) { ic.beginBatchEdit(); ic.deleteSurroundingText(2, 0); ic.commitText(lastTwo.charAt(1) + " ", 1); @@ -781,14 +819,17 @@ private void swapPunctuationAndSpace() { } private void doubleSpace() { - //if (!mAutoPunctuate) return; - if (mCorrectionMode == Suggest.CORRECTION_NONE) return; + // if (!mAutoPunctuate) return; + if (mCorrectionMode == Suggest.CORRECTION_NONE) + return; final InputConnection ic = getCurrentInputConnection(); - if (ic == null) return; + if (ic == null) + return; CharSequence lastThree = ic.getTextBeforeCursor(3, 0); if (lastThree != null && lastThree.length() == 3 && Character.isLetterOrDigit(lastThree.charAt(0)) - && lastThree.charAt(1) == KEYCODE_SPACE && lastThree.charAt(2) == KEYCODE_SPACE) { + && lastThree.charAt(1) == KEYCODE_SPACE + && lastThree.charAt(2) == KEYCODE_SPACE) { ic.beginBatchEdit(); ic.deleteSurroundingText(2, 0); ic.commitText(". ", 1); @@ -816,55 +857,52 @@ public void onKey(int primaryCode, int[] keyCodes) { if (TeclaApp.persistence.isRepeatingKey() && primaryCode != TeclaKeyboard.KEYCODE_REPEAT_LOCK - && !TeclaApp.persistence.isFullscreenSwitchEnabled()) stopRepeatingKey(); + && !TeclaApp.persistence.isFullscreenSwitchEnabled()) + stopRepeatingKey(); if (keyCodes != null && keyCodes.length > 0) { TeclaStatic.logD(CLASS_TAG, "Keycode: " + keyCodes[0]); } - - if (primaryCode != Keyboard.KEYCODE_DELETE || - when > mLastKeyTime + QUICK_PRESS) { + + if (primaryCode != Keyboard.KEYCODE_DELETE + || when > mLastKeyTime + QUICK_PRESS) { mDeleteCount = 0; } mLastKeyTime = when; /** - * Primary code processed with if-else statements for non constant comparisons, - * otherwise switch-case is used. + * Primary code processed with if-else statements for non constant + * comparisons, otherwise switch-case is used. */ if (primaryCode == TeclaKeyboardView.KEYCODE_STEPOUT) { TeclaApp.highlighter.externalstepOut(); TeclaStatic.logD(CLASS_TAG, "Hidden key.Stepping out..."); - }/* else if (primaryCode == TeclaKeyboardView.KEYCODE_DICTATION) { - //TODO: Add dictation actions here - if(TeclaApp.desktop==null) - TeclaApp.desktop=new TeclaDesktopClient(TeclaApp.getInstance()); - - if(!TeclaApp.desktop.isConnected()&& !wifisearcherthread.isAlive()) { - wifisearcherthread=new Thread(desktopsearcher); - wifisearcherthread.start(); - } - TeclaApp.dict_lock=TeclaApp.mSendToPC; - TeclaApp.mSendToPC=false; - if (TeclaApp.DEBUG) Log.d ("mSendToPC",""+TeclaApp.mSendToPC); - TeclaApp.dictation_lock=new Object(); - TeclaApp.getInstance().startVoiceDictation(RecognizerIntent.EXTRA_LANGUAGE_MODEL); - } else if (primaryCode == TeclaKeyboardView.KEYCODE_SEND_TO_PC) { - //TODO: Add send to pc handling here - if(TeclaApp.desktop==null) - TeclaApp.desktop=new TeclaDesktopClient(TeclaApp.getInstance()); - TeclaApp.mSendToPC=!TeclaApp.mSendToPC; - if (TeclaApp.DEBUG) - Log.d("voice","" + TeclaApp.desktop.isConnected() + " " + TeclaApp.mSendToPC + " " - + wifisearcherthread.isAlive() + " " + TeclaApp.connect_to_desktop); - if(TeclaApp.mSendToPC && TeclaApp.connect_to_desktop && !TeclaApp.desktop.isConnected()&& !wifisearcherthread.isAlive()) { - if (TeclaApp.DEBUG) Log.d("connection","entering new thread"); - wifisearcherthread=new Thread(wificonnector); - wifisearcherthread.start(); - } - else if(TeclaApp.desktop != null &&!TeclaApp.mSendToPC && TeclaApp.desktop.isConnected()){ - TeclaApp.desktop.disconnect(); - } - }*/ else { + }/* + * else if (primaryCode == TeclaKeyboardView.KEYCODE_DICTATION) { + * //TODO: Add dictation actions here if(TeclaApp.desktop==null) + * TeclaApp.desktop=new TeclaDesktopClient(TeclaApp.getInstance()); + * + * if(!TeclaApp.desktop.isConnected()&& !wifisearcherthread.isAlive()) { + * wifisearcherthread=new Thread(desktopsearcher); + * wifisearcherthread.start(); } TeclaApp.dict_lock=TeclaApp.mSendToPC; + * TeclaApp.mSendToPC=false; if (TeclaApp.DEBUG) Log.d + * ("mSendToPC",""+TeclaApp.mSendToPC); TeclaApp.dictation_lock=new + * Object(); + * TeclaApp.getInstance().startVoiceDictation(RecognizerIntent. + * EXTRA_LANGUAGE_MODEL); } else if (primaryCode == + * TeclaKeyboardView.KEYCODE_SEND_TO_PC) { //TODO: Add send to pc + * handling here if(TeclaApp.desktop==null) TeclaApp.desktop=new + * TeclaDesktopClient(TeclaApp.getInstance()); + * TeclaApp.mSendToPC=!TeclaApp.mSendToPC; if (TeclaApp.DEBUG) + * Log.d("voice","" + TeclaApp.desktop.isConnected() + " " + + * TeclaApp.mSendToPC + " " + wifisearcherthread.isAlive() + " " + + * TeclaApp.connect_to_desktop); if(TeclaApp.mSendToPC && + * TeclaApp.connect_to_desktop && !TeclaApp.desktop.isConnected()&& + * !wifisearcherthread.isAlive()) { if (TeclaApp.DEBUG) + * Log.d("connection","entering new thread"); wifisearcherthread=new + * Thread(wificonnector); wifisearcherthread.start(); } else + * if(TeclaApp.desktop != null &&!TeclaApp.mSendToPC && + * TeclaApp.desktop.isConnected()){ TeclaApp.desktop.disconnect(); } } + */else { switch (primaryCode) { case Keyboard.KEYCODE_DELETE: handleBackspace(); @@ -901,7 +939,7 @@ else if(TeclaApp.desktop != null &&!TeclaApp.mSendToPC && TeclaApp.desktop.isCon handleSeparator(primaryCode); } else if (isSpecialKey(primaryCode)) { handleSpecialKey(primaryCode); - } else { + } else { handleCharacter(primaryCode, keyCodes); } // Cancel the just reverted state @@ -914,9 +952,9 @@ else if(TeclaApp.desktop != null &&!TeclaApp.mSendToPC && TeclaApp.desktop.isCon evaluateNavKbdTimeout(); } - /** * Handles key input on the Morse Code keyboard + * * @param primaryCode */ public void onKeyMorse(int primaryCode) { @@ -924,11 +962,12 @@ public void onKeyMorse(int primaryCode) { case TeclaKeyboard.KEYCODE_MORSE_DIT: case TeclaKeyboard.KEYCODE_MORSE_DAH: - + // Set a limit to the Morse sequence length - if (mTeclaMorse.getCurrentChar().length() < mTeclaMorse.getMorseDictionary().getMaxCodeLength()) { + if (mTeclaMorse.getCurrentChar().length() < mTeclaMorse + .getMorseDictionary().getMaxCodeLength()) { - if(primaryCode == TeclaKeyboard.KEYCODE_MORSE_DIT) + if (primaryCode == TeclaKeyboard.KEYCODE_MORSE_DIT) mTeclaMorse.addDit(); else mTeclaMorse.addDah(); @@ -949,37 +988,36 @@ public void onKeyMorse(int primaryCode) { updateSpaceKey(); mIMEView.invalidate(); } - + private void clearCharInProgress() { mTeclaMorse.clearCharInProgress(); } - + /** * Handles the space / end-of-character event (Morse keyboard only) - */ + */ private void handleMorseSpaceKey() { String currentChar = mTeclaMorse.getCurrentChar(); String curCharMatch = mTeclaMorse.morseToChar(currentChar); clearCharInProgress(); - + if (currentChar.length() == 0) { getCurrentInputConnection().commitText(" ", 1); - - } - else { + + } else { if (curCharMatch != null) { if (curCharMatch.contentEquals("↵")) { sendDownUpKeyEvents(KeyEvent.KEYCODE_ENTER); } else if (curCharMatch.contentEquals("DEL")) { - handleMorseBackspace(false); + handleMorseBackspace(false); } else if (curCharMatch.contentEquals("✓")) { updateSpaceKey(); handleSpecialKey(Keyboard.KEYCODE_DONE); } else if (curCharMatch.contentEquals("space")) { getCurrentInputConnection().commitText(" ", 1); } else if (curCharMatch.contentEquals("⇪")) { - int[] shift = {Keyboard.KEYCODE_SHIFT}; + int[] shift = { Keyboard.KEYCODE_SHIFT }; emulateKeyPress(shift); } else if (curCharMatch.contentEquals("↶")) { updateSpaceKey(); @@ -992,7 +1030,8 @@ private void handleMorseSpaceKey() { curCharMatch = curCharMatch.toUpperCase(); } - getCurrentInputConnection().commitText(curCharMatch, curCharMatch.length()); + getCurrentInputConnection().commitText(curCharMatch, + curCharMatch.length()); } } } @@ -1000,6 +1039,7 @@ private void handleMorseSpaceKey() { /** * Handles the backspace event (Morse keyboard only) + * * @param clearEnabled */ private void handleMorseBackspace(boolean clearEnabled) { @@ -1007,13 +1047,13 @@ private void handleMorseBackspace(boolean clearEnabled) { // otherwise, send through a backspace keypress if (mTeclaMorse.getCurrentChar().length() > 0 && clearEnabled) { clearCharInProgress(); - }else { + } else { sendDownUpKeyEvents(KeyEvent.KEYCODE_DEL); clearCharInProgress(); updateSpaceKey(); } } - + /** * Updates the state of the Space key (Morse keyboard only) */ @@ -1022,28 +1062,30 @@ private void updateSpaceKey() { String charac = mTeclaMorse.morseToChar(sequence); mSpaceKey = mIMEView.getKeyboard().getMorseSpaceKey(); mSpaceKeyIndex = mIMEView.getKeyboard().getMorseSpaceKeyIndex(); - + if (mSpaceKey == null) return; if (charac == null && sequence.length() > 0) mSpaceKey.label = sequence; - else if (!sequence.equals("") && - sequence.length() <= mTeclaMorse.getMorseDictionary().getMaxCodeLength()) { - //Update the key label according the current character + else if (!sequence.equals("") + && sequence.length() <= mTeclaMorse.getMorseDictionary() + .getMaxCodeLength()) { + // Update the key label according the current character if (mIMEView.getKeyboard().isShifted()) { charac = charac.toUpperCase(); } mSpaceKey.label = charac + " " + sequence; mSpaceKey.icon = null; } - + else { - //Icon should take precedence over label, but it does not work, - //so set label to null + // Icon should take precedence over label, but it does not work, + // so set label to null mSpaceKey.label = null; - mSpaceKey.icon = TeclaApp.getInstance().getResources().getDrawable(R.drawable.sym_keyboard_space); + mSpaceKey.icon = TeclaApp.getInstance().getResources() + .getDrawable(R.drawable.sym_keyboard_space); } mIMEView.invalidateKey(mSpaceKeyIndex); @@ -1051,7 +1093,8 @@ else if (!sequence.equals("") && public void onText(CharSequence text) { InputConnection ic = getCurrentInputConnection(); - if (ic == null) return; + if (ic == null) + return; ic.beginBatchEdit(); if (mPredicting) { commitTyped(ic); @@ -1065,7 +1108,8 @@ public void onText(CharSequence text) { private void handleBackspace() { boolean deleteChar = false; InputConnection ic = getCurrentInputConnection(); - if (ic == null) return; + if (ic == null) + return; if (mPredicting) { final int length = mComposing.length(); if (length > 0) { @@ -1097,7 +1141,7 @@ private void handleBackspace() { } private void handleShift() { - //Keyboard currentKeyboard = mIMEView.getKeyboard(); + // Keyboard currentKeyboard = mIMEView.getKeyboard(); if (mKeyboardSwitcher.isAlphabetMode()) { // Alphabet keyboard checkToggleCapsLock(); @@ -1112,8 +1156,10 @@ private void handleCharacter(int primaryCode, int[] keyCodes) { CharSequence variants = null; TeclaKeyboard keyboard = mIMEView.getKeyboard(); Key key = keyboard.getKeyFromKeyCode(primaryCode); - if (key != null) variants = key.popupCharacters; - if (TeclaApp.persistence.isVariantsKeyOn() && variants != null && variants.length() > 0) { + if (key != null) + variants = key.popupCharacters; + if (TeclaApp.persistence.isVariantsKeyOn() && variants != null + && variants.length() > 0) { // Key has variants! mWasSymbols = mKeyboardSwitcher.isSymbols(); mWasShifted = keyboard.isShifted(); @@ -1148,7 +1194,8 @@ private void handleCharacter(int primaryCode, int[] keyCodes) { mIMEView.getKeyboard().setShifted(mWasShifted); evaluateStartScanning(); } else { - if (isAlphabet(primaryCode) && isPredictionOn() && !isCursorTouchingWord()) { + if (isAlphabet(primaryCode) && isPredictionOn() + && !isCursorTouchingWord()) { if (!mPredicting) { mPredicting = true; mComposing.setLength(0); @@ -1156,12 +1203,14 @@ private void handleCharacter(int primaryCode, int[] keyCodes) { } } if (mIMEView.isShifted()) { - // TODO: This doesn't work with ß, need to fix it in the next release. + // TODO: This doesn't work with ß, need to fix it in the next + // release. if (keyCodes == null || keyCodes[0] < Character.MIN_CODE_POINT || keyCodes[0] > Character.MAX_CODE_POINT) { return; } - primaryCode = new String(keyCodes, 0, 1).toUpperCase().charAt(0); + primaryCode = new String(keyCodes, 0, 1).toUpperCase() + .charAt(0); } if (mPredicting) { if (mIMEView.isShifted() && mComposing.length() == 0) { @@ -1175,18 +1224,19 @@ private void handleCharacter(int primaryCode, int[] keyCodes) { } postUpdateSuggestions(); } else { - sendKeyChar((char)primaryCode); + sendKeyChar((char) primaryCode); } updateShiftKeyState(getCurrentInputEditorInfo()); measureCps(); - TextEntryState.typedCharacter((char) primaryCode, isWordSeparator(primaryCode)); + TextEntryState.typedCharacter((char) primaryCode, + isWordSeparator(primaryCode)); if (mKeyboardSwitcher.isVariants()) { doVariantsExit(primaryCode); evaluateStartScanning(); } } } - + private void handleSeparator(int primaryCode) { boolean pickedDefault = false; // Handle separator @@ -1195,27 +1245,30 @@ private void handleSeparator(int primaryCode) { ic.beginBatchEdit(); } if (mPredicting) { - // In certain languages where single quote is a separator, it's better - // not to auto correct, but accept the typed word. For instance, - // in Italian dov' should not be expanded to dove' because the elision + // In certain languages where single quote is a separator, it's + // better + // not to auto correct, but accept the typed word. For instance, + // in Italian dov' should not be expanded to dove' because the + // elision // requires the last vowel to be removed. - if (mAutoCorrectOn && primaryCode != '\'' && - (mJustRevertedSeparator == null - || mJustRevertedSeparator.length() == 0 - || mJustRevertedSeparator.charAt(0) != primaryCode)) { + if (mAutoCorrectOn + && primaryCode != '\'' + && (mJustRevertedSeparator == null + || mJustRevertedSeparator.length() == 0 || mJustRevertedSeparator + .charAt(0) != primaryCode)) { pickDefaultSuggestion(); pickedDefault = true; } else { commitTyped(ic); } } - sendKeyChar((char)primaryCode); + sendKeyChar((char) primaryCode); TextEntryState.typedCharacter((char) primaryCode, true); - if (TextEntryState.getState() == TextEntryState.STATE_PUNCTUATION_AFTER_ACCEPTED + if (TextEntryState.getState() == TextEntryState.STATE_PUNCTUATION_AFTER_ACCEPTED && primaryCode != KEYCODE_ENTER) { swapPunctuationAndSpace(); - } else if (isPredictionOn() && primaryCode == ' ') { - //else if (TextEntryState.STATE_SPACE_AFTER_ACCEPTED) { + } else if (isPredictionOn() && primaryCode == ' ') { + // else if (TextEntryState.STATE_SPACE_AFTER_ACCEPTED) { doubleSpace(); } if (pickedDefault && mBestWord != null) { @@ -1249,12 +1302,13 @@ private void toggleCapsLock() { private void postUpdateSuggestions() { mHandler.removeMessages(MSG_UPDATE_SUGGESTIONS); - mHandler.sendMessageDelayed(mHandler.obtainMessage(MSG_UPDATE_SUGGESTIONS), 100); + mHandler.sendMessageDelayed( + mHandler.obtainMessage(MSG_UPDATE_SUGGESTIONS), 100); } private boolean isPredictionOn() { boolean predictionOn = mPredictionOn; - //if (isFullscreenMode()) predictionOn &= mPredictionLandscape; + // if (isFullscreenMode()) predictionOn &= mPredictionLandscape; return predictionOn; } @@ -1273,9 +1327,10 @@ private void updateSuggestions() { return; } - List stringList = mSuggest.getSuggestions(mIMEView, mWord, false); + List stringList = mSuggest.getSuggestions(mIMEView, + mWord, false); boolean correctionAvailable = mSuggest.hasMinimalCorrection(); - //|| mCorrectionMode == mSuggest.CORRECTION_FULL; + // || mCorrectionMode == mSuggest.CORRECTION_FULL; CharSequence typedWord = mWord.getTypedWord(); // If we're in basic correct boolean typedWordValid = mSuggest.isValidWord(typedWord); @@ -1285,7 +1340,8 @@ private void updateSuggestions() { // Don't auto-correct words with multiple capital letter correctionAvailable &= !mWord.isMostlyCaps(); - mCandidateView.setSuggestions(stringList, false, typedWordValid, correctionAvailable); + mCandidateView.setSuggestions(stringList, false, typedWordValid, + correctionAvailable); if (stringList.size() > 0) { if (correctionAvailable && !typedWordValid && stringList.size() > 1) { mBestWord = stringList.get(1); @@ -1332,25 +1388,28 @@ public void pickSuggestionManually(int index, CharSequence suggestion) { if (mAutoSpace) { sendSpace(); } - // Fool the state watcher so that a subsequent backspace will not do a revert + // Fool the state watcher so that a subsequent backspace will not do a + // revert TextEntryState.typedCharacter((char) KEYCODE_SPACE, true); } private void pickSuggestion(CharSequence suggestion) { if (mCapsLock) { suggestion = suggestion.toString().toUpperCase(); - } else if (preferCapitalization() + } else if (preferCapitalization() || (mKeyboardSwitcher.isAlphabetMode() && mIMEView.isShifted())) { suggestion = suggestion.toString().toUpperCase().charAt(0) - + suggestion.subSequence(1, suggestion.length()).toString(); + + suggestion.subSequence(1, suggestion.length()).toString(); } InputConnection ic = getCurrentInputConnection(); if (ic != null) { ic.commitText(suggestion, 1); } // Add the word to the auto dictionary if it's not a known word - if (mAutoDictionary.isValidWord(suggestion) || !mSuggest.isValidWord(suggestion)) { - mAutoDictionary.addWord(suggestion.toString(), FREQUENCY_FOR_PICKED); + if (mAutoDictionary.isValidWord(suggestion) + || !mSuggest.isValidWord(suggestion)) { + mAutoDictionary + .addWord(suggestion.toString(), FREQUENCY_FOR_PICKED); } mPredicting = false; mCommittedLength = suggestion.length(); @@ -1362,15 +1421,14 @@ private void pickSuggestion(CharSequence suggestion) { private boolean isCursorTouchingWord() { InputConnection ic = getCurrentInputConnection(); - if (ic == null) return false; + if (ic == null) + return false; CharSequence toLeft = ic.getTextBeforeCursor(1, 0); CharSequence toRight = ic.getTextAfterCursor(1, 0); - if (!TextUtils.isEmpty(toLeft) - && !isWordSeparator(toLeft.charAt(0))) { + if (!TextUtils.isEmpty(toLeft) && !isWordSeparator(toLeft.charAt(0))) { return true; } - if (!TextUtils.isEmpty(toRight) - && !isWordSeparator(toRight.charAt(0))) { + if (!TextUtils.isEmpty(toRight) && !isWordSeparator(toRight.charAt(0))) { return true; } return false; @@ -1383,10 +1441,12 @@ public void revertLastWord(boolean deleteChar) { mPredicting = true; ic.beginBatchEdit(); mJustRevertedSeparator = ic.getTextBeforeCursor(1, 0); - if (deleteChar) ic.deleteSurroundingText(1, 0); + if (deleteChar) + ic.deleteSurroundingText(1, 0); int toDelete = mCommittedLength; - CharSequence toTheLeft = ic.getTextBeforeCursor(mCommittedLength, 0); - if (toTheLeft != null && toTheLeft.length() > 0 + CharSequence toTheLeft = ic + .getTextBeforeCursor(mCommittedLength, 0); + if (toTheLeft != null && toTheLeft.length() > 0 && isWordSeparator(toTheLeft.charAt(0))) { toDelete--; } @@ -1407,17 +1467,17 @@ protected String getWordSeparators() { public boolean isWordSeparator(int code) { String separators = getWordSeparators(); - return separators.contains(String.valueOf((char)code)); + return separators.contains(String.valueOf((char) code)); } public boolean isSentenceSeparator(int code) { - return mSentenceSeparators.contains(String.valueOf((char)code)); + return mSentenceSeparators.contains(String.valueOf((char) code)); } private void sendSpace() { - sendKeyChar((char)KEYCODE_SPACE); + sendKeyChar((char) KEYCODE_SPACE); updateShiftKeyState(getCurrentInputEditorInfo()); - //onKey(KEY_SPACE[0], KEY_SPACE); + // onKey(KEY_SPACE[0], KEY_SPACE); } public boolean preferCapitalization() { @@ -1426,7 +1486,7 @@ public boolean preferCapitalization() { public void swipeRight() { if (TeclaKeyboardView.DEBUG_AUTO_PLAY) { - ClipboardManager cm = ((ClipboardManager)getSystemService(CLIPBOARD_SERVICE)); + ClipboardManager cm = ((ClipboardManager) getSystemService(CLIPBOARD_SERVICE)); CharSequence text = cm.getText(); if (!TextUtils.isEmpty(text)) { mIMEView.startPlaying(text.toString()); @@ -1435,7 +1495,7 @@ public void swipeRight() { } public void swipeLeft() { - //handleBackspace(); + // handleBackspace(); } public void swipeDown() { @@ -1443,7 +1503,7 @@ public void swipeDown() { } public void swipeUp() { - //launchSettings(); + // launchSettings(); } public void onPress(int primaryCode) { @@ -1451,8 +1511,7 @@ public void onPress(int primaryCode) { if (TeclaApp.persistence.getMorseKeyMode() == SINGLE_KEY_MODE) { evaluateMorsePress(); } - } - else { + } else { vibrate(); playKeySound(primaryCode); } @@ -1465,7 +1524,7 @@ public void onRelease(int primaryCode) { evaluateEndOfChar(); } } - //vibrate(); + // vibrate(); } // update flags for silent mode @@ -1477,7 +1536,7 @@ private void updateRingerMode() { mSilentMode = (mAudioManager.getRingerMode() != AudioManager.RINGER_MODE_NORMAL); } } - + private void checkRingerMode() { // if mAudioManager is null, we don't have the ringer state yet // mAudioManager will be set by updateRingerMode @@ -1499,7 +1558,7 @@ private void playKeySound(int primaryCode) { duration = 100; else duration = TeclaApp.persistence.getMorseTimeUnit(); - + switch (primaryCode) { case Keyboard.KEYCODE_DELETE: sound = AudioManager.FX_KEYPRESS_DELETE; @@ -1513,7 +1572,7 @@ private void playKeySound(int primaryCode) { sound = AudioManager.FX_KEYPRESS_SPACEBAR; mAudioManager.playSoundEffect(sound, FX_VOLUME); break; - + case TeclaKeyboard.KEYCODE_MORSE_DIT: mTone.startTone(mToneType, duration); break; @@ -1535,10 +1594,13 @@ private void vibrate() { } private void checkTutorial(String privateImeOptions) { - if (privateImeOptions == null) return; + if (privateImeOptions == null) + return; if (privateImeOptions.equals("com.android.setupwizard:ShowTutorial")) { - if (mTutorial == null) startTutorial(); - } else if (privateImeOptions.equals("com.android.setupwizard:HideTutorial")) { + if (mTutorial == null) + startTutorial(); + } else if (privateImeOptions + .equals("com.android.setupwizard:HideTutorial")) { if (mTutorial != null) { if (mTutorial.close()) { mTutorial = null; @@ -1548,7 +1610,8 @@ private void checkTutorial(String privateImeOptions) { } private void startTutorial() { - mHandler.sendMessageDelayed(mHandler.obtainMessage(MSG_START_TUTORIAL), 500); + mHandler.sendMessageDelayed(mHandler.obtainMessage(MSG_START_TUTORIAL), + 500); } void tutorialDone() { @@ -1556,7 +1619,8 @@ void tutorialDone() { } void promoteToUserDictionary(String word, int frequency) { - if (mUserDictionary.isValidWord(word)) return; + if (mUserDictionary.isValidWord(word)) + return; mUserDictionary.addWord(word, frequency); } @@ -1570,24 +1634,30 @@ private void launchSettings() { private void loadSettings() { // Get the settings preferences - SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(this); + SharedPreferences sp = PreferenceManager + .getDefaultSharedPreferences(this); mVibrateOn = sp.getBoolean(PREF_VIBRATE_ON, false); mSoundOn = sp.getBoolean(PREF_SOUND_ON, false); mAutoCap = sp.getBoolean(PREF_AUTO_CAP, true); mQuickFixes = sp.getBoolean(PREF_QUICK_FIXES, true); - // If there is no auto text data, then quickfix is forced to "on", so that the other options + // If there is no auto text data, then quickfix is forced to "on", so + // that the other options // will continue to work - if (AutoText.getSize(mIMEView) < 1) mQuickFixes = true; - //TODO: Tecla - changed default show_suggestions to false - // need to change back when the dictionary is ready! - //mShowSuggestions = sp.getBoolean(PREF_SHOW_SUGGESTIONS, true) & mQuickFixes; - mShowSuggestions = sp.getBoolean(PREF_SHOW_SUGGESTIONS, false) & mQuickFixes; - boolean autoComplete = sp.getBoolean(PREF_AUTO_COMPLETE, - getResources().getBoolean(R.bool.enable_autocorrect)) & mShowSuggestions; + if (AutoText.getSize(mIMEView) < 1) + mQuickFixes = true; + // TODO: Tecla - changed default show_suggestions to false + // need to change back when the dictionary is ready! + // mShowSuggestions = sp.getBoolean(PREF_SHOW_SUGGESTIONS, true) & + // mQuickFixes; + mShowSuggestions = sp.getBoolean(PREF_SHOW_SUGGESTIONS, false) + & mQuickFixes; + boolean autoComplete = sp.getBoolean(PREF_AUTO_COMPLETE, getResources() + .getBoolean(R.bool.enable_autocorrect)) + & mShowSuggestions; mAutoCorrectOn = mSuggest != null && (autoComplete || mQuickFixes); - mCorrectionMode = autoComplete - ? Suggest.CORRECTION_FULL - : (mQuickFixes ? Suggest.CORRECTION_BASIC : Suggest.CORRECTION_NONE); + mCorrectionMode = autoComplete ? Suggest.CORRECTION_FULL + : (mQuickFixes ? Suggest.CORRECTION_BASIC + : Suggest.CORRECTION_NONE); } private void showOptionsMenu() { @@ -1597,23 +1667,22 @@ private void showOptionsMenu() { builder.setNegativeButton(android.R.string.cancel, null); CharSequence itemSettings = getString(R.string.english_ime_settings); CharSequence itemInputMethod = getString(R.string.inputMethod); - builder.setItems(new CharSequence[] { - itemSettings, itemInputMethod}, + builder.setItems(new CharSequence[] { itemSettings, itemInputMethod }, new DialogInterface.OnClickListener() { - public void onClick(DialogInterface di, int position) { - di.dismiss(); - switch (position) { - case POS_SETTINGS: - launchSettings(); - break; - case POS_METHOD: - ((InputMethodManager) getSystemService(INPUT_METHOD_SERVICE)) - .showInputMethodPicker(); - break; - } - } - }); + public void onClick(DialogInterface di, int position) { + di.dismiss(); + switch (position) { + case POS_SETTINGS: + launchSettings(); + break; + case POS_METHOD: + ((InputMethodManager) getSystemService(INPUT_METHOD_SERVICE)) + .showInputMethodPicker(); + break; + } + } + }); builder.setTitle(getResources().getString(R.string.english_ime_name)); mOptionsDialog = builder.create(); Window window = mOptionsDialog.getWindow(); @@ -1634,7 +1703,8 @@ private void changeKeyboardMode() { updateShiftKeyState(getCurrentInputEditorInfo()); } - @Override protected void dump(FileDescriptor fd, PrintWriter fout, String[] args) { + @Override + protected void dump(FileDescriptor fd, PrintWriter fout, String[] args) { super.dump(fd, fout, args); final Printer p = new PrintWriterPrinter(fout); @@ -1654,7 +1724,7 @@ private void changeKeyboardMode() { } // Characters per second measurement - + private static final boolean PERF_DEBUG = false; private long mLastCpsTime; private static final int CPS_BUFFER_SIZE = 16; @@ -1662,21 +1732,26 @@ private void changeKeyboardMode() { private int mCpsIndex; private void measureCps() { - if (!TeclaIME.PERF_DEBUG) return; + if (!TeclaIME.PERF_DEBUG) + return; long now = System.currentTimeMillis(); - if (mLastCpsTime == 0) mLastCpsTime = now - 100; // Initial + if (mLastCpsTime == 0) + mLastCpsTime = now - 100; // Initial mCpsIntervals[mCpsIndex] = now - mLastCpsTime; mLastCpsTime = now; mCpsIndex = (mCpsIndex + 1) % CPS_BUFFER_SIZE; long total = 0; - for (int i = 0; i < CPS_BUFFER_SIZE; i++) total += mCpsIntervals[i]; + for (int i = 0; i < CPS_BUFFER_SIZE; i++) + total += mCpsIntervals[i]; System.out.println("CPS = " + ((CPS_BUFFER_SIZE * 1000f) / total)); } class AutoDictionary extends ExpandableDictionary { - // If the user touches a typed word 2 times or more, it will become valid. + // If the user touches a typed word 2 times or more, it will become + // valid. private static final int VALIDITY_THRESHOLD = 2 * FREQUENCY_FOR_PICKED; - // If the user touches a typed word 5 times or more, it will be added to the user dict. + // If the user touches a typed word 5 times or more, it will be added to + // the user dict. private static final int PROMOTION_THRESHOLD = 5 * FREQUENCY_FOR_PICKED; public AutoDictionary(Context context) { @@ -1693,22 +1768,24 @@ public boolean isValidWord(CharSequence word) { public void addWord(String word, int addFrequency) { final int length = word.length(); // Don't add very short or very long words. - if (length < 2 || length > getMaxWordLength()) return; + if (length < 2 || length > getMaxWordLength()) + return; super.addWord(word, addFrequency); final int freq = getWordFrequency(word); if (freq > PROMOTION_THRESHOLD) { - TeclaIME.this.promoteToUserDictionary(word, FREQUENCY_FOR_AUTO_ADD); + TeclaIME.this.promoteToUserDictionary(word, + FREQUENCY_FOR_AUTO_ADD); } } } - //TECLA CONSTANTS AND VARIABLES + // TECLA CONSTANTS AND VARIABLES /** * Tag used for logging in this class */ private static final String CLASS_TAG = "IME: "; - //TODO: Try moving these variables to TeclaApp class + // TODO: Try moving these variables to TeclaApp class private String mVoiceInputString; private int mLastKeyboardMode, mLastFullKeyboardMode; private boolean mShieldConnected; @@ -1722,87 +1799,101 @@ public void addWord(String word, int addFrequency) { private void initTeclaA11y() { // register to receive switch events from Tecla shield - registerReceiver(mReceiver, new IntentFilter(TeclaShieldService.ACTION_SHIELD_CONNECTED)); - registerReceiver(mReceiver, new IntentFilter(TeclaShieldService.ACTION_SHIELD_DISCONNECTED)); - registerReceiver(mReceiver, new IntentFilter(SwitchEvent.ACTION_SWITCH_EVENT_RECEIVED)); + registerReceiver(mReceiver, new IntentFilter( + TeclaShieldService.ACTION_SHIELD_CONNECTED)); + registerReceiver(mReceiver, new IntentFilter( + TeclaShieldService.ACTION_SHIELD_DISCONNECTED)); + registerReceiver(mReceiver, new IntentFilter( + SwitchEvent.ACTION_SWITCH_EVENT_RECEIVED)); registerReceiver(mReceiver, new IntentFilter(TeclaApp.ACTION_SHOW_IME)); registerReceiver(mReceiver, new IntentFilter(TeclaApp.ACTION_HIDE_IME)); - registerReceiver(mReceiver, new IntentFilter(TeclaApp.ACTION_ENABLE_MORSE)); - registerReceiver(mReceiver, new IntentFilter(TeclaApp.ACTION_DISABLE_MORSE)); - registerReceiver(mReceiver, new IntentFilter(TeclaApp.ACTION_START_FS_SWITCH_MODE)); - registerReceiver(mReceiver, new IntentFilter(TeclaApp.ACTION_STOP_FS_SWITCH_MODE)); - registerReceiver(mReceiver, new IntentFilter(Highlighter.ACTION_START_SCANNING)); - registerReceiver(mReceiver, new IntentFilter(Highlighter.ACTION_STOP_SCANNING)); - registerReceiver(mReceiver, new IntentFilter(TeclaApp.ACTION_INPUT_STRING)); - - mLastFullKeyboardMode = TeclaApp.persistence.isMorseModeEnabled() ? KeyboardSwitcher.MODE_MORSE : KeyboardSwitcher.MODE_TEXT; - mTeclaHandler = new Handler(); - mShieldConnected = false; - mWasSymbols = false; - mWasShifted = false; - + registerReceiver(mReceiver, new IntentFilter( + TeclaApp.ACTION_ENABLE_MORSE)); + registerReceiver(mReceiver, new IntentFilter( + TeclaApp.ACTION_DISABLE_MORSE)); + registerReceiver(mReceiver, new IntentFilter( + TeclaApp.ACTION_START_FS_SWITCH_MODE)); + registerReceiver(mReceiver, new IntentFilter( + TeclaApp.ACTION_STOP_FS_SWITCH_MODE)); + registerReceiver(mReceiver, new IntentFilter( + Highlighter.ACTION_START_SCANNING)); + registerReceiver(mReceiver, new IntentFilter( + Highlighter.ACTION_STOP_SCANNING)); + registerReceiver(mReceiver, new IntentFilter( + TeclaApp.ACTION_INPUT_STRING)); + + mLastFullKeyboardMode = TeclaApp.persistence.isMorseModeEnabled() ? KeyboardSwitcher.MODE_MORSE + : KeyboardSwitcher.MODE_TEXT; + mTeclaHandler = new Handler(); + mShieldConnected = false; + mWasSymbols = false; + mWasShifted = false; + if (TeclaApp.persistence.isPersistentKeyboardEnabled()) { TeclaApp.getInstance().queueSplash(); } } - + private void typeInputString(String input_string) { - Log.d(TeclaApp.TAG, CLASS_TAG + "Received input string: " + input_string); + Log.d(TeclaApp.TAG, CLASS_TAG + "Received input string: " + + input_string); mVoiceInputString = input_string; mTeclaHandler.removeCallbacks(mAutoPlayRunnable); mTeclaHandler.postDelayed(mAutoPlayRunnable, 1000); } - + public Runnable mAutoPlayRunnable = new Runnable() { public void run() { - //mIMEView.startPlaying(mVoiceInputString); + // mIMEView.startPlaying(mVoiceInputString); onText(mVoiceInputString); } - + }; - - //Used to track the duration of a single-key press + + // Used to track the duration of a single-key press private void startTimer() { mMorseStartTime = System.currentTimeMillis(); } - + /** * Starts the Morse repeat runnable + * * @param delay */ public void evaluateRepeating(long delay) { pauseMorseRepeating(); mTeclaHandler.postDelayed(mStartMorseRepeatRunnable, delay); } - + /** * Evaluates a Morse key press, based on the current key mode */ public void evaluateMorsePress() { - switch(TeclaApp.persistence.getMorseKeyMode()) { + switch (TeclaApp.persistence.getMorseKeyMode()) { case TRIPLE_KEY_MODE: evaluateRepeating(0); break; - + case DOUBLE_KEY_MODE: - int[] key = {mRepeatedKey}; + int[] key = { mRepeatedKey }; emulateKeyPress(key); break; - + case SINGLE_KEY_MODE: startTimer(); - //Play audio feedback while key is pressed + // Play audio feedback while key is pressed checkRingerMode(); if (mSoundOn && !mSilentMode) mTone.startTone(mToneType); break; } } - + /** * Handles a Morse key-up event in single-key mode + * * @return true if a dit/dah has been added, false otherwise */ private boolean handleSingleKeyUp() { @@ -1810,18 +1901,21 @@ private boolean handleSingleKeyUp() { mTone.stopTone(); long duration = System.currentTimeMillis() - mMorseStartTime; - if (mTeclaMorse.getCurrentChar().length() < mTeclaMorse.getMorseDictionary().getMaxCodeLength()) { - if (duration < TeclaApp.persistence.getMorseTimeUnit() * ERROR_MARGIN) { + if (mTeclaMorse.getCurrentChar().length() < mTeclaMorse + .getMorseDictionary().getMaxCodeLength()) { + if (duration < TeclaApp.persistence.getMorseTimeUnit() + * ERROR_MARGIN) { mTeclaMorse.addDit(); addedDitDah = true; } - else if (duration < (TeclaApp.persistence.getMorseTimeUnit() * 3) * ERROR_MARGIN) { + else if (duration < (TeclaApp.persistence.getMorseTimeUnit() * 3) + * ERROR_MARGIN) { mTeclaMorse.addDah(); addedDitDah = true; } } - + updateSpaceKey(); mIMEView.invalidate(); return addedDitDah; @@ -1835,32 +1929,33 @@ public void pauseMorseRepeating() { mTeclaHandler.removeCallbacks(mStartMorseRepeatRunnable); mTeclaHandler.removeCallbacks(mMorseEndOfCharRunnable); } - + /** * Runnable used to repeat an occurence of a Morse key */ private Runnable mRepeatMorseRunnable = new Runnable() { public void run() { final long start = SystemClock.uptimeMillis(); - int[] key = {mRepeatedKey}; + int[] key = { mRepeatedKey }; emulateKeyPress(key); - mTeclaHandler.postAtTime(this, start + TeclaApp.persistence.getRepeatFrequency()); + mTeclaHandler.postAtTime(this, + start + TeclaApp.persistence.getRepeatFrequency()); } }; - + /** * Runnable used to start the Morse key repetition process */ private Runnable mStartMorseRepeatRunnable = new Runnable() { public void run() { - int[] key = {mRepeatedKey}; + int[] key = { mRepeatedKey }; emulateKeyPress(key); int frequency = TeclaApp.persistence.getRepeatFrequency(); if (frequency != Persistence.NEVER_REPEAT) mTeclaHandler.postDelayed(mRepeatMorseRunnable, frequency); } }; - + /** * Runnable used to process a Morse end-of-character event */ @@ -1871,7 +1966,7 @@ public void run() { mIMEView.invalidate(); } }; - + /** * Evalutes the Morse end-of-character event, based on the current key mode */ @@ -1879,32 +1974,34 @@ private void evaluateEndOfChar() { switch (TeclaApp.persistence.getMorseKeyMode()) { case TRIPLE_KEY_MODE: break; - case DOUBLE_KEY_MODE: mTeclaHandler.removeCallbacks(mMorseEndOfCharRunnable); - mTeclaHandler.postDelayed(mMorseEndOfCharRunnable, 3 * TeclaApp.persistence.getMorseTimeUnit()); + mTeclaHandler.postDelayed(mMorseEndOfCharRunnable, + 3 * TeclaApp.persistence.getMorseTimeUnit()); break; case SINGLE_KEY_MODE: if (handleSingleKeyUp() == true) { mTeclaHandler.removeCallbacks(mMorseEndOfCharRunnable); - mTeclaHandler.postDelayed(mMorseEndOfCharRunnable, 3 * TeclaApp.persistence.getMorseTimeUnit()); + mTeclaHandler.postDelayed(mMorseEndOfCharRunnable, + 3 * TeclaApp.persistence.getMorseTimeUnit()); } break; } } - + /** * Handler of Morse switch events + * * @param switchEvent * @param action */ private void handleMorseSwitch(SwitchEvent switchEvent, int action) { - switch(action) { + switch (action) { case 1: - //Add a dit to the current Morse sequence (repeatable) + // Add a dit to the current Morse sequence (repeatable) if (switchEvent.isPressed(switchEvent.getSwitchChanges())) { mRepeatedKey = TeclaKeyboard.KEYCODE_MORSE_DIT; evaluateMorsePress(); @@ -1916,7 +2013,7 @@ private void handleMorseSwitch(SwitchEvent switchEvent, int action) { break; case 2: - //Add a dah to the current Morse sequence (repeatable) + // Add a dah to the current Morse sequence (repeatable) if (switchEvent.isPressed(switchEvent.getSwitchChanges())) { mRepeatedKey = TeclaKeyboard.KEYCODE_MORSE_DAH; evaluateMorsePress(); @@ -1928,15 +2025,15 @@ private void handleMorseSwitch(SwitchEvent switchEvent, int action) { break; case 3: - //Send through a space key event + // Send through a space key event if (switchEvent.isPressed(switchEvent.getSwitchChanges())) { - int[] key = {TeclaKeyboard.KEYCODE_MORSE_SPACEKEY}; + int[] key = { TeclaKeyboard.KEYCODE_MORSE_SPACEKEY }; emulateKeyPress(key); } break; case 4: - //Send through a backspace event (repeatable) + // Send through a backspace event (repeatable) if (switchEvent.isPressed(switchEvent.getSwitchChanges())) { mRepeatedKey = TeclaKeyboard.KEYCODE_MORSE_DELKEY; evaluateMorsePress(); @@ -1947,9 +2044,9 @@ private void handleMorseSwitch(SwitchEvent switchEvent, int action) { break; case 5: - //Hide the Morse IME view + // Hide the Morse IME view if (switchEvent.isPressed(switchEvent.getSwitchChanges())) { - int[] key = {Keyboard.KEYCODE_DONE}; + int[] key = { Keyboard.KEYCODE_DONE }; emulateKeyPress(key); } break; @@ -1957,42 +2054,50 @@ private void handleMorseSwitch(SwitchEvent switchEvent, int action) { break; } } - + /** * Switch events are processed here + * * @param switchEvent */ private void handleSwitchEvent(SwitchEvent switchEvent) { - + if (switchEvent.isAnyPressed()) { - if (TeclaApp.persistence.isRepeatingKey()) stopRepeatingKey(); + if (TeclaApp.persistence.isRepeatingKey()) + stopRepeatingKey(); } - - //Emulator issue (temporary fix): if typing too fast, or holding a long press - //while in auto-release mode, some switch events are null + + // Emulator issue (temporary fix): if typing too fast, or holding a long + // press + // while in auto-release mode, some switch events are null if (switchEvent.toString() == null) { Log.w(TeclaApp.TAG, "Captured null switch event"); return; } cancelNavKbdTimeout(); - if (!TeclaApp.highlighter.isSoftIMEShowing() && TeclaApp.persistence.isPersistentKeyboardEnabled()) { + if (!TeclaApp.highlighter.isSoftIMEShowing() + && TeclaApp.persistence.isPersistentKeyboardEnabled()) { showIMEView(); evaluateStartScanning(); } else { - - //Collect the mapped actions of the current switch - String[] switchActions = TeclaApp.persistence.getSwitchMap().get(switchEvent.toString()); - + + // Collect the mapped actions of the current switch + String[] switchActions = TeclaApp.persistence.getSwitchMap().get( + switchEvent.toString()); + if (mKeyboardSwitcher.isMorseMode()) { - //Switches have different actions when Morse keyboard is showing - handleMorseSwitch(switchEvent, Integer.parseInt(switchActions[1])); + // Switches have different actions when Morse keyboard is + // showing + handleMorseSwitch(switchEvent, + Integer.parseInt(switchActions[1])); } - + else { String action_tecla = switchActions[0]; - TeclaStatic.logI(TeclaApp.TAG, CLASS_TAG + "action_tecla: "+action_tecla.toString()); - switch(Integer.parseInt(action_tecla)) { + TeclaStatic.logI(TeclaApp.TAG, CLASS_TAG + "action_tecla: " + + action_tecla.toString()); + switch (Integer.parseInt(action_tecla)) { case SwitchEvent.ACTION_NEXT: if (switchEvent.isPressed(switchEvent.getSwitchChanges())) @@ -2020,41 +2125,55 @@ private void handleSwitchEvent(SwitchEvent switchEvent) { if (switchEvent.isReleased(switchEvent.getSwitchChanges())) { if (TeclaApp.persistence.isInverseScanningEnabled()) { if (TeclaApp.persistence.isInverseScanningChanged()) { - //Ignore event right after Inverse Scanning is Enabled - TeclaApp.persistence.unsetInverseScanningChanged(); - Log.w(TeclaApp.TAG, CLASS_TAG + "Ignoring switch event because Inverse Scanning was just enabled"); + // Ignore event right after Inverse Scanning is + // Enabled + TeclaApp.persistence + .unsetInverseScanningChanged(); + Log.w(TeclaApp.TAG, + CLASS_TAG + + "Ignoring switch event because Inverse Scanning was just enabled"); } else { selectHighlighted(false); } } } break; - + case SwitchEvent.ACTION_EMERGENCY: - TeclaApp.emergencyCallout.Callout(this); + if (switchEvent.isPressed(switchEvent.getSwitchChanges())) + TeclaApp.emergencyCallout.Callout(this); break; - + default: break; } } - - TeclaStatic.logD(CLASS_TAG, "Switch event received: " + - TeclaApp.getInstance().byte2Hex(switchEvent.getSwitchChanges()) + ":" + - TeclaApp.getInstance().byte2Hex(switchEvent.getSwitchStates())); - - TeclaStatic.logD(CLASS_TAG, "Byte handled: " + - TeclaApp.getInstance().byte2Hex(switchEvent.getSwitchStates()) + " at " + SystemClock.uptimeMillis()); + + TeclaStatic.logD( + CLASS_TAG, + "Switch event received: " + + TeclaApp.getInstance().byte2Hex( + switchEvent.getSwitchChanges()) + + ":" + + TeclaApp.getInstance().byte2Hex( + switchEvent.getSwitchStates())); + + TeclaStatic.logD( + CLASS_TAG, + "Byte handled: " + + TeclaApp.getInstance().byte2Hex( + switchEvent.getSwitchStates()) + " at " + + SystemClock.uptimeMillis()); } - - evaluateNavKbdTimeout(); + + evaluateNavKbdTimeout(); } - + /** * Determine weather the current keyboard should auto-hide. */ private void evaluateNavKbdTimeout() { - if(mKeyboardSwitcher.isNavigation()) { + if (mKeyboardSwitcher.isNavigation()) { resetNavKbdTimeout(); } else { cancelNavKbdTimeout(); @@ -2075,7 +2194,8 @@ private void cancelNavKbdTimeout() { private void resetNavKbdTimeout() { cancelNavKbdTimeout(); int navKbdTimeout = TeclaApp.persistence.getNavigationKeyboardTimeout(); - TeclaStatic.logD(CLASS_TAG, "Navigation keyboard timeout in: " + navKbdTimeout + " seconds"); + TeclaStatic.logD(CLASS_TAG, "Navigation keyboard timeout in: " + + navKbdTimeout + " seconds"); if (navKbdTimeout != Persistence.NEVER_AUTOHIDE) mTeclaHandler.postDelayed(hideNavKbdRunnable, navKbdTimeout * 1000); } @@ -2090,15 +2210,17 @@ public void run() { /** * Select the currently highlighted item. - * @param repeat true if a key should be repeated on hold, false otherwise. + * + * @param repeat + * true if a key should be repeated on hold, false otherwise. */ private void selectHighlighted(Boolean repeat) { - //FIXME: Repeat key has been implemented only for navigation keys... + // FIXME: Repeat key has been implemented only for navigation keys... // will disable it here for now. repeat = false; TeclaApp.highlighter.pauseSelfScanning(); if (TeclaApp.highlighter.getScanDepth() == Highlighter.DEPTH_KEY) { - //Selected item is a key + // Selected item is a key mKeyCodes = TeclaApp.highlighter.getCurrentKey().codes; if (repeat && isRepeatableWithTecla(mKeyCodes[0])) { mTeclaHandler.post(mRepeatKeyRunnable); @@ -2107,11 +2229,11 @@ private void selectHighlighted(Boolean repeat) { TeclaApp.highlighter.doSelectKey(mKeyCodes[0]); } } else { - //Selected item is a row + // Selected item is a row TeclaApp.highlighter.doSelectRow(); } } - + private boolean isMorseKeyboardKey(int keycode) { return (keycode == TeclaKeyboard.KEYCODE_MORSE_DIT) || (keycode == TeclaKeyboard.KEYCODE_MORSE_DAH) @@ -2120,8 +2242,7 @@ private boolean isMorseKeyboardKey(int keycode) { } private boolean isSpecialKey(int keycode) { - return ((keycode>=KeyEvent.KEYCODE_DPAD_UP) - && (keycode<=KeyEvent.KEYCODE_DPAD_CENTER)) + return ((keycode >= KeyEvent.KEYCODE_DPAD_UP) && (keycode <= KeyEvent.KEYCODE_DPAD_CENTER)) || (keycode == KeyEvent.KEYCODE_BACK) || (keycode == KeyEvent.KEYCODE_SEARCH) || (keycode == KeyEvent.KEYCODE_VOLUME_DOWN) @@ -2140,7 +2261,8 @@ private void handleSpecialKey(int keyEventCode) { hideAltNavKeyboard(); } if (keyEventCode == Keyboard.KEYCODE_DONE) { - if (!mKeyboardSwitcher.isNavigation() && !mKeyboardSwitcher.isVariants()) { + if (!mKeyboardSwitcher.isNavigation() + && !mKeyboardSwitcher.isVariants()) { // Closing mLastFullKeyboardMode = mKeyboardSwitcher.getKeyboardMode(); mWasShifted = keyboard.isShifted(); @@ -2153,7 +2275,7 @@ private void handleSpecialKey(int keyEventCode) { mKeyboardSwitcher.setKeyboardMode(mLastFullKeyboardMode); keyboard.setShifted(mWasShifted); } - + evaluateStartScanning(); } } else if (keyEventCode == KeyEvent.KEYCODE_BACK) { @@ -2161,14 +2283,14 @@ private void handleSpecialKey(int keyEventCode) { hideSoftIME(); } keyDownUp(keyEventCode); - } else if (keyEventCode == TeclaKeyboard.KEYCODE_REPEAT_LOCK) { + } else if (keyEventCode == TeclaKeyboard.KEYCODE_REPEAT_LOCK) { if (TeclaApp.persistence.isRepeatLockOn()) { stopRepeatingKey(); } else { TeclaApp.persistence.setRepeatLockOn(); redrawKeyboard(); } - } else if (keyEventCode == TeclaKeyboard.KEYCODE_VARIANTS) { + } else if (keyEventCode == TeclaKeyboard.KEYCODE_VARIANTS) { if (TeclaApp.persistence.isVariantsKeyOn()) { TeclaApp.persistence.setVariantsKeyOff(); } else { @@ -2179,21 +2301,25 @@ private void handleSpecialKey(int keyEventCode) { if (mKeyboardSwitcher.isNavigation()) { TeclaApp.getInstance().startVoiceActions(); } else { - TeclaApp.getInstance().startVoiceInput(RecognizerIntent.LANGUAGE_MODEL_FREE_FORM); + TeclaApp.getInstance().startVoiceInput( + RecognizerIntent.LANGUAGE_MODEL_FREE_FORM); } - } else if (keyEventCode == TeclaKeyboard.KEYCODE_ALTNAV) { - TeclaApp.persistence.setAltNavKeyboardOn(!TeclaApp.persistence.isAltNavKeyboardOn()); + } else if (keyEventCode == TeclaKeyboard.KEYCODE_ALTNAV) { + TeclaApp.persistence.setAltNavKeyboardOn(!TeclaApp.persistence + .isAltNavKeyboardOn()); redrawKeyboard(); } else { - if (TeclaApp.persistence.isRepeatLockOn() && !TeclaApp.persistence.isRepeatingKey() && isRepeatableWithTecla(keyEventCode)) { + if (TeclaApp.persistence.isRepeatLockOn() + && !TeclaApp.persistence.isRepeatingKey() + && isRepeatableWithTecla(keyEventCode)) { startRepeatingKey(keyEventCode); } else { keyDownUp(keyEventCode); } } } - - private void redrawKeyboard () { + + private void redrawKeyboard() { mLastKeyboardMode = mKeyboardSwitcher.getKeyboardMode(); mKeyboardSwitcher.setKeyboardMode(mLastKeyboardMode); TeclaKeyboard keyboard = mIMEView.getKeyboard(); @@ -2201,7 +2327,7 @@ private void redrawKeyboard () { keyboard.updateRepeatLockState(); mIMEView.invalidateAllKeys(); } - + private void hideAltNavKeyboard() { if (TeclaApp.persistence.isAltNavKeyboardOn()) { TeclaApp.persistence.setAltNavKeyboardOn(false); @@ -2220,21 +2346,21 @@ private void keyDownUp(int keyEventCode) { } private boolean isRepeatableWithTecla(int code) { - if (code == TeclaKeyboard.KEYCODE_DONE || - code == TeclaKeyboard.KEYCODE_VOICE || - code == TeclaKeyboard.KEYCODE_VARIANTS) { + if (code == TeclaKeyboard.KEYCODE_DONE + || code == TeclaKeyboard.KEYCODE_VOICE + || code == TeclaKeyboard.KEYCODE_VARIANTS) { return false; } return true; } - + private void startRepeatingKey(int keycode) { mTeclaHandler.removeCallbacks(mRepeatKeyRunnable); mRepeatingKeyCode = keycode; TeclaApp.persistence.setRepeatingKey(true); mTeclaHandler.post(mRepeatKeyRunnable); } - + private void stopRepeatingKey() { mTeclaHandler.removeCallbacks(mRepeatKeyRunnable); TeclaApp.persistence.setRepeatingKey(false); @@ -2245,7 +2371,8 @@ private void stopRepeatingKey() { private Runnable mRepeatKeyRunnable = new Runnable() { public void run() { keyDownUp(mRepeatingKeyCode); - mTeclaHandler.postDelayed(mRepeatKeyRunnable, TeclaApp.persistence.getScanDelay()); + mTeclaHandler.postDelayed(mRepeatKeyRunnable, + TeclaApp.persistence.getScanDelay()); } }; @@ -2256,30 +2383,32 @@ private void emulateKeyPress(int[] key_codes) { playKeySound(key_codes[0]); } - private void startFullScreenSwitchMode(int delay) { mTeclaHandler.removeCallbacks(mCreateSwitchRunnable); mTeclaHandler.postDelayed(mCreateSwitchRunnable, delay); - TeclaStatic.logD(CLASS_TAG, "Sent delayed broadcast to show fullscreen switch"); + TeclaStatic.logD(CLASS_TAG, + "Sent delayed broadcast to show fullscreen switch"); } - + /** * Runnable used to create full-screen switch overlay */ - private Runnable mCreateSwitchRunnable = new Runnable () { + private Runnable mCreateSwitchRunnable = new Runnable() { public void run() { if (TeclaApp.highlighter.isSoftIMEShowing()) { Display display = getDisplay(); if (mSwitchPopup == null) { - //Create single-switch pop-up - mSwitch = getLayoutInflater().inflate(R.layout.popup_fullscreen_transparent, null); + // Create single-switch pop-up + mSwitch = getLayoutInflater().inflate( + R.layout.popup_fullscreen_transparent, null); mSwitch.setOnTouchListener(mSwitchTouchListener); mSwitch.setOnClickListener(mSwitchClickListener); mSwitch.setOnLongClickListener(mSwitchLongPressListener); mSwitchPopup = new PopupWindow(mSwitch); } - if (mSwitchPopup.isShowing()) mSwitchPopup.dismiss(); + if (mSwitchPopup.isShowing()) + mSwitchPopup.dismiss(); mSwitchPopup.setWidth(display.getWidth()); mSwitchPopup.setHeight(display.getHeight()); mSwitchPopup.showAtLocation(mIMEView, Gravity.NO_GRAVITY, 0, 0); @@ -2296,11 +2425,12 @@ public void run() { * Listener for full-screen single switch long press */ private View.OnLongClickListener mSwitchLongPressListener = new View.OnLongClickListener() { - + public boolean onLongClick(View v) { if (!TeclaApp.persistence.isInverseScanningEnabled()) { launchSettings(); - //Doing this here again because the ACTION_UP event in the onTouch listener doesn't always work. + // Doing this here again because the ACTION_UP event in the + // onTouch listener doesn't always work. mSwitch.setBackgroundResource(R.drawable.screen_switch_background_normal); mSwitchPopup.setBackgroundDrawable(null); return true; @@ -2313,20 +2443,21 @@ public boolean onLongClick(View v) { * Listener for full-screen switch actions */ private View.OnTouchListener mSwitchTouchListener = new View.OnTouchListener() { - + public boolean onTouch(View v, MotionEvent event) { int changes = SwitchEvent.MASK_SWITCH_E1; int states = SwitchEvent.SWITCH_STATES_DEFAULT; switch (event.getAction()) { case MotionEvent.ACTION_DOWN: states &= ~changes; - injectSwitchEvent(changes, states); //Primary switch pressed + injectSwitchEvent(changes, states); // Primary switch pressed TeclaStatic.logD(CLASS_TAG, "Fullscreen switch down!"); - mSwitchPopup.setBackgroundDrawable(new ColorDrawable(R.color.switch_pressed)); + mSwitchPopup.setBackgroundDrawable(new ColorDrawable( + R.color.switch_pressed)); mSwitch.setBackgroundResource(R.drawable.screen_switch_background_pressed); break; case MotionEvent.ACTION_UP: - injectSwitchEvent(changes, states); //Primary switch released + injectSwitchEvent(changes, states); // Primary switch released TeclaStatic.logD(CLASS_TAG, "Fullscreen switch up!"); mSwitch.setBackgroundResource(R.drawable.screen_switch_background_normal); mSwitchPopup.setBackgroundDrawable(null); @@ -2338,10 +2469,11 @@ public boolean onTouch(View v, MotionEvent event) { } }; - private View.OnClickListener mSwitchClickListener = new View.OnClickListener() { - + private View.OnClickListener mSwitchClickListener = new View.OnClickListener() { + public void onClick(View v) { - //Doing this here again because the ACTION_UP event in the onTouch listener doesn't always work. + // Doing this here again because the ACTION_UP event in the onTouch + // listener doesn't always work. mSwitch.setBackgroundResource(R.drawable.screen_switch_background_normal); mSwitchPopup.setBackgroundDrawable(null); } @@ -2354,7 +2486,7 @@ private void stopFullScreenSwitchMode() { evaluateStartScanning(); TeclaApp.getInstance().showToast(R.string.fullscreen_disabled); } - + private boolean isFullScreenShowing() { if (mSwitchPopup != null) { if (mSwitchPopup.isShowing()) @@ -2362,7 +2494,7 @@ private boolean isFullScreenShowing() { } return false; } - + private void evaluateStartScanning() { if (TeclaApp.highlighter.isSoftIMEShowing()) { if (mShieldConnected || isFullScreenShowing()) { @@ -2371,14 +2503,16 @@ private void evaluateStartScanning() { TeclaApp.highlighter.stopSelfScanning(); } } else { - Log.w(TeclaApp.TAG, CLASS_TAG + "Could not reset scanning, InputView is not ready!"); + Log.w(TeclaApp.TAG, CLASS_TAG + + "Could not reset scanning, InputView is not ready!"); } } - + private Display getDisplay() { - return ((WindowManager) getSystemService(WINDOW_SERVICE)).getDefaultDisplay(); + return ((WindowManager) getSystemService(WINDOW_SERVICE)) + .getDefaultDisplay(); } - + private boolean shouldShowIME() { return TeclaApp.persistence.isPersistentKeyboardEnabled(); } @@ -2389,38 +2523,40 @@ private void showIMEView() { } else { showWindow(true); updateInputViewShown(); - + // Fixes https://github.com/jorgesilva/TeclaAccess/issues/3 if (TeclaApp.highlighter.isSoftIMEShowing()) { mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_NAV); } - // This call causes a looped intent call until the IME View is created + // This call causes a looped intent call until the IME View is + // created TeclaApp.getInstance().callShowSoftIMEWatchDog(350); } } - + private void hideSoftIME() { hideAltNavKeyboard(); hideWindow(); updateInputViewShown(); } - + // TODO: Consider moving to TeclaKeyboardView or TeclaKeyboard - private void populateVariants (CharSequence keyLabel, CharSequence popupChars) { + private void populateVariants(CharSequence keyLabel, CharSequence popupChars) { List keyList = mIMEView.getKeyboard().getKeys(); Key key = keyList.get(1); CharSequence sequence; - + key.label = keyLabel; key.codes = new int[1]; key.codes[0] = (int) keyLabel.charAt(0); - for (int i=0; i < popupChars.length(); i++) { - key = keyList.get(i+2); - sequence = popupChars.subSequence(i, i+1); + for (int i = 0; i < popupChars.length(); i++) { + key = keyList.get(i + 2); + sequence = popupChars.subSequence(i, i + 1); key.label = sequence; key.codes = new int[1]; key.codes[0] = (int) sequence.charAt(0); - TeclaStatic.logD(CLASS_TAG, "Populating char: " + sequence.toString()); + TeclaStatic.logD(CLASS_TAG, + "Populating char: " + sequence.toString()); } } @@ -2445,112 +2581,72 @@ private void doVariantsExit(int keyCode) { public KeyboardSwitcher getKeyboardSwitcher() { return mKeyboardSwitcher; } - -/* public void ConnectToDesktop(){ - Log.v("dictation","started connecting"); - if(TeclaApp.desktop ==null) - TeclaApp.desktop=new TeclaDesktopClient(TeclaApp.getInstance()); - - - if(!TeclaApp.desktop.isConnected()&&TeclaApp.connect_to_desktop) - new Thread(desktopsearcher).start(); - } - Runnable desktopsearcher=new Runnable(){ - public void run() { - // TODO Auto-generated method stub - - Log.v("dictation","attempting connection"); - - if(TeclaApp.desktop== null) - TeclaApp.desktop=new TeclaDesktopClient(TeclaApp.getInstance()); - TeclaApp.desktop.connect(); - - if(TeclaApp.desktop.isConnected()){ - Log.v("dictation","connected to Desktop"); - new Thread(wifipinger).start(); - new Thread(wifireceiver).start(); - } - } - - }; - private Runnable wifipinger=new Runnable(){ - - public void run() { - // TODO Auto-generated method stub - while(TeclaApp.desktop.isConnected()){ - TeclaApp.desktop.send("ping"); - try { - Thread.sleep(1000*2); - } catch (InterruptedException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - - wifi_ping_count++; - - Log.v("pinger",""+wifi_ping_count); - if(wifi_ping_count>5){ - TeclaApp.desktop.disconnect(); - } - } - - } - - }; - private Runnable wifireceiver=new Runnable(){ - - public void run() { - // TODO Auto-generated method stub - Log.v("connection","starting receiver"); - while(TeclaApp.desktop.isConnected()) - { - - String rec=TeclaApp.desktop.receive(); - if(rec!=null&&rec.equals("ping")){ - wifi_ping_count=0; - }else if(rec !=null && rec.equals("dictation")){ - onKey(TeclaKeyboardView.KEYCODE_DICTATION,null); - } - - } - } - - }; - - private Runnable wificonnector=new Runnable(){ + /* + * public void ConnectToDesktop(){ Log.v("dictation","started connecting"); + * if(TeclaApp.desktop ==null) TeclaApp.desktop=new + * TeclaDesktopClient(TeclaApp.getInstance()); + * + * + * if(!TeclaApp.desktop.isConnected()&&TeclaApp.connect_to_desktop) new + * Thread(desktopsearcher).start(); } Runnable desktopsearcher=new + * Runnable(){ + * + * public void run() { // TODO Auto-generated method stub + * + * Log.v("dictation","attempting connection"); + * + * if(TeclaApp.desktop== null) TeclaApp.desktop=new + * TeclaDesktopClient(TeclaApp.getInstance()); TeclaApp.desktop.connect(); + * + * if(TeclaApp.desktop.isConnected()){ + * Log.v("dictation","connected to Desktop"); new + * Thread(wifipinger).start(); new Thread(wifireceiver).start(); } } + * + * }; private Runnable wifipinger=new Runnable(){ + * + * public void run() { // TODO Auto-generated method stub + * while(TeclaApp.desktop.isConnected()){ TeclaApp.desktop.send("ping"); try + * { Thread.sleep(1000*2); } catch (InterruptedException e) { // TODO + * Auto-generated catch block e.printStackTrace(); } + * + * wifi_ping_count++; + * + * Log.v("pinger",""+wifi_ping_count); if(wifi_ping_count>5){ + * TeclaApp.desktop.disconnect(); } } + * + * } + * + * }; private Runnable wifireceiver=new Runnable(){ + * + * public void run() { // TODO Auto-generated method stub + * Log.v("connection","starting receiver"); + * while(TeclaApp.desktop.isConnected()) { + * + * String rec=TeclaApp.desktop.receive(); if(rec!=null&&rec.equals("ping")){ + * wifi_ping_count=0; }else if(rec !=null && rec.equals("dictation")){ + * onKey(TeclaKeyboardView.KEYCODE_DICTATION,null); } + * + * } } + * + * }; + * + * private Runnable wificonnector=new Runnable(){ + * + * public void run() { // TODO Auto-generated method stub + * Log.v("dictation","Started WiFiConnector"); if(TeclaApp.desktop!= null) + * TeclaApp.desktop=new TeclaDesktopClient(TeclaApp.getInstance()); while( + * TeclaApp.mSendToPC){ if(TeclaApp.mSendToPC && TeclaApp.connect_to_desktop + * && !TeclaApp.desktop.isConnected()) { + * Log.v("dictation","attempting connection"); TeclaApp.desktop.connect(); + * + * if(TeclaApp.desktop.isConnected()){ + * Log.v("dictation","connected to Desktop"); new + * Thread(wifipinger).start(); new Thread(wifireceiver).start(); // TODO + * :onConnect change the send to pc button to connect state } } else{ try { + * Thread.sleep(10000); } catch (InterruptedException e) { // TODO + * Auto-generated catch block e.printStackTrace(); } } } + * Log.v("dictation",""+wifisearcherthread.isAlive()); } }; + */ - public void run() { - // TODO Auto-generated method stub - Log.v("dictation","Started WiFiConnector"); - if(TeclaApp.desktop!= null) - TeclaApp.desktop=new TeclaDesktopClient(TeclaApp.getInstance()); - while( TeclaApp.mSendToPC){ - if(TeclaApp.mSendToPC && TeclaApp.connect_to_desktop && !TeclaApp.desktop.isConnected()) - { - Log.v("dictation","attempting connection"); - TeclaApp.desktop.connect(); - - if(TeclaApp.desktop.isConnected()){ - Log.v("dictation","connected to Desktop"); - new Thread(wifipinger).start(); - new Thread(wifireceiver).start(); - // TODO :onConnect change the send to pc button to connect state - } - } - else{ - try { - Thread.sleep(10000); - } catch (InterruptedException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - } - } - Log.v("dictation",""+wifisearcherthread.isAlive()); - } - }; -*/ - } - diff --git a/java/src/ca/idi/tekla/util/EmergencyCallout.java b/java/src/ca/idi/tekla/util/EmergencyCallout.java index e3824be..7049246 100644 --- a/java/src/ca/idi/tekla/util/EmergencyCallout.java +++ b/java/src/ca/idi/tekla/util/EmergencyCallout.java @@ -1,36 +1,77 @@ package ca.idi.tekla.util; +import java.util.concurrent.ExecutionException; + import android.content.Context; import ca.idi.tecla.framework.TeclaStatic; import ca.idi.tekla.TeclaApp; public class EmergencyCallout extends ca.idi.tekla.ime.TeclaIME { - + public void Callout(Context context) { - - TeclaStatic.logD(TeclaApp.CLASS_TAG, " Emergency proc context: " + context.toString()); - TeclaStatic.logD(TeclaApp.CLASS_TAG, " Emergency proc GPS Setting: " + emergency_GPS_setting()); - TeclaStatic.logD(TeclaApp.CLASS_TAG, " Emergency proc Phone number: " + emergency_phone_number()); - TeclaStatic.logD(TeclaApp.CLASS_TAG, " Emergency proc SMS number: " + emergency_SMS_number()); - TeclaStatic.logD(TeclaApp.CLASS_TAG, " Emergency proc Email address: "+ emergency_email_address()); - if(emergency_phone_number().length() > 0) { - new EmergencyPoneCall().execute(context); + + TeclaStatic.logD(TeclaApp.CLASS_TAG, " Emergency proc context: " + + context.toString()); + TeclaStatic.logD(TeclaApp.CLASS_TAG, " Emergency proc GPS Setting: " + + emergency_GPS_setting()); + TeclaStatic.logD(TeclaApp.CLASS_TAG, " Emergency proc Phone number: " + + emergency_phone_number()); + TeclaStatic.logD(TeclaApp.CLASS_TAG, " Emergency proc SMS number: " + + emergency_SMS_number()); + TeclaStatic.logD(TeclaApp.CLASS_TAG, " Emergency proc Email address: " + + emergency_email_address()); + if (emergency_phone_number().length() > 0) + makePhoneCall(context); + if (emergency_SMS_number().length() > 0) + makeSMS(context); + } + + public Boolean makePhoneCall(Context context) { + try { + if (new EmergencyPoneCall().execute(context).get()) + TeclaStatic.logD(TeclaApp.CLASS_TAG, + "Phone call succesfully initiated"); + } catch (InterruptedException e) { + TeclaStatic.logD(TeclaApp.CLASS_TAG, "Phone call error: " + e); + } catch (ExecutionException e) { + TeclaStatic.logD(TeclaApp.CLASS_TAG, "Phone call error: " + e); + } + return true; + } + + public Boolean makeSMS(Context context) { + try { + if (new EmergencySMS().execute(context).get()) + TeclaStatic.logD(TeclaApp.CLASS_TAG, + "SMS msg succesfully initiated"); + } catch (InterruptedException e) { + TeclaStatic.logD(TeclaApp.CLASS_TAG, "SMS error: " + e); + } catch (ExecutionException e) { + TeclaStatic.logD(TeclaApp.CLASS_TAG, "SMS error: " + e); } + return true; } - + public boolean emergency_GPS_setting() { return TeclaApp.persistence.getEmergencyGPSSetting(); } - + public String emergency_phone_number() { return TeclaApp.persistence.getEmergencyPhoneNumber().toString(); } - + public String emergency_SMS_number() { return TeclaApp.persistence.getEmergencySMSNumber().toString(); } - + public String emergency_email_address() { return TeclaApp.persistence.getEmergencyEmailAddress().toString(); } + + +/* Google maps link explanation + http://maps.google.com/maps?&z=14&ll=39.211374,-82.978277 + z for zoom + ll for lat/lon +*/ } diff --git a/java/src/ca/idi/tekla/util/EmergencyEmail.java b/java/src/ca/idi/tekla/util/EmergencyEmail.java new file mode 100644 index 0000000..6b8d6b1 --- /dev/null +++ b/java/src/ca/idi/tekla/util/EmergencyEmail.java @@ -0,0 +1,33 @@ +package ca.idi.tekla.util; + +import android.content.Context; +import android.content.Intent; +import android.net.Uri; +import android.os.AsyncTask; +import ca.idi.tecla.framework.TeclaStatic; +import ca.idi.tekla.TeclaApp; + +class EmergencyEmail extends AsyncTask { + + @Override + protected Boolean doInBackground(Context... params) { + Context context = params[0]; + Boolean succes = false; + try { + Intent intent = new Intent(Intent.ACTION_SENDTO, Uri.parse("smsto:"+emergency_SMS_number())); + intent.putExtra("sms_body", "Shoot! Shoot! Shoot motherf*cker!"); + //intent.addFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK); + intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + context.startActivity(intent); + succes = true; + } catch (Exception e) { + TeclaStatic.logD(TeclaApp.CLASS_TAG, " doInBackground error: " + e); + } + return succes; + } + + public String emergency_SMS_number() { + return TeclaApp.persistence.getEmergencySMSNumber().toString(); + } + +} \ No newline at end of file diff --git a/java/src/ca/idi/tekla/util/EmergencyPhoneCall.java b/java/src/ca/idi/tekla/util/EmergencyPhoneCall.java index 75c6069..c3ab301 100644 --- a/java/src/ca/idi/tekla/util/EmergencyPhoneCall.java +++ b/java/src/ca/idi/tekla/util/EmergencyPhoneCall.java @@ -7,22 +7,22 @@ import ca.idi.tecla.framework.TeclaStatic; import ca.idi.tekla.TeclaApp; -class EmergencyPoneCall extends AsyncTask { +class EmergencyPoneCall extends AsyncTask { @Override - protected Void doInBackground(Context... params) { + protected Boolean doInBackground(Context... params) { Context context = params[0]; - - TeclaStatic.logD(TeclaApp.CLASS_TAG, " doInBackground context: " + context.toString()); + Boolean succes = false; try { Intent intent = new Intent(Intent.ACTION_CALL,Uri.parse("tel:"+emergency_phone_number())); //intent.addFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(intent); + succes = true; } catch (Exception e) { TeclaStatic.logD(TeclaApp.CLASS_TAG, " doInBackground error: " + e); } - return null; + return succes; } public String emergency_phone_number() { diff --git a/java/src/ca/idi/tekla/util/EmergencySMS.java b/java/src/ca/idi/tekla/util/EmergencySMS.java new file mode 100644 index 0000000..aeabfeb --- /dev/null +++ b/java/src/ca/idi/tekla/util/EmergencySMS.java @@ -0,0 +1,48 @@ +package ca.idi.tekla.util; + +import android.content.Context; +import android.os.AsyncTask; +import ca.idi.tekla.TeclaApp; +import ca.idi.tecla.framework.TeclaStatic; +import android.telephony.SmsManager; +import android.location.Criteria; +import android.location.Location; +import android.location.LocationManager; + + +class EmergencySMS extends AsyncTask { + + @Override + protected Boolean doInBackground(Context... params) { + String message = ""; + if (emergency_GPS_setting()) { + String location = getLocation(params[0]); + message = "Emergency call! Please come to me, click for location: http://maps.google.com/maps?&z=14&t=h&q=loc:" + location; + } else { + message = "Emergency call! Please take immediate action!"; + } + Boolean succes = true; + SmsManager smsManager = SmsManager.getDefault(); + smsManager.sendTextMessage(emergency_SMS_number(), null, message, null, null); + return succes; + } + + public String emergency_SMS_number() { + return TeclaApp.persistence.getEmergencySMSNumber().toString(); + } + + public boolean emergency_GPS_setting() { + return TeclaApp.persistence.getEmergencyGPSSetting(); + } + + public String getLocation(Context context) { + String point = ""; + Criteria criteria = new Criteria(); + LocationManager locMan = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE); + String towers = locMan.getBestProvider(criteria, false); + Location location = locMan.getLastKnownLocation(towers); + TeclaStatic.logD(TeclaApp.CLASS_TAG, "Location: " + location.getLatitude()); + point = location.getLatitude() + "+" + location.getLongitude(); + return point; + } +} \ No newline at end of file diff --git a/java/src/ca/idi/tekla/util/Persistence.java b/java/src/ca/idi/tekla/util/Persistence.java index e5431ce..0e61270 100644 --- a/java/src/ca/idi/tekla/util/Persistence.java +++ b/java/src/ca/idi/tekla/util/Persistence.java @@ -32,7 +32,7 @@ public class Persistence extends ca.idi.tecla.framework.Persistence { public static final String PREF_INVERSE_SCANNING = "inverse_scanning"; public static final String PREF_SCAN_DELAY_INT = "scan_delay_int"; - public static final String PREF_EMERGENCY_GPS_SETTING = "emergency_gps_setting"; + public static final String PREF_EMERGENCY_GPS_SETTING = "emergency_GPS_setting"; public static final String PREF_EMERGENCY_PHONE_NUMBER = "emergency_phone_number"; public static final String PREF_EMERGENCY_SMS_NUMBER = "emergency_SMS_number"; public static final String PREF_EMERGENCY_EMAIL_ADDRESS = "emergency_email_address"; From 046a00f7b3cece50a5a788d51c65b3298282b76e Mon Sep 17 00:00:00 2001 From: Teunissen Enabling Date: Fri, 17 May 2013 19:17:13 +0200 Subject: [PATCH 11/22] Working version: phonecall & sms + location Cleaned up some test garbage, this one is actually working whee it comes to outgoing phonecall and/or SMS with GPS Location on gooogle maps (inet link). --- java/src/ca/idi/tekla/ime/TeclaIME.java | 2 +- .../ca/idi/tekla/util/EmergencyCallout.java | 3 ++ .../ca/idi/tekla/util/EmergencyPhoneCall.java | 1 - java/src/ca/idi/tekla/util/EmergencySMS.java | 45 +++++++++++++------ 4 files changed, 36 insertions(+), 15 deletions(-) diff --git a/java/src/ca/idi/tekla/ime/TeclaIME.java b/java/src/ca/idi/tekla/ime/TeclaIME.java index 0031a17..16ac134 100644 --- a/java/src/ca/idi/tekla/ime/TeclaIME.java +++ b/java/src/ca/idi/tekla/ime/TeclaIME.java @@ -68,7 +68,6 @@ import ca.idi.tekla.TeclaApp; import ca.idi.tekla.TeclaPrefs; import ca.idi.tecla.framework.TeclaShieldService; -import ca.idi.tekla.util.EmergencyCallout; import ca.idi.tekla.util.Highlighter; import ca.idi.tekla.util.Persistence; @@ -2060,6 +2059,7 @@ private void handleMorseSwitch(SwitchEvent switchEvent, int action) { * * @param switchEvent */ + @SuppressWarnings("static-access") private void handleSwitchEvent(SwitchEvent switchEvent) { if (switchEvent.isAnyPressed()) { diff --git a/java/src/ca/idi/tekla/util/EmergencyCallout.java b/java/src/ca/idi/tekla/util/EmergencyCallout.java index 7049246..e18e2a1 100644 --- a/java/src/ca/idi/tekla/util/EmergencyCallout.java +++ b/java/src/ca/idi/tekla/util/EmergencyCallout.java @@ -20,6 +20,9 @@ public void Callout(Context context) { + emergency_SMS_number()); TeclaStatic.logD(TeclaApp.CLASS_TAG, " Emergency proc Email address: " + emergency_email_address()); + /* Following asynchroneous tasks are completely self-sufficient so they can take care (or not) on their own without depending on anything. + * Some parts will be executed twice or even more but the advantage is that they will not interfere or wait on eachother. + */ if (emergency_phone_number().length() > 0) makePhoneCall(context); if (emergency_SMS_number().length() > 0) diff --git a/java/src/ca/idi/tekla/util/EmergencyPhoneCall.java b/java/src/ca/idi/tekla/util/EmergencyPhoneCall.java index c3ab301..3e3bf54 100644 --- a/java/src/ca/idi/tekla/util/EmergencyPhoneCall.java +++ b/java/src/ca/idi/tekla/util/EmergencyPhoneCall.java @@ -15,7 +15,6 @@ protected Boolean doInBackground(Context... params) { Boolean succes = false; try { Intent intent = new Intent(Intent.ACTION_CALL,Uri.parse("tel:"+emergency_phone_number())); - //intent.addFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(intent); succes = true; diff --git a/java/src/ca/idi/tekla/util/EmergencySMS.java b/java/src/ca/idi/tekla/util/EmergencySMS.java index aeabfeb..aed959a 100644 --- a/java/src/ca/idi/tekla/util/EmergencySMS.java +++ b/java/src/ca/idi/tekla/util/EmergencySMS.java @@ -9,21 +9,32 @@ import android.location.Location; import android.location.LocationManager; - class EmergencySMS extends AsyncTask { @Override protected Boolean doInBackground(Context... params) { String message = ""; + // with or without emergency GPS setting? if (emergency_GPS_setting()) { - String location = getLocation(params[0]); - message = "Emergency call! Please come to me, click for location: http://maps.google.com/maps?&z=14&t=h&q=loc:" + location; + String location[] = getLocation(params[0]); + if (location[0].length() == 0 || location[1].length() == 0) { + message = "Emergency call! Please take immediate action, No locator available."; + TeclaStatic.logD(TeclaApp.CLASS_TAG, "No location available!"); + } else { + message = "Emergency call! Please come to me, click for location: http://maps.google.com/maps?&z=14&t=h&q=loc:" + + location[2] + + "Latitude: " + + location[0] + + "Longitude: " + location[1]; + TeclaStatic.logD(TeclaApp.CLASS_TAG, "Location: " + location[2]); + } } else { message = "Emergency call! Please take immediate action!"; } Boolean succes = true; SmsManager smsManager = SmsManager.getDefault(); - smsManager.sendTextMessage(emergency_SMS_number(), null, message, null, null); + smsManager.sendTextMessage(emergency_SMS_number(), null, message, null, + null); return succes; } @@ -35,14 +46,22 @@ public boolean emergency_GPS_setting() { return TeclaApp.persistence.getEmergencyGPSSetting(); } - public String getLocation(Context context) { - String point = ""; - Criteria criteria = new Criteria(); - LocationManager locMan = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE); - String towers = locMan.getBestProvider(criteria, false); - Location location = locMan.getLastKnownLocation(towers); - TeclaStatic.logD(TeclaApp.CLASS_TAG, "Location: " + location.getLatitude()); - point = location.getLatitude() + "+" + location.getLongitude(); - return point; + public String[] getLocation(Context context) { + /* array location: + * [0] Longitude + * [1] Latitude + * [2] after each other with + between for google maps + */ + String currentLocation[] = new String[3]; + Criteria criteria = new Criteria(); + LocationManager locMan = (LocationManager) context + .getSystemService(Context.LOCATION_SERVICE); + String towers = locMan.getBestProvider(criteria, false); + Location location = locMan.getLastKnownLocation(towers); + currentLocation[0] = String.valueOf(location.getLatitude()); + currentLocation[1] = String.valueOf(location.getLongitude()); + currentLocation[2] = String.valueOf(location.getLatitude()) + "+" + + String.valueOf(location.getLongitude()); + return currentLocation; } } \ No newline at end of file From 7f86e895039d2d91b15ca68b98191ca0fe371dda Mon Sep 17 00:00:00 2001 From: Teunissen Enabling Date: Sat, 18 May 2013 19:11:26 +0200 Subject: [PATCH 12/22] working version without email Email is too complicated. Too much diff email clients, elapsing time on POP accounts etc etc --- framework/.DS_Store => .DS_Store | Bin CCL.txt | 1 - GPL.txt | 339 --- Licensing.txt | 77 - MITL.txt | 21 - README.md | 31 - framework/.classpath | 8 - .../ca/idi/tecla/framework/TeclaStatic.java | 2 +- java/AndroidManifest.xml | 96 +- java/res/drawable-en-hdpi/splash_logo.png | Bin 30332 -> 0 bytes .../drawable-en-hdpi/sym_keyboard_delete.png | Bin 2315 -> 0 bytes .../sym_keyboard_feedback_delete.png | Bin 1278 -> 0 bytes java/res/drawable-en-mdpi/splash_logo.png | Bin 16032 -> 0 bytes .../drawable-en-mdpi/sym_keyboard_delete.png | Bin 1366 -> 0 bytes .../sym_keyboard_feedback_delete.png | Bin 524 -> 0 bytes .../btn_keyboard_key_dark_normal.9.png | Bin 546 -> 0 bytes .../btn_keyboard_key_dark_normal_off.9.png | Bin 760 -> 0 bytes .../btn_keyboard_key_dark_normal_on.9.png | Bin 1088 -> 0 bytes .../btn_keyboard_key_dark_pressed.9.png | Bin 4047 -> 0 bytes .../btn_keyboard_key_dark_pressed_off.9.png | Bin 4276 -> 0 bytes .../btn_keyboard_key_dark_pressed_on.9.png | Bin 4311 -> 0 bytes .../btn_keyboard_key_light_normal.9.png | Bin 461 -> 0 bytes .../btn_keyboard_key_light_pressed.9.png | Bin 4047 -> 0 bytes .../btn_keyboard_key_normal.9.png | Bin 715 -> 0 bytes .../btn_keyboard_key_normal_off.9.png | Bin 1001 -> 0 bytes .../btn_keyboard_key_normal_on.9.png | Bin 1077 -> 0 bytes .../btn_keyboard_key_pressed.9.png | Bin 3855 -> 0 bytes .../btn_keyboard_key_pressed_off.9.png | Bin 4258 -> 0 bytes .../btn_keyboard_key_pressed_on.9.png | Bin 4169 -> 0 bytes java/res/drawable-hdpi/cancel.png | Bin 1811 -> 0 bytes .../candidate_feedback_background.9.png | Bin 833 -> 0 bytes java/res/drawable-hdpi/caution.png | Bin 1641 -> 0 bytes .../drawable-hdpi/dialog_bubble_step02.9.png | Bin 1475 -> 0 bytes .../drawable-hdpi/dialog_bubble_step07.9.png | Bin 6012 -> 0 bytes .../dialog_top_dark_bottom_medium.png | Bin 1976 -> 0 bytes java/res/drawable-hdpi/highlight_pressed.png | Bin 1527 -> 0 bytes .../drawable-hdpi/ic_dialog_alert_large.png | Bin 4918 -> 0 bytes java/res/drawable-hdpi/ic_dialog_keyboard.png | Bin 807 -> 0 bytes .../drawable-hdpi/ic_dialog_voice_input.png | Bin 1931 -> 0 bytes java/res/drawable-hdpi/ic_dialog_wave_0_0.png | Bin 15673 -> 0 bytes java/res/drawable-hdpi/ic_dialog_wave_1_3.png | Bin 15823 -> 0 bytes java/res/drawable-hdpi/ic_dialog_wave_2_3.png | Bin 16009 -> 0 bytes java/res/drawable-hdpi/ic_dialog_wave_3_3.png | Bin 16022 -> 0 bytes java/res/drawable-hdpi/ic_dialog_wave_4_3.png | Bin 15910 -> 0 bytes java/res/drawable-hdpi/ic_launcher.png | Bin 0 -> 4147 bytes .../ic_suggest_strip_scroll_left_arrow.png | Bin 619 -> 0 bytes .../ic_suggest_strip_scroll_right_arrow.png | Bin 619 -> 0 bytes .../res/drawable-hdpi/key_feedback_search.png | Bin 3851 -> 0 bytes java/res/drawable-hdpi/key_search.png | Bin 3875 -> 0 bytes .../keyboard_dark_background.9.png | Bin 1041 -> 0 bytes .../keyboard_suggest_strip.9.png | Bin 1577 -> 0 bytes .../keyboard_suggest_strip_divider.png | Bin 172 -> 0 bytes .../list_selector_background_pressed.9.png | Bin 4203 -> 0 bytes java/res/drawable-hdpi/mic_slash.png | Bin 6995 -> 0 bytes .../drawable-hdpi/nav_keyboard_android.png | Bin 1835 -> 0 bytes .../drawable-hdpi/nav_keyboard_android_on.png | Bin 3361 -> 0 bytes java/res/drawable-hdpi/nav_keyboard_back.png | Bin 5363 -> 0 bytes java/res/drawable-hdpi/nav_keyboard_down.png | Bin 1514 -> 0 bytes .../nav_keyboard_feedback_android.png | Bin 1896 -> 0 bytes .../nav_keyboard_feedback_back.png | Bin 4920 -> 0 bytes .../nav_keyboard_feedback_down.png | Bin 790 -> 0 bytes .../nav_keyboard_feedback_left.png | Bin 771 -> 0 bytes .../nav_keyboard_feedback_repeat.png | Bin 1368 -> 0 bytes .../nav_keyboard_feedback_right.png | Bin 754 -> 0 bytes .../nav_keyboard_feedback_up.png | Bin 782 -> 0 bytes .../nav_keyboard_feedback_voldown.png | Bin 535 -> 0 bytes .../nav_keyboard_feedback_volup.png | Bin 903 -> 0 bytes java/res/drawable-hdpi/nav_keyboard_left.png | Bin 1428 -> 0 bytes .../res/drawable-hdpi/nav_keyboard_repeat.png | Bin 2779 -> 0 bytes java/res/drawable-hdpi/nav_keyboard_right.png | Bin 1454 -> 0 bytes java/res/drawable-hdpi/nav_keyboard_up.png | Bin 1455 -> 0 bytes .../drawable-hdpi/nav_keyboard_voldown.png | Bin 600 -> 0 bytes java/res/drawable-hdpi/nav_keyboard_volup.png | Bin 956 -> 0 bytes java/res/drawable-hdpi/ok_cancel.png | Bin 442 -> 0 bytes java/res/drawable-hdpi/speak_now_level0.png | Bin 6017 -> 0 bytes java/res/drawable-hdpi/speak_now_level1.png | Bin 6267 -> 0 bytes java/res/drawable-hdpi/speak_now_level2.png | Bin 6359 -> 0 bytes java/res/drawable-hdpi/speak_now_level3.png | Bin 6506 -> 0 bytes java/res/drawable-hdpi/speak_now_level4.png | Bin 6542 -> 0 bytes java/res/drawable-hdpi/speak_now_level5.png | Bin 6463 -> 0 bytes java/res/drawable-hdpi/speak_now_level6.png | Bin 6782 -> 0 bytes .../res/drawable-hdpi/sym_keyboard_delete.png | Bin 2282 -> 0 bytes .../drawable-hdpi/sym_keyboard_delete_2.png | Bin 651 -> 0 bytes .../drawable-hdpi/sym_keyboard_delete_3.png | Bin 457 -> 0 bytes .../sym_keyboard_delete_invert.png | Bin 986 -> 0 bytes java/res/drawable-hdpi/sym_keyboard_done.png | Bin 1593 -> 0 bytes .../sym_keyboard_feedback_delete.png | Bin 1278 -> 0 bytes .../sym_keyboard_feedback_done.png | Bin 1068 -> 0 bytes .../sym_keyboard_feedback_mic.png | Bin 1810 -> 0 bytes .../sym_keyboard_feedback_numalt.png | Bin 1336 -> 0 bytes .../sym_keyboard_feedback_return.png | Bin 838 -> 0 bytes .../sym_keyboard_feedback_search.png | Bin 1209 -> 0 bytes .../sym_keyboard_feedback_shift.png | Bin 885 -> 0 bytes .../sym_keyboard_feedback_shift_locked.png | Bin 700 -> 0 bytes .../sym_keyboard_feedback_show.png | Bin 1649 -> 0 bytes .../sym_keyboard_feedback_space.png | Bin 287 -> 0 bytes java/res/drawable-hdpi/sym_keyboard_mic.png | Bin 5731 -> 0 bytes java/res/drawable-hdpi/sym_keyboard_num0.png | Bin 1931 -> 0 bytes java/res/drawable-hdpi/sym_keyboard_num1.png | Bin 809 -> 0 bytes java/res/drawable-hdpi/sym_keyboard_num2.png | Bin 3214 -> 0 bytes java/res/drawable-hdpi/sym_keyboard_num3.png | Bin 2805 -> 0 bytes java/res/drawable-hdpi/sym_keyboard_num4.png | Bin 2647 -> 0 bytes java/res/drawable-hdpi/sym_keyboard_num5.png | Bin 2536 -> 0 bytes java/res/drawable-hdpi/sym_keyboard_num6.png | Bin 3573 -> 0 bytes java/res/drawable-hdpi/sym_keyboard_num7.png | Bin 3664 -> 0 bytes java/res/drawable-hdpi/sym_keyboard_num8.png | Bin 2904 -> 0 bytes java/res/drawable-hdpi/sym_keyboard_num9.png | Bin 3860 -> 0 bytes .../res/drawable-hdpi/sym_keyboard_numalt.png | Bin 2919 -> 0 bytes .../drawable-hdpi/sym_keyboard_numpound.png | Bin 1600 -> 0 bytes .../drawable-hdpi/sym_keyboard_numstar.png | Bin 1749 -> 0 bytes .../res/drawable-hdpi/sym_keyboard_return.png | Bin 1123 -> 0 bytes .../res/drawable-hdpi/sym_keyboard_search.png | Bin 1623 -> 0 bytes java/res/drawable-hdpi/sym_keyboard_shift.png | Bin 1495 -> 0 bytes .../sym_keyboard_shift_locked.png | Bin 1119 -> 0 bytes java/res/drawable-hdpi/sym_keyboard_show.png | Bin 1615 -> 0 bytes java/res/drawable-hdpi/sym_keyboard_space.png | Bin 371 -> 0 bytes .../drawable-hdpi/sym_keyboard_space_2.png | Bin 184 -> 0 bytes .../drawable-hdpi/sym_keyboard_space_3.png | Bin 184 -> 0 bytes .../sym_keyboard_space_invert.png | Bin 921 -> 0 bytes java/res/drawable-hdpi/tecla_icon.png | Bin 2972 -> 0 bytes java/res/drawable-hdpi/tecla_status.png | Bin 1518 -> 0 bytes java/res/drawable-hdpi/voice_background.9.png | Bin 2349 -> 0 bytes java/res/drawable-hdpi/working.png | Bin 8636 -> 0 bytes .../keyboard_suggest_strip_divider.png | Bin 172 -> 0 bytes .../keyboard_suggest_strip_divider.png | Bin 166 -> 0 bytes java/res/drawable-land/btn_keyboard_key.xml | 43 - java/res/drawable-ldpi/ic_launcher.png | Bin 0 -> 1723 bytes java/res/drawable-ldpi/splash_logo.png | Bin 10978 -> 0 bytes .../btn_keyboard_key_dark_normal.9.png | Bin 377 -> 0 bytes .../btn_keyboard_key_dark_normal_off.9.png | Bin 545 -> 0 bytes .../btn_keyboard_key_dark_normal_on.9.png | Bin 806 -> 0 bytes .../btn_keyboard_key_dark_pressed.9.png | Bin 3520 -> 0 bytes .../btn_keyboard_key_dark_pressed_off.9.png | Bin 3674 -> 0 bytes .../btn_keyboard_key_dark_pressed_on.9.png | Bin 3829 -> 0 bytes .../btn_keyboard_key_light_normal.9.png | Bin 355 -> 0 bytes .../btn_keyboard_key_light_pressed.9.png | Bin 3603 -> 0 bytes .../btn_keyboard_key_normal.9.png | Bin 726 -> 0 bytes .../btn_keyboard_key_normal_off.9.png | Bin 860 -> 0 bytes .../btn_keyboard_key_normal_on.9.png | Bin 926 -> 0 bytes .../btn_keyboard_key_pressed.9.png | Bin 3685 -> 0 bytes .../btn_keyboard_key_pressed_off.9.png | Bin 3875 -> 0 bytes .../btn_keyboard_key_pressed_on.9.png | Bin 3881 -> 0 bytes .../candidate_feedback_background.9.png | Bin 1182 -> 0 bytes .../drawable-mdpi/dialog_bubble_step02.9.png | Bin 1036 -> 0 bytes .../drawable-mdpi/dialog_bubble_step07.9.png | Bin 4646 -> 0 bytes java/res/drawable-mdpi/highlight_pressed.png | Bin 593 -> 0 bytes java/res/drawable-mdpi/ic_dialog_keyboard.png | Bin 528 -> 0 bytes java/res/drawable-mdpi/ic_launcher.png | Bin 0 -> 2574 bytes .../ic_suggest_strip_scroll_left_arrow.png | Bin 445 -> 0 bytes .../ic_suggest_strip_scroll_right_arrow.png | Bin 440 -> 0 bytes .../res/drawable-mdpi/key_feedback_search.png | Bin 3675 -> 0 bytes java/res/drawable-mdpi/key_search.png | Bin 3774 -> 0 bytes .../keyboard_suggest_strip.9.png | Bin 220 -> 0 bytes .../keyboard_suggest_strip_divider.png | Bin 2846 -> 0 bytes .../list_selector_background_pressed.9.png | Bin 11006 -> 0 bytes .../drawable-mdpi/nav_keyboard_android.png | Bin 1729 -> 0 bytes .../drawable-mdpi/nav_keyboard_android_on.png | Bin 2408 -> 0 bytes java/res/drawable-mdpi/nav_keyboard_back.png | Bin 4039 -> 0 bytes java/res/drawable-mdpi/nav_keyboard_down.png | Bin 1286 -> 0 bytes .../nav_keyboard_feedback_android.png | Bin 1623 -> 0 bytes .../nav_keyboard_feedback_back.png | Bin 3850 -> 0 bytes .../nav_keyboard_feedback_down.png | Bin 915 -> 0 bytes .../nav_keyboard_feedback_left.png | Bin 873 -> 0 bytes .../nav_keyboard_feedback_repeat.png | Bin 1105 -> 0 bytes .../nav_keyboard_feedback_right.png | Bin 865 -> 0 bytes .../nav_keyboard_feedback_up.png | Bin 910 -> 0 bytes .../nav_keyboard_feedback_voldown.png | Bin 347 -> 0 bytes .../nav_keyboard_feedback_volup.png | Bin 638 -> 0 bytes java/res/drawable-mdpi/nav_keyboard_left.png | Bin 1278 -> 0 bytes .../res/drawable-mdpi/nav_keyboard_repeat.png | Bin 2055 -> 0 bytes java/res/drawable-mdpi/nav_keyboard_right.png | Bin 1258 -> 0 bytes java/res/drawable-mdpi/nav_keyboard_up.png | Bin 1253 -> 0 bytes .../drawable-mdpi/nav_keyboard_voldown.png | Bin 352 -> 0 bytes java/res/drawable-mdpi/nav_keyboard_volup.png | Bin 649 -> 0 bytes .../screen_switch_background_normal.9.png | Bin 210 -> 0 bytes .../screen_switch_background_pressed.9.png | Bin 5883 -> 0 bytes .../res/drawable-mdpi/sym_keyboard_delete.png | Bin 829 -> 0 bytes java/res/drawable-mdpi/sym_keyboard_done.png | Bin 771 -> 0 bytes .../sym_keyboard_feedback_delete.png | Bin 374 -> 0 bytes .../sym_keyboard_feedback_done.png | Bin 498 -> 0 bytes .../sym_keyboard_feedback_mic.png | Bin 3815 -> 0 bytes .../sym_keyboard_feedback_numalt.png | Bin 735 -> 0 bytes .../sym_keyboard_feedback_return.png | Bin 381 -> 0 bytes .../sym_keyboard_feedback_search.png | Bin 501 -> 0 bytes .../sym_keyboard_feedback_shift.png | Bin 437 -> 0 bytes .../sym_keyboard_feedback_shift_locked.png | Bin 333 -> 0 bytes .../sym_keyboard_feedback_show.png | Bin 446 -> 0 bytes .../sym_keyboard_feedback_space.png | Bin 223 -> 0 bytes java/res/drawable-mdpi/sym_keyboard_mic.png | Bin 5864 -> 0 bytes java/res/drawable-mdpi/sym_keyboard_num0.png | Bin 1160 -> 0 bytes java/res/drawable-mdpi/sym_keyboard_num1.png | Bin 506 -> 0 bytes java/res/drawable-mdpi/sym_keyboard_num2.png | Bin 1778 -> 0 bytes java/res/drawable-mdpi/sym_keyboard_num3.png | Bin 1676 -> 0 bytes java/res/drawable-mdpi/sym_keyboard_num4.png | Bin 1540 -> 0 bytes java/res/drawable-mdpi/sym_keyboard_num5.png | Bin 1417 -> 0 bytes java/res/drawable-mdpi/sym_keyboard_num6.png | Bin 1952 -> 0 bytes java/res/drawable-mdpi/sym_keyboard_num7.png | Bin 1997 -> 0 bytes java/res/drawable-mdpi/sym_keyboard_num8.png | Bin 1605 -> 0 bytes java/res/drawable-mdpi/sym_keyboard_num9.png | Bin 2173 -> 0 bytes .../res/drawable-mdpi/sym_keyboard_numalt.png | Bin 1673 -> 0 bytes .../drawable-mdpi/sym_keyboard_numpound.png | Bin 963 -> 0 bytes .../drawable-mdpi/sym_keyboard_numstar.png | Bin 954 -> 0 bytes .../res/drawable-mdpi/sym_keyboard_return.png | Bin 866 -> 0 bytes .../res/drawable-mdpi/sym_keyboard_search.png | Bin 1029 -> 0 bytes java/res/drawable-mdpi/sym_keyboard_shift.png | Bin 1017 -> 0 bytes .../sym_keyboard_shift_locked.png | Bin 799 -> 0 bytes java/res/drawable-mdpi/sym_keyboard_show.png | Bin 783 -> 0 bytes java/res/drawable-mdpi/sym_keyboard_space.png | Bin 424 -> 0 bytes java/res/drawable/btn_keyboard_key.xml | 36 - .../drawable/ic_suggest_scroll_background.xml | 25 - java/res/layout-land/dah_table.xml | 309 -- java/res/layout-land/dit_table.xml | 308 -- java/res/layout-land/utility_table.xml | 308 -- java/res/layout/accessible_menu_item.xml | 31 + java/res/layout/activity_prefs.xml | 490 --- java/res/layout/activity_splash.xml | 30 - java/res/layout/activity_voice.xml | 8 - java/res/layout/bubble_text.xml | 30 - java/res/layout/candidate_preview.xml | 29 - java/res/layout/candidates.xml | 79 - java/res/layout/cheat_sheet1.xml | 341 --- java/res/layout/cheat_sheet2.xml | 316 -- java/res/layout/dah_table.xml | 310 -- java/res/layout/dialog_scan_speed.xml | 46 - java/res/layout/dialog_timeout.xml | 53 - java/res/layout/dictationdialog.xml | 43 - java/res/layout/dit_table.xml | 310 -- java/res/layout/eventselectdialog.xml | 72 - java/res/layout/hidden_view.xml | 12 + java/res/layout/morse_view.xml | 6 - java/res/layout/passworddialog.xml | 41 - .../layout/popup_fullscreen_transparent.xml | 9 - java/res/layout/reset_default.xml | 43 - java/res/layout/utility_table.xml | 312 -- java/res/menu/menu.xml | 7 + java/res/raw/main.dict | Bin 34 -> 0 bytes java/res/raw/type3.ogg | Bin 4126 -> 0 bytes java/res/values-cs/bools.xml | 22 - java/res/values-cs/donottranslate.xml | 29 - java/res/values-cs/strings.xml | 95 - java/res/values-da/strings.xml | 96 - java/res/values-de/bools.xml | 22 - java/res/values-de/strings.xml | 148 - java/res/values-el/strings.xml | 96 - java/res/values-en/bools.xml | 22 - java/res/values-es-rUS/strings.xml | 253 -- java/res/values-es/bools.xml | 22 - java/res/values-es/strings.xml | 253 -- java/res/values-fr/bools.xml | 22 - java/res/values-fr/donottranslate.xml | 25 - java/res/values-fr/strings.xml | 253 -- java/res/values-it/bools.xml | 22 - java/res/values-it/donottranslate.xml | 23 - java/res/values-it/strings.xml | 149 - java/res/values-ja/strings.xml | 96 - java/res/values-ko/strings.xml | 96 - java/res/values-land/dimens.xml | 25 - java/res/values-nb/strings.xml | 96 - java/res/values-nl/bools.xml | 22 - java/res/values-nl/strings.xml | 278 -- java/res/values-pl/bools.xml | 22 - java/res/values-pl/donottranslate.xml | 25 - java/res/values-pl/strings.xml | 96 - java/res/values-pt-rPT/strings.xml | 96 - java/res/values-pt/strings.xml | 96 - java/res/values-ru/strings.xml | 96 - java/res/values-sv/strings.xml | 149 - java/res/values-tr/donottranslate.xml | 23 - java/res/values-tr/strings.xml | 96 - java/res/values-zh-rCN/strings.xml | 96 - java/res/values-zh-rTW/strings.xml | 96 - java/res/values/arrays.xml | 41 - java/res/values/bools.xml | 28 - java/res/values/colors.xml | 25 - java/res/values/dimens.xml | 26 - java/res/values/donottranslate.xml | 37 - java/res/values/durations.xml | 25 - java/res/values/integers.xml | 51 - java/res/values/keycodes.xml | 58 - java/res/values/strings.xml | 459 +-- java/res/values/style.xml | 47 - java/res/values/styles.xml | 11 - java/res/xml-de/kbd_qwerty.xml | 331 -- java/res/xml-fr/kbd_qwerty.xml | 331 -- java/res/xml/input.xml | 30 - java/res/xml/kbd_1x10.xml | 50 - java/res/xml/kbd_1x3.xml | 30 - java/res/xml/kbd_1x4.xml | 33 - java/res/xml/kbd_1x5.xml | 35 - java/res/xml/kbd_1x6.xml | 39 - java/res/xml/kbd_1x7.xml | 42 - java/res/xml/kbd_1x8.xml | 46 - java/res/xml/kbd_1x9.xml | 48 - java/res/xml/kbd_alpha.xml | 294 -- java/res/xml/kbd_alpha_voice_variants.xml | 162 - java/res/xml/kbd_azerty.xml | 234 -- java/res/xml/kbd_navigation.xml | 128 - java/res/xml/kbd_phone.xml | 118 - java/res/xml/kbd_phone_symbols.xml | 113 - java/res/xml/kbd_popup_template.xml | 27 - java/res/xml/kbd_qwerty.xml | 338 --- java/res/xml/kbd_qwerty_variants.xml | 341 --- java/res/xml/kbd_qwerty_voice.xml | 356 --- java/res/xml/kbd_qwerty_voice_variants.xml | 359 --- java/res/xml/kbd_symbols.xml | 215 -- java/res/xml/kbd_symbols_shift.xml | 145 - java/res/xml/method.xml | 26 - java/res/xml/morse_kbd_hud.xml | 68 - java/res/xml/morse_kbd_nohud.xml | 63 - java/res/xml/morse_kbd_single_key_hud.xml | 57 - java/res/xml/morse_kbd_single_key_nohud.xml | 52 - java/res/xml/popup_domains.xml | 44 - java/res/xml/popup_punctuation.xml | 66 - java/res/xml/popup_smileys.xml | 85 - java/src/android/view/ActionMode.java | 9 + java/src/android/view/ActionProvider.java | 5 + java/src/android/view/MenuItem.java | 77 + java/src/ca/idi/tecla/lib/InputAccess.java | 362 +++ java/src/ca/idi/tecla/lib/ListPreference.java | 24 + java/src/ca/idi/tecla/lib/Spinner.java | 61 + java/src/ca/idi/tecla/lib/menu/Menu.java | 196 ++ .../src/ca/idi/tecla/lib/menu/MenuDialog.java | 216 ++ java/src/ca/idi/tecla/lib/menu/MenuItem.java | 336 +++ java/src/ca/idi/tecla/lib/menu/SubMenu.java | 290 ++ java/src/ca/idi/tekla/TeclaApp.java | 346 --- java/src/ca/idi/tekla/TeclaPrefs.java | 934 ------ java/src/ca/idi/tekla/TeclaSplash.java | 137 - java/src/ca/idi/tekla/TeclaVoiceInput.java | 227 -- .../ca/idi/tekla/ime/BinaryDictionary.java | 158 - java/src/ca/idi/tekla/ime/CandidateView.java | 497 --- .../idi/tekla/ime/CandidateViewContainer.java | 86 - .../ca/idi/tekla/ime/ContactsDictionary.java | 175 -- java/src/ca/idi/tekla/ime/Dictionary.java | 89 - .../idi/tekla/ime/ExpandableDictionary.java | 457 --- java/src/ca/idi/tekla/ime/FixedSizeView.java | 27 - .../ca/idi/tekla/ime/KeyboardSwitcher.java | 412 --- .../src/ca/idi/tekla/ime/MorseDictionary.java | 88 - java/src/ca/idi/tekla/ime/Suggest.java | 339 --- java/src/ca/idi/tekla/ime/TeclaIME.java | 2652 ----------------- .../ca/idi/tekla/ime/TeclaIMEBackupAgent.java | 32 - java/src/ca/idi/tekla/ime/TeclaKeyboard.java | 418 --- .../ca/idi/tekla/ime/TeclaKeyboardView.java | 324 -- java/src/ca/idi/tekla/ime/TeclaMorse.java | 95 - java/src/ca/idi/tekla/ime/TextEntryState.java | 232 -- java/src/ca/idi/tekla/ime/Tutorial.java | 257 -- java/src/ca/idi/tekla/ime/UserDictionary.java | 126 - java/src/ca/idi/tekla/ime/WordComposer.java | 155 - .../idi/tekla/util/DefaultActionsDialog.java | 53 - .../ca/idi/tekla/util/EmergencyCallout.java | 80 - .../src/ca/idi/tekla/util/EmergencyEmail.java | 33 - .../ca/idi/tekla/util/EmergencyPhoneCall.java | 31 - java/src/ca/idi/tekla/util/EmergencySMS.java | 67 - .../tekla/util/FullResetTimeoutDialog.java | 105 - java/src/ca/idi/tekla/util/Highlighter.java | 359 --- .../idi/tekla/util/MorseTimeUnitDialog.java | 99 - .../idi/tekla/util/NavKbdTimeoutDialog.java | 100 - java/src/ca/idi/tekla/util/Persistence.java | 261 -- .../idi/tekla/util/RepeatFrequencyDialog.java | 95 - .../ca/idi/tekla/util/ScanSpeedDialog.java | 92 - .../ca/idi/tekla/util/SwitchPreference.java | 48 - .../ca/idi/tekla/util/TeclaDesktopClient.java | 378 --- tags/TeclaAccess_versioncode26_hotfix126.apk | Bin 814279 -> 0 bytes tags/TeclaAccess_versioncode27_hotfix126.apk | Bin 814307 -> 0 bytes tags/TeclaAccess_versioncode28_20130305.apk | Bin 972119 -> 0 bytes tags/TeclaAccess_versioncode29_20130306.apk | Bin 972384 -> 0 bytes tags/TeclaAccess_versioncode32_20130410.apk | Bin 1009979 -> 0 bytes tags/TeclaAccess_versioncode33_20130410.apk | Bin 936989 -> 0 bytes tags/TeclaAccess_versioncode33_20130411.apk | Bin 1018139 -> 0 bytes tags/TeclaAccess_versioncode34_20130411.apk | Bin 1018135 -> 0 bytes tags/TeclaAccess_versioncode35_20130415.apk | Bin 1018208 -> 0 bytes 370 files changed, 1637 insertions(+), 22395 deletions(-) rename framework/.DS_Store => .DS_Store (100%) delete mode 100644 CCL.txt delete mode 100644 GPL.txt delete mode 100644 Licensing.txt delete mode 100644 MITL.txt delete mode 100644 README.md delete mode 100644 framework/.classpath mode change 100755 => 100644 java/AndroidManifest.xml delete mode 100644 java/res/drawable-en-hdpi/splash_logo.png delete mode 100755 java/res/drawable-en-hdpi/sym_keyboard_delete.png delete mode 100755 java/res/drawable-en-hdpi/sym_keyboard_feedback_delete.png delete mode 100644 java/res/drawable-en-mdpi/splash_logo.png delete mode 100644 java/res/drawable-en-mdpi/sym_keyboard_delete.png delete mode 100644 java/res/drawable-en-mdpi/sym_keyboard_feedback_delete.png delete mode 100644 java/res/drawable-hdpi/btn_keyboard_key_dark_normal.9.png delete mode 100644 java/res/drawable-hdpi/btn_keyboard_key_dark_normal_off.9.png delete mode 100644 java/res/drawable-hdpi/btn_keyboard_key_dark_normal_on.9.png delete mode 100644 java/res/drawable-hdpi/btn_keyboard_key_dark_pressed.9.png delete mode 100644 java/res/drawable-hdpi/btn_keyboard_key_dark_pressed_off.9.png delete mode 100644 java/res/drawable-hdpi/btn_keyboard_key_dark_pressed_on.9.png delete mode 100644 java/res/drawable-hdpi/btn_keyboard_key_light_normal.9.png delete mode 100644 java/res/drawable-hdpi/btn_keyboard_key_light_pressed.9.png delete mode 100644 java/res/drawable-hdpi/btn_keyboard_key_normal.9.png delete mode 100644 java/res/drawable-hdpi/btn_keyboard_key_normal_off.9.png delete mode 100644 java/res/drawable-hdpi/btn_keyboard_key_normal_on.9.png delete mode 100644 java/res/drawable-hdpi/btn_keyboard_key_pressed.9.png delete mode 100644 java/res/drawable-hdpi/btn_keyboard_key_pressed_off.9.png delete mode 100644 java/res/drawable-hdpi/btn_keyboard_key_pressed_on.9.png delete mode 100755 java/res/drawable-hdpi/cancel.png delete mode 100755 java/res/drawable-hdpi/candidate_feedback_background.9.png delete mode 100755 java/res/drawable-hdpi/caution.png delete mode 100755 java/res/drawable-hdpi/dialog_bubble_step02.9.png delete mode 100755 java/res/drawable-hdpi/dialog_bubble_step07.9.png delete mode 100755 java/res/drawable-hdpi/dialog_top_dark_bottom_medium.png delete mode 100755 java/res/drawable-hdpi/highlight_pressed.png delete mode 100755 java/res/drawable-hdpi/ic_dialog_alert_large.png delete mode 100755 java/res/drawable-hdpi/ic_dialog_keyboard.png delete mode 100755 java/res/drawable-hdpi/ic_dialog_voice_input.png delete mode 100755 java/res/drawable-hdpi/ic_dialog_wave_0_0.png delete mode 100755 java/res/drawable-hdpi/ic_dialog_wave_1_3.png delete mode 100755 java/res/drawable-hdpi/ic_dialog_wave_2_3.png delete mode 100755 java/res/drawable-hdpi/ic_dialog_wave_3_3.png delete mode 100755 java/res/drawable-hdpi/ic_dialog_wave_4_3.png create mode 100644 java/res/drawable-hdpi/ic_launcher.png delete mode 100755 java/res/drawable-hdpi/ic_suggest_strip_scroll_left_arrow.png delete mode 100755 java/res/drawable-hdpi/ic_suggest_strip_scroll_right_arrow.png delete mode 100644 java/res/drawable-hdpi/key_feedback_search.png delete mode 100644 java/res/drawable-hdpi/key_search.png delete mode 100644 java/res/drawable-hdpi/keyboard_dark_background.9.png delete mode 100755 java/res/drawable-hdpi/keyboard_suggest_strip.9.png delete mode 100755 java/res/drawable-hdpi/keyboard_suggest_strip_divider.png delete mode 100644 java/res/drawable-hdpi/list_selector_background_pressed.9.png delete mode 100644 java/res/drawable-hdpi/mic_slash.png delete mode 100644 java/res/drawable-hdpi/nav_keyboard_android.png delete mode 100644 java/res/drawable-hdpi/nav_keyboard_android_on.png delete mode 100644 java/res/drawable-hdpi/nav_keyboard_back.png delete mode 100644 java/res/drawable-hdpi/nav_keyboard_down.png delete mode 100644 java/res/drawable-hdpi/nav_keyboard_feedback_android.png delete mode 100644 java/res/drawable-hdpi/nav_keyboard_feedback_back.png delete mode 100644 java/res/drawable-hdpi/nav_keyboard_feedback_down.png delete mode 100644 java/res/drawable-hdpi/nav_keyboard_feedback_left.png delete mode 100644 java/res/drawable-hdpi/nav_keyboard_feedback_repeat.png delete mode 100644 java/res/drawable-hdpi/nav_keyboard_feedback_right.png delete mode 100644 java/res/drawable-hdpi/nav_keyboard_feedback_up.png delete mode 100644 java/res/drawable-hdpi/nav_keyboard_feedback_voldown.png delete mode 100644 java/res/drawable-hdpi/nav_keyboard_feedback_volup.png delete mode 100644 java/res/drawable-hdpi/nav_keyboard_left.png delete mode 100644 java/res/drawable-hdpi/nav_keyboard_repeat.png delete mode 100644 java/res/drawable-hdpi/nav_keyboard_right.png delete mode 100644 java/res/drawable-hdpi/nav_keyboard_up.png delete mode 100644 java/res/drawable-hdpi/nav_keyboard_voldown.png delete mode 100644 java/res/drawable-hdpi/nav_keyboard_volup.png delete mode 100755 java/res/drawable-hdpi/ok_cancel.png delete mode 100644 java/res/drawable-hdpi/speak_now_level0.png delete mode 100644 java/res/drawable-hdpi/speak_now_level1.png delete mode 100644 java/res/drawable-hdpi/speak_now_level2.png delete mode 100644 java/res/drawable-hdpi/speak_now_level3.png delete mode 100644 java/res/drawable-hdpi/speak_now_level4.png delete mode 100644 java/res/drawable-hdpi/speak_now_level5.png delete mode 100644 java/res/drawable-hdpi/speak_now_level6.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_delete.png delete mode 100644 java/res/drawable-hdpi/sym_keyboard_delete_2.png delete mode 100644 java/res/drawable-hdpi/sym_keyboard_delete_3.png delete mode 100644 java/res/drawable-hdpi/sym_keyboard_delete_invert.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_done.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_feedback_delete.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_feedback_done.png delete mode 100644 java/res/drawable-hdpi/sym_keyboard_feedback_mic.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_feedback_numalt.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_feedback_return.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_feedback_search.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_feedback_shift.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_feedback_shift_locked.png delete mode 100644 java/res/drawable-hdpi/sym_keyboard_feedback_show.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_feedback_space.png delete mode 100644 java/res/drawable-hdpi/sym_keyboard_mic.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_num0.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_num1.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_num2.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_num3.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_num4.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_num5.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_num6.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_num7.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_num8.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_num9.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_numalt.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_numpound.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_numstar.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_return.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_search.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_shift.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_shift_locked.png delete mode 100644 java/res/drawable-hdpi/sym_keyboard_show.png delete mode 100755 java/res/drawable-hdpi/sym_keyboard_space.png delete mode 100644 java/res/drawable-hdpi/sym_keyboard_space_2.png delete mode 100644 java/res/drawable-hdpi/sym_keyboard_space_3.png delete mode 100644 java/res/drawable-hdpi/sym_keyboard_space_invert.png delete mode 100644 java/res/drawable-hdpi/tecla_icon.png delete mode 100644 java/res/drawable-hdpi/tecla_status.png delete mode 100755 java/res/drawable-hdpi/voice_background.9.png delete mode 100755 java/res/drawable-hdpi/working.png delete mode 100755 java/res/drawable-land-hdpi/keyboard_suggest_strip_divider.png delete mode 100644 java/res/drawable-land-mdpi/keyboard_suggest_strip_divider.png delete mode 100644 java/res/drawable-land/btn_keyboard_key.xml create mode 100644 java/res/drawable-ldpi/ic_launcher.png delete mode 100644 java/res/drawable-ldpi/splash_logo.png delete mode 100644 java/res/drawable-mdpi/btn_keyboard_key_dark_normal.9.png delete mode 100644 java/res/drawable-mdpi/btn_keyboard_key_dark_normal_off.9.png delete mode 100644 java/res/drawable-mdpi/btn_keyboard_key_dark_normal_on.9.png delete mode 100644 java/res/drawable-mdpi/btn_keyboard_key_dark_pressed.9.png delete mode 100644 java/res/drawable-mdpi/btn_keyboard_key_dark_pressed_off.9.png delete mode 100644 java/res/drawable-mdpi/btn_keyboard_key_dark_pressed_on.9.png delete mode 100644 java/res/drawable-mdpi/btn_keyboard_key_light_normal.9.png delete mode 100644 java/res/drawable-mdpi/btn_keyboard_key_light_pressed.9.png delete mode 100644 java/res/drawable-mdpi/btn_keyboard_key_normal.9.png delete mode 100644 java/res/drawable-mdpi/btn_keyboard_key_normal_off.9.png delete mode 100644 java/res/drawable-mdpi/btn_keyboard_key_normal_on.9.png delete mode 100644 java/res/drawable-mdpi/btn_keyboard_key_pressed.9.png delete mode 100644 java/res/drawable-mdpi/btn_keyboard_key_pressed_off.9.png delete mode 100644 java/res/drawable-mdpi/btn_keyboard_key_pressed_on.9.png delete mode 100644 java/res/drawable-mdpi/candidate_feedback_background.9.png delete mode 100755 java/res/drawable-mdpi/dialog_bubble_step02.9.png delete mode 100755 java/res/drawable-mdpi/dialog_bubble_step07.9.png delete mode 100644 java/res/drawable-mdpi/highlight_pressed.png delete mode 100644 java/res/drawable-mdpi/ic_dialog_keyboard.png create mode 100644 java/res/drawable-mdpi/ic_launcher.png delete mode 100644 java/res/drawable-mdpi/ic_suggest_strip_scroll_left_arrow.png delete mode 100644 java/res/drawable-mdpi/ic_suggest_strip_scroll_right_arrow.png delete mode 100644 java/res/drawable-mdpi/key_feedback_search.png delete mode 100644 java/res/drawable-mdpi/key_search.png delete mode 100644 java/res/drawable-mdpi/keyboard_suggest_strip.9.png delete mode 100644 java/res/drawable-mdpi/keyboard_suggest_strip_divider.png delete mode 100644 java/res/drawable-mdpi/list_selector_background_pressed.9.png delete mode 100644 java/res/drawable-mdpi/nav_keyboard_android.png delete mode 100644 java/res/drawable-mdpi/nav_keyboard_android_on.png delete mode 100644 java/res/drawable-mdpi/nav_keyboard_back.png delete mode 100644 java/res/drawable-mdpi/nav_keyboard_down.png delete mode 100644 java/res/drawable-mdpi/nav_keyboard_feedback_android.png delete mode 100644 java/res/drawable-mdpi/nav_keyboard_feedback_back.png delete mode 100644 java/res/drawable-mdpi/nav_keyboard_feedback_down.png delete mode 100644 java/res/drawable-mdpi/nav_keyboard_feedback_left.png delete mode 100644 java/res/drawable-mdpi/nav_keyboard_feedback_repeat.png delete mode 100644 java/res/drawable-mdpi/nav_keyboard_feedback_right.png delete mode 100644 java/res/drawable-mdpi/nav_keyboard_feedback_up.png delete mode 100644 java/res/drawable-mdpi/nav_keyboard_feedback_voldown.png delete mode 100644 java/res/drawable-mdpi/nav_keyboard_feedback_volup.png delete mode 100644 java/res/drawable-mdpi/nav_keyboard_left.png delete mode 100644 java/res/drawable-mdpi/nav_keyboard_repeat.png delete mode 100644 java/res/drawable-mdpi/nav_keyboard_right.png delete mode 100644 java/res/drawable-mdpi/nav_keyboard_up.png delete mode 100644 java/res/drawable-mdpi/nav_keyboard_voldown.png delete mode 100644 java/res/drawable-mdpi/nav_keyboard_volup.png delete mode 100644 java/res/drawable-mdpi/screen_switch_background_normal.9.png delete mode 100644 java/res/drawable-mdpi/screen_switch_background_pressed.9.png delete mode 100644 java/res/drawable-mdpi/sym_keyboard_delete.png delete mode 100755 java/res/drawable-mdpi/sym_keyboard_done.png delete mode 100644 java/res/drawable-mdpi/sym_keyboard_feedback_delete.png delete mode 100755 java/res/drawable-mdpi/sym_keyboard_feedback_done.png delete mode 100644 java/res/drawable-mdpi/sym_keyboard_feedback_mic.png delete mode 100644 java/res/drawable-mdpi/sym_keyboard_feedback_numalt.png delete mode 100644 java/res/drawable-mdpi/sym_keyboard_feedback_return.png delete mode 100755 java/res/drawable-mdpi/sym_keyboard_feedback_search.png delete mode 100644 java/res/drawable-mdpi/sym_keyboard_feedback_shift.png delete mode 100755 java/res/drawable-mdpi/sym_keyboard_feedback_shift_locked.png delete mode 100644 java/res/drawable-mdpi/sym_keyboard_feedback_show.png delete mode 100644 java/res/drawable-mdpi/sym_keyboard_feedback_space.png delete mode 100644 java/res/drawable-mdpi/sym_keyboard_mic.png delete mode 100644 java/res/drawable-mdpi/sym_keyboard_num0.png delete mode 100644 java/res/drawable-mdpi/sym_keyboard_num1.png delete mode 100644 java/res/drawable-mdpi/sym_keyboard_num2.png delete mode 100644 java/res/drawable-mdpi/sym_keyboard_num3.png delete mode 100644 java/res/drawable-mdpi/sym_keyboard_num4.png delete mode 100644 java/res/drawable-mdpi/sym_keyboard_num5.png delete mode 100644 java/res/drawable-mdpi/sym_keyboard_num6.png delete mode 100644 java/res/drawable-mdpi/sym_keyboard_num7.png delete mode 100644 java/res/drawable-mdpi/sym_keyboard_num8.png delete mode 100644 java/res/drawable-mdpi/sym_keyboard_num9.png delete mode 100644 java/res/drawable-mdpi/sym_keyboard_numalt.png delete mode 100644 java/res/drawable-mdpi/sym_keyboard_numpound.png delete mode 100644 java/res/drawable-mdpi/sym_keyboard_numstar.png delete mode 100644 java/res/drawable-mdpi/sym_keyboard_return.png delete mode 100755 java/res/drawable-mdpi/sym_keyboard_search.png delete mode 100644 java/res/drawable-mdpi/sym_keyboard_shift.png delete mode 100755 java/res/drawable-mdpi/sym_keyboard_shift_locked.png delete mode 100644 java/res/drawable-mdpi/sym_keyboard_show.png delete mode 100644 java/res/drawable-mdpi/sym_keyboard_space.png delete mode 100644 java/res/drawable/btn_keyboard_key.xml delete mode 100644 java/res/drawable/ic_suggest_scroll_background.xml delete mode 100644 java/res/layout-land/dah_table.xml delete mode 100644 java/res/layout-land/dit_table.xml delete mode 100644 java/res/layout-land/utility_table.xml create mode 100644 java/res/layout/accessible_menu_item.xml delete mode 100644 java/res/layout/activity_prefs.xml delete mode 100644 java/res/layout/activity_splash.xml delete mode 100644 java/res/layout/activity_voice.xml delete mode 100644 java/res/layout/bubble_text.xml delete mode 100755 java/res/layout/candidate_preview.xml delete mode 100755 java/res/layout/candidates.xml delete mode 100644 java/res/layout/cheat_sheet1.xml delete mode 100644 java/res/layout/cheat_sheet2.xml delete mode 100644 java/res/layout/dah_table.xml delete mode 100644 java/res/layout/dialog_scan_speed.xml delete mode 100644 java/res/layout/dialog_timeout.xml delete mode 100644 java/res/layout/dictationdialog.xml delete mode 100644 java/res/layout/dit_table.xml delete mode 100644 java/res/layout/eventselectdialog.xml create mode 100644 java/res/layout/hidden_view.xml delete mode 100644 java/res/layout/morse_view.xml delete mode 100644 java/res/layout/passworddialog.xml delete mode 100644 java/res/layout/popup_fullscreen_transparent.xml delete mode 100644 java/res/layout/reset_default.xml delete mode 100644 java/res/layout/utility_table.xml create mode 100644 java/res/menu/menu.xml delete mode 100755 java/res/raw/main.dict delete mode 100755 java/res/raw/type3.ogg delete mode 100644 java/res/values-cs/bools.xml delete mode 100644 java/res/values-cs/donottranslate.xml delete mode 100644 java/res/values-cs/strings.xml delete mode 100644 java/res/values-da/strings.xml delete mode 100644 java/res/values-de/bools.xml delete mode 100644 java/res/values-de/strings.xml delete mode 100644 java/res/values-el/strings.xml delete mode 100644 java/res/values-en/bools.xml delete mode 100644 java/res/values-es-rUS/strings.xml delete mode 100644 java/res/values-es/bools.xml delete mode 100644 java/res/values-es/strings.xml delete mode 100644 java/res/values-fr/bools.xml delete mode 100644 java/res/values-fr/donottranslate.xml delete mode 100644 java/res/values-fr/strings.xml delete mode 100644 java/res/values-it/bools.xml delete mode 100644 java/res/values-it/donottranslate.xml delete mode 100644 java/res/values-it/strings.xml delete mode 100644 java/res/values-ja/strings.xml delete mode 100644 java/res/values-ko/strings.xml delete mode 100644 java/res/values-land/dimens.xml delete mode 100644 java/res/values-nb/strings.xml delete mode 100644 java/res/values-nl/bools.xml delete mode 100644 java/res/values-nl/strings.xml delete mode 100644 java/res/values-pl/bools.xml delete mode 100644 java/res/values-pl/donottranslate.xml delete mode 100644 java/res/values-pl/strings.xml delete mode 100644 java/res/values-pt-rPT/strings.xml delete mode 100644 java/res/values-pt/strings.xml delete mode 100644 java/res/values-ru/strings.xml delete mode 100644 java/res/values-sv/strings.xml delete mode 100644 java/res/values-tr/donottranslate.xml delete mode 100644 java/res/values-tr/strings.xml delete mode 100644 java/res/values-zh-rCN/strings.xml delete mode 100644 java/res/values-zh-rTW/strings.xml delete mode 100644 java/res/values/arrays.xml delete mode 100644 java/res/values/bools.xml delete mode 100644 java/res/values/colors.xml delete mode 100644 java/res/values/dimens.xml delete mode 100644 java/res/values/donottranslate.xml delete mode 100644 java/res/values/durations.xml delete mode 100644 java/res/values/integers.xml delete mode 100644 java/res/values/keycodes.xml delete mode 100644 java/res/values/style.xml delete mode 100644 java/res/values/styles.xml delete mode 100755 java/res/xml-de/kbd_qwerty.xml delete mode 100644 java/res/xml-fr/kbd_qwerty.xml delete mode 100755 java/res/xml/input.xml delete mode 100644 java/res/xml/kbd_1x10.xml delete mode 100644 java/res/xml/kbd_1x3.xml delete mode 100644 java/res/xml/kbd_1x4.xml delete mode 100644 java/res/xml/kbd_1x5.xml delete mode 100644 java/res/xml/kbd_1x6.xml delete mode 100644 java/res/xml/kbd_1x7.xml delete mode 100644 java/res/xml/kbd_1x8.xml delete mode 100644 java/res/xml/kbd_1x9.xml delete mode 100644 java/res/xml/kbd_alpha.xml delete mode 100644 java/res/xml/kbd_alpha_voice_variants.xml delete mode 100644 java/res/xml/kbd_azerty.xml delete mode 100644 java/res/xml/kbd_navigation.xml delete mode 100755 java/res/xml/kbd_phone.xml delete mode 100755 java/res/xml/kbd_phone_symbols.xml delete mode 100644 java/res/xml/kbd_popup_template.xml delete mode 100644 java/res/xml/kbd_qwerty.xml delete mode 100644 java/res/xml/kbd_qwerty_variants.xml delete mode 100755 java/res/xml/kbd_qwerty_voice.xml delete mode 100755 java/res/xml/kbd_qwerty_voice_variants.xml delete mode 100755 java/res/xml/kbd_symbols.xml delete mode 100755 java/res/xml/kbd_symbols_shift.xml delete mode 100644 java/res/xml/method.xml delete mode 100644 java/res/xml/morse_kbd_hud.xml delete mode 100644 java/res/xml/morse_kbd_nohud.xml delete mode 100644 java/res/xml/morse_kbd_single_key_hud.xml delete mode 100644 java/res/xml/morse_kbd_single_key_nohud.xml delete mode 100644 java/res/xml/popup_domains.xml delete mode 100644 java/res/xml/popup_punctuation.xml delete mode 100644 java/res/xml/popup_smileys.xml create mode 100644 java/src/android/view/ActionMode.java create mode 100644 java/src/android/view/ActionProvider.java create mode 100644 java/src/android/view/MenuItem.java create mode 100644 java/src/ca/idi/tecla/lib/InputAccess.java create mode 100644 java/src/ca/idi/tecla/lib/ListPreference.java create mode 100644 java/src/ca/idi/tecla/lib/Spinner.java create mode 100644 java/src/ca/idi/tecla/lib/menu/Menu.java create mode 100644 java/src/ca/idi/tecla/lib/menu/MenuDialog.java create mode 100644 java/src/ca/idi/tecla/lib/menu/MenuItem.java create mode 100644 java/src/ca/idi/tecla/lib/menu/SubMenu.java delete mode 100644 java/src/ca/idi/tekla/TeclaApp.java delete mode 100644 java/src/ca/idi/tekla/TeclaPrefs.java delete mode 100644 java/src/ca/idi/tekla/TeclaSplash.java delete mode 100644 java/src/ca/idi/tekla/TeclaVoiceInput.java delete mode 100644 java/src/ca/idi/tekla/ime/BinaryDictionary.java delete mode 100755 java/src/ca/idi/tekla/ime/CandidateView.java delete mode 100644 java/src/ca/idi/tekla/ime/CandidateViewContainer.java delete mode 100644 java/src/ca/idi/tekla/ime/ContactsDictionary.java delete mode 100644 java/src/ca/idi/tekla/ime/Dictionary.java delete mode 100644 java/src/ca/idi/tekla/ime/ExpandableDictionary.java delete mode 100644 java/src/ca/idi/tekla/ime/FixedSizeView.java delete mode 100644 java/src/ca/idi/tekla/ime/KeyboardSwitcher.java delete mode 100644 java/src/ca/idi/tekla/ime/MorseDictionary.java delete mode 100755 java/src/ca/idi/tekla/ime/Suggest.java delete mode 100644 java/src/ca/idi/tekla/ime/TeclaIME.java delete mode 100644 java/src/ca/idi/tekla/ime/TeclaIMEBackupAgent.java delete mode 100644 java/src/ca/idi/tekla/ime/TeclaKeyboard.java delete mode 100644 java/src/ca/idi/tekla/ime/TeclaKeyboardView.java delete mode 100644 java/src/ca/idi/tekla/ime/TeclaMorse.java delete mode 100644 java/src/ca/idi/tekla/ime/TextEntryState.java delete mode 100644 java/src/ca/idi/tekla/ime/Tutorial.java delete mode 100644 java/src/ca/idi/tekla/ime/UserDictionary.java delete mode 100644 java/src/ca/idi/tekla/ime/WordComposer.java delete mode 100644 java/src/ca/idi/tekla/util/DefaultActionsDialog.java delete mode 100644 java/src/ca/idi/tekla/util/EmergencyCallout.java delete mode 100644 java/src/ca/idi/tekla/util/EmergencyEmail.java delete mode 100644 java/src/ca/idi/tekla/util/EmergencyPhoneCall.java delete mode 100644 java/src/ca/idi/tekla/util/EmergencySMS.java delete mode 100644 java/src/ca/idi/tekla/util/FullResetTimeoutDialog.java delete mode 100644 java/src/ca/idi/tekla/util/Highlighter.java delete mode 100644 java/src/ca/idi/tekla/util/MorseTimeUnitDialog.java delete mode 100644 java/src/ca/idi/tekla/util/NavKbdTimeoutDialog.java delete mode 100644 java/src/ca/idi/tekla/util/Persistence.java delete mode 100644 java/src/ca/idi/tekla/util/RepeatFrequencyDialog.java delete mode 100644 java/src/ca/idi/tekla/util/ScanSpeedDialog.java delete mode 100644 java/src/ca/idi/tekla/util/SwitchPreference.java delete mode 100644 java/src/ca/idi/tekla/util/TeclaDesktopClient.java delete mode 100644 tags/TeclaAccess_versioncode26_hotfix126.apk delete mode 100644 tags/TeclaAccess_versioncode27_hotfix126.apk delete mode 100644 tags/TeclaAccess_versioncode28_20130305.apk delete mode 100644 tags/TeclaAccess_versioncode29_20130306.apk delete mode 100644 tags/TeclaAccess_versioncode32_20130410.apk delete mode 100644 tags/TeclaAccess_versioncode33_20130410.apk delete mode 100644 tags/TeclaAccess_versioncode33_20130411.apk delete mode 100644 tags/TeclaAccess_versioncode34_20130411.apk delete mode 100644 tags/TeclaAccess_versioncode35_20130415.apk diff --git a/framework/.DS_Store b/.DS_Store similarity index 100% rename from framework/.DS_Store rename to .DS_Store diff --git a/CCL.txt b/CCL.txt deleted file mode 100644 index 90893be..0000000 --- a/CCL.txt +++ /dev/null @@ -1 +0,0 @@ -This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA. diff --git a/GPL.txt b/GPL.txt deleted file mode 100644 index b1fa7df..0000000 --- a/GPL.txt +++ /dev/null @@ -1,339 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Lesser General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) year name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - , 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Lesser General -Public License instead of this License. \ No newline at end of file diff --git a/Licensing.txt b/Licensing.txt deleted file mode 100644 index 65828eb..0000000 --- a/Licensing.txt +++ /dev/null @@ -1,77 +0,0 @@ -CONTENTS -======== -1. Copyright -2. Licensing of code - 2.1 MIT License - 2.2 GNU General Public License -3. Licensing of designs, documents, images, diagrams and schematics - 3.1 Creative Commons Attribution ShareAlike License - -1. COPYRIGHT -============ -Unless otherwise noted, the copyrights of all content in this repository belong to the Inclusive Design Research Centre, OCAD University. - -The following copyright notice should appear in, or accompany, all substantial parts of the code, designs, documents, images, diagrams and schematics. -Copyright (C) , Inclusive Design Research Centre - -2. LICENSING OF CODE -==================== -Unless otherwise noted, you may use all or part of the code herein under the terms of either the MIT License or the GNU General Public License. - -You don’t have to do anything special to choose one license or the other and you don’t have to notify anyone which license you are using. You are free to use all or part of the code herein in commercial projects as long as the copyright notice is left intact. - -2.1 MIT LICENSE -=============== -, -Copyright (c) , Inclusive Design Research Centre -jsilva@ocad.ca -http://scyp.idrc.ocad.ca/ - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - -2.2 GNU GENERAL PUBLIC LICENSE -============================== -, -Copyright (c) , Inclusive Design Research Centre -jsilva@ocad.ca -http://scyp.idrc.ocad.ca/ - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program, see enclosed file GPL.txt or browse to - - -3. LICENSING OF DESIGNS, DOCUMENTS, DRAWINGS, IMAGES, DIAGRAMS AND SCHEMATICS -============================================================================= -You may use all or part of any designs, documents, drawings images, diagrams and schematics herein under the terms of the Creative Commons Attribution-ShareAlike License. - -You don’t have to do anything special to use this license and you don’t have to notify anyone that you are using it. You are free to use all or part of any designs, documents, drawings images, diagrams and schematics herein in commercial projects as long as you attribute the original work to the Inclusive Design Research Centre. - -3.1 CREATIVE COMMONS ATTRIBUTION SHAREALIKE LICENSE -=================================================== -This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA. diff --git a/MITL.txt b/MITL.txt deleted file mode 100644 index 40eafef..0000000 --- a/MITL.txt +++ /dev/null @@ -1,21 +0,0 @@ - The MIT License - -Copyright (c) 2008-2010 Inclusive Design Research Centre - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. diff --git a/README.md b/README.md deleted file mode 100644 index 9382d99..0000000 --- a/README.md +++ /dev/null @@ -1,31 +0,0 @@ -Tecla Access -============ - -Tecla is a set of open software and hardware tools that facilitate switch access to electronic devices -for people with mobility impairments. This repo contains the source code for the -[Tecla Access App for Android](https://play.google.com/store/apps/details?id=ca.idi.tekla). - -Getting Involved ----------------- -There are many ways to contribute to the [Tecla Access App for Android](https://play.google.com/store/apps/details?id=ca.idi.tekla). Here are some ideas: - -### Code -In order to start contributing code to the Tecla Access project, follow the steps outlined in the ['Contributing Code' page](https://github.com/idrc/TeclaAccess/wiki/Contributing-Code) at https://github.com/idrc/TeclaAccess/wiki/Contributing-Code - -### Review - -Another very useful way to contribute to the Tecla Access project is to identify any bugs or issues that may still be lurking in the [Tecla Access App for Android](https://play.google.com/store/apps/details?id=ca.idi.tekla). You can also submit your requests for features that you think the [Tecla Access App for Android](https://play.google.com/store/apps/details?id=ca.idi.tekla) is still missing. To get started follow the steps below: - -1. [Sign up for a fee github account](https://github.com/signup/free) if you don't already have one -2. [Download the Tecla Access App for Android](https://play.google.com/store/apps/details?id=ca.idi.tekla) from the Google Play Store. -2. Use Tecla Access as your main input method on your Android device -3. Report issues and submit feature requests to your heart's content via a the [Tecla Access issues page](https://github.com/idrc/TeclaAccess/issues) - -### Translate - -Translating Tecla Access to your mother tongue (or voting on completed translations) is the easiest way to contribute to the project. To start translating follow the steps below: - -1. [Sign up for a free crowdin.net account](http://crowdin.net/join) if you don't already have one. -2. Visit the [Tecla Access translation page](http://crowdin.net/project/tecla-access) and check if the language you want to work on is already there. -3. If the language you want to work on is not shown on the [Tecla translation page](http://crowdin.net/project/tecla-access), [let us know](http://komodoopenlab.com/about_us/contact/) so we can add it. -4. If your language has not been completed, take a moment to contribute some translations, otherwise feel free to vote or make alternative suggestions to the strings already translated. diff --git a/framework/.classpath b/framework/.classpath deleted file mode 100644 index 3f9691c..0000000 --- a/framework/.classpath +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/framework/src/ca/idi/tecla/framework/TeclaStatic.java b/framework/src/ca/idi/tecla/framework/TeclaStatic.java index b91d0cb..9d09eda 100644 --- a/framework/src/ca/idi/tecla/framework/TeclaStatic.java +++ b/framework/src/ca/idi/tecla/framework/TeclaStatic.java @@ -12,7 +12,7 @@ public class TeclaStatic /** * Main debug switch, turns on/off debugging for the whole framework */ - public static final boolean DEBUG = false; + public static final boolean DEBUG = true; /** * Tag used for logging in the whole framework diff --git a/java/AndroidManifest.xml b/java/AndroidManifest.xml old mode 100755 new mode 100644 index c036912..d9c0724 --- a/java/AndroidManifest.xml +++ b/java/AndroidManifest.xml @@ -1,96 +1,14 @@ + + package="ca.idi.tecla.view" + android:versionCode="1" + android:versionName="1.0" > - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + android:icon="@drawable/ic_launcher" + android:label="@string/app_name" > \ No newline at end of file diff --git a/java/res/drawable-en-hdpi/splash_logo.png b/java/res/drawable-en-hdpi/splash_logo.png deleted file mode 100644 index bd69530a3052a7b6238445da633aa7a1dd38f043..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30332 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 diff --git a/java/res/drawable-en-hdpi/sym_keyboard_delete.png b/java/res/drawable-en-hdpi/sym_keyboard_delete.png deleted file mode 100755 index 569369e79927ae1eb3ca3728fc567c1f5586070b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2315 zcmV+m3H0`fP)TNc zm^N)%WLsOC0vpT9$~4*8*~M3{UM+*$2Oy0ER=IZV+K`x-n76U7!C(+OIXUTETwJsb z4Go1WR;)OWzx}g*l z6y%K^J9Yu|83!^1>pgq+d}TCK%FD}7!}HM~V?ski<5)Y6jqjj$*)(UVjfCUe+S;mQ z4Lf)4yb>H7JS;3M%pWEgo|BU^V#<^$YoHIVhN7jVWf1GTZQHiYJ9qB<gLkk-adr&p|PExhumznF=+FAu=*D z8mgg09=sZfY0{1ytG-;i?{yHVR7C$OXp*Y;Xe?J?lEPDhB{RK?KsaMaK zK|iw@qK_uB-G|ij-HQDUL3H_&Q7!^LvnI*7%(FGB?oZSIpn0RRx_RSiE@gF9foy@3ZX3$OCq+Ge18c z$sin~36Q~-B9D9b?p=oGV?n(5$b&CUO-<-Nyoq7$8hN0;w-go@;-tDkZR8LsbfEvr z%gei4R8({i+Utn^afMrM-MaP1>C>lwVzDCbAh4#kxw*N7$fFwwMU#<{u@iRD1s%FX zBGD@pigw5-s;H0NDmD|Q0F;_M%c-;I-i0&#PAs z(Z*b$Ti*j+bhRP*lLyVY=8$pz8RX2m{$LUtMl zIAT;PRSpnBtMLUFAgFu_%Z4&@dJ2aXz<5w`*P$3+Vp+0e$pHvly; zH#heiaK<6{;PU0m>hFMb!u>lfO zCE2*hRvTlWMwkJW7aJS<9b9UNlDh?ymJ+$hxkDOe^lV%O(K{oB4l_OrZP&e|q(mu* zC&jiVnood&ls}b$%FfQt1yEbyvJ?bU{7O)PYLFVZuAu{+W*lS3jvX-{RV(|f`l2e z7uyXpW8f}$Y~8x`Q;7a`_`3@iE?k7RSdc)FkU4Yatgfr8tH)!24_tkg$G22SyTW$fH+K5VfnIJ%(aDxjEzIfQ>$L=FE@0(VsngHW%7I3<(KI zsjaPj$l4M7h7B8*Q~F~UU?xx?^UQ#XwFHU-CZS1&LY#Pp2M5V!NmW%ZED#+CN# zah#demXb=$Jap(#8e5_I`uayvQBiBi4hFNR{uwrg{rn+g{#Za1dVc3JGc)lRA&S&i zW-nD_UsFbbyb0>_8yl>;y86M)nKKiieIf&A0ayL{|69C{xa6O6amnEpE5y6KKAKn-Ph5Vzk7aQ{e5{vIIV0^rYs~nY; zm34^?URYRoQ!baki<6@r@TAFlQ0+x38%Q#N+D4He5I>M0atYovhKE3~E!4-yC#kQ% z`V!q6xPwdlsPHXB^-`e!$f;AO212yI1;V5&`}glxgE~DHr0OC;Z4}hzo*R2v+~M%f z8GJTv@oT4*iKd)ZJQ@I9d6|hOuiRwZL>!M z&vUMbpH|%{&{g!~mz!suQnk_1Im`ES{dKO$pA|ZD;n0itGmMdvQ5|cO*QE^n lmudjm0I&gIHkJPb7yynfmsOamWq<$x002ovPDHLkV1iL0O0WO` diff --git a/java/res/drawable-en-hdpi/sym_keyboard_feedback_delete.png b/java/res/drawable-en-hdpi/sym_keyboard_feedback_delete.png deleted file mode 100755 index ca7637552b5e256f445fc8dd497811ab7518f489..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1278 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 Y0Fy#=sqh&+d;kCd07*qoM6N<$f~8NZ4*&oF diff --git a/java/res/drawable-en-mdpi/sym_keyboard_feedback_delete.png b/java/res/drawable-en-mdpi/sym_keyboard_feedback_delete.png deleted file mode 100644 index 3c9083972d92e50a87efcaafe02814b36dcd7238..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 524 zcmV+n0`vWeP)tf>{p;YxrPXYgUdH2pXo2F^ErFhwGEE1ta z=>HL7jFo^%K@X@cV+2~Izs0uF_PxCa`2p|+I04>Z@mJWx&W17a*+0a_I0p#vuf#*E zwDs6ln8uJbTI?@v-wXASRDq@-7wJTlAq(##J(y8KBAv?nWo<$udB1?{hgHiSQjwvt zMSL$^_C5*;e|*625mWOCY79CL$tr{XhV-8lZ#A0vUR5U10cy(_T9vJ)Ut4i3-G}}f zA?CQ(6i?d6{{HajBUYO zxr)%S9NYQK{CdtqsxqU4GV*X86#|v!Ia-;Ur;(|u>M_ABa~~9nB{R1@aEE!?l;w!n zd(oA&{lqL-pgN%{aYdP%M^R`~7E6i~0zQ>GODKd?u8gk?p6X%&NCUXz7xl2qi*^&~L|GfB^ve-=TlpZrCjV O0000Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2ipr5 z1SlwB(zf>i00E*&L_t(&-tC&tZh}A%#=il=&2ZA*e3SYx^||cB*f;T3IS~><(4Fy6 zX`9NwO#==(V~7bGWPZ+mJF^VH_$Jq5yc>uh`gOA@fW|Tk@E~R&+KeXD2uvfU5d*oO zMNKEy>os0C8@#MmYE}UP@OeDqW537Ya2U2~y=}J;5mZ$L5gjN*ggA~tM0nrrZiX8p z;+#XC=Wx!c0tv$qi^XF2)GEsoRaJfefCgh`IOkB7?H75d$$01DPiXX?nc!9}ppGO+a@|iryevv-{J5 zpss0@fxy4k`uV8h=C`cFko9yr$NlZ*4m9(?}gk zZDMcn>7m*RG6#JOS+#De^*Mq(cE`#hqAemSvwDwT)}A&H19=V*YRx0gIWV)TK6?-Z zejBTzC~!KRa6X^g+QHLLoghFIMJS4*8MLX)Pm%=7<+67(Gj&7&AWc(bS#~?Dcn{^r kIpiNFqPv2MNbf5c7kQKBhALaLSO5S307*qoM6N<$f>em%4FCWD diff --git a/java/res/drawable-hdpi/btn_keyboard_key_dark_normal_off.9.png b/java/res/drawable-hdpi/btn_keyboard_key_dark_normal_off.9.png deleted file mode 100644 index af4017e2c6f7e8ec7b98fb9641d81b25e9bc138f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 760 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 Bq3-|y diff --git a/java/res/drawable-hdpi/btn_keyboard_key_dark_pressed_off.9.png b/java/res/drawable-hdpi/btn_keyboard_key_dark_pressed_off.9.png deleted file mode 100644 index d6db17720dfe1498e220c578392b9284cbdff76b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4276 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 DLLJ0W diff --git a/java/res/drawable-hdpi/btn_keyboard_key_light_pressed.9.png b/java/res/drawable-hdpi/btn_keyboard_key_light_pressed.9.png deleted file mode 100644 index 9f19e965746febcc8ee324d164bcf002ca83304c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4047 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 Bq3-|y diff --git a/java/res/drawable-hdpi/btn_keyboard_key_normal.9.png b/java/res/drawable-hdpi/btn_keyboard_key_normal.9.png deleted file mode 100644 index 42c7c146d67525b6b97af6b4edb42e75ad2851da..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 715 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 Re$xN|002ovPDHLkV1l?rJLdoZ diff --git a/java/res/drawable-hdpi/btn_keyboard_key_pressed_off.9.png b/java/res/drawable-hdpi/btn_keyboard_key_pressed_off.9.png deleted file mode 100644 index b28626b249c922589c7173918ba6a05a9de8c952..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4258 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 Eg2X=v-~a#s diff --git a/java/res/drawable-hdpi/btn_keyboard_key_pressed_on.9.png b/java/res/drawable-hdpi/btn_keyboard_key_pressed_on.9.png deleted file mode 100644 index c06469b53c264da4f777b81334cbe22e6b854868..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4169 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 T6gK{;00000NkvXXu0mjf-3s82 diff --git a/java/res/drawable-hdpi/cancel.png b/java/res/drawable-hdpi/cancel.png deleted file mode 100755 index 6585bde17996f0306a5499f33cf0e9ddbd2fcc48..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1811 zcmX|?c{tnY7RTREt|HTp;*Nb8?HKDY6_=`QYTBr!Dk)dpvBpw+h#-oZn=y4OS_W0O zqR}b|LK}%v4egLti8Z!JZ&OQd?3&uQ`FT3e{Bhp*eV%ta=RDu@IX5qPoQKP+%L4%5 z$P4E#0|1+V*5~A8q4CtgCqrmbOLFl|@{S8j!Uth7z$r8?7^91f2@1zt#sr0?CcMGe z0U+CiJm-W;nOK-~zkrI;YbR>o zEIW{Bn*M)b;qF0_4VKnkqpkfNZ5y*5SU|;PqWpIPbykkCa%yv&hd=Dx3nxsI3N;b62*fj z6W15U-8C#x3@Ac_s+vI2yEekj?2yRFH;Qn$OyAq?ZZ{kyeA&&^`;hxW@md! z%mXq~=!qikc*7`y$ck+rlze@jbY#blu-?P$?CiWXb(y^K6^h8tJa}i9_Q~)`epkJ{ zZCFZ=ZI!n7fYcGw+b3iS6i&(rp>Pt@bllI7|B;}N>F)`&Nonwlc{!;dKx{p21T4%f&rh`4dLVnzvwo#sPns!zQx&7XaV zuE?&fsd;mS8ry9{bsbJ7)@J+i9xH^d;q|B+UMs}D2Xwl5oe`c#+ctd2Gk4=)^=Ny% z$>v>)fEVfG^~i8qGz?P0ouabJYlzW4&a0ebA*{Cat-%*`sf(PUv<7Dzs=lVCrW=2D zn-*M8r?ZM`w08pJcjbLE%ctXplv!QtpTypTbi7GhewopWR7sUU+rDaq5+`U;al`D0 zUaOlzs=T>*aNGI8Z}h$#=eGl7Sr@JIPV}s|BLN}FeS(Pw1wy6+nY%d0qje+_nbp@a zK29S;$)05U@qQm1EpmQ!b@lZgq@d#r$J!N9&{=yOI2`Vzt8JTP_#~G^lba$fd-AvU zR2af;o1>%4i+q;aj$!np=H`^%5Lr1t5NYioetKtK^n(yTH(c{NFi(D?dCDMFu)OSf z-B`KsR=@-Cf9+BSnFb=(h=nvH_%n~@BIMV5%dBnM`kJCfd${+{{4ByRzk^fVh|gXw zt}pWEwHX-^+oA&G=7F`yZ|?-d(XAhQH0xk1>RxN|Vz>A#s|EYh zA*v}>z#}G_u}?tN_aP=>$m6v7B7v~--f0CE85`>{d>;P=J~?@Uvu|6|nrK7a>QG)w z8)ioDt+{j@+cgLo{pw$A>A!t3ozz=ED*cgvE3e|wfb-(&6eqHy&@|f0y|x?e@G3~O z#D(WzuU@^{74NF#>$Mji9{#iZ+9&Z)$6ZR-dumLRSS${FKF;-lWe8sqe-F@%VD!Gb zYb&eo&(07iDk|QEQeM{8_2W~*Myy8rHPTPC+S=1rR#qL#wf3G8iG-P-gu|5zg+kr* zCOT7m{Z+?rF|LRqRNcWYl-iD#25wMvv`L-o=xV<9*?S0gJ1Z-UG)h#t=tmxTX4I^e zC%FGKR%t5CP*?zIGK?8&xDHDLV%tWo)tPrbhdVSSRGn#;hgM;BeOcvj zaWDnP6-szp5Ue_vJoBNlFI7RI(R*dvTN)6ifsr2okPN|!K-CPQIs_na2xVO@Z_Z~9 zA96eEcohlu8P63m0O+}CNq@%iA%y>;_Tf{9kZ%9w3d7hRYGWUL29h661o%TeZiM&0 kni21Ib?E$-#61fJIBD=PM*}4-sLKJQi^sWo=fLbg01T&i8UO$Q diff --git a/java/res/drawable-hdpi/candidate_feedback_background.9.png b/java/res/drawable-hdpi/candidate_feedback_background.9.png deleted file mode 100755 index 203c4e640d8369111e7e09102e1ef502d60fcff8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 833 zcmV-H1HSx;P)V-Cu$HxIEp6v7C|bq)2MU6Lfou`}4gw)uL}DO{i6A@(f?!}o2*R{; z9S5#=B6_~@dV=qPFPC>jy?*@O<9&Lb)@(Kt9Ky1!(}`GI=HwH6!V=8lfXI(}#1}TX_AHpvhgQ;W_CR zqc{B}=`le%-WVJLBc1Ysbcx}r_)2<2fGWn}5STq0-jFUbFCF&@&}(CG2+R%*pGezk zKAB94cswq`;jnQ6olZy8>vhrV_4J#5$f*&awyA>rOb3(AW<@HM+L%2ek;q)NT1^xR z1@$IB=?UrX+MTl~z#TQ0$z()2oo2I+q=WMLyq=cs`MBWSq0H9$8S4VG}4&8D7uZ^AjR)b%?Y4n?_KW(B5Fsfc#_O!MgB+Tqx?{e^}DH7DT| zi$ykIN~O{nFf{MaZXavawyb?|a*e~~(?qpe6^`S~8x>{CSs)NF24plEiGIH?TCLWf z9CN&wuj}yA!7f`!<$Bs;{E04?|1P=aozZ;`J)tacw@F7#!5n!3<9QQEPh6+r#-d1b z3R!#;Uch*%Ir{$LA?c|&X@r(N{#Qv?48r)fn1^)p!7A4|tP761IovmG5nRT&p|J3~ z6`TV&fCD&y12}*KIDmry9KZn_z}Zk3zwTN2v&5C|Zt`1%-vSH(*kja>F`B{A00000 LNkvXXu0mjfD}Q=1 diff --git a/java/res/drawable-hdpi/caution.png b/java/res/drawable-hdpi/caution.png deleted file mode 100755 index 5cb6c54b93459214c352dde5285d29647173d680..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1641 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 diff --git a/java/res/drawable-hdpi/dialog_bubble_step07.9.png b/java/res/drawable-hdpi/dialog_bubble_step07.9.png deleted file mode 100755 index 94b915432d34e3acdd8b6130e42718ed7eda1d8e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6012 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 LHPo)ZgL(cxaPK}a diff --git a/java/res/drawable-hdpi/ic_dialog_keyboard.png b/java/res/drawable-hdpi/ic_dialog_keyboard.png deleted file mode 100755 index c7729566c241f096bde71b5da5f46453e9507f53..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 807 zcmV+?1K9kDP)(RCwC#Sxu`FQ5c@las1#$;75WX z;x!d7wCjIdgrX=4qE)M;Mavd#+XU@`y9%UeaiP_Pe#2e3Fi}(_6|Uc27!^lHd)~Qd zYI;H4oWq?151x5O=e*CEbKdtkC{CwSf#+rtIB$jkL%>ZJAZ0QcAruNdMgJ9Wo0GUN zfn=djI1v>^d1J9yKJhsFgTWvn4u``!`W{YKP@V)#jZJI_xXEdBm6%K>LaWu%`);>e z5JizmexrbNI<0m(ol|tp9*-v;i^a?=^7AD`c6tV6B%$4IAEW;ScvP>~pJ|%L9KRUz zk^o7PF05AT+3eckaD2xrQ(5B|V-``(7VCi4>-7%*pwU_j1Oi8PyFJYyKW}2c-(M|c zzkv^c47>;KG0I;FfI_Y-vBdkC_&)*I=|Zts)cfIZSa7*qO!8~f=x8(&a=BbmRaF;o zC!5Xwq(Z_Pzmz#w-oPck@DiV@o{}`}1@2QBR2bvu#mq#CWyWOsCU*W&wkx0aR9iK|21XT0$9VSmkPQM?G zMt2%_tpLiq@ZQJhp3!xq(RdsRg}#x6UB}bxVD=w?+C>08^C8CnvF*6@_SP0M?D7j) zmgn{r&QG_mn|OdW*ZJZzwgCe9wad6mcDh=vF4<|g)5A)oqT5%$-+yGY+0xhW1C;t( zwOUQv)>F|e`h32-Sl5*u#{HLtaC2WfeFA);!M0pMcHk`#-^)&y%VoaPD5@N-K`w)* z*d^?2#q0GR@F)O9xM3=lN=b+icskfntQ0e1Kcz~X$mjDi@O;sxGTta*d<7Ds@i(g> lzz|>vFa#I^cy50M7y$d=)#7A2T_ykk002ovPDHLkV1nlod^`XE diff --git a/java/res/drawable-hdpi/ic_dialog_voice_input.png b/java/res/drawable-hdpi/ic_dialog_voice_input.png deleted file mode 100755 index 11a3cfe77321318d0e563df5cdd42eb06a49ef1f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1931 zcmV;62Xy#}P)LV;{7Z2xQ&1l1q0v9f|}tZXP+ zQfVKK`B772Q>is&P3`aZx^J0W(|7NTE*&_$`}Dng&$;(}{LXn}Yieo|Iy8U&e36}< zEtV`ar^fS2u~^pw{Z=w#WjI_7K<*ZKn{Ta%xkucrWC^msfC7# zAAOgbn|o|3C7d5K8@`BPwa%(<-@X;Y!^7g`%a`KSt5;&df(0TqHB~HLyjW+tYRJNQ z_6`gTOs@c)XT^#YwYtJTc1Cv{@+FK|jj8q+%{8~njFsS`890vi0F8*OO! zfCF_F9*w{h8g--7(xpoqDC>U|@Or)LaoMRGE^xf#xO7>vg;=aTfyh)TWqoh<@7}#L zfElpOL5_6^?}n_tkLSh`S&OnFs%;?vG)@3vDj-w&r$XgY=JyH!5?66YW{c%1B*a-+ zSyhGth{^Qst>P1-IdkSzP-`|IQ`)aK;mr0MSB-Me?YfH02(A8i2Ku0(WE!beV>qXZNU?7{##<(m-Mn7%QQm;DA#@iwD4V(Lo%*1t z7X?2TzJ&X23}`$RgyAEQ!J{ewWN&d|2QRbrLEBU%M4k(QK;ZN4?(QJxfe>qu;A+6N zz*qq&5HNiLi?Pje1GfjjRDgoBaaM`{?^9iyC(AW$=g*&a`2GGtOs0!SLokJ};E-1a z2M3KTEonns*E$An0pF1rhJw>^*}7@aNv24A;ojcf9Oi)-ZqCAqsx=jGBmDgdv-v(d zJG<`DqeoG;S70tJQt0=^H$pW|#efSapz`rfgQn@43NV?*Z0F9g|0Dvi=WCjsvky=P z_$2rg9JsTiqr=P_qPVy?Rh|kP2U~SpH>4*|p0NK^#3q87!Mb3#7n1Jlc;ib zDk8!Uh!Kquf^5!BxWarvVoOnXe$I(7dgiWe*QzptL1I3gdIGODtH(r}J3BkW{8_+E6W2h* z3USTpgf~vW;=E1Rl{E-s$I{Z$D)-6-hE%(R5dlacw^m06h# zGvTJ3WlKfo3S~+}fq$`@M46?MS)LkSrp?+I(As>K^#C*VWy#HnF8+@I0|4zTW}pNS R7g7KK002ovPDHLkV1j9npK|~J diff --git a/java/res/drawable-hdpi/ic_dialog_wave_0_0.png b/java/res/drawable-hdpi/ic_dialog_wave_0_0.png deleted file mode 100755 index 33023c3f78b520a4d0c6ab9dd832855b39622a54..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15673 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 PZ72m<} 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 OC`DOSnQAGMkpBTzSkj9C diff --git a/java/res/drawable-hdpi/ic_dialog_wave_3_3.png b/java/res/drawable-hdpi/ic_dialog_wave_3_3.png deleted file mode 100755 index 5fe5492ad95bfab73f6e6c424c20a14d5df54e39..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16022 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 diff --git a/java/res/drawable-hdpi/ic_dialog_wave_4_3.png b/java/res/drawable-hdpi/ic_dialog_wave_4_3.png deleted file mode 100755 index 81b803fd00c7ce17757553a2d82d15fdbc53bdc8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15910 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 AdH?_b diff --git a/java/res/drawable-hdpi/ic_launcher.png b/java/res/drawable-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..8074c4c571b8cd19e27f4ee5545df367420686d7 GIT binary patch literal 4147 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 literal 0 HcmV?d00001 diff --git a/java/res/drawable-hdpi/ic_suggest_strip_scroll_left_arrow.png b/java/res/drawable-hdpi/ic_suggest_strip_scroll_left_arrow.png deleted file mode 100755 index e375f262f875012c5893a2e2e08fa6d5ab8c9a16..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 619 zcmV-x0+juUP)-Eax-EMbt z0L1qo{s{3%AP^unn~mT*84ib=cTpmdIEUDa$z+Oz!{LcI{Fkq4vC<6U@wgWPcc}W* z<#G|X+fDG9!2bzAu2u!I6cCHWqPX!Mf?LcIi^U=fE8+@Z-aD?iphJXCrz1h2Y&M&T z&*vlPmT#id)w588%msu(Avdbs(d+f{0`_{niRd&$sh+i{8h|c)eXrGO`N3dNX}8-Z z8C#Ta% zj7HoN0|&FYMb!rmhvSv)aMseApJ;_b;T`L7 z49hNp!QjsyFyFLFNs>-x$0+}w%mEz00UW>q{{i?EU;y5403`qfvlajV002ovPDHLk FV1i%mBQ*d3 diff --git a/java/res/drawable-hdpi/ic_suggest_strip_scroll_right_arrow.png b/java/res/drawable-hdpi/ic_suggest_strip_scroll_right_arrow.png deleted file mode 100755 index d38ae7562d1c2ba5a9f7a61aad1079c71410a86d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 619 zcmV-x0+juUP)r5~hWXWWbvN;1}RH;-{TZ=4767zUGES*lXForD4 zPk`K&%Vov3U4)f02(x%RZUnB|m>U9;wGBX-&~GRdVyRS$dA;5&=7yzGsl7LVi&CJ_ zU*UGUSt5~O(P&gbHg~G3J{60_@Lol>f;fyUi^XDwW!L~J?im#dg|lA)R;v{=zZi3n z8R+x*jBFG|p)K6c=kq=5nUS|;KtUi{H3{>Y@c(EI8L&(yL-Wq%a(OzPP6N2@V<&)w zc@|uZXTq<^D#{`d2u!eut4^nLZ`F}^S!9No?IK}VL-D#;EG{7a_MOgFfUfICSnJ{U z`zdr}a0^Rry4~)4lg>tfSsdOP-jm!uK;ld8k>o7rrZ!!8-` z^E}v?0ea3H#m#A&HaO&wDT(i70T2KI5C8%A3&5uU0|4hj%<6-iXMg|z002ovPDHLk FV1le=5-R`z diff --git a/java/res/drawable-hdpi/key_feedback_search.png b/java/res/drawable-hdpi/key_feedback_search.png deleted file mode 100644 index 45289bd285cf05aebd93852164734b33e34fc886..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3851 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 kyD_`7_TT8TGb3Z-gXHYWA6^GaFaQ7m diff --git a/java/res/drawable-hdpi/keyboard_suggest_strip.9.png b/java/res/drawable-hdpi/keyboard_suggest_strip.9.png deleted file mode 100755 index 0cbb3ed8682650355343a8aa90a483e579497eb5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1577 zcmV+^2G;qBP)V!7I9 zlP#|2a#Qd7nlF4$kG=bK1^3@N6ZRjted_2c76S9sAlAHL4OHvAbBoN0)vUfD%4ybu zs7~bGr{6LkS5F;>W1j1Mx}43==Xc%o(|r!}DNYVdP$yO3`7hoV$tTb<&C6+%dwjES z!9)09F#rciLpPo2ns*dekf=gL zpCvY{JKWs58oP7*PFVTn{8riL`oJhJ`$RIV1hr}Q!@?(Sok={LNeEdLrLY{G(0g}|GSMc}W5C=WAm0E3bf)pZ+e5j{NdV`XeL-|dd84!%)+ z9V~G1jK1~!)%LqjO6q3$kW|DHzh(@cr-U0bhTWV&!O%G~gq@cGWMOHzp}H_*f2)v2}xYfj6N1Z&t)IeB15S`Aee+U7=iP3dHdc{sT4=jmVz z-}^I5_XT6p$3Y1W)g7j^9nq1yy?SJDAfA?QC_JGYGlBH=DT}5b87Dp&i3h_u(NXBC zMqef4ci*jvnWnUi7K&DM_Ng&e-ayO1tZTealwW;j>v#3!5E+D2GAF2KPOp|gDIIds z`y{tNft?NE@(zI?Cwi!iGsy-mx9WQD1C)b;<^!-eV97Pf8KOF7a>pdiK#{WoJXoAO zA_*35v61Nf!xLX++qa+47bJMhrTa$6`V=tO+0-6H%UP%lm?*|#$JQmwb+>g&#zCkk zR4*WwXG*Cev)i?`Itg_~N6d;ncs3prGk zO=NW@t|N4;TM&{vx=POiGWlPaP#?YQiU_*a%}b^caeG-wkL;=3Yeut_ZrBr7=`P8b zR`?+hKo_9{BbmhNTof6;u+g1CBE{5rZsZ7Scnp^a}X#DzITw&sme^_o}3- ze&AGGhXAgJdJd%8n5K8oTJw-7?ZOqhD+svD_&4fG0(PpzSLCLRKoMF8e=2%LXW{H$+w?y5X6`5ct427Cl7))ik&bvo1x`Pw3^`L=9{54 zC{$pYblBL1Zb?X2Omt}_!fN8XDw8Y0rp=X8r^Zc8O4!m`Un*sZ5M|_qWHLxOAYg(; z1;^4jGtCuN+0mYxBwa(IC~SLVTpKGeJ~czxdRJ3&lb)6yruSF0ztQTKcM2rN-@>p-*)OkvD{ANbIS8~Vz8Y&!Oy!9%-$@|7*zvNaId z4aNNTpOn5DdsG(zK;e9ty3)CY($izl9k*nsNc+vz@<^qyM&V04Iw3d{?i zvxhA{R3D@1&^&L6AoL8|i1B5jeXFZZ=aU>GwfguvYD&)W+!L56-_2Wb($uT8e zoK|WLw+f|2T%-YNbi{-hh^DJ90WcPZ+F9j(Wff#fC+D7(4UN+0*KD(BRXH#=7Y7OV z>KxHiCO=TK)*(~wtnAK5e#v$baF{b+qH)VQso1@Lv0u`-^rPrPpkWm8_G4<2=xMS= zp9K!0X$I*}-c+D{TKOzZGn}tBr-HavOs5F(*OUF-di6hh{WkWzk2jFJA@1yAR_00000NkvXXu0mjf9^LZ@ diff --git a/java/res/drawable-hdpi/keyboard_suggest_strip_divider.png b/java/res/drawable-hdpi/keyboard_suggest_strip_divider.png deleted file mode 100755 index 1a03c52e64df4681aacb8bf1c15cb741eaf0b568..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 172 zcmeAS@N?(olHy`uVBq!ia0vp^Oh9bO0U{@7=E?#o$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWw1Gex5FlAr-fhcGUd*v_5|SjDP?CpFePbVNnA^ZxREu3D-iF zP`=d)lh_{lI%*tL_gKO!(PVMfCBvaeQZN6}7hSvCk_Q_&IUGc$urFj_;$fK5SXEbR SE_V%RGJ~h9pUXO@geCwk*Ei?@ diff --git a/java/res/drawable-hdpi/list_selector_background_pressed.9.png b/java/res/drawable-hdpi/list_selector_background_pressed.9.png deleted file mode 100644 index ba79cf7f85d3cf1709ef6332322fb6543555fab3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4203 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 z 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 diff --git a/java/res/drawable-hdpi/nav_keyboard_android.png b/java/res/drawable-hdpi/nav_keyboard_android.png deleted file mode 100644 index 8ce6b6b1f44b87617084dc2cbd05ff9b30efb6c1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1835 zcmV+`2h{k9P)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01ejw01ejxLMWSf00007bV*G`2iyr9 z6&@r^SVlJh00yf`L_t(&-qo62j9g_I$N$eeyRaJ~VS(BN4Fa0#1=iZ6A&`g{8WcYh zv4T>oji428%8eQ>%$68XFPfMb3z9$}F%i)VQ7;UsfiwXUT57C?AcRi|2}UiYuzjhL zlWBTbv%Lm@rN;m;Ic#2vk?y=3MqV!(}H z?0i-4y?HRboCOOtoZY?<8({ac3Q-ZU*#ySqFO+W7>ajP5pce~Wsj!BfF9CzOaajcD z2wL-&?b{Xxvv+}?vHf95I?fxzWZyN|j~G8_d%8SUxziWR__|=pLeyO6$F~2~BUsM^ zX8_wjEL>r*8ySDT;L+IrPNdnXm=S<+Z@in~&+P>cQoxu5vP|T#^cH{5k z|JJO0vedW)8{-Wl3vp8WW~=d$^4LTT0v8H{2SOk{;WXE2Oq4?G2bNx582*U8yAURK z1n!BPH41ju_h#DNXcWbL^JdI{7DW^YAlZ%@guZS2W0K^&%n7ESrOcWlzj>xYuadXa zVa0y_1)OC7=d~L1f)kU*hk+~lx#NVSR2abT4r#L@J_)#!fV(nZnWi_3Th%Dtvp*Iv-Q^NJPq_|Adi@ zA!b9GmEyJXMp0*?oB8e{Y*1m=%lgHBB!xj2NZcvKR!Q>_JS1tI6zhSVDW%!4{qcx+ z82Cm?>Ao5od?gh3OFAa;ZP33XVxmh^>h-_rST6y32@i4vlahWa#Rn^9Yw>ZJLXQJC z$!4D`l)=$;gP#@U31@2s7WjZ&B(xsM?(0BXW!m1@bzz0|?=Q3Lx#MQuo=f28Y=5&m zR}=!Y*Mi?HAt~te!>ZCvb6TMlF%?p@BJ_6A?6kUC$(A6Fq<*bs6||?NLmI9cKx)2u zL;<0FOW&1Zeh>guThbr`%hnm4rZva{T1g8GQ*b7|!&h3O53albi%s>bX+?xmKPFd$ z1qLZ`)yKdfB@RTP)$B&^2oxIR;)76#RW2Nr05ok_;cOfc@(?iEIqs`X4W?I4zsCWx z6le8vC4@q8b^`53`c8drS$oK^y;MVM`~tKTp`((v)zPS?+)qoImhqKk)3UA03fGl$ z`=j6$m`cpGz>nEr`_|5pi!Uz*&E8(MXG$@(J*wZ11@XwBej~ouZC_VvWYTU&_K7f#dCxZx&N2?uEj>4~(HW9IXLlNZpqF(3of@wjsR=Ur*;aP$`Hwk{-wZ~13 ziK3r*DmVppfo=|QFTr1n!C55Z-%O;5V?7w15xQEzv?NQK68ck0tykR6N)xTxedd$Y zx>lhnNo^4uLfWB-JrQwLH!maCA>dCK?#CR$JOz-=dm66WSfCis0RJcejm?rorhD%h z7%(rDbpLF)zOKk6J$5a}?%l`URpyQh8w9wN+C{+s?D7duF98Z#>qcp)2HK@EU8feR z%p3!SFVlY1OMu4IJHkL=s86g zGM2GQAAFJ&LXGbhxGrEQqS{M%A?gZ=(Igwyg>q?!h8l?}2&I%NDc+QHPOr`hsTD|+ zQ|K|)D(o}9y8(TEX>;(@f9?PuYS_CKI99!KFt#Qee5DKg{%$8jY%l6RZ>ll5mZGlz zh25U0CC5(|bv@h1-Aq>{_?9vW{oVE-%11)j{!(`?u)Ps;)aH5H588gT%+@>0^D#>A Z{eK;zj5p1{D<1#=002ovPDHLkV1ghHWQYI& diff --git a/java/res/drawable-hdpi/nav_keyboard_android_on.png b/java/res/drawable-hdpi/nav_keyboard_android_on.png deleted file mode 100644 index 3e35b2cb15402f86ac3952c46687deda0b7cf215..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3361 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 RUWWhx002ovPDHLkV1hY1KQRCR diff --git a/java/res/drawable-hdpi/nav_keyboard_down.png b/java/res/drawable-hdpi/nav_keyboard_down.png deleted file mode 100644 index deb0cf39bd732b3dc207a0578e5846d597fcad4f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1514 zcmVPx#24YJ`L;(K){{a7>y{D4^000SaNLh0L01m_e01m_fl`9S#00007bV*G`2ipi6 z6gwvN)x3HD00nAEL_t(&-tC!BOxso*$A8aujAJKu?EEQ7>jY?58p358xm1<56UUu< zTBS)7TT%{dZ#_*r^uQrqL5T!v&f9g05K|9bwL>SQa$ypYDkZEyU{wax$zqIc@^-;d z$^r@CR8-1Wij>5W-}m!=@BRGyy#VyoQ%_yd^XJbS@1H$;*0pg6yKgudBDZf=hC`~7}V6iJTb-p1qcoo<>*r_+#3 zCLx>6x+F>RNs@#(j(a;cHn#iv^=pVkBArEGe0&_z>2y+(q*^!}{%c@hpb!d$w%69y ze%spG>PplmCnq79OhP)H{$3QtY9ta_9T*rW27|$!wY9ZhB9RE}?(VjaKq{32jB(2E z_kS0Q#qj0Jml4A-KoA73*Xy5anpR$4U-$7mj|D-n#r%sGFW~0Qn~=$5ehP=fw}*#^ zaese5>g(&X#{HsFsVwn4|LKVlc=+%k+`D%V7>2nk%Q6lIgNWlepePDRl0+0mVUFV@ zNs=}MK>$TjYymhlpACn@x1-T04uwMRjO%bXFw3%^RIAnSi2x5CJb1xs z@UDtDgKmbHhY#EJ%gM&ZHu^QO;J=O8jZr$t5-n~gqHiF8Nx6O&~+Wt zG>vGQZe&ef*`y+S234JB(_vly|S{hf>u{ov7#t&aBy(!#p$CUv@MZr#v?FG7R%iG#Z7Wp&>YKPn^R%YPaUk z)elTeOl&KPBINUV-OflfXPeWQKT|`~*Vk836vb;7#L-mQ^^R;}VghKI{&#zOJCM)k z;V8s;%(u$(T|L}QrBXgglFIF#6X(hET?GIDc>MTrP!NR8P9aX4=erI705CH%bH(j; zuXh50F>d7fPE%#qPbDTNCpW6qYAB!2qe7w3*b_|+$(i%~dx?Oh>FH^o$Kxpv4-Yq< z6V@Lb&3RrF#U;DOB<%!PSXfYR-MaOos;Xbt>vfhSNsJHz(=^fE-X2y}HSY8Imh2qU z_9GI8VU#;}?)VCY!Vk;K%NzN8zEmt0e-=fNG);2}K13}pE<#T|_0%2x2TYfwHSOJ? Qu>b%707*qoM6N<$f*-EL3IG5A diff --git a/java/res/drawable-hdpi/nav_keyboard_feedback_android.png b/java/res/drawable-hdpi/nav_keyboard_feedback_android.png deleted file mode 100644 index be01767b931a695ef8b787949fbd44e3152746aa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1896 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 UP#+|$rT_o{07*qoM6N<$g6EG<)Bpeg diff --git a/java/res/drawable-hdpi/nav_keyboard_feedback_left.png b/java/res/drawable-hdpi/nav_keyboard_feedback_left.png deleted file mode 100644 index d76957b03f2a3e7eda0fdf137bbb514142e12f54..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 771 zcmV+e1N{7nP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01m_e01m_fl`9S#00007bV*G`2ipi5 z77sK9evQrm00M(aL_t(&-qo5*YZO5c$A7b8K*1OvV6LJ>H@*Ui5F|#gp3EUfzd!^L z68sLHJb3Wn_b?tjB)J4ZFsNX554nj16$w5PCnVb*whKCAyP4^pN%u4qI}EeaRsZ_e zqiZ*z^dOd(H2Za0Naj1`v*8vF}VLUR%UN= z8(8qz=N0hYe0K>e0ouA@Z1p9))H$s1bVOK1WZ;vkznNM8ne)4`T2{zmc6>jF^jMoZfN>YI%MpZ2j({ zcfzsQi4l)tpp$R0n~8x={hon+F9td_Jc`|qSX$dY2TzEx(`Ds&A5U!SVL&_6tLHgU zjRrSBH&mN+e_m}DoJy?6b42RK#6ZqsClop#*Eug=ij{jWW2wyl^Tdk92)X_S3`VEC z#S_oz{-q$*vH`rPYQ|F4I;khsiAMg*z9*`J>o16xQiqZW8RY-~002ovPDHLkV1oH$ BO`QM$ diff --git a/java/res/drawable-hdpi/nav_keyboard_feedback_repeat.png b/java/res/drawable-hdpi/nav_keyboard_feedback_repeat.png deleted file mode 100644 index 3e9dea43e72f29ea1e822ef6faeeaa88ab638cf4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1368 zcmV-e1*iInP)FV00001b5ch_0Itp) z=>Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01ejw01ejxLMWSf00007bV*G`2iyr9 z78WZOcyIRr00h`cL_t(&-p!e7h*eb-$A9H^?LcbU1#~Fg2&|C%Zs03n zIFVMB=hNEFs9xdaz$?Po)ADW}Fm9N4tG~{S)osRW8Qltes~B4^@2>`?74!D`AMg|K zI&f1v7+(VHF*dzMzO7U564NK~_(BRy0*?V_dbC?OJ>p?tm3+Hjo~HwhrXGPR$}f%r z4+YG$5c*V2?wEW)eg8Qp;~`<({TQ&QNXE|=o3#%4n(6mZL<8256A$CI&x1uU-v#XT zOt9C}_aqfIZU3as=FIBZnTE-c!0KEP39H+3I&n3i3EN(7RETHPM0%2!BH6e{?l%WC zu@6`ae3LUmxw*HfIdakU9tKJDi4F-sqcfp8ySKm%BNQ6t!V)M_As9Uo9fi! z0^pcpXosgyAFwmvH&!G4c_!U#)aTk1a8U!Mcn+{%#@H6=cUK@vX`x24CYuc$3aIt% z8Ai0#9_P1oJ}?^ay{bu^URv)_Wks&n&9L0Ar$8Kun9&chOg-vR-Lwc%R}?6KJ_#hd z6d3aTFc3&OsSMU?0RVOf%=rr+Gb@y8bOZQIu1SjpST3O(VcgLo;6f|Fkm{J4AAW4p z#_3l_5@6*)mTm{Vf7vB-6f9zHV@2I_qQl?qLl!eqxWoLbDjQ(loBrrZ1RiRxHmI0 zmBsH$9%0V&Ebwv3LdBD9hXt)@Hua0P?=|m#^Cj1ZGhh(?ZnR0s3TnvpFtE!k+N-M1 zcHnb6$oz-^RwM5=VYP1)Y-!RYD+jY2QDOZ);3>`c2f$Wp2M~D>v<(F@Jt!#0u?)1% z-S>&M7HeR5R{%xx0aLEe(t_+ejqHPcf;gsof!Sp>P!b4>B~K|^RC#?=@S%F>GPzCx zlTLsaL@lM9iE2#jbf)wdaFr?#N}gO~?-zy!8W@KVB-@$Rj|7I*z240M7vj%pgMr)vP3PS)m`c#~ijh2+&JZ(1K_N+o8K!F9Nnjw*>ELNvF16Etf=P$z|F1Lm(B&A^w@RYsAAji)Q(eI z4H|>^$A_Lom(_lyc385q85`z$;=4nt=Kz-gS4t^zv1qC+&V5h{z}?gi%=d`~U6QOe a%EbRD5AToeDIcZ)0000Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01m_e01m_fl`9S#00007bV*G`2ipi5 z77r9Y5UmCP00MGJL_t(&-qo7VYg0iG$3GiN1;OHvVtepX6ixiqmgEqmt@PkQFM9Ck zKTtsgMeyoB;K73j{}1ccUc3kj9&GXtNJ~Z1))G@q)`RS zGqba^FA7hhwMHoga2i+yt^vP+FGhF8J<-ZNpbO}fZUL8xT<#iY2N?hoT}h%9jRFQJanT|Ya*1uk0OAVp)1k1NLxUJ0(iz~FWlHQ-seqruN}f%lvUejYDcBa3kL(^)_R)x=@K|Cbt7G` zuS&#zqG#klvs`eZia}};z&FY#JqchvHSU!`KBm9eDN+8v%xbzTC2_t5oH%O7Fb#Y) zo3FlEm3*s9^J}M>&)P~P^X)m{n8%#$0?&avme03=rq;SM)&pX})=1wc9@M@z+_0~A2~8#3Ca9Z2j|{+R>wE#OqhoL}?V zq{b}|91C_T^zLxap-ELjpM~DHWPcNwbTRB}ovjy`=(O0|)V0=!E`}#O0oW>VuQJY8 zfoR^`Unr15ZQx`yFS~^!?{YvyvsC7Rm<7IPfJi=nj*9sldCR}Q9rTQLfH$LJUiplI kD9E$ov~L^uF)FtH0tsAs9jArf_5c6?07*qoM6N<$g7IBNL;wH) diff --git a/java/res/drawable-hdpi/nav_keyboard_feedback_up.png b/java/res/drawable-hdpi/nav_keyboard_feedback_up.png deleted file mode 100644 index 49abe76ec2c6b7632ed5a1387b09b32081227b1a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 782 zcmV+p1M&QcP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01m_e01m_fl`9S#00007bV*G`2ipi5 z77#JGPIun`00NFlL_t(&-tC!9YZO5chMyiZl7R7pfVoE`@goWv5H-=0ARhDw_y>%j zAmZJ-5mYeXZ}2JsZyxj}K?L0u#EXYTBLqLQYPP-9gl6c;c29TjPGAcPhM~LXee3P+ zs;z|trnPo@7sFHv@JekgI|J+h-T_~!yGfLH0`~x2@aMqslxoD^L3}26VCb9$v z*43-uPBLjI@Tv^mO6`z5G1AA#7u`K$TdK-VAAy@?$6=qUvQd-B7k#c&i9|_iv#53| z%+bJPjC$U-_)`y1&w#bqN-PI}p9f|=2;2qs0Y3uNK4^k}93bmWS>wFN`~{hF2>4eq zXf0qDz+ParBKRAIlvM}-900yoRAM$0DTh5;ELz512ksZzC{>c>dth412j7LJGtWsm z_*=lk5byv>shq?|X}SFJTw;3$tN_0SoJ%8Y9#{wkZz1s-n2@C9S~tAOfX~1S0jD>K zJiu*WF&20Wi574g`0KC}*5u~guocTeGM}$@S+wdQw%IuFvr9s|T+G1Zz>;OsH{gmx zF%^Y?@r?=KrDg6aa48?VE#C@S>y}dL0z>% M07*qoM6N<$f*3qWKmY&$ diff --git a/java/res/drawable-hdpi/nav_keyboard_feedback_voldown.png b/java/res/drawable-hdpi/nav_keyboard_feedback_voldown.png deleted file mode 100644 index c0c8fa21a67a47497da835221c59b6adfd0c3e3f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 535 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 i3;41IpWpRIG`Y7j600000FV00001b5ch_0Itp) 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 diff --git a/java/res/drawable-hdpi/nav_keyboard_right.png b/java/res/drawable-hdpi/nav_keyboard_right.png deleted file mode 100644 index 3193f60b2a7dc4aa40af6bd9f8074da64c1627d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1454 zcmV;f1yTBmP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01m_e01m_fl`9S#00007bV*G`2ipi6 z6gv%CX+=5!00k~dL_t(&-tCx8ZyHA!$DbM2urOYhmqiY?AaY_?!f6go?MglMd-PCW zqDCqrQ9nVe9CC0J6tx8zOB}17dZ-{5A0i*BNRgVVQX4z80m+!eN*o&ow6HJiP7lpS z)CLUpCJ@R06B5Jh|M$%EGAzKE&NP0yb?esqYd)Dw0sz3u%F0K#Z{Pm>&Ye4fxA{D5 z*GB8>>i_`27)z#7DJ>KV{XR7{^`jsN`*-i&Edc;zvsv2#ke!>QQmJ?-6#5|&i7=nf zha3(EG@DI$@!|#S?Cj_O5WITzYGW(`*4EZMfj~gMbmUPEH1Ro=3g<`XCTquNR`xC`2L=MhNM0Q6ku;}&&TsTjmP7I zpFlR7rO{~AJ2f>09*+kw#$6*fP^-fjJRT1Sf&jfvpw~$hi$!?y^0GA032ba^ zK&e#vZhn3~F*i2{q9_8#aVIw4**dMrAGcR0M6FhXLZJY~V)5qk^71zWJ?!4SdzDJ1 zVrrVkOw(j`X_&pNwVI}}a=C2g^ZD|?gG`bnBnW~nk?%IZhFQyT9EhR_k|d#l0Pf$v z4{o>n4~N6?&RXnose~~`Znyi_hYueP_QPB*$JJ^zX4;uQCzN3rX0=*1hPn$~xpJkg zY1(I+rXj`{bl&YxA5=EfVqMpfrfHu%d-iPjLH6?HOArL%D~$0M7-M$I{AU>BPY0<3 z3sTp0Xf~URe!u_Gi5}W)Htqbgv)XF4m}#1QyOH(1s;Z1qx;PeZ>vFkV=JDgltX{7( z!!V9*pQ@^|dc8i7dHlA`udS_pKQS@!B_U*xDa>?T2Srhqyk75bBaeJKolfO)IrjAF zQzpyuaj9dfs>*7$+Q%a`{oug^%Y6E<`Cb5)`D(Q~TJwoS!ZM#diTQfHK05QMRLU~{ zQ$C-6zsz?)e4EebS+Q6&`{jIRt2}Ma+jif{X0wxizrS($@?|zXJ&oLMci(?rR<{vF z@l@T0vkM>)2uSD8pNDhj&h<2JN!N8yRrS>7ZJh&wKmY}UL2$WT@3ha``gWS*xFc_; z4`0k$t=6I)k$)>Hm&?Csnr1baH$^-)eZHTzx3>WRpkA*(YPZ{OI*nl%Oi>i=;NW0! zELvqhRjXA10BAHCQAJUHR#kPq)oOkH8VufB*?BEL)0u46zkw&oy6?YSdH?_b07*qo IM6N<$f*xz2pa1{> diff --git a/java/res/drawable-hdpi/nav_keyboard_up.png b/java/res/drawable-hdpi/nav_keyboard_up.png deleted file mode 100644 index aff86c5b794914893d21ed2c948378a2c06cd997..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1455 zcmV;g1yK5lP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01m_e01m_fl`9S#00007bV*G`2ipi6 z6gxKSVyqqj00l2eL_t(&-tCxAY|~a8$G>*s#B~-sB^4za4NEE&g2aikLod^`3p-R? zw{s*mCF+45IB;RRATF(d;EYb{Bz9o;3GKiERUj1*?Ixt5WU2^lyf#5V8z;zd{O7$L zmQ-m;lV&84N%=~V>?D5g`+4v8`}t=Bef8B>*Y)Vpqppq3c6vZrmH_}aZ{Ga=_U+r* zhYuerJkS3E0PE}P9S2}KJ>bmDj5IVf^lWr=)E^86sU%5YS(dRZix`IS>G1IIa?b)> zyLN5J=kvWhdh{s5;V>jgg45{)08mP)X_`#ATpk}B99-@>fJ7n@5Jhq0*s)_69Ua|m z9t^{5L+HAGN|L0do&iWC5{JEBuX6nOaT*SX8A+1ha5(;*fY~_(r4*)VqEe}x5=C+8 zgD3ITt5*a2HD43Qad5lck5yG2|DXV~v$I2zByF@~zVR4QVp%vY~rIF6%&AS~IoeX^@NFgG{n=Xw6s?y&i<<{Rxqxm+Ii`FzVA-vL>c z18%pwE9UEWVqjoksh#SyubGp{psEm!+fA-J`@Ud#5|?6>F@2_ zCzuvtoDV0hfgfue65JDal3WYgEQIOB)Q7)JF46FJQYgyKKu~^(6z?CakG9x1+ z+>s+kT2`B?`4x}Hb2ybsS=nqBnx^d;=af<=5D0vm$z*;^r_;#ga{Gl?6h#r5rZoqc znVC5t2tsIhcz8!k+{FB!9*<`X02D<*u~-Blq-7#cPELN4&1SEsQmGvfO-d|RE|<>< zg3ug*5OSL5c?g04r_;G-qScu{p{gnXK+`nXw!QCaboT7oDMe9|^$?AAp_cG0%YNB1 zgeavc+qPlb_FIG1&g;VFgsQ5LBnbf8GG9|H7Kingq0GBRZ!uj*(|Ijqe zEEEb<*L4s=>IbA%^BW$IXRO}*yC@cm#S}&PDV3}bXfl};0DMIV zp@$9~V%%@ z&CN|uHk^O4d&_*sb@}q;)31GrMlwzFK~KM#d*A8<^a1(+eSr2K8G9ChQpyrS zcK1&^zz88s&jN59x1{Sj)ie#3Wi^B#g#6sI0ECd2Z{EDweDUH1R8`%EsD7wn7$}uW z$=y#?@BQU&GtJM>4*6cHUN{^M#RbP`*ZRgOlZ(#pz8 z;>nXI8|id9m&s&)yMO;aXPV|c{9m-Nu&{l6_wHTv)mLBL(LY5^Ah9EKlp+8C002ov JPDHLkV1mVSu(ALE diff --git a/java/res/drawable-hdpi/nav_keyboard_voldown.png b/java/res/drawable-hdpi/nav_keyboard_voldown.png deleted file mode 100644 index 994a2496196093c1b420303653c17a7f2cd0a39b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 600 zcmV-e0;m0nP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01m_e01m_fl`9S#00007bV*G`2iyr7 z5)vV>qqOY+00G!ZL_t(&-tCybYZO5gfWJAH2;vX0P%w>+#6kjArZA1It)K{2sl?Vl zL5QH%*8V{J7i_Ikr4XwiVkLxth=Lqu-OpwN&+~RKcX-R5%-77@*|)=cGjHb2TgYTG znM@{=$;=IP@IN?lTwR^V*n0@tHI6UKS3ZU8UquFJqJ;8ho4vhH|FwW{UV zmJNHLP~V2{pLKN#{jA$xVWzFeN|RNxvr1V6xt@ajd#HJT0Re)?%IL4 z0!?xoyTG?vUILEwE)&n2;va?(6XbE61x|*&^<&XOXf@=6Pr#Qh99XK`BO@zN)dnBx zVx|`L*?+)RO6hYKA@mX0oRG*kgflmR_3-?rizL>1l~BKi#8ia@H+mPkqz;4b_N;}^ zR3Einds9kJffe9I2&=L|y$t6+!2Og`)tl;Vk+0K#6*R$t&8C8;@AdGSx}!dvM@hNx mMScFQlF4K;nM@|L!2Aa1>!YE`C!p*A0000Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01m_e01m_fl`9S#00007bV*G`2iyr7 z5)cL_pJN0700TTpL_t(&-tC!7Y)nxY$Nz_tdbd@NkhG;Fgop~U5H_snQoKTfg^jYp zLPBFrL?W?ZXJIMv*dSp;q#mUS@rp*JZG>t`n%1M8pM^8Y=Vb1fJDq7e%s-jj@0|ZR zcfQv>_dDlGMHEp)5&u1a8sIjtp%9g?1)lL6?Z8~$??$`g&R_TPC+-x4;z8e;z=)Hh z-Ro0QaJK>@){a&q%77-|P+(LI@Yxt}cSO@7Vq6vQ)F`>h_mA<{JwX(Q(f8ya>Gpm9vkjlzP!HLKa3WaZN38KKnrjsm^&5dGV?A4jyZ0)=fI3yDqael z0>1k{7yuHX0YHUMt0WqN`y4e~2T*OebwID-SLaIkjler|4fLofE$vw zdVZCe3-DUfGT&7f*VAK3jRY_lc%M`eF!#D>=06I!LxyVt$_>|OxO-8$M!g{Lo=?hH z=f=!DyG+gpR+#p4A6-eRl~ifCH%6|GYk&fUT?TR#-b?EAa+#!ghWjAttCuSzO*Gs` zBUeVfjWaR8Mj)LWgWW-?d=KN+Z8;&h?n~(ugH> zNTozQ(3W8-Q317e(>~&y>o)D}W=ZV~ zqO(rY0@H5FS2_J)2<7yr80GZLd~Rrta#sosSi?e_lO;<#4xr3c$nf~t9rx^wsLf|c(YKB77O=q_n$akPhm)5e&7g eMHErQe~w?DxHea%f^&NS0000ep diff --git a/java/res/drawable-hdpi/ok_cancel.png b/java/res/drawable-hdpi/ok_cancel.png deleted file mode 100755 index 6a99528ef3e6e2bbc00e516001c923b295361a0a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 442 zcmeAS@N?(olHy`uVBq!ia0y~yV7vunyKt}pNwxo9G=P+3iEBhjaDG}zd16s2gJVj5 zQmTSyZen_BP-$-(Y0O{@L@`f>(2?d)-beeuju}xy|R} zGxYnI7*<*Ef3~q^V_4ym!RP=+3=3JIs6~un8+UHcMNNhVS8fI|U512FxWL5lzs8D+7x6vGCXQ4M8(7PBHGf$~6xBfvf_sbhK7IaFgCQaG{hvG4|1%gD%v;aE%%C=V#o7g*i&KD+!QkoY=d#Wz Gp$P!_K#6Yv diff --git a/java/res/drawable-hdpi/speak_now_level0.png b/java/res/drawable-hdpi/speak_now_level0.png deleted file mode 100644 index 342849cfeb13cd8f3a6dcd6befe53f3a6abca5d3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6017 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 vNxU(cr7=-7EP)fTy-05+Hay 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

&VEOj!+2e!FRRxb_A}DzM{rxgyuS?zPr1dnHXzR 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 diff --git a/java/res/drawable-hdpi/speak_now_level6.png b/java/res/drawable-hdpi/speak_now_level6.png deleted file mode 100644 index 9f4481eb4fabb88514141d4251122e1add120bdd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6782 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 diff --git a/java/res/drawable-hdpi/sym_keyboard_delete.png b/java/res/drawable-hdpi/sym_keyboard_delete.png deleted file mode 100755 index 59d78bec06339da04b7ee3ae908a2be0994e296f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2282 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 diff --git a/java/res/drawable-hdpi/sym_keyboard_delete_invert.png b/java/res/drawable-hdpi/sym_keyboard_delete_invert.png deleted file mode 100644 index 5f5ffe537f56dab638da9037b0abb3448ff8faa0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 986 zcmV<0110>4P)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iyb* z3d=Q%&0 z-=F9Ed!E~|u&}^VwN93>6>tSy0aw8N1M5nA5k(PZHVoVi9#??xz)eYylHb(ukL|Oh zb%9?W@X2q_NxGc;pj0Ylp1HNa4q(E}#?5Sb9p4Ht_g`kNh7AF4fDzz4uow6OTukvl zCh1jfdrs1vqzk|;e>7rdJxeVh?)h~EFpzsdG_Ws0yEnyWmzl-y<|IAL3+{K&UX|i= zCX7}fH@MKMDbF7Rk+)~^T-I{Xo=)+(l54aEwm)dUTr$yWW(Qs803J!IERx~pzgX6* zW_I7@BVNuEb^OoxKmcYWT}tsAHna7?{V7S+tZ-}n`pb3hoTPfk)2>9cronCTUuq#(4qn^@l4^+P!822nEn+UtE4LRT{;F-%zBRd@|;SourL7$OFaV4m(=3B~y zT}Jk~tdxN%mz#P~`VH9XXYgo^_c7p5mZ?h$HkF14IIjFVk{;rISkyX3m2T3 zV>P6q{RNJsd#;1+un%=-E+G{IInUt3qHZnV3b+EUfNP`u0ZXh#k~{?}6951J07*qo IM6N<$f&%-%VgLXD diff --git a/java/res/drawable-hdpi/sym_keyboard_done.png b/java/res/drawable-hdpi/sym_keyboard_done.png deleted file mode 100755 index 471c5021b88acefdbdabd722c10e9761c54eb40f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1593 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 Qu>b%707*qoM6N<$f@flaE&u=k diff --git a/java/res/drawable-hdpi/sym_keyboard_feedback_search.png b/java/res/drawable-hdpi/sym_keyboard_feedback_search.png deleted file mode 100755 index d931b39e22115c03ad18005409364d0f1290fda1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1209 zcmV;q1V;ObP)wB1qFF7Az!UDPlpel8}gvSYSiEnn+lP4e>}cq`E>vu|P>gLZ#lyLQ55W z+}>N~@c)v}bmo4~wqIi=`KQU;@6I>BGiT16Gq=XTz(B@mZjp>p-ZX#)&;S}h184vZ zpaFcenAl+$hSTpxNx7ta{LO+vI6Leo^^$&&ev$gnKlA`Ljp;H;V@VT9wWMlNIjIo+ z-$_Z*d(uNvBk4J*9YD!I2{@g$$_92EX$k2ZsS8$hq8Fsy0FA>C!wSIeQARpQ`sQNd zqMndyuu_rX0>~y+lCJugxK->*n@HmWfv^E!%g-R)cQCOI(nnGoHgURVd4q2w75R3j zGyoiBrjRbAnaFF>A#CO<(oC$@JkoY-;6BB7d9$w}gbeBroeGZNTcd z@m+H--BE1n`JPun0uX`4WY(|40p?}naWq>>`YIXs0E`j{KrX_Z_>#}0xxW1MuiMF1 z_5rChsAMh{;HUM&HCrS`n}*Qs8-PRN z1W7;VGd+IKO^ned`D~IG_lzj|a)ds9=}(*qep?b7S!{V;Qj3VfN(o6O8Vx9mG!RzB z*6pQckO3qRn?-<1ghIcKS9hwU-&25)0kFHgk@VM~`tn;q6~P$R){A!r0>CBUJxTux zZ0@KJ05-sC$sTL96i9)b#8pU-#RF$A(hM(qAq)A{2g$f6urh(=Ld7T>WqHdgSkiFm zI_&qCBx7=PTc+69o&k8UMabF37xHqiba8T;<>*mGYJLU=GlB##^Oj?Z6qxg(jj*aL zew(3^$5@aimFCoZv1jYs0K|||G$~%5LVmOvzFiKWGDMkLByR0#DmqT$7W%rWu&If2 zV8Irf8n+YA+$B9iZJcsgPh+~ft7r6X(mYkyyryKqAu z4NDZVD@BhW-F`{hf@Co2Hy0YN7DJ&^h~%zAyy7(U|BY$@4WI!ufCkV28sI+$_$|Ny XPUB=uW_hcZ00000NkvXXu0mjfoi{Kx diff --git a/java/res/drawable-hdpi/sym_keyboard_feedback_shift.png b/java/res/drawable-hdpi/sym_keyboard_feedback_shift.png deleted file mode 100755 index 4db31c849a0885e4b8a6c66619b8b8fafea1c499..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 885 zcmV-*1B(2KP)DIkVl64OOJO6VN|jb3NJt7n%LF7?*c@V_n3(nd@V_t_ z=Jq2qd$*_a;0OCLGyDFtGw;3KAdchOAX~jQ;N}H*0bYO?;00J&Q#}cSz~$J1GC@bc zS;kb8Z?mL{5$DIiZJvJsdoD#BQv2C*|0>t?X;F%IGg+uTjywe0o zn??3%^jm<$`Ey`_4y%rCapSgm9Bbkh*tgy<0TS!afCu1*=HNEC!_Ya(<87^t^m)iJ zf?f-d2abb#paXs@j(r6)Ok{zQ)Mj{3717}s<3&Wc5RfFQUCp8IU=Ezt913`Cj&0OF zyG0Y7t$-0jq7r_Ad2qJNYzDkH&$h84(T$WXKr-n~uwe*~Pr><&O<8A~Cx$n%!Lf(S z5+KRvDp*U2?Twsa_ab-!zG>sE@fo3O0g`ksgJnnAHRO1&4dX5IUelF;BvCCIV!2Iy zBYm!EZ!}4Ssfn(LfV4y<8*kFG!c6v5p+uKgfJBW6CL2?ty6dRM&q{O?dQ{6JAT4g| ziOSX2n<>%BCcm%el`H}JfJZqJl?xHMCrtG@P-mVW_3}z@fj1yh9wO`VIap;0&~4Z6 z^Pzj%^)cpvR*DE&F0c-+@x=z>a)JX zhrlB+Ww|6;Ijl8Ik$!Al-@{V#ODbtdcWRL;-7i2LFsHp}&$ zWrvJNoh$*e)_#I7q-@*agt_^(=+L5^*WCUab!e--+8qA(`oADxzfXPtrf)+jQPi?Z zgj&IpBiA>vGXb{$RBfMW9fjaP&)-1zubY#{e3wOEA)j4r;#Qyf`Y>7vE31?+Rhc$b zYtIE(SDC&V_0^~s;H%LAtVaDF@B+L5FTe}%0=xh(;6D@aM}PqUA}hN7!tw^n00000 LNkvXXu0mjfHtd^> diff --git a/java/res/drawable-hdpi/sym_keyboard_feedback_shift_locked.png b/java/res/drawable-hdpi/sym_keyboard_feedback_shift_locked.png deleted file mode 100755 index 3fd5659fd3ac276359578bafef0f2f38abe2ff53..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 700 zcmV;t0z>_YP)48v7}Dlk9;4ThA>X% zoS8YnZ{UIa%$a$g2|4flm^hB-W_g*PoAE^jR6qq(Kn0wZs{O_o<8#}_IzSJ=TVvYg zTg~afQ1}Me=J(&htxt*nYy^+X5@>^8Oq)ORpE(DC8rT6p_=v~+dWXLYS|9>%z_}G( zIOp%8Pz5O1D{wj?yl~3vM4<^(z)NtF5MDUpb*rHWQ22FlY)zL*&^jF+Qz=`3=J_T# z0>c#Hg&~h=W+_u&0yNjJf=}RXitqxBIpl4aq6KJ&&%gn=0)I0I#60$Zw`GbHkfQ2m z3~tk(w&+|17AF*yD^hfec?(dJZh{Ms;e`v{b}cUfDxcTjEQj#I8Sf+VEkLES0lGPc z7rMN!sxJX4s!jpng~XzpMj&fZxsq6PX$5FrUgNU4D=_?c(XEYlL>d7aumV1Un-anc z*Wd$ZF=++la&R9EQl6mY$$+yoMB*_4YQ#OzD>=ALk25VjCP4G=TW}drc;S+>MM(nm zGkp#)yg=C+NdgPt9rzYl@IT-y*rkkiW@FDjW^`wZ&PASs<&>9wE$}7d)!cjVGsSvC zo{{ME`#!cqd$^?BayYVEu9uX0b5{jazbg(o2OJ1c_%Go50Y}TB$XX#3S-qsOI*qD;3aEezsDPf0hIKZo{{aPx#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2ipi6 z5iADI^V-h<00r?$L_t(&-tAglY*S?ze!l+ftot94!Ptfj<1#u;I%?DMv&FGNwuypV z=mo=@MdJlovK!(JOB^O7nq7Fsg@#2VMnGdU3vvNQBrF(=!DvZn0^6`-LzB_5wXn9Q zj~BjYIjb9NlS8`LH~G@Dw_o4$J>Sps{(MugP)I5OIRNqixBw8qeE=~438fURdbhF= zlubab0#JVN;K4Rc(-M7sedhq&25=X^jFsRl0Yx&GWF^VQy?gh5Evv-?2M(Md*&yG! zWCB(UC>O~pk}vMrv*%j_l+pI>+xHF0CX(w(=4Cv%G*C^gt*vJbFmAW|c5Q9#nDO_H z9Xq}!*-Y~3j0Z>3L2?yIZ)0QQ83Tmh@4pg>MBcn}=g!+6kLNc-@ALUCOioS)NIpf< zk;%ZEB-eU8o_=HS&CSi{do5k86_vNCJohcmN=&luFG46HqPyB>>9g(Cr-_HoM)P+_GiMg_}2T?j*Txj@uwvOw#M|c&@AzKE;51+hjg?lrREUD<;#~p&@}BA0Han!2LBOQPEAeC*y+=! zotrmr?w$SO9}G4CYQd07)3h-FVF07%h(H+BZemPb8m!dMGM&Vv5}u7N# zPY0y|D3Y)U5-v^4bAd(rdn9K};B){pB1_GI>;Q^Fp-_$A@9zr)0`G@Hp=ZVK zm0GATTCz`-E9Qqnp=!V1|6U*vcsCRZZ4lNfvQS@;WyLHj{?Ayk1VEvv z?@3c~MvCR^PD?nXBs?mV0ZdCX^!XAZO{Uo~+m8UaZ#65X(gIf9G;7AQam!L{A|2yh zP8m2%gb3M+T|PV?Sy- zbBmk(g%~Cli@ol0xqbo=Hj+(K{jo@*0RWgvW4TiKT<0>VN0`L z3Lr&tw&nq#GLcA>KWr-+WHD!{J32bvI(6!lUQto;M+R1@a)yS6syjP7JJZO`a2Yh} ziej_*0nmzEVnG=zc86R3*;z v`!QX}ZAR|LbYvwfS;l0iEN!KC zJEwh4+kVbe*IC-uwC?5AnACsAGtI)}%*>AMnR1$m;q%+8Z%(q`sA8;;ewH%p;DMZ^ zXZEM}pPGH@@#m>~Z|XaTRd0S0&maK=Gx)ECHZU?YEi!+%>Wk2Epl297UHx3vIVCg! E0RCBNOaK4? diff --git a/java/res/drawable-hdpi/sym_keyboard_mic.png b/java/res/drawable-hdpi/sym_keyboard_mic.png deleted file mode 100644 index f33b4e2a12b70ef2783aca4cc20585af369a9008..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5731 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 diff --git a/java/res/drawable-hdpi/sym_keyboard_num2.png b/java/res/drawable-hdpi/sym_keyboard_num2.png deleted file mode 100755 index 283560b3534377e6f41fbcb5539649f70bcf525b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3214 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 A`~Uy| diff --git a/java/res/drawable-hdpi/sym_keyboard_num3.png b/java/res/drawable-hdpi/sym_keyboard_num3.png deleted file mode 100755 index 9a3b3294b90d521f26ead3af4e1e2c6e7d1726ea..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2805 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 Hu0mjff!$wP diff --git a/java/res/drawable-hdpi/sym_keyboard_num4.png b/java/res/drawable-hdpi/sym_keyboard_num4.png deleted file mode 100755 index f13ff1ae91dbd24a1b557815d0d517e6a890be05..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2647 zcmV-d3aIsoP)0CY#AR6D_?5PVUV;_nv$1?|k3y`+et(QB_rg zUfxVmbO?0tb@26~gRg_H7ae>Ze7)%4>)`7pe#I>Q7>&m9JY$SS~y-S!j~11ek}a z1kFPI$iBjKpM0O4o>l2N(f=T+xbQ^M4p%pmQKvLFH`ixpXJ;l5c>Yd7ajt38rWLGS zy}GKnxOhIZR<)<6r~Sf(3!k*Kv~z;mV4*UoofdV9=t00-Me@1hrwVl2{i&fl$+P*^ZgrrG|}_Hi3Fe1P1gGL>lZCu zy0k(zdOV(x-|sg#9FBMfRvufjmM>qvu%@QwLrg$1g1PGTdP63Y$!M`ylo>N-%$hrQ z?g!o7-G5oPZru(7$DWs$_pOBs7yjh-?c4vr|DT|G$#Nz5&Z45C@0FI8z6)@VkQb8>Pr7c5v%nV+9OH90vsiv?pl3?eB)*ukKg z(TEJN;@nPchCm=-rE7tcCr|E1zq3}YTJ?j@&d&Si&Yf$<_uff#wr(B;1W7kJpc|oX zT=ItY_V&k^jL(o{6~&qBt;F%J%F4Q&UsTaRy(|!X(hhd()>+|3+V5pC2CfYXIMc>pdKN zF~KCwEfj*(&1S9M zC#y>#&q*Orq+6>ofFDVAoK9z+P#bM+ZJq2{>&lfYr)OqnzTd z?b@}T>({ThMYH^}va(rhV$`<*e5tV=BAIfzT5a@vzz?TygMxgxydR+!a3)R5j;NX8AJb3UqKoojBbC z*5@>?2z4OI>c?0<#_3~<8Itp}4jnpFAh=)N`?gqqWE}+`^)9~wTH3T@$BsE;bp$T8 zY~8x`yW$)Pib!5Qru09Sl~bAO`v9)nX0s_sd}a}_1L8WyAk@tj)S{}Ys(FQlg=<*y zO3dr2idru+Oanj&qI+ux|=Yk>*JL&bcJMK-x! zFc1Z(ud;j*%!dvfIPk}=uC9BCD&or(uij#32#eJPtQJj^yp79 zu^o`tjf7DwqT#i`4=@WHh~jP%`~W1JYZR(^MEu%MK!(R*HPZVctB9C@KV7+UrK6^% zrV7$<9`imo62A6}7caJ4zI^!>WxtV)547Fw?CktIfcqCs3imv5K7_VgxF;l*j7cS# z0QftY6a&P)wuW)FHnKe738%HKV;+kv*SN~8kS=TjcqKTQT#~(T((dfFFh$CvuL{@i~O?1?- z$!5fBjIN6g;55Pjf(Ihf^htH?_nPmGkD@`^#dJ&RB_CB?RK2SDeb?{%Uh#^eaN3B> z5Htuh@HOzYp@FY~uMG`+4Sa2A;A`M(Lj!+Q42k^Vd7l2}QAAV>6@HNG6_h{-d3}=B z!WbNUl_!v61`rd75q}FqfG>miK)fJs+~?E^(8lnK1sBul$4aDw*ZD8A~C;d z@JwRonM6+WiaM)nnXMvz_3Q|A>uVs2=F-!eZ5Q=RHD`LDXr8&$ca^-xPSlt>Kiw1)R;`BF1=pw zAy!BPK=;PP#5g-UI~(A%E>u7`FG(4enF(7m&Lh)j!gG9>%)JOSVP#_&rOAx4L_FUG z(u3Cpq80p~LeJQ-V{PgaZ{NOs|Lobb-@nANsz+w$#p zd#=;zY~HkK(=oJKVdu`B%Pba4Qe$J|tyW4i`*zwKw z?b{bmn>OuZnCFM$;^I9F9gg~#FUH2kTGS^3`+0$&zd{T5GcN7L?c2CFwP0&PLc*+> zGiQEUS66orexJj6^`MYXrcRwY3)mM?QVr5!vLAQ&@ZrswnVBEL^SwNI^5k}+MDWbC z$&)9~dHC?5h;*46MpT1OTwJtTtug8oYieqI=;9W}l02vYPF3B$P0Tm@d_F^PqCh}I z%1gG!-rnBeb9y`;5|+l|eGT9dza_xCTrRn+tn5#fm6eak`Eb3CFe^fnF_cNs*h&cn zz63G6ANcU{0kF!{1q&7==H}*_!2O#qUcA^)TU***H~}n)0pEa% zH2@n40_XL5N!2}`?5oMeMNy2M%yuU0pBFoH=uD-MV!ZaOg3}6a2R)%pxmzZ=|bgV-VEf&!0a(K0iPI zGjgn=qT_mg?&2+grD8J;j7P7lx_# zrlBWjpLX28f8SA6RdvVVa6Inl=m^OgGBPrz?b@~LS0rj7 z8yPY1i5QJWv9Pf4gSm6(j%#UYaqior*>leAb`Rjqix)5cC1d&GNIxuCz5tZcJ89CS7+^Yu zcpn26SwghN_Thr>L&ow9qzNk8JFu+<`JUOAK-Li9qsSV(nXB5Ok-Y^D{Z?bNAL z->D}9hDu9)aU{Vf)hlrPKwDeeW2mxkUA=nso+yeuP|aU2TefT-CVCqUcdAC2z_c4A z=Gh|7f&_Je#Wc7CCJB2PA>QGK!e+pN3Dg6!s+%}s;A7Y!NwvMSwDhm__4Pjj+tRIA zv0@!~TpHK6_!Cq_CW9-TOG;wzxIok>Yaw%xmTZ^P%bVv$7{5-rx^k%c9L zBw>*ji|-oI%2#46pIEyYil>~oxVVg!D_8ypkJFVY1(RF6!C_x% zm8_xq@xe9*(9Gama9`qW&q3V4zPhGQpMDk?(CYN`bo<`DdslARvV}C`$jX~Szz0t; z0txszT$cvY1L6kOVaJ1wR z$@gziV7RY01vco=apn6WzRdv-Y?17|bK2dWFh0jWqF~kZVAzB&^F@TwMG) z_j)nKg-YQtWO!DuUj2KVGni{iN=nYa_B`H$U1;&+wXbj+(TZ47xw!|5m{zbbH-KS! z)5Tz6-YZwGTwcC>`Cq`AenfiedP7%}hB(vGrAw!pOeP4~>Dg1JOv!;NIkmaD`DuB1 z`PaC<0SR#sleLhn@wFJc$N)eG;uiphma;_5H!6eU6{=q&g&29Low zY{h*e!}}G++FS^>6NS3*0IOGlPeYCcD%5-kH6Oa&Zn?3s(NR%R@oh^>OB*Wk7593v z=AD8Qsjn9(_-rhe(2Wha)u~)JzztkJ^fRCq(#_YL(?tTG(SVw5Z~O4c*++{YAYgL=?t2LGM8wd!l=P%(K(WsXYlwGka% yO>Jo4Yv5}`178DQ8yff;_}b9GfB(n-1Q-BFm<$xoUlKY10000^6Ce>05dsA>Mv%uStrJJ5brdPc)QVAj#Bm18j9TkNXgd}eEJJ}H3N%m(iUcYU z!qW+mM9AB)*}Qf)n|<{6ZNHNqFB`JEFx5ZqnK`qYd(S=hoZt6-zwdE28jr^lqP8EW zX;lbR@Kx~Drh>16uQnBY6@0a+;H%)P?anp5_@dEh0)1Aa`1B|~Z)$2b-3R!70Iiie zJ*VUA8V1~r?&R*`Ybx5e0ltPorfyX9P)Ps;wjJHd-6jb@Z9#yqWpKmLP3TeRG3b%# z5hQ@{@bIuFpL}wN!C>e)a^y&5d3pJFxc)s`flY-sIPe9vgrmozC!i<2_~MH*=Fgvh zZ+d!qMs##^40?q8(8-f0w`XN#tz#?bX6;v70N@L%A>iZD(+Ua-a$bG))n|sF-D3Mw2Cj{(P%%zb6iN4+?2O1jbQv?`p#k>ItT<-$_J#%_OUS8hBmtTJQH@<+kTCMh$ zmKKY{;pjG*Ogap4!w1-z>zzRWFQ`uG$a|y+$}Nr6@mM|o?UAA_Y6j^ZJ?G#q0s#?7 z7)^5df{%=}Hh_yq*ud1s0!_c8a)8z-s%E~Sj7Z>l_ zym|9Ej%*wZcqh6A-OS(ZO3wGC4g6j$Z;Yrenm@HXH_g?>n{@K##n>ng0JQwBE`Dza z(_bWyb@IJ-Ub9=8Bbtn(3vy{MZ*s!5w z&6+j4@wEZHjThjMw7@1^3xs|I)kQ!4_~SWnEt6a>m#)3Nz3IabKir4w&Acg>OpC*Z z56^h?(MRXI-EN&;ukSf?=FHb$eDTFansD~)*(1^OF^?VscCTH#_RqLn&+BsVK4ac| z^UY;ZQBkQiH8tP7`|i7kC99zOal`;v)4iicjT)PlmNpuZovE|4^9EY=-o1NEj~zSq zEymnHZ)L$c{j~tS56ba^zi{EgTzOz=Y3UgN{||g^VQJeGre~MF2O8sR*u0~$$yqaJ z&Rk9xL2I2mckaC0*x1-3nYXacM67WMqOV_g3El1Xbaiz(1;7Ia3>b;XYiUG8gdWuB ze(t&Fx<2^egRMM=RqS){;K6w#MvR!y)6+xmKP^!R`Mi{O-g)Qwi4!O0(mZy%9kO(J zAb=sD*{so{N9Sf{W^UTJapPXe4_Jc*pG?t|nwpw;_uY4omIuD|)>~h*RCR35;k?jp zHane^<+_7#yk1{}4VrX1ohB(MDU2v->C&Zn@4fdPX?_O_ThBC*ICA93`{Ux`Lc_ws zbai!gR-4Th!E19v5cC<6kdR=+br%G>c=ztz$FE<%-pP9<>oGZ)!kddjy#`hBm z`0VWLd368OsZ-@APMj!%)^{c+CnrstHf<(^Hu$l}9$QWKA%GHIUyr}ar&pN1mj{ zZU%tS>)Z)gXx)AITEg>o3-D*nnl*0Vz=3I4Q*Ut)S{cd~1VeD^`I_g_rAwAUg9b%E z@x&APMMXumtQ=ly!9Kjtvk<~r0HIT+Oc^m|%$V794+-QE1Rj57YN36ZAjtC9Uw{3X zv17-M!djLC{I4YcRw!h{JK@*pg}1B*$A*8C2MRspmj2Q3?%`ruPfJyr18 zXP*@xI&`QIQO{6L$V^hi5=fY-187=~)2&NRWj8J|igoU6J**r9Q83`YI{vN<@ zVLH2pUPGVt_4QStu}@lCTODAEm=ghM;>`3CowTGinMOeo;{c8lOK006E3nK+;85$ zfBy+&;BJ64b=RS8;x=9*s-Go-25!8XjpD;?l^?c*D0Tn{Dnw7z28am4;(mft&b9iH?&0X zVLg;EVc@ROrc>?y~x0ShsDIiBth#nNYboQ9m*Xj z_=3wE(5hzTKsdd4h4j6hG(UkfY@E zKu`W0+VrrKv>8Y(wXLnKJ}N3o59d6Ao%3B>ZV*wI*JnUD z>Ev*)T)A>ea>%Y=G@lk}Lx^`-IS_IEXpZ3%IqIOr#3Ce1md6qQojZ4~g$3z1*NZM3 zE`v`NXxYAf`@aCV6?9>Mb9G(2cI`5J0iBw)E5H}l>rwE(D1;IBn>TFO@ChZ35M&a< z*g=YMG#@3EyFdWW%*@OzWXEI3pwWNEot_!6diCmukmw~fHa4~)oGoQ~>kd})y;A?^ zqmND?J+~^r&xGbtvO|d!72JkA{q)m06qYF*b2Dhd5=4#1TRsMbIHjn^OBKkXt3i7e z;Nl*N+sn$z4hq@>=l4=171u-!2%7DX=5|OSVk>~J0d0Ln7K+GD&ko+j<7nS)w6e{tI=q*O9_)%Xd+_% z-ALuL5Z*TI+`03g?0-C1mr+at$7f}LLoko5JfhTW<2`=AdGqGKL#rnN{4{Uz-(ctt z`QHx!Xg&H}yLSBv*Pn-f7zzQbgp+PTbVG?>N^){CC6XbC_`do0*;Z>Teoig+i$QB@QbTBB6v?UH^`5hnc_BaG+llnzG3VM`>Bp&pT)ot*|N zNIH7-C?eMC8`1$%yP}}x@$1}}21x_OqRFHvozE#KDEMtdLqnbC77aXXM&?_D@zeRa zXz9r9rgzC*S=8faWBF5@9*Kkb2*oucUyG5RiIhN#;~ps;Pm1bo1V=2%96-eJ+y-fk ziN_GvQ%Qn?j(hksoilDBz#kM6eeG4*m71?SREgsVCm9jK&*5~l;N1sF&b9H_v19)R z6_tW6YPqD`sytHjL-Ruv2hAch^9h`JaMW=Sjw0#~X_XGY00000NkvXXu0mjfag6*$ diff --git a/java/res/drawable-hdpi/sym_keyboard_num7.png b/java/res/drawable-hdpi/sym_keyboard_num7.png deleted file mode 100755 index 2246972a87f9d5117476d36a48e1f878f9986d39..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3664 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 ie5EMh|N6>*1Q-C`aT-$ZEbKM_00008{& diff --git a/java/res/drawable-hdpi/sym_keyboard_num8.png b/java/res/drawable-hdpi/sym_keyboard_num8.png deleted file mode 100755 index d4973fdc900ff3fd83ef267149fc58da64cec42e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2904 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 diff --git a/java/res/drawable-hdpi/sym_keyboard_numpound.png b/java/res/drawable-hdpi/sym_keyboard_numpound.png deleted file mode 100755 index d091339296eca631931f1004e1e46967783eb9f8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1600 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 diff --git a/java/res/drawable-hdpi/sym_keyboard_search.png b/java/res/drawable-hdpi/sym_keyboard_search.png deleted file mode 100755 index e72cde3bb6b1265464a78f0deacaf2143bb526c2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1623 zcmV-d2B`UoP)r{N!8C{G`OtN#z`P$1zk|t^rC%JIQmwV1V-~HXkxxaH0&S*5coyOwsc1nv2 zm!_7!8X_yeULAAX9MGCl%=rj-dbK>zH6@Yump7|=JePWeGoVw^6fNW zxTl^94-d~?TwJ^(>@3v%U0YlG73{IM!R{p#e8xJ|nXtcuzR)N6b_y_DE>D6a4-E|s zupK;r(%0AbvqU0!8T1Jt5g=hC_?&>c-rn9{(3WkBzR)N6c6SCa9MN-md3hfg3kd-?q%!aRI{)`hg@(OibKlM_j2?b`Yo# z>KJFHJ?cV1(tCP(x>z6R6MfS=I7b4*C342s*EdU}(WvAG&LyZi=XvGBz*&y3c--5#G z5)%_I(2R;44NSz&7M7Kjl?~#3w$LKvhzDzHYyYs7US3`j0eN;_+T!QucNo_2fH?d6 z`}>@Pd<;ifx4F5w&Q?Z8M@Q1W@ZhY-ZO8`0zqeE>J;&>fut803;lrP^Z8AYkhWPSAa_jjUiVkiy;#wVuX2?+^T;c(p+vvKzlF2$68Jt(vnO)o)c{AgPzWv=mXZv( z--@+>AlR%{R#w(QG;K7cUs_taO_}vG6h%dj0>;i9o?+22%9j-i#n-d5vs1!ElF!*t zhc?9GG0k~xczF1xIq*3-IqwN0t+l{7Yk&ANLn`+8R;1P*5| zA|m2>+^;7c7!S^a_D^zSW8-zbUT-)Jz=YsZnwpxvF$J!xtE&<8&;B2lqNzh4xnfFt zdwT;5s=K@U2O`zMCpvgMhS4Cnix3H~O-)Vx3WvCyB4Q{J0?wYy!|kYlS+c-r#FW_j z5>UJg`Imky)IGY%GvoKD!0cFfy2c;wMxs*&YbX_Gbp1)p1Bm`aLRidc$RirAh+CAJ~Qar>P>R2&5J%NG6JlZZ)Csswq37Bn4H4H^awfCl$N zPIgzs*^8&NLP+XVMMZ^uVPWBGtJQiDuFaqtx-XCH25cKhN&N++&RQ&%TPrIoe}J8z znVI<&Y!1+u_DW6^UO9*nSPg-9xLmGrULd2Rqy1pN0(yqrlS_JH1X4|)uOJB|6NyB^ zJv}`?GjhGXyx2o^zmJf6RE zb8|~EGE#&@@;cDG?d|M#`)#nlLivt6bYcVo!JY?j

hN1_A+JRaMp7v=Vrq6HLOt zE8E!E_z_##`T6-rdcFQS*kAs?G>`~lEUf2bXJ_9;a0oIA(%jtq3D~V{@5I@QuXl8G ze9i*Q#Kgoyuw4bs-YpHtO^k(g1aWn8a&n9T?C$Qq4>lX92}#6B2`qZrhlhv1V|@n) z2fslZRx6-sJCT!<7)KAqhZhVC41CLgjgOE22(~vsPcvYJyvIc9%+}^Hh15X^$aEg&-|x2yhmy7`87gC@6UEDF}||_xm?%YHI4h zegRZ3OapQdQ_w>$)YaA12ZO<96ahn}rKMkj{asKD+c!a-6bP(DKrL9IGnA|`zulnr z*zayxS=j?f+z}jiZEeltbULfSp35Su9K>D}wk0Jcx4mBPV_t;7%s+-cuhPol7{=n_ zVh1l$Fp=ly=id-UN;!z>91e#SX7Z6(U>h47PslxuG{)(|!opHsg3Qg$Jru5*7`&3- zpc@(*a-i1x9>`^aD{7z~eBt}}e<&2vWMpKVtFErT&TKT(EC47WDQkpdj*X4|u2d@h zDwQfKIEvs=H5yGA0#cyAzu#6_S^3j}pLvi(05HBNx~TL~Zp$-xeF`@Hn~WID9!J3@ zi|(6&e5P>F+S=L&v$L}}<~q*B_Gi*j!UkwmE@Dx7NGMKKfa67AhMx*ok!nCBwTUDl z*yIR1X|-B(*S|nLJDh{?L^diHFgfxDJjN09On!o7rs6gf{ng8#p~Z9Vfy^ zdLRcp2Ys%Hpdto?!7rtgPN(ye%O(C?QKX>Dg!}sXT;OgWuCK3~At!0$HCC(D&rBxM z+Vu3aM~a&r)=4nGxVRX`h$iQ`VM34JD4>|2S}2l|r?5TMp4>rUmSe@zzzs8`bfETW z$?l2@sEgH-a>(=ciexADA1Nv-`V{tD73eMei`Pl>wPim7(GL^z8mJc+h^~)5F$np3 zdN;%88R+`x6N4i6-f{S%8G|Z4ENOP1w~r+|u?WAM=bSe;@7?#pF~%B>A~X$06sj@Rm}*QlRuObk z3vwKH&;dkZBe=fg=von^EK#}|MTG%q1nPkTFbPZ@#GK-xh@)4E^oGz>tKaXxyt=yj z%H?uhfbT6po}Md%a>5Ek%Bn9ib-Jys&9}C;7KZyQ6bgNUd%ZwMrRF5*Rl*pF+9>g3-#K8W+^ju&5V&46xEI*e*u^btgo+sce~wwsDGB$JMPepkq8s;9EwAc ztOA6?;jb2p#S876+;17Eg|Xdf{gmBqzm4M90Wdc=_a5510<@P~29!3oJFTOLtMl{o zA6OMIJw5#z+Uv$_1=v{3oRY>k>J&TgMlr047#kaV4()aUZN-)WrHt*aRoH14ieObn z7BDn4^cdQA0hxBk9=ud+FA1TTlw-_jG~z(~CRXKur`qR=C@Rz3 z+?0GQ!l<)KW5;d=!htS_DBblq#&(>$hz-TXb=8aYIg+9o9)O zi$o#<&S*-W8`kvrjV2TuWDD2itW#K?a!;;Wnw5BCjSz-rITfgUW4(u>2J&LPtTkk( zyr$lbsedD>##Cd<8p}hLF38FfcFO1L-B<>4#Vt7%sC-?gRETsa6pDtKN@mm2zLX5)O=BjW+jYqqA-_IiHUw+tmekl lSy45n8dHt^7smbwFaVu`B6+?&A=3Z=002ovPDHLkV1krb1abfX diff --git a/java/res/drawable-hdpi/sym_keyboard_show.png b/java/res/drawable-hdpi/sym_keyboard_show.png deleted file mode 100644 index 3b1f2bb774a75563cfc377fc645c1401f05d00aa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1615 zcmV-V2C(^wP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2ipi6 z5iB>KE!y<}00qxUL_t(&-tAdkXj69-|J{4@(I#oCb+%R0k666U=w#qaD@>-&F-JGp zgYAQ3P{zhyhflr;i+k$WWFq*mX|dFyuu?a+v|wA-sBKbf;+Rn>1GP4-Y%*JuHs0ob z?7{Od*K1mv&?}APz$N#d`_H-e+;h(FeEd0>OB?_j00)3#02+W4fLQ=(x;E{>W)V+H zl>u0H;>3ylk|d=M9XiwtU;@A+0Fs%?nWa<_01tp&U0q#W8c}R`o z1E>P<_Js=U>|^O0N!vo9Q!X_y7Y(6l0O63KtQu>BrLOH0s!0g?c3Fd4hzdqL3*!X=s9v`DB zd?f*1ktm8A1A)Mob#-;+03Zm0;BvX#tb(!7LSECfXMm!!Y_Y;~ zjx1$V%1#05B;E{F4xnnn4E|#Z2UVx6EC_bJAQ4EK}--be=R#6l;QQli^ zBHx`$PUQhq`Fy^EdXxe10f2RewM78xhK7bZ*}7mb_!9sh0H2BcjpQkdzO&EgJ4n4C zpG$McS*_Ojhgd8Y%S+1pS2rii;7NB6usea`0G$8^pz-zwd_lq z$afV`v4Dzsii#X9+Tio~cEw_`j(M|i+=l>008APLI;cV@A>Ly;IEs-{T9>49h@qHW7dvO05v4lNvFNPs zHjMvfb%idsfc&f{w^^g2$K$C!e*Ab70JOBUoSmMYo&dmkJf5m!$BuoHN~KED>9lo8 z6IQD=ZMWN}nwy(XGiS*lU!j6rH4_y#UcP+!oDQ|x0c-)VrN6)bOs*YpAP_hS;B^37 zGRUueDX8dlI+_2&X0tgM-{EjLb49SSva+@0hMDB^*^UA&FX&Xc4CAgDzu$lI$dMx! zP16*=-~S`)qgq>A+YTQ-yh@TJr=loJN~nS$C^nldarEfX9~h`)kUx{{lz2f@bT}N% zsZ=UVU9@7DKf0+J0Dy!6+q*F?B~r$LCE=O-ei-zrO;fR5q{I>pgYq)Thtfc&dX6Kx1DholGVZs;X){&vO8< zbLY-Yy0C-?5%o49uE+EBjku8fY3#>U3R9#AaKhn5Y%`ihE* zcY?uSU%t)mZ``=?XG257M|iqfZ#V9?6cGrlrE(}Ac3V`k&=i1w2w77Al!f-kY`Q7& zO5Yz-2;3x!uUC6llrupdZx}hK41zPPVe<{+ngSK5Km{sLfeQ30(*J6gAa7&}i-78U}fi7AzZCsS=07#Kx8T^vIyZoQdxkn6AlPg{28$7f3~T$W2*zuWwF@S7LD zT)Q|DcQoaSU(9{_Uy&uspiat{Z7$CX7ud*w4m>w z=-D~Pw7T?dlan_EL2GK(sW%Zf*X~&8 zT{I#4l*-0e%@-5*{jF~N#=EYh^G+P^UFK-1C9^d$EAoCmOL{#~qExObRN*WCn=7jw zF5j6el5_V`&F<}A+@rNx(`y-+BSLLiB^Z|9_CE5zS!@X~6d62S{an^LB{Ts52=| zgW!U_%O?XxI14-?iy0WWg+Z8+Vb&Z8pdfpRr>`sf9d;QpOG}TpGd2T-EIeHtLo7}w zCrGd^PN-l~%aS;>qx}B8{|0@VCmSp8Wc&O7|NO-J|7!oQd}TGOa&|%h52tv4lOhj8 Y>m}YwZ>85&Kr| zgW!U_%O?XxI14-?iy0WWg+Z8+Vb&Z8pdfpRr>`sf9S%+rW_B;L{XlsJ3r`ov5R22v z2@bvMoz=IK&=_$bhzg^}T% XFZWGt{!24}W-xfV`njxgN@xNA$TBvm diff --git a/java/res/drawable-hdpi/sym_keyboard_space_invert.png b/java/res/drawable-hdpi/sym_keyboard_space_invert.png deleted file mode 100644 index d763d9bf14494236dac0147a4d7faaeae95a4e0e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 921 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 diff --git a/java/res/drawable-hdpi/working.png b/java/res/drawable-hdpi/working.png deleted file mode 100755 index 8b51ed11662e07c6a828fd952c5c70ae4cca39a4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8636 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 Av;Y7A diff --git a/java/res/drawable-land-hdpi/keyboard_suggest_strip_divider.png b/java/res/drawable-land-hdpi/keyboard_suggest_strip_divider.png deleted file mode 100755 index 1a03c52e64df4681aacb8bf1c15cb741eaf0b568..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 172 zcmeAS@N?(olHy`uVBq!ia0vp^Oh9bO0U{@7=E?#o$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWw1Gex5FlAr-fhcGUd*v_5|SjDP?CpFePbVNnA^ZxREu3D-iF zP`=d)lh_{lI%*tL_gKO!(PVMfCBvaeQZN6}7hSvCk_Q_&IUGc$urFj_;$fK5SXEbR SE_V%RGJ~h9pUXO@geCwk*Ei?@ diff --git a/java/res/drawable-land-mdpi/keyboard_suggest_strip_divider.png b/java/res/drawable-land-mdpi/keyboard_suggest_strip_divider.png deleted file mode 100644 index e54c5b099431be9853118c033e6fee440e44aa61..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 166 zcmeAS@N?(olHy`uVBq!ia0vp^OhBy00U{G$-VFv)k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5XJUm?-Ln?0d^f~e|7_hKJfBb*`XD@STZt$Zdp^0}R7z7QC zJ33Z1S*_<)pAj9ID(Y6%nD%G&tkd;!!sj`ry)J!Ta$v{V2qqqeESB;(&)M-UKr - - - - - - - - - - - - - - - - - - - - - - diff --git a/java/res/drawable-ldpi/ic_launcher.png b/java/res/drawable-ldpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..1095584ec21f71cd0afc9e0993aa2209671b590c GIT binary patch literal 1723 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 diff --git a/java/res/drawable-mdpi/btn_keyboard_key_dark_normal_on.9.png b/java/res/drawable-mdpi/btn_keyboard_key_dark_normal_on.9.png deleted file mode 100644 index 00aab3d5af5cb97ad0bf3989b2a6f027887a3b40..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 806 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 diff --git a/java/res/drawable-mdpi/btn_keyboard_key_light_normal.9.png b/java/res/drawable-mdpi/btn_keyboard_key_light_normal.9.png deleted file mode 100644 index 50cd06ae3685154ecdf450fe3055e3bc4adf5035..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 355 zcmV-p0i6DcP)j!P=w*N?2x<_U?TKqJRjJ;#{(Kc-1LBhIf35k@QmSGr@7A~$>9mHjSbVIf z74Ze4&%xIkA3KJXH38%dh~xqieZvH6xPS;SsQ_{c#P^}dne@~{897yNJ!BamZQCNt zGBQ;ZNY`~+zCH}$kKIeyR{lQ0OXB~C5fNSj3;;~*88Nb&@Uj2^002ovPDHLkV1h57 Blmh?& diff --git a/java/res/drawable-mdpi/btn_keyboard_key_light_pressed.9.png b/java/res/drawable-mdpi/btn_keyboard_key_light_pressed.9.png deleted file mode 100644 index c6f743ac751e92cc7cb2b39705aa5fecf1912b66..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3603 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 IM6N<$g8zO#O#lD@ diff --git a/java/res/drawable-mdpi/btn_keyboard_key_normal_off.9.png b/java/res/drawable-mdpi/btn_keyboard_key_normal_off.9.png deleted file mode 100644 index bda9b83941ff20ac6ce4a46912dfd292957be711..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 860 zcmV-i1Ec(jP)&7NR45e0M1*^Y2E^)0ZzVl{uCiF2Spz3%5NWsDrQL2P zbb+kFf6#?VFAfmdk2WGO2EYv|ixp#%SpxvL?;}bR5FX!34La}@2B&Co*BuoE zuI$5`8g(*Cve?PLoz$peO#_H-d}r3A1;mRQ?xZ44q7nIBXGCn&Br){^ys42XN^2V+ z`?5~)x<%<*rURi}^wi&J0MYpf=#vMK9P}^a^147>ud5OfSAs#>YzRj zUHxqDg}Nx1UjCFKc@B~3(fP{wY9o$LK6yWMEl@5Rd_}3-7Fel~cT(~*{;&3nvqRJQ z4AqzAX5!ivX4|GnH@!~Za@ mE=D4vEApoaLbnY diff --git a/java/res/drawable-mdpi/btn_keyboard_key_normal_on.9.png b/java/res/drawable-mdpi/btn_keyboard_key_normal_on.9.png deleted file mode 100644 index 0c16ed5093dfcac53807d9d9663c516e52bb07ca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 926 zcmV;P17ZA$P)f`xPoyonGAWz zi+N}hP%}OV`G`E_GehzVSsoljn9(SVl35Z017=ki+}n;<;Rrj7g z=T=wsRV>RwSW^^b<;GG%`5+*LLLoew5Z3K>6%}{H?hFu}U64ex*$j)t0{h4tFN?)u zh{xlUU)w+?lL@NTDh$JbuIpGXmwN|9K~+^<_w9BYjYb2hRB9W@d_G61RKj#R#dti1 zX_}ERp=sKhjdHn+TCHXWLPpY1BT!KSA*PumZ252H2nDAcAs{3T*&#x;TjC2K59Y{K(IKD ztA-6=U=E-DK+Le|%3(1a8R0=tU#=K1^fmab<+pkJ@$1M4@;LQ~Qm%HAGCwLNjxyoqhFO-oo1*`MIL#hgv;|jPERgT|M=NgF35oJaiolpF#xO);*l8fdNSfBO&Aj& zz_&EKL{S(Y!}Ap{+m!ZYG7!>DPrQx-h%AO4MCUN8#__v`&WmC&Kg{r3xolgPjdhB% z2IBP1DmwKO&}*FAJYB|u)8t(x;@=^>JhE7--`oh2C%eqoy*4N>8T=-t>{#F`4S$m2 z@3G(FxF9DqSxjA=%r_^ky=Znj6v_PiX2dP=f&y}7#OVn{0J|`<*BlY$@XLs7tnVBN z^O_Fx+LuZr%aMHo@RUYeHDVnj?5->GFJ**kTI}@BzH9akgbFnjhnk}_thh!+lqf4k z6o<-J97tsYB#}s<*Xyl|dC6pQ!${Dib(%{+sG!&Bbk;F#jASwyG@DJ->-EUat2`hA zK{0JW=mw#s8ruIbR$bhx#Y+%JTJe<~#{LR007x($d)Rj$0{{R307*qoM6N<$f>02w ASpWb4 diff --git a/java/res/drawable-mdpi/btn_keyboard_key_pressed.9.png b/java/res/drawable-mdpi/btn_keyboard_key_pressed.9.png deleted file mode 100644 index 01963c6fc84fe2e5c9d56ac755ec2f9fd9182a30..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3685 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 lHX}#l5002ovPDHLkV1ja*LIwZ; diff --git a/java/res/drawable-mdpi/btn_keyboard_key_pressed_on.9.png b/java/res/drawable-mdpi/btn_keyboard_key_pressed_on.9.png deleted file mode 100644 index 62433615d989ddd2933d84746567f5dc07b6431e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3881 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 diff --git a/java/res/drawable-mdpi/dialog_bubble_step02.9.png b/java/res/drawable-mdpi/dialog_bubble_step02.9.png deleted file mode 100755 index d77f85fe28e807d099c5bef39e8eb50c8aed60bb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1036 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 diff --git a/java/res/drawable-mdpi/highlight_pressed.png b/java/res/drawable-mdpi/highlight_pressed.png deleted file mode 100644 index d27f1061ae9757e45d602d9f1334beeed38889da..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 593 zcmV-X0dOt3|M8q{|r(Col)r zNx{$vNy@yz&Kd8YNS8C79+8$B##{!q1rs&VR~g?cUf+=JPk6jjU<^>Xw|E_91}2w# z0sHtuveMlO3=Tg9#tMmRJj8h7;cbL6umJg&U$TBOFdRpU8y8tAwBf0RsS?nT+t<(m zFsYyCvQ~YWZ1{1*kArBWhS>&SHla3}{8%^G)b$w^yR2lS=3nIa%xKtQwl9=2$pz0i zj3OELcN_;uG3rpVz47)@I_Xo2yMgL}pB>JeDrX)80W#|TV<=E5zKXqpb`Z6*2Z zrA`DU4Z5Pa1-gEf9A(;$MW>(R-A-fKW2VI+mA}zthCtPdnY*dBUL1)%-BEcgle2|f z*Ng0B+o-kL@vUCkd($gqF&;ZC##$0DrQwjSG4`OCk##|R%ozZ2cl`~>yBO^SA zNgan%O=?TdcEsDeMTOJfd;K+Pzft?_CI<^?(^Ykns-1K-m_)hJ4P`oZ9+V(&c_WSU f0v$f)jw;R%C|5)IM=p~`00000NkvXXu0mjfCbIy? diff --git a/java/res/drawable-mdpi/ic_dialog_keyboard.png b/java/res/drawable-mdpi/ic_dialog_keyboard.png deleted file mode 100644 index 9a5aada8bb425f4a40d6f0f540f724ac94ffa147..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 528 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 diff --git a/java/res/drawable-mdpi/ic_suggest_strip_scroll_right_arrow.png b/java/res/drawable-mdpi/ic_suggest_strip_scroll_right_arrow.png deleted file mode 100644 index 639a28711cd019a6feeaf2f84b50381e5a834ae3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 440 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 T#dK+)OBg&|{an^LB{Ts5MqgH! diff --git a/java/res/drawable-mdpi/keyboard_suggest_strip_divider.png b/java/res/drawable-mdpi/keyboard_suggest_strip_divider.png deleted file mode 100644 index c9413d7c147a56adb8ddc31ad5bee47d764f6f7e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2846 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 diff --git a/java/res/drawable-mdpi/nav_keyboard_android.png b/java/res/drawable-mdpi/nav_keyboard_android.png deleted file mode 100644 index 4ebfb0a62f73268aa7a8fca88b6ae5aac4d69edc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1729 zcmV;y20rPx#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iyr9 z6(1(MO%_@J00u!xL_t(o!|j+`h}~Be#(&>FXJ&HiG?S)HY{{jKiIucPkqC_mDzS+d zyi}?r8l|Oz;ENVS@IfDZP+tQoVzEk9>IH1XR`SpXMbI=&DUqR?wglV8T0^78Tql|H zeLnp6nfcG@G#SYRL|ib;;lFR+UYBpJwc#RSyVU;+l6*DEqe(V%39&u3KFJqt?@O|S zIY{>s;{uR03R#+H8RSme`%5WKQh>1}3jiS|6`fJhzv}v%NVbDUfkl@EC<#eifB#+5 zV~{t3wgS8D9ENNFt&wz9l8(^1DF2M}G;kKNBcVW!B>K}_0O_^BNFwP0Wkk|M;w7N_ zAvXdO34a6q0rCQH3J5SHbZwNigbl!I!Rep}O3?##?~bJ2oHaBJ#(;{XiHdzIFbw=U z;WrXT8c>`prSw|s7ZR=o76Z2-J}%g3XLTuhK~m3lDW!NW8f!UZI@8~BkL{n^{zU8r z{09>Iro>;j{X^TETIXo)VA4ca^E(d_M8# zk_-==+bNRzY)VE-32_I^&6s*G}Mr0xI!Yx5U31z*>IVeMhNiie~PV z^vSn1UVsZ-(2$gK&9tUkln7AflZRSFO`;C4AjzrLw=y8?1rVp+mx6Avd%`2nm| z?GWBAWqZO3-~gxxY(advNY6MurD0lO0YS<1qGftKi3-D;|Rb`An7OVN0e^+~oWjgyO#>U4qLlU)qmiqe-tRyc2uDjPFSgg% zUJ0y286_MC9g;NRSdwCU2)Grv8nF=A0qP|@I;ZEDBvYM;liNk!6<80fAUp=zQ;N>F zUfAvh-j5g~oCQ8pN_oz4x2R0oUJZN;D2T&^!$Nyi^m6;PTN zu?(^pIN#hxLx^RyJ3R_~7#OQ#^~M?lMuBetj{p-Y4d2zeD;LdWlIYvNI{Z0FOLUukwNKVKUKq96 zTN6@->!}7h(>^iPqMwJ1fI62AsDG diff --git a/java/res/drawable-mdpi/nav_keyboard_android_on.png b/java/res/drawable-mdpi/nav_keyboard_android_on.png deleted file mode 100644 index 7f3c0c38703b22490ea253d2487601d4091db98c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2408 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 diff --git a/java/res/drawable-mdpi/nav_keyboard_feedback_left.png b/java/res/drawable-mdpi/nav_keyboard_feedback_left.png deleted file mode 100644 index bbb8d8a5251c6bee32dfb660acbc4c78c12164f3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 873 zcmV-v1D5=WP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01m_e01m_fl`9S#00007bV*G`2ipi5 z77{aLc64z700QYrL_t(o!^N0SYZg}&#(%#d@lO*${QzAmZd`O#|1a&9UUD1VAa3i%;Y*7*NrV>e`c1{<$6R+bt^S()D;(^P&^XJYy z_c_lw=bl$KXc2+Bey$#fh&kXO@E33exWjf>MAR?M0ndO?0|;PMJqt_#lx4ZCU>4O- z%LJx6E~=mO#!SA-GwM=9G`*#n1o~WBM7LlnX4Iuo(Uk5F)bl9{J9m@nEHG$erUIib z0vAm6q*E|uS)!h*z%&Rr*Uw|%Y?o0zQ53}+KNZDk^#^tD+B0F(3)I)Zb>J3o7?{k9 z?wCdT74T<7JXhBU$v!X#d=HESlWbXi7!fP##3o!Numao!t^&X2t36(2;0DdS6Y80U zHa)U;-USX-i`oI)Ye{;2k1CJ-2#EUOxXko5s%TX$B4Q%BjrVC0F&PmQDRiGkgvqb( z0ZX9X$VGi76WWGEy%}*2nLAKFF3WN~AM6Ac>K_~d>ZSSuc%^P=q&ctEC+g4YY?Yw% zJhU6Q0DP5E*(R)iQ-|@Bx+@}zu@jJ1L@YPx#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iyr9 z78wvA>zW(@00YrUL_t(o!?l=ch)rP_$A9#Rpk3D15ObnMt;xv4z6SU~J9I@#TN@dV9~g`%|axJ?DL&^M9Z9 z{~Sn8LO_mnuLTg*?`c34-~l_yvV^VwJ%RbaOduav0=yO&4>)D*4QC5jZ(uEO7q|*c z0ZM^C1{e=G0`zcLIF!!I&CO9@B~Yms-V>Pp77!0;1U>?{fHI&M=;)(2CFu{88!x;g zFsCda&AL3t{R?tyt8~GPmo;L_p93R-^_E4NjhA}?*GXVhs@9qaJTa6t0E_f&2Jp&Z zop^ve;03TSSx|$4`<9}8)|#2XLu*Y_01y-GH(*sj7XK%0fYX+;M?j$u@JrU(YG4;| z-eIvO%i>ED0afZa-I{<5>;fD!*520rmcRl9v>&MVz~mt7405>PDKJ3KBR-&71KYIz znx!)jSOGlq0d)iD!iI=rx8H{>dUmzwNFe4tJ&70S-7aaFe}ohr>E&fPzF)Gf9a8XRYE|Wxk*-(9f~) z4N$M&UIqdEltmsHx`x&qxC8$ScTv&0;ps5v((96S?HzEA3XH-39r0Cn6b6U`=| zT(Lh}%*={pf;w383plES=Y*}(H#;`8GlIEM>oN`MQY@BCKn<3AV$xnfBkEhxEV%AF zP+_|xSCqoew0c$467{%;q8*u*CSa~v=-vTutwkO%Nz+8G(U&s8K=(>6 zz+>ZCsfz)|Qgtq{S|jrV70ud!j4BZDVH&ZEENgmJc+>$K)vh+H8&m{MjD^5n6|6b| zdm+~~sL6(8jV}5kG92jRQ;$McN7w+IFfyzzk@}VoY!`YjL)S&MqO@d+NYuA9fZPMt z1 XvcsYeqrP&300000NkvXXu0mjf(q!Pd diff --git a/java/res/drawable-mdpi/nav_keyboard_feedback_right.png b/java/res/drawable-mdpi/nav_keyboard_feedback_right.png deleted file mode 100644 index 7cab200b8eda23b3834608e5c43ed6b387b33254..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 865 zcmV-n1D^beP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01m_e01m_fl`9S#00007bV*G`2ipi5 z77`J$7B!Us00QAjL_t(o!^N0AYZXBhhM#9i)R-u0ttePo2^M0bouY_BMEq<6f?_QE zLi7jNDmFIOVy~_E3lzb^pmw4nCQ~2{p#gRJ2OD3RTwAKLu%0q zQ`ri4sjp`V)ih8QQ|fRIsxhXjiPSOr>X&z;G)}RTHJj�d&P*ter(9|R_ z473LdDAcp*Wpgr>S;Gvb8V}zTS&k;H#C*H20+ln>hNcA0spIp3O1~58q1+Otg|9(> zIIX^!1;`9bNT3eqK+3YjvMeczqFU){U{gf&_mULTf_?$Z)pNkni0G^FvPkSqM#L%L z-oGSSfdO_z#BpFdFc3Y`rV19ud2%6_ ztZs;iq2w#QP+unhIhjr(E4na7fGfa_i1^lc1*h&&pVWmbt0n`u1gvZ_7D5E!dV zu9fGceo-B4tTxKQs0Y-sIrK4u8TEoX)Cw42Kk%ZiYRvDc=kq+bXfXK%>OS>lw(|Ly zIiEArXl79Ns;{~^c_dvm4<;+{w*im4VJ2N)$ivih&J-A(Pcs=a7aP^gETLMf-l$0r zxn?c_gS{}*w}2h?1Nhjb1K$F^F2%Q^Vf9bv=a|fauc`w}@#UjpVwHNmvoc5kujP5H rRWKbI7*LO?kJMM{17PoBkIH`mvLj_ZBzUv!00000NkvXXu0mjf-Yknn diff --git a/java/res/drawable-mdpi/nav_keyboard_feedback_up.png b/java/res/drawable-mdpi/nav_keyboard_feedback_up.png deleted file mode 100644 index b5836e3b458d8849d2005937ea81edd764b690f5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 910 zcmV;919AL`P)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01m_e01m_fl`9S#00007bV*G`2ipi5 z78D)s`rbGI00Rz5L_t(o!|j;8i(N$+ho5IyKX$Vq+6F8v1RF&{z!WwX5`zX3Lhuhr z6~Pp1LO@LyNN;T_{Ra%#+StSp6GWRugAheg*}IUKMHlBy;T)NJaz6Iny}OkI!#SMu z&b+_#dq3yEj3XkZuIe)Iocb*AcrBZAW=}`0Kz%|z1N;g^nct~z>f2qc?g=Q0gXdVlJjS z%(T|=)w9gTr#5G1s%<7VM8)V~Lq zxTkK9fhzhofT`M-fDamGhQ6rC+y*{Y|Ex+#EgR~$>L=h=Ibw}2PR2cIkDW7Gn`CDc13 zwJ3n^)we1$zc~a5xCI<4;8ou(`DX}J0G}q{u1a~)L|imEq5wV@5!Ys^hh<9 zA#ksGUF$1i06$T>yV_rJ6>WFwmbA(fqYSBsT5A&U4sgF^zJ{&8fR_N4)hp^h9h)BQ zN$)!b)H)C(^^E#+OMXK=3$O%i0hc4qjfhd{tswmEY0f&3qKz3hM^Lf4&)~11)Sz&=sxgAm(ucV ztAzEwF?1KW*)Gb}{a3(``|5n^$S%&P1Sfr2qf`07*qoM6N<$f&%}V@&Et; diff --git a/java/res/drawable-mdpi/nav_keyboard_feedback_voldown.png b/java/res/drawable-mdpi/nav_keyboard_feedback_voldown.png deleted file mode 100644 index 0ffe8a85e689fdeb6025f578631600a1da80d925..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 347 zcmeAS@N?(olHy`uVBq!ia0vp^Dj>|k1|%Oc%$NbB7>k44ofy`glX(f`uqAoByDx`7I;J!1GQfVVMZs7*%d%R_7YEDSN1!cQbNLvlddgI0Sevrba4!cIQ({+ zAs3UO0K;=XK^JRpZt43El(%dW+@J82{mt4x9q~I(T@$~d716o1H6cfD1B-vN+VRRa z4jgZU$~fMrEzsy%bY;HEedz;i8GBDmJtwh)`8xlli!T`@6B^hHgpLM3U|Mr(QsgtG zuwxcZGf(h4i_0?RG;4&ZToL{mo3XG}SwZ#5Ca170-J;m}PAivR(7oR)Jl!Zy zCP6!C@dT&)MIuFiZ#a4Ol;!;^xK?4-Jk_pUBukuU$CI;fB@@(=en)MueaiMY-bQw6 kO^o*MzX2kyfk_`(+*Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01ejw01ejxLMWSf00007bV*G`2iyr7 z5H&LGT$4Be00I6sTxy=U$` z?z;mGG*BLzs+4CCXa}z9;iZQF2V8_K&Za0NWA?4tr@+rD zj|=~b| zq%u2ceo@~UGXJ-%8!&q*IeODPI*!EeHv7k_8*O}mTj0+8#}5&d@%V+ht4r`pYILCq zT#-{fLUgisNshl}+ki*r-^7D7djfZOs^JP$Cu8?#?fM_^E4FWRKXpou(-1-Hz^(<( z0bgu%NJ1VMwKfqwAK|t5`?8UvyoaTJ+NC0m@u)~+{83J0OhSK!j*g2;936`JdO2K6 z9Y3C@J${4?XnD_oHk`(Q7K$EVvtCA6U$@_=^^mV(K8l!{{{}tyN3mKM^o<$~G>``V Y11F2MEv@>+WB>pF07*qoM6N<$g3wMGEdT%j diff --git a/java/res/drawable-mdpi/nav_keyboard_left.png b/java/res/drawable-mdpi/nav_keyboard_left.png deleted file mode 100644 index f400ed4063c96bed103a566b38c58e358f8c230f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1278 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 diff --git a/java/res/drawable-mdpi/nav_keyboard_right.png b/java/res/drawable-mdpi/nav_keyboard_right.png deleted file mode 100644 index 891a2dde2651dc366dc9a2abe5658e533eb3053e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1258 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 P00000NkvXXu0mjf8$~|` diff --git a/java/res/drawable-mdpi/nav_keyboard_voldown.png b/java/res/drawable-mdpi/nav_keyboard_voldown.png deleted file mode 100644 index 57a4b07dd2cfbffedca590a6336ebf94fbbed591..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 352 zcmeAS@N?(olHy`uVBq!ia0vp^Dj>|k1|%Oc%$NbB7>k44ofy`glX(f`uqAoByDx`7I;J!1GQfVVMZs7*%d%R_7YEDSN1!cQbNK!Z_;nx1PVRyba4!cIQ({+ zHP;~r0f)_jEEmsRQtD0rAP{x4BYeXrrf*?!N3@r0`pUA6ZOxHePA4`STr_m!+|_A# zraATI%+^|--^DVnfg(#EF{r)DJ|L8#QoMhH6hr!hAAY+yCW<{MR%KxdG!(aB_`E13 z?GESSIIf>c_c!m|!S2%_Xuz_~W|G;q=G}8r%L-drzj>?CnU5`B?xnTPTBMa3YNW4sXd_4ds_Hl1 r<%a)`UJg8UeCw9`{6JT!y6bsfobcvJ@5wtrzcP5b`njxgN@xNAw@Zue diff --git a/java/res/drawable-mdpi/nav_keyboard_volup.png b/java/res/drawable-mdpi/nav_keyboard_volup.png deleted file mode 100644 index 06ed8f1f9e0ada75c8902741b3cf3b0bbeec2f96..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 649 zcmV;40(Sk0P)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01ejw01ejxLMWSf00007bV*G`2iyr7 z5H=3!9=v=200Id~L_t(o!|hi+OI$$|J@Z%-G&Y(=WfKdl#i&TY&cMX*scWrCohX%a%veaFK4$jR__ef!0(x)+vv-g_L0mqikK{~?KDY#P(vZk!fEqqlAAUb)N6K}`5gb*n|cW8Cb?>H%KQ%# zlqdN>X0YaBI%GE93;s;-Pt_s|gmlsSEP=$kLOv+(e-*r~TB2sG;GVa5HK#?0_XQsj z{AHy=o{-#;f;%$SY1j+F<|KDi@DszfDiQNmiia_RzR7sI;CaK=1zU&`lalw7oFX|% za)RVB<4pw(3ce)xN1xpLY|oPj`Vd1N77`>2{fprjQfo}|hYib+yfExllAZcjR8M~J z;{X1G`JDL_$*jfSC9l`~PvOYa^5{5}xXb(*fY9Pj0C3Lz0r1zbN2LgIF>$fol?CFG zEGUtn7*ST@=wyE^9Ot%%S^+#X?6+Se6;rr9W;R%4cASmBw&zRd+<~`lbUk$l$59eN zD*(0uTmr}gSO$;xf|oV8#czn8#cy`vNy&eqMlai z=s2zT=1LvpPlTG#?j{^z<>&kwYg`1gI<+R*_P@qtdr;B5V#O34! z2iE@!CHN#HB_t$*%|FS=F7(Os*)L~#)y;9_{>|cxNK+_pKUHx3vIVCg!02+it82|tP diff --git a/java/res/drawable-mdpi/screen_switch_background_pressed.9.png b/java/res/drawable-mdpi/screen_switch_background_pressed.9.png deleted file mode 100644 index 8fcf503ec171b6ebdd3c4e57235967b7826c0f99..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5883 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 diff --git a/java/res/drawable-mdpi/sym_keyboard_delete.png b/java/res/drawable-mdpi/sym_keyboard_delete.png deleted file mode 100644 index 43a033ead97dfccd35ff01819e885b6396a82f41..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 829 zcmV-D1H$}?P)gpPE=n6Q*wKNNADQ0rr2&1o7|*9rZbsLg4$Ay#bSvj5{V4mlSsecf13@cVdKz*XLGsSyLN(T z)>B@ucZrLkj!}0F9Q{EIFBEeaEN~ILP#;#S^$EER^kC?B1<`<~3WdTaYM9UGzu^8J zxX5;a)FQD?ur@)8;etY;&@*~;-~{Vi*omO#8B@003;P^&f6*Kdr?fwirdsK4<}-7nwxgU_IWp#M(LHvt9!b=D#C`o~0}00000NkvXX Hu0mjf3;T~^ diff --git a/java/res/drawable-mdpi/sym_keyboard_done.png b/java/res/drawable-mdpi/sym_keyboard_done.png deleted file mode 100755 index c0d6d1394b4912a2508055ec7979f4a6c2bbc4ca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 771 zcmV+e1N{7nP)DN7IhR2Ags-S5F5wW^ zLF7VUlYs~bmxKW@;fEE1W!v`C(P%Uba~|xIeKQBtyb&4>$(@UTJ4w~eU;G69+T!Ao~@{$#%@VT%Rr!4V@~rjOVPv#~yqx5#n|Ky=aUo6?Slh2@g?~w*XBcz+s<4 zD{-5F-`QWucU$<75E?v!PYoOv9V4?Ib5Fu;fa5qPdGlYOJ;`i1NmWs!R7!ks!q zib*2!rji7GC1I}KpC?L;N&o#Ip-0E2ItW~%!_=^qcR*x_`|~6|WXcHbl9P`h_+BX! z++9Aw{l`%rO7y`gB4nUJx9GPoaPKp=^F!FLadP2002ovPDHLkV1krB BVQ>Hd diff --git a/java/res/drawable-mdpi/sym_keyboard_feedback_delete.png b/java/res/drawable-mdpi/sym_keyboard_feedback_delete.png deleted file mode 100644 index 1edb10b4e934c76325ee821423d0160f5e790515..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 374 zcmeAS@N?(olHy`uVBq!ia0vp^DnP8u!3HFc@t+I;Qj#UE5hcO-X(i=}MX3yqDfvmM z3ZA)%>8U}fi7AzZCsS=07#JlyT^vIyZoQe&&Dm@q(6+dQ!Tkisx(mEkPP;nis@!$4 zYRp?8{emr%Nwa0f_mv(yo0|pnA3ol{TOx>4@x;_MYU0K$P6}YOz-P5klGMw$2W2+@ zIeA`1Fl~Y!-#5RzR#UDE&iKbtIw|W!Tji@S@7}H#Q4l|4z39o|&%KVKo3qunDNePk zOxii`dE?jE6>UDL*H}_J`l5Lmo=G%MjWpuE8Mf8@n9ZiL#R4K~B{m;gO3zIRd@B%~ zDZO?lf6C#o)xoQT%%?;e%{nyGNJC^hLy?s!M+lQ^Z^g5fD;b$Wn66fZWNfM870KwI z<+YXf!dc-JR?pU*pK`y^QjWpJdsn{I=U;_8xuaUo8*;QbKu|s37tsWU^lNuc>ped5 Q02q)Ap00i_>zopr02xS>kN^Mx diff --git a/java/res/drawable-mdpi/sym_keyboard_feedback_done.png b/java/res/drawable-mdpi/sym_keyboard_feedback_done.png deleted file mode 100755 index 0d7ebd4e579c01416b40087f968ca65aa8537804..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 498 zcmVxt*`Q1UOu!1=0N!{^M__=WnhBZ>!d>NyPF8~5+O93?ldQB(lYTz`|6LR@3`3D} zhzytkGhhZhcfi~0x`N|7jEBV7)-c-3tE&1;5Due;agQ0KJ%0WEkuNEb0TXgOKm+K>U}oB(?! z+CI?SpM{!)(m=YSIhkt^n6NH)dYPHM(1#ms3^ipc;}*ke_M!%HXOsL-lbk|-6S5jj zQrd|3lnxHjNo*sUNe+2JiDDAlILahOKzNA#LIY`f8RtwI<@(aEwJ~8CQs6#Dbp&+#28Tx!vnuF?rfEFi z!?`vV;7%C}TUJAm3a%s5!Tizx~lS3GTy-i}O2b$M_Xs05(wrD8#Qi1poj507*qoM6N<$g0uY9y8r+H diff --git a/java/res/drawable-mdpi/sym_keyboard_feedback_mic.png b/java/res/drawable-mdpi/sym_keyboard_feedback_mic.png deleted file mode 100644 index 6c6aff3383ec024430c45fade9a67d5d87ac8af4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3815 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 RZ%P0F002ovPDHLkV1l%eOSAw0 diff --git a/java/res/drawable-mdpi/sym_keyboard_feedback_return.png b/java/res/drawable-mdpi/sym_keyboard_feedback_return.png deleted file mode 100644 index 03d9c9b2d7eb13f6bbe5826d5b5e6681ce076cbf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 381 zcmV-@0fPRCP);K zaTA=t5juh+)D3V0-9R^}*W@7lltQUJ&|H(30D5;wVS&01Q_s(s9=aP6;G8YqLLfN+8!L_y}(5no7KJp(;bxniYDG6C=8 z9stJd$B`00tr?lhL6#8%z`!L(6BT-p^`t1PN-4Qh|Pu)_{Kn)V)^@WeIM zKh6s}#T`#&Z=XJ*BJ>gG{IfT@RY0a-NI_gMOb= diff --git a/java/res/drawable-mdpi/sym_keyboard_feedback_search.png b/java/res/drawable-mdpi/sym_keyboard_feedback_search.png deleted file mode 100755 index f4af341eb6ddfb6e3c6f4a5ccfd37fb76ea854bf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 501 zcmVOkcJN-E!CDPNWcW(Q|ai7yu&bj86zk|Mm<9m=H;vO+po&gvwXo_a#*S}3SQj| z7-A3u;D!FogaJThZYnXNxQbukCKqNs{eoVDW6gOgVgN%Fon(Aut|zl%?{q?dI9?y! z3$*lvQ^xnD&Sr?Z5IqH5^b}Y|uL#E&oo`BfAT}Yx1n7v~P-H{{;RPlGUAP&m_1z{K83xw~A rlJFiq<9RcH`u{)$r~v;S;3~iXv8b1C+iv8r00000NkvXXu0mjf9k9+1 diff --git a/java/res/drawable-mdpi/sym_keyboard_feedback_shift.png b/java/res/drawable-mdpi/sym_keyboard_feedback_shift.png deleted file mode 100644 index 97f4661f838aa7442e07b02885769e0c7e51adfa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 437 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 diff --git a/java/res/drawable-mdpi/sym_keyboard_num0.png b/java/res/drawable-mdpi/sym_keyboard_num0.png deleted file mode 100644 index e7007c871bbfae7cd30c5ece1cbd817ecf3ce3ed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1160 zcmV;31b6$1P)T>n z8<}d6kYJN)qAs)~@B>`BP!?`X7Z6ssV1paOg0NP=r3ncJ(y*Z+ER4n=Ll_dpfr1Q` z5QY{ycuqYJZ=2UrqO{cZBwz34-uqtp&ir1vP$-m>slw-Euw=<+$!E!D$!Cm6@q^ zQo!w=o}QOWOH0ck5}bE-c6P&_4PYcCMcgOdz>-HVC<5FZ85wbfVn}y)cORU&4k!Rf zVv&!LU*v#X@+Jj)y_ivwNnQo0Y-wqE#*#&gvmSub(9rM%&YH+m5+yIEFuFw77O~f- zn!FCJJ~lS?K_EFlKmQrlo+5BAtPc+lkHeZ3pg9KlGk~he$;sC%D=U*Qx6pT{j6Bc8 zJ6c{>S65dd`~w360~0WOM2wD(&I#-F_4SqH_DZ@o5y7gV(`Yo+27|#2bA5E)NL98E zXZebX3WE|v*mS$yUtsu(1gEE`=V81Tb`hNptAU!x>j6^NrnWZEdY3VthPH1Ihqqa&z|nCR)D= zxJ=49jwk(7%k#ltFe3Xpoz5j{YJ~Zr`2BtvSvMAWOmKSeo>ypXI3ND5l9G~hI4&$K zJP5moL=uq8<@>$8y&Y|BZBA;Wf~jb7L~~D!gv1?TB~*&kXf#%dZJJD`3+&%otyUMW z^qnMm)O3*N`H0vpFE3Zm&CSVZu89a}u-FmtiSfJD)z#(jcs#nz&CLR@*PGwo-fk~0 zE;ckbH@^Uj?*ZuzwOYO9a=G3ny=$bhgc>h{g!hoG=MIPCIjm!B*W#Srv)kPv$LyU9j}n_RVtMM28>Y- ztaXu98r1qlvQ(`2#0ei)V>gFix%rko%*Ob^#j-g~CVs>!h5dmpHM6hve7$`}^P2)YOC< z9h=Q|ZD?r7E6jz1=^AW-anuE`$B4WWv8XL7g}6QK6bGuJ5-9rV!2NZN*-J45+KhB<&VI}E0xJ0 z&xJq!yvgB70hoEuo6TlZV`C$BVL5|?gVR$}Q<$LK6tBB%TN_O{>g~|qc;tymG$*$etVm#KUQXcw8)arlFuyp aCBOg(>3@^x>F(qJ0000izwp& diff --git a/java/res/drawable-mdpi/sym_keyboard_num1.png b/java/res/drawable-mdpi/sym_keyboard_num1.png deleted file mode 100644 index aaac11b0c7f4971ae611ac0fde0a6bf8b4b558e1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 506 zcmVHUL%*QVC1VydIQa!Z(NNne?b9~#Ubul$`UAdq zFC0RWo8i2?-20M4M^eht_JO2Bat1Xs;wvu>JZmZs^8>$^X#i|O w&>f%P7OtHuBhLkoQDCAsfYz&1UQ(TRvGZ-^!nXN4cgWOs^m>Xue0X+soj9~$dQV@~p+^#}t zkclK-0|zR2AKq8LKl>kdB;Ht?dB5$q?|iRw&hP&|M`E>F?Vi?VZ}${88+jXf8+jY~ zr=~dy7ZQm?ED$LmV+ebUfPrBGEaDqIi7C@jbS>fW96$-o<=&aswZH(-2Mhvw!2Cq3 zo;1cn2iF&FHD+zp})WX`e?EP0|SHN zx#HsDQtXZ3Gn0{bU{@kHdKPd4oJ6t3mFG#AD(>g;yp;C|?nwK5fk3uCPv99|mrR$u zINFo{>b7s+zQ)_d@ndSxF9Mj>hR#;;2mLObaeDGbnZ-IvPOI6CM6}U z*tv6O8m<>GF-MLk^ML>$l!On20U>}7px`}jd@eXBC}?SBW@g&9ZQD{rdz@w)@QD1K zW5eSTK_z@FvagmF(GFd7mjj2*nQue4+s;KVn z?stzLKVHk(!#yi2D{14#jh~ATX|>vcvuDqKo1dRwLhnS{-LPT9%UiZ=$yF#6Dq$b) zsjaQ8%{X}Q;7=TYturNWVzLiFyq{BIn%6QN_f>#I0Vv`kkhxCiUslr#oX~V?$w)g|rVr z_ba&OpE8+Dw{qpmND#ls?`oZm=7n5t;{gfVscOMUNgm`VIQKtcb@_;aNq#N&zNd-@bjX3yU{z-n_MA$Bqil^%Id7 z0-X|8vjVB|dP75l+R4dD22)=n_$mUAgaf98T}cW7jR^Y6l`BNd)!W-U1VL8=;>{R$ z0lxu%0KFpe*2h6!!o*2CL6w!2*^!Zvp~B*>UAw+ScbzqFn&93D|)O zqCRorMEB6p&|Q#=Wp{G1SS%zYyWHH|ttU^OECli+A|fL3-0v=2xIot7=<4dKfUDhL zqU3VJ*r#JZH;%40XG&g>K4~Rj|Ni}%LXe{d|Eer6FDJ9RMP@gFv?c5^%JlT~WSRhJ zePUvwA4uE^4Gmoilcq@R2J-fTOPo4&s);}XTDNXp0xZT$h~!jz2)+&CkEND&9Aiv* z({IzJP3v=Va#Dqb`uh4dj4Aqdv)0X%m^=kCCDLUiO;CCgZ%9r~UUlHWfqIzxh~|+^ z&LfzeCxX!YxuT+?_Yuuw)M|Ad;)34O({mxGJU7H3EkEDNy=5law;$t$eGp(0OG-*| zgoQI_&Zwb@FWBTHT-?Zo;$j?=cSE3yCX=Q_Y2@Ddd{v(h}7*SxT>u$Q2bEIFD$9I2*;&3FMn zjD*n75nDTk`4f4kRcI!YN%uV(#=ijfse*$q*T=`lr-6(@I6x^5nqESL;VQ4u9IDH6 z=x&sim6aA06fE7lckhQ46&2-rz5cedv-2=wk!N;x_Gc`#2eTnhld?|l_ ze^0!`)<>90rADNgPw^d4$3bT-lQa1G`YzFEG_5FX)EM`0oY1zlwN(>&SlA*6qLVhS zUAy+xhXn@&*4o-yR$5w0LK{TE(+2^30$2QC^XAQOk9tngOurQ*LM;x7Q(9YuapP1D z78VwMw0rmNuPOVHsfufQ+)K{ouRB}CT~S>yhvx-z70O&0yPlc<8IX0|X3LUs+MN$~ z2|yfKfRw4nH^$HW{E<)W>Hbp~UEbcG>OpvgVS-d=WWs_=7)2>bD_XY~eYiOCwT0L9 zq8}%E#z1p(a}OXD6=OqFD7GfmybI^{g`9(($2ntQNo)AW1_{hOO7s8bZ#VHLu|-_k zPFM3{@(yfX&K&$4#yKNsMkmsY^*5rKik+=Q5wUM`xw~@Dzw~_yUw!Z}!0KlHd UCl*83r~m)}07*qoM6N<$f~Wdp>;M1& diff --git a/java/res/drawable-mdpi/sym_keyboard_num3.png b/java/res/drawable-mdpi/sym_keyboard_num3.png deleted file mode 100644 index 6f54c850f5aeb3b10c0c8c7fc2ff4f7abed361dd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1676 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 XdL<4CY~@b$00000NkvXXu0mjfa?Y(` diff --git a/java/res/drawable-mdpi/sym_keyboard_num6.png b/java/res/drawable-mdpi/sym_keyboard_num6.png deleted file mode 100644 index ea88ceb94ea9b162632fb91bbba0d806ffaf0572..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1952 zcmV;R2VeM!P)y)8>gLQ%6WQFv5wZl#O+c9f#&FG%n#u&B zLBSEZgNNJU(C?w=+dh$V4z*e_&bK{$-}m0W_xD_W&+{InGcz-irFzLEOZc*aw}Q8V zw}M|XmxBICrP8_W)F6i_Au1LcOL=h;GRAiUw@DUb%2b%}1{;VIWEn)u&uRuc2>Bh- z3mFx_FUo6<#R#|^#0L_yZ{NQBn>TMZ_4oG=%!sbs+}w2Zdx(`s>nt{zYk4JGd*#)u zSM%cH;-cqMm`0<~GH|IWrOp#d|JEgCqeu&3H` zzk$E;jPKLt_NbU+b!|dILd2#`o8qYfAjdN@GD=RLK3#*?KFA1USQPI@3w)x1yv&;; zlGHJ0&^$+o8}rE&uWw*54!rqZ{+_@=!a91kvR7m4)NWyXV1sfzI*rXPw*Z{Yj57X zIRjqWDXc+)aMiGF_Pfm;KYcCh}v7XZjq&B z!^6X*Ov%vD5CQV=^YdH2W5#i)=jirlmsVIPplqOF>Bz{) zkd2LvDlIK70d1}XG%_+W(9_e?7n^*-FH^OF#aQ4X!E2w6B82@4ifBvLgFQK zy{}X%)g>h*MTLchKNJ@imz_CtrYtWn?6h;A?lxCf zS6}9i1%a0v3x7;L)Q;%_~-{2xO(X zBWpxcn`kV#rV-YhLYka8dGcf0SJw2TlFJ3HnaB$EZIB?)y7)H&+`j4GQWFq%8fYhE#3jke9 zMk7INHHrI}8*@ir)ti_!^4fiQ=TTv8$onI;)$0pUw+67 z8_kg21Y427JgKUxstXSfk8pH!bVfd=!l?(;qUZ7S{Rv8`Jcr_U7^&_y&KK9BqodZ{k(&0mhl5=oCLqo&YQBhH0^G%=(uxr<@FOUVkr*eQ5@WSB%YpOT~okhw} zaQP}>mo)Hq6{2E9&fz%9Yb$tPTFxv3tdtkZ+t$|BE~Lm-E^VK32ADGWTZ5=W${TwH z5?@|kUWtNYOnj6@YHA0|e}?|mycva=@>b3{)`7*2Q==1$a3HZ~vJ&3ySX81zjxCd# z3$JCvN~5{U`3U|hmBCy`*o#k{rpjBf<;9hrmh-sV{{8!-P<6@S=ADRhV&^VCIE;!; zX!BYAe}AN%3tmuwLSz9Umrt@A>X}5ItLy(m@PG9O8?)f&YE&j7MWZQ#Ta3TqNv;2@ mvx2vRw}Q8VUjo-30t^5}5C3SXOcKoi0000k;LBs diff --git a/java/res/drawable-mdpi/sym_keyboard_num7.png b/java/res/drawable-mdpi/sym_keyboard_num7.png deleted file mode 100644 index 4d75583afd38290276d1bc121aef4fd0c1331095..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1997 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 D@Kq#o7A|PuZ42mc& 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 TO`sLR00000NkvXXu0mjf*Ks`` diff --git a/java/res/drawable-mdpi/sym_keyboard_numpound.png b/java/res/drawable-mdpi/sym_keyboard_numpound.png deleted file mode 100644 index b2419d9abb1a6b27d54d58638ee7dec43c3cba92..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 963 zcmV;!13dhRP)cZ6Qjb zR?$R^VX%>b#JH4*F~&GaOdME@CJqcHt_=qKEKnPm%NZbqTx1qv^V*3bI;?a-@WI2=ew_ZS(bIRIvR8}JnH1@Y6cpE!Qi0T zY;H=Y(>cz9hNDKFYP!YYaGaz?I2=xJty_9}dM@yWq*x1fwNAc)2{#f!pdIM+dcCLU z;o{=r7A7a1v?NI$ip|Zv$M0*61+sT zySuxiP$(3qrlvNrJ`Vh5@?wRL+Q?yphn0jZnM}Tx|8bPdWg>ruvp~paB#1nD+J&8^ zrKPutL}CM{?Qpx@lF#QmAB)9410;C5y)nDpo->(DY5HA0eVrChp4wF_KsA0DxIZ~L z`HD_PEaq=~Ts6#4Xp4ZR5K2zzT(xj8z0H*hYW&j%rF1*g;b1nX}kcF=^!E|*KP z*=zx<-vgh3pQ;UzwPtUrf7?Q#&>axFl+9*aA!25$)!InpXJ%%uD?doYId%=tufPXn z1A)NP>FMbh9+y}9 zDzSS23<5s(1Wk&~)tcau(B*+2yb*1R*ext9L@>ok?0S29Pf!e={tKoL0L@!m>t&%S zFSyky7MH~C#@gCi2Bl3Kauc`+T#d)$A31i5-JYRZpOGN?_CzhuFf=sO4k43pWlgeW zt$22{Id`#G%yXdkFt@oQGSz1dOS-gZ=PZ%X^6y%x#q*-MysR^Hpms-QF+lwMzcbL|HQqPb*)3 l*1xoZqNOYK1l^=7e$Tq*@? zsYGqGBu#bGUEc?9A&mv0B!S)Rz{kFM@6E8^%$u3Fvx2Vcj#@3EqlSx3-X?F8x5?K` zk;>hnAPE1cc#uVwwIVo*^mytewgaWy$FfwV0d638nBXoUNBG0`I<^D*YzI^;ggwZ$ zPEJlfOKJkm(WN! zM+5W7u=n@(Uqu^kTiJK5FnI?Pyf{BU{~F}h*492zJx1ta+<*=?_)z@!-rmlDdB>LI)ds;LB|+L0;rAj)1g5ls*rbk0k>nSnqn%OKz; zoQy`Jr)g)8=kxhJ_`BV1*TBHQi{<5I>;+#4c|PW{gdc?OEEmfDt`#6(PmdFGb946< zMHx|5Rn|1^Kp1y+cDA{wK;EOWv9a;>z&a5{O_pVKb#--iczF0ZsnUesW=L`nqE5fx z-w_A|&iv0AgV5XC+kKdAYip~6a{<8==`E+GyE8L0FDblJ*=*KZC=?`uoXh2!Y4*ga zsi~VjpRWbZnM~$qB9VAS5up>&z9~-kA3We_SEGv+WXn+rV zxs4^rBV)UiPNzSEARU2ks2=4!0BgDrI@sXDSzePB$m57=8X6kvTVG#)zq7ORjYAtB zH1)i;yCadv2yCfT>TN6*i}Ht!CBEuhypBT{1pc0HEV|u++{L!D>|0-rnXg2KSE_Py zdTZq9D&OMl7j1}!U1z&mWUtsYRyD|%E(84twu+Fi_U)~HM4LHoZ_V`M)Bb5;lefv& cR{1Ny0B8Cmg;M2e6951J07*qoM6N<$f<&#yaR2}S diff --git a/java/res/drawable-mdpi/sym_keyboard_return.png b/java/res/drawable-mdpi/sym_keyboard_return.png deleted file mode 100644 index 17f2574398163a10896ea6b0b61dc632d18681b2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 866 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 diff --git a/java/res/drawable-mdpi/sym_keyboard_shift_locked.png b/java/res/drawable-mdpi/sym_keyboard_shift_locked.png deleted file mode 100755 index ccaf05d3bc46ff67835b401679366bf5137c00dd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 799 zcmV+)1K|9LP)#2tjDoMsV43utniY6gO?!1%|6O3Q3DlX;)iUZPJWZ{Y;sE z@AaMG2#Lhrd>j5cC?UI1O}++R1P`j! z>N~xd9wU)RJVk#DJZl!GP6(2C#k3v!xm>QSnSewklgY;zw+Egv5;d=&iI^?$W+sz) zuGyf|>2$;4@I#Eh2A<{<>6joFyFZ5Qcrw|VX+%XLkq5B50{Zo*dLBV8cKaS}!!$zl zprD8CUGOre327cdw4zhwc5*+hSQ7w?y3L2-I30)zBI8TZX!O3Qmv}^UMiJ(HXIJu{_SkH+wa+{>Z}us z3ZiXur_<>Jqt1H0KB`nIZ$xS$Q9)$49twqaj5=Gb*0xpY@jog?g>#f427|#W3z8Ql zNaGV|JgF?Jx`KZpf(D!p4B_>9snGwu$e^Y)&@GipMW4^N+wb>}Pnx1AV-nMBHeYcf z9L;=MY%;Z3mxt?{P0rqvf_}uFAu-=MOOI#yE)x|babUZ-m36VDvapd=90>_pe%mhv dO@Y4x3;^|JxT<%Hj&}e6002ovPDHLkV1kewZa@G4 diff --git a/java/res/drawable-mdpi/sym_keyboard_show.png b/java/res/drawable-mdpi/sym_keyboard_show.png deleted file mode 100644 index 521790ff4875e52b2c76dc8de697f5d5bf2fab87..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 783 zcmV+q1MvKbP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2ipi6 z5h^T0611NH00NImL_t(o!|j*PY7%cNl{mUT_px^Hw0pEZx>PZy=t` z^^L`W-IDQR?W(cr?OkNSTdh`lmGN2TT|l@7#+Vn1djJ!}gY&w7W!_rHc@=Vj#R)ib z8i(9T09_jny(~6iW6YbP-WX$EOK&dCA+O|8SEaQ67$M9Ghqjq;=&eo&XIXEi9Lln+ zd#0lLzMYsud7f9)4VOM&s!$ z&qHAtuBU0*QPUmH<%!Xor!)23-8#zN?W+Y*%nFym)5b^K*p2ikckev-3&@V_&!tLEEY>}v@Ar2124tN175pKs?oEdJa!?M=rX zovugo9>~wRyL0u!xD`#G%Fa$$_qysScW7wr<;32LGaMAQ`(&r&wC41t_c8_L-k$fv z>9R?B$qvQ%3FeIsU2~L@wNqAabnpxF%KYm(?|FITw7Y&U=c#zsv32BFuR8r_Q^s29 zc#q3pvd&#|+a{ScK~cf|pP&By;K*tH$0SVEePoVHPk%el(8PPu|L@J)6g$Q9TEk-h z-LhYH>g*})sC~x{ytPwkEDK@iOuKVY*DSpG*^gKGJx%}l-(K9#z|62}eM`u;D!*yK Ppl9%O^>bP0l+XkKAM?9m diff --git a/java/res/drawable/btn_keyboard_key.xml b/java/res/drawable/btn_keyboard_key.xml deleted file mode 100644 index cb51b69..0000000 --- a/java/res/drawable/btn_keyboard_key.xml +++ /dev/null @@ -1,36 +0,0 @@ - - - - - - - - - - - - - - - - - - diff --git a/java/res/drawable/ic_suggest_scroll_background.xml b/java/res/drawable/ic_suggest_scroll_background.xml deleted file mode 100644 index 9d246e4..0000000 --- a/java/res/drawable/ic_suggest_scroll_background.xml +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/java/res/layout-land/dah_table.xml b/java/res/layout-land/dah_table.xml deleted file mode 100644 index ab53c40..0000000 --- a/java/res/layout-land/dah_table.xml +++ /dev/null @@ -1,309 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/java/res/layout-land/dit_table.xml b/java/res/layout-land/dit_table.xml deleted file mode 100644 index 062e703..0000000 --- a/java/res/layout-land/dit_table.xml +++ /dev/null @@ -1,308 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/java/res/layout-land/utility_table.xml b/java/res/layout-land/utility_table.xml deleted file mode 100644 index f2cbffd..0000000 --- a/java/res/layout-land/utility_table.xml +++ /dev/null @@ -1,308 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/java/res/layout/accessible_menu_item.xml b/java/res/layout/accessible_menu_item.xml new file mode 100644 index 0000000..3355163 --- /dev/null +++ b/java/res/layout/accessible_menu_item.xml @@ -0,0 +1,31 @@ + + + + + + + diff --git a/java/res/layout/activity_prefs.xml b/java/res/layout/activity_prefs.xml deleted file mode 100644 index e5418f6..0000000 --- a/java/res/layout/activity_prefs.xml +++ /dev/null @@ -1,490 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/java/res/layout/activity_splash.xml b/java/res/layout/activity_splash.xml deleted file mode 100644 index 19a3156..0000000 --- a/java/res/layout/activity_splash.xml +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - - - diff --git a/java/res/layout/activity_voice.xml b/java/res/layout/activity_voice.xml deleted file mode 100644 index 333e85b..0000000 --- a/java/res/layout/activity_voice.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - diff --git a/java/res/layout/bubble_text.xml b/java/res/layout/bubble_text.xml deleted file mode 100644 index c3957b6..0000000 --- a/java/res/layout/bubble_text.xml +++ /dev/null @@ -1,30 +0,0 @@ - - - - diff --git a/java/res/layout/candidate_preview.xml b/java/res/layout/candidate_preview.xml deleted file mode 100755 index fe2002d..0000000 --- a/java/res/layout/candidate_preview.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - diff --git a/java/res/layout/candidates.xml b/java/res/layout/candidates.xml deleted file mode 100755 index 513373d..0000000 --- a/java/res/layout/candidates.xml +++ /dev/null @@ -1,79 +0,0 @@ - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/java/res/layout/cheat_sheet1.xml b/java/res/layout/cheat_sheet1.xml deleted file mode 100644 index 6310b15..0000000 --- a/java/res/layout/cheat_sheet1.xml +++ /dev/null @@ -1,341 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/java/res/layout/cheat_sheet2.xml b/java/res/layout/cheat_sheet2.xml deleted file mode 100644 index 119bd10..0000000 --- a/java/res/layout/cheat_sheet2.xml +++ /dev/null @@ -1,316 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/java/res/layout/dah_table.xml b/java/res/layout/dah_table.xml deleted file mode 100644 index c72a520..0000000 --- a/java/res/layout/dah_table.xml +++ /dev/null @@ -1,310 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/java/res/layout/dialog_scan_speed.xml b/java/res/layout/dialog_scan_speed.xml deleted file mode 100644 index f4991e5..0000000 --- a/java/res/layout/dialog_scan_speed.xml +++ /dev/null @@ -1,46 +0,0 @@ - - - - - - - - - -