+static void __ctx_move_more_ctxpopup(Evas_Object *ctx, mh_appdata_t *ad)
+{
+ Evas_Coord w;
+ Evas_Coord h;
+ int pos = -1;
+ __MOBILE_AP_FUNC_ENTER__;
+
+ elm_win_screen_size_get(ad->win, NULL, NULL, &w, &h);
+ pos = elm_win_rotation_get(ad->win);
+
+ switch (pos) {
+ case 0:
+ case 180:
+ evas_object_move(ctx, w/2, h);
+ break;
+ case 90:
+ evas_object_move(ctx, h/2, w);
+ break;
+ case 270:
+ evas_object_move(ctx, h/2, w);
+ break;
+ }
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+static void __rotate_more_ctxpopup_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+ Evas_Object *ctx = ad->ctxpopup;
+
+ __ctx_move_more_ctxpopup(ctx, ad);
+ evas_object_show(ctx);
+
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+static void __dismissed_more_ctxpopup_cb(void *data, Evas_Object *obj, void *event)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+ Evas_Object *ctx = ad->ctxpopup;
+
+ if (!rotate_flag) {
+ evas_object_del(ctx);
+ ctx = NULL;
+ } else {
+ __ctx_move_more_ctxpopup(ctx, ad);
+ evas_object_show(ctx);
+ rotate_flag = EINA_FALSE;
+ }
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+static void __ctx_delete_more_ctxpopup_cb(void *data, Evas *e, Evas_Object *obj,
+ void *event_info)
+{
+ Evas_Object *navi = (Evas_Object *)data;
+ Evas_Object *ctx = obj;
+
+ if (navi == NULL) {
+ ERR("data is null\n");
+ return;
+ }
+ __MOBILE_AP_FUNC_ENTER__;
+
+ evas_object_smart_callback_del(ctx, "dismissed",
+ __dismissed_more_ctxpopup_cb);
+ evas_object_smart_callback_del(elm_object_top_widget_get(ctx),
+ "rotation,changed", __rotate_more_ctxpopup_cb);
+ evas_object_event_callback_del_full(ctx, EVAS_CALLBACK_DEL,
+ __ctx_delete_more_ctxpopup_cb, navi);
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+static void __gl_configure_wifi_tethering(void *data, Evas_Object *obj, void *event_info)
+{
+ __MOBILE_AP_FUNC_ENTER__;
+
+ if (data == NULL) {
+ ERR("The param is NULL\n");
+ return;
+ }
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+
+ evas_object_del(ad->ctxpopup);
+ ad->ctxpopup = NULL;
+
+ elm_genlist_item_selected_set((Elm_Object_Item *)event_info, EINA_FALSE);
+ mh_draw_wifi_setup_view(ad);
+
+ __MOBILE_AP_FUNC_EXIT__;
+
+ return;
+}
+
+static void __create_ctxpopup_more_button(void *data, Evas_Object *obj,
+ void *event_info)
+{
+ mh_appdata_t *ad = (mh_appdata_t *)data;
+ Evas_Object *ctxpopup = NULL;
+
+ if (ad == NULL) {
+ ERR("ad is null\n");
+ return;
+ }
+ __MOBILE_AP_FUNC_ENTER__;
+
+ ctxpopup = elm_ctxpopup_add(ad->win);
+ elm_ctxpopup_auto_hide_disabled_set(ctxpopup, EINA_TRUE);
+
+ eext_object_event_callback_add(ctxpopup, EEXT_CALLBACK_BACK,
+ eext_ctxpopup_back_cb, ad);
+ eext_object_event_callback_add(ctxpopup, EEXT_CALLBACK_MORE,
+ eext_ctxpopup_back_cb, ad);
+ elm_object_style_set(ctxpopup, "more/default");
+ evas_object_smart_callback_add(ctxpopup, "dismissed",
+ __dismissed_more_ctxpopup_cb, ad);
+ evas_object_smart_callback_add(elm_object_top_widget_get(ctxpopup), "rotation,changed",
+ __rotate_more_ctxpopup_cb, ad);
+ evas_object_event_callback_add(ctxpopup, EVAS_CALLBACK_DEL,
+ __ctx_delete_more_ctxpopup_cb, ad->naviframe);
+
+ elm_ctxpopup_direction_priority_set(ctxpopup, ELM_CTXPOPUP_DIRECTION_UP,
+ ELM_CTXPOPUP_DIRECTION_DOWN,
+ ELM_CTXPOPUP_DIRECTION_UNKNOWN,
+ ELM_CTXPOPUP_DIRECTION_UNKNOWN);
+
+ __ctx_move_more_ctxpopup(ctxpopup, ad);
+ elm_ctxpopup_item_append(ctxpopup, STR_CONFIGURE_MOBILE_HOTSPOT,
+ NULL, __gl_configure_wifi_tethering, ad);
+
+ evas_object_show(ctxpopup);
+
+ ad->ctxpopup = ctxpopup;
+
+ __MOBILE_AP_FUNC_EXIT__;
+}
+
+