static media_key_event_cb _media_key_event_cb;
static void *_media_key_data;
static int _media_key_initialized;
+static Ecore_Wl2_Display *_wl2_dpy;
static Ecore_Event_Handler *media_key_up;
static Ecore_Event_Handler *media_key_down;
return 0;
ecore_wl2_init();
+ _wl2_dpy = ecore_wl2_display_connect(NULL);
+ if (!_wl2_dpy) {
+ LOGE("Failed to connect to wl2 display");
+ ecore_wl2_shutdown();
+ return -1;
+ }
+
_media_key_initialized = 1;
return 0;
static void _media_key_fini(void)
{
+ if (_wl2_dpy) {
+ ecore_wl2_display_disconnect(_wl2_dpy);
+ _wl2_dpy = NULL;
+ }
ecore_wl2_shutdown();
_media_key_initialized = 0;
}