Enlightenment CVS committal

Author  : sebastid
Project : e17
Module  : libs/ecore

Dir     : e17/libs/ecore/src/lib/ecore_x


Modified Files:
        ecore_x_events.c 


Log Message:
Send an Ecore_X_Event_Window_State on WM_CHANGE_STATE message with
Iconic request.

===================================================================
RCS file: 
/cvsroot/enlightenment/e17/libs/ecore/src/lib/ecore_x/ecore_x_events.c,v
retrieving revision 1.54
retrieving revision 1.55
diff -u -3 -r1.54 -r1.55
--- ecore_x_events.c    2 May 2005 07:13:52 -0000       1.54
+++ ecore_x_events.c    2 May 2005 08:13:25 -0000       1.55
@@ -1133,9 +1133,9 @@
    /* checks here and generate synthetic events per special message known */
    /* otherwise generate generic client message event. this would handle*/
    /* netwm, ICCCM, gnomewm, old kde and mwm hint client message protocols */
-   if ((xevent->xclient.message_type == ECORE_X_ATOM_WM_PROTOCOLS) &&
-        (xevent->xclient.format == 32) &&
-        (xevent->xclient.data.l[0] == (long)ECORE_X_ATOM_WM_DELETE_WINDOW))
+   if ((xevent->xclient.message_type == ECORE_X_ATOM_WM_PROTOCOLS)
+       && (xevent->xclient.format == 32)
+       && (xevent->xclient.data.l[0] == (long)ECORE_X_ATOM_WM_DELETE_WINDOW))
      {
        Ecore_X_Event_Window_Delete_Request *e;
 
@@ -1393,6 +1393,20 @@
 
        ecore_event_add(ECORE_X_EVENT_WINDOW_STATE, e, NULL, NULL);
      }
+   else if ((xevent->xclient.message_type == ECORE_X_ATOM_WM_CHANGE_STATE)
+           && (xevent->xclient.format == 32)
+           && (xevent->xclient.data.l[0] == IconicState))
+     {
+       Ecore_X_Event_Window_State *e;
+
+       e = calloc(1, sizeof(Ecore_X_Event_Window_State));
+       if (!e) return;
+       e->win = xevent->xclient.window;
+       e->action = ECORE_X_WINDOW_STATE_ACTION_ADD;
+       e->state[0] = ECORE_X_WINDOW_STATE_ICONIFIED;
+
+       ecore_event_add(ECORE_X_EVENT_WINDOW_STATE, e, NULL, NULL);
+     }
    else
      {
        Ecore_X_Event_Client_Message *e;




-------------------------------------------------------
This SF.Net email is sponsored by: NEC IT Guy Games.
Get your fingers limbered up and give it your best shot. 4 great events, 4
opportunities to win big! Highest score wins.NEC IT Guy Games. Play to
win an NEC 61 plasma display. Visit http://www.necitguy.com/?r=20
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to