aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/libraries/ecore/src/lib/ecore_x/xlib/ecore_x_icccm.c
diff options
context:
space:
mode:
Diffstat (limited to 'libraries/ecore/src/lib/ecore_x/xlib/ecore_x_icccm.c')
-rw-r--r--libraries/ecore/src/lib/ecore_x/xlib/ecore_x_icccm.c248
1 files changed, 124 insertions, 124 deletions
diff --git a/libraries/ecore/src/lib/ecore_x/xlib/ecore_x_icccm.c b/libraries/ecore/src/lib/ecore_x/xlib/ecore_x_icccm.c
index 3899651..8d6ea1f 100644
--- a/libraries/ecore/src/lib/ecore_x/xlib/ecore_x_icccm.c
+++ b/libraries/ecore/src/lib/ecore_x/xlib/ecore_x_icccm.c
@@ -21,10 +21,10 @@ EAPI void
21ecore_x_icccm_init(void) 21ecore_x_icccm_init(void)
22{ 22{
23 LOGFN(__FILE__, __LINE__, __FUNCTION__); 23 LOGFN(__FILE__, __LINE__, __FUNCTION__);
24} /* ecore_x_icccm_init */ 24}
25 25
26EAPI void 26EAPI void
27ecore_x_icccm_state_set(Ecore_X_Window win, 27ecore_x_icccm_state_set(Ecore_X_Window win,
28 Ecore_X_Window_State_Hint state) 28 Ecore_X_Window_State_Hint state)
29{ 29{
30 unsigned long c[2]; 30 unsigned long c[2];
@@ -41,7 +41,7 @@ ecore_x_icccm_state_set(Ecore_X_Window win,
41 XChangeProperty(_ecore_x_disp, win, ECORE_X_ATOM_WM_STATE, 41 XChangeProperty(_ecore_x_disp, win, ECORE_X_ATOM_WM_STATE,
42 ECORE_X_ATOM_WM_STATE, 32, PropModeReplace, 42 ECORE_X_ATOM_WM_STATE, 32, PropModeReplace,
43 (unsigned char *)c, 2); 43 (unsigned char *)c, 2);
44} /* ecore_x_icccm_state_set */ 44}
45 45
46EAPI Ecore_X_Window_State_Hint 46EAPI Ecore_X_Window_State_Hint
47ecore_x_icccm_state_get(Ecore_X_Window win) 47ecore_x_icccm_state_get(Ecore_X_Window win)
@@ -72,47 +72,47 @@ ecore_x_icccm_state_get(Ecore_X_Window win)
72 XFree(prop_ret); 72 XFree(prop_ret);
73 73
74 return hint; 74 return hint;
75} /* ecore_x_icccm_state_get */ 75}
76 76
77EAPI void 77EAPI void
78ecore_x_icccm_delete_window_send(Ecore_X_Window win, 78ecore_x_icccm_delete_window_send(Ecore_X_Window win,
79 Ecore_X_Time t) 79 Ecore_X_Time t)
80{ 80{
81 LOGFN(__FILE__, __LINE__, __FUNCTION__); 81 LOGFN(__FILE__, __LINE__, __FUNCTION__);
82 ecore_x_client_message32_send(win, ECORE_X_ATOM_WM_PROTOCOLS, 82 ecore_x_client_message32_send(win, ECORE_X_ATOM_WM_PROTOCOLS,
83 ECORE_X_EVENT_MASK_NONE, 83 ECORE_X_EVENT_MASK_NONE,
84 ECORE_X_ATOM_WM_DELETE_WINDOW, 84 ECORE_X_ATOM_WM_DELETE_WINDOW,
85 t, 0, 0, 0); 85 t, 0, 0, 0);
86} /* ecore_x_icccm_delete_window_send */ 86}
87 87
88EAPI void 88EAPI void
89ecore_x_icccm_take_focus_send(Ecore_X_Window win, 89ecore_x_icccm_take_focus_send(Ecore_X_Window win,
90 Ecore_X_Time t) 90 Ecore_X_Time t)
91{ 91{
92 LOGFN(__FILE__, __LINE__, __FUNCTION__); 92 LOGFN(__FILE__, __LINE__, __FUNCTION__);
93 ecore_x_client_message32_send(win, ECORE_X_ATOM_WM_PROTOCOLS, 93 ecore_x_client_message32_send(win, ECORE_X_ATOM_WM_PROTOCOLS,
94 ECORE_X_EVENT_MASK_NONE, 94 ECORE_X_EVENT_MASK_NONE,
95 ECORE_X_ATOM_WM_TAKE_FOCUS, 95 ECORE_X_ATOM_WM_TAKE_FOCUS,
96 t, 0, 0, 0); 96 t, 0, 0, 0);
97} /* ecore_x_icccm_take_focus_send */ 97}
98 98
99EAPI void 99EAPI void
100ecore_x_icccm_save_yourself_send(Ecore_X_Window win, 100ecore_x_icccm_save_yourself_send(Ecore_X_Window win,
101 Ecore_X_Time t) 101 Ecore_X_Time t)
102{ 102{
103 LOGFN(__FILE__, __LINE__, __FUNCTION__); 103 LOGFN(__FILE__, __LINE__, __FUNCTION__);
104 ecore_x_client_message32_send(win, ECORE_X_ATOM_WM_PROTOCOLS, 104 ecore_x_client_message32_send(win, ECORE_X_ATOM_WM_PROTOCOLS,
105 ECORE_X_EVENT_MASK_NONE, 105 ECORE_X_EVENT_MASK_NONE,
106 ECORE_X_ATOM_WM_SAVE_YOURSELF, 106 ECORE_X_ATOM_WM_SAVE_YOURSELF,
107 t, 0, 0, 0); 107 t, 0, 0, 0);
108} /* ecore_x_icccm_save_yourself_send */ 108}
109 109
110EAPI void 110EAPI void
111ecore_x_icccm_move_resize_send(Ecore_X_Window win, 111ecore_x_icccm_move_resize_send(Ecore_X_Window win,
112 int x, 112 int x,
113 int y, 113 int y,
114 int w, 114 int w,
115 int h) 115 int h)
116{ 116{
117 XEvent ev; 117 XEvent ev;
118 118
@@ -129,17 +129,17 @@ ecore_x_icccm_move_resize_send(Ecore_X_Window win,
129 ev.xconfigure.above = None; 129 ev.xconfigure.above = None;
130 ev.xconfigure.override_redirect = False; 130 ev.xconfigure.override_redirect = False;
131 XSendEvent(_ecore_x_disp, win, False, StructureNotifyMask, &ev); 131 XSendEvent(_ecore_x_disp, win, False, StructureNotifyMask, &ev);
132} /* ecore_x_icccm_move_resize_send */ 132}
133 133
134EAPI void 134EAPI void
135ecore_x_icccm_hints_set(Ecore_X_Window win, 135ecore_x_icccm_hints_set(Ecore_X_Window win,
136 Eina_Bool accepts_focus, 136 Eina_Bool accepts_focus,
137 Ecore_X_Window_State_Hint initial_state, 137 Ecore_X_Window_State_Hint initial_state,
138 Ecore_X_Pixmap icon_pixmap, 138 Ecore_X_Pixmap icon_pixmap,
139 Ecore_X_Pixmap icon_mask, 139 Ecore_X_Pixmap icon_mask,
140 Ecore_X_Window icon_window, 140 Ecore_X_Window icon_window,
141 Ecore_X_Window window_group, 141 Ecore_X_Window window_group,
142 Eina_Bool is_urgent) 142 Eina_Bool is_urgent)
143{ 143{
144 XWMHints *hints; 144 XWMHints *hints;
145 145
@@ -186,17 +186,17 @@ ecore_x_icccm_hints_set(Ecore_X_Window win,
186 186
187 XSetWMHints(_ecore_x_disp, win, hints); 187 XSetWMHints(_ecore_x_disp, win, hints);
188 XFree(hints); 188 XFree(hints);
189} /* ecore_x_icccm_hints_set */ 189}
190 190
191EAPI Eina_Bool 191EAPI Eina_Bool
192ecore_x_icccm_hints_get(Ecore_X_Window win, 192ecore_x_icccm_hints_get(Ecore_X_Window win,
193 Eina_Bool *accepts_focus, 193 Eina_Bool *accepts_focus,
194 Ecore_X_Window_State_Hint *initial_state, 194 Ecore_X_Window_State_Hint *initial_state,
195 Ecore_X_Pixmap *icon_pixmap, 195 Ecore_X_Pixmap *icon_pixmap,
196 Ecore_X_Pixmap *icon_mask, 196 Ecore_X_Pixmap *icon_mask,
197 Ecore_X_Window *icon_window, 197 Ecore_X_Window *icon_window,
198 Ecore_X_Window *window_group, 198 Ecore_X_Window *window_group,
199 Eina_Bool *is_urgent) 199 Eina_Bool *is_urgent)
200{ 200{
201 XWMHints *hints; 201 XWMHints *hints;
202 202
@@ -263,22 +263,22 @@ ecore_x_icccm_hints_get(Ecore_X_Window win,
263 } 263 }
264 264
265 return EINA_FALSE; 265 return EINA_FALSE;
266} /* ecore_x_icccm_hints_get */ 266}
267 267
268EAPI void 268EAPI void
269ecore_x_icccm_size_pos_hints_set(Ecore_X_Window win, 269ecore_x_icccm_size_pos_hints_set(Ecore_X_Window win,
270 Eina_Bool request_pos, 270 Eina_Bool request_pos,
271 Ecore_X_Gravity gravity, 271 Ecore_X_Gravity gravity,
272 int min_w, 272 int min_w,
273 int min_h, 273 int min_h,
274 int max_w, 274 int max_w,
275 int max_h, 275 int max_h,
276 int base_w, 276 int base_w,
277 int base_h, 277 int base_h,
278 int step_x, 278 int step_x,
279 int step_y, 279 int step_y,
280 double min_aspect, 280 double min_aspect,
281 double max_aspect) 281 double max_aspect)
282{ 282{
283 XSizeHints hint; 283 XSizeHints hint;
284 long mask; 284 long mask;
@@ -335,22 +335,22 @@ ecore_x_icccm_size_pos_hints_set(Ecore_X_Window win,
335 } 335 }
336 336
337 XSetWMNormalHints(_ecore_x_disp, win, &hint); 337 XSetWMNormalHints(_ecore_x_disp, win, &hint);
338} /* ecore_x_icccm_size_pos_hints_set */ 338}
339 339
340EAPI Eina_Bool 340EAPI Eina_Bool
341ecore_x_icccm_size_pos_hints_get(Ecore_X_Window win, 341ecore_x_icccm_size_pos_hints_get(Ecore_X_Window win,
342 Eina_Bool *request_pos, 342 Eina_Bool *request_pos,
343 Ecore_X_Gravity *gravity, 343 Ecore_X_Gravity *gravity,
344 int *min_w, 344 int *min_w,
345 int *min_h, 345 int *min_h,
346 int *max_w, 346 int *max_w,
347 int *max_h, 347 int *max_h,
348 int *base_w, 348 int *base_w,
349 int *base_h, 349 int *base_h,
350 int *step_x, 350 int *step_x,
351 int *step_y, 351 int *step_y,
352 double *min_aspect, 352 double *min_aspect,
353 double *max_aspect) 353 double *max_aspect)
354{ 354{
355 XSizeHints hint; 355 XSizeHints hint;
356 long mask; 356 long mask;
@@ -460,11 +460,11 @@ ecore_x_icccm_size_pos_hints_get(Ecore_X_Window win,
460 *max_aspect = maxa; 460 *max_aspect = maxa;
461 461
462 return EINA_TRUE; 462 return EINA_TRUE;
463} /* ecore_x_icccm_size_pos_hints_get */ 463}
464 464
465EAPI void 465EAPI void
466ecore_x_icccm_title_set(Ecore_X_Window win, 466ecore_x_icccm_title_set(Ecore_X_Window win,
467 const char *t) 467 const char *t)
468{ 468{
469 char *list[1]; 469 char *list[1];
470 XTextProperty xprop; 470 XTextProperty xprop;
@@ -500,7 +500,7 @@ ecore_x_icccm_title_set(Ecore_X_Window win,
500 } 500 }
501 501
502 free(list[0]); 502 free(list[0]);
503} /* ecore_x_icccm_title_set */ 503}
504 504
505EAPI char * 505EAPI char *
506ecore_x_icccm_title_get(Ecore_X_Window win) 506ecore_x_icccm_title_get(Ecore_X_Window win)
@@ -522,23 +522,23 @@ ecore_x_icccm_title_get(Ecore_X_Window win)
522 t = strdup((char *)xprop.value); 522 t = strdup((char *)xprop.value);
523 else 523 else
524 { 524 {
525 /* convert to utf8 */ 525 /* convert to utf8 */
526#ifdef X_HAVE_UTF8_STRING 526#ifdef X_HAVE_UTF8_STRING
527 ret = Xutf8TextPropertyToTextList(_ecore_x_disp, &xprop, 527 ret = Xutf8TextPropertyToTextList(_ecore_x_disp, &xprop,
528 &list, &num); 528 &list, &num);
529#else /* ifdef X_HAVE_UTF8_STRING */ 529#else /* ifdef X_HAVE_UTF8_STRING */
530 ret = XmbTextPropertyToTextList(_ecore_x_disp, &xprop, 530 ret = XmbTextPropertyToTextList(_ecore_x_disp, &xprop,
531 &list, &num); 531 &list, &num);
532#endif /* ifdef X_HAVE_UTF8_STRING */ 532#endif /* ifdef X_HAVE_UTF8_STRING */
533 533
534 if ((ret == XLocaleNotSupported) || 534 if ((ret == XLocaleNotSupported) ||
535 (ret == XNoMemory) || (ret == XConverterNotFound)) 535 (ret == XNoMemory) || (ret == XConverterNotFound))
536 t = strdup((char *)xprop.value); 536 t = strdup((char *)xprop.value);
537 else if ((ret >= Success) && (num > 0)) 537 else if ((ret >= Success) && (num > 0))
538 t = strdup(list[0]); 538 t = strdup(list[0]);
539 539
540 if (list) 540 if (list)
541 XFreeStringList(list); 541 XFreeStringList(list);
542 } 542 }
543 543
544 if (xprop.value) 544 if (xprop.value)
@@ -549,7 +549,7 @@ ecore_x_icccm_title_get(Ecore_X_Window win)
549 } 549 }
550 550
551 return NULL; 551 return NULL;
552} /* ecore_x_icccm_title_get */ 552}
553 553
554/** 554/**
555 * Set protocol atoms explicitly 555 * Set protocol atoms explicitly
@@ -559,15 +559,15 @@ ecore_x_icccm_title_get(Ecore_X_Window win)
559 */ 559 */
560EAPI void 560EAPI void
561ecore_x_icccm_protocol_atoms_set(Ecore_X_Window win, 561ecore_x_icccm_protocol_atoms_set(Ecore_X_Window win,
562 Ecore_X_Atom *protos, 562 Ecore_X_Atom *protos,
563 int num) 563 int num)
564{ 564{
565 LOGFN(__FILE__, __LINE__, __FUNCTION__); 565 LOGFN(__FILE__, __LINE__, __FUNCTION__);
566 if (num > 0) 566 if (num > 0)
567 XSetWMProtocols(_ecore_x_disp, win, (Atom *)(protos), num); 567 XSetWMProtocols(_ecore_x_disp, win, (Atom *)(protos), num);
568 else 568 else
569 XDeleteProperty(_ecore_x_disp, win, ECORE_X_ATOM_WM_PROTOCOLS); 569 XDeleteProperty(_ecore_x_disp, win, ECORE_X_ATOM_WM_PROTOCOLS);
570} /* ecore_x_icccm_protocol_atoms_set */ 570}
571 571
572/** 572/**
573 * Set or unset a wm protocol property. 573 * Set or unset a wm protocol property.
@@ -576,9 +576,9 @@ ecore_x_icccm_protocol_atoms_set(Ecore_X_Window win,
576 * @param on On/Off 576 * @param on On/Off
577 */ 577 */
578EAPI void 578EAPI void
579ecore_x_icccm_protocol_set(Ecore_X_Window win, 579ecore_x_icccm_protocol_set(Ecore_X_Window win,
580 Ecore_X_WM_Protocol protocol, 580 Ecore_X_WM_Protocol protocol,
581 Eina_Bool on) 581 Eina_Bool on)
582{ 582{
583 Atom *protos = NULL; 583 Atom *protos = NULL;
584 Atom proto; 584 Atom proto;
@@ -653,7 +653,7 @@ ecore_x_icccm_protocol_set(Ecore_X_Window win,
653leave: 653leave:
654 if (protos) 654 if (protos)
655 XFree(protos); 655 XFree(protos);
656} /* ecore_x_icccm_protocol_set */ 656}
657 657
658/** 658/**
659 * Determines whether a protocol is set for a window. 659 * Determines whether a protocol is set for a window.
@@ -662,7 +662,7 @@ leave:
662 * @return 1 if the protocol is set, else 0. 662 * @return 1 if the protocol is set, else 0.
663 */ 663 */
664EAPI Eina_Bool 664EAPI Eina_Bool
665ecore_x_icccm_protocol_isset(Ecore_X_Window win, 665ecore_x_icccm_protocol_isset(Ecore_X_Window win,
666 Ecore_X_WM_Protocol protocol) 666 Ecore_X_WM_Protocol protocol)
667{ 667{
668 Atom proto, *protos = NULL; 668 Atom proto, *protos = NULL;
@@ -690,7 +690,7 @@ ecore_x_icccm_protocol_isset(Ecore_X_Window win,
690 XFree(protos); 690 XFree(protos);
691 691
692 return ret; 692 return ret;
693} /* ecore_x_icccm_protocol_isset */ 693}
694 694
695/** 695/**
696 * Set a window name & class. 696 * Set a window name & class.
@@ -702,8 +702,8 @@ ecore_x_icccm_protocol_isset(Ecore_X_Window win,
702 */ 702 */
703EAPI void 703EAPI void
704ecore_x_icccm_name_class_set(Ecore_X_Window win, 704ecore_x_icccm_name_class_set(Ecore_X_Window win,
705 const char *n, 705 const char *n,
706 const char *c) 706 const char *c)
707{ 707{
708 XClassHint *xch; 708 XClassHint *xch;
709 709
@@ -716,7 +716,7 @@ ecore_x_icccm_name_class_set(Ecore_X_Window win,
716 xch->res_class = (char *)c; 716 xch->res_class = (char *)c;
717 XSetClassHint(_ecore_x_disp, win, xch); 717 XSetClassHint(_ecore_x_disp, win, xch);
718 XFree(xch); 718 XFree(xch);
719} /* ecore_x_icccm_name_class_set */ 719}
720 720
721/** 721/**
722 * Get a window name & class. 722 * Get a window name & class.
@@ -728,8 +728,8 @@ ecore_x_icccm_name_class_set(Ecore_X_Window win,
728 */ 728 */
729EAPI void 729EAPI void
730ecore_x_icccm_name_class_get(Ecore_X_Window win, 730ecore_x_icccm_name_class_get(Ecore_X_Window win,
731 char **n, 731 char **n,
732 char **c) 732 char **c)
733{ 733{
734 XClassHint xch; 734 XClassHint xch;
735 735
@@ -755,7 +755,7 @@ ecore_x_icccm_name_class_get(Ecore_X_Window win,
755 XFree(xch.res_name); 755 XFree(xch.res_name);
756 XFree(xch.res_class); 756 XFree(xch.res_class);
757 } 757 }
758} /* ecore_x_icccm_name_class_get */ 758}
759 759
760/** 760/**
761 * Get a window client machine string. 761 * Get a window client machine string.
@@ -772,7 +772,7 @@ ecore_x_icccm_client_machine_get(Ecore_X_Window win)
772 LOGFN(__FILE__, __LINE__, __FUNCTION__); 772 LOGFN(__FILE__, __LINE__, __FUNCTION__);
773 name = ecore_x_window_prop_string_get(win, ECORE_X_ATOM_WM_CLIENT_MACHINE); 773 name = ecore_x_window_prop_string_get(win, ECORE_X_ATOM_WM_CLIENT_MACHINE);
774 return name; 774 return name;
775} /* ecore_x_icccm_client_machine_get */ 775}
776 776
777/** 777/**
778 * Sets the WM_COMMAND property for @a win. 778 * Sets the WM_COMMAND property for @a win.
@@ -783,12 +783,12 @@ ecore_x_icccm_client_machine_get(Ecore_X_Window win)
783 */ 783 */
784EAPI void 784EAPI void
785ecore_x_icccm_command_set(Ecore_X_Window win, 785ecore_x_icccm_command_set(Ecore_X_Window win,
786 int argc, 786 int argc,
787 char **argv) 787 char **argv)
788{ 788{
789 LOGFN(__FILE__, __LINE__, __FUNCTION__); 789 LOGFN(__FILE__, __LINE__, __FUNCTION__);
790 XSetCommand(_ecore_x_disp, win, argv, argc); 790 XSetCommand(_ecore_x_disp, win, argv, argc);
791} /* ecore_x_icccm_command_set */ 791}
792 792
793/** 793/**
794 * Get the WM_COMMAND property for @a win. 794 * Get the WM_COMMAND property for @a win.
@@ -801,8 +801,8 @@ ecore_x_icccm_command_set(Ecore_X_Window win,
801 */ 801 */
802EAPI void 802EAPI void
803ecore_x_icccm_command_get(Ecore_X_Window win, 803ecore_x_icccm_command_get(Ecore_X_Window win,
804 int *argc, 804 int *argc,
805 char ***argv) 805 char ***argv)
806{ 806{
807 int i, c; 807 int i, c;
808 char **v; 808 char **v;
@@ -850,7 +850,7 @@ ecore_x_icccm_command_get(Ecore_X_Window win,
850 } 850 }
851 851
852 XFreeStringList(v); 852 XFreeStringList(v);
853} /* ecore_x_icccm_command_get */ 853}
854 854
855/** 855/**
856 * Set a window icon name. 856 * Set a window icon name.
@@ -861,7 +861,7 @@ ecore_x_icccm_command_get(Ecore_X_Window win,
861 */ 861 */
862EAPI void 862EAPI void
863ecore_x_icccm_icon_name_set(Ecore_X_Window win, 863ecore_x_icccm_icon_name_set(Ecore_X_Window win,
864 const char *t) 864 const char *t)
865{ 865{
866 char *list[1]; 866 char *list[1];
867 XTextProperty xprop; 867 XTextProperty xprop;
@@ -892,7 +892,7 @@ ecore_x_icccm_icon_name_set(Ecore_X_Window win,
892 } 892 }
893 893
894 free(list[0]); 894 free(list[0]);
895} /* ecore_x_icccm_icon_name_set */ 895}
896 896
897/** 897/**
898 * Get a window icon name. 898 * Get a window icon name.
@@ -921,26 +921,26 @@ ecore_x_icccm_icon_name_get(Ecore_X_Window win)
921 t = strdup((char *)xprop.value); 921 t = strdup((char *)xprop.value);
922 else 922 else
923 { 923 {
924 /* convert to utf8 */ 924 /* convert to utf8 */
925#ifdef X_HAVE_UTF8_STRING 925#ifdef X_HAVE_UTF8_STRING
926 ret = Xutf8TextPropertyToTextList(_ecore_x_disp, &xprop, 926 ret = Xutf8TextPropertyToTextList(_ecore_x_disp, &xprop,
927 &list, &num); 927 &list, &num);
928#else /* ifdef X_HAVE_UTF8_STRING */ 928#else /* ifdef X_HAVE_UTF8_STRING */
929 ret = XmbTextPropertyToTextList(_ecore_x_disp, &xprop, 929 ret = XmbTextPropertyToTextList(_ecore_x_disp, &xprop,
930 &list, &num); 930 &list, &num);
931#endif /* ifdef X_HAVE_UTF8_STRING */ 931#endif /* ifdef X_HAVE_UTF8_STRING */
932 932
933 if ((ret == XLocaleNotSupported) || 933 if ((ret == XLocaleNotSupported) ||
934 (ret == XNoMemory) || (ret == XConverterNotFound)) 934 (ret == XNoMemory) || (ret == XConverterNotFound))
935 t = strdup((char *)xprop.value); 935 t = strdup((char *)xprop.value);
936 else if (ret >= Success) 936 else if (ret >= Success)
937 { 937 {
938 if ((num >= 1) && (list)) 938 if ((num >= 1) && (list))
939 t = strdup(list[0]); 939 t = strdup(list[0]);
940 940
941 if (list) 941 if (list)
942 XFreeStringList(list); 942 XFreeStringList(list);
943 } 943 }
944 } 944 }
945 945
946 if (xprop.value) 946 if (xprop.value)
@@ -951,7 +951,7 @@ ecore_x_icccm_icon_name_get(Ecore_X_Window win)
951 } 951 }
952 952
953 return NULL; 953 return NULL;
954} /* ecore_x_icccm_icon_name_get */ 954}
955 955
956/** 956/**
957 * Add a subwindow to the list of windows that need a different colormap installed. 957 * Add a subwindow to the list of windows that need a different colormap installed.
@@ -1014,7 +1014,7 @@ ecore_x_icccm_colormap_window_set(Ecore_X_Window win,
1014 ECORE_X_ATOM_WM_COLORMAP_WINDOWS, 1014 ECORE_X_ATOM_WM_COLORMAP_WINDOWS,
1015 XA_WINDOW, 32, data, num); 1015 XA_WINDOW, 32, data, num);
1016 free(newset); 1016 free(newset);
1017} /* ecore_x_icccm_colormap_window_set */ 1017}
1018 1018
1019/** 1019/**
1020 * Remove a window from the list of colormap windows. 1020 * Remove a window from the list of colormap windows.
@@ -1079,7 +1079,7 @@ ecore_x_icccm_colormap_window_unset(Ecore_X_Window win,
1079 1079
1080 if (old_data) 1080 if (old_data)
1081 XFree(old_data); 1081 XFree(old_data);
1082} /* ecore_x_icccm_colormap_window_unset */ 1082}
1083 1083
1084/** 1084/**
1085 * Specify that a window is transient for another top-level window and should be handled accordingly. 1085 * Specify that a window is transient for another top-level window and should be handled accordingly.
@@ -1092,18 +1092,18 @@ ecore_x_icccm_transient_for_set(Ecore_X_Window win,
1092{ 1092{
1093 LOGFN(__FILE__, __LINE__, __FUNCTION__); 1093 LOGFN(__FILE__, __LINE__, __FUNCTION__);
1094 XSetTransientForHint(_ecore_x_disp, win, forwin); 1094 XSetTransientForHint(_ecore_x_disp, win, forwin);
1095} /* ecore_x_icccm_transient_for_set */ 1095}
1096 1096
1097/** 1097/**
1098 * Remove the transient_for setting from a window. 1098 * Remove the transient_for setting from a window.
1099 * @param The window 1099 * @param win The window
1100 */ 1100 */
1101EAPI void 1101EAPI void
1102ecore_x_icccm_transient_for_unset(Ecore_X_Window win) 1102ecore_x_icccm_transient_for_unset(Ecore_X_Window win)
1103{ 1103{
1104 LOGFN(__FILE__, __LINE__, __FUNCTION__); 1104 LOGFN(__FILE__, __LINE__, __FUNCTION__);
1105 XDeleteProperty(_ecore_x_disp, win, ECORE_X_ATOM_WM_TRANSIENT_FOR); 1105 XDeleteProperty(_ecore_x_disp, win, ECORE_X_ATOM_WM_TRANSIENT_FOR);
1106} /* ecore_x_icccm_transient_for_unset */ 1106}
1107 1107
1108/** 1108/**
1109 * Get the window this window is transient for, if any. 1109 * Get the window this window is transient for, if any.
@@ -1120,7 +1120,7 @@ ecore_x_icccm_transient_for_get(Ecore_X_Window win)
1120 return (Ecore_X_Window)forwin; 1120 return (Ecore_X_Window)forwin;
1121 else 1121 else
1122 return 0; 1122 return 0;
1123} /* ecore_x_icccm_transient_for_get */ 1123}
1124 1124
1125/** 1125/**
1126 * Set the window role hint. 1126 * Set the window role hint.
@@ -1129,12 +1129,12 @@ ecore_x_icccm_transient_for_get(Ecore_X_Window win)
1129 */ 1129 */
1130EAPI void 1130EAPI void
1131ecore_x_icccm_window_role_set(Ecore_X_Window win, 1131ecore_x_icccm_window_role_set(Ecore_X_Window win,
1132 const char *role) 1132 const char *role)
1133{ 1133{
1134 LOGFN(__FILE__, __LINE__, __FUNCTION__); 1134 LOGFN(__FILE__, __LINE__, __FUNCTION__);
1135 ecore_x_window_prop_string_set(win, ECORE_X_ATOM_WM_WINDOW_ROLE, 1135 ecore_x_window_prop_string_set(win, ECORE_X_ATOM_WM_WINDOW_ROLE,
1136 (char *)role); 1136 (char *)role);
1137} /* ecore_x_icccm_window_role_set */ 1137}
1138 1138
1139/** 1139/**
1140 * Get the window role. 1140 * Get the window role.
@@ -1146,7 +1146,7 @@ ecore_x_icccm_window_role_get(Ecore_X_Window win)
1146{ 1146{
1147 LOGFN(__FILE__, __LINE__, __FUNCTION__); 1147 LOGFN(__FILE__, __LINE__, __FUNCTION__);
1148 return ecore_x_window_prop_string_get(win, ECORE_X_ATOM_WM_WINDOW_ROLE); 1148 return ecore_x_window_prop_string_get(win, ECORE_X_ATOM_WM_WINDOW_ROLE);
1149} /* ecore_x_icccm_window_role_get */ 1149}
1150 1150
1151/** 1151/**
1152 * Set the window's client leader. 1152 * Set the window's client leader.
@@ -1163,7 +1163,7 @@ ecore_x_icccm_client_leader_set(Ecore_X_Window win,
1163 LOGFN(__FILE__, __LINE__, __FUNCTION__); 1163 LOGFN(__FILE__, __LINE__, __FUNCTION__);
1164 ecore_x_window_prop_window_set(win, ECORE_X_ATOM_WM_CLIENT_LEADER, 1164 ecore_x_window_prop_window_set(win, ECORE_X_ATOM_WM_CLIENT_LEADER,
1165 &l, 1); 1165 &l, 1);
1166} /* ecore_x_icccm_client_leader_set */ 1166}
1167 1167
1168/** 1168/**
1169 * Get the window's client leader. 1169 * Get the window's client leader.
@@ -1180,7 +1180,7 @@ ecore_x_icccm_client_leader_get(Ecore_X_Window win)
1180 return l; 1180 return l;
1181 1181
1182 return 0; 1182 return 0;
1183} /* ecore_x_icccm_client_leader_get */ 1183}
1184 1184
1185EAPI void 1185EAPI void
1186ecore_x_icccm_iconic_request_send(Ecore_X_Window win, 1186ecore_x_icccm_iconic_request_send(Ecore_X_Window win,
@@ -1206,7 +1206,7 @@ ecore_x_icccm_iconic_request_send(Ecore_X_Window win,
1206 1206
1207 XSendEvent(_ecore_x_disp, root, False, 1207 XSendEvent(_ecore_x_disp, root, False,
1208 SubstructureNotifyMask | SubstructureRedirectMask, &xev); 1208 SubstructureNotifyMask | SubstructureRedirectMask, &xev);
1209} /* ecore_x_icccm_iconic_request_send */ 1209}
1210 1210
1211/* FIXME: there are older E hints, gnome hints and mwm hints and new netwm */ 1211/* FIXME: there are older E hints, gnome hints and mwm hints and new netwm */
1212/* hints. each should go in their own file/section so we know which */ 1212/* hints. each should go in their own file/section so we know which */