Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!wuarchive!usc!ucsd!ucbvax!bloom-beacon!LARRY.MCRCIM.MCGILL.EDU!mouse From: mouse@LARRY.MCRCIM.MCGILL.EDU Newsgroups: comp.windows.x Subject: Re: Making X work on Interactive 386/ix Message-ID: <9012031413.AA01486@Larry.McRCIM.McGill.EDU> Date: 3 Dec 90 14:13:06 GMT Sender: daemon@athena.mit.edu (Mr Background) Organization: The Internet Lines: 35 > We have [...hardware summary...], ... but, the mouse drags are at a > lag of 3-4 seconds behind! This may not be the fault of your hardware; it may be a problem with your clients. Some clients animate mouse drags badly. When mouse motions can be generated faster than the thing being animated can be drawn, the naive code produces animation which lags the mouse, and lags the mouse more and more as the mouse is moved. (If the mouse is left still, the animation eventually catches up.) This problem will often go unnoticed, because when everything is running on nice fast machines with a nice fast network between them, the time to update the animation is tiny compared to the interval between mouse events, for any common animation (eg, window outlines). But throw in a couple of slow gateways, or a machine which draws relatively slowly for some reason, or a hardware/server combination which produces mouse events unusually quickly, and you have a recipe for bad lags when mouse dragging. This problem arises when clients stupidly update the animation on receipt of each MotionNotify event, without paying any attention to all the other MotionNotify events that are sitting in the queue. This is precisely what PointerMotionHintMask was created for; everybody doing this sort of mouse dragging should learn how to use it. (Some clients "fix" the problem by doing a stream of QueryPointer requests instead. This sort-of cures the problem when it's due to slow drawing or fine-grained mouse tracking, but actually makes netowrk-caused problems worse. It's not the right fix.) der Mouse old: mcgill-vision!mouse new: mouse@larry.mcrcim.mcgill.edu