Grabbing Hardware Back Button Event in Wearable Application
To have the functionality of "Back" button without getting Tizen Native Wearable application to quit state one need to use this function: eext_object_event_callback_add( . . . ).
#include <efl_extension.h>
static void win_back_cb(void *ad)
{
/* win_back callback implementation */
appdata_s *ad = data;
dlog_print(DLOG_ERROR, LOG_TAG, "Wearable Back Button Event Callback Triggered.");
/* … … … */
}
static void create_base_gui(appdata_s *ad)
{
/* Window */
ad->win = elm_win_util_standard_add(PACKAGE, PACKAGE);
elm_win_autodel_set(ad->win, EINA_TRUE);
if (elm_win_wm_rotation_supported_get(ad->win)) {
int rots[4] = { 0, 90, 180, 270 };
elm_win_wm_rotation_available_rotations_set(ad->win, (const int *)(&rots), 4);
}
evas_object_smart_callback_add(ad->win, "delete,request", win_delete_request_cb, NULL);
/*Since since 2.3.1
Adding(/registering) callback function to ad->win evas object.*/
eext_object_event_callback_add(ad->win, EEXT_CALLBACK_BACK, win_back_cb, ad);
/* Conformant Implementation Area */
/* … … … */
/* Other GUI functionality implementation area */
/* … … … */
/* Show window after base gui is set up */
evas_object_show(ad->win);
}