Re: [PATCH] Use TipSwitch for Touch

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

 



On Wed, Apr 14, 2010 at 01:04:54AM -0400, Rafi Rubin wrote:
> TipSwitch is a better match for touch.  Confidence and InRange work
> for more current firmwares, but with some older versions only
> TipSwitch is appropriate.
> 
> Signed-off-by: Rafi Rubin <rafi@xxxxxxxxxxxxxx>
> ---
>  drivers/hid/hid-ntrig.c |   27 +++++++++++++++++++--------
>  1 files changed, 19 insertions(+), 8 deletions(-)
> 
> diff --git a/drivers/hid/hid-ntrig.c b/drivers/hid/hid-ntrig.c
> index 58ba0d3..071f86d 100644
> --- a/drivers/hid/hid-ntrig.c
> +++ b/drivers/hid/hid-ntrig.c
> @@ -31,10 +31,12 @@ struct ntrig_data {
>  	/* Incoming raw values for a single contact */
>  	__u16 x, y, w, h;
>  	__u16 id;
> -	__u8 confidence;
> +
> +	bool tipswitch;
> +	bool confidence;
> +	bool first_contact_touch;
>  
>  	bool reading_mt;
> -	__u8 first_contact_confidence;
>  
>  	__u8 mt_footer[4];
>  	__u8 mt_foot_count;
> @@ -141,9 +143,10 @@ static int ntrig_event (struct hid_device *hid, struct hid_field *field,
>  		case 0xff000001:
>  			/* Tag indicating the start of a multitouch group */
>  			nd->reading_mt = 1;
> -			nd->first_contact_confidence = 0;
> +			nd->first_contact_touch = 0;
>  			break;
>  		case HID_DG_TIPSWITCH:
> +			nd->tipswitch = value;
>  			/* Prevent emission of touch until validated */
>  			return 1;
>  		case HID_DG_CONFIDENCE:
> @@ -171,10 +174,17 @@ static int ntrig_event (struct hid_device *hid, struct hid_field *field,
>  			 * to emit a normal (X, Y) position
>  			 */
>  			if (!nd->reading_mt) {
> -				input_report_key(input, BTN_TOOL_DOUBLETAP,
> -						 (nd->confidence != 0));
> +				/*
> +				 * TipSwitch indicates the presence of a
> +				 * finger.  Touch is the preferred event for
> +				 * downstream support.  DoubleTap is also
> +				 * emitted to support proper operation with
> +				 * the wacom X driver (for now).
> +				 */

I am not sure if we want to propagate unfortunate event selection in
wacom drievr into other drivers. Any chance you could lend Ping hand in
adding proper multitouch support to wacom X driver instead?

-- 
Dmitry
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux