Enlightenment CVS committal

Author  : devilhorns
Project : e17
Module  : apps/e

Dir     : e17/apps/e/src/bin


Modified Files:
        e_zone.c 


Log Message:
Fix for the "white background" some people are seeing on startup.
This should not affect people that were not seeing that behavior.
See comments for explaination.

===================================================================
RCS file: /cvs/e/e17/apps/e/src/bin/e_zone.c,v
retrieving revision 1.110
retrieving revision 1.111
diff -u -3 -r1.110 -r1.111
--- e_zone.c    2 Mar 2007 14:45:09 -0000       1.110
+++ e_zone.c    3 Mar 2007 18:38:44 -0000       1.111
@@ -350,6 +350,7 @@
    yy = y_count;
    if (yy < 1) yy = 1;
 
+   /* Orphaned window catcher; in case desk count gets reset */
    moved = 0;
    if (zone->desk_x_current >= xx) moved = 1;
    if (zone->desk_y_current >= yy) moved = 1;
@@ -359,18 +360,8 @@
        ny = zone->desk_y_current;
        if (zone->desk_x_current >= xx) nx = xx - 1;
        if (zone->desk_y_current >= yy) ny = yy - 1;
-       printf("show desk %i,%i\n", nx, ny);
        e_desk_show(e_desk_at_xy_get(zone, nx, ny));
      }
-   else
-     {
-       desk = e_desk_current_get(zone);
-       if (desk)
-         {
-            desk->visible = 0;
-            e_desk_show(desk);
-         }
-     }
    
    new_desks = malloc(xx * yy * sizeof(E_Desk *));
    for (x = 0; x < xx; x++)
@@ -431,10 +422,20 @@
    
    zone->desk_x_count = xx;
    zone->desk_y_count = yy;
-
    e_config->zone_desks_x_count = xx;
    e_config->zone_desks_y_count = yy;
    e_config_save_queue();
+
+   /* Cannot call desk_current_get until the zone desk counts have been set 
+    * or else we end up with a "white background" because desk_current_get will
+    * return NULL.
+    */
+   desk = e_desk_current_get(zone);
+   if (desk)
+     {
+       desk->visible = 0;
+       e_desk_show(desk);
+     }
 
    ev = E_NEW(E_Event_Zone_Desk_Count_Set, 1);
    if (!ev) return;



-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to