Skip to content

The flashcard deck's stack replaces Prev and Next #613

Description

@maximsan

Found reconciling the 15 September 2026 prototype drop (4beb98b2) against lib/features/dictionary/presentation/flashcards_screen.dart and flashcards_copy.dart. Blocked by #610, which builds the gesture. In v1 by the ruling recorded there.

Do not start the copy deletions before the gesture lands. Removing the buttons without the swipe leaves the deck with no way to walk it — the half-port this ticket exists to avoid.

What the design draws

Prev and Next are deleted. They used the opposite direction model to the gesture: a left chevron meaning back, sitting under a card whose left drag means next. Only Finish survives, on the last card — completing the deck is the one state a swipe cannot announce.

FlashcardsCopy.previous (‹ Prev) and .next (Next ›) go with them.

The stack is the standing affordance. A card sits visibly behind on each side — right until the last card, left once past card 1 — rising into place as the drag goes its way, so the current card visibly leaves. Both sides come from one helper so they cannot drift apart. The deck keeps its current geometry.

Arrows are point-at-target, not the drag model

Right advances, Left goes back on a hardware keyboard. Mapping keys to the gesture's own direction puts the collision back, just on the keyboard.

Both directions get a focus-revealed control. The stack slivers are decorative and hidden from assistive technology, so a forward-only affordance leaves assistive-technology users with no way back. This is not a reprieve for Prev/Next in the visible layout — it is a focus-reachable pair that the pointer user never sees.

Acceptance criteria

  • The deck walks by swiping, the stack peeks on each side that has a card, and Finish is the only button left, on the last card
  • Left and Right arrow keys step back and forward respectively, and both directions are reachable by focus without the pointer
  • FlashcardsCopy no longer carries previous or next
  • dart format, flutter analyze, the metrics gate and the suite pass, with a changelog bullet, and the deck is shown in a screenshot

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    design-parityCloses a finding in the app-vs-prototype divergence registerenhancementNew feature or requestfeature-buildA screen or mechanic the app does not have yet

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions