dump and flush protocol added.

SVN revision: 47948
This commit is contained in:
Carsten Haitzler 2010-04-12 08:24:19 +00:00
parent afe65d7c0a
commit c2da1184b6
5 changed files with 55 additions and 2 deletions

View 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);

View 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 */

View 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;

View 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;

View 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);
}