<div dir="ltr">Hi, <br><br><div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Sep 7, 2015 at 3:51 AM, Peter Hutterer <span dir="ltr"><<a href="mailto:peter.hutterer@who-t.net" target="_blank">peter.hutterer@who-t.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class=""></span></blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div><div class="h5">[...]<br>
> +             { {0}, EV_KEY, BTN_TOUCH, 0},<br>
> +             { {0}, EV_KEY, BTN_TOOL_FINGER, 0},<br>
> +             { {0}, EV_SYN, SYN_REPORT, 0}<br>
> +     };<br>
<br>
</div></div>I'm wondering - wouldn't it be worth to add this device as a separate litest<br>
device and add the BTN_TOOL_FINGER in the down events for that device?<br>
hand-crafted devices and event sequences should be for custom devices and<br>
quirky sequences, this one appears to be pretty stock-standard and thus we<br>
expect everything else to work fine as well.<br>
<br>
plus, I suspect if you add this as a normal test device, the other tests<br>
will fail so you may not even need a  separate test.<br></blockquote><div><br></div><div>Yes I did that and ran into more problems, but not with libinput but the tests itself. Becuase the device has a high resolution some of the test fail due to a lack of accuracy.  The test framework expects the tests to send values within the range [0, 100]. Litest scales that up to the device range. So each reported device value gets scaled to 11 or 19 device pixel for horizontal or vertincal axis. So it gets slightly harder to hit the -0.5 +0.5 error bar multiplied by the calibration value in touch_calibration_translation.I fiddled with that some time, but felt the only way to compensate that might be reading the device axis and applying the same calculation that happens in litest & libinput.<br><br></div>So I decided to first ship this test & fix, and then add all the other devices I have here for testing later.  And thus the improvements to the tests, whatever those might be.<br><br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<span class=""><br>
> +     const int num_events = sizeof input_sequence / sizeof input_sequence[0];<br>
<br>
</span>ARRAY_LENGTH<br>[...] <span class=""><br>
>       litest_add_ranged("touch:state", touch_initial_state, LITEST_TOUCH, LITEST_PROTOCOL_A, &axes);<br>
><br>
>       litest_add("touch:time", touch_time_usec, LITEST_TOUCH, LITEST_TOUCHPAD);<br>
> +<br>
> +     litest_add_no_device("touch:filter EV_KEY BTN_TOOL_FINGER", touchscreen_with_btn_tool_finger_on_down);<br>
<br>
</span>the string in the test is a suite name (comes from the check framework) and<br>
serves to limit tests to a category of tests. e.g. you can run the<br>
"touch:calibration" suite to check all calibration tests.<br>
it's not to label a specific test, that's what the function name is for.<br>
Please come up with something more generic, "touch:special events" or so<br>
maybe.<br></blockquote><div><br></div><div>Ok will fix the rest<br></div><br></div>regards,<br></div><div class="gmail_extra">Andreas<br></div></div></div>