-
-
Notifications
You must be signed in to change notification settings - Fork 956
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Alarm: Simplify alarm alerting screen (and fix bug with alerting on time value change) #2211
base: main
Are you sure you want to change the base?
Conversation
Build size and comparison to main:
|
Sorry I misread what this is doing. I think it's a bad idea to stop the alert on changing the time values, since those buttons are large and maybe too easily activated by the sensitive touch panel. Maybe it would be best to disable all buttons other than the stop button when ringing? It doesn't make too much sense to me what the semantics of changing the time on a ringing alarm are I'd like to understand why it's currently broken though - did you manage to get to the bottom of this? |
I think the reason is this: All exit paths but the time value change (so not considering this fix) call |
I also think we should do what you said and fully disable the time change buttons while the alarm is ringing. While we are at it, lets go one step further and disable all other buttons as well. The info button does not do anything useful in that situation anyway, it shows some meaningless value, and why should you be able to change the recurrence when you are not allowed to change the time. So in line with #2082, I would make the alarm disable screen have only one button, the I updated the PR to reflect this. This is what it looks like: Pressing the big red or the physical button brings you back to the normal alarm settings display and stops the alarm. #2082 also calls for a snooze function, but this leads to additional questions that would warrant an own pull request and discussion. |
Really nice analysis of the root cause, thanks for writing it up :) The new UI looks good to me, agree that snooze can go in a separate PR (and the stop button could easily be half width with snooze for the other half, so that should work) Code at a glance looks sensible, I should be able to review it properly soon |
Fixes #2206
When Alerting, the handlers for swiping and hard- and software buttons correctly deal with this.
The handler for time value changes did not.
Now a value change will also stop the alert.For the scenario presented in #2206 (makeshift snooze), this means that after setting a new time, the new alarm also needs to be enabled again. However, I think this is not a problem, because the UI clearly presents that the alarm is disabled and it can be re-enabled exactly like setting an alarm always works.
Edit: Now fixing the problem by making the value change impossible in the first place by simplifying the alerting screen.