Repository navigation
Render the continuous view from segment pages - #467
Conversation
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configuration
📝 Walkthrough
Merge Risk: 🔵 Low · up to
|
This comment was marked as resolved.
This comment was marked as resolved.
Applied your patch as is, test included. |
imnasnainaec
left a comment
There was a problem hiding this comment.
@imnasnainaec reviewed 14 files and all commit messages, and resolved 6 discussions.
Reviewable status: 14 of 23 files reviewed, 2 unresolved discussions (waiting on alex-rawlings-yyc).
1179276 to
25f09a4
Compare
imnasnainaec
left a comment
There was a problem hiding this comment.
@imnasnainaec reviewed 5 files and resolved 12 discussions.
Reviewable status:complete! all files reviewed, all discussions resolved (waiting on alex-rawlings-yyc).
Closes #437. Part of Phase 2 (#425).
Strip. The continuous strip renders from segment pages, through a run of segments of its own rather than the segment list's
useSegmentWindowrange, which culls by the list's vertical scroll. The run holds the segments under its mounted groups and its focus, plus a margin of words each side, as far as their pages have loaded. The strip asks for those pages and a few segments beyond, and while it fades out it asks for the pages around the focus it is moving to. A jump to a segment whose page has not loaded stays faded until it does, and the arrows disable at the last group held while the page beyond it loads. Groups keep their indexes as the run grows or trims at either end, so neither reads as a focus move. Chapters in verse labels are still qualified over the whole outline. The lookup maps the strip is handed (useBookIndexes) still cover the whole book, as the plan allows until #453.Pages.
SegmentPages.loadtakes a caller, and a new outline is published with the pages around each caller's latest range loaded. A boundary edit made in the strip therefore keeps the strip's segments loaded, not just the list's.Phrase window.
usePhraseWindowtakes the index of the first group it may mount. It re-watches its sentinels when groups arrive past an edge it stopped at.Re-anchor. A phrase whose tokens fall in more than one segment goes stale, as one that lost a token does, so the strip can group each segment on its own.
Verified.
This change is
Summary by CodeRabbit