feat(train): a recording under way above the bar on every tab, and a saved one opens its page (ADR 0030, D60)

halkyon_ui's NavigationFrame takes a status, standing above the floating
bar below medium windows and at the foot of the screen's panel from there
on. Train's RecordingBar fills it while a recording runs or waits to be
saved: its activity, moving time and distance, paused or stopped, a tap
back to it. Saving now opens the workout's page in Home's tab.

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-31 12:12:55 +01:00
commit 7473366f66
Signed by: raisondetredev
GPG key ID: 07F6FCF405488B64
5 changed files with 301 additions and 15 deletions

View file

@ -566,5 +566,7 @@
"groupsLaterHint": "Mit anderen trainieren, in euren eigenen Gruppen, kommt in einer späteren Version von Train.",
"settingsTitle": "Einstellungen",
"settingsTraining": "Training",
"settingsVersion": "Version {version} (Build {build})"
"settingsVersion": "Version {version} (Build {build})",
"recordingBarStopped": "Angehalten: speichern oder verwerfen",
"recordingBarDistance": "{km} km"
}

View file

@ -714,5 +714,8 @@
"settingsTitle": "Settings",
"settingsTraining": "Training",
"settingsVersion": "Version {version} (build {build})",
"@settingsVersion": {"placeholders": {"version": {"type": "String"}, "build": {"type": "String"}}}
"@settingsVersion": {"placeholders": {"version": {"type": "String"}, "build": {"type": "String"}}},
"recordingBarStopped": "Stopped: save or discard it",
"recordingBarDistance": "{km} km",
"@recordingBarDistance": {"placeholders": {"km": {"type": "String"}}}
}

View file

@ -3423,6 +3423,18 @@ abstract class AppLocalizations {
/// In en, this message translates to:
/// **'Version {version} (build {build})'**
String settingsVersion(String version, String build);
/// No description provided for @recordingBarStopped.
///
/// In en, this message translates to:
/// **'Stopped: save or discard it'**
String get recordingBarStopped;
/// No description provided for @recordingBarDistance.
///
/// In en, this message translates to:
/// **'{km} km'**
String recordingBarDistance(String km);
}
class _AppLocalizationsDelegate

View file

@ -2052,4 +2052,12 @@ class AppLocalizationsDe extends AppLocalizations {
String settingsVersion(String version, String build) {
return 'Version $version (Build $build)';
}
@override
String get recordingBarStopped => 'Angehalten: speichern oder verwerfen';
@override
String recordingBarDistance(String km) {
return '$km km';
}
}

View file

@ -2040,6 +2040,14 @@ class AppLocalizationsEn extends AppLocalizations {
String settingsVersion(String version, String build) {
return 'Version $version (build $build)';
}
@override
String get recordingBarStopped => 'Stopped: save or discard it';
@override
String recordingBarDistance(String km) {
return '$km km';
}
}
/// The translations for English, as used in the United Kingdom (`en_GB`).