elm_win: unset opaque region when alpha is set

@fix
This commit is contained in:
Mike Blumenkrantz 2016-04-04 16:30:33 -04:00
parent 2760afbb0e
commit c84a4e5a5f
1 changed files with 8 additions and 2 deletions

View File

@ -1269,18 +1269,24 @@ static void
_elm_win_opaque_update(Elm_Win_Data *sd)
{
int ox, oy, ow, oh;
Eina_Bool alpha;
alpha = ecore_evas_alpha_get(sd->ee);
if (alpha)
ecore_wl2_window_opaque_region_set(sd->wl.win, 0, 0, 0, 0);
if (sd->fullscreen)
{
ecore_evas_geometry_get(sd->ee, NULL, NULL, &ow, &oh);
ecore_wl2_window_opaque_region_set(sd->wl.win, 0, 0, ow, oh);
if (!alpha)
ecore_wl2_window_opaque_region_set(sd->wl.win, 0, 0, ow, oh);
ecore_wl2_window_geometry_set(sd->wl.win, 0, 0, ow, oh);
return;
}
edje_object_part_geometry_get(sd->frame_obj, "elm.spacer.opaque",
&ox, &oy, &ow, &oh);
ecore_wl2_window_opaque_region_set(sd->wl.win, ox, oy, ow, oh);
if (!alpha)
ecore_wl2_window_opaque_region_set(sd->wl.win, ox, oy, ow, oh);
ecore_wl2_window_geometry_set(sd->wl.win, ox, oy, ow, oh);
}
#endif