119602: Improve notification hiding toggle useability

This commit is contained in:
Andreas Awouters
2024-12-11 10:10:16 +01:00
parent 010b2f9693
commit c71c6667e0
3 changed files with 7 additions and 7 deletions

View File

@@ -42,7 +42,7 @@ export type AccessibilitySettings = Partial<FullAccessibilitySettings>;
* The accessibility settings object format used by the accessibility-settings component form. * The accessibility settings object format used by the accessibility-settings component form.
*/ */
export interface AccessibilitySettingsFormValues { export interface AccessibilitySettingsFormValues {
disableNotificationTimeOut: boolean, notificationTimeOutEnabled: boolean,
notificationTimeOut: string, notificationTimeOut: string,
liveRegionTimeOut: string, liveRegionTimeOut: string,
} }
@@ -250,8 +250,8 @@ export class AccessibilitySettingsService {
*/ */
convertFormValuesToStoredValues(settings: AccessibilitySettingsFormValues): FullAccessibilitySettings { convertFormValuesToStoredValues(settings: AccessibilitySettingsFormValues): FullAccessibilitySettings {
return { return {
notificationTimeOut: settings.disableNotificationTimeOut ? '0' notificationTimeOut: settings.notificationTimeOutEnabled ?
: secondsToMilliseconds(settings.notificationTimeOut), secondsToMilliseconds(settings.notificationTimeOut) : '0',
liveRegionTimeOut: secondsToMilliseconds(settings.liveRegionTimeOut), liveRegionTimeOut: secondsToMilliseconds(settings.liveRegionTimeOut),
}; };
} }
@@ -261,7 +261,7 @@ export class AccessibilitySettingsService {
*/ */
convertStoredValuesToFormValues(settings: AccessibilitySettings): AccessibilitySettingsFormValues { convertStoredValuesToFormValues(settings: AccessibilitySettings): AccessibilitySettingsFormValues {
return { return {
disableNotificationTimeOut: parseFloat(settings.notificationTimeOut) === 0, notificationTimeOutEnabled: parseFloat(settings.notificationTimeOut) !== 0,
notificationTimeOut: millisecondsToSeconds(settings.notificationTimeOut), notificationTimeOut: millisecondsToSeconds(settings.notificationTimeOut),
liveRegionTimeOut: millisecondsToSeconds(settings.liveRegionTimeOut), liveRegionTimeOut: millisecondsToSeconds(settings.liveRegionTimeOut),
}; };

View File

@@ -9,7 +9,7 @@
<div class="col-sm-5"> <div class="col-sm-5">
<ui-switch [id]="'disableNotificationTimeOutInput'" <ui-switch [id]="'disableNotificationTimeOutInput'"
[(ngModel)]="formValues.disableNotificationTimeOut" [(ngModel)]="formValues.notificationTimeOutEnabled"
[ngModelOptions]="{ standalone: true }" [ngModelOptions]="{ standalone: true }"
></ui-switch> ></ui-switch>
</div> </div>
@@ -31,7 +31,7 @@
<div class="col-sm-4"> <div class="col-sm-4">
<input [type]="'number'" [id]="'notificationTimeOutInput'" class="form-control" <input [type]="'number'" [id]="'notificationTimeOutInput'" class="form-control"
[placeholder]="getPlaceholder('notificationTimeOut')" [placeholder]="getPlaceholder('notificationTimeOut')"
[readOnly]="formValues.disableNotificationTimeOut" [readOnly]="!formValues.notificationTimeOutEnabled"
[(ngModel)]="formValues.notificationTimeOut" [ngModelOptions]="{ standalone: true }" [(ngModel)]="formValues.notificationTimeOut" [ngModelOptions]="{ standalone: true }"
[attr.aria-describedby]="'notificationTimeOutHint'"> [attr.aria-describedby]="'notificationTimeOutHint'">
</div> </div>

View File

@@ -1844,7 +1844,7 @@
"info.accessibility-settings.breadcrumbs": "Accessibility settings", "info.accessibility-settings.breadcrumbs": "Accessibility settings",
"info.accessibility-settings.disableNotificationTimeOut.label": "Disable automatic notification hiding", "info.accessibility-settings.disableNotificationTimeOut.label": "Hide notifications automatically",
"info.accessibility-settings.disableNotificationTimeOut.hint": "When this toggle is activated, notifications will remain until manually closed.", "info.accessibility-settings.disableNotificationTimeOut.hint": "When this toggle is activated, notifications will remain until manually closed.",