Subject: Re: Investigating flashing windows

From: Dominik Vogt <[email-masked]>
Date: Sat, 21 Aug 1999 00:36:42 +0200

On Fri, Aug 20, 1999 at 01:07:42PM +0200, Dominik Vogt wrote:
> Dominik Vogt wrote:
> > >   I'm sure I've been through all this before, but never mind. I've done
> > > the same test using xev: xscope reports truckloads of 'Extended Event
> > > code's but xev confirms that these are, indeed, 'ConfigureNotify's.
> > >
> > in the meantime I found out that there are indeed excess Expose events
> > generated while investigating another related bug. I have patched the
> > CVS sources a few hours ago. I have no idea why disabling the ConfigureNotify
> > events helps. Now it seems that you were right from the start. Please
> > try the current CVS and see if it helps. If it does we may remove the
> > configure option again.
> 
>   Oh good grief - just when I'd convinced myself I knew what was
> happening! Well, at least I can say for certain that iffing out that code
> in move_resize.c /can/ cure it; I may have to retract my complaint to the
> GUI builder authors that I fired off earlier :-/
> 
>   I'll download the next snap when it appears, then, and try that.
> 
> 
>   Is there /any/ relation to the ConfigureNotify events and the Expose
> stuff you've patched? I don't recall seeing anything in the xev output
> about Expose events: only ConfigureNotify, and having a look at the most
> recent xscope output my my app, I don't think I saw any Exposes there
> either, so if I had to lay money on it, I'd still blame the GUI builder.

I have now made a fix that solves the problem that window moves
were too slow. Had nothing to do with ConfigureNotify or Expose
events though. The 'excessive amounts' of Expose events seem to
be normal with XFree. The only way to reduce them is to use
'Emulate fvwm' to have the feedback window in the top left corner
(and of course to close all other windows :-) ).

Neil, could you please fetch another snapshot and try it with
and without the move bug workaround option, please? If your
original problem goes away even without that option I will
remove it again.

Bye

Dominik ^_^

--
Dominik Vogt, [email-masked]
Reply-To: [email-masked]
--
Visit the official FVWM web page at <URL:http://www.fvwm.org/>.
To unsubscribe from the list, send "unsubscribe fvwm-workers" in the
body of a message to [email-masked].
To report problems, send mail to [email-masked]

---

From: Neil Bird <[email-masked]>
Date: Mon, 23 Aug 1999 16:40:32 +0100

> original problem goes away even without that option I will

  Yes, I still suffer flashes under this new snap.

  I am convinced, now, esp. from the xscope output, that the app. is
redrawing its whole window upon a ConfigureNotify (of which, natch, there
are loads when one drags).

  Unfortunately, I'm not convinced I'll be able to persuade the
GUI-builder's authors to do anything about it since, according the the X
ref. man., this event is used to tell the app. of a change: I'd assumed
that it was more of a hint, and that any resizes/redisplays that happened
would also generate a Expose/Resize event.

  If that's not true, then they can justofy the full window redraw as a
resize process (yes, I know they could remember the size & only do it if
it'd changed, but that's a nicety, not a bugfix).

  Unless anyone happens to know that WMs in general (not just FVWM) /do/
send both Resize/Expose and Configure ...

-- 
=====================- http://www.racaldefence.com/ -===================
 Neil Bird                   |   This is who we are     The time is near
                             |
 mailto:[email-masked] |        There are 131 days remaining
--
Visit the official FVWM web page at <URL:http://www.fvwm.org/>.
To unsubscribe from the list, send "unsubscribe fvwm-workers" in the
body of a message to [email-masked].
To report problems, send mail to [email-masked]

---

From: Dominik Vogt <[email-masked]>
Date: Mon, 23 Aug 1999 18:05:03 +0200

> would also generate a Expose/Resize event.

I think the ICCCM requires the window manager to send these
ConfigureNotify events even if the size is not changed. The folks
writing this GUI builder are really doing something wrong. It's
not technically illegal what they do, but it's not a nice way to
behave for an application. The synthetic ConfigureNotify is meant
to inform the app. of its new position which might interest some
programs (with transparent background). Thea right way to do this
is to check if the window has been resized before redrawing.

> send both Resize/Expose and Configure ...

I don't know which WMs do it at the moment, but any WMs that don't will get
a constant stream of bug reports from users of apps like rxvt with a faked
transparency effect.

Bye

Dominik ^_^

-- 
Dominik Vogt, Hewlett-Packard GmbH, Dept. BVS
Herrenberger Str.130, 71034 Boeblingen, Germany
phone: 07031/14-4596, fax: 07031/14-3883, [email-masked]
--
Visit the official FVWM web page at <URL:http://www.fvwm.org/>.
To unsubscribe from the list, send "unsubscribe fvwm-workers" in the
body of a message to [email-masked].
To report problems, send mail to [email-masked]