static void _retry_wired_network(struct _priv *priv);
static bool _draw_wifi_passcode_popup(struct _priv *priv, char *wifi_name,
bool isReconnect);
-static void _focused1(void *data, int id);
+static void _focused_menu(void *data, int id);
static void _selected(void *data, int id);
static char *_get_connected_ap(void *data, int id);
+static void _selected_menu(void *data, int id);
+void network_wireless_set_update_callbacks(void *data);
+void network_wired_set_update_callbacks(void *data);
struct _priv * current_priv = NULL;
.progress_value = NULL,
.progress_evas = NULL,
.selected = _selected,
- .focused = _focused1,
- //.selected_menu = _selected_menu,
- .selected_menu = NULL,
-// .update_cb = settings_picture_set_contrast_update_callbacks
- .update_cb = NULL
+ .focused = _focused_menu,
+ .selected_menu = _selected_menu,
+ .update_cb = network_wireless_set_update_callbacks
},
{
.id = TYPE_WIRED,
.progress_value = NULL,
.progress_evas = NULL,
.selected = _selected,
- .focused = _focused1,
- //.selected_menu = _selected_menu,
- .selected_menu = NULL,
-// .update_cb = settings_picture_set_contrast_update_callbacks
- .update_cb = NULL
+ .focused = _focused_menu,
+ .selected_menu = _selected_menu,
+ .update_cb = network_wired_set_update_callbacks
}
};
}
// viewmgr_pop_all_views();
- if(!viewmgr_add_view(view_wireless_scanning_get_vclass(), NULL))
+ if(!viewmgr_add_view(view_wireless_scanning_get_vclass(), priv))
_ERR("Add wireless view failed.");
if (!viewmgr_show_view(VIEW_WIRELESS_SCANNING))
_ERR("Push wireless view failed.");
_wireless_selected_cb(priv->selected_wireless_item, data);
}
-static void _focused1(void *data, int id)
+void network_wired_set_update_callbacks(void *data)
+{
+ /*
+ if (data)
+ //@TODO: set needed callbacks
+ else
+ //@TODO: unset previously set callbacks
+ */
+}
+void network_wireless_set_update_callbacks(void *data)
+{
+ /*
+ if (data)
+ //@TODO: set needed callbacks
+ else
+ //@TODO: unset previously set callbacks
+ */
+}
+static void _selected_menu(void *data, int id)
+{
+}
+static void _focused_menu(void *data, int id)
{
viewmgr_update_view(VIEW_BASE, UPDATE_SUB_ITEM_SELECTED, (void *)LAYOUT_NETWORK);
}
priv->wireless_update_requested = false;
/* Failed to initialize wireless */
//viewmgr_pop_all_views();
- viewmgr_add_view(view_wireless_get_vclass(), priv->wirelessmgr);
+ viewmgr_add_view(view_wireless_get_vclass(), priv);
_DBG("Wireless is not activated");
if (!viewmgr_show_view(VIEW_WIRELESS))
_ERR("Push wireless view failed.");
priv->wireless_update_requested = false;
/* Do not update if network menu is not wireless */
- if (priv->cur_type != TYPE_WIRELESS)
+ if (priv->cur_type != TYPE_WIRELESS) {
return;
- //viewmgr_pop_all_views();
- viewmgr_add_view(view_wireless_list_get_vclass(), priv);
+ }
+
+ viewmgr_pop_view();
+ if (!viewmgr_remove_view(VIEW_WIRELESS_SCANNING)) {
+ _ERR("Remove view failed");
+ }
+
+ if (!viewmgr_add_view(view_wireless_list_get_vclass(), priv)) {
+ _ERR("Add view failed");
+ }
+
+ /* Do not update if network menu is not wireless */
_DBG("Wireless is not activated");
if (!viewmgr_show_view(VIEW_WIRELESS_LIST))
_ERR("Push wireless view failed.");
#include "common/inputmgr.h"
#include "common/utils.h"
#include "layout/network.h"
+#include "layout/layout_network.h"
//#include "data/system/settings_language.h"
#include "view/network/view_wireless.h"
#define STR_WIRELESS "Wireless"
-struct _priv {
- Evas_Object *base;
- struct datamgr *wirelessmgr;
- //Evas_Object *btn1;
- //Evas_Object *btn2;
-};
-
enum input_type {
EO_NO = 0,
EO_YES
return;
}
evas_object_del(priv->base);
- free(priv);
}*/
static Evas_Object *_create(Evas_Object *win, void *data)
return NULL;
}
- priv = calloc(1, sizeof(struct _priv));
- if (!priv) {
- _ERR("Calloc failed.");
- return NULL;
- }
- priv->wirelessmgr = data;
+ priv = data;
+
priv->base = utils_add_popup(win, STYLE_POPUP, STR_WIRELESS, NULL);
if (!priv->base) {
_ERR("Add popup failed");
- free(priv);
return NULL;
}
if (!ly) {
_ERR("Add layout failed.");
evas_object_del(priv->base);
- free(priv);
return NULL;
}
//elm_object_part_text_set(ly, PART_POPUP_TITLE, "NO network ?");
if (!_fill_popup_btns(priv, ly, LANG_TYPE_MAX, PART_POPUP_BUTTON_X,
language_option, EO_BTN_LANG_ENG)) {
evas_object_del(priv->base);
- free(priv);
return NULL;
}
*/
if (!viewmgr_set_view_data(VIEW_WIRELESS, priv)) {
_ERR("Set view data failed.");
evas_object_del(priv->base);
- free(priv);
return NULL;
}
evas_object_del(priv->base);
- free(priv);
}
static view_class _vclass = {
// return table;
}
+static void _destroy_list_type_popup(struct _priv *priv)
+{
+ evas_object_hide(priv->base);
+ evas_object_del(priv->base);
+ viewmgr_remove_view(VIEW_WIRELESS_LIST);
+ viewmgr_remove_view(VIEW_WIRELESS_SCANNING);
+ priv->base = NULL;
+
+}
+
+static void _popup_list_key_down_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
+{
+ struct _priv *priv = (struct _priv *)data;
+ Evas_Event_Key_Down *ev = (Evas_Event_Key_Down*)event_info;
+
+ if (!priv || !ev) {
+ _ERR("Invalid callback data !");
+ return;
+ }
+
+ if (!strcmp(ev->keyname, KEY_BACK)
+ || !strcmp(ev->keyname, KEY_ESC) || !strcmp(ev->keyname, KEY_ESC_WAY)
+ ) {
+ _destroy_list_type_popup(priv);
+ }
+}
+
/*void _destroy_wireless_status_popup()
{
evas_object_hide(connected_wireless_popup);
free(priv);
return NULL;
}
+ evas_object_event_callback_add(priv->base, EVAS_CALLBACK_KEY_DOWN,
+ _popup_list_key_down_cb, priv);
list = datamgr_get_data(priv->wirelessmgr);
if (!list) {
//_draw_no_contents_message(priv);
return NULL;
}
- _wireless_data_found_done(ly, list);
table = elm_table_add(priv->base);
if (!listmgr_update_grid(priv->listmgr, LIST_WIRELESS))
_ERR("Listmgr update list failed.");
- _wireless_data_found_done(ly, list);
// Elm_Object_Item *gg = elm_gengrid_last_item_get(grid);
// if (!gg) return NULL;
evas_object_del(priv->base);
- free(priv);
}
static view_class _vclass = {
#include "common/listmgr.h"
#include "common/utils.h"
#include "layout/network.h"
+#include "layout/layout_network.h"
#include "layout.h"
//#include "data/system/settings_language.h"
#include "view/network/view_wireless.h"
#define MAX_WIRELESS_LEN 64
#define MIN_WIRELESS_LEN 8
-struct _priv {
- Evas_Object *base;
- struct listmgr *listmgr;
- Evas_Object *passcode_popup;
- Evas_Object *passcode_entry;
- Evas_Object *popup_btn1;
- Evas_Object *popup_btn2;
- Elm_Object_Item *selected_wireless_item;
- Elm_Object_Item *focused_wireless_item;
- Elm_Object_Item *connecting_wireless_item;
-
- //Evas_Object *btn1;
- //Evas_Object *btn2;
-};
enum object_type {
EO_BTN_OK = 0,
-static void _wireless_data_found_done(struct _priv *priv, Eina_List *list)
+static void _wireless_scanning_data_found_done(struct _priv *priv, Eina_List *list)
{
if (!listmgr_fill_grid(priv->listmgr, LIST_WIRELESS, list, NULL, NULL)
|| !listmgr_show_grid(priv->listmgr, LIST_WIRELESS, PART_WIRELESS_LIST, NULL)) {
return NULL;
}
- priv = calloc(1, sizeof(struct _priv));
- if (!priv) {
- _ERR("Calloc failed.");
- return NULL;
- }
+ priv = data;
+
struct wifi_manager_ap_info *ap_info;
ap_info = malloc(sizeof(struct wifi_manager_ap_info));
memset(ap_info, '\0', sizeof(struct wifi_manager_ap_info));
priv->base = utils_add_popup(win, STYLE_POPUP, STR_WIRELESS, NULL);
if (!priv->base) {
_ERR("Add popup failed");
- free(priv);
return NULL;
}
if (!ly) {
_ERR("Add layout failed.");
evas_object_del(priv->base);
- free(priv);
return NULL;
}
table = elm_table_add(priv->base);
if (!table) {
_ERR("Add layout failed.");
evas_object_del(priv->base);
- free(priv);
return NULL;
}
priv->listmgr = listmgr_create(table);
if (!listmgr_update_grid(priv->listmgr, LIST_WIRELESS))
_ERR("Listmgr update list failed.");
- _wireless_data_found_done(priv, list);
+ _wireless_scanning_data_found_done(priv, list);
// Elm_Object_Item *gg = elm_gengrid_last_item_get(grid);
// if (!gg) return NULL;
if (!viewmgr_set_view_data(VIEW_WIRELESS_SCANNING, priv)) {
_ERR("Set view data failed.");
evas_object_del(priv->base);
- free(priv);
return NULL;
}
evas_object_del(priv->base);
- free(priv);
}
static view_class _vclass = {