Make it possible to see what a Global Theme will change and only apply certain parts of it
Open, Needs TriagePublic

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.Thu, Oct 8, 5:24 PM