Skip to content

Vault Explorer 0.2.35 — la ventana que no se dejaba arrastrar

Choose a tag to compare

@lucasmoyano-septeo lucasmoyano-septeo released this 10 Sep 12:24
· 4 commits to main since this release

Cuatro cosas del feedback, tres con la misma raíz de fondo: algo que sí existía pero no llegaba a donde hacía falta.

La segunda ventana no tenía permisos. Abrir la app estando ya abierta (el icono, xdg-open sobre una carpeta, "Mostrar grabaciones") no arranca un segundo proceso: la instancia que ya corre abre otra ventana, con la etiqueta main-2, main-3… Las capabilities de Tauri solo cubrían main, y una ventana que no encaja con ninguna capability se queda sin ningún permiso de plugin. De ahí Command plugin:opener|open_path not allowed by ACL al abrir un HTML, y de ahí que esa ventana tampoco se dejara arrastrar (start_dragging es el mismo tipo de comando), mientras la primera iba bien. Ahora main-* está en las capabilities, con un comentario junto al generador de etiquetas para que la próxima ventana nueva no repita el olvido.

Arrastrar la ventana, la otra mitad del problema. El script de Tauri solo inicia el arrastre si el elemento bajo el puntero lleva data-tauri-drag-region — los hijos no lo heredan. La barra de herramientas va llena de hijos, y todo el hueco vacío del panel lateral es un espaciador, también hijo: quedaban de asidero los píxeles sueltos entre botones. La barra pasa a data-tauri-drag-region="deep" (el propio script sigue negándose a arrastrar desde un botón o un campo de texto, así que los controles no cambian) y el espaciador lleva el suyo.

El selector de carpetas de "Mover a…" no dejaba salir de la Home. Cortaba la subida en la carpeta donde se había abierto, así que cualquier destino por encima era inalcanzable. Y la lista salía en el orden crudo de readdir — orden de inodo, ningún orden. Ahora solo / corta la subida, las carpetas van alfabéticas, y hay dos atajos: Home y Filesystem.

Las fotos se decodificaban enteras para hacer una miniatura de 160px. La cuadrícula nunca ha cargado la foto completa —siempre fue una miniatura JPEG, cacheada en disco salvo dentro de una bóveda, que a propósito no cachea nada descifrado— pero fabricarla costaba rasterizar la imagen entera: unos 100 MB de píxeles para una foto de 24 MP, de los que se conserva un cuadrado de 160. Diez a la vez. Dentro de una bóveda, además, en cada visita.

Ahora se lee la vista previa que toda cámara y todo móvil incrustan en el EXIF de la foto. Medido sobre una foto real de 4000×3000: 18 ms frente a 2054 ms, misma miniatura de 160×120. Se rechaza si es demasiado pequeña para lo que se pide (se vería escalada) o si tiene otra proporción que la foto (algunas cámaras la guardan con bandas negras), y en ese caso se decodifica la imagen de verdad como antes. El número de miniaturas en paralelo pasa de 10 fijas a núcleos−1: el pico de memoria era eso, no el IPC.

Instalar: vault-explorer-v0.2.35.apk, encima de la 0.2.34.