gnustep-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: A question on discardEventsMatchingMask:beforeEvent:


From: Banlu Kemiyatorn
Subject: Re: A question on discardEventsMatchingMask:beforeEvent:
Date: Sat, 29 Jan 2011 23:08:41 +0700

On Sat, Jan 29, 2011 at 9:28 PM, Dr. H. Nikolaus Schaller
<address@hidden> wrote:

> I have followed this discussion a little and wonder how many mouse movement
> events really arrive per second. A mouse driver has a limited sample rate,
> the kernel may throttle events and finally the X-Server can't deliver too
> many similar events in a row through a low-bandwidth connection or
> it would fail.

With my Intuos 4 it can be ~200 events per second (so you can think of
trying to display something 200 fps, ie. the display must be optimized
very well to response to that) and it slowed down most GNUstep apps to
an unusable state if not filtering. Something like multi pointer may
even cause more events.

> So is this really a problem to deliver *all* X mouse-moved events to the
> NSApp?

More like the time were spent in the display layer to response to all events.

>
> BTW: I have removed any event merging logic from mySTEP since I
> got bad results when drawing on a touchscreen into a NSBezierPath.
> It produced unnecessary corners for fast moves...
>
> On the other side I have seen no negative impact on any other application.
>
> The only useful optimization is to check if the mouse coordinates have
> changed by 1 pixel (but I think X11 does this anyway).

Also add a note here that some tablets and some super mouses does
subpixel movement too. In XInput2 these values were represent with
double.

>
> And another thought: is there any assumption that an NSApp can draw
> about the maximum speed of events? Or must all NSApps be able
> to handle to be flooded with events? I don't know and have never seen
> such a statement.

IMHO, NSApp/backend should help filtering events but if it did that
there must be able to be override by a portable user methods. For
example, it should not force this as a requirement into all backends'
implementations.

>
> So I suspect that event-merging in the backend is based on the (false)
> assumption that Apps can safely assume a certain limit.
>
> Just my 2ct,
> Nikolaus
>
>



-- 
    .----.     Banlu Kemiyatorn
  /.../\...\   漫画家
 |.../  \...|  http://qstx.blogspot.com (Free Software Advocacy & Development)
 |../    \..|  http://feedbat.blogspot.com (Studio Work For Hire)
  \/      \/   http://groundzerostudiocomplex.blogspot.com (Studio Research)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]