Keep a stepped-past download from replacing the open photograph

Opening a photograph from the library starts a download and a timer that
polls for it. Every step along the roll started another, and each one put
its result on screen when it landed, so a frame stepped past earlier
could arrive last and replace the one whose name was showing. Each open
now takes a generation number; a download that lands for an older
generation is recorded in the activity list (its bytes are cached) and
goes no further.

The outgoing session also stayed live until the new download landed.
Its sliders kept working, and a second step before the first landed
saved that session's edit under the new photograph's identity. The
session is now dropped as soon as its edit is saved.
This commit is contained in:
2026-09-26 11:00:36 -04:00
parent 5794f8c6ea
commit 3b97195b37
3 changed files with 106 additions and 72 deletions
File diff suppressed because one or more lines are too long