41 |
if (!(c->size->flags & (PPosition | USPosition))) |
if (!(c->size->flags & (PPosition | USPosition))) |
42 |
{ |
{ |
43 |
getMouseXY (dpy, root, &mx, &my); |
getMouseXY (dpy, root, &mx, &my); |
44 |
c->x = mx - (c->width / 2) + margins[MARGIN_LEFT]; |
c->x = mx - (frameWidth(c) / 2); |
45 |
c->y = my - (c->height / 2) + margins[MARGIN_TOP]; |
c->y = my - (frameHeight(c) / 2); |
46 |
|
|
47 |
if (window_placement == PLACEMENT_ROOT) |
if (window_placement == PLACEMENT_ROOT) |
48 |
{ |
{ |
49 |
c->x = (max_x - min_x) / 2 - (c->width / 2) + frameLeft (c); |
c->x = (max_x - min_x) / 2 - (frameWidth(c) / 2); |
50 |
c->y = (max_y - min_y) / 2 - (c->height / 2) + frameTop (c); |
c->y = (max_y - min_y) / 2 - (frameHeight(c) / 2); |
51 |
} |
} |
52 |
} |
} |
53 |
|
|
54 |
if (c->x > max_x - c->width) |
if (c->x > max_x - frameWidth(c)) |
55 |
c->x = max_x - c->width; |
c->x = max_x - frameWidth(c); |
56 |
if (c->y > max_y - c->height) |
if (c->y > max_y - frameHeight(c)) |
57 |
c->y = max_y - c->height; |
c->y = max_y - frameHeight(c); |
58 |
if (c->x < min_x) |
if (c->x < min_x) |
59 |
c->x = min_x; |
c->x = min_x; |
60 |
if (c->y < min_y) |
if (c->y < min_y) |
1705 |
{ |
{ |
1706 |
if (!c) |
if (!c) |
1707 |
return; |
return; |
1708 |
if (!click_to_focus) |
else if (!click_to_focus && c->win_state & WIN_STATE_SHADED) |
1709 |
XWarpPointer (dpy, None, c->window, 0, 0, 0, 0, |
XWarpPointer (dpy, None, c->window, 0, 0, 0, 0, |
1710 |
(c->width / 2), (c->height / 2)); |
(frameWidth(c) / 2), (frameHeight(c)/ 2)*-1); |
1711 |
|
else if (!click_to_focus) |
1712 |
|
XWarpPointer (dpy, None, c->window, 0, 0, 0, 0, |
1713 |
|
(frameWidth(c) / 2), (frameHeight(c)/ 2)); |
1714 |
} |
} |