more netwm window types - they were missed!
authorraster <raster@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Sat, 15 May 2010 05:38:21 +0000 (05:38 +0000)
committerraster <raster@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Sat, 15 May 2010 05:38:21 +0000 (05:38 +0000)
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/ecore@48884 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/lib/ecore_x/Ecore_X.h
src/lib/ecore_x/Ecore_X_Atoms.h
src/lib/ecore_x/ecore_x_atoms_decl.h
src/lib/ecore_x/xlib/ecore_x_atoms.c
src/lib/ecore_x/xlib/ecore_x_netwm.c

index ffc9184..a8fe707 100644 (file)
@@ -124,6 +124,8 @@ typedef enum _Ecore_X_Composite_Update_Type {
 } Ecore_X_Composite_Update_Type;
 
 typedef enum _Ecore_X_Window_State {
+    /* Unknown state */
+    ECORE_X_WINDOW_STATE_UNKNOWN = 0,
     /** The window is iconified. */
     ECORE_X_WINDOW_STATE_ICONIFIED,
     /** The window is a modal dialog box. */
@@ -151,9 +153,7 @@ typedef enum _Ecore_X_Window_State {
     ECORE_X_WINDOW_STATE_ABOVE,
     ECORE_X_WINDOW_STATE_BELOW,
     /* FIXME: Documentation */
-    ECORE_X_WINDOW_STATE_DEMANDS_ATTENTION,
-    /* Unknown state */
-    ECORE_X_WINDOW_STATE_UNKNOWN
+    ECORE_X_WINDOW_STATE_DEMANDS_ATTENTION
 } Ecore_X_Window_State;
 
 typedef enum _Ecore_X_Window_State_Action {
@@ -971,15 +971,21 @@ typedef enum _Ecore_X_Window_State_Hint
 
 typedef enum _Ecore_X_Window_Type 
 {
-    ECORE_X_WINDOW_TYPE_DESKTOP,
-    ECORE_X_WINDOW_TYPE_DOCK,
-    ECORE_X_WINDOW_TYPE_TOOLBAR,
-    ECORE_X_WINDOW_TYPE_MENU,
-    ECORE_X_WINDOW_TYPE_UTILITY,
-    ECORE_X_WINDOW_TYPE_SPLASH,
-    ECORE_X_WINDOW_TYPE_DIALOG,
-    ECORE_X_WINDOW_TYPE_NORMAL,
-    ECORE_X_WINDOW_TYPE_UNKNOWN
+     ECORE_X_WINDOW_TYPE_UNKNOWN = 0,
+     ECORE_X_WINDOW_TYPE_DESKTOP,
+     ECORE_X_WINDOW_TYPE_DOCK,
+     ECORE_X_WINDOW_TYPE_TOOLBAR,
+     ECORE_X_WINDOW_TYPE_MENU,
+     ECORE_X_WINDOW_TYPE_UTILITY,
+     ECORE_X_WINDOW_TYPE_SPLASH,
+     ECORE_X_WINDOW_TYPE_DIALOG,
+     ECORE_X_WINDOW_TYPE_NORMAL,
+     ECORE_X_WINDOW_TYPE_DROPDOWN_MENU,
+     ECORE_X_WINDOW_TYPE_POPUP_MENU,
+     ECORE_X_WINDOW_TYPE_TOOLTIP,
+     ECORE_X_WINDOW_TYPE_NOTIFICATION,
+     ECORE_X_WINDOW_TYPE_COMBO,
+     ECORE_X_WINDOW_TYPE_DND
 } Ecore_X_Window_Type;
 
 typedef enum _Ecore_X_Action 
index 3f9f7ee..02d9905 100644 (file)
@@ -126,6 +126,12 @@ EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_UTILITY;
 EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_SPLASH;
 EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DIALOG;
 EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_NORMAL;
+EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DROPDOWN_MENU;
+EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_POPUP_MENU;
+EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_TOOLTIP;
+EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_NOTIFICATION;
+EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_COMBO;
+EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DND;
 
 /* state */
 EAPI extern Ecore_X_Atom ECORE_X_ATOM_NET_WM_STATE;
index b59527f..fd7e9b6 100644 (file)
@@ -123,15 +123,21 @@ EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_VISIBLE_ICON_NAME       = 0;
 EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_DESKTOP                 = 0;
 
 /* window type */
-EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_WINDOW_TYPE             = 0;
-EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DESKTOP     = 0;
-EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DOCK        = 0;
-EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_WINDOW_TYPE_TOOLBAR     = 0;
-EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_WINDOW_TYPE_MENU        = 0;
-EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_WINDOW_TYPE_UTILITY     = 0;
-EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_WINDOW_TYPE_SPLASH      = 0;
-EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DIALOG      = 0;
-EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_WINDOW_TYPE_NORMAL      = 0;
+EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_WINDOW_TYPE               = 0;
+EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DESKTOP       = 0;
+EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DOCK          = 0;
+EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_WINDOW_TYPE_TOOLBAR       = 0;
+EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_WINDOW_TYPE_MENU          = 0;
+EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_WINDOW_TYPE_UTILITY       = 0;
+EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_WINDOW_TYPE_SPLASH        = 0;
+EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DIALOG        = 0;
+EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_WINDOW_TYPE_NORMAL        = 0;
+EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DROPDOWN_MENU = 0;
+EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_WINDOW_TYPE_POPUP_MENU    = 0;
+EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_WINDOW_TYPE_TOOLTIP       = 0;
+EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_WINDOW_TYPE_NOTIFICATION  = 0;
+EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_WINDOW_TYPE_COMBO         = 0;
+EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DND           = 0;
 
 /* state */
 EAPI Ecore_X_Atom  ECORE_X_ATOM_NET_WM_STATE                   = 0;
index 836e75b..c7b2ea2 100644 (file)
@@ -147,6 +147,12 @@ _ecore_x_atoms_init(void)
        { "_NET_WM_WINDOW_TYPE_SPLASH", &ECORE_X_ATOM_NET_WM_WINDOW_TYPE_SPLASH },
        { "_NET_WM_WINDOW_TYPE_DIALOG", &ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DIALOG },
        { "_NET_WM_WINDOW_TYPE_NORMAL", &ECORE_X_ATOM_NET_WM_WINDOW_TYPE_NORMAL },
+       { "_NET_WM_WINDOW_TYPE_DROPDOWN_MENU", &ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DROPDOWN_MENU },
+       { "_NET_WM_WINDOW_TYPE_POPUP_MENU", &ECORE_X_ATOM_NET_WM_WINDOW_TYPE_POPUP_MENU },
+       { "_NET_WM_WINDOW_TYPE_TOOLTIP", &ECORE_X_ATOM_NET_WM_WINDOW_TYPE_TOOLTIP },
+       { "_NET_WM_WINDOW_TYPE_NOTIFICATION", &ECORE_X_ATOM_NET_WM_WINDOW_TYPE_NOTIFICATION },
+       { "_NET_WM_WINDOW_TYPE_COMBO", &ECORE_X_ATOM_NET_WM_WINDOW_TYPE_COMBO },
+       { "_NET_WM_WINDOW_TYPE_DND", &ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DND },
 
        { "_NET_WM_STATE", &ECORE_X_ATOM_NET_WM_STATE },
        { "_NET_WM_STATE_MODAL", &ECORE_X_ATOM_NET_WM_STATE_MODAL },
index 80712a9..363c886 100644 (file)
@@ -828,6 +828,18 @@ _ecore_x_netwm_window_type_type_get(Ecore_X_Atom atom)
      return ECORE_X_WINDOW_TYPE_DIALOG;
    else if (atom == ECORE_X_ATOM_NET_WM_WINDOW_TYPE_NORMAL)
      return ECORE_X_WINDOW_TYPE_NORMAL;
+   else if (atom == ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DROPDOWN_MENU)
+     return ECORE_X_WINDOW_TYPE_DROPDOWN_MENU;
+   else if (atom == ECORE_X_ATOM_NET_WM_WINDOW_TYPE_POPUP_MENU)
+     return ECORE_X_WINDOW_TYPE_POPUP_MENU;
+   else if (atom == ECORE_X_ATOM_NET_WM_WINDOW_TYPE_TOOLTIP)
+     return ECORE_X_WINDOW_TYPE_TOOLTIP;
+   else if (atom == ECORE_X_ATOM_NET_WM_WINDOW_TYPE_NOTIFICATION)
+     return ECORE_X_WINDOW_TYPE_NOTIFICATION;
+   else if (atom == ECORE_X_ATOM_NET_WM_WINDOW_TYPE_COMBO)
+     return ECORE_X_WINDOW_TYPE_COMBO;
+   else if (atom == ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DND)
+     return ECORE_X_WINDOW_TYPE_DND;
    else
      return ECORE_X_WINDOW_TYPE_UNKNOWN;
 }
@@ -853,6 +865,18 @@ _ecore_x_netwm_window_type_atom_get(Ecore_X_Window_Type type)
         return ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DIALOG;
       case ECORE_X_WINDOW_TYPE_NORMAL:
         return ECORE_X_ATOM_NET_WM_WINDOW_TYPE_NORMAL;
+      case ECORE_X_WINDOW_TYPE_DROPDOWN_MENU:
+        return ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DROPDOWN_MENU;
+      case ECORE_X_WINDOW_TYPE_POPUP_MENU:
+        return ECORE_X_ATOM_NET_WM_WINDOW_TYPE_POPUP_MENU;
+      case ECORE_X_WINDOW_TYPE_TOOLTIP:
+        return ECORE_X_ATOM_NET_WM_WINDOW_TYPE_TOOLTIP;
+      case ECORE_X_WINDOW_TYPE_NOTIFICATION:
+        return ECORE_X_ATOM_NET_WM_WINDOW_TYPE_NOTIFICATION;
+      case ECORE_X_WINDOW_TYPE_COMBO:
+        return ECORE_X_ATOM_NET_WM_WINDOW_TYPE_COMBO;
+      case ECORE_X_WINDOW_TYPE_DND:
+        return ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DND;
       default:
         return 0;
      }