fix(app): studyset tabs built as they scroll, and a Reorder mode for flashcards
A studyset of 1,200 flashcards froze the window for seconds on opening (7.4 s in a debug test; a release build is faster but still grows with every card), long enough for the desktop to offer to kill the app: the tabs held each list as one child of a scrolling view, shrink-wrapped, so every row was built and laid out at once, and again on every change. The tabs are now CustomScrollViews holding each list's slivers, built as they scroll into view (0.07 s for the same 1,200 cards). What a list says in place of its rows sits in SliverCentered. On the desktop, Flutter's default drag handle lay over each card's "…", so a press there began a drag rather than opening the options. Cards now move in a Reorder mode, as paths do: Reorder beside the tabs (with two cards or more, all showing), a grip in place of each card's options, Done to end it. ReorderToggle and liftWhileDragged are shared with the paths. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MMm7usAo6q9ZZRoPkWjoxi Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
6c911e50bb
commit
bb23ca2478
1 changed files with 602 additions and 249 deletions
|
|
@ -277,6 +277,7 @@
|
|||
"cardTextImported": "{count, plural, =1{1 Karteikarte importiert.} other{{count} Karteikarten importiert.}}",
|
||||
"studysetReorder": "Umsortieren",
|
||||
"studysetReorderPaths": "Pfade umsortieren",
|
||||
"studysetReorderCards": "Karteikarten umsortieren",
|
||||
"studysetReorderDone": "Fertig",
|
||||
"studysetOpenTopics": "Themen anzeigen",
|
||||
"studysetTopics": "Themen",
|
||||
|
|
@ -284,8 +285,6 @@
|
|||
"studysetNewSubStudyset": "Neues Unter-Lernset",
|
||||
"studysetSubStudysetsEmpty": "Noch keine Unter-Lernsets.",
|
||||
"studysetSubStudysetsEmptyHint": "Teile dieses Lernset in Meilensteine oder Lektionen auf.",
|
||||
"studysetReorder": "Umsortieren",
|
||||
"studysetReorderDone": "Fertig",
|
||||
"studysetDragToReorder": "Zum Umsortieren ziehen",
|
||||
"studysetMoveTitle": "Lernset verschieben nach",
|
||||
"studysetMoveTopLevel": "Oberste Ebene",
|
||||
|
|
|
|||
Loading…
Reference in a new issue