Skip to content

Add manual dark theme preference support - #62

Merged
apex2504 merged 3 commits into
breadboardapp:3.3from
flazepe:3.3
Aug 23, 2026
Merged

Add manual dark theme preference support#62
apex2504 merged 3 commits into
breadboardapp:3.3from
flazepe:3.3

Conversation

@flazepe

@flazepe flazepe commented Aug 22, 2026

Copy link
Copy Markdown
Contributor

This adds the "Dark theme" option to settings under "Behavior and layout" to manually set the dark theme, continuing #55.

Additionally, since Android 8 and older have no proper system dark mode support, it seems like setting the default value to "off" instead of "auto" would be the move for those versions. The migration code for it is not ideal, but I'm open to other ideas (such as showing the value set to "off" visually, removing the need for the migration)

On Android 11 and lower, the splash screen would follow the system dark theme, regardless of the app dark theme preference. I've spent countless hours looking for a great solution, but to no avail.

Comment thread app/src/main/java/moe/apex/breadboard/ui/theme/Theme.kt Outdated
Comment thread app/src/main/java/moe/apex/breadboard/ui/theme/Theme.kt

@apex2504 apex2504 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice work! I'd like to hear your thoughts on the best place for the UiModeManager stuff so we can decide where's best for that. But I'm happy with the addition itself. Thanks!

@apex2504 apex2504 mentioned this pull request Aug 22, 2026

@apex2504 apex2504 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tentatively approving, code looks good but I haven't tested myself on the relevant Android versions yet (Android 8, 9+, and 12+). Have you tested these already?

@flazepe

flazepe commented Aug 23, 2026

Copy link
Copy Markdown
Contributor Author

Besides a Pixel 6a and Pixel 9, I've only tested it on a Pixel 5 running Android 11.

@flazepe

flazepe commented Aug 23, 2026

Copy link
Copy Markdown
Contributor Author

Tested on Nexus 6P running Android 8. Works well, and the default dark theme off "migration" is working (and so is the auto option being hidden in settings).

@apex2504

Copy link
Copy Markdown
Member

Sweet. Thanks!

@apex2504
apex2504 merged commit 0c2ee2d into breadboardapp:3.3 Aug 23, 2026
1 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants