static void win_back_key_cb(void *data, Evas_Object *obj, void *event_info) { interface *intf = data; /* Hide the sidebar first */ Evas_Object *sidebar = sidebar_get_widget(intf->sidebar); if (!elm_object_disabled_get(sidebar) && !elm_panel_hidden_get(sidebar)) { elm_panel_hidden_set(sidebar, EINA_TRUE); } /* Hide the audio_player then */ else if (audio_player_handle_back_key(intf->p_mini_player) == true) { //FIXME return; } /* Finally pop out the stack */ else { /* Get the top of the NaviFrame Stack */ Elm_Object_Item *it = elm_naviframe_top_item_get(intf->nf_content); interface_view *view = (interface_view *)elm_object_item_data_get(it); if (view) { if (view->pf_event != NULL && view->pf_event(view->p_view_sys, INTERFACE_VIEW_EVENT_BACK) == true) { /* View has accepted the event */ return; } } intf_pop_view(intf); } }
/** * @brief Implementation of AtkObject->ref_state_set callback * * ATK doc says: * Gets a reference to the state set of the accessible; the caller must * unreference it when it is no longer needed. * * @returns a reference to an AtkStateSet which is the state set of the * accessible. */ static AtkStateSet* eail_panel_ref_state_set(AtkObject *obj) { Evas_Object *widget; Eina_Bool hidden; AtkStateSet *state_set; g_return_val_if_fail(EAIL_IS_PANEL(obj), NULL); state_set = ATK_OBJECT_CLASS(eail_panel_parent_class)->ref_state_set(obj); widget = eail_widget_get_widget(EAIL_WIDGET(obj)); hidden = elm_panel_hidden_get(widget); if (!hidden) atk_state_set_add_state(state_set, ATK_STATE_VISIBLE); return state_set; }