diff options
author | Chris Michael <cp.michael@samsung.com> | 2017-06-13 12:01:30 -0400 |
---|---|---|
committer | Chris Michael <cp.michael@samsung.com> | 2017-06-13 12:57:17 -0400 |
commit | 3e1ad4d45a02d9653bcb4b6d41ba6139b261ae73 (patch) | |
tree | 5e4e25126c67d99a332c69647537528f6663b7be | |
parent | 9de25efcffdabac77c895827ad0507776a17293c (diff) | |
download | efl-3e1ad4d45a02d9653bcb4b6d41ba6139b261ae73.tar.gz |
ecore-wl2: Add event and structure for auxiliary hints
@feature
Signed-off-by: Chris Michael <cp.michael@samsung.com>
-rw-r--r-- | src/lib/ecore_wl2/Ecore_Wl2.h | 8 | ||||
-rw-r--r-- | src/lib/ecore_wl2/ecore_wl2.c | 5 | ||||
-rw-r--r-- | src/lib/ecore_wl2/ecore_wl2_private.h | 9 |
3 files changed, 21 insertions, 1 deletions
diff --git a/src/lib/ecore_wl2/Ecore_Wl2.h b/src/lib/ecore_wl2/Ecore_Wl2.h index 0b9594c867..03d6db5b34 100644 --- a/src/lib/ecore_wl2/Ecore_Wl2.h +++ b/src/lib/ecore_wl2/Ecore_Wl2.h @@ -44,6 +44,7 @@ typedef struct _Ecore_Wl2_Pointer Ecore_Wl2_Pointer; typedef struct _Ecore_Wl2_Keyboard Ecore_Wl2_Keyboard; typedef struct _Ecore_Wl2_Touch Ecore_Wl2_Touch; typedef struct _Ecore_Wl2_Offer Ecore_Wl2_Offer; +typedef struct _Ecore_Wl2_Aux_Hint Ecore_Wl2_Aux_Hint; /* matches protocol values */ typedef enum @@ -297,6 +298,12 @@ typedef enum _Ecore_Wl2_Window_Type ECORE_WL2_WINDOW_TYPE_LAST } Ecore_Wl2_Window_Type; +typedef struct _Ecore_Wl2_Event_Aux_Hint_Allowed +{ + unsigned int win; + int id; +} Ecore_Wl2_Event_Aux_Hint_Allowed; + typedef void (*Ecore_Wl2_Bind_Cb)(struct wl_client *client, void *data, uint32_t version, uint32_t id); typedef void (*Ecore_Wl2_Unbind_Cb)(struct wl_resource *resource); @@ -333,6 +340,7 @@ EAPI extern int ECORE_WL2_EVENT_WINDOW_ROTATION_CHANGE_PREPARE; /** @since 1.20 EAPI extern int ECORE_WL2_EVENT_WINDOW_ROTATION_CHANGE_PREPARE_DONE; /** @since 1.20 */ EAPI extern int ECORE_WL2_EVENT_WINDOW_ROTATION_CHANGE_REQUEST; /** @since 1.20 */ EAPI extern int ECORE_WL2_EVENT_WINDOW_ROTATION_CHANGE_DONE; /** @since 1.20 */ +EAPI extern int ECORE_WL2_EVENT_AUX_HINT_ALLOWED; /** @since 1.20 */ /** * @file diff --git a/src/lib/ecore_wl2/ecore_wl2.c b/src/lib/ecore_wl2/ecore_wl2.c index d206618d37..c96ece51b2 100644 --- a/src/lib/ecore_wl2/ecore_wl2.c +++ b/src/lib/ecore_wl2/ecore_wl2.c @@ -45,6 +45,7 @@ EAPI int ECORE_WL2_EVENT_WINDOW_ROTATION_CHANGE_PREPARE = 0; EAPI int ECORE_WL2_EVENT_WINDOW_ROTATION_CHANGE_PREPARE_DONE = 0; EAPI int ECORE_WL2_EVENT_WINDOW_ROTATION_CHANGE_REQUEST = 0; EAPI int ECORE_WL2_EVENT_WINDOW_ROTATION_CHANGE_DONE = 0; +EAPI int ECORE_WL2_EVENT_AUX_HINT_ALLOWED = 0; EAPI int _ecore_wl2_event_window_www = -1; EAPI int _ecore_wl2_event_window_www_drag = -1; @@ -120,6 +121,7 @@ ecore_wl2_init(void) ecore_event_type_new(); ECORE_WL2_EVENT_WINDOW_ROTATION_CHANGE_REQUEST = ecore_event_type_new(); ECORE_WL2_EVENT_WINDOW_ROTATION_CHANGE_DONE = ecore_event_type_new(); + ECORE_WL2_EVENT_AUX_HINT_ALLOWED = ecore_event_type_new(); } if (!no_session_recovery) no_session_recovery = !!getenv("EFL_NO_WAYLAND_SESSION_RECOVERY"); @@ -182,7 +184,8 @@ ecore_wl2_shutdown(void) ECORE_WL2_EVENT_WINDOW_ROTATION_CHANGE_PREPARE, ECORE_WL2_EVENT_WINDOW_ROTATION_CHANGE_PREPARE_DONE, ECORE_WL2_EVENT_WINDOW_ROTATION_CHANGE_REQUEST, - ECORE_WL2_EVENT_WINDOW_ROTATION_CHANGE_DONE); + ECORE_WL2_EVENT_WINDOW_ROTATION_CHANGE_DONE, + ECORE_WL2_EVENT_AUX_HINT_ALLOWED); /* shutdown Ecore_Event */ ecore_event_shutdown(); diff --git a/src/lib/ecore_wl2/ecore_wl2_private.h b/src/lib/ecore_wl2/ecore_wl2_private.h index 611db67fdf..3c296afb55 100644 --- a/src/lib/ecore_wl2/ecore_wl2_private.h +++ b/src/lib/ecore_wl2/ecore_wl2_private.h @@ -133,6 +133,14 @@ struct _Ecore_Wl2_Subsurface Eina_Bool sync : 1; }; +struct _Ecore_Wl2_Aux_Hint +{ + EINA_INLIST; + + int id; + const char *hint, *val; +}; + struct _Ecore_Wl2_Window { EINA_INLIST; @@ -168,6 +176,7 @@ struct _Ecore_Wl2_Window Ecore_Wl2_Window_Type type; Eina_Inlist *subsurfs; + Eina_Inlist *supported_aux_hints; Eina_Bool moving : 1; Eina_Bool minimized : 1; |