int transform, old_transform;
} Ecore_Wl2_Event_Output_Transform;
+typedef struct _Ecore_Wl2_Event_Window_Rotation
+{
+ Ecore_Wl2_Window *window;
+ int rotation, w, h;
+ Eina_Bool resize : 1;
+} Ecore_Wl2_Event_Window_Rotation;
+typedef struct _Ecore_Wl2_Event_Window_Rotation Ecore_Wl2_Event_Window_Rotation_Change_Prepare;
+
typedef enum _Ecore_Wl2_Window_Type
{
ECORE_WL2_WINDOW_TYPE_NONE,
EAPI extern int ECORE_WL2_EVENT_SEAT_KEYBOARD_REPEAT_CHANGED; /** @since 1.20 */
EAPI extern int ECORE_WL2_EVENT_SEAT_SELECTION; /** @since 1.20 */
EAPI extern int ECORE_WL2_EVENT_OUTPUT_TRANSFORM; /** @since 1.20 */
+EAPI extern int ECORE_Wl2_EVENT_WINDOW_ROTATION_CHANGE_PREPARE; /** @since 1.20 */
/**
* @file
*/
EAPI Eina_Bool ecore_wl2_window_available_rotations_get(Ecore_Wl2_Window *window, int **rots, unsigned int count);
+EAPI void ecore_wl2_window_rotation_change_prepare_send(Ecore_Wl2_Window *window, int rot, int w, int h, Eina_Bool resize);
+
/**
* @defgroup Ecore_Wl2_Input_Group Wayland Library Input Functions
* @ingroup Ecore_Wl2_Group
EAPI int ECORE_WL2_EVENT_SEAT_KEYBOARD_REPEAT_CHANGED = 0;
EAPI int ECORE_WL2_EVENT_SEAT_SELECTION = 0;
EAPI int ECORE_WL2_EVENT_OUTPUT_TRANSFORM = 0;
+EAPI int ECORE_Wl2_EVENT_WINDOW_ROTATION_CHANGE_PREPARE = 0;
EAPI int _ecore_wl2_event_window_www = -1;
EAPI int _ecore_wl2_event_window_www_drag = -1;
ECORE_WL2_EVENT_SEAT_KEYBOARD_REPEAT_CHANGED = ecore_event_type_new();
ECORE_WL2_EVENT_SEAT_SELECTION = ecore_event_type_new();
ECORE_WL2_EVENT_OUTPUT_TRANSFORM = ecore_event_type_new();
+ ECORE_WL2_EVENT_WINDOW_ROTATION_CHANGE_PREPARE = ecore_event_type_new();
}
if (!no_session_recovery)
no_session_recovery = !!getenv("EFL_NO_WAYLAND_SESSION_RECOVERY");
ECORE_WL2_EVENT_SEAT_KEYMAP_CHANGED,
ECORE_WL2_EVENT_SEAT_KEYBOARD_REPEAT_CHANGED,
ECORE_WL2_EVENT_SEAT_SELECTION,
- ECORE_WL2_EVENT_OUTPUT_TRANSFORM);
+ ECORE_WL2_EVENT_OUTPUT_TRANSFORM,
+ ECORE_WL2_EVENT_WINDOW_ROTATION_CHANGE_PREPARE);
/* shutdown Ecore_Event */
ecore_event_shutdown();
return EINA_FALSE;
}
+
+EAPI void
+ecore_wl2_window_rotation_change_prepare_send(Ecore_Wl2_Window *window, int rot, int w, int h, Eina_Bool resize)
+{
+ Ecore_Wl2_Event_Window_Rotation_Change_Prepare *ev;
+
+ EINA_SAFETY_ON_NULL_RETURN(window);
+
+ ev = calloc(1, sizeof(Ecore_Wl2_Event_Window_Rotation_Change_Prepare));
+ if (!ev) return;
+
+ ev->window = window;
+ ev->rotation = rot;
+ ev->w = w;
+ ev->h = h;
+ ev->resize = resize;
+
+ ecore_event_add(ECORE_WL2_EVENT_WINDOW_ROTATION_CHANGE_PREPARE, ev, NULL, NULL);
+}