Third-party GNOME/Adwaita app developers: if there was a simple way to opt into some more expressive kind of user-chosen theming (think: more like Material You with Adwaita and less like whole GTK stylesheets), would you be interested in opting your app into it?

Why or why not?

Feel free to boost widely! Not a poll because raw numbers are not as interesting as the discussion to me. 😊

#GNOME #GNOMEdesign #Linux #OpenSource

@cassidy no (for highscore) because:

- in library I have colorful covers and don't wan't any colors othre than grey around them so it doesn't compete for attention
- when playing a game I already dim the default dark ui
much forther to the point it's almost black, because games can be really dark (say, doom 64), once again any random colors would be a problem there. I also set accent there to white, yes.
@cassidy I'd love to do that for Multiplex (& a few upcoming apps like it)! Something like accent colors but for backgrounds (e.g. tinted with the wallpaper like what COSMIC does) would be great. I just don't like it when it's done as CSS overrides because there is no way to test it 😅
@cassidy I would only do it if there was a merit to accessibility. When you look at theming solutions like Material You, they tend to be really low on contrast. (Frankly, this is one of my complaints about libadwaita.)
@cassidy I would really love something like this, and I'll opt into it for sure.

I like the idea of people being able to give their devices a personal touch, so that they can feel that the device really belongs to them.

Obviously this needs to be done carefully, so that it doesn't bring regressions on accessibility, so it's not going to be that easy.

@cassidy I'd pass, for multiple reasons.

Firstly, both of my own apps depend on custom drawing and hardcoded colors in various places, and setting up plumbing and making design compromises for each little thing like that, to ensure that the contrast is always right, would be more work than I consider worth it.

I've attached some screenshots of my apps with light recoloring that I believe people would reasonably expect from this kind of system. My apps can't deliver that.

@cassidy Secondly, I fear that variable background colors would clash badly with custom illustrations if I was to add that to an app of mine in the future. I'm a huge proponent of vibrant and colorful artwork in apps, and I'd be sad to see app developers turn away from that in favor of recoloring. Unless we restrict illustrations to a monochrome palette, it's a no-go. If recoloring at this level is introduced, I think it would kill off our efforts to have full-color app illustrations completely.
@bragefuglseth @cassidy No, we can't let those illustrations go!
@cassidy I will say that reflecting on this has made me more positive towards accent colors as we're implementing them in GNOME 47, though, since they provide personalization without inflicting too many restrictions on the people building the apps.

@cassidy no, because the single gnome/adwaita app I wrote is for a single user, and she's happy with the stock theme. While I have a few more app ideas, which might be interesting to more people, they have not been made yet.

Regardless of the target audience, I have enough on my plate, don't need more. Unless there is a very clear, and big benefit for my users, I would not opt in.

@cassidy As long as I can at the very least, as a blind user, tell all Adwaita/GNOME apps to use a close-to-black background and close-to-white text instead of the usual grays...I think this'd be amazing.

@cassidy While I'd love to see some more colorful apps on our platform, I fear that this would just reintroduce some of the problems of the CSS overrides kind of theming, like low contrast, breaking custom drawings/hard coded colors, and clashing with the colorful app illustrations. Even on Android it breaks badly sometimes.

In Cozy, it would surely clash with our custom drawing, but I'm also afraid it would look bad as a background behind the colorful book covers.

@cassidy No, but in general I’d like GNOME way less if it had something like Material You, it both doesn’t look good and is unreliable from a developer’s perspective. Accent colors is about as far as I’m comfortable to go 

@cassidy personally I think it would be cool if there was even an easy way to do mostly-arbitrary recoloring like some other desktops do, to me it wouldn’t be that much more work to support when I already need to test for things like dark/hc styles, rtl layouts, different font sizes etc (though I haven’t developed anything more complex than a simple toolbox app)

especially with the new css color work coming soon, I think it would be okay? (dunno if detailed color theming is something any of the gnome designers want, though I’d be fine opting into any customization options in my apps whatever they are… sorry if this post is just useless noise)

@cassidy I probably will not use them. Except my close button location, I pretty much run stock GNOME and will stick with the default accent colour.
I fear that opting in to something like this would increase the amount of uncaught bugs at release, making the app look less well maintained.
Additionally, I fear that making this opt in, will just lead to eventually people showing up in your Matrix room and issue tracker, complaining about you not having opted in. Making it only on paper voluntary.
@cassidy I think it would be nice, but I doubt it would work. I think it works well in Android, since the system has full control over the color generation, so contrast and compatibility are less of an issue. If GNOME had them, I'm sure that users would modify it, leading to the same issue that currently exists with custom stylesheets/ in COSMIC.

@cassidy Can you give a bit more context?

User chosen theming can be just a change of color, which would work for most cases I suppose, except for apps that define their own colors. However, if we start changing spacing/margins, things get a lot more tricky.

Adwaita apps look great on Linux IMHO, look good on macOS, and look better on Windows than native apps 😎 .

@amolenaar ah, yeah, just talking about color, here.

@cassidy Don't have any public GNOME apps yet, but I can only imagine a few circumstances where I'd want to opt out if well implemented.

Seems like the primary concerns are:

1. Stylesheets breaking layouts
2. Colors clashing with graphics & artwork
3. Colors breaking accessibility via low contrast

each is manageable if the proper constraints were applied.

@cassidy

1. Restrict themes to properties that don't alter widget sizing. (e.g. adjusting colors & border radii)
2. Mark apps/widgets as eligible or ineligible for recolor.
3. Recolor should be a **request** to allow, deny, or use closest allowable approximate by computing contrast ratios of the actual widget hierarchy at runtime or pre-computing the worst widget-on-widget ratios on the base Adwaita stylesheet & use that to determine max brightness/saturation deviation allowed for recoloring.

@cassidy I see people ripping Material You for bad contrast, but I haven't found a color combo that has made my phone harder to see than unthemed Adwaita.

The gray-on-gray is often so faint that it's hard to tell which list item is active/hovered. I notice this every time I use my device in direct sunlight or at low brightness and in both light & dark mode.

Implementing something like this could actually help by forcing more checks on bulletproofing contrast.

@cassidy also, while we're talking about colors and accessibility, apps should be able to use alternate widget styling if a user indicates a colorblindness preference.

If you use red/yellow/green to indicate status or convey semantic meaning, please make sure to also represent it with a second method that isn't hue!