Enlightenment CVS committal

Author  : sebastid
Project : e17
Module  : apps/e

Dir     : e17/apps/e/src/bin


Modified Files:
        e_border.c e_border.h e_hints.c 


Log Message:
If something breaks because of the mwm disable, we need to implement
more actions on window type :)

===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_border.c,v
retrieving revision 1.237
retrieving revision 1.238
diff -u -3 -r1.237 -r1.238
--- e_border.c  3 Jun 2005 19:10:24 -0000       1.237
+++ e_border.c  3 Jun 2005 19:58:26 -0000       1.238
@@ -302,7 +302,7 @@
    bd->client.netwm.state.skip_pager = 0;
    bd->client.netwm.state.fullscreen = 0;
    bd->client.netwm.state.stacking = E_STACKING_NONE;
-   bd->client.netwm.type = ECORE_X_WINDOW_TYPE_NORMAL;
+   bd->client.netwm.type = ECORE_X_WINDOW_TYPE_UNKNOWN;
 
      {
        int at_num = 0, i;
@@ -369,6 +369,12 @@
                       printf("ECORE_X_ATOM_NET_WM_STRUT_PARTIAL\n");
                       bd->client.netwm.fetch.strut = 1;
                    }
+                 else if (atoms[i] == ECORE_X_ATOM_NET_WM_WINDOW_TYPE)
+                   {
+                      /* Ignore mwm */
+                      bd->client.mwm.fetch.hints = 0;
+                      bd->client.netwm.fetch.type = 1;
+                   }
               }
             free(atoms);
          }
@@ -1965,8 +1971,12 @@
      }
    else if (e->atom == ECORE_X_ATOM_MOTIF_WM_HINTS)
      {
-       bd->client.mwm.fetch.hints = 1;
-       bd->changed = 1;
+       if ((bd->client.netwm.type == ECORE_X_WINDOW_TYPE_UNKNOWN) &&
+           (!bd->client.netwm.fetch.type))
+         {
+            bd->client.mwm.fetch.hints = 1;
+            bd->changed = 1;
+         }
      }
    else if (e->atom == ECORE_X_ATOM_WM_TRANSIENT_FOR)
      {
@@ -3039,6 +3049,18 @@
          }
        bd->changes.icon = 0;
      }
+   if (bd->client.netwm.fetch.type)
+     {
+       e_hints_window_type_get(bd);
+       if (bd->client.netwm.type == ECORE_X_WINDOW_TYPE_DESKTOP)
+         {
+            if (bd->client.border.name) free(bd->client.border.name);
+            bd->client.border.name = strdup("borderless");
+            bd->client.border.changed = 1;
+         }
+
+       bd->client.netwm.fetch.type = 0;
+     }
    if (bd->client.icccm.fetch.machine)
      {
        if (bd->client.icccm.machine) free(bd->client.icccm.machine);
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_border.h,v
retrieving revision 1.66
retrieving revision 1.67
diff -u -3 -r1.66 -r1.67
--- e_border.h  3 Jun 2005 12:23:34 -0000       1.66
+++ e_border.h  3 Jun 2005 19:58:27 -0000       1.67
@@ -206,6 +206,7 @@
            unsigned char icon : 1;
            unsigned char user_time : 1;
            unsigned char strut : 1;
+           unsigned char type : 1;
            /* No, fetch on new_client, shouldn't be changed after map.
            unsigned char pid : 1;
            */
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_hints.c,v
retrieving revision 1.44
retrieving revision 1.45
diff -u -3 -r1.44 -r1.45
--- e_hints.c   3 Jun 2005 19:10:25 -0000       1.44
+++ e_hints.c   3 Jun 2005 19:58:27 -0000       1.45
@@ -299,7 +299,6 @@
 {
    /* Don't need fetch flag, is onlt called from new border */
    e_hints_window_state_get(bd);
-   e_hints_window_type_get(bd);
 
    bd->client.icccm.state = ecore_x_icccm_state_get(bd->client.win);
    if (bd->client.icccm.state == ECORE_X_WINDOW_STATE_HINT_NONE)




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

Reply via email to