fix iconify animation to deal with the new frame layouting
This commit is contained in:
parent
5fe275d004
commit
3c3fc81b6c
1 changed files with 17 additions and 11 deletions
|
@ -629,10 +629,14 @@ void frame_adjust_area(ObFrame *self, gboolean moved,
|
||||||
XUnmapWindow(ob_display, self->lgrip);
|
XUnmapWindow(ob_display, self->lgrip);
|
||||||
XUnmapWindow(ob_display, self->rgrip);
|
XUnmapWindow(ob_display, self->rgrip);
|
||||||
}
|
}
|
||||||
} else
|
} else {
|
||||||
XUnmapWindow(ob_display, self->handle);
|
XUnmapWindow(ob_display, self->lgrip);
|
||||||
|
XUnmapWindow(ob_display, self->rgrip);
|
||||||
|
|
||||||
if (self->bwidth && !self->max_horz) {
|
XUnmapWindow(ob_display, self->handle);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (self->bwidth && self->leftb) {
|
||||||
XMoveResizeWindow(ob_display, self->left,
|
XMoveResizeWindow(ob_display, self->left,
|
||||||
0,
|
0,
|
||||||
self->bwidth + ob_rr_theme->grip_width,
|
self->bwidth + ob_rr_theme->grip_width,
|
||||||
|
@ -640,6 +644,12 @@ void frame_adjust_area(ObFrame *self, gboolean moved,
|
||||||
self->client->area.height +
|
self->client->area.height +
|
||||||
self->size.top + self->size.bottom -
|
self->size.top + self->size.bottom -
|
||||||
ob_rr_theme->grip_width * 2);
|
ob_rr_theme->grip_width * 2);
|
||||||
|
|
||||||
|
XMapWindow(ob_display, self->left);
|
||||||
|
} else
|
||||||
|
XUnmapWindow(ob_display, self->left);
|
||||||
|
|
||||||
|
if (self->bwidth && self->rightb) {
|
||||||
XMoveResizeWindow(ob_display, self->right,
|
XMoveResizeWindow(ob_display, self->right,
|
||||||
self->client->area.width +
|
self->client->area.width +
|
||||||
self->cbwidth_x * 2 + self->bwidth,
|
self->cbwidth_x * 2 + self->bwidth,
|
||||||
|
@ -649,12 +659,9 @@ void frame_adjust_area(ObFrame *self, gboolean moved,
|
||||||
self->size.top + self->size.bottom -
|
self->size.top + self->size.bottom -
|
||||||
ob_rr_theme->grip_width * 2);
|
ob_rr_theme->grip_width * 2);
|
||||||
|
|
||||||
XMapWindow(ob_display, self->left);
|
|
||||||
XMapWindow(ob_display, self->right);
|
XMapWindow(ob_display, self->right);
|
||||||
} else {
|
} else
|
||||||
XUnmapWindow(ob_display, self->left);
|
|
||||||
XUnmapWindow(ob_display, self->right);
|
XUnmapWindow(ob_display, self->right);
|
||||||
}
|
|
||||||
|
|
||||||
/* move and resize the inner border window which contains the plate
|
/* move and resize the inner border window which contains the plate
|
||||||
*/
|
*/
|
||||||
|
@ -1454,8 +1461,8 @@ static gboolean frame_animate_iconify(gpointer p)
|
||||||
/* start where the frame is supposed to be */
|
/* start where the frame is supposed to be */
|
||||||
x = self->area.x;
|
x = self->area.x;
|
||||||
y = self->area.y;
|
y = self->area.y;
|
||||||
w = self->area.width - self->bwidth * 2;
|
w = self->area.width;
|
||||||
h = self->area.height - self->bwidth * 2;
|
h = self->area.height;
|
||||||
} else {
|
} else {
|
||||||
/* start at the icon */
|
/* start at the icon */
|
||||||
x = iconx;
|
x = iconx;
|
||||||
|
@ -1508,8 +1515,7 @@ void frame_end_iconify_animation(ObFrame *self)
|
||||||
|
|
||||||
XMoveResizeWindow(ob_display, self->window,
|
XMoveResizeWindow(ob_display, self->window,
|
||||||
self->area.x, self->area.y,
|
self->area.x, self->area.y,
|
||||||
self->area.width - self->bwidth * 2,
|
self->area.width, self->area.height);
|
||||||
self->area.height - self->bwidth * 2);
|
|
||||||
XFlush(ob_display);
|
XFlush(ob_display);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue