fix(todo): the permission to notify asked wherever a reminder is planned, and Settings saying while it is off (ADR 0033, D31)
On a fresh install Todo's reminders never showed: the permission to notify (Android 13's POST_NOTIFICATIONS, iOS' and macOS' alert) was asked only where a task's sheet chose its first reminder, so reminders typed in quick add, added by the automatic reminder or brought by sync were scheduled and dropped by the system without a word. Now NotificationAccess, the device's, reads whether notifications are allowed whenever the plan holds a reminder and asks where they aren't, once an app start, so that a refusal isn't met with the dialog again and again; the task sheet asks through it. While reminders are planned and notifications are off, Settings' Reminders say so, with Turn on: asked again, and where that doesn't allow it, the system's notification settings of the app opened (flutter_local_notifications' own call, nothing added). Read again whenever the app comes back. Whats-New: Todo asks to notify as soon as there is a reminder, and Settings › Reminders shows when notifications are off, with Turn on. Whats-New-De: Todo fragt nach Benachrichtigungen, sobald es eine Erinnerung gibt, und Einstellungen › Erinnerungen zeigt, wenn sie aus sind, mit Einschalten. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
d49331b210
commit
82f1bf2739
5 changed files with 458 additions and 33 deletions
|
|
@ -254,6 +254,9 @@
|
|||
"snoozeTitle": "Schlummern für",
|
||||
"snoozeMinutes": "{count, plural, =1{1 Minute} other{{count} Minuten}}",
|
||||
"reminderSnooze": "{count} Min. schlummern",
|
||||
"notificationsOffTitle": "Benachrichtigungen sind aus",
|
||||
"notificationsOffHint": "Erinnerungen erscheinen erst, wenn Halkyon Todo dich benachrichtigen darf.",
|
||||
"notificationsTurnOn": "Einschalten",
|
||||
"monthMore": "{count} weitere",
|
||||
"dayHeadingPattern": "EEEE, d. MMM",
|
||||
"overdueHide": "Überfälliges ausblenden",
|
||||
|
|
|
|||
|
|
@ -812,6 +812,18 @@
|
|||
}
|
||||
}
|
||||
},
|
||||
"notificationsOffTitle": "Notifications are off",
|
||||
"@notificationsOffTitle": {
|
||||
"description": "Settings' Reminders while notifications are off and reminders are planned (ADR 0033, D31)."
|
||||
},
|
||||
"notificationsOffHint": "Reminders can't show until Halkyon Todo may notify you.",
|
||||
"@notificationsOffHint": {
|
||||
"description": "Settings' Reminders while notifications are off and reminders are planned (ADR 0033, D31)."
|
||||
},
|
||||
"notificationsTurnOn": "Turn on",
|
||||
"@notificationsTurnOn": {
|
||||
"description": "Settings' Reminders while notifications are off and reminders are planned (ADR 0033, D31)."
|
||||
},
|
||||
"monthMore": "{count} more",
|
||||
"@monthMore": {
|
||||
"description": "A project's Calendar as a month on wide windows (ADR 0033, D17): a day's tasks that don't fit.",
|
||||
|
|
|
|||
|
|
@ -1624,6 +1624,24 @@ abstract class AppLocalizations {
|
|||
/// **'Snooze {count} min'**
|
||||
String reminderSnooze(int count);
|
||||
|
||||
/// Settings' Reminders while notifications are off and reminders are planned (ADR 0033, D31).
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Notifications are off'**
|
||||
String get notificationsOffTitle;
|
||||
|
||||
/// Settings' Reminders while notifications are off and reminders are planned (ADR 0033, D31).
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Reminders can\'t show until Halkyon Todo may notify you.'**
|
||||
String get notificationsOffHint;
|
||||
|
||||
/// Settings' Reminders while notifications are off and reminders are planned (ADR 0033, D31).
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Turn on'**
|
||||
String get notificationsTurnOn;
|
||||
|
||||
/// A project's Calendar as a month on wide windows (ADR 0033, D17): a day's tasks that don't fit.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
|
|
|
|||
|
|
@ -1006,6 +1006,16 @@ class AppLocalizationsDe extends AppLocalizations {
|
|||
return '$count Min. schlummern';
|
||||
}
|
||||
|
||||
@override
|
||||
String get notificationsOffTitle => 'Benachrichtigungen sind aus';
|
||||
|
||||
@override
|
||||
String get notificationsOffHint =>
|
||||
'Erinnerungen erscheinen erst, wenn Halkyon Todo dich benachrichtigen darf.';
|
||||
|
||||
@override
|
||||
String get notificationsTurnOn => 'Einschalten';
|
||||
|
||||
@override
|
||||
String monthMore(int count) {
|
||||
return '$count weitere';
|
||||
|
|
|
|||
|
|
@ -1006,6 +1006,16 @@ class AppLocalizationsEn extends AppLocalizations {
|
|||
return 'Snooze $count min';
|
||||
}
|
||||
|
||||
@override
|
||||
String get notificationsOffTitle => 'Notifications are off';
|
||||
|
||||
@override
|
||||
String get notificationsOffHint =>
|
||||
'Reminders can\'t show until Halkyon Todo may notify you.';
|
||||
|
||||
@override
|
||||
String get notificationsTurnOn => 'Turn on';
|
||||
|
||||
@override
|
||||
String monthMore(int count) {
|
||||
return '$count more';
|
||||
|
|
|
|||
Loading…
Reference in a new issue