Enlightenment CVS committal Author : raster Project : e17 Module : apps/e
Dir : e17/apps/e/src/modules/pager Modified Files: e_mod_main.c e_mod_main.h Log Message: fix a bunch of fixme's in the todo for mini freeze found recently =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/modules/pager/e_mod_main.c,v retrieving revision 1.76 retrieving revision 1.77 diff -u -3 -r1.76 -r1.77 --- e_mod_main.c 1 Apr 2005 16:12:30 -0000 1.76 +++ e_mod_main.c 5 Apr 2005 14:47:47 -0000 1.77 @@ -49,6 +49,7 @@ static int _pager_face_cb_event_border_icon_change(void *data, int type, void *event); static int _pager_face_cb_event_zone_desk_count_set(void *data, int type, void *event); static int _pager_face_cb_event_desk_show(void *data, int type, void *event); +static int _pager_face_cb_event_container_resize(void *data, int type, void *event); static void _pager_face_cb_menu_enabled(void *data, E_Menu *m, E_Menu_Item *mi); static void _pager_face_cb_menu_edit(void *data, E_Menu *m, E_Menu_Item *mi); @@ -321,6 +322,9 @@ face->ev_handler_desk_show = ecore_event_handler_add(E_EVENT_DESK_SHOW, _pager_face_cb_event_desk_show, face); + face->ev_handler_container_resize = + ecore_event_handler_add(E_EVENT_CONTAINER_RESIZE, + _pager_face_cb_event_container_resize, face); /* the bg */ o = edje_object_add(face->evas); @@ -337,9 +341,9 @@ edje_object_part_swallow(face->pager_object, "items", face->table_object); evas_object_show(o); + face->gmc = e_gadman_client_new(zone->container->gadman); _pager_face_zone_set(face, zone); - face->gmc = e_gadman_client_new(face->zone->container->gadman); e_gadman_client_domain_set(face->gmc, "module.pager", _pager_count++); e_gadman_client_zone_set(face->gmc, face->zone); e_gadman_client_policy_set(face->gmc, @@ -383,6 +387,7 @@ ecore_event_handler_del(face->ev_handler_border_icon_change); ecore_event_handler_del(face->ev_handler_zone_desk_count_set); ecore_event_handler_del(face->ev_handler_desk_show); + ecore_event_handler_del(face->ev_handler_container_resize); e_object_del(E_OBJECT(face->menu)); @@ -401,12 +406,13 @@ mn = e_menu_new(); face->menu = mn; + /* mi = e_menu_item_new(mn); e_menu_item_label_set(mi, "Enabled"); e_menu_item_check_set(mi, 1); if (face->conf->enabled) e_menu_item_toggle_set(mi, 1); e_menu_item_callback_set(mi, _pager_face_cb_menu_enabled, face); - + */ mi = e_menu_item_new(mn); e_menu_item_label_set(mi, "Edit Mode"); e_menu_item_callback_set(mi, _pager_face_cb_menu_edit, face); @@ -470,6 +476,9 @@ if (pd) face->desks = evas_list_append(face->desks, pd); } } +// e_gadman_client_aspect_set(face->gmc, +// (double)(face->xnum * face->zone->w) / (double)(face->ynum * face->zone->h), +// (double)(face->xnum * face->zone->w) / (double)(face->ynum * face->zone->h)); } static void @@ -1187,6 +1196,9 @@ face->xnum = desks_x; face->ynum = desks_y; +// e_gadman_client_aspect_set(face->gmc, +// (double)(face->xnum * face->zone->w) / (double)(face->ynum * face->zone->h), +// (double)(face->xnum * face->zone->w) / (double)(face->ynum * face->zone->h)); e_gadman_client_resize(face->gmc, face->fw + dw, face->fh + dh); return 1; } @@ -1206,6 +1218,40 @@ return 1; } +static int +_pager_face_cb_event_container_resize(void *data, int type, void *event) +{ + Pager_Face *face; + E_Event_Container_Resize *ev; + Evas_List *l; + Evas_Coord w, h, lw, lh; + + face = data; + ev = event; + if (face->zone->container != ev->container) return 1; + for (l = face->desks; l; l = l->next) + { + Pager_Desk *pd; + + pd = l->data; + e_layout_virtual_size_set(pd->layout_object, + face->zone->w, + face->zone->h); + } +// e_gadman_client_aspect_set(face->gmc, +// (double)(face->xnum * face->zone->w) / (double)(face->ynum * face->zone->h), +// (double)(face->xnum * face->zone->w) / (double)(face->ynum * face->zone->h)); + w = face->fw; + h = face->fh; + evas_object_geometry_get(face->table_object, NULL, NULL, &lw, &lh); + if ((face->xnum * face->zone->w) > (face->ynum * face->zone->h)) + w = face->xnum * ((face->zone->w * lh) / face->zone->h); + else + h = face->ynum * ((face->zone->h * lw) / face->zone->w); + e_gadman_client_resize(face->gmc, w, h); + return 1; +} + /*****/ static void =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/modules/pager/e_mod_main.h,v retrieving revision 1.19 retrieving revision 1.20 diff -u -3 -r1.19 -r1.20 --- e_mod_main.h 21 Mar 2005 23:05:40 -0000 1.19 +++ e_mod_main.h 5 Apr 2005 14:47:48 -0000 1.20 @@ -73,6 +73,7 @@ Ecore_Event_Handler *ev_handler_border_icon_change; Ecore_Event_Handler *ev_handler_zone_desk_count_set; Ecore_Event_Handler *ev_handler_desk_show; + Ecore_Event_Handler *ev_handler_container_resize; }; struct _Pager_Desk ------------------------------------------------------- SF email is sponsored by - The IT Product Guide Read honest & candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs