Hi, I didn't like to make a timer because my user can remain mouse pressed for a time.. So i tried what you say about make list unfocusable, and it works, I make unfocusable while a button is with focus.. and when I need I put focus back to the list.. I fix the problem with that, thanks for all.. :)
And Daniel, it's not a problem the item is selected, i just want to change the focus.. ;) And about the background, I will fix.. Thanks again man! ;) Regards, 2012/1/13 Daniel Juyung Seo <[email protected]> > here is one more comment. > You do need to call size hint for bg to resize the window according to > the size of bg. > > evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); > > Note: do this before you call elm_win_resize_object_add(). > > Thanks. > > Daniel Juyung Seo (SeoZ) > > On Fri, Jan 13, 2012 at 2:30 PM, Daniel Juyung Seo <[email protected]> > wrote: > > Yes, as Raster replied, this is tricky and you need to use timer as a > > work around. > > But here is one more important thing. Even though the focus is moved > > to a button, list item is still highlighted. If you don't want it to > > be highlighted, you also need to call elm_list_item_selected_set(item, > > EINA_FALSE); > > Thanks. > > > > Daniel Juyung Seo (SeoZ) > > > > On Fri, Jan 13, 2012 at 9:22 AM, Carsten Haitzler <[email protected]> > wrote: > >> On Thu, 12 Jan 2012 14:34:34 -0200 Guilherme Silveira <[email protected]> > said: > >> > >> set the list to be not focusable. doing this kind of thing with focus > as a > >> result of actions on 1 widget to set focus on another is ALWAYS bound > to have > >> conflicts. your alternative is to set the focus in a timer (ie wait 0.2 > sec > >> then focus other button hoping that list has finished its human > interactions by > >> then). you are at the mercy of policies that are flexible and may > change from > >> desktop to touchscreen to something else. > >> > >>> Hi All, > >>> > >>> I have a problem with lists.. > >>> In my list has a lot of items, I would like when I press Enter or > double > >>> click on item of the list, a button gain focus. > >>> To do that I connect my callback function into "activated" event.. > when I > >>> use enter everything is right, but when I use double click some > problems > >>> appears. > >>> > >>> The callback is called when I PRESS item on second time, so when I > release > >>> (mouse up in the second time) the focus is setted to list again... > >>> So I can set focus to another button, but when I release mouse the > focus > >>> back to list.. > >>> > >>> I wrote a simple example to demonstrate that.. > >>> > >>> Try select item of list e press ENTER.. Ok everything works fine.. > >>> But now, try double click into an item of list.. > >>> Better of that, in the second time, don't release the mouse button, > you can > >>> see that focus is right, and when you release, the focus come back to > the > >>> list. > >>> > >>> #include <stdio.h> > >>> #include <Elementary.h> > >>> > >>> static Evas_Object *button; > >>> > >>> static void > >>> _list_activated(void *data, Evas_Object *obj, void *event_info) > >>> { > >>> elm_object_focus_set(button, EINA_TRUE); > >>> } > >>> > >>> EAPI int > >>> elm_main(int argc, char **argv) > >>> { > >>> Evas_Object *parent; > >>> Evas_Object *bg; > >>> Evas_Object *list; > >>> > >>> parent = elm_win_add(NULL, "tip05-gui", ELM_WIN_BASIC); > >>> if (!parent) goto out; > >>> elm_win_focus_highlight_enabled_set(parent, EINA_TRUE); > >>> evas_object_show(parent); > >>> elm_policy_set(ELM_POLICY_QUIT, > ELM_POLICY_QUIT_LAST_WINDOW_CLOSED); > >>> elm_win_autodel_set(parent, EINA_TRUE); > >>> > >>> bg = elm_bg_add(parent); > >>> elm_win_resize_object_add(parent, bg); > >>> evas_object_show(bg); > >>> evas_object_resize(parent, 350, 250); > >>> > >>> button = elm_button_add(parent); > >>> evas_object_resize(button, 100, 50); > >>> evas_object_move(button, 50, 50); > >>> elm_object_text_set(button, "Button"); > >>> evas_object_show(button); > >>> > >>> list = elm_list_add(parent); > >>> evas_object_resize(list, 100, 200); > >>> evas_object_move(list, 200, 50); > >>> evas_object_show(list); > >>> > >>> elm_list_item_append(list, "name 1", NULL, NULL, NULL, NULL); > >>> elm_list_item_append(list, "name 2", NULL, NULL, NULL, NULL); > >>> elm_list_item_append(list, "name 3", NULL, NULL, NULL, NULL); > >>> elm_list_go(list); > >>> > >>> evas_object_smart_callback_add(list, "activated", _list_activated, > >>> NULL); > >>> > >>> elm_run(); > >>> elm_shutdown(); > >>> > >>> out: > >>> evas_object_del(parent); > >>> > >>> return 0; > >>> } > >>> ELM_MAIN() > >>> > >>> > >>> -- > >>> Guilherme Silveira > >>> E-mail: [email protected] > >>> > ------------------------------------------------------------------------------ > >>> RSA(R) Conference 2012 > >>> Mar 27 - Feb 2 > >>> Save $400 by Jan. 27 > >>> Register now! > >>> http://p.sf.net/sfu/rsa-sfdev2dev2 > >>> _______________________________________________ > >>> enlightenment-devel mailing list > >>> [email protected] > >>> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel > >>> > >> > >> > >> -- > >> ------------- Codito, ergo sum - "I code, therefore I am" -------------- > >> The Rasterman (Carsten Haitzler) [email protected] > >> > >> > >> > ------------------------------------------------------------------------------ > >> RSA(R) Conference 2012 > >> Mar 27 - Feb 2 > >> Save $400 by Jan. 27 > >> Register now! > >> http://p.sf.net/sfu/rsa-sfdev2dev2 > >> _______________________________________________ > >> enlightenment-devel mailing list > >> [email protected] > >> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel > > > ------------------------------------------------------------------------------ > RSA(R) Conference 2012 > Mar 27 - Feb 2 > Save $400 by Jan. 27 > Register now! > http://p.sf.net/sfu/rsa-sfdev2dev2 > _______________________________________________ > enlightenment-devel mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel > -- Eng. Guilherme Silveira E-mail: [email protected] Nextel: (48) 7811-8418 / ID: 85*227765 ------------------------------------------------------------------------------ RSA(R) Conference 2012 Mar 27 - Feb 2 Save $400 by Jan. 27 Register now! http://p.sf.net/sfu/rsa-sfdev2dev2 _______________________________________________ enlightenment-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
