Add missing vkbd atoms/states to functions where needed.
authordevilhorns <devilhorns@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Wed, 23 Dec 2009 01:48:25 +0000 (01:48 +0000)
committerdevilhorns <devilhorns@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Wed, 23 Dec 2009 01:48:25 +0000 (01:48 +0000)
Add atoms/states for illume winlist.

git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/ecore@44674 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_e.c

index b534208..b7f9682 100644 (file)
@@ -1018,6 +1018,13 @@ typedef enum _Ecore_X_Illume_Mode
      ECORE_X_ILLUME_MODE_DUAL
 } Ecore_X_Illume_Mode;
 
+typedef enum _Ecore_X_Illume_Winlist_State 
+{
+   ECORE_X_ILLUME_WINLIST_STATE_UNKNOWN = 0,
+     ECORE_X_ILLUME_WINLIST_STATE_ON, 
+     ECORE_X_ILLUME_WINLIST_STATE_OFF
+} Ecore_X_Illume_Winlist_State;
+
 /* Window layer constants */
 #define ECORE_X_WINDOW_LAYER_BELOW 2
 #define ECORE_X_WINDOW_LAYER_NORMAL 4
@@ -1551,6 +1558,8 @@ EAPI void                ecore_x_e_illume_drag_locked_set(Ecore_X_Window win, un
 EAPI int                 ecore_x_e_illume_drag_locked_get(Ecore_X_Window win);
 EAPI void                ecore_x_e_illume_drag_start_send(Ecore_X_Window win);
 EAPI void                ecore_x_e_illume_drag_end_send(Ecore_X_Window win);
+EAPI void                ecore_x_e_illume_winlist_state_set(Ecore_X_Window win, Ecore_X_Illume_Winlist_State state);
+EAPI Ecore_X_Illume_Winlist_State ecore_x_e_illume_winlist_state_get(Ecore_X_Window win);
 
 
 EAPI void                ecore_x_xinerama_query_screens_prefetch(void);
index 408ef2b..32771b9 100644 (file)
@@ -214,5 +214,9 @@ EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_DRAG;
 EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_DRAG_LOCKED;
 EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_DRAG_START;
 EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_DRAG_END;
+EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_WINLIST;
+EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_WINLIST_STATE;
+EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_WINLIST_ON;
+EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_WINLIST_OFF;
 
 #endif /* _ECORE_X_ATOMS_H */
index 8d9d846..0eba880 100644 (file)
@@ -205,7 +205,7 @@ EAPI Ecore_X_Atom  ECORE_X_ATOM_SELECTION_PROP_PRIMARY         = 0;
 EAPI Ecore_X_Atom  ECORE_X_ATOM_SELECTION_PROP_SECONDARY       = 0;
 EAPI Ecore_X_Atom  ECORE_X_ATOM_SELECTION_PROP_CLIPBOARD       = 0;
 
-/* currenly E specific virtual keyboard extension, aim to submit to netwm spec
+/* currently E specific virtual keyboard extension, aim to submit to netwm spec
  * later */
 
 EAPI Ecore_X_Atom  ECORE_X_ATOM_E_VIRTUAL_KEYBOARD             = 0;
@@ -226,7 +226,7 @@ EAPI Ecore_X_Atom  ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_URL         = 0;
 EAPI Ecore_X_Atom  ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_KEYPAD      = 0;
 EAPI Ecore_X_Atom  ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_J2ME        = 0;
 
-/* atom to determine if an app is illume compliant */
+/* currently E specific illume extension */
 EAPI Ecore_X_Atom  ECORE_X_ATOM_E_ILLUME_CONFORMANT            = 0;
 EAPI Ecore_X_Atom  ECORE_X_ATOM_E_ILLUME_MODE                  = 0;
 EAPI Ecore_X_Atom  ECORE_X_ATOM_E_ILLUME_MODE_SINGLE           = 0;
@@ -237,3 +237,7 @@ EAPI Ecore_X_Atom  ECORE_X_ATOM_E_ILLUME_DRAG                  = 0;
 EAPI Ecore_X_Atom  ECORE_X_ATOM_E_ILLUME_DRAG_LOCKED           = 0;
 EAPI Ecore_X_Atom  ECORE_X_ATOM_E_ILLUME_DRAG_START            = 0;
 EAPI Ecore_X_Atom  ECORE_X_ATOM_E_ILLUME_DRAG_END              = 0;
+EAPI Ecore_X_Atom  ECORE_X_ATOM_E_ILLUME_WINLIST               = 0;
+EAPI Ecore_X_Atom  ECORE_X_ATOM_E_ILLUME_WINLIST_STATE         = 0;
+EAPI Ecore_X_Atom  ECORE_X_ATOM_E_ILLUME_WINLIST_ON            = 0;
+EAPI Ecore_X_Atom  ECORE_X_ATOM_E_ILLUME_WINLIST_OFF           = 0;
index ae9cbb2..f9be3e6 100644 (file)
@@ -226,7 +226,11 @@ _ecore_x_atoms_init(void)
         { "_E_ILLUME_DRAG", &ECORE_X_ATOM_E_ILLUME_DRAG }, 
         { "_E_ILLUME_DRAG_LOCKED", &ECORE_X_ATOM_E_ILLUME_DRAG_LOCKED }, 
         { "_E_ILLUME_DRAG_START", &ECORE_X_ATOM_E_ILLUME_DRAG_START }, 
-        { "_E_ILLUME_DRAG_END", &ECORE_X_ATOM_E_ILLUME_DRAG_END }
+        { "_E_ILLUME_DRAG_END", &ECORE_X_ATOM_E_ILLUME_DRAG_END }, 
+        { "_E_ILLUME_WINLIST", &ECORE_X_ATOM_E_ILLUME_WINLIST }, 
+        { "_E_ILLUME_WINLIST_STATE", &ECORE_X_ATOM_E_ILLUME_WINLIST_STATE }, 
+        { "_E_ILLUME_WINLIST_ON", &ECORE_X_ATOM_E_ILLUME_WINLIST_ON }, 
+        { "_E_ILLUME_WINLIST_OFF", &ECORE_X_ATOM_E_ILLUME_WINLIST_OFF }
      };
    Atom *atoms;
    char **names;
index e5bfb36..7700f12 100644 (file)
@@ -52,15 +52,36 @@ ecore_x_e_virtual_keyboard_get(Ecore_X_Window win)
 static Ecore_X_Virtual_Keyboard_State
 _ecore_x_e_vkbd_state_get(Ecore_X_Atom atom)
 {
-   if (atom == ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_ON) return ECORE_X_VIRTUAL_KEYBOARD_STATE_ON;
-   if (atom == ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_OFF) return ECORE_X_VIRTUAL_KEYBOARD_STATE_OFF;
-   if (atom == ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_ALPHA) return ECORE_X_VIRTUAL_KEYBOARD_STATE_ALPHA;
-   if (atom == ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_NUMERIC) return ECORE_X_VIRTUAL_KEYBOARD_STATE_NUMERIC;
-   if (atom == ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_PIN) return ECORE_X_VIRTUAL_KEYBOARD_STATE_PIN;
-   if (atom == ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_PHONE_NUMBER) return ECORE_X_VIRTUAL_KEYBOARD_STATE_PHONE_NUMBER;
-   if (atom == ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_HEX) return ECORE_X_VIRTUAL_KEYBOARD_STATE_HEX;
-   if (atom == ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_TERMINAL) return ECORE_X_VIRTUAL_KEYBOARD_STATE_TERMINAL;
-   if (atom == ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_PASSWORD) return ECORE_X_VIRTUAL_KEYBOARD_STATE_PASSWORD;
+   if (atom == ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_ON) 
+     return ECORE_X_VIRTUAL_KEYBOARD_STATE_ON;
+   if (atom == ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_OFF) 
+     return ECORE_X_VIRTUAL_KEYBOARD_STATE_OFF;
+   if (atom == ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_ALPHA) 
+     return ECORE_X_VIRTUAL_KEYBOARD_STATE_ALPHA;
+   if (atom == ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_NUMERIC) 
+     return ECORE_X_VIRTUAL_KEYBOARD_STATE_NUMERIC;
+   if (atom == ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_PIN) 
+     return ECORE_X_VIRTUAL_KEYBOARD_STATE_PIN;
+   if (atom == ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_PHONE_NUMBER) 
+     return ECORE_X_VIRTUAL_KEYBOARD_STATE_PHONE_NUMBER;
+   if (atom == ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_HEX) 
+     return ECORE_X_VIRTUAL_KEYBOARD_STATE_HEX;
+   if (atom == ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_TERMINAL) 
+     return ECORE_X_VIRTUAL_KEYBOARD_STATE_TERMINAL;
+   if (atom == ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_PASSWORD) 
+     return ECORE_X_VIRTUAL_KEYBOARD_STATE_PASSWORD;
+   if (atom == ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_IP) 
+     return ECORE_X_VIRTUAL_KEYBOARD_STATE_IP;
+   if (atom == ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_HOST) 
+     return ECORE_X_VIRTUAL_KEYBOARD_STATE_HOST;
+   if (atom == ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_FILE) 
+     return ECORE_X_VIRTUAL_KEYBOARD_STATE_FILE;
+   if (atom == ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_URL) 
+     return ECORE_X_VIRTUAL_KEYBOARD_STATE_URL;
+   if (atom == ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_KEYPAD) 
+     return ECORE_X_VIRTUAL_KEYBOARD_STATE_KEYPAD;
+   if (atom == ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_J2ME) 
+     return ECORE_X_VIRTUAL_KEYBOARD_STATE_J2ME;
    return ECORE_X_VIRTUAL_KEYBOARD_STATE_UNKNOWN;
 }
 
@@ -69,15 +90,36 @@ _ecore_x_e_vkbd_atom_get(Ecore_X_Virtual_Keyboard_State state)
 {
    switch (state)
      {
-      case ECORE_X_VIRTUAL_KEYBOARD_STATE_OFF: return ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_OFF;
-      case ECORE_X_VIRTUAL_KEYBOARD_STATE_ON: return ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_ON;
-      case ECORE_X_VIRTUAL_KEYBOARD_STATE_ALPHA: return ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_ALPHA;
-      case ECORE_X_VIRTUAL_KEYBOARD_STATE_NUMERIC: return ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_NUMERIC;
-      case ECORE_X_VIRTUAL_KEYBOARD_STATE_PIN: return ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_PIN;
-      case ECORE_X_VIRTUAL_KEYBOARD_STATE_PHONE_NUMBER: return ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_PHONE_NUMBER;
-      case ECORE_X_VIRTUAL_KEYBOARD_STATE_HEX: return ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_HEX;
-      case ECORE_X_VIRTUAL_KEYBOARD_STATE_TERMINAL: return ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_TERMINAL;
-      case ECORE_X_VIRTUAL_KEYBOARD_STATE_PASSWORD: return ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_PASSWORD;
+      case ECORE_X_VIRTUAL_KEYBOARD_STATE_OFF: 
+        return ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_OFF;
+      case ECORE_X_VIRTUAL_KEYBOARD_STATE_ON: 
+        return ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_ON;
+      case ECORE_X_VIRTUAL_KEYBOARD_STATE_ALPHA: 
+        return ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_ALPHA;
+      case ECORE_X_VIRTUAL_KEYBOARD_STATE_NUMERIC: 
+        return ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_NUMERIC;
+      case ECORE_X_VIRTUAL_KEYBOARD_STATE_PIN: 
+        return ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_PIN;
+      case ECORE_X_VIRTUAL_KEYBOARD_STATE_PHONE_NUMBER: 
+        return ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_PHONE_NUMBER;
+      case ECORE_X_VIRTUAL_KEYBOARD_STATE_HEX: 
+        return ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_HEX;
+      case ECORE_X_VIRTUAL_KEYBOARD_STATE_TERMINAL: 
+        return ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_TERMINAL;
+      case ECORE_X_VIRTUAL_KEYBOARD_STATE_PASSWORD: 
+        return ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_PASSWORD;
+      case ECORE_X_VIRTUAL_KEYBOARD_STATE_IP: 
+        return ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_IP;
+      case ECORE_X_VIRTUAL_KEYBOARD_STATE_HOST: 
+        return ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_HOST;
+      case ECORE_X_VIRTUAL_KEYBOARD_STATE_FILE: 
+        return ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_FILE;
+      case ECORE_X_VIRTUAL_KEYBOARD_STATE_URL: 
+        return ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_URL;
+      case ECORE_X_VIRTUAL_KEYBOARD_STATE_KEYPAD: 
+        return ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_KEYPAD;
+      case ECORE_X_VIRTUAL_KEYBOARD_STATE_J2ME: 
+        return ECORE_X_ATOM_E_VIRTUAL_KEYBOARD_J2ME;
       default: return 0;
      }
    return 0;
@@ -249,3 +291,49 @@ ecore_x_e_illume_drag_end_send(Ecore_X_Window win)
                                 ECORE_X_EVENT_MASK_WINDOW_CONFIGURE,
                                 1, 0, 0, 0, 0);
 }
+
+static Ecore_X_Atom 
+_ecore_x_e_illume_winlist_atom_get(Ecore_X_Illume_Winlist_State state) 
+{
+   switch (state) 
+     {
+      case ECORE_X_ILLUME_WINLIST_STATE_ON:
+        return ECORE_X_ATOM_E_ILLUME_WINLIST_ON;
+      case ECORE_X_ILLUME_WINLIST_STATE_OFF:
+        return ECORE_X_ATOM_E_ILLUME_WINLIST_OFF;
+      default:
+        return 0;
+     }
+   return 0;
+}
+
+static Ecore_X_Illume_Mode 
+_ecore_x_e_illume_winlist_state_get(Ecore_X_Atom atom) 
+{
+   if (atom == ECORE_X_ATOM_E_ILLUME_WINLIST_ON)
+     return ECORE_X_ILLUME_WINLIST_STATE_ON;
+   if (atom == ECORE_X_ATOM_E_ILLUME_WINLIST_OFF)
+     return ECORE_X_ILLUME_WINLIST_STATE_OFF;
+   return ECORE_X_ILLUME_WINLIST_STATE_UNKNOWN;
+}
+
+EAPI void 
+ecore_x_e_illume_winlist_state_set(Ecore_X_Window win, Ecore_X_Illume_Winlist_State state) 
+{
+   Ecore_X_Atom atom = 0;
+
+   atom = _ecore_x_e_illume_winlist_atom_get(state);
+   ecore_x_window_prop_atom_set(win, ECORE_X_ATOM_E_ILLUME_WINLIST_STATE,
+                               &atom, 1);
+}
+
+EAPI Ecore_X_Illume_Winlist_State 
+ecore_x_e_illume_winlist_state_get(Ecore_X_Window win) 
+{
+   Ecore_X_Atom atom;
+   if (!ecore_x_window_prop_atom_get(win, ECORE_X_ATOM_E_ILLUME_WINLIST_STATE,
+                                    &atom, 1))
+     return ECORE_X_ILLUME_WINLIST_STATE_UNKNOWN;
+   return _ecore_x_e_illume_winlist_state_get(atom);
+}