summaryrefslogtreecommitdiff
path: root/src/lib/efreet/efreet_desktop.h
diff options
context:
space:
mode:
authorSebastian Dransfeld <sd@tango.flipp.net>2014-09-25 08:47:18 +0200
committerSebastian Dransfeld <sd@tango.flipp.net>2014-09-25 08:47:45 +0200
commit793fd5e84775931cf491bf81ccbbee174feda05c (patch)
treeae7a7eb7692bad4944abc0e9dabd9f17bf4cef99 /src/lib/efreet/efreet_desktop.h
parentc700192736ef2ca8975a050e5be207df9f19f62c (diff)
efreet: Implement fields added by desktop spec 1.1
Diffstat (limited to '')
-rw-r--r--src/lib/efreet/efreet_desktop.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/lib/efreet/efreet_desktop.h b/src/lib/efreet/efreet_desktop.h
index fae8bac256..8f2c30a4e6 100644
--- a/src/lib/efreet/efreet_desktop.h
+++ b/src/lib/efreet/efreet_desktop.h
@@ -30,6 +30,12 @@ EAPI extern int EFREET_EVENT_DESKTOP_CACHE_UPDATE;
30EAPI extern int EFREET_EVENT_DESKTOP_CACHE_BUILD; 30EAPI extern int EFREET_EVENT_DESKTOP_CACHE_BUILD;
31 31
32/** 32/**
33 * Efreet_Desktop_Action
34 * @since 1.12
35 */
36typedef struct _Efreet_Desktop_Action Efreet_Desktop_Action;
37
38/**
33 * Efreet_Desktop 39 * Efreet_Desktop
34 */ 40 */
35typedef struct _Efreet_Desktop Efreet_Desktop; 41typedef struct _Efreet_Desktop Efreet_Desktop;
@@ -62,11 +68,25 @@ typedef void (*Efreet_Desktop_Type_Save_Cb) (Efreet_Desktop *desktop, Efreet_Ini
62typedef void *(*Efreet_Desktop_Type_Free_Cb) (void *data); 68typedef void *(*Efreet_Desktop_Type_Free_Cb) (void *data);
63 69
64/** 70/**
71 * Efreet_Desktop_Action
72 * @brief an action described in a .desktop file
73 * @since 1.12
74 */
75struct _Efreet_Desktop_Action
76{
77 char *key; /**< Key to identify the action */
78 char *name; /**< Specific name of the action */
79 char *icon; /**< Icon to display */
80 char *exec; /**< Program to execute */
81};
82
83/**
65 * Efreet_Desktop 84 * Efreet_Desktop
66 * @brief a parsed representation of a .desktop file 85 * @brief a parsed representation of a .desktop file
67 */ 86 */
68struct _Efreet_Desktop 87struct _Efreet_Desktop
69{ 88{
89 /* Desktop Spec 1.0 */
70 int type; /**< type of desktop file */ 90 int type; /**< type of desktop file */
71 91
72 int ref; /**< reference count - internal */ 92 int ref; /**< reference count - internal */
@@ -102,6 +122,12 @@ struct _Efreet_Desktop
102 122
103 Eina_Hash *x; /**< Keep track of all user extensions, keys that begin with X- */ 123 Eina_Hash *x; /**< Keep track of all user extensions, keys that begin with X- */
104 void *type_data; /**< Type specific data for custom types */ 124 void *type_data; /**< Type specific data for custom types */
125
126 /* Desktop Spec 1.1 */
127 unsigned char dbus_activatable; /**< Activate application by dbus, not Exec. @since 1.12 */
128 Eina_List *actions; /**< List of Efreet_Desktop_Actions, application actions. @since 1.12 */
129 Eina_List *implements; /**< Interfaces which is file implements. @since 1.12 */
130 Eina_List *keywords; /**< Keywords which describe this entry. @since 1.12 */
105}; 131};
106 132
107 133