sway/swaybar
Tim Jochen Kicker 81c31b0c4d swaybar/tray: replace icon lookup with libsfdo
Drops the in-tree icon theme parser and lookup logic in favor of
libsfdo-icon, which implements the icon theme spec.

Absolute icon paths are handled in swaybar itself with an access()
probe, since libsfdo intentionally doesn't deal with them. Pixmap
fallback still kicks in if load_image() fails on the absolute path.

KDE's IconThemePath is honored via sfdo_icon_theme_load_from() with
a per-SNI override theme that gets dropped when the property changes.

The min/max size cache per SNI is replaced by re-lookup when the
rendered size changes; libsfdo caches the parsed theme internally
and reads gtk's icon-theme.cache files, so this is cheap.

Theme switching at runtime is preserved via a new
tray_reload_icon_theme() called from parse_bar_config(). The old
code worked here implicitly because all themes were preloaded.

Closes: https://github.com/swaywm/sway/issues/8607
2026-05-06 00:03:49 +02:00
..
tray swaybar/tray: replace icon lookup with libsfdo 2026-05-06 00:03:49 +02:00
bar.c swaybar: Fix 100% cpu usage if dbus dies. 2024-09-28 16:23:21 +02:00
config.c Define _POSIX_C_SOURCE globally 2024-02-23 17:43:19 +03:00
i3bar.c Define _POSIX_C_SOURCE globally 2024-02-23 17:43:19 +03:00
image.c common: move load_image to swaybar 2023-11-23 20:42:04 +01:00
input.c swaybar: Implement wp_cursor_shape_v1 2023-07-31 10:34:11 +02:00
ipc.c swaybar/tray: replace icon lookup with libsfdo 2026-05-06 00:03:49 +02:00
main.c Replace signal() with sigaction() 2025-04-27 18:42:12 +02:00
meson.build swaybar/tray: replace icon lookup with libsfdo 2026-05-06 00:03:49 +02:00
render.c swaybar: deduplicate mode and workspace rendering code 2025-05-25 14:48:14 +02:00
status_line.c Define _POSIX_C_SOURCE globally 2024-02-23 17:43:19 +03:00
swaybar-protocol.7.scd man: update maintainer 2021-01-08 09:33:51 +01:00