Setting text to "" would case textblock to return a width of 0, which would 
intern cause EWL to loop and redo the configure callbacks. Not sure why. I'm 
catching the 0 width in the text code and making it 1 now. So, this should work 
again (and does in the ewl_entry_test).

dan


> Enlightenment CVS committal
> 
> Author  : lordchaos
> Project : e17
> Module  : libs/ewl
> 
> Dir     : e17/libs/ewl/src/lib
> 
> 
> Modified Files:
>       ewl_iconbox.c 
> 
> 
> Log Message:
> * It seems setting an ewl_text to "" seems to cause a lockup now
> 
> 
> ===================================================================
> RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/lib/ewl_iconbox.c,v
> retrieving revision 1.79
> retrieving revision 1.80
> diff -u -3 -r1.79 -r1.80
> --- ewl_iconbox.c     21 Nov 2005 23:25:15 -0000      1.79
> +++ ewl_iconbox.c     22 Nov 2005 05:14:57 -0000      1.80
> @@ -180,8 +180,6 @@
>  
>       /*Set the defaults to 0 for layout*/
>       ib->lx = ib->ly = ib->iw = ib->ih = 0;
> -
> -     
>       
>       ib->ewl_iconbox_pane_inner = ewl_overlay_new();
>       ewl_container_child_append(EWL_CONTAINER(ib->ewl_iconbox_scrollpane), 
> ib->ewl_iconbox_pane_inner);
> @@ -195,12 +193,10 @@
>       /*-------------------------------------------*/
>       /* Get the context menu ready */
>       ib->ewl_iconbox_context_menu = ewl_menu_new();
> -     ewl_menu_item_text_set(EWL_MENU_ITEM(ib->ewl_iconbox_context_menu), "");
> +     ewl_menu_item_text_set(EWL_MENU_ITEM(ib->ewl_iconbox_context_menu), " 
> ");
>       ewl_container_child_append(EWL_CONTAINER(ib->ewl_iconbox_menu_floater), 
> ib->ewl_iconbox_context_menu);
>       ewl_widget_show(ib->ewl_iconbox_context_menu);
>  
> -     
> -
>       /* Add auto-arrange ability */
>       ib->ewl_iconbox_view_menu = ewl_menu_new();
>       ewl_menu_item_text_set(EWL_MENU_ITEM(ib->ewl_iconbox_view_menu),
> @@ -236,7 +232,7 @@
>                              ib->ewl_iconbox_pane_inner);
>       
>       ib->icon_menu = ewl_menu_new();
> -     ewl_menu_item_text_set(EWL_MENU_ITEM(ib->icon_menu), "");
> +     ewl_menu_item_text_set(EWL_MENU_ITEM(ib->icon_menu), " ");
>       ewl_container_child_append(EWL_CONTAINER(ib->icon_menu_floater), 
> ib->icon_menu);
>       ewl_widget_show(ib->icon_menu);
>  
> @@ -250,7 +246,6 @@
>               
>       ewl_container_child_append(EWL_CONTAINER(ib->ewl_iconbox_pane_inner), 
> ib->icon_menu_floater);
>  
> -
>       
>       
>       /*-----------------------------------*/
> @@ -287,7 +282,6 @@
>       ewl_widget_show(ib->select);
>       /*ewl_widget_show(ib->select_floater);*/
>  
> -     
>  
>       /*Init the icon list*/
>       ib->ewl_iconbox_icon_list = ecore_list_new();
> @@ -295,6 +289,10 @@
>       /* Show widgets */
>       ewl_widget_show(ib->ewl_iconbox_pane_inner);
>       ewl_widget_show(ib->ewl_iconbox_scrollpane);
> +     ewl_widget_show(ib->ewl_iconbox_menu_floater);
> +     ewl_widget_show(ib->icon_menu_floater);
> +     
> +
>  
>       /* Ewl Entry for the purposes of label editing - if enabled */
>       ib->entry = ewl_entry_new();
> @@ -332,7 +330,7 @@
>       ewl_callback_append(ib->ewl_iconbox_pane_inner, EWL_CALLBACK_MOUSE_UP, 
> ewl_iconbox_mouse_up, 
> ib);
>       ewl_callback_append(ib->ewl_iconbox_pane_inner, 
> EWL_CALLBACK_DND_POSITION, ewl_iconbox_dnd_position_cb, 
> ib);
>       ewl_callback_append(EWL_WIDGET(ib), EWL_CALLBACK_CONFIGURE, 
> ewl_iconbox_configure_cb, 
> NULL);
> -     ewl_callback_prepend(EWL_WIDGET(ib), EWL_CALLBACK_DESTROY, 
> ewl_iconbox_destroy_cb, 
> NULL);
> +     ewl_callback_append(EWL_WIDGET(ib), EWL_CALLBACK_DESTROY, 
> ewl_iconbox_destroy_cb, 
> NULL);
>  
>  
>       /*printf("Setup the iconbox...\n");*/
> @@ -1047,8 +1045,11 @@
>       if (ev->button == 3 /* Confirm that this is not an icon event */ && 
> (ib->xdown 
> != ev->x && ib->ydown != ev->y)) {
>               /*printf ("Context menu: %d,%d\n", ev->x, ev->y);*/
>  
> -             ewl_callback_call(EWL_WIDGET(ib->ewl_iconbox_context_menu), 
> EWL_CALLBACK_SELECT);
>               
> ewl_floater_position_set(EWL_FLOATER(ib->ewl_iconbox_menu_floater), ev->x-ibx 
> + abs(px-ibx), ev->y-iby +abs(py-iby));
> +             //ewl_widget_show(ib->ewl_iconbox_view_menu);
> +             //ewl_widget_show(ib->ewl_iconbox_context_menu);
> +             
> //ewl_menu_popup_move_cb(EWL_MENU(ib->ewl_iconbox_context_menu)->base.popup, 
> NULL, ib->ewl_iconbox_context_menu);
> +             ewl_callback_call(EWL_WIDGET(ib->ewl_iconbox_context_menu), 
> EWL_CALLBACK_SELECT);
>       } else if (ev->button == 1 /* Confirm that this is not an icon event */ 
> && (ib->xdown 
> != ev->x && ib->ydown != ev->y)) {
>               ewl_object_custom_size_set(EWL_OBJECT(ib->select), 1, 1);
>               
> 
> 
> 
> 
> -------------------------------------------------------
> This SF.Net email is sponsored by the JBoss Inc.  Get Certified Today
> Register for a JBoss Training Course.  Free Certification Exam
> for All Training Attendees Through End of 2005. For more info visit:
> http://ads.osdn.com/?ad_id=7628&alloc_id=16845&op=click
> _______________________________________________
> enlightenment-cvs mailing list
> enlightenment-cvs@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
> 






-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc.  Get Certified Today
Register for a JBoss Training Course.  Free Certification Exam
for All Training Attendees Through End of 2005. For more info visit:
http://ads.osdn.com/?ad_id=7628&alloc_id=16845&op=click
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to