Skip to content

fix(viewer): voorkom miniatuurflits bij paginawissels (#854) - #857

Closed
oscar981-op wants to merge 1 commit into
OpenAEC-Foundation:mainfrom
oscar981-op:fix/tauri-page-transition-854
Closed

oscar981-op wants to merge 1 commit into
OpenAEC-Foundation:mainfrom
oscar981-op:fix/tauri-page-transition-854

Conversation

@oscar981-op

@oscar981-op oscar981-op commented Oct 29, 2026 •

Copy link
Copy Markdown
Contributor

Integrated with maintainer review fixes via #862 (upstream main cdda6a0). The original tested branch is retained as reference; do not merge it again.

Closes #854.

Bij bladeren in Single Page op bijvoorbeeld 300% zoom verscheen eerst een wazige, passend gemaakte zijbalkminiatuur boven het vaste viewportcanvas. De echte pagina verscheen daarna op de bestaande zoom en pan. De aparte overlay en zijn timers zijn verwijderd: navigatie toont de normale pagina-render zonder deze tussenstap.

setPage() herstelt nu ook bij paginawissels binnen hetzelfde document direct de beste beschikbare bitmap uit de bestaande cache, met dezelfde rotatiesleutel en 4096-pixelgrens als de orchestrator. Een zoomsnapshot van de vertrekkende pagina wordt meteen losgelaten, zodat die de nieuwe pagina niet alsnog kan bedekken.

Validatie:

  • Acht gedragstests op de echte viewport-renderlus: direct cacheherstel, 300% zoom en pan, DPR 2, alle vier weergaverotaties, dezelfde transform voor gecachte en definitieve raster, snel cached/cold/cached bladeren, tile-opruiming, oude zoomsnapshot, verschillende paginamaten en document-/rotatiesleutels. De eerste zeven regressiegevallen faalden vóór de fix; alle acht slagen nu.
  • Playwright met een echte vierpagina-PDF, gevulde miniatuurstore en goToPage(): een vertraagde eerste navigatie en vijf pagina-overgangen blijven op 300%; MutationObserver detecteert geen thumbnail-overlay, ook niet binnen één frame.
  • Volledige unit-suite: 6007 geslaagd, 19 overgeslagen, 0 mislukt (6026 totaal). TypeScript, Vite-productiebuild, versiecontrole en git diff --check geslaagd.
  • Versie 2026.44.13 volgens repositorybeleid; installerworkflow gestart op head 30a2806557babe032cdbb1eb116a15bf840cee7a; conceptrelease aangemaakt met dezelfde commit als target. Er wordt geen release gepubliceerd.

Afweging: deze kleine fix verwijdert de tijdelijke zijbalkminiatuur volledig. Een nog niet gecachte pagina wacht op de gewone render en kan daarbij kort een leeg paginavlak tonen; er is geen nieuwe thumbnail-decoder of vertraagde stand-in. Een lager-resolutie cachetreffer kan nog zacht zijn totdat de scherpe render arriveert, maar gebruikt dezelfde paginageometrie. Native Windows-interactie is hier niet handmatig getest; viewportgedrag is met canvas/cache-stubs getest, browsernavigatie met echte PDF.js. Conceptstatus blijft behouden zolang installercontroles of verplichte review ontbreken; het account heeft geen upstream merge-recht.

Installerresultaat op head 30a2806557babe032cdbb1eb116a15bf840cee7a: alle vijf upstream CI-checks geslaagd. Webbundel, Android en MCPB geslaagd; Windows-jobs stranden op de ontbrekende Azure-signing-endpoint, Linux op het decoderen van de updater-sleutel/wachtwoord; macOS geannuleerd. Conceptrelease blijft ongepubliceerd. Conceptstatus behouden wegens installerblokkades en ontbrekende verplichte review; het account heeft geen upstream merge-recht.

@DutchSailor DutchSailor mentioned this pull request Oct 29, 2026
@DutchSailor

Copy link
Copy Markdown
Collaborator

Thank you @oscar981-op! This is released in 2026.44.4 as one squashed commit with you as the author (merged through #862).

Review fix on top: a zoom snapshot is also dropped when only the view rotation changes, so it is never drawn in the old orientation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: Changing pages flashes a blurry fit-to-window thumbnail, then jumps to the real zoom and position

2 participants