Enlightenment CVS committal

Author  : handyande
Project : e17
Module  : apps/e

Dir     : e17/apps/e/src/modules/pager


Modified Files:
        e_mod_main.c 


Log Message:
Don't create a gadman for the popup (removes the empty gadman container when 
switching desks in edit mode)
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/modules/pager/e_mod_main.c,v
retrieving revision 1.160
retrieving revision 1.161
diff -u -3 -r1.160 -r1.161
--- e_mod_main.c        7 Jan 2006 10:39:46 -0000       1.160
+++ e_mod_main.c        11 Jan 2006 13:55:20 -0000      1.161
@@ -17,7 +17,7 @@
 static void        _pager_free(Pager *pager);
 static void        _pager_config_menu_new(Pager *pager);
 
-static Pager_Face *_pager_face_new(Pager *pager, E_Zone *zone, Evas *evas);
+static Pager_Face *_pager_face_new(Pager *pager, E_Zone *zone, Evas *evas, int 
use_gmc);
 static void        _pager_face_free(Pager_Face *face);
 static void        _pager_face_menu_new(Pager_Face *face);
 static void        _pager_face_disable(Pager_Face *face);
@@ -260,7 +260,8 @@
               {
                  zone = l3->data;
 
-                 face = _pager_face_new(pager, zone, zone->container->bg_evas);
+                 face = _pager_face_new(pager, zone, zone->container->bg_evas,
+                                        1);
                  if (face)
                    {
                       pager->faces = evas_list_append(pager->faces, face);
@@ -416,7 +417,7 @@
 }
 
 static Pager_Face *
-_pager_face_new(Pager *pager, E_Zone *zone, Evas *evas)
+_pager_face_new(Pager *pager, E_Zone *zone, Evas *evas, int use_gmc)
 {
    Pager_Face  *face;
    Evas_Object *o;
@@ -459,8 +460,14 @@
                                           drop, 2,
                                           face->fx, face->fy, face->fw, 
face->fh);
 
-   face->gmc = e_gadman_client_new(zone->container->gadman);
    _pager_face_zone_set(face, zone);
+   _pager_face_deskname_position_change(face);
+
+   /* popup does not want a gadman entry! */
+   if (!use_gmc)
+     return face;
+
+   face->gmc = e_gadman_client_new(zone->container->gadman);
 
    e_gadman_client_domain_set(face->gmc, "module.pager", _pager_count++);
    e_gadman_client_zone_set(face->gmc, face->zone);
@@ -490,7 +497,6 @@
 
    Evas_Coord g, z;
    e_gadman_client_geometry_get(face->gmc, NULL, NULL, &g, &z);
-   _pager_face_deskname_position_change(face);
 
    return face;
 }
@@ -500,8 +506,11 @@
 {
    if (face->pager_object) evas_object_del(face->pager_object);
    if (face->table_object) evas_object_del(face->table_object);
-   e_gadman_client_save(face->gmc);
-   e_object_del(E_OBJECT(face->gmc));
+   if (face->gmc)
+     {
+       e_gadman_client_save(face->gmc);
+       e_object_del(E_OBJECT(face->gmc));
+     }
 
    e_drop_handler_del(face->drop_handler);
 
@@ -1545,7 +1554,8 @@
 
             evas_object_geometry_get(face->pager_object, NULL, NULL, &w, &h);
             
-            pp->face = _pager_face_new(face->pager, face->zone, 
pp->popup->evas);
+            pp->face = _pager_face_new(face->pager, face->zone,
+                                       pp->popup->evas, 0);
             evas_object_move(pp->face->pager_object, 0, 0);
             evas_object_resize(pp->face->pager_object, w, h);
 




-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to