parent
a951cbcc10
commit
6027cd3d4c
|
@ -51,11 +51,12 @@ e_maximize_border_dock_fit(E_Border *bd, int *x1, int *y1, int *x2, int *y2)
|
||||||
while ((bd2 = e_container_border_list_next(bl)))
|
while ((bd2 = e_container_border_list_next(bl)))
|
||||||
{
|
{
|
||||||
enum {
|
enum {
|
||||||
TOP,
|
NONE,
|
||||||
|
TOP,
|
||||||
RIGHT,
|
RIGHT,
|
||||||
BOTTOM,
|
BOTTOM,
|
||||||
LEFT
|
LEFT
|
||||||
} edge = TOP;
|
} edge = NONE;
|
||||||
|
|
||||||
if ((bd2->zone != bd->zone) || (bd2 == bd) ||
|
if ((bd2->zone != bd->zone) || (bd2 == bd) ||
|
||||||
(bd2->client.netwm.type != ECORE_X_WINDOW_TYPE_DOCK))
|
(bd2->client.netwm.type != ECORE_X_WINDOW_TYPE_DOCK))
|
||||||
|
@ -69,14 +70,14 @@ e_maximize_border_dock_fit(E_Border *bd, int *x1, int *y1, int *x2, int *y2)
|
||||||
{
|
{
|
||||||
if (bd2->y == bd2->zone->y)
|
if (bd2->y == bd2->zone->y)
|
||||||
edge = TOP;
|
edge = TOP;
|
||||||
else if ((bd2->x + bd2->h) == (bd2->zone->x + bd2->zone->h))
|
else if ((bd2->y + bd2->h) == (bd2->zone->y + bd2->zone->h))
|
||||||
edge = BOTTOM;
|
edge = BOTTOM;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if ((bd2->x + bd2->w) == (bd2->zone->x + bd2->zone->w))
|
if ((bd2->x + bd2->w) == (bd2->zone->x + bd2->zone->w))
|
||||||
edge = RIGHT;
|
edge = RIGHT;
|
||||||
else if ((bd2->y == bd2->zone->y))
|
else if (bd2->x == bd2->zone->x)
|
||||||
edge = LEFT;
|
edge = LEFT;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -84,12 +85,12 @@ e_maximize_border_dock_fit(E_Border *bd, int *x1, int *y1, int *x2, int *y2)
|
||||||
{
|
{
|
||||||
if (bd2->y == bd2->zone->y)
|
if (bd2->y == bd2->zone->y)
|
||||||
edge = TOP;
|
edge = TOP;
|
||||||
|
else if ((bd2->y + bd2->h) == (bd2->zone->y + bd2->zone->h))
|
||||||
|
edge = BOTTOM;
|
||||||
|
else if (bd2->x == bd2->zone->x)
|
||||||
|
edge = LEFT;
|
||||||
else if ((bd2->x + bd2->w) == (bd2->zone->x + bd2->zone->w))
|
else if ((bd2->x + bd2->w) == (bd2->zone->x + bd2->zone->w))
|
||||||
edge = RIGHT;
|
edge = RIGHT;
|
||||||
else if ((bd2->x + bd2->h) == (bd2->zone->x + bd2->zone->h))
|
|
||||||
edge = BOTTOM;
|
|
||||||
else if ((bd2->y == bd2->zone->y))
|
|
||||||
edge = LEFT;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (edge)
|
switch (edge)
|
||||||
|
@ -110,6 +111,9 @@ e_maximize_border_dock_fit(E_Border *bd, int *x1, int *y1, int *x2, int *y2)
|
||||||
if ((bd2->x + bd2->w) > cx1)
|
if ((bd2->x + bd2->w) > cx1)
|
||||||
cx1 = (bd2->x + bd2->w);
|
cx1 = (bd2->x + bd2->w);
|
||||||
break;
|
break;
|
||||||
|
case NONE:
|
||||||
|
printf("Crazy people. Dock isn't at the edge.\n");
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
e_container_border_list_free(bl);
|
e_container_border_list_free(bl);
|
||||||
|
|
Loading…
Reference in New Issue