- new photos on the server appear automatically: the grid polls the
newest page every ~30 s while settled; dedup_new_assets drops
already-known ids (and also guards page fetches against server-side
pagination drift)
- rebuild_keep_view pins the scroll and selection to the same photo
across every relayout (page fetch, poll, sync), so loads no longer
move the view
- R/L month jump anchors the landed month's header to the top of the
screen, and R fetches ahead until the next month is actually loaded
- portrait videos play upright: the asset's exif orientation is kept
(g_asset_rot) and the player rotates decoded frames (draw_video_frame)
- "loading..." texts replaced by a spinning throbber: centered when an
item has no preview yet, a small corner one while the full-res loads
over the thumb (never both)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Dynamic arrays for assets (remove 1000/500 caps)
- Zoom (R/L triggers) and pan (analog stick) in detail view
- Group gallery by month/year with headers
- Fix fast-scroll crashes via texture pooling and thread safety
- Serialize curl calls (OpenSSL 1.0.2 lacks thread support)
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>