mirror of
https://github.com/JakeStanger/ironbar.git
synced 2026-07-11 08:15:21 +01:00
[GH-ISSUE #1213] GTK4 icon:* does not load #7393
Labels
No labels
A:Build
A:CI
A:Client
A:Config
A:Core
A:Documentation
A:Documentation
A:IPC
A:Testing
A:UX/UI
blocked
BREAKING CHANGE
duplicate
good first issue
GTK4
help wanted
invalid
M:Battery
M:Battery
M:Bindmode
M:Bluetooth
M:Brightness
M:Cairo
M:Clipboard
M:Clock
M:Clock
M:Custom
M:Focused
M:Keyboard
M:Launcher
M:Menu
M:Music
M:Music
M:Music
M:Network Manager
M:Notifications
M:SysInfo
M:Tray
M:Volume
M:Workspaces
partially resolved
P:Critical
P:High
P:Low
P:Medium
pull-request
T:Bug
T:Bug
T:Core Enhancement
T:Module Enhancement
T:New Module
T:Question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
JakeStanger/ironbar#7393
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @azertyfun on GitHub (Oct 23, 2025).
Original GitHub issue: https://github.com/JakeStanger/ironbar/issues/1213
Describe the bug
There are two places where
"icon:[...]"is declared in the code:battery.rsandbluetooth/mod.rs. Neither one loads properly since the switch to GTK4 (bluetooth device names are redacted):Unicode icons render just fine.
To reproduce
Steps to reproduce the behavior:
bluetoothExpected behavior
Icons should load properly (this is ironbar 0.17.1 with exact same config):
System information:
ironbar-git-0.17.1.r54.g828b0b5-1Configuration
Config
Styles
Additional context
I know for a fact the battery icon exists:
I do not have any experience troubleshooting GTK applications so I don't really know where to start. If you can't reproduce the issue, can you point me to where the loading of these icons is supposed to happen so I can drill down to the issue?
Screenshots
@JakeStanger commented on GitHub (Oct 23, 2025):
It may be an issue with the icon being symbolic. They've been a bit of a pain in the past (#1039).
I'm a bit short on time for the next few days, so a couple of references if you did want to take a look:
Location resolution:
github.com/JakeStanger/ironbar@828b0b5738/src/image/provider.rs (L181)Icon loading:
github.com/JakeStanger/ironbar@828b0b5738/src/image/provider.rs (L240-L254)I think symbolic icon loading can be somewhat controlled via the flags.
@azertyfun commented on GitHub (Oct 23, 2025):
What a ride. I'll spare you the numerous rabbit holes I fell down while tracking where the theme settings come from. In the end the issue is that if a
Settingsportal is present, GTK4 will use that. But I had kitty's portal as my "preferred" settings portal, which means that GTK4 used fallback values for all settings including theming (GTK_DEBUG=icontheme, you can see here it's using "gnome" theme which I haven't set but is the fallback value for portals):Combined with the fact that there aren't any symbolic icons in
hicolor(the only fallback for whatever icon theme is used, in this casegnomewhich isn't even installed on my machine), this means the symbolic icons are fully unresolvable.I've updated my
hyprland-portals.confto setorg.freedesktop.impl.portal.Settings=kitty;gtkand the issue went away. I created https://github.com/kovidgoyal/kitty/issues/9144.@azertyfun commented on GitHub (Oct 23, 2025):
Nevermind, I actually need to make a PR here as well. The
set_icon_themeimplementation is slightly incorrect as it does not set theDisplay. Unless I apply this patch I still do not have my icons: