ecore_evas/wayland_egl: Unset the surface on window hide.
We must unset it, so the Evas engine knows that it has to do all the setup to destroy the EGL surfaces associated with it. And in the case of an ecore_evas_show, recreate everything again.
This commit is contained in:
parent
ff5533b4e1
commit
77a4654470
|
@ -285,7 +285,7 @@ _ecore_evas_wl_rotation_set(Ecore_Evas *ee, int rotation, int resize)
|
||||||
static void
|
static void
|
||||||
_ecore_evas_wl_show(Ecore_Evas *ee)
|
_ecore_evas_wl_show(Ecore_Evas *ee)
|
||||||
{
|
{
|
||||||
/* Evas_Engine_Info_Wayland_Egl *einfo; */
|
Evas_Engine_Info_Wayland_Egl *einfo;
|
||||||
Ecore_Evas_Engine_Wl_Data *wdata;
|
Ecore_Evas_Engine_Wl_Data *wdata;
|
||||||
int fw, fh;
|
int fw, fh;
|
||||||
|
|
||||||
|
@ -300,14 +300,13 @@ _ecore_evas_wl_show(Ecore_Evas *ee)
|
||||||
{
|
{
|
||||||
ecore_wl_window_show(wdata->win);
|
ecore_wl_window_show(wdata->win);
|
||||||
ecore_wl_window_update_size(wdata->win, ee->w + fw, ee->h + fh);
|
ecore_wl_window_update_size(wdata->win, ee->w + fw, ee->h + fh);
|
||||||
// ecore_wl_window_buffer_attach(wdata->win, NULL, 0, 0);
|
|
||||||
|
|
||||||
/* einfo = (Evas_Engine_Info_Wayland_Egl *)evas_engine_info_get(ee->evas); */
|
einfo = (Evas_Engine_Info_Wayland_Egl *)evas_engine_info_get(ee->evas);
|
||||||
/* if (einfo) */
|
if (einfo)
|
||||||
/* { */
|
{
|
||||||
/* einfo->info.surface = ecore_wl_window_surface_get(wdata->win); */
|
einfo->info.surface = ecore_wl_window_surface_get(wdata->win);
|
||||||
/* evas_engine_info_set(ee->evas, (Evas_Engine_Info *)einfo); */
|
evas_engine_info_set(ee->evas, (Evas_Engine_Info *)einfo);
|
||||||
/* } */
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (wdata->frame)
|
if (wdata->frame)
|
||||||
|
|
Loading…
Reference in New Issue