Skip to content
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

Feature proposal: Limit QR code brightness #1610

Open
zivanfi opened this issue Feb 22, 2025 · 5 comments · May be fixed by #1612
Open

Feature proposal: Limit QR code brightness #1610

zivanfi opened this issue Feb 22, 2025 · 5 comments · May be fixed by #1612
Labels
proposal A proposal for a new feature proposal-accepted An accepted proposal for a new feature

Comments

@zivanfi
Copy link

zivanfi commented Feb 22, 2025

Aegis allows exporting seeds by showing QR codes that can be scanned from another phone. When the QR code is shown, the screen brightness is automatically set to maximum. On my previous phone this never was a problem, but on my new phone the screen is so bright that I can barely look at it. (There is a lot of text displayed in addition to the QR that makes me think that some of it may be relevant and this makes me want to read it. I also need to see the screen for exiting this screen.)

The QR code screen is even almost too bright for the camera of other phones too: On the camera preview the white parts of the QR code cause a halo that bleeds into the black parts. The QR can still be read from the right distance, but this level of brightness is clearly unnecessary.

Based on this experience, I would like to suggest considering some kind of control over the brightness of the QR code screen. Some possibilities to come to my mind:

  • Adding a toggle for increasing QR code brightness to the settings
  • Adding a slider for the QR code brightness to the settings
  • Showing the QR code screen with regular brighness but having a dedicated button on this screen to increase the brightness (this is what train ticket applications usually do).

Thanks for considering and for the amazing app!

@zivanfi zivanfi added the proposal A proposal for a new feature label Feb 22, 2025
@michaelschattgen michaelschattgen added the proposal-accepted An accepted proposal for a new feature label Feb 24, 2025
@michaelschattgen
Copy link
Member

I like this idea, I prefer adding a slider of some sort to the QR code screen itself. Do you perhaps have an example of the UI being used in the train ticket applications?

@zivanfi
Copy link
Author

zivanfi commented Feb 24, 2025

In the train ticket app that I use it is just a very wide button with the icon of a flashlight on it, spanning the whole bottom edge of the screen (outside of the scrollable area but above the Android navigation buttons on phones that show them). Here is a screenshot from Google Play, but I don't necessarily think that the aesthetic aspects of this design are worth following:

screenshot

Touching the button toggles increased brightness on or off. The default is off, i.e., regular brightness.

@michaelschattgen michaelschattgen linked a pull request Feb 24, 2025 that will close this issue
@michaelschattgen
Copy link
Member

Thanks for the screenshot, I eventually went with the following design. PR is open!

Image

@zivanfi
Copy link
Author

zivanfi commented Feb 24, 2025

Thank you, the design on the attached screenshot looks really good!

I'm not an Android developer and I can't build Aegis myself, but I looked at the PR out of curiosity. I may easily be mistaken, but based on my minimal understanding of the code it seems to me that the screen still always opens at max brightness, which the user can reduce using the slider.

This is already a great improvement, thanks a lot for implementing it. Still, if it's not too much trouble, I wonder if starting at a lower default brightness or remembering the brightness setting between sessions might be worth considering, given how bright some phones can be on max brightness.

@michaelschattgen
Copy link
Member

Ah you're right, that is a better solution. However we might have to remove the slider/seekbar because there seems to be no reliable method to retrieve the current brightness percentage without using reflection. The reason why I need that percentage is for the activity to either default to our predefined 'medium' brightness level or, if the device's current brightness is higher, use that instead. Unfortunately because of this we cannot set the seekbars progress to reflect the current device brightness because we can't accurately obtain its percentage if that makes sense. I will look into it later this week.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
proposal A proposal for a new feature proposal-accepted An accepted proposal for a new feature
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants