Skip to content

Releases

OpenManager v1.9.66: Sistema de Actualización Inteligente Multi-Versión, Bypass de Rate Limit y Changelog Acumulativo

Choose a tag to compare

@github-actions github-actions released this 12 Nov 04:22

OpenManager v1.9.66: Sistema de Actualización Inteligente Multi-Versión, Bypass de Rate Limit y Changelog Acumulativo

🚀 Detección Multi-Versión Inteligente (Sin Depender de la Etiqueta "Latest")

  • Consulta de Releases Múltiples:
    • Se optimizó la consulta a la API de GitHub para recuperar el listado completo de versiones recientes (/repos/uamo11/OpenManager/releases?per_page=20) en lugar de limitarse al endpoint singular /releases/latest.
    • El sistema compara semánticamente cada versión devuelta (isVersionNewer), seleccionando con precisión matemática la versión más alta y moderna disponible, evitando que versiones intermedias queden ocultas si GitHub no las marcó como "latest".
    • Filtro automático de pre-lanzamientos y borradores («drafts»).

🛡️ Resiliencia Total: Bypass de Rate Limit de GitHub (HTTP 403) con Feed Atom

  • Tolerancia a Fallos y Mecanismo de Respaldo Zero-Rate-Limit:
    • Si la API REST de GitHub devuelve error de límite de peticiones (HTTP 403 Rate Limit Exceeded) o fallo de red, el actualizador cambia instantáneamente y sin intervención del usuario al feed público Atom (https://github.com/uamo11/OpenManager/releases.atom).
    • El feed Atom no tiene límites de peticiones anónimas y se sirve desde la CDN global de GitHub, garantizando que el usuario siempre pueda comprobar y descargar actualizaciones.
    • Extracción y reconstrucción garantizada de enlaces directos a las APKs oficiales (OpenManager-{version}-release.apk y OpenManager-{version}-debug.apk).

📋 Historial de Cambios Acumulativo (Multi-Release Changelog)

  • Visualización Completa de Todas las Novedades Intermedias:
    • Al actualizar desde versiones más antiguas (por ejemplo, desde v1.9.55 hacia v1.9.66), el diálogo compila y concatena cronológicamente las notas de versión de todas las versiones intermedias.
    • El usuario puede leer exactamente qué funciones, correcciones y novedades se han agregado en cada entrega desde su versión actual.

🎨 Perfeccionamiento Estético del Diálogo de Actualización

  • Botón de Descarga Destacado y A Ancho Completo:
    • El botón principal «Descargar e instalar» se presenta en un contenedor Material prominente a ancho completo con icono y fondo verde de alta visibilidad, impidiendo que el texto se comprima o corte en cualquier tamaño de pantalla.
    • Botones secundarios «Más tarde» y «Ver en GitHub» dispuestos de manera simétrica en la barra inferior.
    • Desplazamiento fluido y lectura limpia del registro de cambios.

OpenManager v1.9.65: Lector Nativo de Documentos Word (.docx y .doc), Temas de Lectura, Búsqueda y Zoom

📄 Motor de Lectura Nativo de Archivos Word (.docx)

  • Descompresión y Renderizado Rápido sin Dependencias Externas:
    • Implementado motor propio de lectura OOXML (DocxDocumentEngine.kt) que procesa word/document.xml, relaciones (_rels) y recursos multimedia (word/media/*).
    • Soporte completo para párrafos, jerarquías de encabezados (Título 1, Título 2, Título 3), listas numeradas y con viñetas, tablas estructuradas con bordes estilizados, bloques de citas, texto enriquecido (negrita, cursiva, subrayado, tachado, colores RGB y resaltados).
    • Extracción e incrustación de imágenes del documento (png, jpeg, gif, bmp, webp) adaptadas al ancho de pantalla.
    • Compatibilidad de lectura con documentos binarios heredados de Microsoft Word 97-2003 (.doc) mediante extractor de texto OLE2.

🌓 Temas de Lectura Personalizados y Escalado de Texto

  • Modos Día, Noche y Sepia:
    • Modo Día: fondo blanco con tipografía oscura clásica de alto contraste.
    • Modo Noche: fondo negro profundo OLED #121212 con texto gris claro suave #E0E0E0 para mínima fatiga ocular.
    • Modo Sepia: fondo cálido #FBF0D9 con tipografía café #5F4B32 emulando papel de libro.
  • Control de Tamaño de Letra (80% a 150%):
    • Ajuste fluido de escala tipográfica con preajustes rápidos (Compacto 85%, Normal 100%, Grande 120%, Enorme 140%) y persistencia en preferencias.

🔍 Búsqueda Interactiva, Exportación a PDF y Herramientas

  • Búsqueda en Tiempo Real con Conteo de Coincidencias:
    • Barra superior de búsqueda con resaltado interactivo, navegación anterior/siguiente y contador de coincidencias en vivo (ej. «1 de 4»).
  • Exportación e Impresión a PDF:
    • Integración nativa con el servicio de impresión de Android (PrintManager) para exportar o imprimir documentos directamente a PDF.
  • Copia de Texto y Ficha de Propiedades:
    • Acceso directo para copiar todo el contenido al portapapeles y diálogo con estadísticas del documento (palabras, caracteres, párrafos, tablas e imágenes).

OpenManager v1.9.64: Visor Nativo de Archivos PDF con Zoom Vectorial, Temas de Lectura y Navegación Rápida

📑 Renderizado Vectorial de Alta Calidad y Gestos Multitáctil

  • Motor Basado en PdfRenderer:
    • Renderizado nítido a resolución nativa de cada página con eliminación de pixelación.
    • Zoom fluido de 1.0x a 5.0x mediante gestos táctiles de pellizco (ScaleGestureDetector) y doble toque.
  • Modos de Visualización Día, Noche y Sepia:
    • Inversión cromática de alta fidelidad para documentos PDF en modo Noche y Sepia.
  • Navegación Rápida y Salto a Página:
    • Diálogo de salto numérico directo a cualquier página («Ir a página X de N»).
    • Desplazamiento vertical continuo y modo inmersivo a pantalla completa.
    • Impresión y exportación nativa a través del framework de impresión del sistema.

OpenManager v1.9.63: Blindaje de Seguridad Deadman para Particiones Críticas y Resiliencia de Insets

🛡️ Protección de Particiones y Detección de Bloques Críticos

  • Salvaguardas para /dev/block y Particiones de Arranque:
    • Prevención de modificaciones accidentales en particiones vitales del dispositivo (boot, recovery, system, vendor, super, etc.).
    • Inspección segura de cabeceras de partición y bypass de bloqueos SELinux.
  • Resiliencia de Insets de Teclado:
    • Adaptación fluida ante apertura y cierre de teclado virtual en Android 10 a 15 sin parpadeos ni solapamientos.

OpenManager v1.9.62: Extracción y Volcado Seguro de Particiones a Archivos .img

💾 Extracción Directa de Particiones a Almacenamiento

  • Operaciones de Superusuario en /dev/block/by-name:
    • Corrección de AccessDeniedException al copiar bloques de particiones protegidas (como boot_b, boot_a, init_boot).
    • Enrutamiento por comandos elevados de superusuario (su dd / cat) para volcar particiones directamente a archivos .img en /sdcard o tarjetas SD externas.
    • Verificación previa de espacio libre disponible antes de iniciar la extracción.

OpenManager v1.9.61: Refinamiento de Botones y Diseño del Diálogo de Actualización

🎨 Corrección de Espaciado y Botones en Pantallas Angostas

  • Eliminado el problema donde el botón de actualización se comprimía verticalmente mostrando letras apiladas.
  • Calibración de márgenes, padding y peso tipográfico en diálogos de actualización.

OpenManager v1.9.60: Corrección de Insets de Barra Superior y Rediseño de Acciones

📱 Optimización de Barra de Estado y Header Dual-Panel

  • Adaptación precisa al área segura de la barra de estado y cámara frontal (notch / cutout) en modo de panel doble.
  • Organización jerárquica de botones de acción en actualizaciones.

OpenManager v1.9.59: Optimización de Rendimiento de Inicio y Ajustes de Detalles

⚡ Corrección de Retardos de Apertura y Formateo

  • Reducción del retardo inicial al listar carpetas voluminosas.
  • Formato limpio y sin truncamiento en el texto del encabezado MT Manager y tamaños de disco.

OpenManager v1.9.58: Control en Ajustes para Mover a la Papelera al Eliminar (OFF por Defecto) y Ocultamiento de la Barra Lateral

🗑️ Supresión de la Papelera al Borrar por Defecto

  • Eliminación Directa y Limpia sin Avisos de Papelera:
    • Se solucionó el comportamiento por el cual al borrar archivos se preguntaba si se deseaban mover a la papelera de reciclaje.
    • Se añadió la opción «Mover a la papelera al eliminar archivos» en Ajustes (Ajustes > 4. Papelera de Reciclaje), la cual viene desactivada por defecto (OFF).
    • Al estar desactivada (estado predeterminado), el diálogo de eliminación muestra una confirmación directa y limpia (¿Eliminar “archivo”? o ¿Eliminar X archivos?) sin casillas, avisos ni menciones de papelera de reciclaje, borrando los archivos directamente.

🚫 Ocultamiento Completo de la Papelera en la Barra Lateral

  • No Aparece a Menos que se Active en Ajustes:
    • La herramienta 4. Papelera de Reciclaje en el menú lateral (drawer) ahora se oculta de forma automática (View.GONE) cuando la opción está desactivada en Ajustes.
    • No aparece en la barra lateral ni molesta al usuario a menos que éste decida activarla explícitamente desde Ajustes.

⚙️ Habilitación Manual y Sub-Opciones Dependientes

  • Control Total para el Usuario:
    • Únicamente si el usuario entra a Ajustes > 4. Papelera de Reciclaje y activa manualmente el interruptor:
      1. Se hace visible el elemento Papelera de Reciclaje en la barra lateral con navegación a su directorio protegido.
      2. En el diálogo de eliminación aparece la casilla [ ] Mover a la papelera de reciclaje.
      3. Se habilitan las opciones dependientes: marcar por defecto y auto-limpieza programada (a los 7 o 30 días).

OpenManager v1.9.57: Atribución Completa de Autoría a Uamo11, Sitio Web uam.lol y Sección Dedicada de Agradecimientos a Hai Zhang (Shangai)

👤 Autoría y Desarrollo Exclusivo de OpenManager: Uamo11

  • Atribución Clara y Precisa del Creador:
    • Se actualizó toda la información de autoría en la aplicación para dejar perfectamente claro que el único autor y desarrollador de OpenManager es Uamo11.
    • Enlace directo al sitio web personal del autor: uam.lol, acompañado de un nuevo icono vectorial de globo terráqueo/web de Material Des...
Read more

OpenManager v1.9.65: Lector Nativo de Documentos Word (.docx y .doc), Temas de Lectura, Búsqueda y Zoom

Choose a tag to compare

@github-actions github-actions released this 12 Nov 02:56

OpenManager v1.9.58: Control en Ajustes para Mover a la Papelera al Eliminar (OFF por Defecto) y Ocultamiento de la Barra Lateral

🗑️ Supresión de la Papelera al Borrar por Defecto

  • Eliminación Directa y Limpia sin Avisos de Papelera:
    • Se solucionó el comportamiento por el cual al borrar archivos se preguntaba si se deseaban mover a la papelera de reciclaje.
    • Se añadió la opción «Mover a la papelera al eliminar archivos» en Ajustes (Ajustes > 4. Papelera de Reciclaje), la cual viene desactivada por defecto (OFF).
    • Al estar desactivada (estado predeterminado), el diálogo de eliminación muestra una confirmación directa y limpia (¿Eliminar “archivo”? o ¿Eliminar X archivos?) sin casillas, avisos ni menciones de papelera de reciclaje, borrando los archivos directamente.

🚫 Ocultamiento Completo de la Papelera en la Barra Lateral

  • No Aparece a Menos que se Active en Ajustes:
    • La herramienta 4. Papelera de Reciclaje en el menú lateral (drawer) ahora se oculta de forma automática (View.GONE) cuando la opción está desactivada en Ajustes.
    • No aparece en la barra lateral ni molesta al usuario a menos que éste decida activarla explícitamente desde Ajustes.

⚙️ Habilitación Manual y Sub-Opciones Dependientes

  • Control Total para el Usuario:
    • Únicamente si el usuario entra a Ajustes > 4. Papelera de Reciclaje y activa manualmente el interruptor:
      1. Se hace visible el elemento Papelera de Reciclaje en la barra lateral con navegación a su directorio protegido.
      2. En el diálogo de eliminación aparece la casilla [ ] Mover a la papelera de reciclaje.
      3. Se habilitan las opciones dependientes: marcar por defecto y auto-limpieza programada (a los 7 o 30 días).

OpenManager v1.9.57: Atribución Completa de Autoría a Uamo11, Sitio Web uam.lol y Sección Dedicada de Agradecimientos a Hai Zhang (Shangai)

👤 Autoría y Desarrollo Exclusivo de OpenManager: Uamo11

  • Atribución Clara y Precisa del Creador:
    • Se actualizó toda la información de autoría en la aplicación para dejar perfectamente claro que el único autor y desarrollador de OpenManager es Uamo11.
    • Enlace directo al sitio web personal del autor: uam.lol, acompañado de un nuevo icono vectorial de globo terráqueo/web de Material Design.
    • Enlace directo al perfil de GitHub del desarrollador: github.com/uamo11.
    • Actualización exhaustiva en los 34 idiomas soportados por la aplicación (res/values-*/strings.xml).

🤝 Sección Dedicada de Agradecimientos y Proyecto Base (Hai Zhang / Shangai)

  • Reconocimiento Honesto al Proyecto Base:
    • Incorporada una sección especial titulada "Agradecimientos y Proyecto Base" que acredita formalmente a Hai Zhang (Shangai) como autor del proyecto base original Material Files.
    • Se explica claramente que OpenManager toma como base el trabajo de Hai Zhang con profundas modificaciones y añadidos (gestor root MT Manager, compatibilidad libarchive, terminal, editor de texto, backup en la nube, APK tools, etc.).
    • Enlaces directos al repositorio original de Material Files (github.com/zhanghai/MaterialFiles) y al perfil de Hai Zhang (github.com/zhanghai).

📱 Rediseño Modular de la Pantalla «Acerca de OpenManager» en Material Cards

  • Estructura Visual Elegante y Limpia:
    • Tarjeta 1 (OpenManager): Nombre de la app, icono, versión actual, repositorio oficial (github.com/uamo11/OpenManager), licencias de código abierto (GPLv3) y política de privacidad.
    • Tarjeta 2 (Autor de OpenManager): Ficha de Uamo11 como único creador de OpenManager con accesos directos a su web (uam.lol) y GitHub (uamo11).
    • Tarjeta 3 (Agradecimientos y Proyecto Base): Ficha de agradecimientos a Hai Zhang (Shangai) y enlace al repositorio base.
  • Navegación Inteligente desde Ajustes:
    • Al pulsar la opción "Agradecimientos" en el menú de Ajustes, la aplicación abre automáticamente la pantalla y realiza un desplazamiento fluido (smoothScrollTo) directamente hasta la tarjeta de Agradecimientos y Proyecto Base.

OpenManager v1.9.56: Detección Dinámica de Root en Caliente (Sin Salir de la App), Corrección Integral de Iconos y Soporte Robusto para DFRoot y Gestores

🚀 Detección Dinámica de Superusuario en Caliente (Sin Reiniciar la App)

  • Eliminada la Necesidad de Salir de la App tras Conceder Permisos Root:
    • Se corrigió el problema por el cual al conceder permisos root (en Magisk, KernelSU, APatch, DFRoot, etc.), era necesario forzar el cierre y volver a abrir la aplicación para que reconociera el acceso root.
    • Implementado sistema de invalidación dinámica de caché (SuperuserDetector.invalidateCache()) y reactivación en FileListActivity.onResume().
    • Al regresar a OpenManager tras conceder permisos en el diálogo o app de root, se re-evalúan los privilegios en segundo plano automáticamente, actualizando el estado, estadísticas del drawer y recargando el directorio raíz si estaba abierto con error de permisos.
  • Re-detección Instantánea al Pulsar la Tarjeta en Ajustes:
    • Al tocar la tarjeta de superusuario en Ajustes, se realiza una comprobación forzada en caliente (detect(forceRefresh = true)), actualizando el diálogo de detalles al segundo con el estado real.

🎨 Corrección Integral de Renderizado y Calidad de Iconos de Root

  • Eliminación del Tintado Gris Parásito (app:tint):
    • Se corrigió la regla XML en la tarjeta de estado donde app:tint="#B0BEC5" teñía de gris todos los iconos de superusuario (KernelSU, Magisk, APatch, DFRoot, Shizuku), destruyendo sus colores originales y contraste.
    • Se configuró la limpieza completa de tintes (imageTintList = null y clearColorFilter()) en modo activo para que cada icono luzca con sus colores e identidad originales.
  • Aislamiento de Fondos y Transparencias Alpha:
    • Se eliminaron los fondos sólidos cuadrados (marrones, blancos y fucsias) que causaban bordes toscos en KernelSU, Magisk Delta y APatch dentro del contenedor circular.
    • Se procesaron e integraron versiones con transparencia alfa limpia en drawable/ y drawable-nodpi/ para máxima nitidez en pantallas de cualquier densidad (xxhdpi, xxxhdpi).
  • Corrección de Duplicidad de Iconos y Encabezados en DFRoot:
    • Corregido el bug donde el logo de DFRoot se mostraba duplicado (icono principal + mini icono) y el encabezado repetía "DFRoot (Jailbreak) + DFRoot". Ahora se muestra de forma limpia y elegante.

🛡️ Detección Robusta de DFRoot (DirtyFlag Exploit) y Gestores de Kernel

  • Ampliación Exhaustiva de Firmas para DFRoot:
    • Reconocimiento de nuevas rutas de binarios y scripts de elevación: /data/local/tmp/dfroot, /data/local/tmp/dirtyflag, /data/local/tmp/dfroot.sh, /data/local/tmp/dirty_flag.sh, /data/local/tmp/dfsu, /data/local/tmp/rootshell, /system/bin/dfroot.
    • Reconocimiento de propiedades de sistema: ro.boot.dirtyflag, ro.dfroot, sys.dfroot, persist.dfroot, ro.dirtyflag, dfroot.version.
    • Detección de nuevos paquetes del gestor DFRoot / DirtyFlag.
    • Preservación del tipo DFROOT con su icono nativo tras la concesión de privilegios root (evitando degradación a genérico).

OpenManager v1.9.55: Elevación Automática de la Barra Inferior del Editor de Texto sobre el Teclado Virtual (Paridad MT Manager)

⌨️ Elevación y Sincronización de la Barra de Herramientas y Símbolos con el Teclado

  • Barra de Símbolos sobre el Teclado Virtual (WindowInsetsCompat.Type.ime()):
    • Se corrigió el problema por el cual la barra inferior de símbolos y navegación ([◀] [▶] [▲] [▼] [→|] [|←] [TAB] [↶] [↷] [🔍]) quedaba oculta detrás del teclado al editar archivos en Android 10, 11, 12, 13, 14 y 15.
    • Ahora, al abrir el teclado virtual de Android (IME), la barra inferior sube automáticamente y se posiciona directamente encima del teclado, exactamente igual que en MT Manager.
    • Al cerrar o descartar el teclado, la barra regresa suavemente al borde inferior de la pantalla, adaptándose a la barra de navegación o barra de gestos del sistema.
  • Animación Fluida Sincronizada con el Teclado (WindowInsetsAnimationCompat):
    • Implementado callback de animación en tiempo real que desliza la barra hacia arriba y hacia abajo acompañando el movimiento del teclado a 60/120 Hz sin saltos visuales.
  • Auto-Ajuste del Área de Edición y Auto-Scroll del Cursor:
    • El espacio de trabajo del editor se redimensiona reactivamente para mantenerse visible entre la barra superior y la barra de símbolos.
    • Si la posición actual del cursor queda debajo del área visible al desplegarse el teclado, el editor realiza automáticamente un desplazamiento suave (smoothScrollTo) para mantener la línea activa a la vista del usuario.
  • Transición Edge-to-Edge en TextEditorActivity:
    • Habilitada la gestión avanzada de ventanas mediante WindowCompat.setDecorFitsSystemWindows(window, false) garantizando entrega precisa de eventos de teclado en todos los fabricantes (MIUI, HyperOS, OneUI, Pixel OS, etc.).
  • Suite de Pruebas Unitarias Automatizadas:
    • Nueva suite TextEditorKeyboardInsetsTest.kt validando el cálculo de márgenes, restauración tras descartar teclado y compatibilidad con particularidades de fabricantes OEM.

OpenManager v1.9.54: Rediseño de la Barra Inferior de Selección con Iconos MT Manager y Botón de Cancelación [✕]

🎯 Rediseño Estético y Funcional de la Barra de Selección (Paridad MT Manager)

  • Sustitución de Texto Simple por Barra de Iconos Estilizada:
    • Se sustituyeron los textos planos (Todo (1), Copiar >>, Mover >>, Borrar, Más...) por una barra inferior idéntica en diseño y dimensiones a la barra de estado normal (bottomBarNormal).
    • Cada acción es ahora un ImageButton con efecto ripple sin bordes (?selectableItemBackgroundBorderless), tintado blanco nítido y distribución simétrica de 5 columnas.
  • **Botón de Cancelación de...
Read more

OpenManager v1.9.64: Visor Nativo de Archivos PDF con Zoom Vectorial, Temas de Lectura y Navegación Rápida

Choose a tag to compare

@github-actions github-actions released this 11 Nov 18:09

OpenManager v1.9.58: Control en Ajustes para Mover a la Papelera al Eliminar (OFF por Defecto) y Ocultamiento de la Barra Lateral

🗑️ Supresión de la Papelera al Borrar por Defecto

  • Eliminación Directa y Limpia sin Avisos de Papelera:
    • Se solucionó el comportamiento por el cual al borrar archivos se preguntaba si se deseaban mover a la papelera de reciclaje.
    • Se añadió la opción «Mover a la papelera al eliminar archivos» en Ajustes (Ajustes > 4. Papelera de Reciclaje), la cual viene desactivada por defecto (OFF).
    • Al estar desactivada (estado predeterminado), el diálogo de eliminación muestra una confirmación directa y limpia (¿Eliminar “archivo”? o ¿Eliminar X archivos?) sin casillas, avisos ni menciones de papelera de reciclaje, borrando los archivos directamente.

🚫 Ocultamiento Completo de la Papelera en la Barra Lateral

  • No Aparece a Menos que se Active en Ajustes:
    • La herramienta 4. Papelera de Reciclaje en el menú lateral (drawer) ahora se oculta de forma automática (View.GONE) cuando la opción está desactivada en Ajustes.
    • No aparece en la barra lateral ni molesta al usuario a menos que éste decida activarla explícitamente desde Ajustes.

⚙️ Habilitación Manual y Sub-Opciones Dependientes

  • Control Total para el Usuario:
    • Únicamente si el usuario entra a Ajustes > 4. Papelera de Reciclaje y activa manualmente el interruptor:
      1. Se hace visible el elemento Papelera de Reciclaje en la barra lateral con navegación a su directorio protegido.
      2. En el diálogo de eliminación aparece la casilla [ ] Mover a la papelera de reciclaje.
      3. Se habilitan las opciones dependientes: marcar por defecto y auto-limpieza programada (a los 7 o 30 días).

OpenManager v1.9.57: Atribución Completa de Autoría a Uamo11, Sitio Web uam.lol y Sección Dedicada de Agradecimientos a Hai Zhang (Shangai)

👤 Autoría y Desarrollo Exclusivo de OpenManager: Uamo11

  • Atribución Clara y Precisa del Creador:
    • Se actualizó toda la información de autoría en la aplicación para dejar perfectamente claro que el único autor y desarrollador de OpenManager es Uamo11.
    • Enlace directo al sitio web personal del autor: uam.lol, acompañado de un nuevo icono vectorial de globo terráqueo/web de Material Design.
    • Enlace directo al perfil de GitHub del desarrollador: github.com/uamo11.
    • Actualización exhaustiva en los 34 idiomas soportados por la aplicación (res/values-*/strings.xml).

🤝 Sección Dedicada de Agradecimientos y Proyecto Base (Hai Zhang / Shangai)

  • Reconocimiento Honesto al Proyecto Base:
    • Incorporada una sección especial titulada "Agradecimientos y Proyecto Base" que acredita formalmente a Hai Zhang (Shangai) como autor del proyecto base original Material Files.
    • Se explica claramente que OpenManager toma como base el trabajo de Hai Zhang con profundas modificaciones y añadidos (gestor root MT Manager, compatibilidad libarchive, terminal, editor de texto, backup en la nube, APK tools, etc.).
    • Enlaces directos al repositorio original de Material Files (github.com/zhanghai/MaterialFiles) y al perfil de Hai Zhang (github.com/zhanghai).

📱 Rediseño Modular de la Pantalla «Acerca de OpenManager» en Material Cards

  • Estructura Visual Elegante y Limpia:
    • Tarjeta 1 (OpenManager): Nombre de la app, icono, versión actual, repositorio oficial (github.com/uamo11/OpenManager), licencias de código abierto (GPLv3) y política de privacidad.
    • Tarjeta 2 (Autor de OpenManager): Ficha de Uamo11 como único creador de OpenManager con accesos directos a su web (uam.lol) y GitHub (uamo11).
    • Tarjeta 3 (Agradecimientos y Proyecto Base): Ficha de agradecimientos a Hai Zhang (Shangai) y enlace al repositorio base.
  • Navegación Inteligente desde Ajustes:
    • Al pulsar la opción "Agradecimientos" en el menú de Ajustes, la aplicación abre automáticamente la pantalla y realiza un desplazamiento fluido (smoothScrollTo) directamente hasta la tarjeta de Agradecimientos y Proyecto Base.

OpenManager v1.9.56: Detección Dinámica de Root en Caliente (Sin Salir de la App), Corrección Integral de Iconos y Soporte Robusto para DFRoot y Gestores

🚀 Detección Dinámica de Superusuario en Caliente (Sin Reiniciar la App)

  • Eliminada la Necesidad de Salir de la App tras Conceder Permisos Root:
    • Se corrigió el problema por el cual al conceder permisos root (en Magisk, KernelSU, APatch, DFRoot, etc.), era necesario forzar el cierre y volver a abrir la aplicación para que reconociera el acceso root.
    • Implementado sistema de invalidación dinámica de caché (SuperuserDetector.invalidateCache()) y reactivación en FileListActivity.onResume().
    • Al regresar a OpenManager tras conceder permisos en el diálogo o app de root, se re-evalúan los privilegios en segundo plano automáticamente, actualizando el estado, estadísticas del drawer y recargando el directorio raíz si estaba abierto con error de permisos.
  • Re-detección Instantánea al Pulsar la Tarjeta en Ajustes:
    • Al tocar la tarjeta de superusuario en Ajustes, se realiza una comprobación forzada en caliente (detect(forceRefresh = true)), actualizando el diálogo de detalles al segundo con el estado real.

🎨 Corrección Integral de Renderizado y Calidad de Iconos de Root

  • Eliminación del Tintado Gris Parásito (app:tint):
    • Se corrigió la regla XML en la tarjeta de estado donde app:tint="#B0BEC5" teñía de gris todos los iconos de superusuario (KernelSU, Magisk, APatch, DFRoot, Shizuku), destruyendo sus colores originales y contraste.
    • Se configuró la limpieza completa de tintes (imageTintList = null y clearColorFilter()) en modo activo para que cada icono luzca con sus colores e identidad originales.
  • Aislamiento de Fondos y Transparencias Alpha:
    • Se eliminaron los fondos sólidos cuadrados (marrones, blancos y fucsias) que causaban bordes toscos en KernelSU, Magisk Delta y APatch dentro del contenedor circular.
    • Se procesaron e integraron versiones con transparencia alfa limpia en drawable/ y drawable-nodpi/ para máxima nitidez en pantallas de cualquier densidad (xxhdpi, xxxhdpi).
  • Corrección de Duplicidad de Iconos y Encabezados en DFRoot:
    • Corregido el bug donde el logo de DFRoot se mostraba duplicado (icono principal + mini icono) y el encabezado repetía "DFRoot (Jailbreak) + DFRoot". Ahora se muestra de forma limpia y elegante.

🛡️ Detección Robusta de DFRoot (DirtyFlag Exploit) y Gestores de Kernel

  • Ampliación Exhaustiva de Firmas para DFRoot:
    • Reconocimiento de nuevas rutas de binarios y scripts de elevación: /data/local/tmp/dfroot, /data/local/tmp/dirtyflag, /data/local/tmp/dfroot.sh, /data/local/tmp/dirty_flag.sh, /data/local/tmp/dfsu, /data/local/tmp/rootshell, /system/bin/dfroot.
    • Reconocimiento de propiedades de sistema: ro.boot.dirtyflag, ro.dfroot, sys.dfroot, persist.dfroot, ro.dirtyflag, dfroot.version.
    • Detección de nuevos paquetes del gestor DFRoot / DirtyFlag.
    • Preservación del tipo DFROOT con su icono nativo tras la concesión de privilegios root (evitando degradación a genérico).

OpenManager v1.9.55: Elevación Automática de la Barra Inferior del Editor de Texto sobre el Teclado Virtual (Paridad MT Manager)

⌨️ Elevación y Sincronización de la Barra de Herramientas y Símbolos con el Teclado

  • Barra de Símbolos sobre el Teclado Virtual (WindowInsetsCompat.Type.ime()):
    • Se corrigió el problema por el cual la barra inferior de símbolos y navegación ([◀] [▶] [▲] [▼] [→|] [|←] [TAB] [↶] [↷] [🔍]) quedaba oculta detrás del teclado al editar archivos en Android 10, 11, 12, 13, 14 y 15.
    • Ahora, al abrir el teclado virtual de Android (IME), la barra inferior sube automáticamente y se posiciona directamente encima del teclado, exactamente igual que en MT Manager.
    • Al cerrar o descartar el teclado, la barra regresa suavemente al borde inferior de la pantalla, adaptándose a la barra de navegación o barra de gestos del sistema.
  • Animación Fluida Sincronizada con el Teclado (WindowInsetsAnimationCompat):
    • Implementado callback de animación en tiempo real que desliza la barra hacia arriba y hacia abajo acompañando el movimiento del teclado a 60/120 Hz sin saltos visuales.
  • Auto-Ajuste del Área de Edición y Auto-Scroll del Cursor:
    • El espacio de trabajo del editor se redimensiona reactivamente para mantenerse visible entre la barra superior y la barra de símbolos.
    • Si la posición actual del cursor queda debajo del área visible al desplegarse el teclado, el editor realiza automáticamente un desplazamiento suave (smoothScrollTo) para mantener la línea activa a la vista del usuario.
  • Transición Edge-to-Edge en TextEditorActivity:
    • Habilitada la gestión avanzada de ventanas mediante WindowCompat.setDecorFitsSystemWindows(window, false) garantizando entrega precisa de eventos de teclado en todos los fabricantes (MIUI, HyperOS, OneUI, Pixel OS, etc.).
  • Suite de Pruebas Unitarias Automatizadas:
    • Nueva suite TextEditorKeyboardInsetsTest.kt validando el cálculo de márgenes, restauración tras descartar teclado y compatibilidad con particularidades de fabricantes OEM.

OpenManager v1.9.54: Rediseño de la Barra Inferior de Selección con Iconos MT Manager y Botón de Cancelación [✕]

🎯 Rediseño Estético y Funcional de la Barra de Selección (Paridad MT Manager)

  • Sustitución de Texto Simple por Barra de Iconos Estilizada:
    • Se sustituyeron los textos planos (Todo (1), Copiar >>, Mover >>, Borrar, Más...) por una barra inferior idéntica en diseño y dimensiones a la barra de estado normal (bottomBarNormal).
    • Cada acción es ahora un ImageButton con efecto ripple sin bordes (?selectableItemBackgroundBorderless), tintado blanco nítido y distribución simétrica de 5 columnas.
  • **Botón de Cancelación de...
Read more

OpenManager v1.9.63: Blindaje de Seguridad Deadman para Particiones Críticas y Resiliencia de Insets

Choose a tag to compare

@github-actions github-actions released this 09 Nov 03:13

OpenManager v1.9.58: Control en Ajustes para Mover a la Papelera al Eliminar (OFF por Defecto) y Ocultamiento de la Barra Lateral

🗑️ Supresión de la Papelera al Borrar por Defecto

  • Eliminación Directa y Limpia sin Avisos de Papelera:
    • Se solucionó el comportamiento por el cual al borrar archivos se preguntaba si se deseaban mover a la papelera de reciclaje.
    • Se añadió la opción «Mover a la papelera al eliminar archivos» en Ajustes (Ajustes > 4. Papelera de Reciclaje), la cual viene desactivada por defecto (OFF).
    • Al estar desactivada (estado predeterminado), el diálogo de eliminación muestra una confirmación directa y limpia (¿Eliminar “archivo”? o ¿Eliminar X archivos?) sin casillas, avisos ni menciones de papelera de reciclaje, borrando los archivos directamente.

🚫 Ocultamiento Completo de la Papelera en la Barra Lateral

  • No Aparece a Menos que se Active en Ajustes:
    • La herramienta 4. Papelera de Reciclaje en el menú lateral (drawer) ahora se oculta de forma automática (View.GONE) cuando la opción está desactivada en Ajustes.
    • No aparece en la barra lateral ni molesta al usuario a menos que éste decida activarla explícitamente desde Ajustes.

⚙️ Habilitación Manual y Sub-Opciones Dependientes

  • Control Total para el Usuario:
    • Únicamente si el usuario entra a Ajustes > 4. Papelera de Reciclaje y activa manualmente el interruptor:
      1. Se hace visible el elemento Papelera de Reciclaje en la barra lateral con navegación a su directorio protegido.
      2. En el diálogo de eliminación aparece la casilla [ ] Mover a la papelera de reciclaje.
      3. Se habilitan las opciones dependientes: marcar por defecto y auto-limpieza programada (a los 7 o 30 días).

OpenManager v1.9.57: Atribución Completa de Autoría a Uamo11, Sitio Web uam.lol y Sección Dedicada de Agradecimientos a Hai Zhang (Shangai)

👤 Autoría y Desarrollo Exclusivo de OpenManager: Uamo11

  • Atribución Clara y Precisa del Creador:
    • Se actualizó toda la información de autoría en la aplicación para dejar perfectamente claro que el único autor y desarrollador de OpenManager es Uamo11.
    • Enlace directo al sitio web personal del autor: uam.lol, acompañado de un nuevo icono vectorial de globo terráqueo/web de Material Design.
    • Enlace directo al perfil de GitHub del desarrollador: github.com/uamo11.
    • Actualización exhaustiva en los 34 idiomas soportados por la aplicación (res/values-*/strings.xml).

🤝 Sección Dedicada de Agradecimientos y Proyecto Base (Hai Zhang / Shangai)

  • Reconocimiento Honesto al Proyecto Base:
    • Incorporada una sección especial titulada "Agradecimientos y Proyecto Base" que acredita formalmente a Hai Zhang (Shangai) como autor del proyecto base original Material Files.
    • Se explica claramente que OpenManager toma como base el trabajo de Hai Zhang con profundas modificaciones y añadidos (gestor root MT Manager, compatibilidad libarchive, terminal, editor de texto, backup en la nube, APK tools, etc.).
    • Enlaces directos al repositorio original de Material Files (github.com/zhanghai/MaterialFiles) y al perfil de Hai Zhang (github.com/zhanghai).

📱 Rediseño Modular de la Pantalla «Acerca de OpenManager» en Material Cards

  • Estructura Visual Elegante y Limpia:
    • Tarjeta 1 (OpenManager): Nombre de la app, icono, versión actual, repositorio oficial (github.com/uamo11/OpenManager), licencias de código abierto (GPLv3) y política de privacidad.
    • Tarjeta 2 (Autor de OpenManager): Ficha de Uamo11 como único creador de OpenManager con accesos directos a su web (uam.lol) y GitHub (uamo11).
    • Tarjeta 3 (Agradecimientos y Proyecto Base): Ficha de agradecimientos a Hai Zhang (Shangai) y enlace al repositorio base.
  • Navegación Inteligente desde Ajustes:
    • Al pulsar la opción "Agradecimientos" en el menú de Ajustes, la aplicación abre automáticamente la pantalla y realiza un desplazamiento fluido (smoothScrollTo) directamente hasta la tarjeta de Agradecimientos y Proyecto Base.

OpenManager v1.9.56: Detección Dinámica de Root en Caliente (Sin Salir de la App), Corrección Integral de Iconos y Soporte Robusto para DFRoot y Gestores

🚀 Detección Dinámica de Superusuario en Caliente (Sin Reiniciar la App)

  • Eliminada la Necesidad de Salir de la App tras Conceder Permisos Root:
    • Se corrigió el problema por el cual al conceder permisos root (en Magisk, KernelSU, APatch, DFRoot, etc.), era necesario forzar el cierre y volver a abrir la aplicación para que reconociera el acceso root.
    • Implementado sistema de invalidación dinámica de caché (SuperuserDetector.invalidateCache()) y reactivación en FileListActivity.onResume().
    • Al regresar a OpenManager tras conceder permisos en el diálogo o app de root, se re-evalúan los privilegios en segundo plano automáticamente, actualizando el estado, estadísticas del drawer y recargando el directorio raíz si estaba abierto con error de permisos.
  • Re-detección Instantánea al Pulsar la Tarjeta en Ajustes:
    • Al tocar la tarjeta de superusuario en Ajustes, se realiza una comprobación forzada en caliente (detect(forceRefresh = true)), actualizando el diálogo de detalles al segundo con el estado real.

🎨 Corrección Integral de Renderizado y Calidad de Iconos de Root

  • Eliminación del Tintado Gris Parásito (app:tint):
    • Se corrigió la regla XML en la tarjeta de estado donde app:tint="#B0BEC5" teñía de gris todos los iconos de superusuario (KernelSU, Magisk, APatch, DFRoot, Shizuku), destruyendo sus colores originales y contraste.
    • Se configuró la limpieza completa de tintes (imageTintList = null y clearColorFilter()) en modo activo para que cada icono luzca con sus colores e identidad originales.
  • Aislamiento de Fondos y Transparencias Alpha:
    • Se eliminaron los fondos sólidos cuadrados (marrones, blancos y fucsias) que causaban bordes toscos en KernelSU, Magisk Delta y APatch dentro del contenedor circular.
    • Se procesaron e integraron versiones con transparencia alfa limpia en drawable/ y drawable-nodpi/ para máxima nitidez en pantallas de cualquier densidad (xxhdpi, xxxhdpi).
  • Corrección de Duplicidad de Iconos y Encabezados en DFRoot:
    • Corregido el bug donde el logo de DFRoot se mostraba duplicado (icono principal + mini icono) y el encabezado repetía "DFRoot (Jailbreak) + DFRoot". Ahora se muestra de forma limpia y elegante.

🛡️ Detección Robusta de DFRoot (DirtyFlag Exploit) y Gestores de Kernel

  • Ampliación Exhaustiva de Firmas para DFRoot:
    • Reconocimiento de nuevas rutas de binarios y scripts de elevación: /data/local/tmp/dfroot, /data/local/tmp/dirtyflag, /data/local/tmp/dfroot.sh, /data/local/tmp/dirty_flag.sh, /data/local/tmp/dfsu, /data/local/tmp/rootshell, /system/bin/dfroot.
    • Reconocimiento de propiedades de sistema: ro.boot.dirtyflag, ro.dfroot, sys.dfroot, persist.dfroot, ro.dirtyflag, dfroot.version.
    • Detección de nuevos paquetes del gestor DFRoot / DirtyFlag.
    • Preservación del tipo DFROOT con su icono nativo tras la concesión de privilegios root (evitando degradación a genérico).

OpenManager v1.9.55: Elevación Automática de la Barra Inferior del Editor de Texto sobre el Teclado Virtual (Paridad MT Manager)

⌨️ Elevación y Sincronización de la Barra de Herramientas y Símbolos con el Teclado

  • Barra de Símbolos sobre el Teclado Virtual (WindowInsetsCompat.Type.ime()):
    • Se corrigió el problema por el cual la barra inferior de símbolos y navegación ([◀] [▶] [▲] [▼] [→|] [|←] [TAB] [↶] [↷] [🔍]) quedaba oculta detrás del teclado al editar archivos en Android 10, 11, 12, 13, 14 y 15.
    • Ahora, al abrir el teclado virtual de Android (IME), la barra inferior sube automáticamente y se posiciona directamente encima del teclado, exactamente igual que en MT Manager.
    • Al cerrar o descartar el teclado, la barra regresa suavemente al borde inferior de la pantalla, adaptándose a la barra de navegación o barra de gestos del sistema.
  • Animación Fluida Sincronizada con el Teclado (WindowInsetsAnimationCompat):
    • Implementado callback de animación en tiempo real que desliza la barra hacia arriba y hacia abajo acompañando el movimiento del teclado a 60/120 Hz sin saltos visuales.
  • Auto-Ajuste del Área de Edición y Auto-Scroll del Cursor:
    • El espacio de trabajo del editor se redimensiona reactivamente para mantenerse visible entre la barra superior y la barra de símbolos.
    • Si la posición actual del cursor queda debajo del área visible al desplegarse el teclado, el editor realiza automáticamente un desplazamiento suave (smoothScrollTo) para mantener la línea activa a la vista del usuario.
  • Transición Edge-to-Edge en TextEditorActivity:
    • Habilitada la gestión avanzada de ventanas mediante WindowCompat.setDecorFitsSystemWindows(window, false) garantizando entrega precisa de eventos de teclado en todos los fabricantes (MIUI, HyperOS, OneUI, Pixel OS, etc.).
  • Suite de Pruebas Unitarias Automatizadas:
    • Nueva suite TextEditorKeyboardInsetsTest.kt validando el cálculo de márgenes, restauración tras descartar teclado y compatibilidad con particularidades de fabricantes OEM.

OpenManager v1.9.54: Rediseño de la Barra Inferior de Selección con Iconos MT Manager y Botón de Cancelación [✕]

🎯 Rediseño Estético y Funcional de la Barra de Selección (Paridad MT Manager)

  • Sustitución de Texto Simple por Barra de Iconos Estilizada:
    • Se sustituyeron los textos planos (Todo (1), Copiar >>, Mover >>, Borrar, Más...) por una barra inferior idéntica en diseño y dimensiones a la barra de estado normal (bottomBarNormal).
    • Cada acción es ahora un ImageButton con efecto ripple sin bordes (?selectableItemBackgroundBorderless), tintado blanco nítido y distribución simétrica de 5 columnas.
  • **Botón de Cancelación de...
Read more

OpenManager v1.9.62: Extracción y Volcado Seguro de Particiones a Archivos .img

Choose a tag to compare

@github-actions github-actions released this 09 Nov 00:33

OpenManager v1.9.58: Control en Ajustes para Mover a la Papelera al Eliminar (OFF por Defecto) y Ocultamiento de la Barra Lateral

🗑️ Supresión de la Papelera al Borrar por Defecto

  • Eliminación Directa y Limpia sin Avisos de Papelera:
    • Se solucionó el comportamiento por el cual al borrar archivos se preguntaba si se deseaban mover a la papelera de reciclaje.
    • Se añadió la opción «Mover a la papelera al eliminar archivos» en Ajustes (Ajustes > 4. Papelera de Reciclaje), la cual viene desactivada por defecto (OFF).
    • Al estar desactivada (estado predeterminado), el diálogo de eliminación muestra una confirmación directa y limpia (¿Eliminar “archivo”? o ¿Eliminar X archivos?) sin casillas, avisos ni menciones de papelera de reciclaje, borrando los archivos directamente.

🚫 Ocultamiento Completo de la Papelera en la Barra Lateral

  • No Aparece a Menos que se Active en Ajustes:
    • La herramienta 4. Papelera de Reciclaje en el menú lateral (drawer) ahora se oculta de forma automática (View.GONE) cuando la opción está desactivada en Ajustes.
    • No aparece en la barra lateral ni molesta al usuario a menos que éste decida activarla explícitamente desde Ajustes.

⚙️ Habilitación Manual y Sub-Opciones Dependientes

  • Control Total para el Usuario:
    • Únicamente si el usuario entra a Ajustes > 4. Papelera de Reciclaje y activa manualmente el interruptor:
      1. Se hace visible el elemento Papelera de Reciclaje en la barra lateral con navegación a su directorio protegido.
      2. En el diálogo de eliminación aparece la casilla [ ] Mover a la papelera de reciclaje.
      3. Se habilitan las opciones dependientes: marcar por defecto y auto-limpieza programada (a los 7 o 30 días).

OpenManager v1.9.57: Atribución Completa de Autoría a Uamo11, Sitio Web uam.lol y Sección Dedicada de Agradecimientos a Hai Zhang (Shangai)

👤 Autoría y Desarrollo Exclusivo de OpenManager: Uamo11

  • Atribución Clara y Precisa del Creador:
    • Se actualizó toda la información de autoría en la aplicación para dejar perfectamente claro que el único autor y desarrollador de OpenManager es Uamo11.
    • Enlace directo al sitio web personal del autor: uam.lol, acompañado de un nuevo icono vectorial de globo terráqueo/web de Material Design.
    • Enlace directo al perfil de GitHub del desarrollador: github.com/uamo11.
    • Actualización exhaustiva en los 34 idiomas soportados por la aplicación (res/values-*/strings.xml).

🤝 Sección Dedicada de Agradecimientos y Proyecto Base (Hai Zhang / Shangai)

  • Reconocimiento Honesto al Proyecto Base:
    • Incorporada una sección especial titulada "Agradecimientos y Proyecto Base" que acredita formalmente a Hai Zhang (Shangai) como autor del proyecto base original Material Files.
    • Se explica claramente que OpenManager toma como base el trabajo de Hai Zhang con profundas modificaciones y añadidos (gestor root MT Manager, compatibilidad libarchive, terminal, editor de texto, backup en la nube, APK tools, etc.).
    • Enlaces directos al repositorio original de Material Files (github.com/zhanghai/MaterialFiles) y al perfil de Hai Zhang (github.com/zhanghai).

📱 Rediseño Modular de la Pantalla «Acerca de OpenManager» en Material Cards

  • Estructura Visual Elegante y Limpia:
    • Tarjeta 1 (OpenManager): Nombre de la app, icono, versión actual, repositorio oficial (github.com/uamo11/OpenManager), licencias de código abierto (GPLv3) y política de privacidad.
    • Tarjeta 2 (Autor de OpenManager): Ficha de Uamo11 como único creador de OpenManager con accesos directos a su web (uam.lol) y GitHub (uamo11).
    • Tarjeta 3 (Agradecimientos y Proyecto Base): Ficha de agradecimientos a Hai Zhang (Shangai) y enlace al repositorio base.
  • Navegación Inteligente desde Ajustes:
    • Al pulsar la opción "Agradecimientos" en el menú de Ajustes, la aplicación abre automáticamente la pantalla y realiza un desplazamiento fluido (smoothScrollTo) directamente hasta la tarjeta de Agradecimientos y Proyecto Base.

OpenManager v1.9.56: Detección Dinámica de Root en Caliente (Sin Salir de la App), Corrección Integral de Iconos y Soporte Robusto para DFRoot y Gestores

🚀 Detección Dinámica de Superusuario en Caliente (Sin Reiniciar la App)

  • Eliminada la Necesidad de Salir de la App tras Conceder Permisos Root:
    • Se corrigió el problema por el cual al conceder permisos root (en Magisk, KernelSU, APatch, DFRoot, etc.), era necesario forzar el cierre y volver a abrir la aplicación para que reconociera el acceso root.
    • Implementado sistema de invalidación dinámica de caché (SuperuserDetector.invalidateCache()) y reactivación en FileListActivity.onResume().
    • Al regresar a OpenManager tras conceder permisos en el diálogo o app de root, se re-evalúan los privilegios en segundo plano automáticamente, actualizando el estado, estadísticas del drawer y recargando el directorio raíz si estaba abierto con error de permisos.
  • Re-detección Instantánea al Pulsar la Tarjeta en Ajustes:
    • Al tocar la tarjeta de superusuario en Ajustes, se realiza una comprobación forzada en caliente (detect(forceRefresh = true)), actualizando el diálogo de detalles al segundo con el estado real.

🎨 Corrección Integral de Renderizado y Calidad de Iconos de Root

  • Eliminación del Tintado Gris Parásito (app:tint):
    • Se corrigió la regla XML en la tarjeta de estado donde app:tint="#B0BEC5" teñía de gris todos los iconos de superusuario (KernelSU, Magisk, APatch, DFRoot, Shizuku), destruyendo sus colores originales y contraste.
    • Se configuró la limpieza completa de tintes (imageTintList = null y clearColorFilter()) en modo activo para que cada icono luzca con sus colores e identidad originales.
  • Aislamiento de Fondos y Transparencias Alpha:
    • Se eliminaron los fondos sólidos cuadrados (marrones, blancos y fucsias) que causaban bordes toscos en KernelSU, Magisk Delta y APatch dentro del contenedor circular.
    • Se procesaron e integraron versiones con transparencia alfa limpia en drawable/ y drawable-nodpi/ para máxima nitidez en pantallas de cualquier densidad (xxhdpi, xxxhdpi).
  • Corrección de Duplicidad de Iconos y Encabezados en DFRoot:
    • Corregido el bug donde el logo de DFRoot se mostraba duplicado (icono principal + mini icono) y el encabezado repetía "DFRoot (Jailbreak) + DFRoot". Ahora se muestra de forma limpia y elegante.

🛡️ Detección Robusta de DFRoot (DirtyFlag Exploit) y Gestores de Kernel

  • Ampliación Exhaustiva de Firmas para DFRoot:
    • Reconocimiento de nuevas rutas de binarios y scripts de elevación: /data/local/tmp/dfroot, /data/local/tmp/dirtyflag, /data/local/tmp/dfroot.sh, /data/local/tmp/dirty_flag.sh, /data/local/tmp/dfsu, /data/local/tmp/rootshell, /system/bin/dfroot.
    • Reconocimiento de propiedades de sistema: ro.boot.dirtyflag, ro.dfroot, sys.dfroot, persist.dfroot, ro.dirtyflag, dfroot.version.
    • Detección de nuevos paquetes del gestor DFRoot / DirtyFlag.
    • Preservación del tipo DFROOT con su icono nativo tras la concesión de privilegios root (evitando degradación a genérico).

OpenManager v1.9.55: Elevación Automática de la Barra Inferior del Editor de Texto sobre el Teclado Virtual (Paridad MT Manager)

⌨️ Elevación y Sincronización de la Barra de Herramientas y Símbolos con el Teclado

  • Barra de Símbolos sobre el Teclado Virtual (WindowInsetsCompat.Type.ime()):
    • Se corrigió el problema por el cual la barra inferior de símbolos y navegación ([◀] [▶] [▲] [▼] [→|] [|←] [TAB] [↶] [↷] [🔍]) quedaba oculta detrás del teclado al editar archivos en Android 10, 11, 12, 13, 14 y 15.
    • Ahora, al abrir el teclado virtual de Android (IME), la barra inferior sube automáticamente y se posiciona directamente encima del teclado, exactamente igual que en MT Manager.
    • Al cerrar o descartar el teclado, la barra regresa suavemente al borde inferior de la pantalla, adaptándose a la barra de navegación o barra de gestos del sistema.
  • Animación Fluida Sincronizada con el Teclado (WindowInsetsAnimationCompat):
    • Implementado callback de animación en tiempo real que desliza la barra hacia arriba y hacia abajo acompañando el movimiento del teclado a 60/120 Hz sin saltos visuales.
  • Auto-Ajuste del Área de Edición y Auto-Scroll del Cursor:
    • El espacio de trabajo del editor se redimensiona reactivamente para mantenerse visible entre la barra superior y la barra de símbolos.
    • Si la posición actual del cursor queda debajo del área visible al desplegarse el teclado, el editor realiza automáticamente un desplazamiento suave (smoothScrollTo) para mantener la línea activa a la vista del usuario.
  • Transición Edge-to-Edge en TextEditorActivity:
    • Habilitada la gestión avanzada de ventanas mediante WindowCompat.setDecorFitsSystemWindows(window, false) garantizando entrega precisa de eventos de teclado en todos los fabricantes (MIUI, HyperOS, OneUI, Pixel OS, etc.).
  • Suite de Pruebas Unitarias Automatizadas:
    • Nueva suite TextEditorKeyboardInsetsTest.kt validando el cálculo de márgenes, restauración tras descartar teclado y compatibilidad con particularidades de fabricantes OEM.

OpenManager v1.9.54: Rediseño de la Barra Inferior de Selección con Iconos MT Manager y Botón de Cancelación [✕]

🎯 Rediseño Estético y Funcional de la Barra de Selección (Paridad MT Manager)

  • Sustitución de Texto Simple por Barra de Iconos Estilizada:
    • Se sustituyeron los textos planos (Todo (1), Copiar >>, Mover >>, Borrar, Más...) por una barra inferior idéntica en diseño y dimensiones a la barra de estado normal (bottomBarNormal).
    • Cada acción es ahora un ImageButton con efecto ripple sin bordes (?selectableItemBackgroundBorderless), tintado blanco nítido y distribución simétrica de 5 columnas.
  • **Botón de Cancelación de...
Read more

OpenManager v1.9.61: Refinamiento de Botones y Diseño del Diálogo de Actualización

Choose a tag to compare

@github-actions github-actions released this 08 Nov 18:36

OpenManager v1.9.58: Control en Ajustes para Mover a la Papelera al Eliminar (OFF por Defecto) y Ocultamiento de la Barra Lateral

🗑️ Supresión de la Papelera al Borrar por Defecto

  • Eliminación Directa y Limpia sin Avisos de Papelera:
    • Se solucionó el comportamiento por el cual al borrar archivos se preguntaba si se deseaban mover a la papelera de reciclaje.
    • Se añadió la opción «Mover a la papelera al eliminar archivos» en Ajustes (Ajustes > 4. Papelera de Reciclaje), la cual viene desactivada por defecto (OFF).
    • Al estar desactivada (estado predeterminado), el diálogo de eliminación muestra una confirmación directa y limpia (¿Eliminar “archivo”? o ¿Eliminar X archivos?) sin casillas, avisos ni menciones de papelera de reciclaje, borrando los archivos directamente.

🚫 Ocultamiento Completo de la Papelera en la Barra Lateral

  • No Aparece a Menos que se Active en Ajustes:
    • La herramienta 4. Papelera de Reciclaje en el menú lateral (drawer) ahora se oculta de forma automática (View.GONE) cuando la opción está desactivada en Ajustes.
    • No aparece en la barra lateral ni molesta al usuario a menos que éste decida activarla explícitamente desde Ajustes.

⚙️ Habilitación Manual y Sub-Opciones Dependientes

  • Control Total para el Usuario:
    • Únicamente si el usuario entra a Ajustes > 4. Papelera de Reciclaje y activa manualmente el interruptor:
      1. Se hace visible el elemento Papelera de Reciclaje en la barra lateral con navegación a su directorio protegido.
      2. En el diálogo de eliminación aparece la casilla [ ] Mover a la papelera de reciclaje.
      3. Se habilitan las opciones dependientes: marcar por defecto y auto-limpieza programada (a los 7 o 30 días).

OpenManager v1.9.57: Atribución Completa de Autoría a Uamo11, Sitio Web uam.lol y Sección Dedicada de Agradecimientos a Hai Zhang (Shangai)

👤 Autoría y Desarrollo Exclusivo de OpenManager: Uamo11

  • Atribución Clara y Precisa del Creador:
    • Se actualizó toda la información de autoría en la aplicación para dejar perfectamente claro que el único autor y desarrollador de OpenManager es Uamo11.
    • Enlace directo al sitio web personal del autor: uam.lol, acompañado de un nuevo icono vectorial de globo terráqueo/web de Material Design.
    • Enlace directo al perfil de GitHub del desarrollador: github.com/uamo11.
    • Actualización exhaustiva en los 34 idiomas soportados por la aplicación (res/values-*/strings.xml).

🤝 Sección Dedicada de Agradecimientos y Proyecto Base (Hai Zhang / Shangai)

  • Reconocimiento Honesto al Proyecto Base:
    • Incorporada una sección especial titulada "Agradecimientos y Proyecto Base" que acredita formalmente a Hai Zhang (Shangai) como autor del proyecto base original Material Files.
    • Se explica claramente que OpenManager toma como base el trabajo de Hai Zhang con profundas modificaciones y añadidos (gestor root MT Manager, compatibilidad libarchive, terminal, editor de texto, backup en la nube, APK tools, etc.).
    • Enlaces directos al repositorio original de Material Files (github.com/zhanghai/MaterialFiles) y al perfil de Hai Zhang (github.com/zhanghai).

📱 Rediseño Modular de la Pantalla «Acerca de OpenManager» en Material Cards

  • Estructura Visual Elegante y Limpia:
    • Tarjeta 1 (OpenManager): Nombre de la app, icono, versión actual, repositorio oficial (github.com/uamo11/OpenManager), licencias de código abierto (GPLv3) y política de privacidad.
    • Tarjeta 2 (Autor de OpenManager): Ficha de Uamo11 como único creador de OpenManager con accesos directos a su web (uam.lol) y GitHub (uamo11).
    • Tarjeta 3 (Agradecimientos y Proyecto Base): Ficha de agradecimientos a Hai Zhang (Shangai) y enlace al repositorio base.
  • Navegación Inteligente desde Ajustes:
    • Al pulsar la opción "Agradecimientos" en el menú de Ajustes, la aplicación abre automáticamente la pantalla y realiza un desplazamiento fluido (smoothScrollTo) directamente hasta la tarjeta de Agradecimientos y Proyecto Base.

OpenManager v1.9.56: Detección Dinámica de Root en Caliente (Sin Salir de la App), Corrección Integral de Iconos y Soporte Robusto para DFRoot y Gestores

🚀 Detección Dinámica de Superusuario en Caliente (Sin Reiniciar la App)

  • Eliminada la Necesidad de Salir de la App tras Conceder Permisos Root:
    • Se corrigió el problema por el cual al conceder permisos root (en Magisk, KernelSU, APatch, DFRoot, etc.), era necesario forzar el cierre y volver a abrir la aplicación para que reconociera el acceso root.
    • Implementado sistema de invalidación dinámica de caché (SuperuserDetector.invalidateCache()) y reactivación en FileListActivity.onResume().
    • Al regresar a OpenManager tras conceder permisos en el diálogo o app de root, se re-evalúan los privilegios en segundo plano automáticamente, actualizando el estado, estadísticas del drawer y recargando el directorio raíz si estaba abierto con error de permisos.
  • Re-detección Instantánea al Pulsar la Tarjeta en Ajustes:
    • Al tocar la tarjeta de superusuario en Ajustes, se realiza una comprobación forzada en caliente (detect(forceRefresh = true)), actualizando el diálogo de detalles al segundo con el estado real.

🎨 Corrección Integral de Renderizado y Calidad de Iconos de Root

  • Eliminación del Tintado Gris Parásito (app:tint):
    • Se corrigió la regla XML en la tarjeta de estado donde app:tint="#B0BEC5" teñía de gris todos los iconos de superusuario (KernelSU, Magisk, APatch, DFRoot, Shizuku), destruyendo sus colores originales y contraste.
    • Se configuró la limpieza completa de tintes (imageTintList = null y clearColorFilter()) en modo activo para que cada icono luzca con sus colores e identidad originales.
  • Aislamiento de Fondos y Transparencias Alpha:
    • Se eliminaron los fondos sólidos cuadrados (marrones, blancos y fucsias) que causaban bordes toscos en KernelSU, Magisk Delta y APatch dentro del contenedor circular.
    • Se procesaron e integraron versiones con transparencia alfa limpia en drawable/ y drawable-nodpi/ para máxima nitidez en pantallas de cualquier densidad (xxhdpi, xxxhdpi).
  • Corrección de Duplicidad de Iconos y Encabezados en DFRoot:
    • Corregido el bug donde el logo de DFRoot se mostraba duplicado (icono principal + mini icono) y el encabezado repetía "DFRoot (Jailbreak) + DFRoot". Ahora se muestra de forma limpia y elegante.

🛡️ Detección Robusta de DFRoot (DirtyFlag Exploit) y Gestores de Kernel

  • Ampliación Exhaustiva de Firmas para DFRoot:
    • Reconocimiento de nuevas rutas de binarios y scripts de elevación: /data/local/tmp/dfroot, /data/local/tmp/dirtyflag, /data/local/tmp/dfroot.sh, /data/local/tmp/dirty_flag.sh, /data/local/tmp/dfsu, /data/local/tmp/rootshell, /system/bin/dfroot.
    • Reconocimiento de propiedades de sistema: ro.boot.dirtyflag, ro.dfroot, sys.dfroot, persist.dfroot, ro.dirtyflag, dfroot.version.
    • Detección de nuevos paquetes del gestor DFRoot / DirtyFlag.
    • Preservación del tipo DFROOT con su icono nativo tras la concesión de privilegios root (evitando degradación a genérico).

OpenManager v1.9.55: Elevación Automática de la Barra Inferior del Editor de Texto sobre el Teclado Virtual (Paridad MT Manager)

⌨️ Elevación y Sincronización de la Barra de Herramientas y Símbolos con el Teclado

  • Barra de Símbolos sobre el Teclado Virtual (WindowInsetsCompat.Type.ime()):
    • Se corrigió el problema por el cual la barra inferior de símbolos y navegación ([◀] [▶] [▲] [▼] [→|] [|←] [TAB] [↶] [↷] [🔍]) quedaba oculta detrás del teclado al editar archivos en Android 10, 11, 12, 13, 14 y 15.
    • Ahora, al abrir el teclado virtual de Android (IME), la barra inferior sube automáticamente y se posiciona directamente encima del teclado, exactamente igual que en MT Manager.
    • Al cerrar o descartar el teclado, la barra regresa suavemente al borde inferior de la pantalla, adaptándose a la barra de navegación o barra de gestos del sistema.
  • Animación Fluida Sincronizada con el Teclado (WindowInsetsAnimationCompat):
    • Implementado callback de animación en tiempo real que desliza la barra hacia arriba y hacia abajo acompañando el movimiento del teclado a 60/120 Hz sin saltos visuales.
  • Auto-Ajuste del Área de Edición y Auto-Scroll del Cursor:
    • El espacio de trabajo del editor se redimensiona reactivamente para mantenerse visible entre la barra superior y la barra de símbolos.
    • Si la posición actual del cursor queda debajo del área visible al desplegarse el teclado, el editor realiza automáticamente un desplazamiento suave (smoothScrollTo) para mantener la línea activa a la vista del usuario.
  • Transición Edge-to-Edge en TextEditorActivity:
    • Habilitada la gestión avanzada de ventanas mediante WindowCompat.setDecorFitsSystemWindows(window, false) garantizando entrega precisa de eventos de teclado en todos los fabricantes (MIUI, HyperOS, OneUI, Pixel OS, etc.).
  • Suite de Pruebas Unitarias Automatizadas:
    • Nueva suite TextEditorKeyboardInsetsTest.kt validando el cálculo de márgenes, restauración tras descartar teclado y compatibilidad con particularidades de fabricantes OEM.

OpenManager v1.9.54: Rediseño de la Barra Inferior de Selección con Iconos MT Manager y Botón de Cancelación [✕]

🎯 Rediseño Estético y Funcional de la Barra de Selección (Paridad MT Manager)

  • Sustitución de Texto Simple por Barra de Iconos Estilizada:
    • Se sustituyeron los textos planos (Todo (1), Copiar >>, Mover >>, Borrar, Más...) por una barra inferior idéntica en diseño y dimensiones a la barra de estado normal (bottomBarNormal).
    • Cada acción es ahora un ImageButton con efecto ripple sin bordes (?selectableItemBackgroundBorderless), tintado blanco nítido y distribución simétrica de 5 columnas.
  • **Botón de Cancelación de...
Read more

OpenManager v1.9.60: Corrección de Insets de Barra Superior y Rediseño de Acciones

Choose a tag to compare

@github-actions github-actions released this 08 Nov 18:24

OpenManager v1.9.58: Control en Ajustes para Mover a la Papelera al Eliminar (OFF por Defecto) y Ocultamiento de la Barra Lateral

🗑️ Supresión de la Papelera al Borrar por Defecto

  • Eliminación Directa y Limpia sin Avisos de Papelera:
    • Se solucionó el comportamiento por el cual al borrar archivos se preguntaba si se deseaban mover a la papelera de reciclaje.
    • Se añadió la opción «Mover a la papelera al eliminar archivos» en Ajustes (Ajustes > 4. Papelera de Reciclaje), la cual viene desactivada por defecto (OFF).
    • Al estar desactivada (estado predeterminado), el diálogo de eliminación muestra una confirmación directa y limpia (¿Eliminar “archivo”? o ¿Eliminar X archivos?) sin casillas, avisos ni menciones de papelera de reciclaje, borrando los archivos directamente.

🚫 Ocultamiento Completo de la Papelera en la Barra Lateral

  • No Aparece a Menos que se Active en Ajustes:
    • La herramienta 4. Papelera de Reciclaje en el menú lateral (drawer) ahora se oculta de forma automática (View.GONE) cuando la opción está desactivada en Ajustes.
    • No aparece en la barra lateral ni molesta al usuario a menos que éste decida activarla explícitamente desde Ajustes.

⚙️ Habilitación Manual y Sub-Opciones Dependientes

  • Control Total para el Usuario:
    • Únicamente si el usuario entra a Ajustes > 4. Papelera de Reciclaje y activa manualmente el interruptor:
      1. Se hace visible el elemento Papelera de Reciclaje en la barra lateral con navegación a su directorio protegido.
      2. En el diálogo de eliminación aparece la casilla [ ] Mover a la papelera de reciclaje.
      3. Se habilitan las opciones dependientes: marcar por defecto y auto-limpieza programada (a los 7 o 30 días).

OpenManager v1.9.57: Atribución Completa de Autoría a Uamo11, Sitio Web uam.lol y Sección Dedicada de Agradecimientos a Hai Zhang (Shangai)

👤 Autoría y Desarrollo Exclusivo de OpenManager: Uamo11

  • Atribución Clara y Precisa del Creador:
    • Se actualizó toda la información de autoría en la aplicación para dejar perfectamente claro que el único autor y desarrollador de OpenManager es Uamo11.
    • Enlace directo al sitio web personal del autor: uam.lol, acompañado de un nuevo icono vectorial de globo terráqueo/web de Material Design.
    • Enlace directo al perfil de GitHub del desarrollador: github.com/uamo11.
    • Actualización exhaustiva en los 34 idiomas soportados por la aplicación (res/values-*/strings.xml).

🤝 Sección Dedicada de Agradecimientos y Proyecto Base (Hai Zhang / Shangai)

  • Reconocimiento Honesto al Proyecto Base:
    • Incorporada una sección especial titulada "Agradecimientos y Proyecto Base" que acredita formalmente a Hai Zhang (Shangai) como autor del proyecto base original Material Files.
    • Se explica claramente que OpenManager toma como base el trabajo de Hai Zhang con profundas modificaciones y añadidos (gestor root MT Manager, compatibilidad libarchive, terminal, editor de texto, backup en la nube, APK tools, etc.).
    • Enlaces directos al repositorio original de Material Files (github.com/zhanghai/MaterialFiles) y al perfil de Hai Zhang (github.com/zhanghai).

📱 Rediseño Modular de la Pantalla «Acerca de OpenManager» en Material Cards

  • Estructura Visual Elegante y Limpia:
    • Tarjeta 1 (OpenManager): Nombre de la app, icono, versión actual, repositorio oficial (github.com/uamo11/OpenManager), licencias de código abierto (GPLv3) y política de privacidad.
    • Tarjeta 2 (Autor de OpenManager): Ficha de Uamo11 como único creador de OpenManager con accesos directos a su web (uam.lol) y GitHub (uamo11).
    • Tarjeta 3 (Agradecimientos y Proyecto Base): Ficha de agradecimientos a Hai Zhang (Shangai) y enlace al repositorio base.
  • Navegación Inteligente desde Ajustes:
    • Al pulsar la opción "Agradecimientos" en el menú de Ajustes, la aplicación abre automáticamente la pantalla y realiza un desplazamiento fluido (smoothScrollTo) directamente hasta la tarjeta de Agradecimientos y Proyecto Base.

OpenManager v1.9.56: Detección Dinámica de Root en Caliente (Sin Salir de la App), Corrección Integral de Iconos y Soporte Robusto para DFRoot y Gestores

🚀 Detección Dinámica de Superusuario en Caliente (Sin Reiniciar la App)

  • Eliminada la Necesidad de Salir de la App tras Conceder Permisos Root:
    • Se corrigió el problema por el cual al conceder permisos root (en Magisk, KernelSU, APatch, DFRoot, etc.), era necesario forzar el cierre y volver a abrir la aplicación para que reconociera el acceso root.
    • Implementado sistema de invalidación dinámica de caché (SuperuserDetector.invalidateCache()) y reactivación en FileListActivity.onResume().
    • Al regresar a OpenManager tras conceder permisos en el diálogo o app de root, se re-evalúan los privilegios en segundo plano automáticamente, actualizando el estado, estadísticas del drawer y recargando el directorio raíz si estaba abierto con error de permisos.
  • Re-detección Instantánea al Pulsar la Tarjeta en Ajustes:
    • Al tocar la tarjeta de superusuario en Ajustes, se realiza una comprobación forzada en caliente (detect(forceRefresh = true)), actualizando el diálogo de detalles al segundo con el estado real.

🎨 Corrección Integral de Renderizado y Calidad de Iconos de Root

  • Eliminación del Tintado Gris Parásito (app:tint):
    • Se corrigió la regla XML en la tarjeta de estado donde app:tint="#B0BEC5" teñía de gris todos los iconos de superusuario (KernelSU, Magisk, APatch, DFRoot, Shizuku), destruyendo sus colores originales y contraste.
    • Se configuró la limpieza completa de tintes (imageTintList = null y clearColorFilter()) en modo activo para que cada icono luzca con sus colores e identidad originales.
  • Aislamiento de Fondos y Transparencias Alpha:
    • Se eliminaron los fondos sólidos cuadrados (marrones, blancos y fucsias) que causaban bordes toscos en KernelSU, Magisk Delta y APatch dentro del contenedor circular.
    • Se procesaron e integraron versiones con transparencia alfa limpia en drawable/ y drawable-nodpi/ para máxima nitidez en pantallas de cualquier densidad (xxhdpi, xxxhdpi).
  • Corrección de Duplicidad de Iconos y Encabezados en DFRoot:
    • Corregido el bug donde el logo de DFRoot se mostraba duplicado (icono principal + mini icono) y el encabezado repetía "DFRoot (Jailbreak) + DFRoot". Ahora se muestra de forma limpia y elegante.

🛡️ Detección Robusta de DFRoot (DirtyFlag Exploit) y Gestores de Kernel

  • Ampliación Exhaustiva de Firmas para DFRoot:
    • Reconocimiento de nuevas rutas de binarios y scripts de elevación: /data/local/tmp/dfroot, /data/local/tmp/dirtyflag, /data/local/tmp/dfroot.sh, /data/local/tmp/dirty_flag.sh, /data/local/tmp/dfsu, /data/local/tmp/rootshell, /system/bin/dfroot.
    • Reconocimiento de propiedades de sistema: ro.boot.dirtyflag, ro.dfroot, sys.dfroot, persist.dfroot, ro.dirtyflag, dfroot.version.
    • Detección de nuevos paquetes del gestor DFRoot / DirtyFlag.
    • Preservación del tipo DFROOT con su icono nativo tras la concesión de privilegios root (evitando degradación a genérico).

OpenManager v1.9.55: Elevación Automática de la Barra Inferior del Editor de Texto sobre el Teclado Virtual (Paridad MT Manager)

⌨️ Elevación y Sincronización de la Barra de Herramientas y Símbolos con el Teclado

  • Barra de Símbolos sobre el Teclado Virtual (WindowInsetsCompat.Type.ime()):
    • Se corrigió el problema por el cual la barra inferior de símbolos y navegación ([◀] [▶] [▲] [▼] [→|] [|←] [TAB] [↶] [↷] [🔍]) quedaba oculta detrás del teclado al editar archivos en Android 10, 11, 12, 13, 14 y 15.
    • Ahora, al abrir el teclado virtual de Android (IME), la barra inferior sube automáticamente y se posiciona directamente encima del teclado, exactamente igual que en MT Manager.
    • Al cerrar o descartar el teclado, la barra regresa suavemente al borde inferior de la pantalla, adaptándose a la barra de navegación o barra de gestos del sistema.
  • Animación Fluida Sincronizada con el Teclado (WindowInsetsAnimationCompat):
    • Implementado callback de animación en tiempo real que desliza la barra hacia arriba y hacia abajo acompañando el movimiento del teclado a 60/120 Hz sin saltos visuales.
  • Auto-Ajuste del Área de Edición y Auto-Scroll del Cursor:
    • El espacio de trabajo del editor se redimensiona reactivamente para mantenerse visible entre la barra superior y la barra de símbolos.
    • Si la posición actual del cursor queda debajo del área visible al desplegarse el teclado, el editor realiza automáticamente un desplazamiento suave (smoothScrollTo) para mantener la línea activa a la vista del usuario.
  • Transición Edge-to-Edge en TextEditorActivity:
    • Habilitada la gestión avanzada de ventanas mediante WindowCompat.setDecorFitsSystemWindows(window, false) garantizando entrega precisa de eventos de teclado en todos los fabricantes (MIUI, HyperOS, OneUI, Pixel OS, etc.).
  • Suite de Pruebas Unitarias Automatizadas:
    • Nueva suite TextEditorKeyboardInsetsTest.kt validando el cálculo de márgenes, restauración tras descartar teclado y compatibilidad con particularidades de fabricantes OEM.

OpenManager v1.9.54: Rediseño de la Barra Inferior de Selección con Iconos MT Manager y Botón de Cancelación [✕]

🎯 Rediseño Estético y Funcional de la Barra de Selección (Paridad MT Manager)

  • Sustitución de Texto Simple por Barra de Iconos Estilizada:
    • Se sustituyeron los textos planos (Todo (1), Copiar >>, Mover >>, Borrar, Más...) por una barra inferior idéntica en diseño y dimensiones a la barra de estado normal (bottomBarNormal).
    • Cada acción es ahora un ImageButton con efecto ripple sin bordes (?selectableItemBackgroundBorderless), tintado blanco nítido y distribución simétrica de 5 columnas.
  • **Botón de Cancelación de...
Read more

OpenManager v1.9.59: Optimización de Rendimiento de Inicio y Ajustes de Detalles

Choose a tag to compare

@github-actions github-actions released this 08 Nov 17:19

OpenManager v1.9.58: Control en Ajustes para Mover a la Papelera al Eliminar (OFF por Defecto) y Ocultamiento de la Barra Lateral

🗑️ Supresión de la Papelera al Borrar por Defecto

  • Eliminación Directa y Limpia sin Avisos de Papelera:
    • Se solucionó el comportamiento por el cual al borrar archivos se preguntaba si se deseaban mover a la papelera de reciclaje.
    • Se añadió la opción «Mover a la papelera al eliminar archivos» en Ajustes (Ajustes > 4. Papelera de Reciclaje), la cual viene desactivada por defecto (OFF).
    • Al estar desactivada (estado predeterminado), el diálogo de eliminación muestra una confirmación directa y limpia (¿Eliminar “archivo”? o ¿Eliminar X archivos?) sin casillas, avisos ni menciones de papelera de reciclaje, borrando los archivos directamente.

🚫 Ocultamiento Completo de la Papelera en la Barra Lateral

  • No Aparece a Menos que se Active en Ajustes:
    • La herramienta 4. Papelera de Reciclaje en el menú lateral (drawer) ahora se oculta de forma automática (View.GONE) cuando la opción está desactivada en Ajustes.
    • No aparece en la barra lateral ni molesta al usuario a menos que éste decida activarla explícitamente desde Ajustes.

⚙️ Habilitación Manual y Sub-Opciones Dependientes

  • Control Total para el Usuario:
    • Únicamente si el usuario entra a Ajustes > 4. Papelera de Reciclaje y activa manualmente el interruptor:
      1. Se hace visible el elemento Papelera de Reciclaje en la barra lateral con navegación a su directorio protegido.
      2. En el diálogo de eliminación aparece la casilla [ ] Mover a la papelera de reciclaje.
      3. Se habilitan las opciones dependientes: marcar por defecto y auto-limpieza programada (a los 7 o 30 días).

OpenManager v1.9.57: Atribución Completa de Autoría a Uamo11, Sitio Web uam.lol y Sección Dedicada de Agradecimientos a Hai Zhang (Shangai)

👤 Autoría y Desarrollo Exclusivo de OpenManager: Uamo11

  • Atribución Clara y Precisa del Creador:
    • Se actualizó toda la información de autoría en la aplicación para dejar perfectamente claro que el único autor y desarrollador de OpenManager es Uamo11.
    • Enlace directo al sitio web personal del autor: uam.lol, acompañado de un nuevo icono vectorial de globo terráqueo/web de Material Design.
    • Enlace directo al perfil de GitHub del desarrollador: github.com/uamo11.
    • Actualización exhaustiva en los 34 idiomas soportados por la aplicación (res/values-*/strings.xml).

🤝 Sección Dedicada de Agradecimientos y Proyecto Base (Hai Zhang / Shangai)

  • Reconocimiento Honesto al Proyecto Base:
    • Incorporada una sección especial titulada "Agradecimientos y Proyecto Base" que acredita formalmente a Hai Zhang (Shangai) como autor del proyecto base original Material Files.
    • Se explica claramente que OpenManager toma como base el trabajo de Hai Zhang con profundas modificaciones y añadidos (gestor root MT Manager, compatibilidad libarchive, terminal, editor de texto, backup en la nube, APK tools, etc.).
    • Enlaces directos al repositorio original de Material Files (github.com/zhanghai/MaterialFiles) y al perfil de Hai Zhang (github.com/zhanghai).

📱 Rediseño Modular de la Pantalla «Acerca de OpenManager» en Material Cards

  • Estructura Visual Elegante y Limpia:
    • Tarjeta 1 (OpenManager): Nombre de la app, icono, versión actual, repositorio oficial (github.com/uamo11/OpenManager), licencias de código abierto (GPLv3) y política de privacidad.
    • Tarjeta 2 (Autor de OpenManager): Ficha de Uamo11 como único creador de OpenManager con accesos directos a su web (uam.lol) y GitHub (uamo11).
    • Tarjeta 3 (Agradecimientos y Proyecto Base): Ficha de agradecimientos a Hai Zhang (Shangai) y enlace al repositorio base.
  • Navegación Inteligente desde Ajustes:
    • Al pulsar la opción "Agradecimientos" en el menú de Ajustes, la aplicación abre automáticamente la pantalla y realiza un desplazamiento fluido (smoothScrollTo) directamente hasta la tarjeta de Agradecimientos y Proyecto Base.

OpenManager v1.9.56: Detección Dinámica de Root en Caliente (Sin Salir de la App), Corrección Integral de Iconos y Soporte Robusto para DFRoot y Gestores

🚀 Detección Dinámica de Superusuario en Caliente (Sin Reiniciar la App)

  • Eliminada la Necesidad de Salir de la App tras Conceder Permisos Root:
    • Se corrigió el problema por el cual al conceder permisos root (en Magisk, KernelSU, APatch, DFRoot, etc.), era necesario forzar el cierre y volver a abrir la aplicación para que reconociera el acceso root.
    • Implementado sistema de invalidación dinámica de caché (SuperuserDetector.invalidateCache()) y reactivación en FileListActivity.onResume().
    • Al regresar a OpenManager tras conceder permisos en el diálogo o app de root, se re-evalúan los privilegios en segundo plano automáticamente, actualizando el estado, estadísticas del drawer y recargando el directorio raíz si estaba abierto con error de permisos.
  • Re-detección Instantánea al Pulsar la Tarjeta en Ajustes:
    • Al tocar la tarjeta de superusuario en Ajustes, se realiza una comprobación forzada en caliente (detect(forceRefresh = true)), actualizando el diálogo de detalles al segundo con el estado real.

🎨 Corrección Integral de Renderizado y Calidad de Iconos de Root

  • Eliminación del Tintado Gris Parásito (app:tint):
    • Se corrigió la regla XML en la tarjeta de estado donde app:tint="#B0BEC5" teñía de gris todos los iconos de superusuario (KernelSU, Magisk, APatch, DFRoot, Shizuku), destruyendo sus colores originales y contraste.
    • Se configuró la limpieza completa de tintes (imageTintList = null y clearColorFilter()) en modo activo para que cada icono luzca con sus colores e identidad originales.
  • Aislamiento de Fondos y Transparencias Alpha:
    • Se eliminaron los fondos sólidos cuadrados (marrones, blancos y fucsias) que causaban bordes toscos en KernelSU, Magisk Delta y APatch dentro del contenedor circular.
    • Se procesaron e integraron versiones con transparencia alfa limpia en drawable/ y drawable-nodpi/ para máxima nitidez en pantallas de cualquier densidad (xxhdpi, xxxhdpi).
  • Corrección de Duplicidad de Iconos y Encabezados en DFRoot:
    • Corregido el bug donde el logo de DFRoot se mostraba duplicado (icono principal + mini icono) y el encabezado repetía "DFRoot (Jailbreak) + DFRoot". Ahora se muestra de forma limpia y elegante.

🛡️ Detección Robusta de DFRoot (DirtyFlag Exploit) y Gestores de Kernel

  • Ampliación Exhaustiva de Firmas para DFRoot:
    • Reconocimiento de nuevas rutas de binarios y scripts de elevación: /data/local/tmp/dfroot, /data/local/tmp/dirtyflag, /data/local/tmp/dfroot.sh, /data/local/tmp/dirty_flag.sh, /data/local/tmp/dfsu, /data/local/tmp/rootshell, /system/bin/dfroot.
    • Reconocimiento de propiedades de sistema: ro.boot.dirtyflag, ro.dfroot, sys.dfroot, persist.dfroot, ro.dirtyflag, dfroot.version.
    • Detección de nuevos paquetes del gestor DFRoot / DirtyFlag.
    • Preservación del tipo DFROOT con su icono nativo tras la concesión de privilegios root (evitando degradación a genérico).

OpenManager v1.9.55: Elevación Automática de la Barra Inferior del Editor de Texto sobre el Teclado Virtual (Paridad MT Manager)

⌨️ Elevación y Sincronización de la Barra de Herramientas y Símbolos con el Teclado

  • Barra de Símbolos sobre el Teclado Virtual (WindowInsetsCompat.Type.ime()):
    • Se corrigió el problema por el cual la barra inferior de símbolos y navegación ([◀] [▶] [▲] [▼] [→|] [|←] [TAB] [↶] [↷] [🔍]) quedaba oculta detrás del teclado al editar archivos en Android 10, 11, 12, 13, 14 y 15.
    • Ahora, al abrir el teclado virtual de Android (IME), la barra inferior sube automáticamente y se posiciona directamente encima del teclado, exactamente igual que en MT Manager.
    • Al cerrar o descartar el teclado, la barra regresa suavemente al borde inferior de la pantalla, adaptándose a la barra de navegación o barra de gestos del sistema.
  • Animación Fluida Sincronizada con el Teclado (WindowInsetsAnimationCompat):
    • Implementado callback de animación en tiempo real que desliza la barra hacia arriba y hacia abajo acompañando el movimiento del teclado a 60/120 Hz sin saltos visuales.
  • Auto-Ajuste del Área de Edición y Auto-Scroll del Cursor:
    • El espacio de trabajo del editor se redimensiona reactivamente para mantenerse visible entre la barra superior y la barra de símbolos.
    • Si la posición actual del cursor queda debajo del área visible al desplegarse el teclado, el editor realiza automáticamente un desplazamiento suave (smoothScrollTo) para mantener la línea activa a la vista del usuario.
  • Transición Edge-to-Edge en TextEditorActivity:
    • Habilitada la gestión avanzada de ventanas mediante WindowCompat.setDecorFitsSystemWindows(window, false) garantizando entrega precisa de eventos de teclado en todos los fabricantes (MIUI, HyperOS, OneUI, Pixel OS, etc.).
  • Suite de Pruebas Unitarias Automatizadas:
    • Nueva suite TextEditorKeyboardInsetsTest.kt validando el cálculo de márgenes, restauración tras descartar teclado y compatibilidad con particularidades de fabricantes OEM.

OpenManager v1.9.54: Rediseño de la Barra Inferior de Selección con Iconos MT Manager y Botón de Cancelación [✕]

🎯 Rediseño Estético y Funcional de la Barra de Selección (Paridad MT Manager)

  • Sustitución de Texto Simple por Barra de Iconos Estilizada:
    • Se sustituyeron los textos planos (Todo (1), Copiar >>, Mover >>, Borrar, Más...) por una barra inferior idéntica en diseño y dimensiones a la barra de estado normal (bottomBarNormal).
    • Cada acción es ahora un ImageButton con efecto ripple sin bordes (?selectableItemBackgroundBorderless), tintado blanco nítido y distribución simétrica de 5 columnas.
  • **Botón de Cancelación de...
Read more

OpenManager v1.9.58: Terminal Developer-Grade, Teclado Táctil y Blindaje de Seguridad

Choose a tag to compare

@github-actions github-actions released this 08 Nov 16:00

OpenManager v1.9.58: Control en Ajustes para Mover a la Papelera al Eliminar (OFF por Defecto) y Ocultamiento de la Barra Lateral

🗑️ Supresión de la Papelera al Borrar por Defecto

  • Eliminación Directa y Limpia sin Avisos de Papelera:
    • Se solucionó el comportamiento por el cual al borrar archivos se preguntaba si se deseaban mover a la papelera de reciclaje.
    • Se añadió la opción «Mover a la papelera al eliminar archivos» en Ajustes (Ajustes > 4. Papelera de Reciclaje), la cual viene desactivada por defecto (OFF).
    • Al estar desactivada (estado predeterminado), el diálogo de eliminación muestra una confirmación directa y limpia (¿Eliminar “archivo”? o ¿Eliminar X archivos?) sin casillas, avisos ni menciones de papelera de reciclaje, borrando los archivos directamente.

🚫 Ocultamiento Completo de la Papelera en la Barra Lateral

  • No Aparece a Menos que se Active en Ajustes:
    • La herramienta 4. Papelera de Reciclaje en el menú lateral (drawer) ahora se oculta de forma automática (View.GONE) cuando la opción está desactivada en Ajustes.
    • No aparece en la barra lateral ni molesta al usuario a menos que éste decida activarla explícitamente desde Ajustes.

⚙️ Habilitación Manual y Sub-Opciones Dependientes

  • Control Total para el Usuario:
    • Únicamente si el usuario entra a Ajustes > 4. Papelera de Reciclaje y activa manualmente el interruptor:
      1. Se hace visible el elemento Papelera de Reciclaje en la barra lateral con navegación a su directorio protegido.
      2. En el diálogo de eliminación aparece la casilla [ ] Mover a la papelera de reciclaje.
      3. Se habilitan las opciones dependientes: marcar por defecto y auto-limpieza programada (a los 7 o 30 días).

OpenManager v1.9.57: Atribución Completa de Autoría a Uamo11, Sitio Web uam.lol y Sección Dedicada de Agradecimientos a Hai Zhang (Shangai)

👤 Autoría y Desarrollo Exclusivo de OpenManager: Uamo11

  • Atribución Clara y Precisa del Creador:
    • Se actualizó toda la información de autoría en la aplicación para dejar perfectamente claro que el único autor y desarrollador de OpenManager es Uamo11.
    • Enlace directo al sitio web personal del autor: uam.lol, acompañado de un nuevo icono vectorial de globo terráqueo/web de Material Design.
    • Enlace directo al perfil de GitHub del desarrollador: github.com/uamo11.
    • Actualización exhaustiva en los 34 idiomas soportados por la aplicación (res/values-*/strings.xml).

🤝 Sección Dedicada de Agradecimientos y Proyecto Base (Hai Zhang / Shangai)

  • Reconocimiento Honesto al Proyecto Base:
    • Incorporada una sección especial titulada "Agradecimientos y Proyecto Base" que acredita formalmente a Hai Zhang (Shangai) como autor del proyecto base original Material Files.
    • Se explica claramente que OpenManager toma como base el trabajo de Hai Zhang con profundas modificaciones y añadidos (gestor root MT Manager, compatibilidad libarchive, terminal, editor de texto, backup en la nube, APK tools, etc.).
    • Enlaces directos al repositorio original de Material Files (github.com/zhanghai/MaterialFiles) y al perfil de Hai Zhang (github.com/zhanghai).

📱 Rediseño Modular de la Pantalla «Acerca de OpenManager» en Material Cards

  • Estructura Visual Elegante y Limpia:
    • Tarjeta 1 (OpenManager): Nombre de la app, icono, versión actual, repositorio oficial (github.com/uamo11/OpenManager), licencias de código abierto (GPLv3) y política de privacidad.
    • Tarjeta 2 (Autor de OpenManager): Ficha de Uamo11 como único creador de OpenManager con accesos directos a su web (uam.lol) y GitHub (uamo11).
    • Tarjeta 3 (Agradecimientos y Proyecto Base): Ficha de agradecimientos a Hai Zhang (Shangai) y enlace al repositorio base.
  • Navegación Inteligente desde Ajustes:
    • Al pulsar la opción "Agradecimientos" en el menú de Ajustes, la aplicación abre automáticamente la pantalla y realiza un desplazamiento fluido (smoothScrollTo) directamente hasta la tarjeta de Agradecimientos y Proyecto Base.

OpenManager v1.9.56: Detección Dinámica de Root en Caliente (Sin Salir de la App), Corrección Integral de Iconos y Soporte Robusto para DFRoot y Gestores

🚀 Detección Dinámica de Superusuario en Caliente (Sin Reiniciar la App)

  • Eliminada la Necesidad de Salir de la App tras Conceder Permisos Root:
    • Se corrigió el problema por el cual al conceder permisos root (en Magisk, KernelSU, APatch, DFRoot, etc.), era necesario forzar el cierre y volver a abrir la aplicación para que reconociera el acceso root.
    • Implementado sistema de invalidación dinámica de caché (SuperuserDetector.invalidateCache()) y reactivación en FileListActivity.onResume().
    • Al regresar a OpenManager tras conceder permisos en el diálogo o app de root, se re-evalúan los privilegios en segundo plano automáticamente, actualizando el estado, estadísticas del drawer y recargando el directorio raíz si estaba abierto con error de permisos.
  • Re-detección Instantánea al Pulsar la Tarjeta en Ajustes:
    • Al tocar la tarjeta de superusuario en Ajustes, se realiza una comprobación forzada en caliente (detect(forceRefresh = true)), actualizando el diálogo de detalles al segundo con el estado real.

🎨 Corrección Integral de Renderizado y Calidad de Iconos de Root

  • Eliminación del Tintado Gris Parásito (app:tint):
    • Se corrigió la regla XML en la tarjeta de estado donde app:tint="#B0BEC5" teñía de gris todos los iconos de superusuario (KernelSU, Magisk, APatch, DFRoot, Shizuku), destruyendo sus colores originales y contraste.
    • Se configuró la limpieza completa de tintes (imageTintList = null y clearColorFilter()) en modo activo para que cada icono luzca con sus colores e identidad originales.
  • Aislamiento de Fondos y Transparencias Alpha:
    • Se eliminaron los fondos sólidos cuadrados (marrones, blancos y fucsias) que causaban bordes toscos en KernelSU, Magisk Delta y APatch dentro del contenedor circular.
    • Se procesaron e integraron versiones con transparencia alfa limpia en drawable/ y drawable-nodpi/ para máxima nitidez en pantallas de cualquier densidad (xxhdpi, xxxhdpi).
  • Corrección de Duplicidad de Iconos y Encabezados en DFRoot:
    • Corregido el bug donde el logo de DFRoot se mostraba duplicado (icono principal + mini icono) y el encabezado repetía "DFRoot (Jailbreak) + DFRoot". Ahora se muestra de forma limpia y elegante.

🛡️ Detección Robusta de DFRoot (DirtyFlag Exploit) y Gestores de Kernel

  • Ampliación Exhaustiva de Firmas para DFRoot:
    • Reconocimiento de nuevas rutas de binarios y scripts de elevación: /data/local/tmp/dfroot, /data/local/tmp/dirtyflag, /data/local/tmp/dfroot.sh, /data/local/tmp/dirty_flag.sh, /data/local/tmp/dfsu, /data/local/tmp/rootshell, /system/bin/dfroot.
    • Reconocimiento de propiedades de sistema: ro.boot.dirtyflag, ro.dfroot, sys.dfroot, persist.dfroot, ro.dirtyflag, dfroot.version.
    • Detección de nuevos paquetes del gestor DFRoot / DirtyFlag.
    • Preservación del tipo DFROOT con su icono nativo tras la concesión de privilegios root (evitando degradación a genérico).

OpenManager v1.9.55: Elevación Automática de la Barra Inferior del Editor de Texto sobre el Teclado Virtual (Paridad MT Manager)

⌨️ Elevación y Sincronización de la Barra de Herramientas y Símbolos con el Teclado

  • Barra de Símbolos sobre el Teclado Virtual (WindowInsetsCompat.Type.ime()):
    • Se corrigió el problema por el cual la barra inferior de símbolos y navegación ([◀] [▶] [▲] [▼] [→|] [|←] [TAB] [↶] [↷] [🔍]) quedaba oculta detrás del teclado al editar archivos en Android 10, 11, 12, 13, 14 y 15.
    • Ahora, al abrir el teclado virtual de Android (IME), la barra inferior sube automáticamente y se posiciona directamente encima del teclado, exactamente igual que en MT Manager.
    • Al cerrar o descartar el teclado, la barra regresa suavemente al borde inferior de la pantalla, adaptándose a la barra de navegación o barra de gestos del sistema.
  • Animación Fluida Sincronizada con el Teclado (WindowInsetsAnimationCompat):
    • Implementado callback de animación en tiempo real que desliza la barra hacia arriba y hacia abajo acompañando el movimiento del teclado a 60/120 Hz sin saltos visuales.
  • Auto-Ajuste del Área de Edición y Auto-Scroll del Cursor:
    • El espacio de trabajo del editor se redimensiona reactivamente para mantenerse visible entre la barra superior y la barra de símbolos.
    • Si la posición actual del cursor queda debajo del área visible al desplegarse el teclado, el editor realiza automáticamente un desplazamiento suave (smoothScrollTo) para mantener la línea activa a la vista del usuario.
  • Transición Edge-to-Edge en TextEditorActivity:
    • Habilitada la gestión avanzada de ventanas mediante WindowCompat.setDecorFitsSystemWindows(window, false) garantizando entrega precisa de eventos de teclado en todos los fabricantes (MIUI, HyperOS, OneUI, Pixel OS, etc.).
  • Suite de Pruebas Unitarias Automatizadas:
    • Nueva suite TextEditorKeyboardInsetsTest.kt validando el cálculo de márgenes, restauración tras descartar teclado y compatibilidad con particularidades de fabricantes OEM.

OpenManager v1.9.54: Rediseño de la Barra Inferior de Selección con Iconos MT Manager y Botón de Cancelación [✕]

🎯 Rediseño Estético y Funcional de la Barra de Selección (Paridad MT Manager)

  • Sustitución de Texto Simple por Barra de Iconos Estilizada:
    • Se sustituyeron los textos planos (Todo (1), Copiar >>, Mover >>, Borrar, Más...) por una barra inferior idéntica en diseño y dimensiones a la barra de estado normal (bottomBarNormal).
    • Cada acción es ahora un ImageButton con efecto ripple sin bordes (?selectableItemBackgroundBorderless), tintado blanco nítido y distribución simétrica de 5 columnas.
  • **Botón de Cancelación de...
Read more

OpenManager v1.9.57: Terminal Developer-Grade, Teclado Táctil y Blindaje de Seguridad

Choose a tag to compare

@github-actions github-actions released this 08 Nov 15:27

OpenManager v1.9.57: Atribución Completa de Autoría a Uamo11, Sitio Web uam.lol y Sección Dedicada de Agradecimientos a Hai Zhang (Shangai)

👤 Autoría y Desarrollo Exclusivo de OpenManager: Uamo11

  • Atribución Clara y Precisa del Creador:
    • Se actualizó toda la información de autoría en la aplicación para dejar perfectamente claro que el único autor y desarrollador de OpenManager es Uamo11.
    • Enlace directo al sitio web personal del autor: uam.lol, acompañado de un nuevo icono vectorial de globo terráqueo/web de Material Design.
    • Enlace directo al perfil de GitHub del desarrollador: github.com/uamo11.
    • Actualización exhaustiva en los 34 idiomas soportados por la aplicación (res/values-*/strings.xml).

🤝 Sección Dedicada de Agradecimientos y Proyecto Base (Hai Zhang / Shangai)

  • Reconocimiento Honesto al Proyecto Base:
    • Incorporada una sección especial titulada "Agradecimientos y Proyecto Base" que acredita formalmente a Hai Zhang (Shangai) como autor del proyecto base original Material Files.
    • Se explica claramente que OpenManager toma como base el trabajo de Hai Zhang con profundas modificaciones y añadidos (gestor root MT Manager, compatibilidad libarchive, terminal, editor de texto, backup en la nube, APK tools, etc.).
    • Enlaces directos al repositorio original de Material Files (github.com/zhanghai/MaterialFiles) y al perfil de Hai Zhang (github.com/zhanghai).

📱 Rediseño Modular de la Pantalla «Acerca de OpenManager» en Material Cards

  • Estructura Visual Elegante y Limpia:
    • Tarjeta 1 (OpenManager): Nombre de la app, icono, versión actual, repositorio oficial (github.com/uamo11/OpenManager), licencias de código abierto (GPLv3) y política de privacidad.
    • Tarjeta 2 (Autor de OpenManager): Ficha de Uamo11 como único creador de OpenManager con accesos directos a su web (uam.lol) y GitHub (uamo11).
    • Tarjeta 3 (Agradecimientos y Proyecto Base): Ficha de agradecimientos a Hai Zhang (Shangai) y enlace al repositorio base.
  • Navegación Inteligente desde Ajustes:
    • Al pulsar la opción "Agradecimientos" en el menú de Ajustes, la aplicación abre automáticamente la pantalla y realiza un desplazamiento fluido (smoothScrollTo) directamente hasta la tarjeta de Agradecimientos y Proyecto Base.

OpenManager v1.9.56: Detección Dinámica de Root en Caliente (Sin Salir de la App), Corrección Integral de Iconos y Soporte Robusto para DFRoot y Gestores

🚀 Detección Dinámica de Superusuario en Caliente (Sin Reiniciar la App)

  • Eliminada la Necesidad de Salir de la App tras Conceder Permisos Root:
    • Se corrigió el problema por el cual al conceder permisos root (en Magisk, KernelSU, APatch, DFRoot, etc.), era necesario forzar el cierre y volver a abrir la aplicación para que reconociera el acceso root.
    • Implementado sistema de invalidación dinámica de caché (SuperuserDetector.invalidateCache()) y reactivación en FileListActivity.onResume().
    • Al regresar a OpenManager tras conceder permisos en el diálogo o app de root, se re-evalúan los privilegios en segundo plano automáticamente, actualizando el estado, estadísticas del drawer y recargando el directorio raíz si estaba abierto con error de permisos.
  • Re-detección Instantánea al Pulsar la Tarjeta en Ajustes:
    • Al tocar la tarjeta de superusuario en Ajustes, se realiza una comprobación forzada en caliente (detect(forceRefresh = true)), actualizando el diálogo de detalles al segundo con el estado real.

🎨 Corrección Integral de Renderizado y Calidad de Iconos de Root

  • Eliminación del Tintado Gris Parásito (app:tint):
    • Se corrigió la regla XML en la tarjeta de estado donde app:tint="#B0BEC5" teñía de gris todos los iconos de superusuario (KernelSU, Magisk, APatch, DFRoot, Shizuku), destruyendo sus colores originales y contraste.
    • Se configuró la limpieza completa de tintes (imageTintList = null y clearColorFilter()) en modo activo para que cada icono luzca con sus colores e identidad originales.
  • Aislamiento de Fondos y Transparencias Alpha:
    • Se eliminaron los fondos sólidos cuadrados (marrones, blancos y fucsias) que causaban bordes toscos en KernelSU, Magisk Delta y APatch dentro del contenedor circular.
    • Se procesaron e integraron versiones con transparencia alfa limpia en drawable/ y drawable-nodpi/ para máxima nitidez en pantallas de cualquier densidad (xxhdpi, xxxhdpi).
  • Corrección de Duplicidad de Iconos y Encabezados en DFRoot:
    • Corregido el bug donde el logo de DFRoot se mostraba duplicado (icono principal + mini icono) y el encabezado repetía "DFRoot (Jailbreak) + DFRoot". Ahora se muestra de forma limpia y elegante.

🛡️ Detección Robusta de DFRoot (DirtyFlag Exploit) y Gestores de Kernel

  • Ampliación Exhaustiva de Firmas para DFRoot:
    • Reconocimiento de nuevas rutas de binarios y scripts de elevación: /data/local/tmp/dfroot, /data/local/tmp/dirtyflag, /data/local/tmp/dfroot.sh, /data/local/tmp/dirty_flag.sh, /data/local/tmp/dfsu, /data/local/tmp/rootshell, /system/bin/dfroot.
    • Reconocimiento de propiedades de sistema: ro.boot.dirtyflag, ro.dfroot, sys.dfroot, persist.dfroot, ro.dirtyflag, dfroot.version.
    • Detección de nuevos paquetes del gestor DFRoot / DirtyFlag.
    • Preservación del tipo DFROOT con su icono nativo tras la concesión de privilegios root (evitando degradación a genérico).

OpenManager v1.9.55: Elevación Automática de la Barra Inferior del Editor de Texto sobre el Teclado Virtual (Paridad MT Manager)

⌨️ Elevación y Sincronización de la Barra de Herramientas y Símbolos con el Teclado

  • Barra de Símbolos sobre el Teclado Virtual (WindowInsetsCompat.Type.ime()):
    • Se corrigió el problema por el cual la barra inferior de símbolos y navegación ([◀] [▶] [▲] [▼] [→|] [|←] [TAB] [↶] [↷] [🔍]) quedaba oculta detrás del teclado al editar archivos en Android 10, 11, 12, 13, 14 y 15.
    • Ahora, al abrir el teclado virtual de Android (IME), la barra inferior sube automáticamente y se posiciona directamente encima del teclado, exactamente igual que en MT Manager.
    • Al cerrar o descartar el teclado, la barra regresa suavemente al borde inferior de la pantalla, adaptándose a la barra de navegación o barra de gestos del sistema.
  • Animación Fluida Sincronizada con el Teclado (WindowInsetsAnimationCompat):
    • Implementado callback de animación en tiempo real que desliza la barra hacia arriba y hacia abajo acompañando el movimiento del teclado a 60/120 Hz sin saltos visuales.
  • Auto-Ajuste del Área de Edición y Auto-Scroll del Cursor:
    • El espacio de trabajo del editor se redimensiona reactivamente para mantenerse visible entre la barra superior y la barra de símbolos.
    • Si la posición actual del cursor queda debajo del área visible al desplegarse el teclado, el editor realiza automáticamente un desplazamiento suave (smoothScrollTo) para mantener la línea activa a la vista del usuario.
  • Transición Edge-to-Edge en TextEditorActivity:
    • Habilitada la gestión avanzada de ventanas mediante WindowCompat.setDecorFitsSystemWindows(window, false) garantizando entrega precisa de eventos de teclado en todos los fabricantes (MIUI, HyperOS, OneUI, Pixel OS, etc.).
  • Suite de Pruebas Unitarias Automatizadas:
    • Nueva suite TextEditorKeyboardInsetsTest.kt validando el cálculo de márgenes, restauración tras descartar teclado y compatibilidad con particularidades de fabricantes OEM.

OpenManager v1.9.54: Rediseño de la Barra Inferior de Selección con Iconos MT Manager y Botón de Cancelación [✕]

🎯 Rediseño Estético y Funcional de la Barra de Selección (Paridad MT Manager)

  • Sustitución de Texto Simple por Barra de Iconos Estilizada:
    • Se sustituyeron los textos planos (Todo (1), Copiar >>, Mover >>, Borrar, Más...) por una barra inferior idéntica en diseño y dimensiones a la barra de estado normal (bottomBarNormal).
    • Cada acción es ahora un ImageButton con efecto ripple sin bordes (?selectableItemBackgroundBorderless), tintado blanco nítido y distribución simétrica de 5 columnas.
  • Botón de Cancelación de Selección [✕]:
    • El primer botón ahora muestra el icono de cierre [✕].
    • Pulsación corta: Desmarca todos los elementos y cierra el modo de selección al instante (activeFragment.clearSelectedFiles()).
    • Pulsación larga: Atajo para seleccionar todos los archivos (activeFragment.selectAllFiles()) con aviso toast.
  • Iconos Direccionales e Inteligentes para Copiar y Mover:
    • Copiar / Extraer: Muestra el icono de duplicación/copia o el icono de extracción de caja con flecha (extract_icon_white_24dp) cuando se navega dentro de archivos comprimidos.
    • Mover Direccional: Muestra la carpeta con flecha apuntando a la derecha (move_icon_white_24dp) al estar en el panel izquierdo (A), o apuntando a la izquierda (move_left_icon_white_24dp) al estar en el panel derecho (B).
    • Atenuación y deshabilitación reactiva (alpha = 0.35f) cuando la operación de mover no es permitida (rutas de sólo lectura o archivos comprimidos).
  • Iconos de Borrado y Menú Contextual con Tooltips:
    • Icono de papelera para eliminación rápida y 3 puntos verticales (⋮) para el menú desplegable.
    • Soporte completo de tooltips nativos (TooltipCompat.setTooltipText) al mantener pulsado cualquier icono.
    • Incorporada la opción "Seleccionar todo" en el menú desplegable de más opciones (showMoreSelectionMenu).
  • Pruebas Unitarias:
    • Suite DirectionalActionLogicTest.kt ampliada para validar la resolución dinámica de iconos según el panel y el tipo de origen.

OpenManager v1.9.53: Sincronización Automática y Detección de Cambios Externos en el Editor de Texto (Paridad MT Manager)

🔄 Detección Inteligente de Cambios Externos en el Editor de Texto

  • **Aviso en Tiempo Real cuando un Archivo es Modi...
Read more