pruebas en la APK: huecos dobles de las barras, contraste y zonas tactiles

Probado con la APK instalada en el emulador de Android Studio (Pixel 9, Android 16):

- La barra de arriba llevaba 65px de mas y la de abajo 24: el contenedor de la app
  del dev ya se aparta de las barras del sistema y nuestro CSS volvia a sumar
  safe-area-inset. Ahora --inset-top y --inset-bottom, a 0, en mobile_base.css.
- Borrar en una tarjeta: la barra de confirmar se metia en la fila de botones y
  'Si, borrar' salia letra a letra. La fila ya puede saltar de linea.
- Acampada: .time-chip y .pref-pill del dev quedaban en negro sobre gris oscuro, y la
  pildora elegida con texto claro sobre el resalte en las paletas oscuras.
- Zonas tactiles a 44px: barra de arriba, fichas, pasos de la bienvenida, aviso de
  bienvenida, pie, casillas con su etiqueta, botones del buzon; enlaces en el texto
  a 24px.
- Acceso a un bloque de Ajustes: el titulo ya no queda bajo la barra de arriba.

En la guia y en ARQUITECTURA_APK.md: no usar env(safe-area-inset-*), los tamaños
minimos y el fallo del boton atras de la app del dev (la tecla retrocede dos pasos).
This commit is contained in:
hacklab 2026-10-20 13:50:46 +02:00
parent f75fbf7c4a
commit b277f8e1cf
5 changed files with 90 additions and 13 deletions

View file

@ -106,6 +106,23 @@ Por eso lo nuestro va en `fork_routes.js`, `mobile_ui.js` y las hojas propias, q
el dev no importa.
## Barras del sistema y botón atrás
`onCreate` pone un `OnApplyWindowInsetsListener` que aparta el contenedor de la
WebView de la barra de estado, del recorte de la cámara y de la barra de gestos
(`setPadding` con esos insets), salvo en pantalla completa. Pero devuelve los insets
sin consumir, y la WebView los sigue anunciando como `safe-area-inset-*`: si el CSS
los suma, el hueco sale doble (65 px de más arriba y 24 abajo en un Pixel 9 con
Android 16). Por eso nuestras hojas usan `--inset-top` y `--inset-bottom` a 0.
El botón atrás pasa por `goBackInWebView()`, que hace `webView.goBack()` o, si no
puede, carga la página anterior de su propia lista (`visitedUrls`). Con el gesto de
atrás se llama una vez. Con la tecla (móviles con tres botones) se llama dos veces,
por `onKeyDown` y por `registerPredictiveBack`, y se retrocede dos pasos: con el menú
abierto, en vez de cerrarlo se va a la pantalla anterior. Es de su código Android;
hay que pedírselo al dev.
## Lo que hace nuestra APK encima
`android/scripts/sobre_oficial.sh` coge esta APK tal cual y cambia: