Mark a channel read from its head, and undo it; Enter on a tabbed-to button #325
No reviewers
Labels
No labels
area/ci
area/desktop
area/packaging
area/protocol
area/reading
area/ui
area/web
area/writing
kind/bug
kind/feature
kind/infra
kind/request
needs/user
parked
perf
security
upstream
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
littlefox/neokom!325
Loading…
Reference in a new issue
No description provided.
Delete branch "issue-315-mark-channel-read"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #315 (D-065)
Closes #322
Mark a whole channel read, and reach its presentation.
scroll-padding-top).set-unread0 (Kom::catch_up). A toast above the command bar says "N olästa i X är markerade som lästa · Ångra" until it's put away. Ångra writes the read ranges back exactly as they were (set-read-ranges,Kom::undo_caught_up);set-unreadN would make the newest N unread instead, which is wrong for an Emacs reader's read ranges with gaps.Keys (#322). Enter and Space never pressed a focused button; they always did the default action. A control reached with Tab now keeps its own Enter and Space. The one last pressed with a pointer gives them back to reading, so Space after a click still reads on. This is tracked from
pointerdownrather than:focus-visible, because Chromium counts a clicked button as keyboard-focused once a key has been pressed.Window script. It no longer picks a new anchor on the scroll event of its own adjustment. It used to pick a row just come in under the sticky head, which then grew and pushed the reader's row down.
Tests:
catch_up_and_undo: read state with gaps comes back exactly.catch-up.spec.ts(new seed person Karin, in Många trådar): the head is on screen when the list opens; marking read, then undoing, puts back the same count; the presentation page has the button too.keys.spec.ts: Tab to Inkorg, then Enter, opens the inbox. It fails without the fix.🤖 Generated with Claude Code
https://claude.ai/code/session_01XJW2ocwLunyaLiUwCBHEP8