v1.0.3 "Verdant Mainline"
Hotfix Crítico & EstabilidadVersión ActualLanzamiento Oficial de Estabilidad • Windows 64-bit • 23 de Octubre de 2026
Actualización oficial de hotfix y estabilidad UI/UX para SupraPDF Studio "Verdant". Resuelve discrepancias de escalado High-DPI en pantallas de portátiles, asegura la apertura determinista de archivos en directorios válidos del usuario y rediseña el Editor Visual Interactivo para resoluciones compactas (720p/768p).
Novedades Principales de v1.0.3:
- ✓Saneamiento de cursores y controles en pantallas de portátiles con escalado DPI (125%-175%): Eliminación de falsos cursores de redimensionamiento Win32 y bloqueo de clics en barra de título y tarjetas mediante normalización bidireccional de coordenadas físicas.
- ✓Apertura segura de selectores de archivos directamente en Descargas/Documentos del usuario: Cascada determinista que prioriza carpetas activas del usuario y previene que los diálogos inicien accidentalmente en rutas críticas del sistema como C:\Windows\System32.
- ✓Rediseño elástico y ergonómico del Editor Visual Interactivo para pantallas compactas (720p/768p): Reubicación ergonómica del zoom a la barra inferior de previsualización, eliminación de desborde horizontal de botones y reducción del ancho mínimo operativo a 709 px (-30.4%).
Ver notas de cambio técnicas y auditoría (Fixed, Changed, Security)
Fixed (Correcciones Críticas de Producción)
- • Hit-Testing Win32 en High-DPI (ui/main_window.py): Integración de GetWindowRect y normalización con devicePixelRatioF(), garantizando HTCLIENT prioritario para controles interactivos.
- • Selectores Deterministas (utils/helpers.py): Cascada get_default_open_dir() hacia Descargas, Documentos y Escritorio, evitando carpetas restringidas o del sistema.
- • Desborde en Editor Visual (ui/panels/editor_panel.py): Implementación de ResponsiveStackedWidget; el estado vacío pasa de 1019 px a ~105 px de ancho mínimo.
Changed (Mejoras Ergonómicas y UI)
- • Controles de zoom (porcentaje, reset 1:1, ajustar página) trasladados a la barra inferior, despejando la cabecera y reduciendo el ancho central a 340 px (-42.3%).
- • OutputNameWidget elástico con compactación responsiva de inputs de texto y selectores de extensión para resoluciones compactas.
Security & QA (Aislamiento de Rutas y Certificación)
- • Desacople estricto: get_default_open_dir() gobierna exclusivamente la lectura (getOpenFileName). Las rutas de exportación y guardado permanecen 100% aisladas e independientes.
- • 100% de escenarios certificados con cero regresiones mediante la suite automatizada de pruebas scratch/test_output_routing.py.
Métricas de Tolerancia y Geometría (v1.0.2 vs v1.0.3)
| Dimensión UI | v1.0.2 | v1.0.3 | Variación |
|---|---|---|---|
| Ancho Mínimo Pantalla Vacía Editor | 1019 px | ~105 px | -89.7% |
| Ancho Mínimo Columna Central Canvas | 589 px | 340 px | -42.3% |
| Ancho Mínimo Total Editor Activo | 1019 px | 709 px | -30.4% |
| Tolerancia Escalado High-DPI Windows | 100% rígido | 100% - 200% | +100% |