changing type of calling exit_cb function to timer.
authorMinho Kim <minho07.kim@samsung.com>
Wed, 23 Jan 2013 12:02:07 +0000 (21:02 +0900)
committerMinho Kim <minho07.kim@samsung.com>
Wed, 23 Jan 2013 12:28:21 +0000 (21:28 +0900)
Change-Id: I2c6d02db63c0edbc290a0df0604f1406639e1e15

src/_logic.c
src/taskmanager.c
src/taskmanager.h

index d071c2f..997afb7 100755 (executable)
@@ -158,7 +158,7 @@ _D("%s\n", __func__);
 
        if(ev == NULL) {
                _E("Invalid argument: event is NULL\n");
-               _exit_cb(ad);
+               ad->exit_timer = ecore_timer_add(0.3, _exit_cb, ad);
                return ECORE_CALLBACK_CANCEL;
        }
 
@@ -172,7 +172,7 @@ _D("%s\n", __func__);
        }
 
        if (ev->message_type == a_deact) {
-               _exit_cb(ad);
+               ad->exit_timer = ecore_timer_add(0.3, _exit_cb, ad);
                return ECORE_CALLBACK_CANCEL;
        } else {
                _D("messagre is act\n");
index 7123fe2..2dfe23f 100755 (executable)
@@ -88,7 +88,7 @@ int _get_vconf_idlelock(void)
        return lock == VCONFKEY_IDLE_LOCK ? IDLELOCK_ON : IDLELOCK_OFF;
 }
 
-void _exit_cb(void *data)
+Eina_Bool _exit_cb(void *data)
 {
        int lock = IDLELOCK_ON;
        lock = _get_vconf_idlelock();
@@ -100,7 +100,9 @@ void _exit_cb(void *data)
        }
        else{
                _D("IDLELOCK is set, taskmnager doesn't exit\n");
+               return ECORE_CALLBACK_CANCEL;
        }
+       return ECORE_CALLBACK_CANCEL;
 }
 
 void _key_grab(struct appdata *ad)
index fa3c843..1ca2cbd 100755 (executable)
@@ -126,7 +126,7 @@ Evas_Object *load_edj(Evas_Object *parent, const char *file, const char *group);
 int _unset_notification_level(Evas_Object *win);
 int _set_notification_level(Evas_Object *win, Utilx_Notification_Level level);
 void _key_grab(struct appdata *ad);
-void _exit_cb(void *data);
+Eina_Bool _exit_cb(void *data);
 
 #endif
 /* __TASKMANAGER_H___ */