feat(learn): a learning path's Scroll view, chosen in the study settings

A path shows either one step at a time (Steps) or on one page (Scroll,
as Tomorrow University's): the steps one below the other up to the first
question not answered right, answered in place with a lock below it, the
page running on once it is right, Finish at its end. A text step is done
once its end was on screen. The outline of the steps (done ticked, the
one in view marked, those beyond the question locked, a tap scrolling
there) is a column from expanded windows on, a drawer from the bar below.

The choice is the person's study option (`StudyOptions.pathView`,
settings schema 15), in Settings › Study and the session settings.

Whats-New: Learning paths can show on one scrolling page with an outline beside them: choose Scroll under Settings › Study.
Whats-New-De: Lernpfade lassen sich auf einer scrollbaren Seite mit Gliederung daneben zeigen: unter Einstellungen › Lernen „Scrollen“ wählen.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
Tizian 「ティツィアーン」 2026-11-10 20:55:19 +01:00
commit 690f69fa55
Signed by: raisondetredev
GPG key ID: 07F6FCF405488B64
5 changed files with 1208 additions and 127 deletions

View file

@ -2176,5 +2176,11 @@
"cardHintsFurigana": "Furigana",
"cardHintsPinyin": "Pinyin",
"cardHintsReadings": "Text darüber",
"cardHintsReadingsUnreviewed": "Manche Lesungen wurden automatisch erstellt und nicht geprüft."
"cardHintsReadingsUnreviewed": "Manche Lesungen wurden automatisch erstellt und nicht geprüft.",
"settingsPathView": "Lernpfade",
"settingsPathViewHelp": "Schritte zeigt einen Schritt nach dem anderen. Scrollen zeigt einen Pfad auf einer Seite bis zu seiner nächsten Frage, mit seiner Gliederung daneben.",
"pathViewSteps": "Schritte",
"pathViewScroll": "Scrollen",
"runnerOutline": "Gliederung",
"runnerScrollLocked": "Beantworte die Frage oben, um weiterzumachen."
}

View file

@ -2678,5 +2678,17 @@
"cardHintsReadings": "Text above",
"@cardHintsReadings": {"description": "The hints sheet's switch showing the text above its sentences, where it is neither furigana nor pinyin."},
"cardHintsReadingsUnreviewed": "Some readings were made automatically and not reviewed.",
"@cardHintsReadingsUnreviewed": {"description": "Below a hint whose readings (from Tatoeba, made by MeCab or automatic pinyin) no one reviewed."}
"@cardHintsReadingsUnreviewed": {"description": "Below a hint whose readings (from Tatoeba, made by MeCab or automatic pinyin) no one reviewed."},
"settingsPathView": "Learning paths",
"@settingsPathView": {"description": "The Study settings' choice of how a learning path shows its steps."},
"settingsPathViewHelp": "Steps shows one step at a time. Scroll shows a path on one page up to its next question, with its outline beside it.",
"@settingsPathViewHelp": {"description": "Explains the two ways a learning path shows."},
"pathViewSteps": "Steps",
"@pathViewSteps": {"description": "A learning path shown one step at a time."},
"pathViewScroll": "Scroll",
"@pathViewScroll": {"description": "A learning path shown on one page, scrolled through."},
"runnerOutline": "Outline",
"@runnerOutline": {"description": "The list of a learning path's steps beside or over its page in the Scroll view."},
"runnerScrollLocked": "Answer the question above to go on.",
"@runnerScrollLocked": {"description": "Below the question a learning path's page stops at, in the Scroll view."}
}

View file

@ -12841,6 +12841,42 @@ abstract class AppLocalizations {
/// In en, this message translates to:
/// **'Some readings were made automatically and not reviewed.'**
String get cardHintsReadingsUnreviewed;
/// The Study settings' choice of how a learning path shows its steps.
///
/// In en, this message translates to:
/// **'Learning paths'**
String get settingsPathView;
/// Explains the two ways a learning path shows.
///
/// In en, this message translates to:
/// **'Steps shows one step at a time. Scroll shows a path on one page up to its next question, with its outline beside it.'**
String get settingsPathViewHelp;
/// A learning path shown one step at a time.
///
/// In en, this message translates to:
/// **'Steps'**
String get pathViewSteps;
/// A learning path shown on one page, scrolled through.
///
/// In en, this message translates to:
/// **'Scroll'**
String get pathViewScroll;
/// The list of a learning path's steps beside or over its page in the Scroll view.
///
/// In en, this message translates to:
/// **'Outline'**
String get runnerOutline;
/// Below the question a learning path's page stops at, in the Scroll view.
///
/// In en, this message translates to:
/// **'Answer the question above to go on.'**
String get runnerScrollLocked;
}
class _AppLocalizationsDelegate

View file

@ -8204,4 +8204,24 @@ class AppLocalizationsDe extends AppLocalizations {
@override
String get cardHintsReadingsUnreviewed =>
'Manche Lesungen wurden automatisch erstellt und nicht geprüft.';
@override
String get settingsPathView => 'Lernpfade';
@override
String get settingsPathViewHelp =>
'Schritte zeigt einen Schritt nach dem anderen. Scrollen zeigt einen Pfad auf einer Seite bis zu seiner nächsten Frage, mit seiner Gliederung daneben.';
@override
String get pathViewSteps => 'Schritte';
@override
String get pathViewScroll => 'Scrollen';
@override
String get runnerOutline => 'Gliederung';
@override
String get runnerScrollLocked =>
'Beantworte die Frage oben, um weiterzumachen.';
}

View file

@ -8131,6 +8131,25 @@ class AppLocalizationsEn extends AppLocalizations {
@override
String get cardHintsReadingsUnreviewed =>
'Some readings were made automatically and not reviewed.';
@override
String get settingsPathView => 'Learning paths';
@override
String get settingsPathViewHelp =>
'Steps shows one step at a time. Scroll shows a path on one page up to its next question, with its outline beside it.';
@override
String get pathViewSteps => 'Steps';
@override
String get pathViewScroll => 'Scroll';
@override
String get runnerOutline => 'Outline';
@override
String get runnerScrollLocked => 'Answer the question above to go on.';
}
/// The translations for English, as used in the United Kingdom (`en_GB`).