On 03/24/2011 02:44 PM, Chris Bagwell wrote: > Looking good. Minor comments at end. > > On Thu, Mar 24, 2011 at 12:44 PM, Chase Douglas > <chase.douglas@xxxxxxxxxxxxx> wrote: >> +Touchscreens: >> +---------- >> +ABS_{X,Y} must be reported with the location of the touch. BTN_TOUCH must be >> +used to report when a touch is active on the screen. >> +BTN_{MOUSE,LEFT,MIDDLE,RIGHT} must not be reported. BTN_TOOL_<name> events >> +should be reported where possible. > > Does the real button event restriction solve something? I know > majority of touchscreens are not sending a button today but usually > there is a button on the touchscreen frame that I'd image at least > some devices hooking it up to touchscreen interface. > > stylus+touchscreen combo devices are surely going to want to do this. Perhaps this should be more clearly for touchscreen-only devices (not tablets or a mix). The problem we end up seeing is drivers who use BTN_LEFT because they want a touch to generate a primary button press in X. I want to prevent people from doing this. I believe mixed devices are hard to detect between tablets and stylus+touchscreen right now, as evidenced by the X evdev driver not handling the former by default while wacom is often used for the latter. However, with the device properties a userspace driver should be able to tell the two apart. I'll rename this guideline: Touchscreens without stylus tools. Any issues? >> + >> +Trackpads: >> +---------- >> +Legacy trackpads that only provide relative position information must report >> +events like mice described above. >> + >> +Trackpads that provide absolute touch position must report ABS_{X,Y} for the >> +location of the touch. BTN_TOUCH should be used to report when a touch is active >> +on the trackpad. Where multi-finger support is available, BTN_TOOL_<name> should >> +be used to report the number of touches active on the trackpad. > > How about a Tablet? > > Something like: > > Tablets: > -------- > > BTN_TOOL_<name> events must be reported when a stylus or other tool is > active on tablet. ABS_{X,Y} must be reported with the location of the > tool. BTN_TOUCH should be used to report when the tool is in contact > with the tablet. BTN_{STYLUS,STLUS2} should be used to report buttons > on tool itself and BTN_{LEFT,MIDDLE,RIGHT,1,2,etc} should be used to > report buttons on tablet. Thanks for the addition! I'll add it in and add you on a SOB line if that's alright with you. > Some tablets send ABS_PRESSURE with no BTN_TOUCH (why I said should > instead of must). Probably this is not worth mentioning here? Yeah, I'd leave that off as I think we want to set the guidelines to use BTN_TOUCH. Thanks, -- Chase -- 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