feat(learn): pick up learning on Home, the studysets studied latest first, and Progress closer to Vaia's
Home gets a widget of its own, Pick up learning, below the goal: the studysets at the top of the library that were studied, the one rated last first, so one studied long ago sinks. Three show, the others behind Show more. Each shows its name, which opens it, how much is learnt, when it was last studied, and today's task (cards to review, new cards to learn), which starts studying it, outlined while reviews wait. The progress is the library's, worked out once for every screen; when each was last studied comes from the reviews Home reads anyway. With nothing studied it takes no room. A dashboard arranged before it gets the widget below the goal, wherever the goal is: a widget a layout misses now goes after the one before it in a new dashboard, no longer at the end. On a studyset's Progress, the tiles are filled without an outline, To review has a history icon (amber while cards are due), the learnt bar is thicker, and the exam follows the figures, as Vaia asks for its date there: an invitation to choose it, opening the study plan's sheet, or, once chosen, how ready the person is. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
447e00c52a
commit
a0bb75f1ad
5 changed files with 976 additions and 40 deletions
|
|
@ -1380,6 +1380,16 @@
|
|||
"readerCaptureFailed": "Die Seite konnte nicht dargestellt werden. Versuche es erneut, sobald sie geladen ist.",
|
||||
"readerScreenshotSaved": "Bildschirmfoto gespeichert",
|
||||
"imageOpenPdfPage": "PDF auf dieser Seite öffnen",
|
||||
"homeWidgetPickUp": "Weiterlernen",
|
||||
"homePickUpPlaceholder": "Die Lernsets, die du lernst, das zuletzt gelernte zuerst",
|
||||
"homePickUpStudied": "{days, plural, =0{Heute gelernt} =1{Gestern gelernt} other{Vor {days} Tagen gelernt}}",
|
||||
"homePickUpLearned": "{percent} % gelernt",
|
||||
"homePickUpReview": "{count, plural, =1{1 Karte wiederholen} other{{count} Karten wiederholen}}",
|
||||
"homePickUpLearn": "{count, plural, =1{1 neue Karte lernen} other{{count} neue Karten lernen}}",
|
||||
"homePickUpReviewAndLearn": "{reviews} wiederholen, {fresh} neue lernen",
|
||||
"homePickUpDone": "Heute nichts fällig",
|
||||
"homePickUpMore": "{count} weitere zeigen",
|
||||
"homePickUpFewer": "Weniger zeigen",
|
||||
"homeWidgetDeadlines": "PDF-Lesefristen",
|
||||
"deadlinesTitle": "Lesefristen",
|
||||
"deadlinesCurrent": "Aktuell",
|
||||
|
|
@ -1953,6 +1963,9 @@
|
|||
"progressToReview": "Zu wiederholen",
|
||||
"progressToReviewInfo": "Schon gelernte Karten, die heute wieder fällig sind.",
|
||||
"progressDueToday": "{count, plural, =1{Karte heute fällig} other{Karten heute fällig}}",
|
||||
"progressExamTitle": "Bereitest du dich auf eine Prüfung vor?",
|
||||
"progressExamHint": "Wähle sie und ihr Datum, um zu sehen, wie bereit du bist.",
|
||||
"progressExamChoose": "Prüfung wählen",
|
||||
"progressStudyTime": "Lernzeit",
|
||||
"progressStudyTimeInfo": "Wie lange du die Karteikarten dieses Lernsets in den letzten sieben Tagen gelernt hast, jede Karte höchstens eine Minute gezählt.",
|
||||
"progressThisWeek": "diese Woche",
|
||||
|
|
|
|||
|
|
@ -1577,6 +1577,22 @@
|
|||
"readerCaptureFailed": "The page couldn't be drawn. Try again once it has loaded.",
|
||||
"readerScreenshotSaved": "Screenshot saved",
|
||||
"imageOpenPdfPage": "Open the PDF at this page",
|
||||
"homeWidgetPickUp": "Pick up learning",
|
||||
"homePickUpPlaceholder": "The studysets you study, the latest first",
|
||||
"homePickUpStudied": "{days, plural, =0{Studied today} =1{Studied yesterday} other{Studied {days} days ago}}",
|
||||
"@homePickUpStudied": {"placeholders": {"days": {"type": "int"}}},
|
||||
"homePickUpLearned": "{percent} % learned",
|
||||
"@homePickUpLearned": {"placeholders": {"percent": {"type": "int"}}},
|
||||
"homePickUpReview": "{count, plural, =1{Review 1 card} other{Review {count} cards}}",
|
||||
"@homePickUpReview": {"placeholders": {"count": {"type": "int"}}},
|
||||
"homePickUpLearn": "{count, plural, =1{Learn 1 new card} other{Learn {count} new cards}}",
|
||||
"@homePickUpLearn": {"placeholders": {"count": {"type": "int"}}},
|
||||
"homePickUpReviewAndLearn": "Review {reviews}, learn {fresh} new",
|
||||
"@homePickUpReviewAndLearn": {"placeholders": {"reviews": {"type": "int"}, "fresh": {"type": "int"}}},
|
||||
"homePickUpDone": "Nothing due today",
|
||||
"homePickUpMore": "Show {count} more",
|
||||
"@homePickUpMore": {"placeholders": {"count": {"type": "int"}}},
|
||||
"homePickUpFewer": "Show fewer",
|
||||
"homeWidgetDeadlines": "PDF reading deadlines",
|
||||
"deadlinesTitle": "Reading deadlines",
|
||||
"deadlinesCurrent": "Current",
|
||||
|
|
@ -2329,6 +2345,9 @@
|
|||
"progressToReviewInfo": "Cards studied before that are due again today.",
|
||||
"progressDueToday": "{count, plural, =1{card due today} other{cards due today}}",
|
||||
"@progressDueToday": {"placeholders": {"count": {"type": "int"}}},
|
||||
"progressExamTitle": "Preparing for an exam?",
|
||||
"progressExamHint": "Choose it and its date to see how ready you are.",
|
||||
"progressExamChoose": "Choose the exam",
|
||||
"progressStudyTime": "Study time",
|
||||
"progressStudyTimeInfo": "How long you studied this studyset's flashcards in the last seven days, each card counted for at most a minute.",
|
||||
"progressThisWeek": "this week",
|
||||
|
|
|
|||
|
|
@ -8140,6 +8140,66 @@ abstract class AppLocalizations {
|
|||
/// **'Open the PDF at this page'**
|
||||
String get imageOpenPdfPage;
|
||||
|
||||
/// No description provided for @homeWidgetPickUp.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Pick up learning'**
|
||||
String get homeWidgetPickUp;
|
||||
|
||||
/// No description provided for @homePickUpPlaceholder.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'The studysets you study, the latest first'**
|
||||
String get homePickUpPlaceholder;
|
||||
|
||||
/// No description provided for @homePickUpStudied.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{days, plural, =0{Studied today} =1{Studied yesterday} other{Studied {days} days ago}}'**
|
||||
String homePickUpStudied(int days);
|
||||
|
||||
/// No description provided for @homePickUpLearned.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{percent} % learned'**
|
||||
String homePickUpLearned(int percent);
|
||||
|
||||
/// No description provided for @homePickUpReview.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{count, plural, =1{Review 1 card} other{Review {count} cards}}'**
|
||||
String homePickUpReview(int count);
|
||||
|
||||
/// No description provided for @homePickUpLearn.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{count, plural, =1{Learn 1 new card} other{Learn {count} new cards}}'**
|
||||
String homePickUpLearn(int count);
|
||||
|
||||
/// No description provided for @homePickUpReviewAndLearn.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Review {reviews}, learn {fresh} new'**
|
||||
String homePickUpReviewAndLearn(int reviews, int fresh);
|
||||
|
||||
/// No description provided for @homePickUpDone.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Nothing due today'**
|
||||
String get homePickUpDone;
|
||||
|
||||
/// No description provided for @homePickUpMore.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Show {count} more'**
|
||||
String homePickUpMore(int count);
|
||||
|
||||
/// No description provided for @homePickUpFewer.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Show fewer'**
|
||||
String get homePickUpFewer;
|
||||
|
||||
/// No description provided for @homeWidgetDeadlines.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
|
|
@ -11534,6 +11594,24 @@ abstract class AppLocalizations {
|
|||
/// **'{count, plural, =1{card due today} other{cards due today}}'**
|
||||
String progressDueToday(int count);
|
||||
|
||||
/// No description provided for @progressExamTitle.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Preparing for an exam?'**
|
||||
String get progressExamTitle;
|
||||
|
||||
/// No description provided for @progressExamHint.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Choose it and its date to see how ready you are.'**
|
||||
String get progressExamHint;
|
||||
|
||||
/// No description provided for @progressExamChoose.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Choose the exam'**
|
||||
String get progressExamChoose;
|
||||
|
||||
/// No description provided for @progressStudyTime.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
|
|
|
|||
|
|
@ -5006,6 +5006,68 @@ class AppLocalizationsDe extends AppLocalizations {
|
|||
@override
|
||||
String get imageOpenPdfPage => 'PDF auf dieser Seite öffnen';
|
||||
|
||||
@override
|
||||
String get homeWidgetPickUp => 'Weiterlernen';
|
||||
|
||||
@override
|
||||
String get homePickUpPlaceholder =>
|
||||
'Die Lernsets, die du lernst, das zuletzt gelernte zuerst';
|
||||
|
||||
@override
|
||||
String homePickUpStudied(int days) {
|
||||
String _temp0 = intl.Intl.pluralLogic(
|
||||
days,
|
||||
locale: localeName,
|
||||
other: 'Vor $days Tagen gelernt',
|
||||
one: 'Gestern gelernt',
|
||||
zero: 'Heute gelernt',
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String homePickUpLearned(int percent) {
|
||||
return '$percent % gelernt';
|
||||
}
|
||||
|
||||
@override
|
||||
String homePickUpReview(int count) {
|
||||
String _temp0 = intl.Intl.pluralLogic(
|
||||
count,
|
||||
locale: localeName,
|
||||
other: '$count Karten wiederholen',
|
||||
one: '1 Karte wiederholen',
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String homePickUpLearn(int count) {
|
||||
String _temp0 = intl.Intl.pluralLogic(
|
||||
count,
|
||||
locale: localeName,
|
||||
other: '$count neue Karten lernen',
|
||||
one: '1 neue Karte lernen',
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String homePickUpReviewAndLearn(int reviews, int fresh) {
|
||||
return '$reviews wiederholen, $fresh neue lernen';
|
||||
}
|
||||
|
||||
@override
|
||||
String get homePickUpDone => 'Heute nichts fällig';
|
||||
|
||||
@override
|
||||
String homePickUpMore(int count) {
|
||||
return '$count weitere zeigen';
|
||||
}
|
||||
|
||||
@override
|
||||
String get homePickUpFewer => 'Weniger zeigen';
|
||||
|
||||
@override
|
||||
String get homeWidgetDeadlines => 'PDF-Lesefristen';
|
||||
|
||||
|
|
@ -7301,6 +7363,16 @@ class AppLocalizationsDe extends AppLocalizations {
|
|||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String get progressExamTitle => 'Bereitest du dich auf eine Prüfung vor?';
|
||||
|
||||
@override
|
||||
String get progressExamHint =>
|
||||
'Wähle sie und ihr Datum, um zu sehen, wie bereit du bist.';
|
||||
|
||||
@override
|
||||
String get progressExamChoose => 'Prüfung wählen';
|
||||
|
||||
@override
|
||||
String get progressStudyTime => 'Lernzeit';
|
||||
|
||||
|
|
|
|||
|
|
@ -4959,6 +4959,68 @@ class AppLocalizationsEn extends AppLocalizations {
|
|||
@override
|
||||
String get imageOpenPdfPage => 'Open the PDF at this page';
|
||||
|
||||
@override
|
||||
String get homeWidgetPickUp => 'Pick up learning';
|
||||
|
||||
@override
|
||||
String get homePickUpPlaceholder =>
|
||||
'The studysets you study, the latest first';
|
||||
|
||||
@override
|
||||
String homePickUpStudied(int days) {
|
||||
String _temp0 = intl.Intl.pluralLogic(
|
||||
days,
|
||||
locale: localeName,
|
||||
other: 'Studied $days days ago',
|
||||
one: 'Studied yesterday',
|
||||
zero: 'Studied today',
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String homePickUpLearned(int percent) {
|
||||
return '$percent % learned';
|
||||
}
|
||||
|
||||
@override
|
||||
String homePickUpReview(int count) {
|
||||
String _temp0 = intl.Intl.pluralLogic(
|
||||
count,
|
||||
locale: localeName,
|
||||
other: 'Review $count cards',
|
||||
one: 'Review 1 card',
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String homePickUpLearn(int count) {
|
||||
String _temp0 = intl.Intl.pluralLogic(
|
||||
count,
|
||||
locale: localeName,
|
||||
other: 'Learn $count new cards',
|
||||
one: 'Learn 1 new card',
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String homePickUpReviewAndLearn(int reviews, int fresh) {
|
||||
return 'Review $reviews, learn $fresh new';
|
||||
}
|
||||
|
||||
@override
|
||||
String get homePickUpDone => 'Nothing due today';
|
||||
|
||||
@override
|
||||
String homePickUpMore(int count) {
|
||||
return 'Show $count more';
|
||||
}
|
||||
|
||||
@override
|
||||
String get homePickUpFewer => 'Show fewer';
|
||||
|
||||
@override
|
||||
String get homeWidgetDeadlines => 'PDF reading deadlines';
|
||||
|
||||
|
|
@ -7233,6 +7295,16 @@ class AppLocalizationsEn extends AppLocalizations {
|
|||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String get progressExamTitle => 'Preparing for an exam?';
|
||||
|
||||
@override
|
||||
String get progressExamHint =>
|
||||
'Choose it and its date to see how ready you are.';
|
||||
|
||||
@override
|
||||
String get progressExamChoose => 'Choose the exam';
|
||||
|
||||
@override
|
||||
String get progressStudyTime => 'Study time';
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue