AsteroidOS / asteroid-settings

Default settings app for AsteroidOS

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Respect user set screen brightness level in quick settings

eLtMosen opened this issue · comments

Currently, the quick settings override user selected brightness values.

One approach to keep the user selection would be to have a three stage button in quick settings that toggles between 1% - user setting and 100%. As hinted by @beroset

Love this idea! This would be comparible to a brightness boost (and brightness dim) mode.

I actually feel this could be a very weird UX. If the user once opens the settings app, sets the brightness to 100% and from there on only uses the quicksettings, they would alternate between 0%, 100% and 100% again which will probably look like a bug more than a feature.

I think that three sensible steps in the quicksettings, let's say 0-50-100 would be a much better UX than an arcane feature that is pretty hard to discover.

Also, who needs that much control over their watch's screen brightness anyway ? I typically set it to either 0 or 100%. I can see the need for something in between but I don't think this is the kind of feature that requires precise control.

Iirc someone suggested on matrix that we could have some sort of incomplete circle around the quicksettings to show the percentage, I think that's not a bad idea. If you see the need for more precise increments we could also have each tap increase the brightness by 10% or something

The UX is already a bit strange. All of the settings on the Display page remain as the user set them there except for Brightness. A user asked in matrix the other day:

What is the relationship between the brightness button in quick settings, and the brightness adjustment in setting?
Quick setting just does minimum or maximum?

That was the question that set this issue in motion. There are another couple of ways to do it:

  1. use this patch and add a setting to enable/disable the three-way setting for the quick controls
  2. replace the current brightness with two settings: max and min and have quick control toggle between them
  3. add a setting for the user to set whether the single brightness setting should be the min or max and have the quick control honor that
  4. document how it works somewhere and don't change any code

I don't feel strongly about it one way or the other.

Taking a step back, why do we have a user setting brightness at all?
It is buried in a place nobody wants to navigate to just to set a custom brightness quickly.
I very much like the idea of making the quick settings the sole source of brightness definition.
The 10% steps sound great to me.
Additionally a long press on the item could cycle +1% steps in reasonable interval to make it feel gradually "smooth" and not steppy until the finger is released. Both could work well together, the obvious way of control being +10% click steps. A more fancy way when just keeping pressed until wanted brightness is reached.
Even double click to toggle 100% and 0% could be added without hindering the other methods?

The UX is already a bit strange.

The idea was that there would be two places to change the brightness: one that is very quick to access but provides just rough control (either pushes the brightness to its max or its min) and another one which is harder to access but provides more precise control.

Now, if this already causes confusion to users, then yes it's not a good UX and we need to fix it. But I believe that what was originally proposed in this issue is even more complex.

use this patch and add a setting to enable/disable the three-way setting for the quick controls

Adding another setting to change the different modes will be yet another layer of complexity. Setting brightness should be trivially easy.

replace the current brightness with two settings: max and min and have quick control toggle between them

I guess you mean the brightness in asteroid-settings ? I would personally not mind because these are the only values I care about but I can imagine that maybe some users keep their brightness to intermediate levels.

add a setting for the user to set whether the single brightness setting should be the min or max and have the quick control honor that

As said above, if we add even more settings, this will just make things even more complicated to understand.

document how it works somewhere and don't change any code

People don't read documentation :) Also something as simple as setting brightness shouldn't need documentation

I very much like the idea of making the quick settings the sole source of brightness definition.

This would be fine by me. If being able to set the settings from two different places creates too much complexity, we could have a single source. Vibrations can already only be enabled/disabled from quick settings so I don't mind having only a quick setting for brightness and remove the option from asteroid-settings.

The 10% steps sound great to me.

Maybe this is too fine grained, if someone needs to press the button 10 times to cycle through the brightnesses. Possibly 20 or 25 increments would be enough and feel better.

Additionally a long press on the item could cycle +1% steps in reasonable interval to make it feel gradually "smooth" and not steppy until the finger is released. Both could work well together, the obvious way of control being +10% click steps. A more fancy way when just keeping pressed until wanted brightness is reached.

If you feel the need for this then why not I guess, but this feels quite overkill :)

Even double click to toggle 100% and 0% could be added without hindering the other methods?

Same. Why not, but there's no need to over-engineer such as simple thing.

If we had just 4 steps - 0 - 33 - 66 - 100 I think that would work fine for me and require no explanation if there were a corresponding icon change. Then we could just omit the brightness setting from the Display settings.

Since that still leaves room for the fancy overdone press and hold for brightness cycle, i can agree that is a good compromise.

If we had just 4 steps - 0 - 33 - 66 - 100 I think that would work fine for me and require no explanation if there were a corresponding icon change. Then we could just omit the brightness setting from the Display settings.

I Agree.
It was recently discussed on matrix to implement a Cinema Mode that would temporarily disable AOD and set e.g. the 33% brightness.
Would it make sense to add Cinema Mode as strep in the 0 -> 33 -> 66 -> 100 -> Cinema Mode icon?
Imo that could be easily understood since the feature is display brightness related.
An inconsitancy i could see would be user triggering the mode in error and wondering why AoD is off. But that might be easily discoverable due to the 33% brighntess?

commented

I got to #116 and here because I was searching to see what either the lock or brightness icons were supposed to do. The lock button seems redundant with the hardware power button, and I could never figure out what the two brightness states were supposed to represent—apparently it's minimum and maximum? At first I thought it was a toggle for auto brightness.

The biggest issue I see here is a lack of information. Simply showing the current brightness % inside the brightness icon would solve all of the user confusion around this feature regardless of how it is implemented. Or filling it with the a color/shade to represent the current value as was also touched on, and this is also how modern Android and iOS devices do it (though it is a bar there rather than a button).

Also, who needs that much control over their watch's screen brightness anyway ?

This is a very anti-user stance IMO. Anecdotally, I would want that much control. I find the auto brightness on my catfish is far too sensitive and often changes the brightness in unwanted ways, so I would prefer a manual switch. But turning off auto brightness and using the quick settings button to toggle brightness actually turns off my screen completely if auto brightness is off. So in its current state, the brightness button is unusable for me, since one state is blindingly bright while the other is nothing at all :)

If I had to pick fixed steps, @beroset's recommended 4 steps seem like the best compromise. It's not so granular as to be annoying, but is just enough to be usable.

Here's some more potential solutions based around the same idea. The user can tap the brightness button to change between brightness steps as discussed, and drag to do a more granular adjustment, with one of these three methods:

  1. Place the brightness button in the middle of the quick settings. Long press and drag right or up increases brightness, drag left or down decreases.
  2. Leave the brightness button where it is. Long press and drag clockwise increases brightness, counter-clockwise decreases.
  3. Leave the brightness button where it is. Use up/down drag for square displays, and clockwise/counter-clockwise for round displays.

I don't know how feasible this would be to implement, but it would allow the best of both worlds: quick steps and manual fine adjustment. With that much control available from quick settings I would also think brightness could be removed from display settings.

I like idea 1. And would suggest fading out the other icons on long press and fade in some sort of hinting icons that suggest in which direction to drag the icon. Long press is usually not easily discoverable. And a 4 step adjustment on single press should still be the default.
For an indicator, i could imagine an arc surrounding the button additionally to the transparency of the button following the 4 steps.