This commit is contained in:
Mike Blumenkrantz 2016-02-18 13:41:46 -05:00
parent 402ad56164
commit 33f735be17
5 changed files with 56 additions and 25 deletions

View File

@ -591,14 +591,14 @@ _bryce_gadgets_menu_close(void *data, Evas_Object *obj)
evas_object_layer_set(b->bryce, b->layer);
evas_object_hide(obj);
evas_object_del(obj);
if (!b->mouse_in)
if (b->autohide && (!b->mouse_in))
_bryce_autohide_hide(b);
}
static Eina_Bool
_bryce_gadgets_menu_key()
_bryce_gadgets_menu_key(void *d EINA_UNUSED, Ecore_Event_Key *ev)
{
return EINA_TRUE;
return strcmp(ev->key, "Escape");
}
static void
@ -617,7 +617,7 @@ _bryce_gadgets_menu(void *data, E_Menu *m EINA_UNUSED, E_Menu_Item *mi EINA_UNUS
evas_object_show(comp_object);
evas_object_layer_set(b->bryce, E_LAYER_POPUP);
evas_object_size_hint_min_get(editor, &w, &h);
evas_object_resize(comp_object, 300 * e_scale, h * e_scale);
evas_object_resize(comp_object, MAX(300 * e_scale, w), h * e_scale);
e_comp_object_util_center(comp_object);
e_comp_object_util_autoclose(comp_object, _bryce_gadgets_menu_close, _bryce_gadgets_menu_key, b);
}

View File

@ -170,6 +170,7 @@ _gadget_popup(void *data, Evas_Object *obj EINA_UNUSED, void *event_info)
{
Z_Gadget_Site *zgs = data;
if (event_info) elm_object_tree_focus_allow_set(event_info, 0);
evas_object_smart_callback_call(zgs->layout, "gadget_popup", event_info);
}
@ -226,6 +227,7 @@ _gadget_object_create(Z_Gadget_Config *zgc)
evas_object_event_callback_add(g, EVAS_CALLBACK_DEL, _gadget_del, zgc);
_gadget_reparent(zgc->site, zgc);
elm_object_tree_focus_allow_set(zgc->gadget, 0);
evas_object_raise(zgc->site->events);
evas_object_smart_callback_call(zgc->site->layout, "gadget_created", g);
@ -299,7 +301,7 @@ _site_gadget_resize(Evas_Object *g, int w, int h, Evas_Coord *ww, Evas_Coord *hh
if ((mxw >= 0) && (mxw < *ow)) *ow = mxw;
if ((mxh >= 0) && (mxh < *oh)) *oh = mxh;
}
//fprintf(stderr, "%s: %dx%d\n", zgc->type, *ow, *oh);
evas_object_resize(zgc->display, *ow, *oh);
}
@ -395,9 +397,9 @@ _site_layout_orient(Evas_Object *o, Z_Gadget_Site *zgs)
}
if (IS_HORIZ(zgs->orient))
zgs->cur_size = abs((ax * w) - xx) - x;
zgs->cur_size = abs(xx - x);
else if (IS_VERT(zgs->orient))
zgs->cur_size = abs((ay * h) - yy) - y;
zgs->cur_size = abs(yy - y);
evas_object_size_hint_min_set(o,
IS_HORIZ(zgs->orient) ? zgs->cur_size : w,
@ -863,7 +865,7 @@ _gadget_menu_remove(void *data, E_Menu *m EINA_UNUSED, E_Menu_Item *mi EINA_UNUS
{
Z_Gadget_Config *zgc = data;
evas_object_smart_callback_call(zgc->site->layout, "gadget_removed", zgc->display);
evas_object_smart_callback_call(zgc->site->layout, "gadget_removed", zgc->gadget);
zgc->site->gadgets = eina_list_remove(zgc->site->gadgets, zgc);
evas_object_smart_need_recalculate_set(zgc->site->layout, 1);
_gadget_free(zgc);

View File

@ -121,7 +121,7 @@ z_gadget_editor_add(Evas_Object *parent, Evas_Object *site)
E_EXPAND(list);
E_FILL(list);
elm_list_mode_set(list, ELM_LIST_COMPRESS);
elm_scroller_content_min_limit(list, 0, 1);
elm_scroller_content_min_limit(list, 1, 1);
tempsite = z_gadget_site_add(Z_GADGET_SITE_ORIENT_HORIZONTAL, NULL);
z_gadget_site_gravity_set(tempsite, Z_GADGET_SITE_GRAVITY_NONE);

View File

@ -851,8 +851,23 @@ _connman_field_parse_value(Connman_Field *field, const char *key, Eldbus_Message
if (!strcmp(key, "Requirement"))
{
const char *req;
const char *types[] =
{
[CONNMAN_FIELD_STATE_MANDATORY] = "mandatory",
[CONNMAN_FIELD_STATE_OPTIONAL] = "optional",
[CONNMAN_FIELD_STATE_ALTERNATE] = "alternate",
[CONNMAN_FIELD_STATE_INFO] = "informational",
};
int i;
EINA_SAFETY_ON_FALSE_RETURN_VAL(signature[0] == 's', EINA_FALSE);
eldbus_message_iter_basic_get(value, &field->requirement);
eldbus_message_iter_basic_get(value, &req);
for (i = 0; i <= CONNMAN_FIELD_STATE_INFO; i++)
if (!strcmp(req, types[i]))
{
field->requirement = i;
break;
}
return EINA_TRUE;
}
@ -1071,10 +1086,12 @@ _connman_start(void)
NULL, -1, "");
agent_iface = eldbus_service_interface_register(dbus_conn, CONNMAN_AGENT_PATH, &desc);
eldbus_proxy_call(proxy_manager, "RegisterAgent",
_connman_manager_agent_register, NULL, -1, "o", CONNMAN_AGENT_PATH);
}
static void
_connman_end(void)
_connman_end(Eina_Bool killed)
{
Eldbus_Object *obj;
int i;
@ -1092,10 +1109,14 @@ _connman_end(void)
}
E_FREE_FUNC(pending_getservices, eldbus_pending_cancel);
E_FREE_FUNC(pending_getproperties_manager, eldbus_pending_cancel);
E_FREE_LIST(signal_handlers, eldbus_signal_handler_del);
if (killed)
signal_handlers = eina_list_free(signal_handlers);
else
E_FREE_LIST(signal_handlers, eldbus_signal_handler_del);
obj = eldbus_proxy_object_get(proxy_manager);
E_FREE_FUNC(proxy_manager, eldbus_proxy_unref);
E_FREE_FUNC(agent_iface, eldbus_service_object_unregister);
}
static void
@ -1104,7 +1125,7 @@ _connman_name_owner_changed(void *data EINA_UNUSED, const char *bus EINA_UNUSED,
if (to[0])
_connman_start();
else
_connman_end();
_connman_end(1);
}
EINTERN void
@ -1125,14 +1146,13 @@ EINTERN void
connman_shutdown(void)
{
int i;
E_FREE_FUNC(agent_iface, eldbus_service_object_unregister);
for (i = 0; i < CONNMAN_SERVICE_TYPE_LAST; i++)
{
E_FREE_FUNC(connman_services_map[i], eina_hash_free);
E_FREE(connman_current_connection[i]);
connman_current_service[i] = NULL;
}
_connman_end();
_connman_end(0);
eldbus_name_owner_changed_callback_del(dbus_conn, CONNMAN_BUS_NAME, _connman_name_owner_changed, NULL);
eina_log_domain_unregister(_connman_log_dom);
_connman_log_dom = -1;

View File

@ -119,6 +119,7 @@ _wireless_popup_list_populate(Instance *inst)
Eina_Iterator *it;
Wireless_Network *wn;
if (!wifi_networks) return;
it = eina_array_iterator_new(wifi_networks);
EINA_ITERATOR_FOREACH(it, wn)
{
@ -402,6 +403,8 @@ wireless_create(Evas_Object *parent, int *id, Z_Gadget_Site_Orient orient)
e_theme_edje_object_set(g, NULL, "e/modules/wireless/wifi");
elm_object_signal_emit(g, "e,state,default", "e");
_wifi_icon_signal(g, WIRELESS_NETWORK_STATE_ONLINE, 100);
evas_object_show(g);
elm_box_pack_end(inst->box, g);
evas_object_size_hint_aspect_set(inst->box, EVAS_ASPECT_CONTROL_BOTH, 1, 1);
}
else
@ -535,8 +538,9 @@ _wireless_auth_del(void *data, Evas_Object *popup)
if (!p->sent)
p->cb(p->data, NULL);
free(p);
if (popup == wireless_auth_popup->popup)
wireless_auth_popup = NULL;
wireless_auth_popup = NULL;
evas_object_hide(popup);
evas_object_del(popup);
if (!wireless_auth_pending) return;
wireless_auth_popup = eina_list_data_get(wireless_auth_pending);
wireless_auth_pending = eina_list_remove_list(wireless_auth_pending, wireless_auth_pending);
@ -550,7 +554,7 @@ _wireless_auth_send(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
Wireless_Auth_Popup *p = data;
Eina_Array *arr = NULL;
Evas_Object *tb, *o;
unsigned int row = 0;
unsigned int row = 1;
tb = evas_object_data_get(obj, "table");
do
@ -573,7 +577,7 @@ _wireless_auth_send(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
eina_array_free(arr);
}
static void
static Evas_Object *
_wireless_auth_table_row(Evas_Object *tb, const char *name, Wireless_Auth_Popup *p, int *row)
{
Evas_Object *lbl, *entry, *ck;
@ -587,13 +591,13 @@ _wireless_auth_table_row(Evas_Object *tb, const char *name, Wireless_Auth_Popup
entry = elm_entry_add(tb);
evas_object_show(entry);
E_ALIGN(entry, 0, -1);
E_ALIGN(entry, -1, -1);
E_EXPAND(entry);
elm_entry_single_line_set(entry, 1);
evas_object_data_set(entry, "table", tb);
evas_object_smart_callback_add(entry, "activated", _wireless_auth_send, p);
elm_table_pack(tb, lbl, 1, *row, 1, 1);
if (strncmp(name, "Pass", 4)) return;
elm_table_pack(tb, entry, 1, *row, 1, 1);
if (strncmp(name, "Pass", 4)) return NULL;
elm_entry_password_set(entry, 1);
ck = elm_check_add(tb);
@ -601,13 +605,14 @@ _wireless_auth_table_row(Evas_Object *tb, const char *name, Wireless_Auth_Popup
E_ALIGN(ck, 0, -1);
snprintf(buf, sizeof(buf), "Show %s", name);
elm_object_text_set(ck, buf);
elm_table_pack(tb, lbl, 0, ++(*row), 2, 1);
elm_table_pack(tb, ck, 0, ++(*row), 2, 1);
return entry;
}
EINTERN void
wireless_authenticate(const Eina_Array *fields, Wireless_Auth_Cb cb, void *data)
{
Evas_Object *popup, *tb, *lbl;
Evas_Object *popup, *tb, *lbl, *entry = NULL;
Instance *inst;
Eina_List *l;
Eina_Iterator *it;
@ -641,7 +646,10 @@ wireless_authenticate(const Eina_Array *fields, Wireless_Auth_Cb cb, void *data)
it = eina_array_iterator_new(fields);
EINA_ITERATOR_FOREACH(it, f)
{
_wireless_auth_table_row(tb, f, p, &row);
Evas_Object *o;
o = _wireless_auth_table_row(tb, f, p, &row);
if (!entry) entry = o;
row++;
}
popup = e_comp_object_util_add(popup, E_COMP_OBJECT_TYPE_NONE);
@ -656,6 +664,7 @@ wireless_authenticate(const Eina_Array *fields, Wireless_Auth_Cb cb, void *data)
wireless_auth_popup = p;
evas_object_show(popup);
e_comp_object_util_autoclose(popup, _wireless_auth_del, _wireless_popup_key, p);
elm_object_focus_set(entry, 1);
}
}