ecore-wl2: Add API to support adding auxiliary window hints
authorChris Michael <cp.michael@samsung.com>
Tue, 13 Jun 2017 16:18:01 +0000 (12:18 -0400)
committerChris Michael <cp.michael@samsung.com>
Tue, 13 Jun 2017 16:57:17 +0000 (12:57 -0400)
@feature

Signed-off-by: Chris Michael <cp.michael@samsung.com>
src/lib/ecore_wl2/Ecore_Wl2.h
src/lib/ecore_wl2/ecore_wl2_window.c

index 69e0c77..d320256 100644 (file)
@@ -1109,6 +1109,19 @@ EAPI void ecore_wl2_window_rotation_change_done_send(Ecore_Wl2_Window *window, i
 EAPI Eina_List *ecore_wl2_window_aux_hints_supported_get(Ecore_Wl2_Window *window);
 
 /**
+ * Add a supported auxiliary hint to a given window
+ *
+ * @param window
+ * @param id
+ * @param hint
+ * @param val
+ *
+ * @ingroup Ecore_Wl2_Window_Group
+ * @since 1.20
+ */
+EAPI void ecore_wl2_window_aux_hint_add(Ecore_Wl2_Window *window, int id, const char *hint, const char *val);
+
+/**
  * @defgroup Ecore_Wl2_Input_Group Wayland Library Input Functions
  * @ingroup Ecore_Wl2_Group
  *
index 12c888a..f43d5d4 100644 (file)
@@ -1382,3 +1382,21 @@ ecore_wl2_window_aux_hints_supported_get(Ecore_Wl2_Window *window)
 
    return ret;
 }
+
+EAPI void
+ecore_wl2_window_aux_hint_add(Ecore_Wl2_Window *window, int id, const char *hint, const char *val)
+{
+   Ecore_Wl2_Aux_Hint *ehint;
+
+   EINA_SAFETY_ON_NULL_RETURN(window);
+
+   ehint = calloc(1, sizeof(Ecore_Wl2_Aux_Hint));
+   if (!ehint) return;
+
+   ehint->id = id;
+   ehint->hint = eina_stringshare_add(hint);
+   ehint->val = eina_stringshare_add(val);
+
+   window->supported_aux_hints =
+     eina_inlist_append(window->supported_aux_hints, EINA_INLIST_GET(ehint));
+}