diff options
author | Mike Blumenkrantz <zmike@osg.samsung.com> | 2015-03-05 11:33:57 -0500 |
---|---|---|
committer | Mike Blumenkrantz <zmike@osg.samsung.com> | 2015-03-05 11:33:57 -0500 |
commit | cb656ec20cfdc729a691b0201c6133188cbc9820 (patch) | |
tree | 368fdfc1ca1dc1f7293569695df1af6093e0afa7 | |
parent | ac67dc68aee0cc78e700845b06edd2a3d712cc1a (diff) | |
download | elementary-cb656ec20cfdc729a691b0201c6133188cbc9820.tar.gz |
cursor object changes are now rejected if creating the new cursor fails
previous behavior resulted in a deleted cursor
-rw-r--r-- | src/lib/els_cursor.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/lib/els_cursor.c b/src/lib/els_cursor.c index 0825d56bb..3e18fdeaa 100644 --- a/src/lib/els_cursor.c +++ b/src/lib/els_cursor.c @@ -239,17 +239,19 @@ _elm_cursor_set(Elm_Cursor *cur) if (cur->visible) return; evas_event_freeze(cur->evas); - cur->visible = EINA_TRUE; if (!cur->use_engine) { if (!cur->obj) _elm_cursor_obj_add(cur->eventarea, cur); - ecore_evas_object_cursor_set(cur->ee, cur->obj, - ELM_OBJECT_LAYER_CURSOR, cur->hot_x, - cur->hot_y); + if (cur->obj) + ecore_evas_object_cursor_set(cur->ee, cur->obj, + ELM_OBJECT_LAYER_CURSOR, cur->hot_x, + cur->hot_y); + cur->visible = !!cur->obj; } else { + cur->visible = EINA_TRUE; if (cur->obj) { evas_object_del(cur->obj); |