dump and flush protocol added.
authorraster <raster@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Mon, 12 Apr 2010 08:24:19 +0000 (08:24 +0000)
committerraster <raster@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Mon, 12 Apr 2010 08:24:19 +0000 (08:24 +0000)
git-svn-id: http://svn.enlightenment.org/svn/e/trunk/ecore@47948 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 f5cc836..ffc9184 100644 (file)
@@ -1607,7 +1607,6 @@ EAPI int ecore_x_e_illume_quickpanel_zone_get(Ecore_X_Window win);
 EAPI void ecore_x_e_illume_quickpanel_zone_request_send(Ecore_X_Window win);
 EAPI void ecore_x_e_illume_quickpanel_position_update_send(Ecore_X_Window win);
 
-
 EAPI void                 ecore_x_e_comp_sync_counter_set(Ecore_X_Window win, Ecore_X_Sync_Counter counter);
 EAPI Ecore_X_Sync_Counter ecore_x_e_comp_sync_counter_get(Ecore_X_Window win);
 EAPI void                 ecore_x_e_comp_sync_draw_done_send(Ecore_X_Window root, Ecore_X_Window win);
@@ -1616,6 +1615,9 @@ EAPI Eina_Bool            ecore_x_e_comp_sync_supported_get(Ecore_X_Window root)
 EAPI void                 ecore_x_e_comp_sync_begin_send(Ecore_X_Window win);
 EAPI void                 ecore_x_e_comp_sync_end_send(Ecore_X_Window win);
 EAPI void                 ecore_x_e_comp_sync_cancel_send(Ecore_X_Window win);
+
+EAPI void                 ecore_x_e_comp_flush_send(Ecore_X_Window win);
+EAPI void                 ecore_x_e_comp_dump_send(Ecore_X_Window win);
        
 EAPI Ecore_X_Sync_Alarm   ecore_x_sync_alarm_new(Ecore_X_Sync_Counter counter);
 EAPI int                  ecore_x_sync_alarm_free(Ecore_X_Sync_Alarm alarm);
index d703056..3f9f7ee 100644 (file)
@@ -242,5 +242,7 @@ EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_COMP_SYNC_SUPPORTED;
 EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_COMP_SYNC_BEGIN;
 EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_COMP_SYNC_END;
 EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_COMP_SYNC_CANCEL;
+EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_COMP_FLUSH;
+EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_COMP_DUMP;
 
 #endif /* _ECORE_X_ATOMS_H */
index 6287d55..b59527f 100644 (file)
@@ -264,3 +264,6 @@ EAPI Ecore_X_Atom ECORE_X_ATOM_E_COMP_SYNC_SUPPORTED = 0;
 EAPI Ecore_X_Atom ECORE_X_ATOM_E_COMP_SYNC_BEGIN = 0;
 EAPI Ecore_X_Atom ECORE_X_ATOM_E_COMP_SYNC_END = 0;
 EAPI Ecore_X_Atom ECORE_X_ATOM_E_COMP_SYNC_CANCEL = 0;
+
+EAPI Ecore_X_Atom ECORE_X_ATOM_E_COMP_FLUSH = 0;
+EAPI Ecore_X_Atom ECORE_X_ATOM_E_COMP_DUMP = 0;
index 16f28e2..836e75b 100644 (file)
@@ -255,7 +255,10 @@ _ecore_x_atoms_init(void)
         { "_E_COMP_SYNC_SUPPORTED", &ECORE_X_ATOM_E_COMP_SYNC_SUPPORTED },
         { "_E_COMP_SYNC_BEGIN", &ECORE_X_ATOM_E_COMP_SYNC_BEGIN },
         { "_E_COMP_SYNC_END", &ECORE_X_ATOM_E_COMP_SYNC_END },
-        { "_E_COMP_SYNC_CANCEL", &ECORE_X_ATOM_E_COMP_SYNC_CANCEL }
+        { "_E_COMP_SYNC_CANCEL", &ECORE_X_ATOM_E_COMP_SYNC_CANCEL },
+        
+        { "_E_COMP_FLUSH", &ECORE_X_ATOM_E_COMP_FLUSH },
+        { "_E_COMP_DUMP", &ECORE_X_ATOM_E_COMP_DUMP }
      };
    Atom *atoms;
    char **names;
index 6597a2b..5493ca4 100644 (file)
@@ -815,3 +815,46 @@ ecore_x_e_comp_sync_cancel_send(Ecore_X_Window win)
               &xev);
 }
 
+EAPI void
+ecore_x_e_comp_flush_send(Ecore_X_Window win)
+{
+   XEvent xev;
+   
+   LOGFN(__FILE__, __LINE__, __FUNCTION__);
+   xev.xclient.type = ClientMessage;
+   xev.xclient.display = _ecore_x_disp;
+   xev.xclient.window = win;
+   xev.xclient.message_type = ECORE_X_ATOM_E_COMP_FLUSH;
+   xev.xclient.format = 32;
+   xev.xclient.data.l[0] = win;
+   xev.xclient.data.l[1] = 0; // later
+   xev.xclient.data.l[2] = 0; // later
+   xev.xclient.data.l[3] = 0; // later
+   xev.xclient.data.l[4] = 0; // later
+   
+   XSendEvent(_ecore_x_disp, win, False,
+              NoEventMask, //SubstructureRedirectMask | SubstructureNotifyMask, 
+              &xev);
+}
+
+EAPI void
+ecore_x_e_comp_dump_send(Ecore_X_Window win)
+{
+   XEvent xev;
+   
+   LOGFN(__FILE__, __LINE__, __FUNCTION__);
+   xev.xclient.type = ClientMessage;
+   xev.xclient.display = _ecore_x_disp;
+   xev.xclient.window = win;
+   xev.xclient.message_type = ECORE_X_ATOM_E_COMP_DUMP;
+   xev.xclient.format = 32;
+   xev.xclient.data.l[0] = win;
+   xev.xclient.data.l[1] = 0; // later
+   xev.xclient.data.l[2] = 0; // later
+   xev.xclient.data.l[3] = 0; // later
+   xev.xclient.data.l[4] = 0; // later
+   
+   XSendEvent(_ecore_x_disp, win, False,
+              NoEventMask, //SubstructureRedirectMask | SubstructureNotifyMask, 
+              &xev);
+}