nanogui: Touchscreen response in 0.90 seems slower than 0.89pre11


Previous by date: 31 Aug 2004 09:03:57 +0100 learning microwindows, tian tao
Next by date: 31 Aug 2004 09:03:57 +0100 Re: learning microwindows, Hinko Kocevar
Previous in thread: 31 Aug 2004 09:03:57 +0100 Re: Touchscreen response in 0.90 seems slower than 0.89pre11, Greg Haerr
Next in thread:

Subject: Re: [nanogui] Touchscreen response in 0.90 seems slower than 0.89pre11
From: Rizzo Davide ####@####.####
Date: 31 Aug 2004 09:03:57 +0100
Message-Id: <4134309F.8010902@eidosspa.it>

>: I see the event.pressure (Z?) being returned  by PD_Read() in 
>: drivers/mou_touchscreen.c,
>: but it does not get used in the GdReadMouse() of engine/devmouse.c. Am I 
>: missing something?
>
>No, that's correct, the Z value isn't being used by Microwindows,
>but the driver can ignore Z values less than some value, if wanted.
>This could affect your touch recognition...
>
>: 
>: In my application I create buttons large enough to be pressed by a human 
>: finger, not a stylus,
>: and often the key press don not get recognized. Could this be due to the 
>: large area that is
>: being pressed? If so how could I reduce this sensitivity?
>
>printf() the x,y values from the driver is sometimes a good way
>to get an idea of what the low-level is sending Microwindows.
>The problem is definitely in the kernel or Microwindows
>driver, not the upper level stuff.
>
>Reducing the sensitivity would involve changing some of the
>parameters to the jitter filter, it's a bit involved, but study
>that code.
>
>Regards,
>
>Greg
>

I had the same problem, I deeply investigated (and patched) it.
It's a (un)wanted feature: a filtering of the input device in microwindows.
I'm using the input device managed by /src/drivers/mou_touchscreen.c (MW 0.90)
If you look at the end of the source, the final parameter of the MOUSEDEVICE struct is the flag parameter, that is setted to MOUSE_TRANSFORM.
This means that the inputs from the device are filtered, (look at /src/engine/devmouse.c).
The filtering depth is fixed by the #define JITTER_SHIFT_BITS 2, this means that if the filtering is enabled you get the first valid message after 1+(1<<JITTER_SHIFT_BITS)=5 valid reads from the input device.
If the filtering of your touchscreen inputs is already done in your touchscreen driver (like I did in mine), you probably would prefer to disable the microwindows' own filtering.
To do this, simply substitute MOUSE_TRANSFORM with 0 in the source of the driver you are using, and recompile it.
Hope this will help.
Regards
eng. Davide Rizzo






Previous by date: 31 Aug 2004 09:03:57 +0100 learning microwindows, tian tao
Next by date: 31 Aug 2004 09:03:57 +0100 Re: learning microwindows, Hinko Kocevar
Previous in thread: 31 Aug 2004 09:03:57 +0100 Re: Touchscreen response in 0.90 seems slower than 0.89pre11, Greg Haerr
Next in thread:


Powered by ezmlm-browse 0.20.