Entregable
Una aplicación egui/eframe con la estructura visual documentada, compilable para Windows y navegador, con vistas genéricas suficientes para comprobar navegación, configuración y múltiples pestañas.
La referencia seguirá disponible en el prototipo HTML del proyecto. Se creará la implementación en una carpeta independiente contenedor/.
Etapas
| Paso | Trabajo | Evidencia de terminación |
|---|---|---|
| 1. Base técnica | Fijar versiones, crear arranque nativo y web y cargar recursos compartidos | Ventana nativa y canvas web muestran la misma vista de inicio |
| 2. Configuración | Implementar esquema, perfiles, validación y valores de respaldo | Ambos hosts aplican su perfil y recuperan el inicio ante un archivo inválido |
| 3. Layout | Construir header, menú, sidebar, toolbar, pestañas, container, panel contextual y footer | Capturas comparables con la referencia en los tamaños acordados |
| 4. Interacciones | Añadir comandos, búsqueda de vistas, pestañas y diálogos | Las mismas acciones funcionan con ratón y teclado en ambos destinos |
| 5. Preferencias | Incorporar temas, densidad y restauración de ajustes | Los cambios persisten donde hay almacenamiento y se degradan a memoria si falta |
| 6. Validación | Comprobar compilación, comportamiento, escalado y accesibilidad | Registro de resultados y límites conocidos por plataforma |
Vistas de prueba
Inicio: muestra el nombre y versión del contenedor, la plataforma y accesos a las vistas de demostración.
Editor de ejemplo: presenta unos campos de texto sin significado de negocio. Permite abrir dos instancias para verificar independencia de datos, foco, cambios pendientes y confirmación de cierre.
Preferencias: permite revisar tema, densidad y visibilidad de paneles. También muestra qué perfil de configuración se ha cargado.
Los nombres bancarios del prototipo no son necesarios para comprobar esta infraestructura.
Criterios de aceptación
Estructura visual
- El header, los menús, la navegación y el footer mantienen su posición al desplazar el contenido.
- Solo la vista activa ocupa el área central.
- El panel contextual corresponde a la vista activa y puede ocultarse.
- El sidebar tiene estados expandido y contraído utilizables.
- Las regiones se adaptan al ancho sin ocultar las acciones necesarias.
- Los temas claro y oscuro aplican los mismos tokens a todas las regiones.
Navegación y estado
- Abrir Inicio repetidamente activa la misma pestaña.
- Abrir dos editores produce dos identificadores y estados diferentes.
- Escribir en uno no altera los campos ni el foco del otro.
- Cambiar de pestaña o abrir un diálogo no borra lo escrito.
- El límite configurado de instancias impide una apertura adicional y explica el motivo.
- Cerrar con cambios exige confirmación y cancelar conserva el estado.
- Cerrar una instancia no modifica las restantes.
- La pestaña activa permanece visible al desbordarse la barra.
Web y escritorio
- La compilación nativa y la web se completan con las versiones registradas.
- Las dos versiones comparten los componentes y las reglas de navegación.
- Cada una carga su perfil y usa únicamente las capacidades de su host.
- La versión web muestra carga, inicio correcto y error de inicialización.
- Los controles de ventana pertenecen al host correspondiente.
- La interfaz indica la plataforma y versión reales.
Configuración y accesibilidad
- Un archivo inválido no impide iniciar con valores predeterminados.
- Una preferencia dañada no rompe el layout.
- El orden de foco es predecible y los botones tienen etiquetas accesibles.
- Los menús y diálogos se pueden utilizar con teclado.
- Los campos conservan escritura, selección, copiar y pegar, incluidos caracteres con tilde.
- Se comprueban contraste, escalado de pantalla y tecnologías de asistencia; sus límites se registran antes de ampliar el contenedor a módulos reales.
Evidencias que se entregarán
Se registrarán los comandos ejecutados, las versiones, el sistema operativo, el navegador y los resultados. Se adjuntarán capturas de web y escritorio, incluyendo layout completo, modo compacto y dos vistas abiertas.
Los resultados de las pruebas del prototipo HTML no se presentarán como validación de la implementación Rust.
Pendientes acotados
| Decisión | Momento de resolverla |
|---|---|
| Versiones exactas del toolchain y bibliotecas | Antes de crear el proyecto Rust |
| Renderer definitivo por target | Primera ejecución de ambos artefactos |
| Fuente e iconos compartidos, con licencia compatible | Construcción del layout |
| Sistemas y navegadores adicionales a la primera comprobación | Definición de la matriz de validación |
La siguiente implementación corresponde únicamente al contenedor y a sus vistas genéricas de prueba.