From 0b9cfd7c8ed01f30b4936d7b7e962fdc675500c0 Mon Sep 17 00:00:00 2001 From: kojima Date: Sat, 6 Jan 2001 17:05:50 +0000 Subject: [PATCH] applied hadess patch for gnome panel --- ChangeLog | 2 ++ README | 7 +++++++ src/gnome.c | 14 ++++++-------- src/screen.c | 2 +- util/wmsetbg.c | 4 ++-- 5 files changed, 18 insertions(+), 11 deletions(-) diff --git a/ChangeLog b/ChangeLog index bec74b34..c34325c1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,6 +1,8 @@ Changes since version 0.63.0: ............................. - fixed compile prob with SGI compiler +- decreased nice() value in wmsetbg +- applied gnome panel not-covering patch from (Bastien Nocera ) Changes since version 0.62.1: ............................. diff --git a/README b/README index c4be589a..1e896ea0 100644 --- a/README +++ b/README @@ -90,8 +90,15 @@ including platform specific packages of Window Maker. * ChangeLog: what changed from the previous version? + * BUGS: list of known bugs +*** Tutorial + +There's a tutorial maintained by Georges Tarbouriech at: + +http://www.linuxfocus.org/~georges.t/ + *** User Guide diff --git a/src/gnome.c b/src/gnome.c index 72be528b..5fad8ad9 100644 --- a/src/gnome.c +++ b/src/gnome.c @@ -61,9 +61,7 @@ #define WIN_HINTS_SKIP_TASKBAR (1<<2) /*do not show on taskbar*/ #define WIN_HINTS_GROUP_TRANSIENT (1<<3) /*Reserved - definition is unclear*/ #define WIN_HINTS_FOCUS_ON_CLICK (1<<4) /*app only accepts focus if clicked*/ -#ifdef HADESS_PATCH /* hadess patch but still has problem said him */ #define WIN_HINTS_DO_NOT_COVER (1<<5) /* attempt to not cover this window */ -#endif #define WIN_STATE_STICKY (1<<0) /*everyone knows sticky*/ @@ -316,22 +314,24 @@ wGNOMECheckClientHints(WWindow *wwin, int *layer, int *workspace) wwin->client_flags.skip_window_list = 1; } -#ifdef HADESS_PATCH /* hadess patch but still has problem said him */ + /* client reserved area, for the panel */ if (flags & (WIN_HINTS_DO_NOT_COVER)) { - XWindowAttributes wattribs; WReservedArea *area; area = malloc(sizeof(WReservedArea)); if (!area) { wwarning(_("out of memory while updating GNOME hints")); } else { + XWindowAttributes wattribs; + XGetWindowAttributes(dpy, wwin->client_win, &wattribs); - wClientGetNormalHints(wwin, &wattribs, False, &area->area.x1, &area->area.y1, &area->area.x2, &area->area.y2); + wClientGetNormalHints(wwin, &wattribs, False, + &area->area.x1, &area->area.y1, + &area->area.x2, &area->area.y2); area->area.x2 = area->area.x2 + area->area.x1; area->area.y2 = area->area.y2 + area->area.y1; area->window = wwin->client_win; - printf("area x:%d y:%d w:%d h:%d\n %s.%s\n", area->area.x1, area->area.y1, area->area.x2, area->area.y2, wwin->wm_class, wwin->wm_instance); } area->next = wwin->screen_ptr->reservedAreas; wwin->screen_ptr->reservedAreas = area; @@ -339,8 +339,6 @@ wGNOMECheckClientHints(WWindow *wwin, int *layer, int *workspace) wScreenUpdateUsableArea(wwin->screen_ptr); } -#endif - hasHints = True; } diff --git a/src/screen.c b/src/screen.c index 626ac402..465abcf0 100644 --- a/src/screen.c +++ b/src/screen.c @@ -939,7 +939,7 @@ wScreenUpdateUsableArea(WScreen *scr) lw = area->area.x1; rw = scr->scr_width - area->area.x2; - if (WMIN(th, bh) < WMIN(lw, rw)) { + if (WMIN(th, bh) <= WMIN(lw, rw)) { /* horizontal */ if (th < bh) { /* on top */ diff --git a/util/wmsetbg.c b/util/wmsetbg.c index 2da8c334..8cd202f1 100644 --- a/util/wmsetbg.c +++ b/util/wmsetbg.c @@ -51,7 +51,7 @@ #include -#define PROG_VERSION "wmsetbg (Window Maker) 2.6" +#define PROG_VERSION "wmsetbg (Window Maker) 2.7" #define WORKSPACE_COUNT (MAX_WORKSPACES+1) @@ -1444,7 +1444,7 @@ main(int argc, char **argv) if (helperMode) { /* lower priority, so that it wont use all the CPU */ - nice(1000); + nice(15); helperLoop(rc); } else {