| Summary: | Breeze Icons 6.6 makes `dialog-information` display at too large a size toolbar of Virtual Machine Manager app | ||
|---|---|---|---|
| Product: | [Plasma] Breeze | Reporter: | jackyzy823 |
| Component: | Icons | Assignee: | visual-bugs-null |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | CC: | crobinso, dtmailguard-1, evgeniyharchenko.dev, jameswil2005, kainz.a, kristen, m, madness742, nate, ye.jingchen |
| Priority: | NOR | Keywords: | regression |
| Version First Reported In: | unspecified | ||
| Target Milestone: | --- | ||
| Platform: | Other | ||
| OS: | Linux | ||
| See Also: | https://bugs.kde.org/show_bug.cgi?id=494086 | ||
| Latest Commit: | Version Fixed/Implemented In: | 6.16 | |
| Sentry Crash Report: | |||
| Attachments: |
virt-manager with breeze icons 6.6 under scale 200%
virt-manager with breeze icons 6.0 virt-manager with breeze icons 6.6 under scale 100% virt-manager create vm UI, minus become X with breeze icon 6.6 virt-manager create vm UI, correct minus icon with breeze icon 6.0 Change from dialog-information to showinfo |
||
|
Description
jackyzy823
2024-10-02 16:20:15 UTC
Created attachment 174324 [details]
virt-manager with breeze icons 6.0
virt-manager is definitely using the wrong icon here; `dialog-information` is supposed to be used at a large size in dialogs and popups. The `info` or `showinfo` icons are probably the right ones to use here. If you can communicate that to its developer, it would helpful. Still, this is a regression and we should fix it. Unfortunately I'm not able to test this because virt-manager doesn't seem to have that icon for me, and I don't seem to be smart enough to figure out how to successfully add a new VM in the app, in case that's a requirement for showing the icon. There's a chance this is fixed with Frameworks 6.7 already with https://invent.kde.org/frameworks/breeze-icons/-/commit/da53b1d78dee7444b9297016dba4eb8fe428da0b. Any chance you can test that once Frameworks 6.7 is released in a little over a week? Hi , not sure if it is useful or not.
I use `strace -e openat -f virt-manager` to trace which icon resource is opened.
Here's the result
1. With Breeze icon theme 6.6
a. 200% ( a big *square* info)
[pid 6014] openat(AT_FDCWD, "/usr/share/icons/breeze/status/16@3x/dialog-information.svg", O_RDONLY|O_CLOEXEC) = 21
b. 100% (Display normal, with a correct size *circle* info )
[pid 6151] openat(AT_FDCWD, "/usr/share/icons/breeze/status/64/dialog-information.svg", O_RDONLY|O_CLOEXEC) = 20
2. With Breeze icons 6.0
a. 200%
[pid 6395] openat(AT_FDCWD, "/usr/share/icons/breeze/status/16@2x/dialog-information.svg", O_RDONLY|O_CLOEXEC) = 21
b. 100%
[pid 6291] openat(AT_FDCWD, "/usr/share/icons/breeze/status/24/dialog-information.svg", O_RDONLY|O_CLOEXEC) = 20
-----------------------------
I tested the commit (6.7) you mentioned by replace the content of `/usr/share/icons/breeze/status/ 64/dialog-information.svg` to the commit's one however it seems not work.
------------------------------------
How to test:
1. Using Fedora 40 KDE Spin
2. Install virtmanager via `dnf group install virtualization`
3. Upgrade breeze icons `dnf upgrade breeze-icon-theme` to 6.6
4. make virtmanager work via `systemctl enable --now libvirtd`
5. Set `Display configuration` -> `Scale` to 200%
6. Open virt-manager and create a dummy VM ,Steps: Menu -> File -> New Virtual Machine -> Manual Install -> Input "fedora" and select one -> set up memory and cpu -> Dsiable storage on this vm -> Finish . Then it will auto start the VM , and you could see the UI.
Created attachment 174348 [details]
virt-manager with breeze icons 6.6 under scale 100%
Under 100% scale, the dialog-information display correctly ( normal size , circle one)
Created attachment 174353 [details] virt-manager create vm UI, minus become X with breeze icon 6.6 Another virt-manager UI problem due to breeze icon update. When creating VM, on the CPU/MEM page, the adjust button looks wrong. See attachments. Using strace: I traced to ``` [pid 5606] openat(AT_FDCWD, "/usr/share/icons/breeze/actions/16@2x/list-remove-symbolic.svg", O_RDONLY|O_CLOEXEC) = 22 [pid 5606] openat(AT_FDCWD, "/usr/share/icons/breeze/actions/16@2x/list-remove-symbolic.svg", O_RDONLY|O_CLOEXEC) = 22 [pid 5606] openat(AT_FDCWD, "/usr/share/icons/breeze/actions/16@2x/list-add-symbolic.svg", O_RDONLY|O_CLOEXEC) = 22 [pid 5606] openat(AT_FDCWD, "/usr/share/icons/breeze/actions/16@2x/list-add-symbolic.svg", O_RDONLY|O_CLOEXEC) = 22 ``` Previously list-remove-symbolic is a "-"(minus) mark, now it is a "x" mark. This may from https://invent.kde.org/frameworks/breeze-icons/-/commit/486a6fcffa4705aaeed2f7c9def0bc5f5d9f40d9 Some Ref: https://github.com/virt-manager/virt-manager/blob/fe09e8f47e37982aa284c07123124d3f11803941/ui/createvm.ui#L1883 Since it is a GtkSpinButton widget , i think virt-manager project can do nothing on this. Created attachment 174354 [details]
virt-manager create vm UI, correct minus icon with breeze icon 6.0
Changing `dialog-information` to `showinfo` in /usr/share/virt-manager/ui/vmwindow.ui works (under both scale) However I'm not sure if changing the icon will affect other DE or not. Created attachment 174355 [details]
Change from dialog-information to showinfo
The issue with the list-remove icon appears to be a bug in GTK, as I can reproduce it in gtk3-widget-factory even with the default Adwaita style. There's even an Adwaita icon meant to be used here that always looks like a minus sign; it should be using that instead of relying on `list-remove` to look like a minus sign. That would be good to report to GTK. I'm not sure how this is a GTK bug. As far i can search , the Adwaita's list-remove-symbolic https://gitlab.gnome.org/GNOME/adwaita-icon-theme/-/blob/master/Adwaita/symbolic/actions/list-remove-symbolic.svg is still minus mark. Some ref: For gtk3, spinbutton still uses list-remove-symbolic https://github.com/GNOME/gtk/blob/v3.22.20/gtk/gtkspinbutton.c#L815 For gtk4 spinbutton uses value-decrease-symbolic https://github.com/GNOME/gtk/blob/3b027cf466f7fd606ad2c962cb787dc280ca6642/gtk/gtkspinbutton.c#L1094 FWIW `virt-manager --connect test:///default` lets you interact with a mock test driver, so you don't need any VMs on the host. A possibly relevant merge request was started @ https://invent.kde.org/frameworks/breeze-icons/-/merge_requests/466 |