Enlightenment CVS committal Author : sebastid Project : e17 Module : libs/ecore
Dir : e17/libs/ecore/src/lib/ecore_x Modified Files: Ecore_X.h ecore_x.c ecore_x_events.c Log Message: Catch ping event. =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_x/Ecore_X.h,v retrieving revision 1.131 retrieving revision 1.132 diff -u -3 -r1.131 -r1.132 --- Ecore_X.h 5 Jun 2005 14:38:42 -0000 1.131 +++ Ecore_X.h 5 Jun 2005 14:46:55 -0000 1.132 @@ -242,6 +242,7 @@ typedef struct _Ecore_X_Event_Window_Move_Resize_Request Ecore_X_Event_Window_Move_Resize_Request; typedef struct _Ecore_X_Event_Window_State_Request Ecore_X_Event_Window_State_Request; typedef struct _Ecore_X_Event_Frame_Extents_Request Ecore_X_Event_Frame_Extents_Request; +typedef struct _Ecore_X_Event_Ping Ecore_X_Event_Ping; typedef struct _Ecore_X_Event_Desktop_Change Ecore_X_Event_Desktop_Change; typedef struct _Ecore_X_Event_Client_Message Ecore_X_Event_Client_Message; typedef struct _Ecore_X_Event_Window_Shape Ecore_X_Event_Window_Shape; @@ -623,6 +624,13 @@ Ecore_X_Window win; }; +struct _Ecore_X_Event_Ping +{ + Ecore_X_Window win; + Ecore_X_Window event_win; + Ecore_X_Time time; +}; + struct _Ecore_X_Event_Desktop_Change { Ecore_X_Window win; @@ -746,6 +754,7 @@ extern EAPI int ECORE_X_EVENT_WINDOW_MOVE_RESIZE_REQUEST; extern EAPI int ECORE_X_EVENT_WINDOW_STATE_REQUEST; extern EAPI int ECORE_X_EVENT_FRAME_EXTENTS_REQUEST; +extern EAPI int ECORE_X_EVENT_PING; extern EAPI int ECORE_X_EVENT_DESKTOP_CHANGE; extern EAPI int ECORE_X_EVENT_CLIENT_MESSAGE; extern EAPI int ECORE_X_EVENT_WINDOW_SHAPE; =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_x/ecore_x.c,v retrieving revision 1.85 retrieving revision 1.86 diff -u -3 -r1.85 -r1.86 --- ecore_x.c 3 Jun 2005 19:00:01 -0000 1.85 +++ ecore_x.c 5 Jun 2005 14:46:55 -0000 1.86 @@ -116,6 +116,7 @@ int ECORE_X_EVENT_WINDOW_MOVE_RESIZE_REQUEST = 0; int ECORE_X_EVENT_WINDOW_STATE_REQUEST = 0; int ECORE_X_EVENT_FRAME_EXTENTS_REQUEST = 0; +int ECORE_X_EVENT_PING = 0; int ECORE_X_EVENT_DESKTOP_CHANGE = 0; int ECORE_X_EVENT_CLIENT_MESSAGE = 0; int ECORE_X_EVENT_WINDOW_SHAPE = 0; @@ -261,6 +262,7 @@ ECORE_X_EVENT_WINDOW_MOVE_RESIZE_REQUEST = ecore_event_type_new(); ECORE_X_EVENT_WINDOW_STATE_REQUEST = ecore_event_type_new(); ECORE_X_EVENT_FRAME_EXTENTS_REQUEST = ecore_event_type_new(); + ECORE_X_EVENT_PING = ecore_event_type_new(); ECORE_X_EVENT_DESKTOP_CHANGE = ecore_event_type_new(); ECORE_X_EVENT_CLIENT_MESSAGE = ecore_event_type_new(); ECORE_X_EVENT_WINDOW_SHAPE = ecore_event_type_new(); =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_x/ecore_x_events.c,v retrieving revision 1.61 retrieving revision 1.62 diff -u -3 -r1.61 -r1.62 --- ecore_x_events.c 3 Jun 2005 19:00:01 -0000 1.61 +++ ecore_x_events.c 5 Jun 2005 14:46:55 -0000 1.62 @@ -1466,6 +1466,20 @@ ecore_event_add(ECORE_X_EVENT_FRAME_EXTENTS_REQUEST, e, NULL, NULL); } + else if ((xevent->xclient.message_type == ECORE_X_ATOM_WM_PROTOCOLS) + && (xevent->xclient.data.l[0] == ECORE_X_ATOM_NET_WM_PING) + && (xevent->xclient.format == 32)) + { + Ecore_X_Event_Ping *e; + + e = calloc(1, sizeof(Ecore_X_Event_Ping)); + if (!e) return; + e->win = xevent->xclient.window; + e->time = xevent->xclient.data.l[1]; + e->event_win = xevent->xclient.data.l[2]; + + ecore_event_add(ECORE_X_EVENT_PING, e, NULL, NULL); + } else { Ecore_X_Event_Client_Message *e; ------------------------------------------------------- This SF.Net email is sponsored by: NEC IT Guy Games. How far can you shotput a projector? How fast can you ride your desk chair down the office luge track? If you want to score the big prize, get to know the little guy. Play to win an NEC 61" plasma display: http://www.necitguy.com/?r=20 _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs