reenable fallthrough surface (un)mapping for subsurfaces during commit

subsurfaces have no shell interface and rely upon the map state of parent
surfaces to determine whether they are mapped
This commit is contained in:
Mike Blumenkrantz 2016-01-20 16:58:24 -05:00
parent 8ddc98d3a7
commit 65c222698c
1 changed files with 4 additions and 2 deletions

View File

@ -1070,7 +1070,8 @@ _e_comp_wl_surface_state_commit(E_Client *ec, E_Comp_Wl_Surface_State *state)
{
if ((ec->comp_data->shell.surface) && (ec->comp_data->shell.unmap))
ec->comp_data->shell.unmap(ec->comp_data->shell.surface);
else if (ec->comp_data->cursor || e_client_has_xwindow(ec))
else if (ec->comp_data->cursor || e_client_has_xwindow(ec) ||
(ec->comp_data->sub.data && ec->comp_data->sub.data->parent->comp_data->mapped))
{
ec->visible = EINA_FALSE;
evas_object_hide(ec->frame);
@ -1084,7 +1085,8 @@ _e_comp_wl_surface_state_commit(E_Client *ec, E_Comp_Wl_Surface_State *state)
{
if ((ec->comp_data->shell.surface) && (ec->comp_data->shell.map))
ec->comp_data->shell.map(ec->comp_data->shell.surface);
else if (ec->comp_data->cursor || e_client_has_xwindow(ec))
else if (ec->comp_data->cursor || e_client_has_xwindow(ec) ||
(ec->comp_data->sub.data && ec->comp_data->sub.data->parent->comp_data->mapped))
{
ec->visible = EINA_TRUE;
ec->ignored = 0;