enforce wl xdg popup stacking relative to parent stacking
This commit is contained in:
parent
0656da9d2f
commit
bf6ba1b003
|
@ -555,6 +555,12 @@ _e_comp_wl_evas_cb_restack(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EIN
|
||||||
Eina_List *l, *ll;
|
Eina_List *l, *ll;
|
||||||
|
|
||||||
if (e_object_is_del(E_OBJECT(ec))) return;
|
if (e_object_is_del(E_OBJECT(ec))) return;
|
||||||
|
if (e_client_has_xwindow(ec)) return;
|
||||||
|
EINA_LIST_FOREACH(ec->transients, l, sec)
|
||||||
|
{
|
||||||
|
evas_object_layer_set(sec->frame, evas_object_layer_get(ec->frame));
|
||||||
|
evas_object_stack_above(sec->frame, ec->frame);
|
||||||
|
}
|
||||||
if (!ec->comp_data->sub.list) return;
|
if (!ec->comp_data->sub.list) return;
|
||||||
EINA_LIST_FOREACH(ec->comp_data->sub.list, l, sec)
|
EINA_LIST_FOREACH(ec->comp_data->sub.list, l, sec)
|
||||||
evas_object_layer_set(sec->frame, evas_object_layer_get(ec->frame));
|
evas_object_layer_set(sec->frame, evas_object_layer_get(ec->frame));
|
||||||
|
|
|
@ -63,6 +63,8 @@ _e_shell_surface_parent_set(E_Client *ec, struct wl_resource *parent_resource)
|
||||||
{
|
{
|
||||||
pc->transients = eina_list_append(pc->transients, ec);
|
pc->transients = eina_list_append(pc->transients, ec);
|
||||||
ec->parent = pc;
|
ec->parent = pc;
|
||||||
|
evas_object_layer_set(ec->frame, evas_object_layer_get(pc->frame));
|
||||||
|
evas_object_stack_above(ec->frame, pc->frame);
|
||||||
}
|
}
|
||||||
|
|
||||||
ec->icccm.fetch.transient_for = EINA_TRUE;
|
ec->icccm.fetch.transient_for = EINA_TRUE;
|
||||||
|
|
Loading…
Reference in New Issue