Files
immich/web
midzelis d93ef7e0fc fix(web): align gallery-viewer viewport zones and skip thumbhash fade for offscreen thumbnails
When thumbnails load outside the viewport (e.g. during fast scrolling),
skip the thumbhash-to-image fade transition to avoid visual flicker for
already-loaded images.

Expands the gallery-viewer sliding window to use the same
INTERSECTION_EXPAND_TOP/BOTTOM tunables as the timeline, enabling
consistent near-viewport preloading of assets across both views.

Adds isInViewport prop to Thumbnail, threaded through AssetLayout, Month,
and Timeline. ViewerAsset gains an isInViewport getter backed by
ViewportProximity.

Also aligns gallery-viewer naming with ViewportProximity terminology:
- isRenderable -> isInOrNearViewport
- isIntersecting -> isInViewport
- onIntersected -> onReachedEnd

Change-Id: Iad30716dc2a45f4883701bbbd1412e106a6a6964
2026-05-04 14:24:56 +00:00
..
2026-04-21 14:51:38 -04:00
2023-11-17 22:13:36 -06:00
2022-07-15 23:18:17 -05:00
2026-04-21 14:51:38 -04:00

Immich web project

This project uses the SvelteKit web framework. Please refer to the SvelteKit docs for information on getting started as a contributor to this project. In particular, it will help you navigate the project's code if you understand the basics of SvelteKit routing.

When developing locally, you will run a SvelteKit Node.js server. When this project is deployed to production, it is built as a SPA and deployed as part of the server project.