GrapheneOS / os-issue-tracker

Issue tracker for GrapheneOS Android Open Source Project hardening work. Standalone projects like Auditor, AttestationServer and hardened_malloc have their own dedicated trackers.
https://grapheneos.org/
365 stars 21 forks source link

Manual setting of theme is not possible when using the theme schedule #3661

Open neunzehnachtneun opened 5 months ago

neunzehnachtneun commented 5 months ago

Maybe this issue is rather an upstream issue. It occurs since the Android 14 QPR3 update.

When using scheduled dark theming, forcing dark theme while in light mode, results in a glitch after a few minutes. Dark theme is turned off then without user interaction. Scheduled night light isnt affected.

Steps to reproduce: Turn on schedule for dark theme (doesnt matter if custom time oder sunset/sunrise). When dark theme is off by schedule, switch dark theme on. Dark theme should be set now. After a few minutes dark theming is turned off and some apps (like torbrowser) might crash.

Device: Pixel 6a Build: 2024061400

FID02 commented 5 months ago

I can reproduce on a Pixel 8 with GrapheneOS 2024061400 and a Pixel 6a running stock PixelOS with the latest QPR3 update. But I didn't observe any app crashes.

But isn't this how it's supposed to work? The user sets a custom schedule for dark mode, which the OS respects. The OS doesn't expect the user to want to manually enable dark mode outside of the set schedule, so it continues to respect that schedule by reverting to light mode the next time the user unlocks the device.

neunzehnachtneun commented 5 months ago

Thanks for checking!

I dont think, this is intended. The issue only occurs since QPR3. Also the night mode isnt affected, which should follow the same rules.

thestinger commented 4 months ago

Does this happen after the July update?

FID02 commented 4 months ago

Steps to reproduce: Turn on schedule for dark theme (doesnt matter if custom time oder sunset/sunrise). When dark theme is off by schedule, switch dark theme on. Dark theme should be set now. After a few minutes dark theming is turned off and some apps (like torbrowser) might crash.

Can still reproduce on GrapheneOS and stock PixelOS. (To speed up the process of testing: no need to wait a few minutes, just lock and unlock the screen).

GOS 2024070201 Pixel 8

PixelOS AP2A.240705.004 Pixel 6a

k2helix commented 1 month ago

Keeps happening on latest Android 15 based GrapheneOS alpha.

schrauger commented 1 week ago

But isn't this how it's supposed to work?

I would expect the OS to only do a single check at the scheduled time(s). So at sunset, or 8:00pm, or whenever you tell it, it will enable the dark theme. Then it will do nothing until sunrise or the specified time to enable the light theme.

If I decide to manually change the theme, it shouldn't be checking every few minutes if it needs to re-enable the theme based on the time range.

If the OS can't change the theme on the exact minute, such as an inability to run the theme change while the phone is locked, then alternatively it should run as soon as the time has passed, and then a flag should be flipped so that it doesn't redo the automation. The flag would be reset the next day, or when the paired morning flag is triggered.

This is how I expect the theme to work. Basically, just automatically change the theme on the time I set, and then I can manually change it whenever (and am of course responsible to manually change it back if I want).