[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [patch] ConfigureNotify events
From: |
Kazunobu Kuriyama |
Subject: |
Re: [patch] ConfigureNotify events |
Date: |
Wed, 31 Mar 2004 05:29:17 +0900 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686; ja-JP; rv:1.4) Gecko/20030624 Netscape/7.1 |
Alexander Malmberg wrote:
<snip>
With this patch, I don't get any window drifting
<snip>
+
+ /*
+ We only update the position hints if we're on the screen.
+ Otherwise, the window manager might not have added decorations
+ (if any) to the window yet. Since we compensate for decorations
+ when we set the position, this will confuse us and we'll end
+ up compensating twice, which makes windows drift.
+ */
+ if (cWin->map_state == IsViewable)
+ {
+ cWin->siz_hints.x = h.origin.x;
+ cWin->siz_hints.y = h.origin.y;
+ }
One day, I mistakenly happend to get Gorm to run on fvwm2, and found it got
drifting with a *non-patched* -gui. It was precisely in appearance the
phenomenon happened on WindowMaker with -gui modified with your previous patch.
When I saw it, I suspected the problem was rather rooted in the way with
which a given window manager gives a window a decoration, and that -gui did
nothing wrong accordingly. For example, as long as the drifting issue is
concerned, with -gui modified with your latest patch, twm and fvwm2 get
drifting while mwm and WindowMaker not.
As WindowMaker is an official window manager for GNUstep, I don't think the
observation above keeps you from commiting the patch. Rather, I think, in
the comment of the patch, it'd better to specify which window manager needs
the compensation because every window maker seems not to necessarily need it.
Just my inessential thoughts.
Cheers,
- Kazunobu Kuriyama