From: <enl...@li...> - 2000-11-25 02:07:07
|
Enlightenment CVS committal Author : raster Project : e17 Module : libs/ecore Modified Files: Ecore.h e_x.c Log Message: more calls for wm stuff.... =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/Ecore.h,v retrieving revision 1.9 retrieving revision 1.10 diff -u -3 -r1.9 -r1.10 --- Ecore.h 2000/11/21 22:35:42 1.9 +++ Ecore.h 2000/11/25 02:07:06 1.10 @@ -247,6 +247,9 @@ void e_window_kill_client(Window win); void e_window_set_border_width(Window win, int bw); int e_window_get_wm_size_hints(Window win, XSizeHints *hints, int *mask); +int e_window_is_visible(Window win); +int e_window_is_normal(Window win); +int e_window_is_manageable(Window win); typedef struct _eev Eevent; typedef struct _ev_fd_handler Ev_Fd_Handler; =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/e_x.c,v retrieving revision 1.12 retrieving revision 1.13 diff -u -3 -r1.12 -r1.13 --- e_x.c 2000/11/21 22:35:42 1.12 +++ e_x.c 2000/11/25 02:07:06 1.13 @@ -2640,3 +2640,48 @@ *mask = (int)sup_ret; return ok; } + +int +e_window_is_visible(Window win) +{ + XWindowAttributes att; + + if (win == 0) + win = default_root; + if (XGetWindowAttributes(disp, win, &att) == True) + { + if (att.map_state == IsUnmapped) return 0; + return 1; + } + return 0; +} + +int +e_window_is_normal(Window win) +{ + XWindowAttributes att; + + if (win == 0) + win = default_root; + if (XGetWindowAttributes(disp, win, &att) == True) + { + if ((att.override_redirect) || (att.class == InputOnly)) return 0; + return 1; + } + return 0; +} + +int +e_window_is_manageable(Window win) +{ + XWindowAttributes att; + + if (win == 0) + win = default_root; + if (XGetWindowAttributes(disp, win, &att) == True) + { + if ((att.map_state == IsUnmapped) || (att.override_redirect) || (att.class == InputOnly)) return 0; + return 1; + } + return 0; +} |