nanogui: Thread: Long time operation and events


[<<] [<] Page 1 of 1 [>] [>>]
Subject: Long time operation and events
From: "Jaster" ####@####.####
Date: 16 Jan 2002 06:33:05 -0000
Message-Id: <OE53PDGYY53G3bDtRGU00011a40@hotmail.com>

If X server takes relativly long time to do something, say draw a picture,
and during this time, client randomly moves mouse or clicks button, the
cursor will not move or client will not receive DOWN|UP event until (It
seems like) X server finishes its long time operation. After that, the events
cilent receives seem not like the current event -- you move mouse to the next
window while the previous one receives ENTER event.

If there is any means to cancel events generated during this long time
operation? or make it possible for X server to do long time operation
while move cursor at the same time?

Thanks advance!

*jaster*
Subject: Re: [nanogui] Long time operation and events
From: "Greg Haerr" ####@####.####
Date: 16 Jan 2002 06:55:43 -0000
Message-Id: <040901c19e59$1dc03be0$3aba46a6@xmission.com>

: If there is any means to cancel events generated during this long time
: operation? or make it possible for X server to do long time operation
: while move cursor at the same time?

Not currently.  If the image is quite large, the
drawing routine would have to be made interruptable
in order to process other hardware events during
the drawing period.  Also, the server doesn't currently
using blit routines for all image drawing, which could
greatly speed up the situation.

Regards,

Greg


Subject: Re: [nanogui] Long time operation and events
From: Jordan Crouse ####@####.####
Date: 16 Jan 2002 16:22:10 -0000
Message-Id: <E16QsmP-00065Z-00@ns.censoft.com>

It would be very helpful if we could get some profiling information on some 
of the more intensive routines, in order to get a better idea of where the 
problems lie.  I do know that we have a problem with virtually all of our 
image drawing code (basically, just a bunch of for() loops).

Unless you need to draw transparent bits (from GIF, PNG or XPMs) or have to 
stretch images on the fly, I would recommend that you draw all of your 
images to a offscreen pixmap, and then blit them from there.  Until we get a 
group of blitters in place to better handle images, this will be your best 
bet.

Jordan

On Tuesday 15 January 2002 23:35, Jaster mentioned:
> If X server takes relativly long time to do something, say draw a picture,
> and during this time, client randomly moves mouse or clicks button, the
> cursor will not move or client will not receive DOWN|UP event until (It
> seems like) X server finishes its long time operation. After that, the
> events
 cilent receives seem not like the current event -- you move mouse
> to the next window while the previous one receives ENTER event.
> 
> If there is any means to cancel events generated during this long time
> operation? or make it possible for X server to do long time operation
> while move cursor at the same time?
> 
> Thanks advance!
> 
> *jaster*
[<<] [<] Page 1 of 1 [>] [>>]


Powered by ezmlm-browse 0.20.