handle nested compositor delete requests
the previous implementation of this using ee callbacks broke during elm integration since elm overrides all of those callbacks
This commit is contained in:
parent
451d1253fe
commit
73bc0bfc52
|
@ -1023,6 +1023,12 @@ _e_comp_resize(void *data EINA_UNUSED, Evas *e EINA_UNUSED, Evas_Object *obj, vo
|
|||
e_comp_canvas_update();
|
||||
}
|
||||
|
||||
static void
|
||||
_e_comp_delete_request()
|
||||
{
|
||||
e_sys_action_do(E_SYS_LOGOUT, NULL);
|
||||
}
|
||||
|
||||
EINTERN Eina_Bool
|
||||
e_comp_init(void)
|
||||
{
|
||||
|
@ -1178,6 +1184,9 @@ out:
|
|||
e_comp->elm = elm_win_fake_add(e_comp->ee);
|
||||
evas_object_event_callback_add(e_comp->elm, EVAS_CALLBACK_RESIZE, _e_comp_resize, NULL);
|
||||
elm_win_fullscreen_set(e_comp->elm, 1);
|
||||
elm_win_autodel_set(e_comp->elm, 1);
|
||||
if (!e_comp->screen)
|
||||
evas_object_smart_callback_add(e_comp->elm, "delete,request", _e_comp_delete_request, NULL);
|
||||
ecore_evas_focus_set(e_comp->ee, 0);
|
||||
ecore_evas_focus_set(e_comp->ee, 1);
|
||||
evas_object_show(e_comp->elm);
|
||||
|
|
|
@ -2,12 +2,6 @@
|
|||
|
||||
E_API E_Module_Api e_modapi = { E_MODULE_API_VERSION, "Wl_Wl" };
|
||||
|
||||
static void
|
||||
_cb_delete_request(Ecore_Evas *ee EINA_UNUSED)
|
||||
{
|
||||
ecore_main_loop_quit();
|
||||
}
|
||||
|
||||
static Eina_Bool
|
||||
_cb_sync_done(void *data EINA_UNUSED, int type EINA_UNUSED, void *event)
|
||||
{
|
||||
|
@ -59,7 +53,6 @@ e_modapi_init(E_Module *m)
|
|||
}
|
||||
|
||||
ecore_evas_data_set(e_comp->ee, "comp", e_comp);
|
||||
ecore_evas_callback_delete_request_set(e_comp->ee, _cb_delete_request);
|
||||
ecore_evas_title_set(e_comp->ee, "Enlightenment: WL-WL");
|
||||
ecore_evas_name_class_set(e_comp->ee, "E", "compositor");
|
||||
|
||||
|
|
|
@ -5,12 +5,6 @@ E_API E_Module_Api e_modapi = { E_MODULE_API_VERSION, "Wl_X11" };
|
|||
|
||||
static Ecore_Event_Handler *kbd_hdlr;
|
||||
|
||||
static void
|
||||
_cb_delete_request(Ecore_Evas *ee EINA_UNUSED)
|
||||
{
|
||||
ecore_main_loop_quit();
|
||||
}
|
||||
|
||||
E_API void *
|
||||
e_modapi_init(E_Module *m)
|
||||
{
|
||||
|
@ -35,7 +29,6 @@ e_modapi_init(E_Module *m)
|
|||
ERR("Could not create ecore_evas canvas");
|
||||
return NULL;
|
||||
}
|
||||
ecore_evas_callback_delete_request_set(e_comp->ee, _cb_delete_request);
|
||||
ecore_evas_title_set(e_comp->ee, "Enlightenment: WL-X11");
|
||||
ecore_evas_name_class_set(e_comp->ee, "E", "compositor");
|
||||
|
||||
|
|
Loading…
Reference in New Issue