Make it possible to see what a Global Theme will change and only apply certain parts of it
Closed, ResolvedPublic

Description

Right now you can select a global theme (LnF pack) and also use the theme's desktop layout, but there is no way in the GUI to apply only the desktop layout without changing the global theme.
Here are some possibilities to solve this:

  • have 2 grid views side by side, one for theme and one for desktop layout
  • change the checkbox to a combobox that has three options: "Apply theme and desktop layout", "Apply theme only" and "Apply desktop layout only"
  • Split the KCM into two KCMs: one for theme, one for desktop layout
  • When applying a Global Theme, show a pop-up that allows you to choose what will be applied
GB_2 created this task.Sep 22 2019, 7:33 AM
filipf added a subscriber: filipf.Sep 23 2019, 4:55 PM

have 2 grid views side by side, one for theme and one for desktop layout

I suspect it would be visually overwhelming.

Split the KCM into two KCMs: one for theme, one for desktop layout

change the checkbox to a combobox that has three options: "Apply theme and desktop layout", "Apply theme only" and "Apply desktop layout only"

I like this idea the most, the combobox could simply replace the existing checkbox.

GB_2 added a comment.Sep 23 2019, 4:58 PM

change the checkbox to a combobox that has three options: "Apply theme and desktop layout", "Apply theme only" and "Apply desktop layout only"

I like this idea the most, the combobox could simply replace the existing checkbox.

My fear with this is that then it will be quite clunky and not very discoverable.

A agree that it would be very clunky. I think this situation justifies easily adding a new KCM. That was something that was discussed by the VDG a couple of times already.

GB_2 added a comment.Sep 23 2019, 5:06 PM

FWIW, this is how it could look like:

Split the KCM into two KCMs: one for theme, one for desktop layout

As the theme already has it's own KCM, I feel like the layout should get it's own KCM as well. Maybe we could make a subcategory of it?
Theme

  • Global Theme
  • Style
  • Layout

or something like that?

Btw. does the gloabl theme set anything else like the colorscheme or icon theme?

GB_2 added a comment.Sep 23 2019, 5:14 PM

Btw. does the gloabl theme set anything else like the colorscheme or icon theme?

Yes, that's why it's called that way now :-)

Yes, that's why it's called that way now :-)

Thanks ;) Any chance you know what exactly is set by it?

I think the deeper problem is that there's actually no way to know what a global theme sets, which makes applying it seem mysterious and risky. So here's another idea: when you select a new theme and click apply (or just when you click on the theme, if and when instant-apply gets done for this KCM), then a Kirigami popup appears, showing you each and every thing that theme will change, which a checkbox next to it. That way not only can you see what it will do, you can actually turn off elements that you don't want to apply.

I think the deeper problem is that there's actually no way to know what a global theme sets, which makes applying it seem mysterious and risky. So here's another idea: when you select a new theme and click apply (or just when you click on the theme, if and when instant-apply gets done for this KCM), then a Kirigami popup appears, showing you each and every thing that theme will change, which a checkbox next to it. That way not only can you see what it will do, you can actually turn off elements that you don't want to apply.

This idea is brilliant! This way you can do so much more combinations than before.
And for new users, this will be even more obvious what "Global Theme" means.

More thoughts from the VDG room today:

Maybe you should be able to manually save your current layout as a new LNF package, or maybe right before switching, the system should automatically do this for you and cache it somewhere so you can easily switch back if you don't like a new layout that you're trying out. I think that's a lot more user-friendly than warning you that using the desktop layout from a theme is destructive, because that discourages you from actually using the feature and offers you no help if you ignore the warning and do it anyway.

ngraham renamed this task from Make it possible to only apply the desktop layout and not the global theme to Make it possible to only apply certain parts of a Global Theme.Sep 25 2019, 3:48 PM
ngraham updated the task description. (Show Details)

So the problem is:

One can choose a lookandfeel which might have a colour, but you can also easily distribute and choose just a colour preset.

But when it comes to plasma layout, you can only distribute and choose a layout inside this data structure and UI which is designed for global grouping of things.

Which is why GB2 says we need a second KCM to make it consistent.

It has some sound logic, except I don't think it needs to be a KCM given regular editing and choosing isn't in a KCM. It'd be better attached to where the plasma editing UI is, in the toolbox.

GB_2 added a comment.EditedOct 4 2019, 4:34 PM

So the problem is:

One can choose a lookandfeel which might have a colour, but you can also easily distribute and choose just a colour preset.

But when it comes to plasma layout, you can only distribute and choose a layout inside this data structure and UI which is designed for global grouping of things.

Which is why GB2 says we need a second KCM to make it consistent.

It has some sound logic, except I don't think it needs to be a KCM given regular editing and choosing isn't in a KCM. It'd be better attached to where the plasma editing UI is, in the toolbox.

Yeah, maybe we can put it in the new layout edit mode UI in the future.

I think that makes sense.

Here's another thing we discussed recently: being able to save your current layout for ease of exporting and sharing, and restoring your prior settings after testing a new one: https://bugs.kde.org/show_bug.cgi?id=412906

+1 on the idea of splitting of Global Theme into Global Theme and Desktop Layout (2 KCMs).

We discussed this in the Plasma sprint today and decided that a new KCM was overkill. Instead, we decided that when you apply a Global Theme, a sheet will appear showing you the things that will be applied, and allowing you to check and uncheck them as you see fit.

crossi added a subscriber: crossi.Jul 1 2020, 11:50 AM
ngraham renamed this task from Make it possible to only apply certain parts of a Global Theme to Make it possible to see what a Global Theme will change and only apply certain parts of it.Oct 8 2020, 5:24 PM

Hey there, has there been any progress here?
The last post is quite old and I'm also interested in solving this issue.

I have just one question: ngraham wrote that one will be able to select what will be applied by a global theme.
But what, if I don't want to download the complete theme when I just want a new layout?
Will I be able to see what the new layout will look like?
I mean, nowadays, the global themes have small previews, but the single elements of the layout are hard to distinguish from e.g. the background.
How could this be solved with this approach?
Will every user know what's meant with the "layout" with just a list showing what's being applied?

And what if I just want to share my layout but not the complete theme?
Will there be any easy way to do this?

Probably a dumb question (I'm quite new here, just created this account), but what exactly is the reason not to add a new category in the theme section?
Is it a lot of work?
Would it require a lot of changes in the theme system / how themes are applied?
Or would it simply bloat the user interface with too many items?
Is there something else I didn't think of?

I mean, online accounts got a complete own category, without really doing anything. :P

No, but seriously. I've read multiple times now that such a feature is wished and e.g. FerenOS explicitly advertises this as a feature. Yet, there's no real solution for this issue I know of.

One point I'd like to add: as far as I noticed, every other aspect a global theme can change, like color, the titlebar, etc. can be changed separately. So what makes this so special or less important, that it should be included in the global theme, but can't be changed obviously on its own? I'm honest, if this was implemented as I understand it (so you select what you want to apply when you apply a global theme), I probably wouldn't find it until I apply a complete global theme and find this dialog "on accident".

Of course, you probably have reasons to choose this solution and I'd be glad if one could maybe sum the arguments up here. :)

Thanks in advance!

I'm not a designer but how this looks as suggestion ?

ngraham closed this task as Resolved.Apr 19 2022, 3:26 PM
ngraham moved this task from To Do to Done on the Plasma board.
ngraham claimed this task.

This has been implemented with https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/1043 for Plasma 5.25! Thanks @The-Feren-OS-Dev!

ngraham moved this task from Backlog/Planned to Done on the VDG board.Apr 19 2022, 3:26 PM