move to appcore_get_rotation_state in the last of app_create
[framework/appfw/ui-gadget-1.git] / client / ug-client.c
index cbbe223..5ed81e9 100755 (executable)
@@ -26,6 +26,7 @@
 #include <dlog.h>
 #include <aul.h>
 #include <appsvc.h>
+#include <runtime_info.h>
 
 #include "ug-client.h"
 
@@ -65,10 +66,16 @@ static int rotate(enum appcore_rm m, void *data)
 {
        struct appdata *ad = data;
        int r;
+       bool is_rotation_lock = false;
 
        if (ad == NULL || ad->win == NULL)
                return 0;
 
+       /* rotation lock */
+       r = runtime_info_get_value_bool(RUNTIME_INFO_KEY_ROTATION_LOCK_ENABLED, &is_rotation_lock);
+       if ( !r && is_rotation_lock)
+               m = APPCORE_RM_PORTRAIT_NORMAL;
+
        switch (m) {
        case APPCORE_RM_PORTRAIT_NORMAL:
                ug_send_event(UG_EVENT_ROTATE_PORTRAIT);
@@ -91,9 +98,6 @@ static int rotate(enum appcore_rm m, void *data)
                break;
        }
 
-       if (r >= 0)
-               elm_win_rotation_with_resize_set(ad->win, r);
-
        return 0;
 }
 
@@ -209,6 +213,7 @@ static int lang_changed(void *data)
 static int app_create(void *data)
 {
        struct appdata *ad = data;
+       enum appcore_rm rm;
        Evas_Object *win;
        Evas_Object *ly;
 
@@ -235,6 +240,9 @@ static int app_create(void *data)
        appcore_set_event_callback(APPCORE_EVENT_LOW_BATTERY, low_battery, ad);
        appcore_set_event_callback(APPCORE_EVENT_LANG_CHANGE, lang_changed, ad);
 
+       if (appcore_get_rotation_state(&rm) == 0)
+               rotate(rm, ad);
+
        return 0;
 }