ecore-evas-wayland: Fix wayland windows not showing up after 5954289c6c

Summary: Wayland windows should follow X11 windows fairly closely,
thus only set withdrawn property if they are override windows. If not,
internal dialogs do not show up in Enlightenment (wayland-only).

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
This commit is contained in:
Chris Michael 2014-10-29 14:55:17 -04:00
parent 40247decd3
commit ae00e44269
2 changed files with 28 additions and 8 deletions

View File

@ -331,8 +331,13 @@ _ecore_evas_wl_show(Ecore_Evas *ee)
evas_object_resize(wdata->frame, ee->w + fw, ee->h + fh);
}
ee->prop.withdrawn = EINA_FALSE;
if (ee->func.fn_state_change) ee->func.fn_state_change(ee);
if (ee->prop.override)
{
ee->prop.withdrawn = EINA_FALSE;
if (ee->func.fn_state_change) ee->func.fn_state_change(ee);
}
if (ee->visible) return;
ee->visible = 1;
if (ee->func.fn_show) ee->func.fn_show(ee);
}
@ -360,8 +365,13 @@ _ecore_evas_wl_hide(Ecore_Evas *ee)
if (wdata->win)
ecore_wl_window_hide(wdata->win);
ee->prop.withdrawn = EINA_TRUE;
if (ee->func.fn_state_change) ee->func.fn_state_change(ee);
if (ee->prop.override)
{
ee->prop.withdrawn = EINA_TRUE;
if (ee->func.fn_state_change) ee->func.fn_state_change(ee);
}
if (!ee->visible) return;
ee->visible = 0;
ee->should_be_visible = 0;
_ecore_evas_wl_common_frame_callback_clean(ee);

View File

@ -323,8 +323,13 @@ _ecore_evas_wl_show(Ecore_Evas *ee)
evas_object_resize(wdata->frame, ee->w + fw, ee->h + fh);
}
ee->prop.withdrawn = EINA_FALSE;
if (ee->func.fn_state_change) ee->func.fn_state_change(ee);
if (ee->prop.override)
{
ee->prop.withdrawn = EINA_FALSE;
if (ee->func.fn_state_change) ee->func.fn_state_change(ee);
}
if (ee->visible) return;
ee->visible = 1;
if (ee->func.fn_show) ee->func.fn_show(ee);
}
@ -352,8 +357,13 @@ _ecore_evas_wl_hide(Ecore_Evas *ee)
if (wdata->win)
ecore_wl_window_hide(wdata->win);
ee->prop.withdrawn = EINA_TRUE;
if (ee->func.fn_state_change) ee->func.fn_state_change(ee);
if (ee->prop.override)
{
ee->prop.withdrawn = EINA_TRUE;
if (ee->func.fn_state_change) ee->func.fn_state_change(ee);
}
if (!ee->visible) return;
ee->visible = 0;
ee->should_be_visible = 0;
_ecore_evas_wl_common_frame_callback_clean(ee);