From: Cedric BAIL Date: Fri, 5 Oct 2012 01:59:11 +0000 (+0000) Subject: elementary: should work with wayland when both wayland and x11 backend are build. X-Git-Tag: submit/efl/20131021.015827~1674 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=4e100f8bd55dbf6e8708e3de3e8a2950508545ec;p=platform%2Fupstream%2Felementary.git elementary: should work with wayland when both wayland and x11 backend are build. SVN revision: 77496 --- diff --git a/src/lib/elm_colorselector.c b/src/lib/elm_colorselector.c index 578dfe1..2f28062 100644 --- a/src/lib/elm_colorselector.c +++ b/src/lib/elm_colorselector.c @@ -452,6 +452,8 @@ _entry_changed_cb(void *data, } #ifdef HAVE_ELEMENTARY_X +static Eina_Bool _mouse_grab_pixels(void *data, int type __UNUSED__, void *event __UNUSED__); + static Ecore_X_Window _x11_elm_widget_xwin_get(const Evas_Object *obj) { @@ -472,10 +474,6 @@ _x11_elm_widget_xwin_get(const Evas_Object *obj) } return xwin; } -#endif - -#ifdef HAVE_ELEMENTARY_X -static Eina_Bool _mouse_grab_pixels(void *data, int type __UNUSED__, void *event __UNUSED__); static void _start_grab_pick_cb(void *data, Evas_Object *obj, void *event_info __UNUSED__) @@ -630,12 +628,15 @@ _color_picker_add(Evas_Object *obj, Elm_Colorselector_Smart_Data *sd) Ecore_X_Window xwin; xwin = _x11_elm_widget_xwin_get(obj); - sd->grab.xroot = ecore_x_window_root_get(xwin); - ecore_x_input_raw_select(sd->grab.xroot); + if (xwin) + { + sd->grab.xroot = ecore_x_window_root_get(xwin); + ecore_x_input_raw_select(sd->grab.xroot); - sd->grab.mouse_motion = ecore_event_handler_add(ECORE_X_RAW_MOTION, _mouse_grab_pixels, obj); - sd->grab.key_up = ecore_event_handler_add(ECORE_EVENT_KEY_UP, _key_up_cb, obj); - sd->grab.mouse_up = ecore_event_handler_add(ECORE_EVENT_MOUSE_BUTTON_UP, _mouse_up_cb, obj); + sd->grab.mouse_motion = ecore_event_handler_add(ECORE_X_RAW_MOTION, _mouse_grab_pixels, obj); + sd->grab.key_up = ecore_event_handler_add(ECORE_EVENT_KEY_UP, _key_up_cb, obj); + sd->grab.mouse_up = ecore_event_handler_add(ECORE_EVENT_MOUSE_BUTTON_UP, _mouse_up_cb, obj); + } #endif bx = elm_box_add(sd->picker); @@ -652,11 +653,14 @@ _color_picker_add(Evas_Object *obj, Elm_Colorselector_Smart_Data *sd) evas_object_show(ed); #ifdef HAVE_ELEMENTARY_X - sd->button = elm_button_add(sd->picker); - elm_object_text_set(sd->button, "Pick a color"); - evas_object_smart_callback_add(sd->button, "clicked", _start_grab_pick_cb, obj); - elm_box_pack_end(bx, sd->button); - evas_object_show(sd->button); + if (xwin) + { + sd->button = elm_button_add(sd->picker); + elm_object_text_set(sd->button, "Pick a color"); + evas_object_smart_callback_add(sd->button, "clicked", _start_grab_pick_cb, obj); + elm_box_pack_end(bx, sd->button); + evas_object_show(sd->button); + } #endif im = evas_object_image_add(evas_object_evas_get(sd->picker));