Bug 365204 - Breeze icons are always used in some places
Summary: Breeze icons are always used in some places
Status: REOPENED
Alias: None
Product: Oxygen
Classification: Plasma
Component: icons (show other bugs)
Version: unspecified
Platform: ROSA RPMs Linux
: NOR normal
Target Milestone: ---
Assignee: pinheiro
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-07-07 15:58 UTC by Pulfer
Modified: 2018-10-20 21:26 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
Kickoff menu with messup up icons (69.36 KB, image/png)
2016-07-07 16:15 UTC, Pulfer
Details
Patch to make kicker and kickoff use icons from icon theme (1.17 KB, patch)
2016-07-07 16:46 UTC, Pulfer
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Pulfer 2016-07-07 15:58:22 UTC
Even if icon theme and plasma theme are set to Oxygen (or other themes), Breeze icons are used for favorite system actions in Kicker. At the same time icons in system actions submenu are correctly set from current icon theme.

Plasma 5.6.5, KF 5.23.0, Qt 5.6.1.

Reproducible: Always
Comment 1 Pulfer 2016-07-07 16:15:34 UTC
Created attachment 99928 [details]
Kickoff menu with messup up icons

Kickoff menu is also affected. Some icons are taken from Breeze them, some from Oxygen.
Comment 2 Pulfer 2016-07-07 16:46:35 UTC
Created attachment 99929 [details]
Patch to make kicker and kickoff use icons from icon theme

Not sure if it's desired behaviour for upstream. But as it makes Kicker and Kickoff look consistent, I'll apply it to ROSA's Plasma Desktop package.
Comment 3 Eike Hein 2016-07-07 16:47:59 UTC
At least in Kicker's case, the system favorites are supposed to use the Plasma theme. The Kickoff patch might be valid, please submit it via Phab.
Comment 4 Pulfer 2016-07-07 17:13:36 UTC
(In reply to Eike Hein from comment #3)
> At least in Kicker's case, the system favorites are supposed to use the Plasma theme. 

Why does it use Breeze icons if Plasma theme is set to Oxygen? Is it a Plasma bug?

> The Kickoff patch might be valid, please submit it via Phab.

https://git.reviewboard.kde.org/r/128392/
Comment 5 Eike Hein 2016-07-07 17:24:12 UTC
Maybe the Oxygen theme has no icons.
Comment 6 Pulfer 2016-07-07 17:37:02 UTC
(In reply to Eike Hein from comment #5)
> Maybe the Oxygen theme has no icons.

Neither Breeze nor Oxygen have icons like "system-log-out", "system-reboot" etc in /usr/share/plasma/desktoptheme/*/icons/ (plasma theme) directories. And both have such icons in /usr/share/icons/* (icon theme) directories.

There's a chance that using Breeze icon theme as fallback (if there's no selected icon in plasma theme) is hardcoded somewhere.
Comment 7 Pulfer 2016-07-08 10:12:32 UTC
> Neither Breeze nor Oxygen have icons like "system-log-out", "system-reboot"

In fact, they both have such elements in start.svgz. Maybe plasma-frameworks's IconItem::setSource function is buggy then.
Comment 8 Wolfgang Bauer 2016-07-08 16:53:13 UTC
(In reply to Pulfer from comment #6)
> (In reply to Eike Hein from comment #5)
> > Maybe the Oxygen theme has no icons.
> 
> Neither Breeze nor Oxygen have icons like "system-log-out", "system-reboot"
> etc in /usr/share/plasma/desktoptheme/*/icons/ (plasma theme) directories.

The corresponding icons are/should be in usr/share/plasma/desktoptheme/*/icons/system.svgz.
They were missing in Oxygen and Air, and have been (will be) added in KDE Frameworks 5.24.0:
https://quickgit.kde.org/?p=plasma-framework.git&a=commit&h=7379b9b830848e09defee17b362ac10852a4f4be

> There's a chance that using Breeze icon theme as fallback (if there's no
> selected icon in plasma theme) is hardcoded somewhere.

Yes, if the desktop/plasma theme is missing icons, they are taken from the "default" plasma theme (i.e. Breeze) instead.

(In reply to Pulfer from comment #7)
> > Neither Breeze nor Oxygen have icons like "system-log-out", "system-reboot"
> 
> In fact, they both have such elements in start.svgz. Maybe
> plasma-frameworks's IconItem::setSource function is buggy then.

start.svgz is only used for application launcher "icon" itself AFAIK.
Comment 9 Wolfgang Bauer 2016-07-08 17:25:53 UTC
(In reply to Wolfgang Bauer from comment #8)
> They were missing in Oxygen and Air, and have been (will be) added in KDE
> Frameworks 5.24.0:
> https://quickgit.kde.org/?p=plasma-framework.
> git&a=commit&h=7379b9b830848e09defee17b362ac10852a4f4be

Actually that is in 5.23.0 already, and it does work fine here: if I set Oxygen or Air as desktop theme, the system favorites and Kickoff's tabs use indeed Oxygen icons.

The other icons for Kickoffs tabs are in bookmarks.svgz, applications.svgz, computer.svgz and view.svgz (should also be in /usr/share/plasma/desktop-theme/*/icons/).
Comment 10 Pulfer 2016-07-09 04:01:58 UTC
(In reply to Wolfgang Bauer from comment #8)
> > In fact, they both have such elements in start.svgz. Maybe
> > plasma-frameworks's IconItem::setSource function is buggy then.
> 
> start.svgz is only used for application launcher "icon" itself AFAIK.

Sorry, I meant system.svgz. BTW, please check system.svgz from air theme. I guess there's a typo there ("system-user" element instead of "system-users").

As for application launcher icon, sometimes it uses icon from Plasma theme, sometimes from icons theme (icon may change after system reboot). 

I recorded a video where it's possible to see that launcher icon on panel is used from icons theme, not from plasma theme (sorry for non-English Plasma interface but it shouldn't matter): https://disk.yandex.ru/client/disk

Ignore kicker favorite system actions icons on video, they are patched to use icons theme. Also note that I replaced start-here-kde from Breeze icons theme (color dots) with icon from Breeze plasma theme ("K"). But it's clear that launcher uses Breeze icons theme icon if I switch desktop theme to Oxygen.
Comment 11 Pulfer 2016-07-09 04:03:28 UTC
(In reply to Pulfer from comment #10)
> I recorded a video where it's possible to see that launcher icon on panel is
> used from icons theme, not from plasma theme (sorry for non-English Plasma
> interface but it shouldn't matter): https://disk.yandex.ru/client/disk

Correct URL: https://yadi.sk/i/GxaIPQUBt8nBa
Comment 12 Wolfgang Bauer 2016-07-11 20:25:08 UTC
(In reply to Pulfer from comment #10)
> Sorry, I meant system.svgz. BTW, please check system.svgz from air theme. I
> guess there's a typo there ("system-user" element instead of "system-users").

No, works fine here.

Maybe a caching issue?
Try to delete ~/.cache/plasma* when Plasma is not running.

But as mentioned, I cannot reproduce your problem here on openSUSE...

> As for application launcher icon, sometimes it uses icon from Plasma theme,
> sometimes from icons theme (icon may change after system reboot). 

I noticed this when I change themes, it still uses the old one.
But after restarting plasmashell, this is ok.
Comment 13 Wolfgang Bauer 2016-07-11 20:38:32 UTC
PS: changing "Look and Feel" apparently doesn't work fully in 5.7.0.
I can confirm that.

But probably worth a specific bug report.
Comment 14 Pulfer 2016-07-12 04:46:59 UTC
(In reply to Wolfgang Bauer from comment #12)
> (In reply to Pulfer from comment #10)
> > Sorry, I meant system.svgz. BTW, please check system.svgz from air theme. I
> > guess there's a typo there ("system-user" element instead of "system-users").
> 
> No, works fine here.
> 
> Maybe a caching issue?
> Try to delete ~/.cache/plasma* when Plasma is not running.

Likely it's caused by https://bugs.kde.org/show_bug.cgi?id=365363 (System Setting may damage icons cache)
Comment 15 Wolfgang Bauer 2016-07-12 18:18:53 UTC
Ok, you're right, sorry.
I can reproduce your problem now:
When switching the desktop theme to Air or Oxygen, Kickoff indeed takes some icons from the icon theme (to be precise, the icons for the Favorites, Applications, and Computer tabs, and the application launcher icon itself).
Not sure why I didn't see that before, maybe I switched the icon theme as well when I tested it...

This seems  to be a problem/bug in those desktop themes though, not in Plasma or Kickoff.
If I set Breeze as desktop theme and switch the icon theme to Oxygen, those icons are still Breeze (i.e. they are in fact taken from the desktop theme).

Another problem is that switching the icon theme has no effect on running applications (including Plasma), but there is a bug report about that I think.

I am not sure about your review request though.
On the one hand you "complain" that some icons are taken from the icon theme, and you want to fix that by taking *all* icons from the icon theme? ;-)
The desktop themes should be fixed IMHO.

Though personally I do agree that it can be confusing that some icons are taken from the icon theme, while others are taken from the desktop theme.
Comment 16 Wolfgang Bauer 2016-07-12 18:21:34 UTC
(In reply to Pulfer from comment #14)> Likely it's caused by https://bugs.kde.org/show_bug.cgi?id=365363 (System
> Setting may damage icons cache)

Not really.
The Plasma theme cache is independent from the icon cache (which is in ~/.cache/icon-cache.kcache).
I definitely don't see that problem you describe there.
And AFAIK, the icon module actually deletes the icon cache when you switch to a different theme.
Comment 17 Pulfer 2016-07-12 19:14:11 UTC
(In reply to Wolfgang Bauer from comment #16)
> I am not sure about your review request though.
> On the one hand you "complain" that some icons are taken from the icon
> theme, and you want to fix that by taking *all* icons from the icon theme?
> ;-)

I rather "complain" that in general menu plasmoids' contents look inconsistent because of mixed icon sources. The only exception is desktop themes having the same icons as icon themes. But in such cases it works the same way as if "usesPlasmaTheme: false" was set.

> The desktop themes should be fixed IMHO.

IMHO, it's more plasmoid design issue than theme bug. If there are 2 buttons with the same action in an application ("Poweroff " etc buttons in menu), likely they should look the same. 

> And AFAIK, the icon module actually deletes the icon cache when you switch to a different theme.

At least in System Settings' case SS keeps "thinking" that old icons theme is still used (if you press back button instead of closing SS with KCM icons after applying new icons theme). So it inserts icons from older theme to icons cache. Maybe some other applications do the same. But likely it's better to discuss in #365363 anyway...
Comment 18 Wolfgang Bauer 2016-07-12 19:58:27 UTC
(In reply to Pulfer from comment #17)
> IMHO, it's more plasmoid design issue than theme bug. If there are 2 buttons
> with the same action in an application ("Poweroff " etc buttons in menu),
> likely they should look the same. 

Yes, this general inconsistency is a plasma design "issue" if you will.
There is another bug report about this IIRC (I'm not sure if it is still open or has been closed, can't find it at the moment).

But that Kickoff's tab icons and the launcher icon itself are taken from the icon theme in these particular cases is a bug in the themes, which should be fixed in the themes.

> At least in System Settings' case SS keeps "thinking" that old icons theme
> is still used

That's unrelated to the icon cache though IMHO.
Rather sounds like a problem with actually saving the selected icon theme to kdeglobals to me...
But yes, this should not really be discussed here.
Comment 19 Wolfgang Bauer 2016-07-12 19:59:14 UTC
(In reply to Wolfgang Bauer from comment #15)
> I can reproduce your problem now:
> When switching the desktop theme to Air or Oxygen, Kickoff indeed takes some
> icons from the icon theme (to be precise, the icons for the Favorites,
> Applications, and Computer tabs, and the application launcher icon itself).

I'm reopening this bug report therefore, and re-assign it to plasma-framework (which contains the desktop themes).

I had a look at applications.svgz in inkscape. The Breeze version contains the icon as object group that's named "applications-other", while the Air version doesn't have something like this and I think that's the reason why Plasma doesn't find the icon and falls back to take it from the icon theme.
And indeed, after changing this, that "Applications" icon is fixed (I had to delete the Plasma cache though).

Haven't checked the other affected ones yet, but I suspect a similar problem there.
system.svgz is fine though.

Also CC'ing Andreas Kainz who added those icons in the first place...

FWICT so far, these files are affected (in the Air and Oxygen desktop themes):
start.svgz, bookmarks.svgz, applications.svgz, computer.svgz
Comment 20 Pulfer 2016-07-12 20:22:33 UTC
(In reply to Wolfgang Bauer from comment #19)
> Haven't checked the other affected ones yet, but I suspect a similar problem
> there.
> system.svgz is fine though.

Please check system.svgz from Air theme. As I wrote in comment 10, I guess there's a typo there ("system-user" element used instead of "system-users").
Comment 21 Wolfgang Bauer 2016-07-12 21:23:30 UTC
(In reply to Pulfer from comment #20)
> (In reply to Wolfgang Bauer from comment #19)
> > Haven't checked the other affected ones yet, but I suspect a similar problem
> > there.
> > system.svgz is fine though.
> 
> Please check system.svgz from Air theme. As I wrote in comment 10, I guess
> there's a typo there ("system-user" element used instead of "system-users").

And why do you think that is a typo or even matters?
As I said, system.svgz works fine here.
That particular icon is not even used anywhere AFAICS (please correct me if I'm wrong), "Switch User" uses system-switch-user, not system-user(s).
There are 8 icons in system.svgz, but only 7 entries in Kickoff's "Leave" tab.

But ok, maybe this should be changed as well, if only for consistency.

Just to avoid a misunderstanding here though: only the icons in Kicker's "system favorites" section on the left are taken from the desktop theme.
The icons in the "Powermanagement / Session" submenu are taken from the icon theme, like all other icons in all other submenus. And the same is true for Kickoff's "Leave" tab. This is not a problem of the desktop theme.

(In reply to Wolfgang Bauer from comment #18)
> Yes, this general inconsistency is a plasma design "issue" if you will.
> There is another bug report about this IIRC (I'm not sure if it is still
> open or has been closed, can't find it at the moment).

I was thinking of Bug#348299 here.
Comment 22 Wolfgang Bauer 2016-07-12 21:28:11 UTC
I just noticed that system-save-session is missing from system.svgz in Air/Oxygen though.
Comment 23 Wolfgang Bauer 2016-07-12 21:36:16 UTC
(In reply to Wolfgang Bauer from comment #22)
> I just noticed that system-save-session is missing from system.svgz in
> Air/Oxygen though.

And apparently it's missing from the Oxygen icon theme too.
Comment 24 andreas 2016-07-12 21:40:15 UTC
ok what's the problem

oxygen/air plasma theme is unmaintained it was removed in 5.6 we add it cause I say there are people out there how will use it.

but there are no oxygen icon designers available since the last 4 years. It is hard, but that's live.

about the system.svgz icons. Chakra forked breeze-icons cause they don't want to use the breeze shutdown, restart, ... icons.

I also don't understand why some icons are from breeze-icons and some are from the plasma theme, but the plasma developers will have an argument for it. In addition we can live with it. system-save-session is disabled by default. I fixed the issues with the kickoff menu in 5.7 so everything is fine.
Comment 25 Pulfer 2016-07-13 02:45:10 UTC
(In reply to Wolfgang Bauer from comment #21)
> > Please check system.svgz from Air theme. As I wrote in comment 10, I guess
> > there's a typo there ("system-user" element used instead of "system-users").
> 
> And why do you think that is a typo or even matters?

It's a typo because the proper icon name is "system-users", not "system-user":
/usr/share/icons/Adwaita/32x32/apps/system-users.png
/usr/share/icons/breeze/apps/32/system-users.svg
/usr/share/icons/gnome/32x32/apps/system-users.png
/usr/share/icons/oxygen/base/32x32/apps/system-users.png
etc (including system.svgz from Breeze).

Only in Air's system.svgz it's "system-user".

> That particular icon is not even used anywhere AFAICS

There's a chance that some plasmoid will try to use it in future. It's not related to Kicker/Kickoff, just a general Air theme bug.
Comment 26 Nate Graham 2018-10-20 21:26:29 UTC
The proposed patch does not work because it results in Kickoff using icons from the Breeze icon theme instead of the Breeze Plasma theme, and some of them are different and don't look as good.

There is no problem with Kickoff here; it seems that issue is that the Oxygen Plasma theme lacks icons, so Kickoff falls back to the Breeze theme.