forked from enlightenment/enlightenment
Traps for landscape mode when moving top_shelf or bottom_panel (so we don't
move the panel(s) if it's in a custom location). SVN revision: 44550
This commit is contained in:
parent
7c1f80aefe
commit
b1734750c9
|
@ -268,19 +268,42 @@ _zone_layout(E_Zone *z)
|
||||||
/* trap 'special' windows as they need special treatment */
|
/* trap 'special' windows as they need special treatment */
|
||||||
if (illume_border_is_top_shelf(bd))
|
if (illume_border_is_top_shelf(bd))
|
||||||
{
|
{
|
||||||
|
/* make sure we are not dragging the shelf */
|
||||||
if (!ecore_x_e_illume_drag_get(bd->client.win))
|
if (!ecore_x_e_illume_drag_get(bd->client.win))
|
||||||
{
|
{
|
||||||
|
/* if we are not in dual mode, then set shelf to top */
|
||||||
|
if (!il_cfg->policy.mode.dual)
|
||||||
_border_resize_fx(bd, z->x, z->y, z->w, shelfsize);
|
_border_resize_fx(bd, z->x, z->y, z->w, shelfsize);
|
||||||
|
else
|
||||||
|
{
|
||||||
|
/* make sure we are in landscape mode */
|
||||||
|
if (il_cfg->policy.mode.side == 0)
|
||||||
|
_border_resize_fx(bd, z->x, bd->y, z->w, shelfsize);
|
||||||
|
else
|
||||||
|
_border_resize_fx(bd, z->x, z->y, z->w, shelfsize);
|
||||||
|
}
|
||||||
e_border_stick(bd);
|
e_border_stick(bd);
|
||||||
if (bd->layer != 100) e_border_layer_set(bd, 100);
|
if (bd->layer != 100) e_border_layer_set(bd, 100);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (illume_border_is_bottom_panel(bd))
|
else if (illume_border_is_bottom_panel(bd))
|
||||||
{
|
{
|
||||||
|
/* make sure we are not dragging the shelf */
|
||||||
if (!ecore_x_e_illume_drag_get(bd->client.win))
|
if (!ecore_x_e_illume_drag_get(bd->client.win))
|
||||||
{
|
{
|
||||||
|
/* if we are not in dual mode, then set shelf to top */
|
||||||
|
if (!il_cfg->policy.mode.dual)
|
||||||
_border_resize_fx(bd, z->x, (z->y + z->h - panelsize),
|
_border_resize_fx(bd, z->x, (z->y + z->h - panelsize),
|
||||||
z->w, panelsize);
|
z->w, panelsize);
|
||||||
|
else
|
||||||
|
{
|
||||||
|
/* make sure we are in landscape mode */
|
||||||
|
if (il_cfg->policy.mode.side == 0)
|
||||||
|
_border_resize_fx(bd, z->x, bd->y, z->w, panelsize);
|
||||||
|
else
|
||||||
|
_border_resize_fx(bd, z->x, (z->y + z->h - panelsize),
|
||||||
|
z->w, panelsize);
|
||||||
|
}
|
||||||
e_border_stick(bd);
|
e_border_stick(bd);
|
||||||
if (bd->layer != 100) e_border_layer_set(bd, 100);
|
if (bd->layer != 100) e_border_layer_set(bd, 100);
|
||||||
}
|
}
|
||||||
|
@ -370,10 +393,13 @@ _zone_layout_dual_top(E_Border *bd)
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
E_Border *b;
|
E_Border *b;
|
||||||
int bh, by;
|
int bh, by, ty;
|
||||||
|
|
||||||
/* more than one valid border */
|
/* more than one valid border */
|
||||||
|
|
||||||
|
/* grab location of top shelf */
|
||||||
|
illume_border_top_shelf_pos_get(NULL, &ty);
|
||||||
|
|
||||||
/* grab the border at this location */
|
/* grab the border at this location */
|
||||||
b = illume_border_at_xy_get(kx, shelfsize);
|
b = illume_border_at_xy_get(kx, shelfsize);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue