feat(todo): the four tabs in Todo's frame, washed in strawberry, Settings from Browse

ADR 0033, step 1: go_router with a StatefulShellRoute and halkyon_ui's
NavigationFrame as Train's (D1), the tabs Today, Upcoming, Inbox and
Browse, each saying tasks come later (D2), every screen washing down in
strawberry (D3), and Settings over the tabs from Browse's cog, grouped in
cards: the operator's, the account, What's new and About Halkyon Todo,
the version below (D4). The account sheet and the empty home go.

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-01 00:57:44 +01:00
commit 492c657980
Signed by: raisondetredev
GPG key ID: 07F6FCF405488B64
5 changed files with 788 additions and 178 deletions

View file

@ -6,11 +6,20 @@
"instanceFirstStartSubtitle": "Wähle die Instanz, auf der deine Aufgaben liegen sollen. Jede betreibt jemand; weitere kannst du später hinzufügen.",
"homeEmptyTitle": "Hier ist noch nichts",
"homeEmptyHint": "Aufgaben kommen mit einer späteren Version von Halkyon Todo.",
"accountTitle": "Konto",
"accountDeleteMessage": "Dein Konto wird auf dem Server und auf all deinen Geräten gelöscht. Dies kann nicht rückgängig gemacht werden.",
"aboutTitle": "Über"
"aboutTitle": "Über Halkyon Todo",
"shellTabToday": "Heute",
"shellTabUpcoming": "Demnächst",
"shellTabInbox": "Eingang",
"shellTabBrowse": "Übersicht",
"todayLaterTitle": "Hier stehen die Aufgaben von heute",
"upcomingLaterTitle": "Hier stehen die nächsten Tage",
"inboxLaterTitle": "Hier stehen Aufgaben ohne Projekt",
"browseLaterTitle": "Hier stehen deine Projekte und Labels",
"tasksLaterHint": "Aufgaben kommen mit einer späteren Version von Halkyon Todo.",
"settingsTitle": "Einstellungen",
"settingsVersion": "Version {version} (Build {build})"
}

View file

@ -8,11 +8,21 @@
"instanceFirstStartSubtitle": "Choose the instance to keep your tasks on. Someone runs each one; you can add others later.",
"homeEmptyTitle": "Nothing here yet",
"homeEmptyHint": "Tasks come with a later version of Halkyon Todo.",
"accountTitle": "Account",
"accountDeleteMessage": "Your account is deleted on the server and on all your devices. This can't be undone.",
"aboutTitle": "About"
"aboutTitle": "About Halkyon Todo",
"shellTabToday": "Today",
"shellTabUpcoming": "Upcoming",
"shellTabInbox": "Inbox",
"shellTabBrowse": "Browse",
"todayLaterTitle": "Today's tasks come here",
"upcomingLaterTitle": "The days ahead come here",
"inboxLaterTitle": "Tasks without a project come here",
"browseLaterTitle": "Your projects and labels come here",
"tasksLaterHint": "Tasks come with a later version of Halkyon Todo.",
"settingsTitle": "Settings",
"settingsVersion": "Version {version} (build {build})",
"@settingsVersion": {"placeholders": {"version": {"type": "String"}, "build": {"type": "String"}}}
}

View file

@ -118,18 +118,6 @@ abstract class AppLocalizations {
/// **'Choose the instance to keep your tasks on. Someone runs each one; you can add others later.'**
String get instanceFirstStartSubtitle;
/// No description provided for @homeEmptyTitle.
///
/// In en, this message translates to:
/// **'Nothing here yet'**
String get homeEmptyTitle;
/// No description provided for @homeEmptyHint.
///
/// In en, this message translates to:
/// **'Tasks come with a later version of Halkyon Todo.'**
String get homeEmptyHint;
/// No description provided for @accountTitle.
///
/// In en, this message translates to:
@ -145,8 +133,74 @@ abstract class AppLocalizations {
/// No description provided for @aboutTitle.
///
/// In en, this message translates to:
/// **'About'**
/// **'About Halkyon Todo'**
String get aboutTitle;
/// No description provided for @shellTabToday.
///
/// In en, this message translates to:
/// **'Today'**
String get shellTabToday;
/// No description provided for @shellTabUpcoming.
///
/// In en, this message translates to:
/// **'Upcoming'**
String get shellTabUpcoming;
/// No description provided for @shellTabInbox.
///
/// In en, this message translates to:
/// **'Inbox'**
String get shellTabInbox;
/// No description provided for @shellTabBrowse.
///
/// In en, this message translates to:
/// **'Browse'**
String get shellTabBrowse;
/// No description provided for @todayLaterTitle.
///
/// In en, this message translates to:
/// **'Today\'s tasks come here'**
String get todayLaterTitle;
/// No description provided for @upcomingLaterTitle.
///
/// In en, this message translates to:
/// **'The days ahead come here'**
String get upcomingLaterTitle;
/// No description provided for @inboxLaterTitle.
///
/// In en, this message translates to:
/// **'Tasks without a project come here'**
String get inboxLaterTitle;
/// No description provided for @browseLaterTitle.
///
/// In en, this message translates to:
/// **'Your projects and labels come here'**
String get browseLaterTitle;
/// No description provided for @tasksLaterHint.
///
/// In en, this message translates to:
/// **'Tasks come with a later version of Halkyon Todo.'**
String get tasksLaterHint;
/// No description provided for @settingsTitle.
///
/// In en, this message translates to:
/// **'Settings'**
String get settingsTitle;
/// No description provided for @settingsVersion.
///
/// In en, this message translates to:
/// **'Version {version} (build {build})'**
String settingsVersion(String version, String build);
}
class _AppLocalizationsDelegate

View file

@ -19,13 +19,6 @@ class AppLocalizationsDe extends AppLocalizations {
String get instanceFirstStartSubtitle =>
'Wähle die Instanz, auf der deine Aufgaben liegen sollen. Jede betreibt jemand; weitere kannst du später hinzufügen.';
@override
String get homeEmptyTitle => 'Hier ist noch nichts';
@override
String get homeEmptyHint =>
'Aufgaben kommen mit einer späteren Version von Halkyon Todo.';
@override
String get accountTitle => 'Konto';
@ -34,5 +27,41 @@ class AppLocalizationsDe extends AppLocalizations {
'Dein Konto wird auf dem Server und auf all deinen Geräten gelöscht. Dies kann nicht rückgängig gemacht werden.';
@override
String get aboutTitle => 'Über';
String get aboutTitle => 'Über Halkyon Todo';
@override
String get shellTabToday => 'Heute';
@override
String get shellTabUpcoming => 'Demnächst';
@override
String get shellTabInbox => 'Eingang';
@override
String get shellTabBrowse => 'Übersicht';
@override
String get todayLaterTitle => 'Hier stehen die Aufgaben von heute';
@override
String get upcomingLaterTitle => 'Hier stehen die nächsten Tage';
@override
String get inboxLaterTitle => 'Hier stehen Aufgaben ohne Projekt';
@override
String get browseLaterTitle => 'Hier stehen deine Projekte und Labels';
@override
String get tasksLaterHint =>
'Aufgaben kommen mit einer späteren Version von Halkyon Todo.';
@override
String get settingsTitle => 'Einstellungen';
@override
String settingsVersion(String version, String build) {
return 'Version $version (Build $build)';
}
}

View file

@ -19,13 +19,6 @@ class AppLocalizationsEn extends AppLocalizations {
String get instanceFirstStartSubtitle =>
'Choose the instance to keep your tasks on. Someone runs each one; you can add others later.';
@override
String get homeEmptyTitle => 'Nothing here yet';
@override
String get homeEmptyHint =>
'Tasks come with a later version of Halkyon Todo.';
@override
String get accountTitle => 'Account';
@ -34,7 +27,43 @@ class AppLocalizationsEn extends AppLocalizations {
'Your account is deleted on the server and on all your devices. This can\'t be undone.';
@override
String get aboutTitle => 'About';
String get aboutTitle => 'About Halkyon Todo';
@override
String get shellTabToday => 'Today';
@override
String get shellTabUpcoming => 'Upcoming';
@override
String get shellTabInbox => 'Inbox';
@override
String get shellTabBrowse => 'Browse';
@override
String get todayLaterTitle => 'Today\'s tasks come here';
@override
String get upcomingLaterTitle => 'The days ahead come here';
@override
String get inboxLaterTitle => 'Tasks without a project come here';
@override
String get browseLaterTitle => 'Your projects and labels come here';
@override
String get tasksLaterHint =>
'Tasks come with a later version of Halkyon Todo.';
@override
String get settingsTitle => 'Settings';
@override
String settingsVersion(String version, String build) {
return 'Version $version (build $build)';
}
}
/// The translations for English, as used in the United Kingdom (`en_GB`).