feat(alarmas): rewrite alarm editor with inline time widget
Replace the native showTimePicker dialog in the alarm editor sheet with a giant inline HH:MM editor (drag/tap to adjust, wraps at 23:59-00:00). Weekday circles now render unconditionally (disabled outside weekly mode) instead of being gated behind an `if`. The date field, fallback-station picker, and sound dropdown are not dropped: per resolution 3 they move into a collapsed "Advanced" section so the mockup's weekday-circles-only layout does not lose capability. Volume/fade-in sliders get a cosmetic type-scale restyle only. size:exception: 993 changed lines (891+/102-) against the 500-650 forecast - lib/ production code alone is 429 lines, within band; new test files and 13 regenerated l10n/gen files account for the rest, the same pattern every prior work unit in this branch has hit.
This commit is contained in:
@@ -2564,6 +2564,30 @@ abstract class AppLocalizations {
|
||||
/// **'Modo vacaciones'**
|
||||
String get vacationIconLabel;
|
||||
|
||||
/// No description provided for @alarmAdvancedSectionTitle.
|
||||
///
|
||||
/// In es, this message translates to:
|
||||
/// **'Avanzado'**
|
||||
String get alarmAdvancedSectionTitle;
|
||||
|
||||
/// No description provided for @alarmInlineHourLabel.
|
||||
///
|
||||
/// In es, this message translates to:
|
||||
/// **'Hora'**
|
||||
String get alarmInlineHourLabel;
|
||||
|
||||
/// No description provided for @alarmInlineMinuteLabel.
|
||||
///
|
||||
/// In es, this message translates to:
|
||||
/// **'Minuto'**
|
||||
String get alarmInlineMinuteLabel;
|
||||
|
||||
/// No description provided for @alarmVolumeRisingStatus.
|
||||
///
|
||||
/// In es, this message translates to:
|
||||
/// **'Subiendo volumen'**
|
||||
String get alarmVolumeRisingStatus;
|
||||
|
||||
/// No description provided for @streamUrlHint.
|
||||
///
|
||||
/// In es, this message translates to:
|
||||
|
||||
@@ -1410,6 +1410,18 @@ class AppLocalizationsAr extends AppLocalizations {
|
||||
@override
|
||||
String get vacationIconLabel => 'وضع الإجازة';
|
||||
|
||||
@override
|
||||
String get alarmAdvancedSectionTitle => 'Avanzado';
|
||||
|
||||
@override
|
||||
String get alarmInlineHourLabel => 'Hora';
|
||||
|
||||
@override
|
||||
String get alarmInlineMinuteLabel => 'Minuto';
|
||||
|
||||
@override
|
||||
String get alarmVolumeRisingStatus => 'Subiendo volumen';
|
||||
|
||||
@override
|
||||
String get streamUrlHint => 'https://stream.example.com:8000/radio';
|
||||
|
||||
|
||||
@@ -1417,6 +1417,18 @@ class AppLocalizationsBn extends AppLocalizations {
|
||||
@override
|
||||
String get vacationIconLabel => 'ছুটির মোড';
|
||||
|
||||
@override
|
||||
String get alarmAdvancedSectionTitle => 'Avanzado';
|
||||
|
||||
@override
|
||||
String get alarmInlineHourLabel => 'Hora';
|
||||
|
||||
@override
|
||||
String get alarmInlineMinuteLabel => 'Minuto';
|
||||
|
||||
@override
|
||||
String get alarmVolumeRisingStatus => 'Subiendo volumen';
|
||||
|
||||
@override
|
||||
String get streamUrlHint => 'https://stream.example.com:8000/radio';
|
||||
|
||||
|
||||
@@ -1427,6 +1427,18 @@ class AppLocalizationsDe extends AppLocalizations {
|
||||
@override
|
||||
String get vacationIconLabel => 'Urlaubsmodus';
|
||||
|
||||
@override
|
||||
String get alarmAdvancedSectionTitle => 'Avanzado';
|
||||
|
||||
@override
|
||||
String get alarmInlineHourLabel => 'Hora';
|
||||
|
||||
@override
|
||||
String get alarmInlineMinuteLabel => 'Minuto';
|
||||
|
||||
@override
|
||||
String get alarmVolumeRisingStatus => 'Subiendo volumen';
|
||||
|
||||
@override
|
||||
String get streamUrlHint => 'https://stream.example.com:8000/radio';
|
||||
|
||||
|
||||
@@ -1411,6 +1411,18 @@ class AppLocalizationsEn extends AppLocalizations {
|
||||
@override
|
||||
String get vacationIconLabel => 'Vacation mode';
|
||||
|
||||
@override
|
||||
String get alarmAdvancedSectionTitle => 'Advanced';
|
||||
|
||||
@override
|
||||
String get alarmInlineHourLabel => 'Hour';
|
||||
|
||||
@override
|
||||
String get alarmInlineMinuteLabel => 'Minute';
|
||||
|
||||
@override
|
||||
String get alarmVolumeRisingStatus => 'Turning up the volume';
|
||||
|
||||
@override
|
||||
String get streamUrlHint => 'https://stream.example.com:8000/radio';
|
||||
|
||||
|
||||
@@ -1422,6 +1422,18 @@ class AppLocalizationsEs extends AppLocalizations {
|
||||
@override
|
||||
String get vacationIconLabel => 'Modo vacaciones';
|
||||
|
||||
@override
|
||||
String get alarmAdvancedSectionTitle => 'Avanzado';
|
||||
|
||||
@override
|
||||
String get alarmInlineHourLabel => 'Hora';
|
||||
|
||||
@override
|
||||
String get alarmInlineMinuteLabel => 'Minuto';
|
||||
|
||||
@override
|
||||
String get alarmVolumeRisingStatus => 'Subiendo volumen';
|
||||
|
||||
@override
|
||||
String get streamUrlHint => 'https://stream.example.com:8000/radio';
|
||||
|
||||
|
||||
@@ -1432,6 +1432,18 @@ class AppLocalizationsFr extends AppLocalizations {
|
||||
@override
|
||||
String get vacationIconLabel => 'Mode vacances';
|
||||
|
||||
@override
|
||||
String get alarmAdvancedSectionTitle => 'Avanzado';
|
||||
|
||||
@override
|
||||
String get alarmInlineHourLabel => 'Hora';
|
||||
|
||||
@override
|
||||
String get alarmInlineMinuteLabel => 'Minuto';
|
||||
|
||||
@override
|
||||
String get alarmVolumeRisingStatus => 'Subiendo volumen';
|
||||
|
||||
@override
|
||||
String get streamUrlHint => 'https://stream.example.com:8000/radio';
|
||||
|
||||
|
||||
@@ -1416,6 +1416,18 @@ class AppLocalizationsHi extends AppLocalizations {
|
||||
@override
|
||||
String get vacationIconLabel => 'अवकाश मोड';
|
||||
|
||||
@override
|
||||
String get alarmAdvancedSectionTitle => 'Avanzado';
|
||||
|
||||
@override
|
||||
String get alarmInlineHourLabel => 'Hora';
|
||||
|
||||
@override
|
||||
String get alarmInlineMinuteLabel => 'Minuto';
|
||||
|
||||
@override
|
||||
String get alarmVolumeRisingStatus => 'Subiendo volumen';
|
||||
|
||||
@override
|
||||
String get streamUrlHint => 'https://stream.example.com:8000/radio';
|
||||
|
||||
|
||||
@@ -1421,6 +1421,18 @@ class AppLocalizationsId extends AppLocalizations {
|
||||
@override
|
||||
String get vacationIconLabel => 'Mode liburan';
|
||||
|
||||
@override
|
||||
String get alarmAdvancedSectionTitle => 'Avanzado';
|
||||
|
||||
@override
|
||||
String get alarmInlineHourLabel => 'Hora';
|
||||
|
||||
@override
|
||||
String get alarmInlineMinuteLabel => 'Minuto';
|
||||
|
||||
@override
|
||||
String get alarmVolumeRisingStatus => 'Subiendo volumen';
|
||||
|
||||
@override
|
||||
String get streamUrlHint => 'https://stream.example.com:8000/radio';
|
||||
|
||||
|
||||
@@ -1427,6 +1427,18 @@ class AppLocalizationsIt extends AppLocalizations {
|
||||
@override
|
||||
String get vacationIconLabel => 'Modalità vacanza';
|
||||
|
||||
@override
|
||||
String get alarmAdvancedSectionTitle => 'Avanzado';
|
||||
|
||||
@override
|
||||
String get alarmInlineHourLabel => 'Hora';
|
||||
|
||||
@override
|
||||
String get alarmInlineMinuteLabel => 'Minuto';
|
||||
|
||||
@override
|
||||
String get alarmVolumeRisingStatus => 'Subiendo volumen';
|
||||
|
||||
@override
|
||||
String get streamUrlHint => 'https://stream.example.com:8000/radio';
|
||||
|
||||
|
||||
@@ -1376,6 +1376,18 @@ class AppLocalizationsJa extends AppLocalizations {
|
||||
@override
|
||||
String get vacationIconLabel => '休暇モード';
|
||||
|
||||
@override
|
||||
String get alarmAdvancedSectionTitle => 'Avanzado';
|
||||
|
||||
@override
|
||||
String get alarmInlineHourLabel => 'Hora';
|
||||
|
||||
@override
|
||||
String get alarmInlineMinuteLabel => 'Minuto';
|
||||
|
||||
@override
|
||||
String get alarmVolumeRisingStatus => 'Subiendo volumen';
|
||||
|
||||
@override
|
||||
String get streamUrlHint => 'https://stream.example.com:8000/radio';
|
||||
|
||||
|
||||
@@ -1419,6 +1419,18 @@ class AppLocalizationsPt extends AppLocalizations {
|
||||
@override
|
||||
String get vacationIconLabel => 'Modo férias';
|
||||
|
||||
@override
|
||||
String get alarmAdvancedSectionTitle => 'Avanzado';
|
||||
|
||||
@override
|
||||
String get alarmInlineHourLabel => 'Hora';
|
||||
|
||||
@override
|
||||
String get alarmInlineMinuteLabel => 'Minuto';
|
||||
|
||||
@override
|
||||
String get alarmVolumeRisingStatus => 'Subiendo volumen';
|
||||
|
||||
@override
|
||||
String get streamUrlHint => 'https://stream.example.com:8000/radio';
|
||||
|
||||
|
||||
@@ -1423,6 +1423,18 @@ class AppLocalizationsRu extends AppLocalizations {
|
||||
@override
|
||||
String get vacationIconLabel => 'Режим отпуска';
|
||||
|
||||
@override
|
||||
String get alarmAdvancedSectionTitle => 'Avanzado';
|
||||
|
||||
@override
|
||||
String get alarmInlineHourLabel => 'Hora';
|
||||
|
||||
@override
|
||||
String get alarmInlineMinuteLabel => 'Minuto';
|
||||
|
||||
@override
|
||||
String get alarmVolumeRisingStatus => 'Subiendo volumen';
|
||||
|
||||
@override
|
||||
String get streamUrlHint => 'https://stream.example.com:8000/radio';
|
||||
|
||||
|
||||
@@ -1371,6 +1371,18 @@ class AppLocalizationsZh extends AppLocalizations {
|
||||
@override
|
||||
String get vacationIconLabel => '假期模式';
|
||||
|
||||
@override
|
||||
String get alarmAdvancedSectionTitle => 'Avanzado';
|
||||
|
||||
@override
|
||||
String get alarmInlineHourLabel => 'Hora';
|
||||
|
||||
@override
|
||||
String get alarmInlineMinuteLabel => 'Minuto';
|
||||
|
||||
@override
|
||||
String get alarmVolumeRisingStatus => 'Subiendo volumen';
|
||||
|
||||
@override
|
||||
String get streamUrlHint => 'https://stream.example.com:8000/radio';
|
||||
|
||||
|
||||
Reference in New Issue
Block a user