|
|
@ -90,10 +90,12 @@ static void get_items_reply(DBusPendingCall *pending, void *_data) {
|
|
|
|
|
|
|
|
|
|
|
|
struct StatusNotifierItem *item = sni_create(name);
|
|
|
|
struct StatusNotifierItem *item = sni_create(name);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (item) {
|
|
|
|
sway_log(L_DEBUG, "Item registered with host: %s", name);
|
|
|
|
sway_log(L_DEBUG, "Item registered with host: %s", name);
|
|
|
|
list_add(tray->items, item);
|
|
|
|
list_add(tray->items, item);
|
|
|
|
dirty = true;
|
|
|
|
dirty = true;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
bail:
|
|
|
|
bail:
|
|
|
|
dbus_message_unref(reply);
|
|
|
|
dbus_message_unref(reply);
|
|
|
@ -141,9 +143,11 @@ static DBusHandlerResult signal_handler(DBusConnection *connection,
|
|
|
|
if (list_seq_find(tray->items, sni_str_cmp, name) == -1) {
|
|
|
|
if (list_seq_find(tray->items, sni_str_cmp, name) == -1) {
|
|
|
|
struct StatusNotifierItem *item = sni_create(name);
|
|
|
|
struct StatusNotifierItem *item = sni_create(name);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (item) {
|
|
|
|
list_add(tray->items, item);
|
|
|
|
list_add(tray->items, item);
|
|
|
|
dirty = true;
|
|
|
|
dirty = true;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
return DBUS_HANDLER_RESULT_HANDLED;
|
|
|
|
return DBUS_HANDLER_RESULT_HANDLED;
|
|
|
|
} else if (dbus_message_is_signal(message, "org.freedesktop.StatusNotifierWatcher",
|
|
|
|
} else if (dbus_message_is_signal(message, "org.freedesktop.StatusNotifierWatcher",
|
|
|
|