1
0
mirror of https://github.com/gryf/wmaker.git synced 2025-12-19 20:38:08 +01:00

- Fixed sloppy focus bug

- Made maximizing behaves differently with keyboard/mouse for xinerama
  (Peter Zijlstra <a.p.zijlstra@chello.nl>)
- A few leftover xinerama fixes (Peter Zijlstra <a.p.zijlstra@chello.nl>)
- Extended the 'strut' to multiple heads
  (Peter Zijlstra <a.p.zijlstra@chello.nl>)
- Icon placement now takes into account the new xinerama extended 'strut'
  (Peter Zijlstra <a.p.zijlstra@chello.nl>)
- Icon arrangement that takes the new extended xinerama 'strut' into account
  (Peter Zijlstra <a.p.zijlstra@chello.nl>)
This commit is contained in:
dan
2003-06-06 04:11:00 +00:00
parent 2cf5931890
commit 27a396d7ed
21 changed files with 537 additions and 111 deletions

View File

@@ -45,10 +45,10 @@
extern WPreferences wPreferences;
#define X_ORIGIN(scr) WMAX((scr)->totalUsableArea.x1,\
#define X_ORIGIN(scr) WMAX(usableArea.x1,\
wPreferences.window_place_origin.x)
#define Y_ORIGIN(scr) WMAX((scr)->totalUsableArea.y1,\
#define Y_ORIGIN(scr) WMAX(usableArea.y1,\
wPreferences.window_place_origin.y)
@@ -124,7 +124,7 @@ iconPosition(WCoreWindow *wcore, int sx1, int sy1, int sx2, int sy2,
void
PlaceIcon(WScreen *scr, int *x_ret, int *y_ret)
PlaceIcon(WScreen *scr, int *x_ret, int *y_ret, int head)
{
int pf; /* primary axis */
int sf; /* secondary axis */
@@ -148,7 +148,8 @@ PlaceIcon(WScreen *scr, int *x_ret, int *y_ret)
/*
* Allows each head to have miniwindows
*/
WMRect rect = wGetRectForHead(scr, wGetHeadForPointerLocation(scr));
WArea area = wGetUsableAreaForHead(scr, head, NULL, False);
WMRect rect = (WMRect){ area.x1, area.y1, area.x2-area.x1, area.y2-area.y1 };
sx1 = rect.pos.x;
sy1 = rect.pos.y;
@@ -157,12 +158,14 @@ PlaceIcon(WScreen *scr, int *x_ret, int *y_ret)
sx2 = sx1 + sw;
sy2 = sy1 + sh;
#if 0
if (scr->dock) {
if (scr->dock->on_right_side)
sx2 -= isize + DOCK_EXTRA_SPACE;
else
sx1 += isize + DOCK_EXTRA_SPACE;
}
#endif
sw = isize * (sw/isize);
sh = isize * (sh/isize);
@@ -590,7 +593,7 @@ PlaceWindow(WWindow *wwin, int *x_ret, int *y_ret,
int h = WMFontHeight(scr->title_font) + (wPreferences.window_title_clearance + TITLEBAR_EXTEND_SPACE) * 2;
WArea usableArea = wGetUsableAreaForHead(scr,
wGetHeadForPointerLocation(scr),
NULL);
NULL, True);
switch (wPreferences.window_placement) {
case WPM_MANUAL: