Added naviframe support.
Change-Id: I57981441ffaeecb0fa28e18fd832879456ec5ee1
Evas_Object *moment_bar_win;
Evas_Object *moment_bar_bg;
Evas_Object *moment_bar_conformant;
- Evas_Object *moment_bar_circle_surface;
+ Eext_Circle_Surface *moment_bar_circle_surface;
Evas_Object *moment_bar_first_page_layout;
+ Evas_Object *nf;
Evas_Object *moment_bar_second_page_layout;
Evas_Object *moment_bar_main_layout;
Evas_Object *moment_bar_scroller;
void windicator_util_win_status_change(Evas_Object *win);
Evas_Object *windicator_util_bg_create(Evas_Object *parent);
Evas_Object *windicator_util_conformant_create(Evas_Object *parent);
+Evas_Object *windicator_util_layout_create(Evas_Object *parent);
+Evas_Object *windicator_util_naviframe_create(Evas_Object *parent);
windicator_error_e windicator_util_win_notification_property_set(Evas_Object *win);
void windicator_util_launch_app(void *data);
ad->moment_bar_conformant = NULL;
ad->moment_bar_circle_surface = NULL;
ad->moment_bar_first_page_layout = NULL;
+ ad->nf = NULL;
ad->moment_bar_second_page_layout = NULL;
ad->moment_bar_main_layout = NULL;
ad->moment_bar_scroller = NULL;
static bool app_create(void *data)
{
_D("app_create");
- struct appdata *ad = (struct appdata *)data;
- retv_if(ad == NULL, false);
+ struct appdata *ad = (struct appdata *)data;
+ retv_if(ad == NULL, false);
#ifdef _TIZEN_3G_ENABLE
- _D("_TIZEN_3G_ENABLE");
+ _D("_TIZEN_3G_ENABLE");
#else
- _D("_TIZEN_BT");
+ _D("_TIZEN_BT");
#endif
- elm_app_base_scale_set(1.3);
+ elm_app_base_scale_set(1.3);
create_moments_bar_win(ad);
return true;
}
elm_config_preferred_engine_set("opengl_x11");
_init_variables(ad);
- Evas_Object *win = elm_win_add(NULL, "dummy_window", ELM_WIN_BASIC);
- elm_win_screen_size_get(win, NULL, NULL, &ad->win_w, &ad->win_h);
- _D("win_w(%d) win_h(%d)", ad->win_w, ad->win_h);
-
/* initialize Moment Bar */
if(WINDICATOR_ERROR_OK != windicator_moment_bar_init(ad)) {
_E("Failed to initialize moment bar");
}
//evas_object_show(ad->moment_view_win);
//evas_object_show(ad->moment_bar_win);
-
- ecore_animator_source_set(ECORE_ANIMATOR_SOURCE_TIMER);
}
static void app_control(app_control_h app_control, void *user_data)
_I("moment bar first layout create");
/* create the first page layout */
- Evas_Object *layout = elm_layout_add(ad->moment_bar_conformant);
+ Evas_Object *layout = elm_layout_add(ad->nf);
+ Elm_Object_Item *nf_it = NULL;
retv_if(layout == NULL, NULL);
_I("main %x first %x",ad->moment_bar_main_layout,layout );
}
#endif
- evas_object_show(layout);
+ nf_it = elm_naviframe_item_push(ad->nf, NULL, NULL, NULL, layout, NULL);
+ elm_naviframe_item_title_enabled_set(nf_it, EINA_FALSE, EINA_FALSE);
+
_I("moment bar first layout create END");
return layout;
}
ad->moment_bar_win = windicator_util_win_create("__MOMENT_BAR__", EINA_TRUE, TYPE_MOMENT_BAR);
retv_if(ad->moment_bar_win == NULL, WINDICATOR_ERROR_FAIL);
+ elm_win_screen_size_get(ad->moment_bar_win, NULL, NULL, &ad->win_w, &ad->win_h);
+
ad->moment_bar_evas = evas_object_evas_get(ad->moment_bar_win);
ad->moment_bar_ee = ecore_evas_ecore_evas_get(ad->moment_bar_evas);
ad->moment_bar_conformant = windicator_util_conformant_create(ad->moment_bar_win);
retv_if(ad->moment_bar_conformant == NULL, WINDICATOR_ERROR_FAIL);
+ evas_object_resize(ad->moment_bar_win, &ad->win_w, &ad->win_h);
+
// Eext Circle Surface Creation
ad->moment_bar_circle_surface = eext_circle_surface_conformant_add(ad->moment_bar_conformant);
retv_if(ad->moment_bar_circle_surface == NULL, WINDICATOR_ERROR_FAIL);
+ ad->moment_bar_first_page_layout = windicator_util_layout_create(ad->moment_bar_win);
+ retv_if(ad->moment_bar_first_page_layout == NULL, WINDICATOR_ERROR_FAIL);
+
// Indicator
- elm_win_indicator_mode_set(ad->moment_bar_win, ELM_WIN_INDICATOR_SHOW);
+ elm_win_indicator_mode_set(ad->moment_bar_win, ELM_WIN_INDICATOR_HIDE);
+
+ //Naviframe
+ ad->nf = windicator_util_naviframe_create(ad->moment_bar_first_page_layout);
/* create moment bar's layout to main layout's scroller */
- ad->moment_bar_first_page_layout = windicator_moment_bar_first_page_layout_create(ad);
- retv_if(ad->moment_bar_first_page_layout == NULL, WINDICATOR_ERROR_FAIL);
+ windicator_moment_bar_first_page_layout_create(ad);
windicator_moment_bar_update_main_view(ad);
windi_connection_update(ad->moment_bar_rssi_icon, ad->moment_bar_connection_icon);
- elm_object_content_set(ad->moment_bar_conformant, ad->moment_bar_first_page_layout);
- elm_win_conformant_set(ad->moment_bar_win, EINA_TRUE);
-
windicator_moment_bar_show(data);
_I("initialize moment bar END");
ad->moment_view_layout = windicator_moment_view_layout_create(ad);
retv_if(ad->moment_view_layout == NULL, WINDICATOR_ERROR_FAIL);
- //evas_object_resize(ad->moment_view_win, ad->win_w, ad->moment_view_h);
evas_object_resize(ad->moment_view_win, ad->win_w, ad->moment_view_h);
ad->moment_view_evas = evas_object_evas_get(ad->moment_view_win);
ad->moment_view_ee = ecore_evas_ecore_evas_get(ad->moment_view_evas);
}
+Evas_Object *windicator_util_layout_create(Evas_Object *parent)
+{
+ Evas_Object *layout;
+
+ if (parent == NULL) return NULL;
+
+ layout = elm_layout_add(parent);
+
+ if (layout == NULL) {
+ _D("Failed elm_layout_add.\n");
+ return NULL;
+ }
+
+ elm_layout_theme_set(layout, "layout", "application", "default");
+ evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ elm_win_resize_object_add(parent, layout);
+
+ evas_object_show(layout);
+
+ return layout;
+}
+
+Evas_Object *windicator_util_naviframe_create(Evas_Object *parent)
+{
+ Evas_Object *nf = NULL;
+
+ if (parent == NULL) return NULL;
+
+ nf = elm_naviframe_add(parent);
+ elm_object_part_content_set(parent, "elm.swallow.content", nf);
+
+ evas_object_show(nf);
+
+ return nf;
+}
+
windicator_error_e windicator_util_win_notification_property_set(Evas_Object *win)
{
retv_if(win == NULL, WINDICATOR_ERROR_FAIL);
return WINDICATOR_ERROR_OK;
}
-#if 0
-static void _aux_hint_set(Evas_Object *obj)
-{
- ret_if(obj == NULL);
-
- const Eina_List *l, *ll;
- int id = -1;
- char *hint;
- Ecore_X_Window xid;
- char buffer[128]={0,};
-
- xid = elm_win_xwindow_get(obj);
- l = elm_win_aux_hints_supported_get(obj);
-
- id = elm_win_aux_hint_add(obj, "wm.comp.win.effect.enable", "1");
- if (-1 == id) _E("Failed to get effect enable id");
-
- EINA_LIST_FOREACH(l, ll, hint) {
- _D("aux hint : %s", hint);
- if (!strncmp(hint, "wm.comp.win.effect.launch.pos", strlen("wm.comp.win.effect.launch.pos"))) {
- /*source format is WIN_ID.ROTATION_ANGLE.X.Y.W.H*/
- sprintf(buffer, "%d.0.0.%d.0.0", xid, -1);
- _D("pos buffer : %s", buffer);
- id = elm_win_aux_hint_add(obj, "wm.comp.win.effect.launch.pos", buffer);
- if (id != -1) {
- //ad->launch_id = id; // save id to enable effect
- }
- } else if (!strncmp(hint, "wm.comp.win.effect.close.pos", strlen("wm.comp.win.effect.close.pos"))) {
- id = elm_win_aux_hint_add(obj, "wm.comp.win.effect.close.pos", buffer); // close effect direction.
- if (id != -1) {
- //ad->close_id = id; // save id to enable effect
- }
- }
- }
-}
-#endif
-
static void _quit_cb(void *data, Evas_Object *obj, void *ei)
{
elm_exit();
}
else
{
- //unsigned int opaque_val = 0;
- //Ecore_X_Atom opaque_atom;
- //Ecore_X_Window xwin;
- //Ecore_X_Window root_win;
Evas_Object *win = NULL;
retv_if(!name, NULL);
retv_if(!win, NULL);
elm_win_title_set(win, name);
-
- elm_win_role_set(win, "no-effect");
-
- //_aux_hint_set(win);
-
- //opaque_atom = ecore_x_atom_get("_E_ILLUME_WINDOW_REGION_OPAQUE");
- //xwin = elm_win_xwindow_get(win);
- //ecore_x_window_prop_card32_set(xwin, opaque_atom, &opaque_val, 1);
+ elm_win_autodel_set(win, EINA_TRUE);
if (elm_win_wm_rotation_supported_get(win)) {
- const int rots[1] = {0};
- elm_win_wm_rotation_available_rotations_set(win, rots, 1);
+ int rots[4] = { 0, 90, 180, 270 };
+ elm_win_wm_rotation_available_rotations_set(win, (const int*)(&rots), 4);
}
- evas_object_color_set(win, 0, 0, 0, 0);
-
- //xwin = elm_win_xwindow_get(win);
-
- //ecore_x_e_illume_quickpanel_set(xwin, 1);
-
- elm_win_quickpanel_priority_major_set(win, 300);
-
- Ecore_Evas *ee;
- ee = ecore_evas_ecore_evas_get(evas_object_evas_get(win));
- ecore_evas_name_class_set(ee,"QUICKPANEL","QUICKPANEL");
-
- evas_object_move(win, 0, -360);
- evas_object_show(win);
-
- //elm_win_title_set(win, title);
- elm_win_borderless_set(win, EINA_TRUE);
-
return win;
}
}