From f7ed97e2a7a3bb084dca0c7494b791cbbceb9821 Mon Sep 17 00:00:00 2001
From: Lukas Lihotzki <lukas@lihotzki.de>
Date: Wed, 23 Jan 2019 13:08:43 +0100
Subject: Fix tray icon updates

Apparently, IconThemePath needs to be reread on NewIcon signal.
This fixes tray icon updates in electron apps with libappindicator-gtk3.
---
 swaybar/tray/item.c | 3 +++
 1 file changed, 3 insertions(+)

(limited to 'swaybar')

diff --git a/swaybar/tray/item.c b/swaybar/tray/item.c
index a43bbf6f..02e34ed5 100644
--- a/swaybar/tray/item.c
+++ b/swaybar/tray/item.c
@@ -200,6 +200,9 @@ static int handle_new_icon(sd_bus_message *msg, void *data, sd_bus_error *error)
 	struct swaybar_sni *sni = data;
 	sni_get_property_async(sni, "IconName", "s", &sni->icon_name);
 	sni_get_property_async(sni, "IconPixmap", NULL, &sni->icon_pixmap);
+	if (!strcmp(sni->interface, "org.kde.StatusNotifierItem")) {
+		sni_get_property_async(sni, "IconThemePath", "s", &sni->icon_theme_path);
+	}
 	return sni_check_msg_sender(sni, msg, "icon");
 }
 
-- 
cgit v1.2.3