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
|
|
@ -1030,6 +1030,9 @@ class AppLocalizationsDe extends AppLocalizations {
|
|||
@override
|
||||
String get studysetReorderPaths => 'Pfade umsortieren';
|
||||
|
||||
@override
|
||||
String get studysetReorderCards => 'Karteikarten umsortieren';
|
||||
|
||||
@override
|
||||
String get studysetReorderDone => 'Fertig';
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue