feat(app): Home, the Library and the studyset sheets laid out as before

Home: plain cards on the surface, 16 dp apart, the goal first and the
Pomodoro timer after it in a new dashboard. The streak chip sits centred
in the app bar, and its sheet shows the days inside a big flame and the
week as marks over the weekdays' initials, with a word on today in a box.
The week names its day as "Thursday, Oct 8" and its days carry no
tooltip. The heatmap scrolls its weekdays with the weeks, outlines the
days to come, and names a day's activities with its date. The goal card
has a ring of 5 dp, a check once met and a pencil, and its sheet saves
across its width with Remove goal below. Arranging puts an eye on each
widget's corner and lifts the one picked up, with a tap the hand feels;
with every widget hidden, Customise brings arranging back. The stepper
moves to core, where the goal's sheet takes it too.

Library: the counts line includes files (PDFs); Refresh in the app bar
and pulling the list down sync now; a list that can't be read offers
Retry, which reads it again; the star keeps its square corners.

Studyset sheet: "Title *", the secondary title explained behind a
question mark, Inherit as a box beside the colour, and the description
in up to three lines with a chevron. Move sheet: round marks, the
studyset itself marked as current, the top level only while it is
inside another, archived studysets last under their heading, the
destination named in the footer, and a new studyset to move into, made
only once the move is.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
Tizian 「ティツィアーン」 2026-10-08 11:12:23 +02:00
commit aa69be47d1
Signed by: raisondetredev
GPG key ID: 07F6FCF405488B64

View file

@ -98,7 +98,7 @@ class AppLocalizationsDe extends AppLocalizations {
@override
String get studysetSheetSecondaryHelper =>
'Wird als kleines Label über dem Titel angezeigt.';
'Wird als kleines Label über dem Titel auf Karten und im Kopf des Lernsets angezeigt. Pfade nutzen es, um Stufen zu kennzeichnen (Challenge, Meilenstein, Lektion).';
@override
String get studysetSheetColor => 'Farbe';
@ -171,6 +171,23 @@ class AppLocalizationsDe extends AppLocalizations {
return '$_temp0';
}
@override
String studysetCountFiles(int count) {
String _temp0 = intl.Intl.pluralLogic(
count,
locale: localeName,
other: '$count Dateien',
one: '1 Datei',
);
return '$_temp0';
}
@override
String get libraryRefresh => 'Aktualisieren';
@override
String get libraryRetry => 'Erneut versuchen';
@override
String get studysetNoContent => 'Noch kein Inhalt';
@ -845,20 +862,37 @@ class AppLocalizationsDe extends AppLocalizations {
String get studysetMoveTopLevel => 'Oberste Ebene';
@override
String get studysetMoveCurrent => 'Aktueller Ort';
String get studysetMoveCurrent => '(aktuell)';
@override
String get studysetMoveTopLevelRow => 'Oberste Ebene (in keinem Lernset)';
@override
String get studysetMoveArchived => 'Archiviert';
@override
String get studysetMoveNew => 'Neues Lernset';
@override
String get studysetMoveSelectDestination => 'Wähle ein Ziel';
@override
String studysetMoveDestination(String name) {
return 'Ziel: $name';
}
@override
String get studysetMoveConfirm => 'Verschieben';
@override
String get studysetMoveShowInside => 'Inhalt anzeigen';
String get studysetMoveShowInside => 'Unter-Lernsets anzeigen';
@override
String get studysetMoveHideInside => 'Inhalt ausblenden';
String get studysetMoveHideInside => 'Unter-Lernsets ausblenden';
@override
String studysetMoved(String destination) {
return 'Nach „$destination“ verschoben.';
String studysetMoved(String title, String destination) {
return '„$title“ nach $destination verschoben.';
}
@override
@ -877,11 +911,18 @@ class AppLocalizationsDe extends AppLocalizations {
String get studysetSheetDescription => 'Beschreibung';
@override
String get studysetSheetDescriptionAdd => 'Beschreibung hinzufügen';
String get studysetSheetDescriptionAdd =>
'Tippen, um eine Beschreibung hinzuzufügen';
@override
String get studysetSheetInheritColor =>
'Gleiche Farbe wie das Lernset, in dem es liegt';
String get studysetSheetDescriptionAdded =>
'Beschreibung hinzugefügt — zum Bearbeiten tippen';
@override
String get studysetSheetInheritColor => 'Erben';
@override
String get fieldRequired => 'Pflichtfeld';
@override
String get exploreTitle => 'Entdecken';
@ -2179,11 +2220,14 @@ class AppLocalizationsDe extends AppLocalizations {
String get homeAllHidden => 'Alle Widgets sind ausgeblendet';
@override
String get homeAllHiddenHint =>
'Halte hier lange gedrückt, um welche zurückzuholen.';
String get homeAllHiddenBody =>
'Blende einige wieder ein, um dein Dashboard zu füllen.';
@override
String get homeWidgetGoal => 'Lernziel';
String get homeCustomise => 'Anpassen';
@override
String get homeWidgetGoal => 'Tagesziel';
@override
String get homeWidgetWeek => 'Wochenübersicht';
@ -2299,17 +2343,6 @@ class AppLocalizationsDe extends AppLocalizations {
@override
String get weekRestDay => 'Ruhetag';
@override
String weekDueCount(int count) {
String _temp0 = intl.Intl.pluralLogic(
count,
locale: localeName,
other: '$count Karten fällig',
one: '1 Karte fällig',
);
return '$_temp0';
}
@override
String get heatmapLess => 'Weniger';
@ -2334,7 +2367,6 @@ class AppLocalizationsDe extends AppLocalizations {
locale: localeName,
other: '$count Aktivitäten',
one: '1 Aktivität',
zero: 'Nichts',
);
return '$_temp0 · $date';
}
@ -3167,7 +3199,7 @@ class AppLocalizationsDe extends AppLocalizations {
String get imageOpenPdfPage => 'PDF auf dieser Seite öffnen';
@override
String get homeWidgetDeadlines => 'Lesefristen';
String get homeWidgetDeadlines => 'PDF-Lesefristen';
@override
String get deadlinesTitle => 'Lesefristen';