Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!husc6!bbn!oberon!ll-xn!ames!sdcsvax!ucbvax!ATHENA.MIT.EDU!swick From: swick@ATHENA.MIT.EDU (Ralph R. Swick) Newsgroups: comp.windows.x Subject: Re: Configure/Expose event ordering. Message-ID: <8710221356.AA27610@LYRE.MIT.EDU> Date: Thu, 22-Oct-87 09:56:32 EDT Article-I.D.: LYRE.8710221356.AA27610 Posted: Thu Oct 22 09:56:32 1987 Date-Received: Sun, 25-Oct-87 01:47:38 EDT References: <2259@super.upenn.edu> Sender: daemon@ucbvax.BERKELEY.EDU Organization: The ARPA Internet Lines: 19 Date: 21 Oct 87 22:23:49 GMT From: super.upenn.edu!dsl.cis.upenn.edu!bradley@rutgers.edu (John Bradley) I've set the event mask to "ButtonPressMask | ExposureMask | StructureNotifyMask". In my main loop I simply check for those three events. Everything works well until I re-size the window (via uwm). When I do, I get an ExposeEvent, followed by a Configure and another Expose. This causes the program to redraw the contents of the window twice, the first time scaled wrong. The first Expose comes from the un-mapping of uwm's resize pop-up window. You could discover this by examining the bounds of the region in the event. For purposes of uwm, this should be fixed as soon as save-unders are implemented. However, for general simple-minded clients that ignore the region information in exposure events (and repaint their entire window), it may be desireable to look ahead in the event queue for more exposures (with XCheck*Event) before processing the current one. Such clients can, of course, ignore all exposure events with count>0.