summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorFurkan Sahin <furkan-dev@proton.me>2017-10-24 11:59:42 -0600
committerFurkan Sahin <furkan-dev@proton.me>2017-10-24 11:59:42 -0600
commitfc53228cb73e630ed45ef7ba932541c101761ad1 (patch)
treec8ca022e7a61922dc6d3303e944c9b364ed89848 /include
parentea9a1eb3756459b3a8c2d77fe0d58b7101b11428 (diff)
Allow registering StatusNotifierItems by obj path
This commit impliments a KDE hidden feature where a SNI could be registered by object path instead of well-known name. This should allow libappindicator programs to work correctly under sway. See #1372
Diffstat (limited to 'include')
-rw-r--r--include/swaybar/tray/sni.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/include/swaybar/tray/sni.h b/include/swaybar/tray/sni.h
index c2544e2a..22991e53 100644
--- a/include/swaybar/tray/sni.h
+++ b/include/swaybar/tray/sni.h
@@ -9,6 +9,8 @@ struct StatusNotifierItem {
char *name;
/* Unique bus name, needed for determining signal origins */
char *unique_name;
+ /* Object path, useful for items not registerd by well known name */
+ char *object_path;
bool kde_special_snowflake;
cairo_surface_t *image;
@@ -31,6 +33,12 @@ void sni_icon_ref_free(struct sni_icon_ref *sni_ref);
* May return `NULL` if `name` is not valid.
*/
struct StatusNotifierItem *sni_create(const char *name);
+/**
+ * Same as sni_create, but takes an object path and unique name instead of
+ * well-known name.
+ */
+struct StatusNotifierItem *sni_create_from_obj_path(const char *unique_name,
+ const char *object_path);
/**
* `item` must be a struct StatusNotifierItem *