forked from enlightenment/enlightenment
Make ->layer always consistent with real layer. Else it might get ugly.
SVN revision: 14852
This commit is contained in:
parent
ca23bfa67a
commit
f900c0c87b
|
@ -431,9 +431,7 @@ e_border_hide(E_Border *bd, int manage)
|
||||||
E_OBJECT_CHECK(bd);
|
E_OBJECT_CHECK(bd);
|
||||||
E_OBJECT_TYPE_CHECK(bd, E_BORDER_TYPE);
|
E_OBJECT_TYPE_CHECK(bd, E_BORDER_TYPE);
|
||||||
if (!bd->visible) return;
|
if (!bd->visible) return;
|
||||||
printf("hide1\n");
|
|
||||||
if (bd->moving) return;
|
if (bd->moving) return;
|
||||||
printf("hide2\nn");
|
|
||||||
|
|
||||||
ecore_x_window_hide(bd->client.win);
|
ecore_x_window_hide(bd->client.win);
|
||||||
e_container_shape_hide(bd->shape);
|
e_container_shape_hide(bd->shape);
|
||||||
|
@ -454,7 +452,6 @@ e_border_hide(E_Border *bd, int manage)
|
||||||
ev = calloc(1, sizeof(E_Event_Border_Hide));
|
ev = calloc(1, sizeof(E_Event_Border_Hide));
|
||||||
ev->border = bd;
|
ev->border = bd;
|
||||||
e_object_ref(E_OBJECT(bd));
|
e_object_ref(E_OBJECT(bd));
|
||||||
printf("ref bd %p to %i\n", bd, e_object_ref_get(E_OBJECT(bd)));
|
|
||||||
ecore_event_add(E_EVENT_BORDER_HIDE, ev, _e_border_event_border_hide_free, NULL);
|
ecore_event_add(E_EVENT_BORDER_HIDE, ev, _e_border_event_border_hide_free, NULL);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -962,8 +959,6 @@ e_border_fullscreen(E_Border *bd)
|
||||||
if ((bd->shaded) || (bd->shading)) return;
|
if ((bd->shaded) || (bd->shading)) return;
|
||||||
if (!bd->fullscreen)
|
if (!bd->fullscreen)
|
||||||
{
|
{
|
||||||
int layer;
|
|
||||||
|
|
||||||
bd->saved.x = bd->x;
|
bd->saved.x = bd->x;
|
||||||
bd->saved.y = bd->y;
|
bd->saved.y = bd->y;
|
||||||
bd->saved.w = bd->w;
|
bd->saved.w = bd->w;
|
||||||
|
@ -971,10 +966,8 @@ e_border_fullscreen(E_Border *bd)
|
||||||
|
|
||||||
e_hints_window_fullscreen_set(bd, 1);
|
e_hints_window_fullscreen_set(bd, 1);
|
||||||
|
|
||||||
layer = bd->layer;
|
|
||||||
bd->layer = 200;
|
bd->layer = 200;
|
||||||
e_border_raise(bd);
|
e_border_raise(bd);
|
||||||
bd->layer = layer;
|
|
||||||
e_border_move_resize(bd,
|
e_border_move_resize(bd,
|
||||||
bd->zone->x - bd->client_inset.l,
|
bd->zone->x - bd->client_inset.l,
|
||||||
bd->zone->y - bd->client_inset.t,
|
bd->zone->y - bd->client_inset.t,
|
||||||
|
@ -1007,6 +1000,7 @@ e_border_unfullscreen(E_Border *bd)
|
||||||
bd->changes.size = 1;
|
bd->changes.size = 1;
|
||||||
bd->changed = 1;
|
bd->changed = 1;
|
||||||
|
|
||||||
|
bd->layer = 100;
|
||||||
e_border_raise(bd);
|
e_border_raise(bd);
|
||||||
|
|
||||||
edje_object_signal_emit(bd->bg_object, "unfullscreen", "");
|
edje_object_signal_emit(bd->bg_object, "unfullscreen", "");
|
||||||
|
@ -1393,7 +1387,6 @@ e_border_button_bindings_grab_all(void)
|
||||||
static void
|
static void
|
||||||
_e_border_free(E_Border *bd)
|
_e_border_free(E_Border *bd)
|
||||||
{
|
{
|
||||||
printf("BD FREE %p\n", bd);
|
|
||||||
if (resize == bd)
|
if (resize == bd)
|
||||||
_e_border_resize_end(bd);
|
_e_border_resize_end(bd);
|
||||||
if (move == bd)
|
if (move == bd)
|
||||||
|
@ -1454,7 +1447,6 @@ _e_border_del(E_Border *bd)
|
||||||
{
|
{
|
||||||
E_Event_Border_Remove *ev;
|
E_Event_Border_Remove *ev;
|
||||||
|
|
||||||
printf("BD DEL %p\n", bd);
|
|
||||||
ecore_x_window_reparent(bd->client.win,
|
ecore_x_window_reparent(bd->client.win,
|
||||||
bd->zone->container->manager->root,
|
bd->zone->container->manager->root,
|
||||||
bd->x + bd->client_inset.l,
|
bd->x + bd->client_inset.l,
|
||||||
|
@ -1506,26 +1498,20 @@ _e_border_cb_window_hide(void *data, int ev_type, void *ev)
|
||||||
// printf("in hide cb\n");
|
// printf("in hide cb\n");
|
||||||
bd = data;
|
bd = data;
|
||||||
e = ev;
|
e = ev;
|
||||||
printf("hide..\n");
|
|
||||||
bd = e_border_find_by_client_window(e->win);
|
bd = e_border_find_by_client_window(e->win);
|
||||||
if (!bd) return 1;
|
if (!bd) return 1;
|
||||||
printf("found %p\n");
|
|
||||||
if (bd->ignore_first_unmap > 0)
|
if (bd->ignore_first_unmap > 0)
|
||||||
{
|
{
|
||||||
printf("IGNORE UNMAP\n");
|
|
||||||
bd->ignore_first_unmap--;
|
bd->ignore_first_unmap--;
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
/* Don't delete hidden or iconified windows */
|
/* Don't delete hidden or iconified windows */
|
||||||
if ((bd->iconic) || (!bd->visible))
|
if ((bd->iconic) || (!bd->visible))
|
||||||
{
|
{
|
||||||
printf("iconic %i || !visible %i\n",
|
|
||||||
bd->iconic, bd->visible);
|
|
||||||
e_border_hide(bd, 1);
|
e_border_hide(bd, 1);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
printf("hide + del\n");
|
|
||||||
e_border_hide(bd, 0);
|
e_border_hide(bd, 0);
|
||||||
e_object_del(E_OBJECT(bd));
|
e_object_del(E_OBJECT(bd));
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue