How to enable dark mode?

Exactly. Now that I have a good dev environment set up, well, I wasn’t expecting that to be my first PR, but it’s probably going to be.

Ok, that and/or an update to the TaskWarrior recipe at HaikuPorts. Or one for Helix.

And then maybe a similar scaling slider for the font/ui scaling configuration. Same thing of an elegant solution with a non-obvious interface.

Do other OS have Haiku’s feature to “automatically pick secondary colors”?

I can imagine that if you had to tweak a dozen sliders, compared to one as it’s the case for Haiku since a year or so, you’d expect a “dark mode” checkbox.

To introduce a checkbox “Dark mode” that does nothing more than set the RGB sliders of the “Panel background” to some default value… I dunno it feels like dumbing down the obvious to match the solutions of other OS.

Is it really not “obvious”? How many people not getting it make it “many people”?
Unfortunately we cannot grab 100 new users and ask them: “Please change the preferences of the OS to use dark colours.” and see how they go about it. Are many so un-curious to not move RGB sliders when they see them? Playing around is the first thing I do… :slight_smile:

I was very happy when I found Theme Manager, and colorful theme, that mostly contained the colors I like.
However this year, when I re-created a 32 bit Haiku Installer and install combo USB thumbdrive, … I played with colors and wallpapers - all workspaces has different wallpapers there :))

2 Likes

In my mind there is a difference between dumbing down and increasing discoverability. Removing or hiding options options would definitely be dumbing down and I wouldn’t want that. But making things more obvious increases discoverability and leads to people being able to use them more effectively.

4 Likes

I usually just avoid messing with the custom colors and themes and just use what is available, the defaults, I never play around with them. I would prefer someone to pick dark colors for me that are tested and do not affect or break anything. There is already a light default theme, colors are picked by someone there, and they look good. Having the same for the dark would be nice. Those who like to play around can still play, I would like to just be able to switch between light and dark.

1 Like

When the checkbox “Automatically pick secondary colors” is active, the other colours are set according to the “Panel background”. The algorithm for the secodary colours can be adjusted if anything doesn’t look right. No reports of that yet.

Yes, that checkbox is clear enough about what it does, there is no confusion there, and it is active by default. But when I tested, I moved the slider for RGB together, then I moved just for R or G, got something ugly, and I just quickly switched to the defaults and never touched it again.

The other OSes, I believe also allow users to customize, but I am not sure, and I would not know if that is true, I never touch such options, just plain defaults someone picked for me, light or dark.

My feeling is that there are no real standards for now. I can just tell from macOS and some Linux distros and i remember just plain light/dark toggles and optional themes – macOS even does’nt allow any theming or customizing at all. And sometimes apps like browsers or terminal clients asks on top for selecting a app-theme and allow custom color values.

I like to change themes with my mood for the season. So about every 3 months, I usually look up for a background to download. Then, I pick a colour from the background using Colors and drop it on panel colour in Appearance. You may need few tries and few adjustments but that gives a good starting point. At the end, I’m barely using sliders.

1 Like

What we need is a radio button control: Light-mode, ( default) Dark-mode and Auto with Auto setting that switches between light and dark based on sunrise (Light) and sunset (Dark). We’ll need to implement sunrise and sunset times for each timezone to make this work. This is not a high priority task for R1 but if someone wants to work on this feature it would be appreciated (by me).

It would also be nice to have a few different color scheme options for light and dark and an option to select from a predefined list of tab colors: purple, blue, red, orange, yellow, (default) green and gray.

This is inspired by the similar macOS 10.15 feature (that Windows copied).

1 Like

Yes, the color slider feature is very cool. Very innovative even, and that’s part of the problem. It is not what people are used to. People are used to the OS having a Dark/Light Mode setting, and when they don’t see one, they will think the OS lacks modern features, and that the Retro OS label actually does apply because the UI is behind 2 decades. That is not true of course, but instead of being smug about how advanced Haiku is and that people are stupid for wanting to dumb down the system, perhaps you should remember that not all users want full color control. Which is why most apps go beyond simple Dark/Light settings and also have Themes. Usually there are a couple dark and light themes to choose from. This is a modern convenience, not some hold back because they don’t know better. By not having native theming, with well-designed presets (the themes app I downloaded had terrible theme presets) you are burdening our users to be GUI/Color experts, while also indicating to people who are visually impaired that they don’t matter, as there are no preset color schemes for them. This is all very standard in modern operating systems, and while the level of control and simplicity of the color settings are great when you know how to use them, it is not what everyone wants, and will turn off a lot of people who are trying out the OS for the first time.

2 Likes

Excellent point about color blindness. I had an extremely colorblind friend at one point.

Since we’re bikeshedding this, I could see a dropdown button with Light, Dark, and Colorblind 1-3. Selecting one would move the sliders so nothing is hidden. It could also have a quick sentence about ThemeManager for more themes.

1 Like

Maybe this could be a third-party app… one that also dims the blue light. I was working on that, but it’s still unfinished.

… I mean, I’m not sure if it should be a core OS feature…

3 Likes

A “Dark Mode” switch makes no sense to me, unless that’s all the customization the system allows. Maybe it was born in phones and it spread? I don’t know, it sounds to me more like marketing than a feature, I don’t even understand what problem it solves. The system should allow selection of colours and other visual elements. A theme manager on top of that would be very nice. There you would find or install premade themes that can be light, dark, orangy, pastel, monochrome, dichromatic or whatever. If you want your app to blend, just don’t do anything: the system will use the user-chosen colours. If you want it to have a “personality”, the system should have a way to query for the selected colours, and you’d need the same work as with this “light/dark mode” thing. As it is nowadays, it seems as if every part in the stack had to understand “light/dark mode”, and if you are not using any of that, you are out of luck.

So, from my obviously grumpy point of view, it seems we have the basics. I also read there’s HaikuThemeManager. If that doesn’t work well, let’s improve it. If there are no dark themes to choose from, let’s write a few. But I don’t see the need to add a dark/light switch that we have just enhanced with a colorblind option (which kind? maybe we should add another 3 for different types of colour blindness, and then another for… hey, isn’t that a theme manager?).

4 Likes

I played around with the Appearance panel this morning after reading this thread, and one thing dark mode’s do that the Appearance settings don’t is swap the default background in windows between white and black.

No changes I made in Appearance had any effect on the bright white web browser windows.

This is presumably because Haiku doesn’t provide the light/dark mode signal LibreWolf expects at all.

One way to get the mode-style behavior in apps without actually bothering with a control would be to just set the light/dark mode signal that the apps want based on the existing panel color setting?

That’s a limitation of the GTK port that needs to be fixed, as someone explained further up already.
In WebPositive, that already works perfectly fine.

1 Like

While I still think it’s just as easy to move a slider as it is to pick a light/dark widget, maybe we should provide a similar system as Terminal’s “Colors” window, to at least have some additional gains:
A “Color scheme” pop-up at the top, with the presets “Dark scheme”, “Light scheme” and “Custom” once the user changes a colour. Plus a “Save scheme…” to let the user save their customized scheme under a name that’ll get added to the pop-up.

We may decide to add more schemes for accessability, like “High contrast scheme” etc.

11 Likes

That sounds lovely.

Honestly, looking at a computer screen all day, I could use a blue light filter. Of course, I could always buy the protective glasses to go over my regular glasses.