seoz pushed a commit to branch master. http://git.enlightenment.org/core/elementary.git/commit/?id=5a143dc1c68f07e994ed6f2f4f035f77c7f902d5
commit 5a143dc1c68f07e994ed6f2f4f035f77c7f902d5 Author: Daniel Juyung Seo <[email protected]> Date: Tue Dec 24 01:27:59 2013 +0900 test_glview_simple: Do not manipulate glview if gl is not supported. --- src/bin/test_glview_simple.c | 50 +++++++++++++++++++++++++++----------------- 1 file changed, 31 insertions(+), 19 deletions(-) diff --git a/src/bin/test_glview_simple.c b/src/bin/test_glview_simple.c index b224a57..59d24d0 100644 --- a/src/bin/test_glview_simple.c +++ b/src/bin/test_glview_simple.c @@ -226,7 +226,7 @@ _gl_del_cb(void *data, Evas *evas EINA_UNUSED, Evas_Object *obj EINA_UNUSED, voi void test_glview_simple(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED) { - Evas_Object *win, *bx, *bt, *gl; + Evas_Object *win, *bx, *bt, *gl, *lb; Ecore_Animator *ani; GL_Data *gld = NULL; @@ -242,24 +242,36 @@ test_glview_simple(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *e evas_object_show(bx); gl = elm_glview_add(win); - evas_object_size_hint_align_set(gl, EVAS_HINT_FILL, EVAS_HINT_FILL); - evas_object_size_hint_weight_set(gl, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); - elm_glview_mode_set(gl, ELM_GLVIEW_ALPHA | ELM_GLVIEW_DEPTH); - elm_glview_resize_policy_set(gl, ELM_GLVIEW_RESIZE_POLICY_RECREATE); - elm_glview_render_policy_set(gl, ELM_GLVIEW_RENDER_POLICY_ON_DEMAND); - elm_glview_init_func_set(gl, _init_gl); - elm_glview_del_func_set(gl, _del_gl); - elm_glview_resize_func_set(gl, _resize_gl); - elm_glview_render_func_set(gl, _draw_gl); - elm_box_pack_end(bx, gl); - evas_object_show(gl); - - elm_object_focus_set(gl, EINA_TRUE); - - ani = ecore_animator_add(_anim, gl); - gld->glapi = elm_glview_gl_api_get(gl); - evas_object_data_set(gl, "gld", gld); - evas_object_event_callback_add(gl, EVAS_CALLBACK_DEL, _gl_del_cb, ani); + if (gl) + { + evas_object_size_hint_align_set(gl, EVAS_HINT_FILL, EVAS_HINT_FILL); + evas_object_size_hint_weight_set(gl, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); + elm_glview_mode_set(gl, ELM_GLVIEW_ALPHA | ELM_GLVIEW_DEPTH); + elm_glview_resize_policy_set(gl, ELM_GLVIEW_RESIZE_POLICY_RECREATE); + elm_glview_render_policy_set(gl, ELM_GLVIEW_RENDER_POLICY_ON_DEMAND); + elm_glview_init_func_set(gl, _init_gl); + elm_glview_del_func_set(gl, _del_gl); + elm_glview_resize_func_set(gl, _resize_gl); + elm_glview_render_func_set(gl, _draw_gl); + elm_box_pack_end(bx, gl); + evas_object_show(gl); + + elm_object_focus_set(gl, EINA_TRUE); + + ani = ecore_animator_add(_anim, gl); + gld->glapi = elm_glview_gl_api_get(gl); + evas_object_data_set(gl, "gld", gld); + evas_object_event_callback_add(gl, EVAS_CALLBACK_DEL, _gl_del_cb, ani); + } + else + { + lb = elm_label_add(bx); + elm_object_text_set(lb, "GL backend engine is not supported."); + evas_object_size_hint_weight_set(lb, EVAS_HINT_EXPAND, 0.0); + evas_object_size_hint_align_set(lb, EVAS_HINT_FILL, EVAS_HINT_FILL); + elm_box_pack_end(bx, lb); + evas_object_show(lb); + } bt = elm_button_add(win); elm_object_text_set(bt, "Close"); --
