12 # define EAPI __declspec(dllexport)
13 # else // ifdef BUILDING_DLL
14 # define EAPI __declspec(dllimport)
15 # endif // ifdef BUILDING_DLL
16 #else // ifdef _MSC_VER
19 # define EAPI __attribute__ ((visibility("default")))
20 # else // if __GNUC__ >= 4
22 # endif // if __GNUC__ >= 4
23 # else // ifdef __GNUC__
25 # endif // ifdef __GNUC__
26 #endif // ifdef _MSC_VER
28 #include <sys/types.h>
32 * @brief Ecore functions for dealing with the X Windows System
34 * Ecore_X provides a wrapper and convenience functions for using the
35 * X Windows System. Function groups for this part of the library
36 * include the following:
37 * @li @ref Ecore_X_Init_Group
38 * @li @ref Ecore_X_Display_Attr_Group
39 * @li @ref Ecore_X_Flush_Group
42 typedef unsigned int Ecore_X_ID;
43 #ifndef _ECORE_X_WINDOW_PREDEF
44 typedef Ecore_X_ID Ecore_X_Window;
45 #endif // ifndef _ECORE_X_WINDOW_PREDEF
46 #ifdef HAVE_ECORE_X_XCB
47 typedef Ecore_X_ID Ecore_X_Visual;
48 #else // ifdef HAVE_ECORE_X_XCB
49 typedef void * Ecore_X_Visual;
50 #endif /* HAVE_ECORE_X_XCB */
51 typedef Ecore_X_ID Ecore_X_Pixmap;
52 typedef Ecore_X_ID Ecore_X_Drawable;
53 #ifdef HAVE_ECORE_X_XCB
54 typedef Ecore_X_ID Ecore_X_GC;
55 #else // ifdef HAVE_ECORE_X_XCB
56 typedef void * Ecore_X_GC;
57 #endif /* HAVE_ECORE_X_XCB */
58 typedef Ecore_X_ID Ecore_X_Atom;
59 typedef Ecore_X_ID Ecore_X_Colormap;
60 typedef Ecore_X_ID Ecore_X_Time;
61 typedef Ecore_X_ID Ecore_X_Cursor;
62 typedef void Ecore_X_Display;
63 typedef void Ecore_X_Connection;
64 typedef void Ecore_X_Screen;
65 typedef Ecore_X_ID Ecore_X_Sync_Counter;
66 typedef Ecore_X_ID Ecore_X_Sync_Alarm;
67 typedef void Ecore_X_XRegion;
69 typedef Ecore_X_ID Ecore_X_Randr_Output;
70 typedef Ecore_X_ID Ecore_X_Randr_Crtc;
71 typedef Ecore_X_ID Ecore_X_Randr_Mode;
72 typedef unsigned short Ecore_X_Randr_Size_ID;
73 typedef int Ecore_X_Randr_Screen;
75 typedef Ecore_X_ID Ecore_X_Device;
79 #endif // ifdef __cplusplus
81 typedef struct _Ecore_X_Rectangle
84 unsigned int width, height;
87 typedef struct _Ecore_X_Icon
89 unsigned int width, height;
93 typedef enum _Ecore_X_GC_Value_Mask {
94 ECORE_X_GC_VALUE_MASK_FUNCTION = (1L << 0),
95 ECORE_X_GC_VALUE_MASK_PLANE_MASK = (1L << 1),
96 ECORE_X_GC_VALUE_MASK_FOREGROUND = (1L << 2),
97 ECORE_X_GC_VALUE_MASK_BACKGROUND = (1L << 3),
98 ECORE_X_GC_VALUE_MASK_LINE_WIDTH = (1L << 4),
99 ECORE_X_GC_VALUE_MASK_LINE_STYLE = (1L << 5),
100 ECORE_X_GC_VALUE_MASK_CAP_STYLE = (1L << 6),
101 ECORE_X_GC_VALUE_MASK_JOIN_STYLE = (1L << 7),
102 ECORE_X_GC_VALUE_MASK_FILL_STYLE = (1L << 8),
103 ECORE_X_GC_VALUE_MASK_FILL_RULE = (1L << 9),
104 ECORE_X_GC_VALUE_MASK_TILE = (1L << 10),
105 ECORE_X_GC_VALUE_MASK_STIPPLE = (1L << 11),
106 ECORE_X_GC_VALUE_MASK_TILE_STIPPLE_ORIGIN_X = (1L << 12),
107 ECORE_X_GC_VALUE_MASK_TILE_STIPPLE_ORIGIN_Y = (1L << 13),
108 ECORE_X_GC_VALUE_MASK_FONT = (1L << 14),
109 ECORE_X_GC_VALUE_MASK_SUBWINDOW_MODE = (1L << 15),
110 ECORE_X_GC_VALUE_MASK_GRAPHICS_EXPOSURES = (1L << 16),
111 ECORE_X_GC_VALUE_MASK_CLIP_ORIGIN_X = (1L << 17),
112 ECORE_X_GC_VALUE_MASK_CLIP_ORIGIN_Y = (1L << 18),
113 ECORE_X_GC_VALUE_MASK_CLIP_MASK = (1L << 19),
114 ECORE_X_GC_VALUE_MASK_DASH_OFFSET = (1L << 20),
115 ECORE_X_GC_VALUE_MASK_DASH_LIST = (1L << 21),
116 ECORE_X_GC_VALUE_MASK_ARC_MODE = (1L << 22)
117 } Ecore_X_GC_Value_Mask;
119 typedef enum _Ecore_X_Composite_Update_Type {
120 ECORE_X_COMPOSITE_UPDATE_AUTOMATIC,
121 ECORE_X_COMPOSITE_UPDATE_MANUAL
122 } Ecore_X_Composite_Update_Type;
124 typedef enum _Ecore_X_Window_State {
126 ECORE_X_WINDOW_STATE_UNKNOWN = 0,
127 /** The window is iconified. */
128 ECORE_X_WINDOW_STATE_ICONIFIED,
129 /** The window is a modal dialog box. */
130 ECORE_X_WINDOW_STATE_MODAL,
131 /** The window manager should keep the window's position fixed
132 * even if the virtual desktop scrolls. */
133 ECORE_X_WINDOW_STATE_STICKY,
134 /** The window has the maximum vertical size. */
135 ECORE_X_WINDOW_STATE_MAXIMIZED_VERT,
136 /** The window has the maximum horizontal size. */
137 ECORE_X_WINDOW_STATE_MAXIMIZED_HORZ,
138 /** The window is shaded. */
139 ECORE_X_WINDOW_STATE_SHADED,
140 /** The window should not be included in the taskbar. */
141 ECORE_X_WINDOW_STATE_SKIP_TASKBAR,
142 /** The window should not be included in the pager. */
143 ECORE_X_WINDOW_STATE_SKIP_PAGER,
144 /** The window is invisible (i.e. minimized/iconified) */
145 ECORE_X_WINDOW_STATE_HIDDEN,
146 /** The window should fill the entire screen and have no
147 * window border/decorations */
148 ECORE_X_WINDOW_STATE_FULLSCREEN,
149 /* The following are not documented because they are not
150 * intended for use in applications. */
151 ECORE_X_WINDOW_STATE_ABOVE,
152 ECORE_X_WINDOW_STATE_BELOW,
153 /* FIXME: Documentation */
154 ECORE_X_WINDOW_STATE_DEMANDS_ATTENTION
155 } Ecore_X_Window_State;
157 typedef enum _Ecore_X_Window_State_Action {
158 ECORE_X_WINDOW_STATE_ACTION_REMOVE,
159 ECORE_X_WINDOW_STATE_ACTION_ADD,
160 ECORE_X_WINDOW_STATE_ACTION_TOGGLE
161 } Ecore_X_Window_State_Action;
163 typedef enum _Ecore_X_Window_Stack_Mode {
164 ECORE_X_WINDOW_STACK_ABOVE = 0,
165 ECORE_X_WINDOW_STACK_BELOW = 1,
166 ECORE_X_WINDOW_STACK_TOP_IF = 2,
167 ECORE_X_WINDOW_STACK_BOTTOM_IF = 3,
168 ECORE_X_WINDOW_STACK_OPPOSITE = 4
169 } Ecore_X_Window_Stack_Mode;
171 typedef enum _Ecore_X_Randr_Orientation {
172 ECORE_X_RANDR_ORIENTATION_ROT_0 = (1 << 0),
173 ECORE_X_RANDR_ORIENTATION_ROT_90 = (1 << 1),
174 ECORE_X_RANDR_ORIENTATION_ROT_180 = (1 << 2),
175 ECORE_X_RANDR_ORIENTATION_ROT_270 = (1 << 3),
176 ECORE_X_RANDR_ORIENTATION_FLIP_X = (1 << 4),
177 ECORE_X_RANDR_ORIENTATION_FLIP_Y = (1 << 5)
178 } Ecore_X_Randr_Orientation;
180 typedef enum _Ecore_X_Randr_Connection_Status {
181 ECORE_X_RANDR_CONNECTION_STATUS_CONNECTED = 0,
182 ECORE_X_RANDR_CONNECTION_STATUS_DISCONNECTED = 1,
183 ECORE_X_RANDR_CONNECTION_STATUS_UNKNOWN = 2
184 } Ecore_X_Randr_Connection_Status;
186 typedef enum _Ecore_X_Randr_Output_Policy {
187 ECORE_X_RANDR_OUTPUT_POLICY_ABOVE = 1,
188 ECORE_X_RANDR_OUTPUT_POLICY_RIGHT = 2,
189 ECORE_X_RANDR_OUTPUT_POLICY_BELOW = 3,
190 ECORE_X_RANDR_OUTPUT_POLICY_LEFT = 4,
191 ECORE_X_RANDR_OUTPUT_POLICY_CLONE = 5,
192 ECORE_X_RANDR_OUTPUT_POLICY_NONE = 6
193 } Ecore_X_Randr_Output_Policy;
195 typedef enum _Ecore_X_Randr_Relative_Alignment {
196 ECORE_X_RANDR_RELATIVE_ALIGNMENT_NONE = 0,
197 ECORE_X_RANDR_RELATIVE_ALIGNMENT_CENTER_REL = 1,
198 ECORE_X_RANDR_RELATIVE_ALIGNMENT_CENTER_SCR = 2
199 } Ecore_X_Randr_Relative_Alignment;
201 typedef enum _Ecore_X_Render_Subpixel_Order {
202 ECORE_X_RENDER_SUBPIXEL_ORDER_UNKNOWN = 0,
203 ECORE_X_RENDER_SUBPIXEL_ORDER_HORIZONTAL_RGB = 1,
204 ECORE_X_RENDER_SUBPIXEL_ORDER_HORIZONTAL_BGR = 2,
205 ECORE_X_RENDER_SUBPIXEL_ORDER_VERTICAL_RGB = 3,
206 ECORE_X_RENDER_SUBPIXEL_ORDER_VERTICAL_BGR = 4,
207 ECORE_X_RENDER_SUBPIXEL_ORDER_NONE = 5
208 } Ecore_X_Render_Subpixel_Order;
210 #define ECORE_X_SELECTION_TARGET_TARGETS "TARGETS"
211 #define ECORE_X_SELECTION_TARGET_TEXT "TEXT"
212 #define ECORE_X_SELECTION_TARGET_COMPOUND_TEXT "COMPOUND_TEXT"
213 #define ECORE_X_SELECTION_TARGET_STRING "STRING"
214 #define ECORE_X_SELECTION_TARGET_UTF8_STRING "UTF8_STRING"
215 #define ECORE_X_SELECTION_TARGET_FILENAME "FILENAME"
217 #define ECORE_X_DND_VERSION 5
219 EAPI extern Ecore_X_Atom ECORE_X_DND_ACTION_COPY;
220 EAPI extern Ecore_X_Atom ECORE_X_DND_ACTION_MOVE;
221 EAPI extern Ecore_X_Atom ECORE_X_DND_ACTION_LINK;
222 EAPI extern Ecore_X_Atom ECORE_X_DND_ACTION_ASK;
223 EAPI extern Ecore_X_Atom ECORE_X_DND_ACTION_PRIVATE;
225 typedef enum _Ecore_X_Selection {
226 ECORE_X_SELECTION_PRIMARY,
227 ECORE_X_SELECTION_SECONDARY,
228 ECORE_X_SELECTION_XDND,
229 ECORE_X_SELECTION_CLIPBOARD,
230 ECORE_X_SELECTION_OTHER
233 typedef enum _Ecore_X_Event_Mode
235 ECORE_X_EVENT_MODE_NORMAL,
236 ECORE_X_EVENT_MODE_WHILE_GRABBED,
237 ECORE_X_EVENT_MODE_GRAB,
238 ECORE_X_EVENT_MODE_UNGRAB
239 } Ecore_X_Event_Mode;
241 typedef enum _Ecore_X_Event_Detail
243 ECORE_X_EVENT_DETAIL_ANCESTOR,
244 ECORE_X_EVENT_DETAIL_VIRTUAL,
245 ECORE_X_EVENT_DETAIL_INFERIOR,
246 ECORE_X_EVENT_DETAIL_NON_LINEAR,
247 ECORE_X_EVENT_DETAIL_NON_LINEAR_VIRTUAL,
248 ECORE_X_EVENT_DETAIL_POINTER,
249 ECORE_X_EVENT_DETAIL_POINTER_ROOT,
250 ECORE_X_EVENT_DETAIL_DETAIL_NONE
251 } Ecore_X_Event_Detail;
253 typedef enum _Ecore_X_Event_Mask
255 ECORE_X_EVENT_MASK_NONE = 0L,
256 ECORE_X_EVENT_MASK_KEY_DOWN = (1L << 0),
257 ECORE_X_EVENT_MASK_KEY_UP = (1L << 1),
258 ECORE_X_EVENT_MASK_MOUSE_DOWN = (1L << 2),
259 ECORE_X_EVENT_MASK_MOUSE_UP = (1L << 3),
260 ECORE_X_EVENT_MASK_MOUSE_IN = (1L << 4),
261 ECORE_X_EVENT_MASK_MOUSE_OUT = (1L << 5),
262 ECORE_X_EVENT_MASK_MOUSE_MOVE = (1L << 6),
263 ECORE_X_EVENT_MASK_WINDOW_DAMAGE = (1L << 15),
264 ECORE_X_EVENT_MASK_WINDOW_VISIBILITY = (1L << 16),
265 ECORE_X_EVENT_MASK_WINDOW_CONFIGURE = (1L << 17),
266 ECORE_X_EVENT_MASK_WINDOW_RESIZE_MANAGE = (1L << 18),
267 ECORE_X_EVENT_MASK_WINDOW_MANAGE = (1L << 19),
268 ECORE_X_EVENT_MASK_WINDOW_CHILD_CONFIGURE = (1L << 20),
269 ECORE_X_EVENT_MASK_WINDOW_FOCUS_CHANGE = (1L << 21),
270 ECORE_X_EVENT_MASK_WINDOW_PROPERTY = (1L << 22),
271 ECORE_X_EVENT_MASK_WINDOW_COLORMAP = (1L << 23),
272 ECORE_X_EVENT_MASK_WINDOW_GRAB = (1L << 24),
273 ECORE_X_EVENT_MASK_MOUSE_WHEEL = (1L << 29),
274 ECORE_X_EVENT_MASK_WINDOW_FOCUS_IN = (1L << 30),
275 ECORE_X_EVENT_MASK_WINDOW_FOCUS_OUT = (1L << 31)
276 } Ecore_X_Event_Mask;
278 typedef enum _Ecore_X_Gravity
280 ECORE_X_GRAVITY_FORGET = 0,
281 ECORE_X_GRAVITY_UNMAP = 0,
282 ECORE_X_GRAVITY_NW = 1,
283 ECORE_X_GRAVITY_N = 2,
284 ECORE_X_GRAVITY_NE = 3,
285 ECORE_X_GRAVITY_W = 4,
286 ECORE_X_GRAVITY_CENTER = 5,
287 ECORE_X_GRAVITY_E = 6,
288 ECORE_X_GRAVITY_SW = 7,
289 ECORE_X_GRAVITY_S = 8,
290 ECORE_X_GRAVITY_SE = 9,
291 ECORE_X_GRAVITY_STATIC = 10
294 /* Needed for ecore_x_region_window_shape_set */
295 typedef enum _Ecore_X_Shape_Type
297 ECORE_X_SHAPE_BOUNDING,
300 } Ecore_X_Shape_Type;
302 typedef enum _Ecore_X_Mapping_Type
304 ECORE_X_MAPPING_MODIFIER,
305 ECORE_X_MAPPING_KEYBOARD,
306 ECORE_X_MAPPING_MOUSE
307 } Ecore_X_Mapping_Type;
309 typedef enum _Ecore_X_Randr_Property_Change
311 ECORE_X_RANDR_PROPERTY_CHANGE_ADD,
312 ECORE_X_RANDR_PROPERTY_CHANGE_DEL
313 } Ecore_X_Randr_Property_Change;
315 typedef struct _Ecore_X_Event_Mouse_In Ecore_X_Event_Mouse_In;
316 typedef struct _Ecore_X_Event_Mouse_Out Ecore_X_Event_Mouse_Out;
317 typedef struct _Ecore_X_Event_Window_Focus_In Ecore_X_Event_Window_Focus_In;
318 typedef struct _Ecore_X_Event_Window_Focus_Out Ecore_X_Event_Window_Focus_Out;
319 typedef struct _Ecore_X_Event_Window_Keymap Ecore_X_Event_Window_Keymap;
320 typedef struct _Ecore_X_Event_Window_Damage Ecore_X_Event_Window_Damage;
321 typedef struct _Ecore_X_Event_Window_Visibility_Change Ecore_X_Event_Window_Visibility_Change;
322 typedef struct _Ecore_X_Event_Window_Create Ecore_X_Event_Window_Create;
323 typedef struct _Ecore_X_Event_Window_Destroy Ecore_X_Event_Window_Destroy;
324 typedef struct _Ecore_X_Event_Window_Hide Ecore_X_Event_Window_Hide;
325 typedef struct _Ecore_X_Event_Window_Show Ecore_X_Event_Window_Show;
326 typedef struct _Ecore_X_Event_Window_Show_Request Ecore_X_Event_Window_Show_Request;
327 typedef struct _Ecore_X_Event_Window_Reparent Ecore_X_Event_Window_Reparent;
328 typedef struct _Ecore_X_Event_Window_Configure Ecore_X_Event_Window_Configure;
329 typedef struct _Ecore_X_Event_Window_Configure_Request Ecore_X_Event_Window_Configure_Request;
330 typedef struct _Ecore_X_Event_Window_Gravity Ecore_X_Event_Window_Gravity;
331 typedef struct _Ecore_X_Event_Window_Resize_Request Ecore_X_Event_Window_Resize_Request;
332 typedef struct _Ecore_X_Event_Window_Stack Ecore_X_Event_Window_Stack;
333 typedef struct _Ecore_X_Event_Window_Stack_Request Ecore_X_Event_Window_Stack_Request;
334 typedef struct _Ecore_X_Event_Window_Property Ecore_X_Event_Window_Property;
335 typedef struct _Ecore_X_Event_Window_Colormap Ecore_X_Event_Window_Colormap;
336 typedef struct _Ecore_X_Event_Mapping_Change Ecore_X_Event_Mapping_Change;
337 typedef struct _Ecore_X_Event_Window_Mapping Ecore_X_Event_Window_Mapping;
338 typedef struct _Ecore_X_Event_Selection_Clear Ecore_X_Event_Selection_Clear;
339 typedef struct _Ecore_X_Event_Selection_Request Ecore_X_Event_Selection_Request;
340 typedef struct _Ecore_X_Event_Selection_Notify Ecore_X_Event_Selection_Notify;
341 typedef struct _Ecore_X_Selection_Data Ecore_X_Selection_Data;
342 typedef struct _Ecore_X_Selection_Data_Files Ecore_X_Selection_Data_Files;
343 typedef struct _Ecore_X_Selection_Data_Text Ecore_X_Selection_Data_Text;
344 typedef struct _Ecore_X_Selection_Data_Targets Ecore_X_Selection_Data_Targets;
345 typedef struct _Ecore_X_Event_Xdnd_Enter Ecore_X_Event_Xdnd_Enter;
346 typedef struct _Ecore_X_Event_Xdnd_Position Ecore_X_Event_Xdnd_Position;
347 typedef struct _Ecore_X_Event_Xdnd_Status Ecore_X_Event_Xdnd_Status;
348 typedef struct _Ecore_X_Event_Xdnd_Leave Ecore_X_Event_Xdnd_Leave;
349 typedef struct _Ecore_X_Event_Xdnd_Drop Ecore_X_Event_Xdnd_Drop;
350 typedef struct _Ecore_X_Event_Xdnd_Finished Ecore_X_Event_Xdnd_Finished;
351 typedef struct _Ecore_X_Event_Client_Message Ecore_X_Event_Client_Message;
352 typedef struct _Ecore_X_Event_Window_Shape Ecore_X_Event_Window_Shape;
353 typedef struct _Ecore_X_Event_Screensaver_Notify Ecore_X_Event_Screensaver_Notify;
354 typedef struct _Ecore_X_Event_Sync_Counter Ecore_X_Event_Sync_Counter;
355 typedef struct _Ecore_X_Event_Sync_Alarm Ecore_X_Event_Sync_Alarm;
356 typedef struct _Ecore_X_Event_Screen_Change Ecore_X_Event_Screen_Change;
357 typedef struct _Ecore_X_Event_Randr_Crtc_Change Ecore_X_Event_Randr_Crtc_Change;
358 typedef struct _Ecore_X_Event_Randr_Output_Change Ecore_X_Event_Randr_Output_Change;
359 typedef struct _Ecore_X_Event_Randr_Output_Property_Notify Ecore_X_Event_Randr_Output_Property_Notify;
361 typedef struct _Ecore_X_Event_Window_Delete_Request Ecore_X_Event_Window_Delete_Request;
362 typedef struct _Ecore_X_Event_Window_Move_Resize_Request Ecore_X_Event_Window_Move_Resize_Request;
363 typedef struct _Ecore_X_Event_Window_State_Request Ecore_X_Event_Window_State_Request;
364 typedef struct _Ecore_X_Event_Frame_Extents_Request Ecore_X_Event_Frame_Extents_Request;
365 typedef struct _Ecore_X_Event_Ping Ecore_X_Event_Ping;
366 typedef struct _Ecore_X_Event_Desktop_Change Ecore_X_Event_Desktop_Change;
368 typedef struct _Ecore_X_Event_Startup_Sequence Ecore_X_Event_Startup_Sequence;
370 typedef struct _Ecore_X_Event_Generic Ecore_X_Event_Generic;
372 typedef struct _Ecore_X_Randr_Screen_Size Ecore_X_Randr_Screen_Size;
373 typedef struct _Ecore_X_Randr_Screen_Size_MM Ecore_X_Randr_Screen_Size_MM;
375 typedef struct _Ecore_X_Xdnd_Position Ecore_X_Xdnd_Position;
377 struct _Ecore_X_Event_Mouse_In
381 Eina_Bool same_screen : 1;
386 Ecore_X_Window event_win;
387 Ecore_X_Window root_win;
388 Ecore_X_Event_Mode mode;
389 Ecore_X_Event_Detail detail;
393 struct _Ecore_X_Event_Mouse_Out
402 Ecore_X_Window event_win;
403 Ecore_X_Window root_win;
404 Ecore_X_Event_Mode mode;
405 Ecore_X_Event_Detail detail;
409 struct _Ecore_X_Event_Window_Focus_In
412 Ecore_X_Event_Mode mode;
413 Ecore_X_Event_Detail detail;
417 struct _Ecore_X_Event_Window_Focus_Out
420 Ecore_X_Event_Mode mode;
421 Ecore_X_Event_Detail detail;
425 struct _Ecore_X_Event_Window_Keymap
430 struct _Ecore_X_Event_Window_Damage
438 struct _Ecore_X_Event_Window_Visibility_Change
445 struct _Ecore_X_Event_Window_Create
448 Ecore_X_Window parent;
455 struct _Ecore_X_Event_Window_Destroy
458 Ecore_X_Window event_win;
462 struct _Ecore_X_Event_Window_Hide
465 Ecore_X_Window event_win;
469 struct _Ecore_X_Event_Window_Show
472 Ecore_X_Window event_win;
476 struct _Ecore_X_Event_Window_Show_Request
479 Ecore_X_Window parent;
483 struct _Ecore_X_Event_Window_Reparent
486 Ecore_X_Window event_win;
487 Ecore_X_Window parent;
491 struct _Ecore_X_Event_Window_Configure
494 Ecore_X_Window event_win;
495 Ecore_X_Window abovewin;
498 Eina_Bool override : 1;
499 Eina_Bool from_wm : 1;
503 struct _Ecore_X_Event_Window_Configure_Request
506 Ecore_X_Window parent_win;
507 Ecore_X_Window abovewin;
510 Ecore_X_Window_Stack_Mode detail;
511 unsigned long value_mask;
515 struct _Ecore_X_Event_Window_Gravity
518 Ecore_X_Window event_win;
522 struct _Ecore_X_Event_Window_Resize_Request
529 struct _Ecore_X_Event_Window_Stack
532 Ecore_X_Window event_win;
533 Ecore_X_Window_Stack_Mode detail;
537 struct _Ecore_X_Event_Window_Stack_Request
540 Ecore_X_Window parent;
541 Ecore_X_Window_Stack_Mode detail;
545 struct _Ecore_X_Event_Window_Property
552 struct _Ecore_X_Event_Window_Colormap
555 Ecore_X_Colormap cmap;
556 Eina_Bool installed : 1;
560 struct _Ecore_X_Event_Mapping_Change
562 Ecore_X_Mapping_Type type;
567 struct _Ecore_X_Event_Selection_Clear
570 Ecore_X_Selection selection;
575 struct _Ecore_X_Event_Selection_Request
577 Ecore_X_Window owner;
578 Ecore_X_Window requestor;
580 Ecore_X_Atom selection;
582 Ecore_X_Atom property;
585 struct _Ecore_X_Event_Selection_Notify
589 Ecore_X_Selection selection;
595 struct _Ecore_X_Selection_Data
598 ECORE_X_SELECTION_CONTENT_NONE,
599 ECORE_X_SELECTION_CONTENT_TEXT,
600 ECORE_X_SELECTION_CONTENT_FILES,
601 ECORE_X_SELECTION_CONTENT_TARGETS,
602 ECORE_X_SELECTION_CONTENT_CUSTOM
607 int (*free)(void *data);
610 struct _Ecore_X_Selection_Data_Files
612 Ecore_X_Selection_Data data;
617 struct _Ecore_X_Selection_Data_Text
619 Ecore_X_Selection_Data data;
623 struct _Ecore_X_Selection_Data_Targets
625 Ecore_X_Selection_Data data;
630 struct _Ecore_X_Event_Xdnd_Enter
632 Ecore_X_Window win, source;
638 struct _Ecore_X_Event_Xdnd_Position
640 Ecore_X_Window win, source;
647 struct _Ecore_X_Xdnd_Position
649 Ecore_X_Window win, prev;
655 struct _Ecore_X_Event_Xdnd_Status
657 Ecore_X_Window win, target;
658 Eina_Bool will_accept : 1;
659 Ecore_X_Rectangle rectangle;
663 struct _Ecore_X_Event_Xdnd_Leave
665 Ecore_X_Window win, source;
668 struct _Ecore_X_Event_Xdnd_Drop
670 Ecore_X_Window win, source;
677 struct _Ecore_X_Event_Xdnd_Finished
679 Ecore_X_Window win, target;
680 Eina_Bool completed : 1;
684 struct _Ecore_X_Event_Client_Message
687 Ecore_X_Atom message_type;
697 struct _Ecore_X_Event_Window_Shape
701 Ecore_X_Shape_Type type;
703 Eina_Bool shaped : 1;
706 struct _Ecore_X_Event_Screensaver_Notify
713 struct _Ecore_X_Event_Sync_Counter
718 struct _Ecore_X_Event_Sync_Alarm
721 Ecore_X_Sync_Alarm alarm;
724 struct _Ecore_X_Randr_Screen_Size
729 struct _Ecore_X_Randr_Screen_Size_MM
731 int width, height, width_mm, height_mm;
734 struct _Ecore_X_Event_Screen_Change
738 Ecore_X_Randr_Screen_Size_MM size; /* in pixel and millimeters */
740 Ecore_X_Time config_time;
741 Ecore_X_Randr_Orientation orientation;
742 Ecore_X_Render_Subpixel_Order subpixel_order;
743 Ecore_X_Randr_Size_ID size_id;
746 struct _Ecore_X_Event_Randr_Crtc_Change
749 Ecore_X_Randr_Crtc crtc;
750 Ecore_X_Randr_Mode mode;
751 Ecore_X_Randr_Orientation orientation;
755 struct _Ecore_X_Event_Randr_Output_Change
758 Ecore_X_Randr_Output output;
759 Ecore_X_Randr_Crtc crtc;
760 Ecore_X_Randr_Mode mode;
761 Ecore_X_Randr_Orientation orientation;
762 Ecore_X_Randr_Connection_Status connection;
763 Ecore_X_Render_Subpixel_Order subpixel_order;
766 struct _Ecore_X_Event_Randr_Output_Property_Notify
769 Ecore_X_Randr_Output output;
770 Ecore_X_Atom property;
772 Ecore_X_Randr_Property_Change state;
775 struct _Ecore_X_Event_Window_Delete_Request
781 struct _Ecore_X_Event_Window_Prop_Title_Change
788 struct _Ecore_X_Event_Window_Prop_Visible_Title_Change
795 struct _Ecore_X_Event_Window_Prop_Icon_Name_Change
802 struct _Ecore_X_Event_Window_Prop_Visible_Icon_Name_Change
809 struct _Ecore_X_Event_Window_Prop_Client_Machine_Change
816 struct _Ecore_X_Event_Window_Prop_Name_Class_Change
824 struct _Ecore_X_Event_Window_Prop_Pid_Change
831 struct _Ecore_X_Event_Window_Prop_Desktop_Change
838 struct _Ecore_X_Event_Startup_Sequence
843 struct _Ecore_X_Event_Window_Move_Resize_Request
852 struct _Ecore_X_Event_Window_State_Request
855 Ecore_X_Window_State_Action action;
856 Ecore_X_Window_State state[2];
860 struct _Ecore_X_Event_Frame_Extents_Request
865 struct _Ecore_X_Event_Ping
868 Ecore_X_Window event_win;
872 struct _Ecore_X_Event_Desktop_Change
879 struct _Ecore_X_Event_Generic
887 EAPI extern int ECORE_X_EVENT_ANY; /**< low level event dependent on
888 backend in use, if Xlib will be XEvent,
889 if XCB will be xcb_generic_event_t.
890 @warning avoid using it.
892 EAPI extern int ECORE_X_EVENT_MOUSE_IN;
893 EAPI extern int ECORE_X_EVENT_MOUSE_OUT;
894 EAPI extern int ECORE_X_EVENT_WINDOW_FOCUS_IN;
895 EAPI extern int ECORE_X_EVENT_WINDOW_FOCUS_OUT;
896 EAPI extern int ECORE_X_EVENT_WINDOW_KEYMAP;
897 EAPI extern int ECORE_X_EVENT_WINDOW_DAMAGE;
898 EAPI extern int ECORE_X_EVENT_WINDOW_VISIBILITY_CHANGE;
899 EAPI extern int ECORE_X_EVENT_WINDOW_CREATE;
900 EAPI extern int ECORE_X_EVENT_WINDOW_DESTROY;
901 EAPI extern int ECORE_X_EVENT_WINDOW_HIDE;
902 EAPI extern int ECORE_X_EVENT_WINDOW_SHOW;
903 EAPI extern int ECORE_X_EVENT_WINDOW_SHOW_REQUEST;
904 EAPI extern int ECORE_X_EVENT_WINDOW_REPARENT;
905 EAPI extern int ECORE_X_EVENT_WINDOW_CONFIGURE;
906 EAPI extern int ECORE_X_EVENT_WINDOW_CONFIGURE_REQUEST;
907 EAPI extern int ECORE_X_EVENT_WINDOW_GRAVITY;
908 EAPI extern int ECORE_X_EVENT_WINDOW_RESIZE_REQUEST;
909 EAPI extern int ECORE_X_EVENT_WINDOW_STACK;
910 EAPI extern int ECORE_X_EVENT_WINDOW_STACK_REQUEST;
911 EAPI extern int ECORE_X_EVENT_WINDOW_PROPERTY;
912 EAPI extern int ECORE_X_EVENT_WINDOW_COLORMAP;
913 EAPI extern int ECORE_X_EVENT_WINDOW_MAPPING;
914 EAPI extern int ECORE_X_EVENT_MAPPING_CHANGE;
915 EAPI extern int ECORE_X_EVENT_SELECTION_CLEAR;
916 EAPI extern int ECORE_X_EVENT_SELECTION_REQUEST;
917 EAPI extern int ECORE_X_EVENT_SELECTION_NOTIFY;
918 EAPI extern int ECORE_X_EVENT_CLIENT_MESSAGE;
919 EAPI extern int ECORE_X_EVENT_WINDOW_SHAPE;
920 EAPI extern int ECORE_X_EVENT_SCREENSAVER_NOTIFY;
921 EAPI extern int ECORE_X_EVENT_SYNC_COUNTER;
922 EAPI extern int ECORE_X_EVENT_SYNC_ALARM;
923 EAPI extern int ECORE_X_EVENT_SCREEN_CHANGE;
924 EAPI extern int ECORE_X_EVENT_RANDR_CRTC_CHANGE;
925 EAPI extern int ECORE_X_EVENT_RANDR_OUTPUT_CHANGE;
926 EAPI extern int ECORE_X_EVENT_RANDR_OUTPUT_PROPERTY_NOTIFY;
927 EAPI extern int ECORE_X_EVENT_DAMAGE_NOTIFY;
929 EAPI extern int ECORE_X_EVENT_WINDOW_DELETE_REQUEST;
931 EAPI extern int ECORE_X_EVENT_WINDOW_PROP_TITLE_CHANGE;
932 EAPI extern int ECORE_X_EVENT_WINDOW_PROP_VISIBLE_TITLE_CHANGE;
933 EAPI extern int ECORE_X_EVENT_WINDOW_PROP_ICON_NAME_CHANGE;
934 EAPI extern int ECORE_X_EVENT_WINDOW_PROP_VISIBLE_ICON_NAME_CHANGE;
935 EAPI extern int ECORE_X_EVENT_WINDOW_PROP_CLIENT_MACHINE_CHANGE;
936 EAPI extern int ECORE_X_EVENT_WINDOW_PROP_NAME_CLASS_CHANGE;
937 EAPI extern int ECORE_X_EVENT_WINDOW_PROP_PID_CHANGE;
938 EAPI extern int ECORE_X_EVENT_WINDOW_PROP_DESKTOP_CHANGE;
941 EAPI extern int ECORE_X_EVENT_WINDOW_MOVE_RESIZE_REQUEST;
942 EAPI extern int ECORE_X_EVENT_WINDOW_STATE_REQUEST;
943 EAPI extern int ECORE_X_EVENT_FRAME_EXTENTS_REQUEST;
944 EAPI extern int ECORE_X_EVENT_PING;
945 EAPI extern int ECORE_X_EVENT_DESKTOP_CHANGE;
947 EAPI extern int ECORE_X_EVENT_STARTUP_SEQUENCE_NEW;
948 EAPI extern int ECORE_X_EVENT_STARTUP_SEQUENCE_CHANGE;
949 EAPI extern int ECORE_X_EVENT_STARTUP_SEQUENCE_REMOVE;
951 EAPI extern int ECORE_X_EVENT_GENERIC;
953 EAPI extern int ECORE_X_EVENT_XDND_ENTER;
954 EAPI extern int ECORE_X_EVENT_XDND_POSITION;
955 EAPI extern int ECORE_X_EVENT_XDND_STATUS;
956 EAPI extern int ECORE_X_EVENT_XDND_LEAVE;
957 EAPI extern int ECORE_X_EVENT_XDND_DROP;
958 EAPI extern int ECORE_X_EVENT_XDND_FINISHED;
960 EAPI extern int ECORE_X_LOCK_SCROLL;
961 EAPI extern int ECORE_X_LOCK_NUM;
962 EAPI extern int ECORE_X_LOCK_CAPS;
964 typedef enum _Ecore_X_WM_Protocol
966 /* If enabled the window manager will be asked to send a
967 * delete message instead of just closing (destroying) the window. */
968 ECORE_X_WM_PROTOCOL_DELETE_REQUEST,
970 /* If enabled the window manager will be told that the window
971 * explicitly sets input focus. */
972 ECORE_X_WM_PROTOCOL_TAKE_FOCUS,
974 /* If enabled the window manager can ping the window to check
976 ECORE_X_NET_WM_PROTOCOL_PING,
978 /* If enabled the window manager can sync updating with the
980 ECORE_X_NET_WM_PROTOCOL_SYNC_REQUEST,
982 /* Number of defined items */
983 ECORE_X_WM_PROTOCOL_NUM
984 } Ecore_X_WM_Protocol;
986 typedef enum _Ecore_X_Window_Input_Mode
988 /* The window can never be focused */
989 ECORE_X_WINDOW_INPUT_MODE_NONE,
991 /* The window can be focused by the WM but doesn't focus itself */
992 ECORE_X_WINDOW_INPUT_MODE_PASSIVE,
994 /* The window sets the focus itself if one of its sub-windows
995 * already is focused */
996 ECORE_X_WINDOW_INPUT_MODE_ACTIVE_LOCAL,
998 /* The window sets the focus itself even if another window
999 * is currently focused */
1000 ECORE_X_WINDOW_INPUT_MODE_ACTIVE_GLOBAL
1001 } Ecore_X_Window_Input_Mode;
1003 typedef enum _Ecore_X_Window_State_Hint
1005 /** Do not provide any state hint to the window manager */
1006 ECORE_X_WINDOW_STATE_HINT_NONE = -1,
1008 /** The window wants to remain hidden and NOT iconified */
1009 ECORE_X_WINDOW_STATE_HINT_WITHDRAWN,
1011 /** The window wants to be mapped normally */
1012 ECORE_X_WINDOW_STATE_HINT_NORMAL,
1014 /** The window wants to start in an iconified state */
1015 ECORE_X_WINDOW_STATE_HINT_ICONIC
1016 } Ecore_X_Window_State_Hint;
1018 typedef enum _Ecore_X_Window_Type
1020 ECORE_X_WINDOW_TYPE_UNKNOWN = 0,
1021 ECORE_X_WINDOW_TYPE_DESKTOP,
1022 ECORE_X_WINDOW_TYPE_DOCK,
1023 ECORE_X_WINDOW_TYPE_TOOLBAR,
1024 ECORE_X_WINDOW_TYPE_MENU,
1025 ECORE_X_WINDOW_TYPE_UTILITY,
1026 ECORE_X_WINDOW_TYPE_SPLASH,
1027 ECORE_X_WINDOW_TYPE_DIALOG,
1028 ECORE_X_WINDOW_TYPE_NORMAL,
1029 ECORE_X_WINDOW_TYPE_DROPDOWN_MENU,
1030 ECORE_X_WINDOW_TYPE_POPUP_MENU,
1031 ECORE_X_WINDOW_TYPE_TOOLTIP,
1032 ECORE_X_WINDOW_TYPE_NOTIFICATION,
1033 ECORE_X_WINDOW_TYPE_COMBO,
1034 ECORE_X_WINDOW_TYPE_DND
1035 } Ecore_X_Window_Type;
1037 typedef enum _Ecore_X_Action
1039 ECORE_X_ACTION_MOVE,
1040 ECORE_X_ACTION_RESIZE,
1041 ECORE_X_ACTION_MINIMIZE,
1042 ECORE_X_ACTION_SHADE,
1043 ECORE_X_ACTION_STICK,
1044 ECORE_X_ACTION_MAXIMIZE_HORZ,
1045 ECORE_X_ACTION_MAXIMIZE_VERT,
1046 ECORE_X_ACTION_FULLSCREEN,
1047 ECORE_X_ACTION_CHANGE_DESKTOP,
1048 ECORE_X_ACTION_CLOSE,
1049 ECORE_X_ACTION_ABOVE,
1050 ECORE_X_ACTION_BELOW
1053 typedef enum _Ecore_X_Window_Configure_Mask
1055 ECORE_X_WINDOW_CONFIGURE_MASK_X = (1 << 0),
1056 ECORE_X_WINDOW_CONFIGURE_MASK_Y = (1 << 1),
1057 ECORE_X_WINDOW_CONFIGURE_MASK_W = (1 << 2),
1058 ECORE_X_WINDOW_CONFIGURE_MASK_H = (1 << 3),
1059 ECORE_X_WINDOW_CONFIGURE_MASK_BORDER_WIDTH = (1 << 4),
1060 ECORE_X_WINDOW_CONFIGURE_MASK_SIBLING = (1 << 5),
1061 ECORE_X_WINDOW_CONFIGURE_MASK_STACK_MODE = (1 << 6)
1062 } Ecore_X_Window_Configure_Mask;
1064 typedef enum _Ecore_X_Virtual_Keyboard_State
1066 ECORE_X_VIRTUAL_KEYBOARD_STATE_UNKNOWN = 0,
1067 ECORE_X_VIRTUAL_KEYBOARD_STATE_OFF,
1068 ECORE_X_VIRTUAL_KEYBOARD_STATE_ON,
1069 ECORE_X_VIRTUAL_KEYBOARD_STATE_ALPHA,
1070 ECORE_X_VIRTUAL_KEYBOARD_STATE_NUMERIC,
1071 ECORE_X_VIRTUAL_KEYBOARD_STATE_PIN,
1072 ECORE_X_VIRTUAL_KEYBOARD_STATE_PHONE_NUMBER,
1073 ECORE_X_VIRTUAL_KEYBOARD_STATE_HEX,
1074 ECORE_X_VIRTUAL_KEYBOARD_STATE_TERMINAL,
1075 ECORE_X_VIRTUAL_KEYBOARD_STATE_PASSWORD,
1076 ECORE_X_VIRTUAL_KEYBOARD_STATE_IP,
1077 ECORE_X_VIRTUAL_KEYBOARD_STATE_HOST,
1078 ECORE_X_VIRTUAL_KEYBOARD_STATE_FILE,
1079 ECORE_X_VIRTUAL_KEYBOARD_STATE_URL,
1080 ECORE_X_VIRTUAL_KEYBOARD_STATE_KEYPAD,
1081 ECORE_X_VIRTUAL_KEYBOARD_STATE_J2ME
1082 } Ecore_X_Virtual_Keyboard_State;
1084 typedef enum _Ecore_X_Illume_Mode
1086 ECORE_X_ILLUME_MODE_UNKNOWN = 0,
1087 ECORE_X_ILLUME_MODE_SINGLE,
1088 ECORE_X_ILLUME_MODE_DUAL_TOP,
1089 ECORE_X_ILLUME_MODE_DUAL_LEFT
1090 } Ecore_X_Illume_Mode;
1092 typedef enum _Ecore_X_Illume_Quickpanel_State
1094 ECORE_X_ILLUME_QUICKPANEL_STATE_UNKNOWN = 0,
1095 ECORE_X_ILLUME_QUICKPANEL_STATE_OFF,
1096 ECORE_X_ILLUME_QUICKPANEL_STATE_ON
1097 } Ecore_X_Illume_Quickpanel_State;
1099 /* Window layer constants */
1100 #define ECORE_X_WINDOW_LAYER_BELOW 2
1101 #define ECORE_X_WINDOW_LAYER_NORMAL 4
1102 #define ECORE_X_WINDOW_LAYER_ABOVE 6
1104 /* Property list operations */
1105 #define ECORE_X_PROP_LIST_REMOVE 0
1106 #define ECORE_X_PROP_LIST_ADD 1
1107 #define ECORE_X_PROP_LIST_TOGGLE 2
1109 EAPI int ecore_x_init(const char *name);
1110 EAPI int ecore_x_shutdown(void);
1111 EAPI int ecore_x_disconnect(void);
1112 EAPI Ecore_X_Display * ecore_x_display_get(void);
1113 EAPI Ecore_X_Connection * ecore_x_connection_get(void);
1114 EAPI int ecore_x_fd_get(void);
1115 EAPI Ecore_X_Screen * ecore_x_default_screen_get(void);
1116 EAPI void ecore_x_double_click_time_set(double t);
1117 EAPI double ecore_x_double_click_time_get(void);
1118 EAPI void ecore_x_flush(void);
1119 EAPI void ecore_x_sync(void);
1120 EAPI void ecore_x_killall(Ecore_X_Window root);
1121 EAPI void ecore_x_kill(Ecore_X_Window win);
1122 EAPI int ecore_x_dpi_get(void);
1123 EAPI Eina_Bool ecore_x_bell(int percent);
1125 EAPI Ecore_X_Time ecore_x_current_time_get(void);
1127 EAPI void ecore_x_error_handler_set(void (*func)(void *data), const void *data);
1128 EAPI void ecore_x_io_error_handler_set(void (*func)(
1129 void *data), const void *data);
1130 EAPI int ecore_x_error_request_get(void);
1131 EAPI int ecore_x_error_code_get(void);
1133 EAPI void ecore_x_event_mask_set(Ecore_X_Window w,
1134 Ecore_X_Event_Mask mask);
1135 EAPI void ecore_x_event_mask_unset(Ecore_X_Window w,
1136 Ecore_X_Event_Mask mask);
1138 EAPI Eina_Bool ecore_x_selection_notify_send(Ecore_X_Window requestor,
1139 Ecore_X_Atom selection,
1140 Ecore_X_Atom target,
1141 Ecore_X_Atom property,
1143 EAPI void ecore_x_selection_primary_prefetch(void);
1144 EAPI void ecore_x_selection_primary_fetch(void);
1145 EAPI Eina_Bool ecore_x_selection_primary_set(Ecore_X_Window w,
1148 EAPI Eina_Bool ecore_x_selection_primary_clear(void);
1149 EAPI void ecore_x_selection_secondary_prefetch(void);
1150 EAPI void ecore_x_selection_secondary_fetch(void);
1151 EAPI Eina_Bool ecore_x_selection_secondary_set(Ecore_X_Window w,
1154 EAPI Eina_Bool ecore_x_selection_secondary_clear(void);
1155 EAPI void ecore_x_selection_xdnd_prefetch(void);
1156 EAPI void ecore_x_selection_xdnd_fetch(void);
1157 EAPI Eina_Bool ecore_x_selection_xdnd_set(Ecore_X_Window w,
1160 EAPI Eina_Bool ecore_x_selection_xdnd_clear(void);
1161 EAPI void ecore_x_selection_clipboard_prefetch(void);
1162 EAPI void ecore_x_selection_clipboard_fetch(void);
1163 EAPI Eina_Bool ecore_x_selection_clipboard_set(Ecore_X_Window w,
1166 EAPI Eina_Bool ecore_x_selection_clipboard_clear(void);
1167 EAPI void ecore_x_selection_primary_request(Ecore_X_Window w,
1168 const char *target);
1169 EAPI void ecore_x_selection_secondary_request(Ecore_X_Window w,
1170 const char *target);
1171 EAPI void ecore_x_selection_xdnd_request(Ecore_X_Window w,
1172 const char *target);
1173 EAPI void ecore_x_selection_clipboard_request(Ecore_X_Window w,
1174 const char *target);
1175 EAPI Eina_Bool ecore_x_selection_convert(Ecore_X_Atom selection,
1176 Ecore_X_Atom target,
1179 Ecore_X_Atom *targprop,
1181 EAPI void ecore_x_selection_converter_add(char *target, Eina_Bool (*func)(
1189 EAPI void ecore_x_selection_converter_atom_add(Ecore_X_Atom target, Eina_Bool (*func)(
1195 Ecore_X_Atom *tprop,
1197 EAPI void ecore_x_selection_converter_del(char *target);
1198 EAPI void ecore_x_selection_converter_atom_del(
1199 Ecore_X_Atom target);
1200 EAPI void ecore_x_selection_parser_add(const char *target,
1201 void *(*func)(const char *target,
1202 void *data, int size,
1204 EAPI void ecore_x_selection_parser_del(const char *target);
1206 EAPI void ecore_x_dnd_aware_set(Ecore_X_Window win, Eina_Bool on);
1207 EAPI void ecore_x_dnd_version_get_prefetch(Ecore_X_Window window);
1208 EAPI void ecore_x_dnd_version_get_fetch(void);
1209 EAPI int ecore_x_dnd_version_get(Ecore_X_Window win);
1210 EAPI void ecore_x_dnd_type_get_prefetch(Ecore_X_Window window);
1211 EAPI void ecore_x_dnd_type_get_fetch(void);
1212 EAPI Eina_Bool ecore_x_dnd_type_isset(Ecore_X_Window win,
1214 EAPI void ecore_x_dnd_type_set(Ecore_X_Window win,
1217 EAPI void ecore_x_dnd_types_set(Ecore_X_Window win,
1219 unsigned int num_types);
1220 EAPI void ecore_x_dnd_actions_set(Ecore_X_Window win,
1221 Ecore_X_Atom *actions,
1222 unsigned int num_actions);
1223 EAPI void ecore_x_dnd_begin_prefetch(Ecore_X_Window source);
1224 EAPI void ecore_x_dnd_begin_fetch(void);
1225 EAPI Eina_Bool ecore_x_dnd_begin(Ecore_X_Window source,
1226 unsigned char *data,
1228 EAPI Eina_Bool ecore_x_dnd_drop(void);
1229 EAPI void ecore_x_dnd_send_status(Eina_Bool will_accept,
1231 Ecore_X_Rectangle rectangle,
1232 Ecore_X_Atom action);
1233 EAPI void ecore_x_dnd_send_finished(void);
1234 EAPI void ecore_x_dnd_source_action_set(Ecore_X_Atom action);
1235 EAPI Ecore_X_Atom ecore_x_dnd_source_action_get(void);
1236 EAPI void ecore_x_dnd_callback_pos_update_set(void (*cb)(void *, Ecore_X_Xdnd_Position *data),
1239 EAPI Ecore_X_Window ecore_x_window_new(Ecore_X_Window parent,
1244 EAPI Ecore_X_Window ecore_x_window_override_new(Ecore_X_Window parent,
1249 EAPI int ecore_x_window_argb_get(Ecore_X_Window win);
1250 EAPI Ecore_X_Window ecore_x_window_manager_argb_new(Ecore_X_Window parent,
1255 EAPI Ecore_X_Window ecore_x_window_argb_new(Ecore_X_Window parent,
1260 EAPI Ecore_X_Window ecore_x_window_override_argb_new(Ecore_X_Window parent,
1265 EAPI Ecore_X_Window ecore_x_window_input_new(Ecore_X_Window parent,
1270 EAPI void ecore_x_window_configure(
1272 Ecore_X_Window_Configure_Mask
1279 Ecore_X_Window sibling,
1281 EAPI void ecore_x_window_cursor_set(Ecore_X_Window win,
1283 EAPI void ecore_x_window_free(Ecore_X_Window win);
1284 EAPI void ecore_x_window_ignore_set(Ecore_X_Window win,
1286 EAPI Ecore_X_Window * ecore_x_window_ignore_list(int *num);
1288 EAPI void ecore_x_window_delete_request_send(
1289 Ecore_X_Window win);
1290 EAPI void ecore_x_window_show(Ecore_X_Window win);
1291 EAPI void ecore_x_window_hide(Ecore_X_Window win);
1292 EAPI void ecore_x_window_move(Ecore_X_Window win,
1295 EAPI void ecore_x_window_resize(Ecore_X_Window win,
1298 EAPI void ecore_x_window_move_resize(Ecore_X_Window win,
1303 EAPI void ecore_x_window_focus(Ecore_X_Window win);
1304 EAPI void ecore_x_window_focus_at_time(Ecore_X_Window win,
1306 EAPI void ecore_x_get_input_focus_prefetch(void);
1307 EAPI void ecore_x_get_input_focus_fetch(void);
1308 EAPI Ecore_X_Window ecore_x_window_focus_get(void);
1309 EAPI void ecore_x_window_raise(Ecore_X_Window win);
1310 EAPI void ecore_x_window_lower(Ecore_X_Window win);
1311 EAPI void ecore_x_window_reparent(Ecore_X_Window win,
1312 Ecore_X_Window new_parent,
1315 EAPI void ecore_x_window_size_get(Ecore_X_Window win,
1318 EAPI void ecore_x_window_geometry_get(Ecore_X_Window win,
1323 EAPI int ecore_x_window_border_width_get(
1324 Ecore_X_Window win);
1325 EAPI void ecore_x_window_border_width_set(
1328 EAPI int ecore_x_window_depth_get(Ecore_X_Window win);
1329 EAPI void ecore_x_window_cursor_show(Ecore_X_Window win,
1331 EAPI void ecore_x_window_defaults_set(Ecore_X_Window win);
1332 EAPI int ecore_x_window_visible_get(Ecore_X_Window win);
1333 EAPI Ecore_X_Window ecore_x_window_shadow_tree_at_xy_with_skip_get(
1334 Ecore_X_Window base,
1337 Ecore_X_Window *skip,
1339 EAPI Ecore_X_Window ecore_x_window_shadow_parent_get(
1340 Ecore_X_Window root,
1341 Ecore_X_Window win);
1342 EAPI void ecore_x_window_shadow_tree_flush(void);
1343 EAPI Ecore_X_Window ecore_x_window_root_get(Ecore_X_Window win);
1344 EAPI Ecore_X_Window ecore_x_window_at_xy_get(int x, int y);
1345 EAPI Ecore_X_Window ecore_x_window_at_xy_with_skip_get(int x,
1347 Ecore_X_Window *skip,
1349 EAPI Ecore_X_Window ecore_x_window_at_xy_begin_get(
1350 Ecore_X_Window begin,
1353 EAPI void ecore_x_query_tree_prefetch(
1354 Ecore_X_Window window);
1355 EAPI void ecore_x_query_tree_fetch(void);
1356 EAPI Ecore_X_Window ecore_x_window_parent_get(Ecore_X_Window win);
1358 EAPI void ecore_x_window_background_color_set(
1366 EAPI void ecore_x_window_gravity_set(Ecore_X_Window win,
1367 Ecore_X_Gravity grav);
1368 EAPI void ecore_x_window_pixel_gravity_set(
1372 EAPI void ecore_x_window_pixmap_set(Ecore_X_Window win,
1373 Ecore_X_Pixmap pmap);
1374 EAPI void ecore_x_window_area_clear(Ecore_X_Window win,
1379 EAPI void ecore_x_window_area_expose(Ecore_X_Window win,
1384 EAPI void ecore_x_window_override_set(Ecore_X_Window win,
1385 Eina_Bool override);
1387 EAPI void ecore_x_window_prop_card32_set(
1392 EAPI void ecore_x_window_prop_card32_get_prefetch(
1393 Ecore_X_Window window,
1396 EAPI void ecore_x_window_prop_card32_get_fetch(void);
1397 EAPI int ecore_x_window_prop_card32_get(
1402 EAPI int ecore_x_window_prop_card32_list_get(
1409 EAPI void ecore_x_window_prop_xid_set(Ecore_X_Window win,
1414 EAPI void ecore_x_window_prop_xid_get_prefetch(
1415 Ecore_X_Window window,
1420 EAPI void ecore_x_window_prop_xid_get_fetch(void);
1421 EAPI int ecore_x_window_prop_xid_get(Ecore_X_Window win,
1426 EAPI int ecore_x_window_prop_xid_list_get(
1434 EAPI void ecore_x_window_prop_xid_list_change(
1443 EAPI void ecore_x_window_prop_atom_set(Ecore_X_Window win,
1447 EAPI void ecore_x_window_prop_atom_get_prefetch(
1448 Ecore_X_Window window,
1451 EAPI void ecore_x_window_prop_atom_get_fetch(void);
1452 EAPI int ecore_x_window_prop_atom_get(Ecore_X_Window win,
1456 EAPI int ecore_x_window_prop_atom_list_get(
1462 EAPI void ecore_x_window_prop_atom_list_change(
1469 EAPI void ecore_x_window_prop_window_set(
1475 EAPI void ecore_x_window_prop_window_get_prefetch(
1476 Ecore_X_Window window,
1479 EAPI void ecore_x_window_prop_window_get_fetch(void);
1480 EAPI int ecore_x_window_prop_window_get(
1486 EAPI int ecore_x_window_prop_window_list_get(
1493 EAPI Ecore_X_Atom ecore_x_window_prop_any_type(void);
1494 EAPI void ecore_x_window_prop_property_set(
1497 Ecore_X_Atom format,
1501 EAPI void ecore_x_window_prop_property_get_prefetch(
1502 Ecore_X_Window window,
1507 EAPI void ecore_x_window_prop_property_get_fetch(void);
1508 EAPI int ecore_x_window_prop_property_get(
1510 Ecore_X_Atom property,
1513 unsigned char **data,
1515 EAPI void ecore_x_window_prop_property_del(
1517 Ecore_X_Atom property);
1518 EAPI void ecore_x_window_prop_list_prefetch(
1519 Ecore_X_Window window);
1520 EAPI void ecore_x_window_prop_list_fetch(void);
1521 EAPI Ecore_X_Atom * ecore_x_window_prop_list(Ecore_X_Window win,
1523 EAPI void ecore_x_window_prop_string_set(
1527 EAPI void ecore_x_window_prop_string_get_prefetch(
1528 Ecore_X_Window window,
1531 EAPI void ecore_x_window_prop_string_get_fetch(void);
1532 EAPI char * ecore_x_window_prop_string_get(
1535 EAPI Eina_Bool ecore_x_window_prop_protocol_isset(
1537 Ecore_X_WM_Protocol protocol);
1538 EAPI Ecore_X_WM_Protocol * ecore_x_window_prop_protocol_list_get(
1542 EAPI void ecore_x_window_shape_mask_set(Ecore_X_Window win,
1543 Ecore_X_Pixmap mask);
1544 EAPI void ecore_x_window_shape_window_set(
1546 Ecore_X_Window shape_win);
1547 EAPI void ecore_x_window_shape_window_set_xy(
1549 Ecore_X_Window shape_win,
1552 EAPI void ecore_x_window_shape_window_set_xy(
1554 Ecore_X_Window shape_win,
1557 EAPI void ecore_x_window_shape_rectangle_set(
1563 EAPI void ecore_x_window_shape_rectangles_set(
1565 Ecore_X_Rectangle *rects,
1567 EAPI void ecore_x_window_shape_input_rectangle_set(
1573 EAPI void ecore_x_window_shape_input_rectangles_set(
1575 Ecore_X_Rectangle *rects,
1577 EAPI void ecore_x_window_shape_input_rectangle_add(
1583 EAPI void ecore_x_window_shape_rectangle_subtract(
1589 EAPI void ecore_x_window_shape_input_rectangle_subtract(
1595 EAPI void ecore_x_window_shape_input_window_set_xy(
1597 Ecore_X_Window shape_win,
1600 EAPI void ecore_x_window_shape_input_window_set(
1602 Ecore_X_Window shape_win);
1603 EAPI void ecore_x_window_shape_window_add(
1605 Ecore_X_Window shape_win);
1606 EAPI void ecore_x_window_shape_window_add_xy(
1608 Ecore_X_Window shape_win,
1611 EAPI void ecore_x_window_shape_input_window_add_xy(
1613 Ecore_X_Window shape_win,
1616 EAPI void ecore_x_window_shape_rectangle_add(
1622 EAPI void ecore_x_window_shape_rectangle_clip(
1628 EAPI void ecore_x_window_shape_input_rectangle_clip(
1634 EAPI void ecore_x_window_shape_rectangles_add(
1636 Ecore_X_Rectangle *rects,
1638 EAPI void ecore_x_window_shape_input_rectangles_add(
1640 Ecore_X_Rectangle *rects,
1642 EAPI void ecore_x_window_shape_rectangles_get_prefetch(
1643 Ecore_X_Window window);
1644 EAPI void ecore_x_window_shape_rectangles_get_fetch(void);
1645 EAPI Ecore_X_Rectangle * ecore_x_window_shape_rectangles_get(
1648 EAPI Ecore_X_Rectangle * ecore_x_window_shape_input_rectangles_get(
1651 EAPI void ecore_x_window_shape_events_select(
1654 EAPI void ecore_x_window_shape_input_mask_set(
1656 Ecore_X_Pixmap mask);
1658 EAPI Ecore_X_Pixmap ecore_x_pixmap_new(Ecore_X_Window win,
1662 EAPI void ecore_x_pixmap_free(Ecore_X_Pixmap pmap);
1663 EAPI void ecore_x_pixmap_paste(Ecore_X_Pixmap pmap,
1664 Ecore_X_Drawable dest,
1672 EAPI void ecore_x_pixmap_geometry_get(Ecore_X_Pixmap pmap,
1677 EAPI int ecore_x_pixmap_depth_get(Ecore_X_Pixmap pmap);
1679 EAPI Ecore_X_GC ecore_x_gc_new(Ecore_X_Drawable draw,
1680 Ecore_X_GC_Value_Mask value_mask,
1681 const unsigned int *value_list);
1682 EAPI void ecore_x_gc_free(Ecore_X_GC gc);
1684 EAPI Eina_Bool ecore_x_client_message32_send(Ecore_X_Window win,
1686 Ecore_X_Event_Mask mask,
1692 EAPI Eina_Bool ecore_x_client_message8_send(Ecore_X_Window win,
1696 EAPI Eina_Bool ecore_x_mouse_move_send(Ecore_X_Window win,
1699 EAPI Eina_Bool ecore_x_mouse_down_send(Ecore_X_Window win,
1703 EAPI Eina_Bool ecore_x_mouse_up_send(Ecore_X_Window win,
1708 EAPI void ecore_x_drawable_geometry_get_prefetch(
1709 Ecore_X_Drawable drawable);
1710 EAPI void ecore_x_drawable_geometry_get_fetch(void);
1711 EAPI void ecore_x_drawable_geometry_get(Ecore_X_Drawable d,
1716 EAPI int ecore_x_drawable_border_width_get(
1717 Ecore_X_Drawable d);
1718 EAPI int ecore_x_drawable_depth_get(Ecore_X_Drawable d);
1719 EAPI void ecore_x_drawable_rectangle_fill(
1727 EAPI Eina_Bool ecore_x_cursor_color_supported_get(void);
1728 EAPI Ecore_X_Cursor ecore_x_cursor_new(Ecore_X_Window win,
1734 EAPI void ecore_x_cursor_free(Ecore_X_Cursor c);
1735 EAPI Ecore_X_Cursor ecore_x_cursor_shape_get(int shape);
1736 EAPI void ecore_x_cursor_size_set(int size);
1737 EAPI int ecore_x_cursor_size_get(void);
1739 /* FIXME: these funcs need categorising */
1740 EAPI Ecore_X_Window * ecore_x_window_root_list(int *num_ret);
1741 EAPI Ecore_X_Window ecore_x_window_root_first_get(void);
1742 EAPI Eina_Bool ecore_x_window_manage(Ecore_X_Window win);
1743 EAPI void ecore_x_window_container_manage(
1744 Ecore_X_Window win);
1745 EAPI void ecore_x_window_client_manage(Ecore_X_Window win);
1746 EAPI void ecore_x_window_sniff(Ecore_X_Window win);
1747 EAPI void ecore_x_window_client_sniff(Ecore_X_Window win);
1748 EAPI void ecore_x_atom_get_prefetch(const char *name);
1749 EAPI void ecore_x_atom_get_fetch(void);
1750 EAPI Ecore_X_Atom ecore_x_atom_get(const char *name);
1751 EAPI void ecore_x_atoms_get(const char **names,
1753 Ecore_X_Atom *atoms);
1754 EAPI void ecore_x_get_atom_name_prefetch(Ecore_X_Atom atom);
1755 EAPI void ecore_x_get_atom_name_fetch(void);
1756 EAPI char * ecore_x_atom_name_get(Ecore_X_Atom atom);
1758 EAPI void ecore_x_icccm_init(void);
1759 EAPI void ecore_x_icccm_state_set(
1761 Ecore_X_Window_State_Hint
1763 EAPI Ecore_X_Window_State_Hint ecore_x_icccm_state_get(Ecore_X_Window win);
1764 EAPI void ecore_x_icccm_delete_window_send(
1767 EAPI void ecore_x_icccm_take_focus_send(Ecore_X_Window win,
1769 EAPI void ecore_x_icccm_save_yourself_send(
1772 EAPI void ecore_x_icccm_move_resize_send(
1778 EAPI void ecore_x_icccm_hints_set(
1780 Eina_Bool accepts_focus,
1781 Ecore_X_Window_State_Hint
1785 Ecore_X_Pixmap icon_mask,
1790 Eina_Bool is_urgent);
1791 EAPI Eina_Bool ecore_x_icccm_hints_get(Ecore_X_Window win,
1792 Eina_Bool *accepts_focus,
1793 Ecore_X_Window_State_Hint *initial_state,
1794 Ecore_X_Pixmap *icon_pixmap,
1795 Ecore_X_Pixmap *icon_mask,
1796 Ecore_X_Window *icon_window,
1797 Ecore_X_Window *window_group,
1798 Eina_Bool *is_urgent);
1799 EAPI void ecore_x_icccm_size_pos_hints_set(Ecore_X_Window win,
1800 Eina_Bool request_pos,
1801 Ecore_X_Gravity gravity,
1802 int min_w, int min_h,
1803 int max_w, int max_h,
1804 int base_w, int base_h,
1805 int step_x, int step_y,
1808 EAPI Eina_Bool ecore_x_icccm_size_pos_hints_get(Ecore_X_Window win,
1809 Eina_Bool *request_pos,
1810 Ecore_X_Gravity *gravity,
1811 int *min_w, int *min_h,
1812 int *max_w, int *max_h,
1813 int *base_w, int *base_h,
1814 int *step_x, int *step_y,
1816 double *max_aspect);
1817 EAPI void ecore_x_icccm_title_set(Ecore_X_Window win, const char *t);
1818 EAPI char * ecore_x_icccm_title_get(Ecore_X_Window win);
1819 EAPI void ecore_x_icccm_protocol_atoms_set(Ecore_X_Window win,
1820 Ecore_X_Atom *protos,
1822 EAPI void ecore_x_icccm_protocol_set(Ecore_X_Window win,
1823 Ecore_X_WM_Protocol protocol,
1825 EAPI Eina_Bool ecore_x_icccm_protocol_isset(Ecore_X_Window win,
1826 Ecore_X_WM_Protocol protocol);
1827 EAPI void ecore_x_icccm_name_class_set(Ecore_X_Window win,
1830 EAPI void ecore_x_icccm_name_class_get(Ecore_X_Window win,
1833 EAPI char * ecore_x_icccm_client_machine_get(Ecore_X_Window win);
1834 EAPI void ecore_x_icccm_command_set(Ecore_X_Window win,
1837 EAPI void ecore_x_icccm_command_get(Ecore_X_Window win,
1840 EAPI char * ecore_x_icccm_icon_name_get(Ecore_X_Window win);
1841 EAPI void ecore_x_icccm_icon_name_set(Ecore_X_Window win,
1843 EAPI void ecore_x_icccm_colormap_window_set(Ecore_X_Window win,
1844 Ecore_X_Window subwin);
1845 EAPI void ecore_x_icccm_colormap_window_unset(Ecore_X_Window win,
1846 Ecore_X_Window subwin);
1847 EAPI void ecore_x_icccm_transient_for_set(Ecore_X_Window win,
1848 Ecore_X_Window forwin);
1849 EAPI void ecore_x_icccm_transient_for_unset(Ecore_X_Window win);
1850 EAPI Ecore_X_Window ecore_x_icccm_transient_for_get(Ecore_X_Window win);
1851 EAPI void ecore_x_icccm_window_role_set(Ecore_X_Window win,
1853 EAPI char * ecore_x_icccm_window_role_get(Ecore_X_Window win);
1854 EAPI void ecore_x_icccm_client_leader_set(Ecore_X_Window win,
1856 EAPI Ecore_X_Window ecore_x_icccm_client_leader_get(Ecore_X_Window win);
1857 EAPI void ecore_x_icccm_iconic_request_send(Ecore_X_Window win,
1858 Ecore_X_Window root);
1860 typedef enum _Ecore_X_MWM_Hint_Func
1862 ECORE_X_MWM_HINT_FUNC_ALL = (1 << 0),
1863 ECORE_X_MWM_HINT_FUNC_RESIZE = (1 << 1),
1864 ECORE_X_MWM_HINT_FUNC_MOVE = (1 << 2),
1865 ECORE_X_MWM_HINT_FUNC_MINIMIZE = (1 << 3),
1866 ECORE_X_MWM_HINT_FUNC_MAXIMIZE = (1 << 4),
1867 ECORE_X_MWM_HINT_FUNC_CLOSE = (1 << 5)
1868 } Ecore_X_MWM_Hint_Func;
1870 typedef enum _Ecore_X_MWM_Hint_Decor
1872 ECORE_X_MWM_HINT_DECOR_ALL = (1 << 0),
1873 ECORE_X_MWM_HINT_DECOR_BORDER = (1 << 1),
1874 ECORE_X_MWM_HINT_DECOR_RESIZEH = (1 << 2),
1875 ECORE_X_MWM_HINT_DECOR_TITLE = (1 << 3),
1876 ECORE_X_MWM_HINT_DECOR_MENU = (1 << 4),
1877 ECORE_X_MWM_HINT_DECOR_MINIMIZE = (1 << 5),
1878 ECORE_X_MWM_HINT_DECOR_MAXIMIZE = (1 << 6)
1879 } Ecore_X_MWM_Hint_Decor;
1881 typedef enum _Ecore_X_MWM_Hint_Input
1883 ECORE_X_MWM_HINT_INPUT_MODELESS = 0,
1884 ECORE_X_MWM_HINT_INPUT_PRIMARY_APPLICATION_MODAL = 1,
1885 ECORE_X_MWM_HINT_INPUT_SYSTEM_MODAL = 2,
1886 ECORE_X_MWM_HINT_INPUT_FULL_APPLICATION_MODAL = 3
1887 } Ecore_X_MWM_Hint_Input;
1889 EAPI void ecore_x_mwm_hints_get_prefetch(
1890 Ecore_X_Window window);
1891 EAPI void ecore_x_mwm_hints_get_fetch(void);
1892 EAPI Eina_Bool ecore_x_mwm_hints_get(
1894 Ecore_X_MWM_Hint_Func
1896 Ecore_X_MWM_Hint_Decor
1898 Ecore_X_MWM_Hint_Input
1900 EAPI void ecore_x_mwm_borderless_set(
1902 Eina_Bool borderless);
1905 EAPI void ecore_x_netwm_init(void);
1906 EAPI void ecore_x_netwm_shutdown(void);
1907 EAPI void ecore_x_netwm_wm_identify(
1908 Ecore_X_Window root,
1909 Ecore_X_Window check,
1910 const char *wm_name);
1911 EAPI void ecore_x_netwm_supported_set(
1912 Ecore_X_Window root,
1913 Ecore_X_Atom *supported,
1915 EAPI void ecore_x_netwm_supported_get_prefetch(
1916 Ecore_X_Window root);
1917 EAPI void ecore_x_netwm_supported_get_fetch(void);
1918 EAPI Eina_Bool ecore_x_netwm_supported_get(
1919 Ecore_X_Window root,
1920 Ecore_X_Atom **supported,
1922 EAPI void ecore_x_netwm_desk_count_set(
1923 Ecore_X_Window root,
1924 unsigned int n_desks);
1925 EAPI void ecore_x_netwm_desk_roots_set(
1926 Ecore_X_Window root,
1927 Ecore_X_Window *vroots,
1928 unsigned int n_desks);
1929 EAPI void ecore_x_netwm_desk_names_set(
1930 Ecore_X_Window root,
1932 unsigned int n_desks);
1933 EAPI void ecore_x_netwm_desk_size_set(
1934 Ecore_X_Window root,
1936 unsigned int height);
1937 EAPI void ecore_x_netwm_desk_workareas_set(
1938 Ecore_X_Window root,
1939 unsigned int *areas,
1940 unsigned int n_desks);
1941 EAPI void ecore_x_netwm_desk_current_set(
1942 Ecore_X_Window root,
1944 EAPI void ecore_x_netwm_desk_viewports_set(
1945 Ecore_X_Window root,
1946 unsigned int *origins,
1947 unsigned int n_desks);
1948 EAPI void ecore_x_netwm_desk_layout_set(
1949 Ecore_X_Window root,
1953 int starting_corner);
1954 EAPI void ecore_x_netwm_showing_desktop_set(
1955 Ecore_X_Window root,
1957 EAPI void ecore_x_netwm_client_list_set(
1958 Ecore_X_Window root,
1959 Ecore_X_Window *p_clients,
1960 unsigned int n_clients);
1961 EAPI void ecore_x_netwm_client_list_stacking_set(
1962 Ecore_X_Window root,
1963 Ecore_X_Window *p_clients,
1964 unsigned int n_clients);
1965 EAPI void ecore_x_netwm_client_active_set(
1966 Ecore_X_Window root,
1967 Ecore_X_Window win);
1968 EAPI void ecore_x_netwm_client_active_request(
1969 Ecore_X_Window root,
1972 Ecore_X_Window current_win);
1973 EAPI void ecore_x_netwm_name_set(Ecore_X_Window win,
1975 EAPI void ecore_x_netwm_name_get_prefetch(
1976 Ecore_X_Window window);
1977 EAPI void ecore_x_netwm_name_get_fetch(void);
1978 EAPI int ecore_x_netwm_name_get(Ecore_X_Window win,
1980 EAPI void ecore_x_netwm_startup_id_set(
1983 EAPI void ecore_x_netwm_startup_id_get_prefetch(
1984 Ecore_X_Window window);
1985 EAPI void ecore_x_netwm_startup_id_get_fetch(void);
1986 EAPI int ecore_x_netwm_startup_id_get(
1989 EAPI void ecore_x_netwm_visible_name_set(
1992 EAPI void ecore_x_netwm_visible_name_get_prefetch(
1993 Ecore_X_Window window);
1994 EAPI void ecore_x_netwm_visible_name_get_fetch(void);
1995 EAPI int ecore_x_netwm_visible_name_get(
1998 EAPI void ecore_x_netwm_icon_name_set(
2001 EAPI void ecore_x_netwm_icon_name_get_prefetch(
2002 Ecore_X_Window window);
2003 EAPI void ecore_x_netwm_icon_name_get_fetch(void);
2004 EAPI int ecore_x_netwm_icon_name_get(
2007 EAPI void ecore_x_netwm_visible_icon_name_set(
2011 ecore_x_netwm_visible_icon_name_get_prefetch(Ecore_X_Window window);
2012 EAPI void ecore_x_netwm_visible_icon_name_get_fetch(
2014 EAPI int ecore_x_netwm_visible_icon_name_get(
2017 EAPI void ecore_x_netwm_desktop_set(
2020 EAPI void ecore_x_netwm_desktop_get_prefetch(
2021 Ecore_X_Window window);
2022 EAPI void ecore_x_netwm_desktop_get_fetch(void);
2023 EAPI Eina_Bool ecore_x_netwm_desktop_get(
2025 unsigned int *desk);
2026 EAPI void ecore_x_netwm_strut_set(Ecore_X_Window win,
2031 EAPI void ecore_x_netwm_strut_get_prefetch(
2032 Ecore_X_Window window);
2033 EAPI void ecore_x_netwm_strut_get_fetch(void);
2034 EAPI Eina_Bool ecore_x_netwm_strut_get(Ecore_X_Window win,
2039 EAPI void ecore_x_netwm_strut_partial_set(
2053 EAPI void ecore_x_netwm_strut_partial_get_prefetch(
2054 Ecore_X_Window window);
2055 EAPI void ecore_x_netwm_strut_partial_get_fetch(void);
2056 EAPI Eina_Bool ecore_x_netwm_strut_partial_get(
2068 int *bottom_start_x,
2070 EAPI void ecore_x_netwm_icons_get_prefetch(
2071 Ecore_X_Window window);
2072 EAPI void ecore_x_netwm_icons_get_fetch(void);
2073 EAPI Eina_Bool ecore_x_netwm_icons_get(Ecore_X_Window win,
2074 Ecore_X_Icon **icon,
2076 EAPI void ecore_x_netwm_icon_geometry_set(
2082 EAPI void ecore_x_netwm_icon_geometry_get_prefetch(
2083 Ecore_X_Window window);
2084 EAPI void ecore_x_netwm_icon_geometry_get_fetch(void);
2085 EAPI Eina_Bool ecore_x_netwm_icon_geometry_get(
2091 EAPI void ecore_x_netwm_pid_set(Ecore_X_Window win,
2093 EAPI void ecore_x_netwm_pid_get_prefetch(
2094 Ecore_X_Window window);
2095 EAPI void ecore_x_netwm_pid_get_fetch(void);
2096 EAPI Eina_Bool ecore_x_netwm_pid_get(Ecore_X_Window win,
2098 EAPI void ecore_x_netwm_handled_icons_set(
2099 Ecore_X_Window win);
2100 EAPI void ecore_x_netwm_handled_icons_get_prefetch(
2101 Ecore_X_Window window);
2102 EAPI void ecore_x_netwm_handled_icons_get_fetch(void);
2103 EAPI Eina_Bool ecore_x_netwm_handled_icons_get(
2104 Ecore_X_Window win);
2105 EAPI void ecore_x_netwm_user_time_set(
2108 EAPI void ecore_x_netwm_user_time_get_prefetch(
2109 Ecore_X_Window window);
2110 EAPI void ecore_x_netwm_user_time_get_fetch(void);
2111 EAPI Eina_Bool ecore_x_netwm_user_time_get(
2113 unsigned int *time);
2114 EAPI void ecore_x_netwm_window_state_set(
2116 Ecore_X_Window_State *state,
2118 EAPI void ecore_x_netwm_window_state_get_prefetch(
2119 Ecore_X_Window window);
2120 EAPI void ecore_x_netwm_window_state_get_fetch(void);
2121 EAPI Eina_Bool ecore_x_netwm_window_state_get(
2123 Ecore_X_Window_State **state,
2125 EAPI void ecore_x_netwm_window_type_set(
2127 Ecore_X_Window_Type type);
2128 EAPI void ecore_x_netwm_window_type_get_prefetch(
2129 Ecore_X_Window window);
2130 EAPI void ecore_x_netwm_window_type_get_fetch(void);
2131 EAPI Eina_Bool ecore_x_netwm_window_type_get(
2133 Ecore_X_Window_Type *type);
2134 EAPI int ecore_x_netwm_window_types_get(
2136 Ecore_X_Window_Type **types);
2137 EAPI Eina_Bool ecore_x_netwm_allowed_action_isset(
2139 Ecore_X_Action action);
2140 EAPI void ecore_x_netwm_allowed_action_set(
2142 Ecore_X_Action *action,
2144 EAPI void ecore_x_netwm_allowed_action_get_prefetch(
2145 Ecore_X_Window window);
2146 EAPI void ecore_x_netwm_allowed_action_get_fetch(
2148 EAPI Eina_Bool ecore_x_netwm_allowed_action_get(
2150 Ecore_X_Action **action,
2152 EAPI void ecore_x_netwm_opacity_set(
2154 unsigned int opacity);
2155 EAPI void ecore_x_netwm_opacity_get_prefetch(
2156 Ecore_X_Window window);
2157 EAPI void ecore_x_netwm_opacity_get_fetch(void);
2158 EAPI Eina_Bool ecore_x_netwm_opacity_get(
2160 unsigned int *opacity);
2161 EAPI void ecore_x_netwm_frame_size_set(
2167 EAPI void ecore_x_netwm_frame_size_get_prefetch(
2168 Ecore_X_Window window);
2169 EAPI void ecore_x_netwm_frame_size_get_fetch(void);
2170 EAPI Eina_Bool ecore_x_netwm_frame_size_get(
2176 EAPI void ecore_x_netwm_sync_counter_get_prefetch(
2177 Ecore_X_Window window);
2178 EAPI void ecore_x_netwm_sync_counter_get_fetch(void);
2179 EAPI Eina_Bool ecore_x_netwm_sync_counter_get(
2181 Ecore_X_Sync_Counter *counter);
2182 EAPI void ecore_x_netwm_ping_send(Ecore_X_Window win);
2183 EAPI void ecore_x_netwm_sync_request_send(
2185 unsigned int serial);
2186 EAPI void ecore_x_netwm_state_request_send(
2188 Ecore_X_Window root,
2189 Ecore_X_Window_State s1,
2190 Ecore_X_Window_State s2,
2192 EAPI void ecore_x_netwm_desktop_request_send(
2194 Ecore_X_Window root,
2195 unsigned int desktop);
2197 EAPI void ecore_x_e_init(void);
2198 EAPI void ecore_x_e_frame_size_set(
2204 EAPI void ecore_x_e_virtual_keyboard_set(
2206 unsigned int is_keyboard);
2207 EAPI Eina_Bool ecore_x_e_virtual_keyboard_get(
2208 Ecore_X_Window win);
2209 EAPI void ecore_x_e_virtual_keyboard_state_set(
2211 Ecore_X_Virtual_Keyboard_State state);
2212 EAPI Ecore_X_Virtual_Keyboard_State ecore_x_e_virtual_keyboard_state_get(
2213 Ecore_X_Window win);
2214 EAPI void ecore_x_e_virtual_keyboard_state_send(
2216 Ecore_X_Virtual_Keyboard_State state);
2218 /* Illume functions */
2219 EAPI void ecore_x_e_illume_zone_set(
2221 Ecore_X_Window zone);
2222 EAPI Ecore_X_Window ecore_x_e_illume_zone_get(
2223 Ecore_X_Window win);
2224 EAPI void ecore_x_e_illume_zone_list_set(
2226 Ecore_X_Window *zones,
2227 unsigned int n_zones);
2228 EAPI void ecore_x_e_illume_conformant_set(
2230 unsigned int is_conformant);
2231 EAPI Eina_Bool ecore_x_e_illume_conformant_get(
2232 Ecore_X_Window win);
2233 EAPI void ecore_x_e_illume_mode_set(
2235 Ecore_X_Illume_Mode mode);
2236 EAPI Ecore_X_Illume_Mode ecore_x_e_illume_mode_get(
2237 Ecore_X_Window win);
2238 EAPI void ecore_x_e_illume_mode_send(
2240 Ecore_X_Illume_Mode mode);
2241 EAPI void ecore_x_e_illume_focus_back_send(
2242 Ecore_X_Window win);
2243 EAPI void ecore_x_e_illume_focus_forward_send(
2244 Ecore_X_Window win);
2245 EAPI void ecore_x_e_illume_focus_home_send(
2246 Ecore_X_Window win);
2247 EAPI void ecore_x_e_illume_close_send(
2248 Ecore_X_Window win);
2249 EAPI void ecore_x_e_illume_home_new_send(
2250 Ecore_X_Window win);
2251 EAPI void ecore_x_e_illume_home_del_send(
2252 Ecore_X_Window win);
2253 EAPI void ecore_x_e_illume_drag_set(
2256 EAPI Eina_Bool ecore_x_e_illume_drag_get(
2257 Ecore_X_Window win);
2258 EAPI void ecore_x_e_illume_drag_locked_set(
2260 unsigned int is_locked);
2261 EAPI Eina_Bool ecore_x_e_illume_drag_locked_get(
2262 Ecore_X_Window win);
2263 EAPI void ecore_x_e_illume_drag_start_send(
2264 Ecore_X_Window win);
2265 EAPI void ecore_x_e_illume_drag_end_send(
2266 Ecore_X_Window win);
2267 EAPI void ecore_x_e_illume_indicator_geometry_set(
2273 EAPI Eina_Bool ecore_x_e_illume_indicator_geometry_get(
2279 EAPI void ecore_x_e_illume_softkey_geometry_set(
2285 EAPI Eina_Bool ecore_x_e_illume_softkey_geometry_get(
2291 EAPI void ecore_x_e_illume_keyboard_geometry_set(
2297 EAPI Eina_Bool ecore_x_e_illume_keyboard_geometry_get(
2303 EAPI void ecore_x_e_illume_quickpanel_set(
2305 unsigned int is_quickpanel);
2306 EAPI Eina_Bool ecore_x_e_illume_quickpanel_get(
2307 Ecore_X_Window win);
2308 EAPI void ecore_x_e_illume_quickpanel_state_set(
2310 Ecore_X_Illume_Quickpanel_State state);
2311 EAPI Ecore_X_Illume_Quickpanel_State ecore_x_e_illume_quickpanel_state_get(
2312 Ecore_X_Window win);
2313 EAPI void ecore_x_e_illume_quickpanel_state_send(
2315 Ecore_X_Illume_Quickpanel_State state);
2316 EAPI void ecore_x_e_illume_quickpanel_state_toggle(
2317 Ecore_X_Window win);
2318 EAPI void ecore_x_e_illume_quickpanel_priority_major_set(
2320 unsigned int priority);
2321 EAPI int ecore_x_e_illume_quickpanel_priority_major_get(
2322 Ecore_X_Window win);
2323 EAPI void ecore_x_e_illume_quickpanel_priority_minor_set(
2325 unsigned int priority);
2326 EAPI int ecore_x_e_illume_quickpanel_priority_minor_get(
2327 Ecore_X_Window win);
2328 EAPI void ecore_x_e_illume_quickpanel_zone_set(
2331 EAPI int ecore_x_e_illume_quickpanel_zone_get(
2332 Ecore_X_Window win);
2334 ecore_x_e_illume_quickpanel_zone_request_send(
2335 Ecore_X_Window win);
2337 ecore_x_e_illume_quickpanel_position_update_send(
2338 Ecore_X_Window win);
2340 /* added by doyoun.kang - for sliding window */
2341 EAPI void ecore_x_e_illume_sliding_win_state_set(
2343 unsigned int is_visible);
2344 EAPI int ecore_x_e_illume_sliding_win_state_get(
2345 Ecore_X_Window win);
2346 EAPI void ecore_x_e_illume_sliding_win_geometry_set(
2352 EAPI int ecore_x_e_illume_sliding_win_geometry_get(
2359 EAPI void ecore_x_e_comp_sync_counter_set(
2361 Ecore_X_Sync_Counter counter);
2362 EAPI Ecore_X_Sync_Counter ecore_x_e_comp_sync_counter_get(
2363 Ecore_X_Window win);
2364 EAPI void ecore_x_e_comp_sync_draw_done_send(
2365 Ecore_X_Window root,
2366 Ecore_X_Window win);
2367 EAPI void ecore_x_e_comp_sync_draw_size_done_send(
2368 Ecore_X_Window root,
2372 EAPI void ecore_x_e_comp_sync_supported_set(
2373 Ecore_X_Window root,
2375 EAPI Eina_Bool ecore_x_e_comp_sync_supported_get(
2376 Ecore_X_Window root);
2377 EAPI void ecore_x_e_comp_sync_begin_send(
2378 Ecore_X_Window win);
2379 EAPI void ecore_x_e_comp_sync_end_send(
2380 Ecore_X_Window win);
2381 EAPI void ecore_x_e_comp_sync_cancel_send(
2382 Ecore_X_Window win);
2384 EAPI void ecore_x_e_comp_flush_send(
2385 Ecore_X_Window win);
2386 EAPI void ecore_x_e_comp_dump_send(
2387 Ecore_X_Window win);
2388 EAPI void ecore_x_e_comp_pixmap_set(
2390 Ecore_X_Pixmap pixmap);
2391 EAPI Ecore_X_Pixmap ecore_x_e_comp_pixmap_get(
2392 Ecore_X_Window win);
2394 EAPI void ecore_x_e_comp_dri_buff_flip_supported_set(Ecore_X_Window root, Eina_Bool enabled);
2395 EAPI Eina_Bool ecore_x_e_comp_dri_buff_flip_supported_get(Ecore_X_Window root);
2397 EAPI Ecore_X_Sync_Alarm ecore_x_sync_alarm_new(
2398 Ecore_X_Sync_Counter counter);
2399 EAPI Eina_Bool ecore_x_sync_alarm_free(
2400 Ecore_X_Sync_Alarm alarm);
2401 EAPI Eina_Bool ecore_x_sync_counter_query(
2402 Ecore_X_Sync_Counter counter,
2404 EAPI Ecore_X_Sync_Counter ecore_x_sync_counter_new(int val);
2405 EAPI void ecore_x_sync_counter_free(
2406 Ecore_X_Sync_Counter counter);
2407 EAPI void ecore_x_sync_counter_inc(
2408 Ecore_X_Sync_Counter counter,
2410 EAPI void ecore_x_sync_counter_val_wait(
2411 Ecore_X_Sync_Counter counter,
2414 EAPI void ecore_x_sync_counter_set(Ecore_X_Sync_Counter counter, int val);
2415 EAPI void ecore_x_sync_counter_2_set(Ecore_X_Sync_Counter counter, int val_hi, unsigned int val_lo);
2416 EAPI Eina_Bool ecore_x_sync_counter_2_query(Ecore_X_Sync_Counter counter, int *val_hi, unsigned int *val_lo);
2418 EAPI void ecore_x_xinerama_query_screens_prefetch(
2420 EAPI void ecore_x_xinerama_query_screens_fetch(void);
2421 EAPI int ecore_x_xinerama_screen_count_get(void);
2422 EAPI Eina_Bool ecore_x_xinerama_screen_geometry_get(
2429 EAPI Eina_Bool ecore_x_screensaver_event_available_get(
2431 EAPI void ecore_x_screensaver_idle_time_prefetch(
2433 EAPI void ecore_x_screensaver_idle_time_fetch(void);
2434 EAPI int ecore_x_screensaver_idle_time_get(void);
2435 EAPI void ecore_x_get_screensaver_prefetch(void);
2436 EAPI void ecore_x_get_screensaver_fetch(void);
2437 EAPI void ecore_x_screensaver_set(int timeout,
2439 int prefer_blanking,
2440 int allow_exposures);
2441 EAPI void ecore_x_screensaver_timeout_set(
2443 EAPI int ecore_x_screensaver_timeout_get(void);
2444 EAPI void ecore_x_screensaver_blank_set(int timeout);
2445 EAPI int ecore_x_screensaver_blank_get(void);
2446 EAPI void ecore_x_screensaver_expose_set(int timeout);
2447 EAPI int ecore_x_screensaver_expose_get(void);
2448 EAPI void ecore_x_screensaver_interval_set(
2450 EAPI int ecore_x_screensaver_interval_get(void);
2451 EAPI void ecore_x_screensaver_event_listen_set(
2454 /* FIXME: these funcs need categorising */
2456 typedef struct _Ecore_X_Window_Attributes
2458 Ecore_X_Window root;
2462 unsigned char visible : 1;
2463 unsigned char viewable : 1;
2464 unsigned char override : 1;
2465 unsigned char input_only : 1;
2466 unsigned char save_under : 1;
2469 Ecore_X_Event_Mask mine;
2470 Ecore_X_Event_Mask all;
2471 Ecore_X_Event_Mask no_propagate;
2473 Ecore_X_Gravity window_gravity;
2474 Ecore_X_Gravity pixel_gravity;
2475 Ecore_X_Colormap colormap;
2476 Ecore_X_Visual visual;
2478 * int map_installed;
2481 } Ecore_X_Window_Attributes;
2483 EAPI void ecore_x_get_window_attributes_prefetch(
2484 Ecore_X_Window window);
2485 EAPI void ecore_x_get_window_attributes_fetch(void);
2486 EAPI Eina_Bool ecore_x_window_attributes_get(
2488 Ecore_X_Window_Attributes *
2490 EAPI void ecore_x_window_save_set_add(Ecore_X_Window win);
2491 EAPI void ecore_x_window_save_set_del(Ecore_X_Window win);
2492 EAPI Ecore_X_Window * ecore_x_window_children_get(Ecore_X_Window win, int *num);
2494 EAPI Eina_Bool ecore_x_pointer_control_set(int accel_num,
2497 EAPI void ecore_x_pointer_control_get_prefetch(void);
2498 EAPI void ecore_x_pointer_control_get_fetch(void);
2499 EAPI Eina_Bool ecore_x_pointer_control_get(int *accel_num,
2502 EAPI Eina_Bool ecore_x_pointer_mapping_set(unsigned char *map, int nmap);
2503 EAPI void ecore_x_pointer_mapping_get_prefetch(void);
2504 EAPI void ecore_x_pointer_mapping_get_fetch(void);
2505 EAPI Eina_Bool ecore_x_pointer_mapping_get(unsigned char *map, int nmap);
2506 EAPI Eina_Bool ecore_x_pointer_grab(Ecore_X_Window win);
2507 EAPI Eina_Bool ecore_x_pointer_confine_grab(Ecore_X_Window win);
2508 EAPI void ecore_x_pointer_ungrab(void);
2509 EAPI Eina_Bool ecore_x_pointer_warp(Ecore_X_Window win, int x, int y);
2510 EAPI Eina_Bool ecore_x_keyboard_grab(Ecore_X_Window win);
2511 EAPI void ecore_x_keyboard_ungrab(void);
2512 EAPI void ecore_x_grab(void);
2513 EAPI void ecore_x_ungrab(void);
2514 EAPI void ecore_x_passive_grab_replay_func_set(Eina_Bool (*func)(void *data,
2518 EAPI void ecore_x_window_button_grab(Ecore_X_Window win, int button,
2519 Ecore_X_Event_Mask event_mask,
2520 int mod, int any_mod);
2521 EAPI void ecore_x_window_button_ungrab(Ecore_X_Window win,
2525 EAPI void ecore_x_window_key_grab(Ecore_X_Window win,
2529 EAPI void ecore_x_window_key_ungrab(Ecore_X_Window win,
2534 EAPI void ecore_x_focus_reset(void);
2535 EAPI void ecore_x_events_allow_all(void);
2536 EAPI void ecore_x_pointer_last_xy_get(int *x, int *y);
2537 EAPI void ecore_x_pointer_xy_get_prefetch(Ecore_X_Window window);
2538 EAPI void ecore_x_pointer_xy_get_fetch(void);
2539 EAPI void ecore_x_pointer_xy_get(Ecore_X_Window win, int *x, int *y);
2541 /* ecore_x_region.c */
2542 EAPI Ecore_X_XRegion * ecore_x_xregion_new(void);
2543 EAPI void ecore_x_xregion_free(Ecore_X_XRegion *region);
2544 EAPI Eina_Bool ecore_x_xregion_set(Ecore_X_XRegion *region,
2546 EAPI void ecore_x_xregion_translate(Ecore_X_XRegion *region,
2549 EAPI Eina_Bool ecore_x_xregion_intersect(Ecore_X_XRegion *dst,
2550 Ecore_X_XRegion *r1,
2551 Ecore_X_XRegion *r2);
2552 EAPI Eina_Bool ecore_x_xregion_union(Ecore_X_XRegion *dst,
2553 Ecore_X_XRegion *r1,
2554 Ecore_X_XRegion *r2);
2555 EAPI Eina_Bool ecore_x_xregion_union_rect(Ecore_X_XRegion *dst,
2556 Ecore_X_XRegion *src,
2557 Ecore_X_Rectangle *rect);
2558 EAPI Eina_Bool ecore_x_xregion_subtract(Ecore_X_XRegion *dst,
2559 Ecore_X_XRegion *r1,
2560 Ecore_X_XRegion *r2);
2561 EAPI Eina_Bool ecore_x_xregion_is_empty(Ecore_X_XRegion *region);
2562 EAPI Eina_Bool ecore_x_xregion_is_equal(Ecore_X_XRegion *r1,
2563 Ecore_X_XRegion *r2);
2564 EAPI Eina_Bool ecore_x_xregion_point_contain(Ecore_X_XRegion *region,
2567 EAPI Eina_Bool ecore_x_xregion_rect_contain(Ecore_X_XRegion *region,
2568 Ecore_X_Rectangle *rect);
2570 /* ecore_x_randr.c */
2572 /* The usage of 'Ecore_X_Randr_None' or 'Ecore_X_Randr_Unset'
2573 * depends on the context. In most cases 'Ecore_X_Randr_Unset'
2574 * can be used, but in some cases -1 is a special value to
2575 * functions, thus 'Ecore_X_Randr_None' (=0) musst be used.
2578 typedef short Ecore_X_Randr_Refresh_Rate;
2579 typedef int Ecore_X_Randr_Crtc_Gamma;
2580 typedef int Ecore_X_Randr_Signal_Format;
2581 typedef int Ecore_X_Randr_Signal_Property;
2582 typedef int Ecore_X_Randr_Connector_Type;
2584 typedef struct _Ecore_X_Randr_Mode_Info
2588 unsigned int height;
2589 unsigned long dotClock;
2590 unsigned int hSyncStart;
2591 unsigned int hSyncEnd;
2592 unsigned int hTotal;
2594 unsigned int vSyncStart;
2595 unsigned int vSyncEnd;
2596 unsigned int vTotal;
2598 unsigned int nameLength;
2599 unsigned long modeFlags;
2600 } Ecore_X_Randr_Mode_Info;
2602 EAPI int ecore_x_randr_version_get(
2604 EAPI Eina_Bool ecore_x_randr_query(void);
2606 /* ecore_x_randr_11.c */
2607 EAPI Ecore_X_Randr_Orientation
2608 ecore_x_randr_screen_primary_output_orientations_get(
2609 Ecore_X_Window root);
2610 EAPI Ecore_X_Randr_Orientation
2611 ecore_x_randr_screen_primary_output_orientation_get(
2612 Ecore_X_Window root);
2614 ecore_x_randr_screen_primary_output_orientation_set(
2615 Ecore_X_Window root,
2616 Ecore_X_Randr_Orientation
2618 EAPI Ecore_X_Randr_Screen_Size_MM *
2619 ecore_x_randr_screen_primary_output_sizes_get(
2620 Ecore_X_Window root,
2623 ecore_x_randr_screen_primary_output_current_size_get(
2624 Ecore_X_Window root,
2631 ecore_x_randr_screen_primary_output_size_set(Ecore_X_Window root,
2633 EAPI Ecore_X_Randr_Refresh_Rate
2634 ecore_x_randr_screen_primary_output_current_refresh_rate_get(
2635 Ecore_X_Window root);
2636 EAPI Ecore_X_Randr_Refresh_Rate *
2637 ecore_x_randr_screen_primary_output_refresh_rates_get(Ecore_X_Window root,
2641 ecore_x_randr_screen_primary_output_refresh_rate_set(
2642 Ecore_X_Window root,
2644 Ecore_X_Randr_Refresh_Rate
2647 /* ecore_x_randr_12.c */
2649 ecore_x_randr_events_select(Ecore_X_Window win,
2653 ecore_x_randr_screen_current_size_get(Ecore_X_Window root,
2659 ecore_x_randr_screen_size_range_get(Ecore_X_Window root,
2664 EAPI void ecore_x_randr_screen_reset(
2665 Ecore_X_Window root);
2667 ecore_x_randr_screen_current_size_set(Ecore_X_Window root,
2672 EAPI Ecore_X_Randr_Mode_Info **
2673 ecore_x_randr_modes_info_get(Ecore_X_Window root,
2675 EAPI Ecore_X_Randr_Mode_Info *
2676 ecore_x_randr_mode_info_get(Ecore_X_Window root,
2677 Ecore_X_Randr_Mode mode);
2679 ecore_x_randr_mode_info_free(
2680 Ecore_X_Randr_Mode_Info *mode_info);
2681 EAPI Ecore_X_Randr_Crtc * ecore_x_randr_crtcs_get(
2682 Ecore_X_Window root,
2684 EAPI Ecore_X_Randr_Output *ecore_x_randr_outputs_get(
2685 Ecore_X_Window root,
2687 EAPI Ecore_X_Randr_Output *
2688 ecore_x_randr_current_output_get(
2689 Ecore_X_Window window,
2691 EAPI Ecore_X_Randr_Crtc *
2692 ecore_x_randr_current_crtc_get(Ecore_X_Window window,
2694 EAPI Ecore_X_Randr_Output *
2695 ecore_x_randr_crtc_outputs_get(Ecore_X_Window root,
2696 Ecore_X_Randr_Crtc crtc,
2698 EAPI Ecore_X_Randr_Output *
2699 ecore_x_randr_crtc_possible_outputs_get(
2700 Ecore_X_Window root,
2701 Ecore_X_Randr_Crtc crtc,
2704 ecore_x_randr_crtc_geometry_get(Ecore_X_Window root,
2705 Ecore_X_Randr_Crtc crtc,
2711 ecore_x_randr_crtc_pos_get(Ecore_X_Window root,
2712 Ecore_X_Randr_Crtc crtc,
2716 ecore_x_randr_crtc_pos_set(Ecore_X_Window root,
2717 Ecore_X_Randr_Crtc crtc,
2720 EAPI Ecore_X_Randr_Mode
2721 ecore_x_randr_crtc_mode_get(Ecore_X_Window root, Ecore_X_Randr_Crtc crtc);
2723 ecore_x_randr_crtc_mode_set(Ecore_X_Window root,
2724 Ecore_X_Randr_Crtc crtc,
2725 Ecore_X_Randr_Output *outputs,
2727 Ecore_X_Randr_Mode mode);
2729 ecore_x_randr_crtc_size_get(Ecore_X_Window root,
2730 Ecore_X_Randr_Crtc crtc,
2733 EAPI Ecore_X_Randr_Refresh_Rate
2734 ecore_x_randr_crtc_refresh_rate_get(Ecore_X_Window root,
2735 Ecore_X_Randr_Crtc crtc,
2736 Ecore_X_Randr_Mode mode);
2737 EAPI Ecore_X_Randr_Orientation
2738 ecore_x_randr_crtc_orientations_get(Ecore_X_Window root,
2739 Ecore_X_Randr_Crtc crtc);
2740 EAPI Ecore_X_Randr_Orientation
2741 ecore_x_randr_crtc_orientation_get(Ecore_X_Window root, Ecore_X_Randr_Crtc crtc);
2743 ecore_x_randr_crtc_orientation_set(Ecore_X_Window root,
2744 Ecore_X_Randr_Crtc crtc,
2745 const Ecore_X_Randr_Orientation orientation);
2747 ecore_x_randr_crtc_clone_set(Ecore_X_Window root,
2748 Ecore_X_Randr_Crtc original,
2749 Ecore_X_Randr_Crtc clone);
2751 ecore_x_randr_crtc_settings_set(Ecore_X_Window root,
2752 Ecore_X_Randr_Crtc crtc,
2753 Ecore_X_Randr_Output *outputs,
2757 Ecore_X_Randr_Mode mode,
2758 Ecore_X_Randr_Orientation orientation);
2760 ecore_x_randr_crtc_pos_relative_set(Ecore_X_Window root,
2761 Ecore_X_Randr_Crtc crtc_r1,
2762 Ecore_X_Randr_Crtc crtc_r2,
2763 Ecore_X_Randr_Output_Policy policy,
2764 Ecore_X_Randr_Relative_Alignment alignment);
2765 EAPI Ecore_X_Randr_Mode *
2766 ecore_x_randr_output_modes_get(Ecore_X_Window root,
2767 Ecore_X_Randr_Output output,
2770 EAPI Ecore_X_Randr_Output * ecore_x_randr_output_clones_get(Ecore_X_Window root, Ecore_X_Randr_Output output, int *num);
2771 EAPI Ecore_X_Randr_Crtc * ecore_x_randr_output_possible_crtcs_get(Ecore_X_Window root, Ecore_X_Randr_Output output, int *num);
2772 EAPI Ecore_X_Randr_Crtc
2773 ecore_x_randr_output_crtc_get(Ecore_X_Window root,
2774 Ecore_X_Randr_Output output);
2776 ecore_x_randr_output_name_get(Ecore_X_Window root,
2777 Ecore_X_Randr_Output output,
2780 ecore_x_randr_crtc_gamma_ramp_size_get(
2781 Ecore_X_Randr_Crtc crtc);
2782 EAPI Ecore_X_Randr_Crtc_Gamma **
2783 ecore_x_randr_crtc_gamma_ramps_get(Ecore_X_Randr_Crtc crtc);
2785 ecore_x_randr_crtc_gamma_ramps_set(Ecore_X_Randr_Crtc crtc,
2786 const Ecore_X_Randr_Crtc_Gamma *red,
2787 const Ecore_X_Randr_Crtc_Gamma *green,
2788 const Ecore_X_Randr_Crtc_Gamma *blue);
2790 ecore_x_randr_move_all_crtcs_but(Ecore_X_Window root,
2791 const Ecore_X_Randr_Crtc *not_moved,
2795 EAPI Eina_Bool ecore_x_randr_move_crtcs(
2796 Ecore_X_Window root,
2797 const Ecore_X_Randr_Crtc *crtcs,
2802 ecore_x_randr_mode_size_get(Ecore_X_Window root,
2803 Ecore_X_Randr_Mode mode,
2806 EAPI Ecore_X_Randr_Connection_Status
2807 ecore_x_randr_output_connection_status_get(Ecore_X_Window root,
2808 Ecore_X_Randr_Output output);
2810 ecore_x_randr_output_size_mm_get(Ecore_X_Window root,
2811 Ecore_X_Randr_Output output,
2815 ecore_x_randr_output_crtc_set(Ecore_X_Window root,
2816 Ecore_X_Randr_Output output,
2817 const Ecore_X_Randr_Crtc crtc);
2819 /* ecore_x_randr_13.c */
2821 ecore_x_randr_screen_backlight_level_set(Ecore_X_Window root, double level);
2823 ecore_x_randr_output_backlight_level_get(Ecore_X_Window root,
2824 Ecore_X_Randr_Output output);
2826 ecore_x_randr_output_backlight_level_set(Ecore_X_Window root,
2827 Ecore_X_Randr_Output output,
2829 EAPI Ecore_X_Randr_Output
2830 ecore_x_randr_primary_output_get(Ecore_X_Window root);
2832 ecore_x_randr_primary_output_set(Ecore_X_Window root,
2833 Ecore_X_Randr_Output output);
2834 EAPI Ecore_X_Render_Subpixel_Order
2835 ecore_x_randr_output_subpixel_order_get(Ecore_X_Window root,
2836 Ecore_X_Randr_Output output);
2837 EAPI unsigned char *
2838 ecore_x_randr_output_edid_get(Ecore_X_Window root,
2839 Ecore_X_Randr_Output output,
2840 unsigned long *length);
2841 EAPI Ecore_X_Randr_Output *
2842 ecore_x_randr_output_wired_clones_get(Ecore_X_Window root,
2843 Ecore_X_Randr_Output output,
2845 EAPI Ecore_X_Randr_Output **
2846 ecore_x_randr_output_compatibility_list_get(Ecore_X_Window root,
2847 Ecore_X_Randr_Output output,
2849 EAPI Ecore_X_Randr_Signal_Format *
2850 ecore_x_randr_output_signal_formats_get(Ecore_X_Window root,
2851 Ecore_X_Randr_Output output,
2854 ecore_x_randr_output_signal_format_set(Ecore_X_Window root,
2855 Ecore_X_Randr_Output output,
2856 Ecore_X_Randr_Signal_Format *signal);
2857 EAPI Ecore_X_Randr_Signal_Property *
2858 ecore_x_randr_output_signal_properties_get(Ecore_X_Window root,
2859 Ecore_X_Randr_Output output,
2862 ecore_x_randr_output_connector_number_get(Ecore_X_Window root,
2863 Ecore_X_Randr_Output output);
2864 EAPI Ecore_X_Randr_Connector_Type
2865 ecore_x_randr_output_connector_type_get(Ecore_X_Window root,
2866 Ecore_X_Randr_Output output);
2867 EAPI Eina_Rectangle *
2868 ecore_x_randr_crtc_panning_area_get(Ecore_X_Window root,
2869 Ecore_X_Randr_Crtc crtc,
2875 ecore_x_randr_crtc_panning_area_set(Ecore_X_Window root,
2876 Ecore_X_Randr_Crtc crtc,
2881 EAPI Eina_Rectangle *
2882 ecore_x_randr_crtc_tracking_area_get(Ecore_X_Window root,
2883 Ecore_X_Randr_Crtc crtc,
2889 ecore_x_randr_crtc_tracking_area_set(Ecore_X_Window root,
2890 Ecore_X_Randr_Crtc crtc,
2895 EAPI Eina_Rectangle *
2896 ecore_x_randr_crtc_border_area_get(Ecore_X_Window root, Ecore_X_Randr_Crtc crtc);
2898 ecore_x_randr_crtc_border_area_set(Ecore_X_Window root,
2899 Ecore_X_Randr_Crtc crtc,
2905 /* XRender Support (horrendously incomplete) */
2906 typedef Ecore_X_ID Ecore_X_Picture;
2908 /* XFixes Extension Support */
2909 typedef Ecore_X_ID Ecore_X_Region;
2911 typedef enum _Ecore_X_Region_Type {
2912 ECORE_X_REGION_BOUNDING,
2914 } Ecore_X_Region_Type;
2916 EAPI Ecore_X_Region ecore_x_region_new(Ecore_X_Rectangle *rects, int num);
2917 EAPI Ecore_X_Region ecore_x_region_new_from_bitmap(Ecore_X_Pixmap bitmap);
2918 EAPI Ecore_X_Region ecore_x_region_new_from_window(Ecore_X_Window win,
2919 Ecore_X_Region_Type type);
2920 EAPI Ecore_X_Region ecore_x_region_new_from_gc(Ecore_X_GC gc);
2921 EAPI Ecore_X_Region ecore_x_region_new_from_picture(Ecore_X_Picture picture);
2922 EAPI void ecore_x_region_free(Ecore_X_Region region);
2923 EAPI void ecore_x_region_set(Ecore_X_Region region,
2924 Ecore_X_Rectangle *rects,
2926 EAPI void ecore_x_region_copy(Ecore_X_Region dest,
2927 Ecore_X_Region source);
2928 EAPI void ecore_x_region_combine(Ecore_X_Region dest,
2929 Ecore_X_Region source1,
2930 Ecore_X_Region source2);
2931 EAPI void ecore_x_region_intersect(Ecore_X_Region dest,
2932 Ecore_X_Region source1,
2933 Ecore_X_Region source2);
2934 EAPI void ecore_x_region_subtract(Ecore_X_Region dest,
2935 Ecore_X_Region source1,
2936 Ecore_X_Region source2);
2937 EAPI void ecore_x_region_invert(Ecore_X_Region dest,
2938 Ecore_X_Rectangle *bounds,
2939 Ecore_X_Region source);
2940 EAPI void ecore_x_region_translate(Ecore_X_Region region,
2943 EAPI void ecore_x_region_extents(Ecore_X_Region dest,
2944 Ecore_X_Region source);
2945 EAPI void ecore_x_region_fetch_prefetch(Ecore_X_Region region);
2946 EAPI void ecore_x_region_fetch_fetch(void);
2947 EAPI Ecore_X_Rectangle * ecore_x_region_fetch(Ecore_X_Region region,
2949 Ecore_X_Rectangle *bounds);
2950 EAPI void ecore_x_region_expand(Ecore_X_Region dest,
2951 Ecore_X_Region source,
2955 unsigned int bottom);
2956 EAPI void ecore_x_region_gc_clip_set(Ecore_X_Region region,
2960 EAPI void ecore_x_region_window_shape_set(Ecore_X_Region region,
2962 Ecore_X_Shape_Type type,
2965 EAPI void ecore_x_region_picture_clip_set(Ecore_X_Region region,
2966 Ecore_X_Picture picture,
2970 /* XComposite Extension Support */
2971 EAPI Eina_Bool ecore_x_composite_query(void);
2972 EAPI void ecore_x_composite_redirect_window(Ecore_X_Window win,
2973 Ecore_X_Composite_Update_Type type);
2974 EAPI void ecore_x_composite_redirect_subwindows(Ecore_X_Window win,
2975 Ecore_X_Composite_Update_Type type);
2976 EAPI void ecore_x_composite_unredirect_window(Ecore_X_Window win,
2977 Ecore_X_Composite_Update_Type type);
2978 EAPI void ecore_x_composite_unredirect_subwindows(Ecore_X_Window win,
2979 Ecore_X_Composite_Update_Type type);
2980 EAPI Ecore_X_Pixmap ecore_x_composite_name_window_pixmap_get(Ecore_X_Window win);
2981 EAPI void ecore_x_composite_window_events_disable(Ecore_X_Window win);
2982 EAPI void ecore_x_composite_window_events_enable(Ecore_X_Window win);
2983 EAPI Ecore_X_Window ecore_x_composite_render_window_enable(Ecore_X_Window root);
2984 EAPI void ecore_x_composite_render_window_disable(Ecore_X_Window root);
2986 /* XDamage Extension Support */
2987 typedef Ecore_X_ID Ecore_X_Damage;
2989 typedef enum _Ecore_X_Damage_Report_Level {
2990 ECORE_X_DAMAGE_REPORT_RAW_RECTANGLES,
2991 ECORE_X_DAMAGE_REPORT_DELTA_RECTANGLES,
2992 ECORE_X_DAMAGE_REPORT_BOUNDING_BOX,
2993 ECORE_X_DAMAGE_REPORT_NON_EMPTY
2994 } Ecore_X_Damage_Report_Level;
2996 struct _Ecore_X_Event_Damage
2998 Ecore_X_Damage_Report_Level level;
2999 Ecore_X_Drawable drawable;
3000 Ecore_X_Damage damage;
3003 Ecore_X_Rectangle area;
3004 Ecore_X_Rectangle geometry;
3007 typedef struct _Ecore_X_Event_Damage Ecore_X_Event_Damage;
3009 EAPI Eina_Bool ecore_x_damage_query(void);
3010 EAPI Ecore_X_Damage ecore_x_damage_new(Ecore_X_Drawable d,
3011 Ecore_X_Damage_Report_Level level);
3012 EAPI void ecore_x_damage_free(Ecore_X_Damage damage);
3013 EAPI void ecore_x_damage_subtract(Ecore_X_Damage damage,
3014 Ecore_X_Region repair,
3015 Ecore_X_Region parts);
3017 EAPI Eina_Bool ecore_x_screen_is_composited(int screen);
3018 EAPI void ecore_x_screen_is_composited_set(int screen,
3019 Ecore_X_Window win);
3021 EAPI Eina_Bool ecore_x_dpms_query(void);
3022 EAPI void ecore_x_dpms_capable_get_prefetch(void);
3023 EAPI void ecore_x_dpms_capable_get_fetch(void);
3024 EAPI Eina_Bool ecore_x_dpms_capable_get(void);
3025 EAPI void ecore_x_dpms_enable_get_prefetch(void);
3026 EAPI void ecore_x_dpms_enable_get_fetch(void);
3027 EAPI Eina_Bool ecore_x_dpms_enabled_get(void);
3028 EAPI void ecore_x_dpms_enabled_set(int enabled);
3029 EAPI void ecore_x_dpms_timeouts_get_prefetch(void);
3030 EAPI void ecore_x_dpms_timeouts_get_fetch(void);
3031 EAPI void ecore_x_dpms_timeouts_get(unsigned int *standby,
3032 unsigned int *suspend,
3034 EAPI Eina_Bool ecore_x_dpms_timeouts_set(unsigned int standby,
3035 unsigned int suspend,
3037 EAPI unsigned int ecore_x_dpms_timeout_standby_get(void);
3038 EAPI unsigned int ecore_x_dpms_timeout_suspend_get(void);
3039 EAPI unsigned int ecore_x_dpms_timeout_off_get(void);
3040 EAPI void ecore_x_dpms_timeout_standby_set(unsigned int new_timeout);
3041 EAPI void ecore_x_dpms_timeout_suspend_set(unsigned int new_timeout);
3042 EAPI void ecore_x_dpms_timeout_off_set(unsigned int new_timeout);
3044 EAPI Eina_Bool ecore_x_test_fake_key_down(const char *key);
3045 EAPI Eina_Bool ecore_x_test_fake_key_up(const char *key);
3046 EAPI Eina_Bool ecore_x_test_fake_key_press(const char *key);
3047 EAPI const char * ecore_x_keysym_string_get(int keysym);
3049 typedef struct _Ecore_X_Image Ecore_X_Image;
3051 EAPI Ecore_X_Image * ecore_x_image_new(int w,
3055 EAPI void ecore_x_image_free(Ecore_X_Image *im);
3056 EAPI Eina_Bool ecore_x_image_get(Ecore_X_Image *im,
3057 Ecore_X_Drawable draw,
3064 EAPI void ecore_x_image_put(Ecore_X_Image *im,
3065 Ecore_X_Drawable draw,
3073 EAPI void * ecore_x_image_data_get(Ecore_X_Image *im,
3077 EAPI Eina_Bool ecore_x_image_is_argb32_get(Ecore_X_Image *im);
3079 EAPI Eina_Bool ecore_x_image_to_argb_convert(void *src, int sbpp,
3083 int x, int y, int w, int h,
3088 EAPI Eina_Bool ecore_x_input_multi_select(Ecore_X_Window win);
3092 #endif // ifdef __cplusplus
3094 #include <Ecore_X_Atoms.h>
3095 #include <Ecore_X_Cursor.h>
3097 #endif // ifndef _ECORE_X_H