return navi;
}
+
+#if SUPPORT_APP_ROATION
+static void _rot_changed_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ SETTING_TRACE_BEGIN;
+ SettingAppMgrUG *ad = (SettingAppMgrUG *)data;
+ if (ad == NULL || ad->win == NULL) {
+ return;
+ }
+ int change_ang = elm_win_rotation_get(ad->win);
+ SETTING_TRACE_DEBUG("....change_ang:%d", change_ang);
+ SETTING_TRACE_DEBUG("current_rotation:%d", ad->current_rotation);
+ /*Send the rotation event to UGs.. */
+ enum ug_event event = UG_EVENT_ROTATE_PORTRAIT;
+ switch (change_ang) {
+ case APP_DEVICE_ORIENTATION_0:
+ event = UG_EVENT_ROTATE_PORTRAIT;
+ break;
+ case APP_DEVICE_ORIENTATION_180:
+ event = UG_EVENT_ROTATE_PORTRAIT_UPSIDEDOWN;
+ break;
+ case APP_DEVICE_ORIENTATION_270:
+ event = UG_EVENT_ROTATE_LANDSCAPE;
+ break;
+ case APP_DEVICE_ORIENTATION_90:
+ event = UG_EVENT_ROTATE_LANDSCAPE_UPSIDEDOWN;
+ break;
+ default:
+ return;
+ }
+ SETTING_TRACE_DEBUG("diff:%d",
+ elm_win_rotation_get(ad->win) - ad->current_rotation);
+
+ if (change_ang != ad->current_rotation) {
+ int diff = change_ang - ad->current_rotation;
+ if (diff < 0) {
+ diff = -diff;
+ }
+ /**
+ * @todo if app didn't launch UG, is the call required to
+ * invoke?
+ */
+ ug_send_event(event);
+ if (diff == 180) {
+ /* do nothing */
+ }
+ ad->current_rotation = change_ang;
+ }
+}
+#endif
+
+
+
static int appmgrUg_get_tabtype(char *keyword)
{
retv_if(NULL == keyword, APPMGRUG_TAB_DOWNLOAD);
return NULL;
}
+
+ ad->current_rotation = elm_win_rotation_get(ad->win);
+ SETTING_TRACE_DEBUG("ad->current_rotation:%d", ad->current_rotation);
+ if (elm_win_wm_rotation_supported_get(ad->win)) {
+ int rots[4] = { 0, 90, 180, 270 }; /* rotation value that app
+ may want */
+ elm_win_wm_rotation_available_rotations_set(ad->win, rots, 4);
+ }
+ evas_object_smart_callback_add(ad->win, "wm,rotation,changed",
+ _rot_changed_cb, ad);
+
+
appmgrUg_main_init(ad);
appmgrUg_pkginfo_init(ad);
appmgrUg_appinfo_init(ad);
static void appmgrUg_on_event(ui_gadget_h ug, enum ug_event event,
app_control_h service, void *priv)
{
- retm_if(NULL == ug || NULL == priv, "ug=%p, priv=%p is Invalid", ug,
- priv);
+ SettingAppMgrUG *ad = priv;
+
+ SETTING_TRACE_BEGIN;
+ setting_retm_if(NULL == ad, "ad is NULL");
switch (event) {
case UG_EVENT_LOW_MEMORY:
+ break;
case UG_EVENT_LOW_BATTERY:
+ break;
case UG_EVENT_LANG_CHANGE:
+ setting_navi_items_update(ad->navi);
+ break;
case UG_EVENT_ROTATE_PORTRAIT:
case UG_EVENT_ROTATE_PORTRAIT_UPSIDEDOWN:
+ break;
case UG_EVENT_ROTATE_LANDSCAPE:
case UG_EVENT_ROTATE_LANDSCAPE_UPSIDEDOWN:
+ break;
case UG_EVENT_REGION_CHANGE:
+ break;
default:
break;
}