Page MenuHomePhabricator

ecore_input: add ECORE_AXIS_LABEL_TOUCH_PALM enum
ClosedPublic

Authored by input.hacker on May 3 2017, 5:36 PM.

Details

Summary

Some of latest touchscreen devices can report if the tool in contact
is the palm of your hand and there is no axis label for this palm flag.
This adds ECORE_AXIS_LABEL_TOUCH_PALM enum as Ecore_Axis_Label type.

Test Plan

N/A

Diff Detail

Repository
rEFL core/efl
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.
input.hacker created this revision.May 3 2017, 5:36 PM
jpeg edited edge metadata.May 11 2017, 11:39 PM

Do you think this is good enough to handle palm detection? Considering it's a boolean, it should be clear how to test it (we should avoid == with doubles).

Correct the description about ECORE_AXIS_LABEL_TOUCH_PALM enum

@jpeg, I think this should be double and I correct the description.
Thanks.

Correct description once again. :)

input.hacker added a reviewer: jypark.

Update reviewers

jpeg added a comment.May 15 2017, 6:07 PM

I believe this is an acceptable API for palm detection.
@ManMower and @devilhorns What do you think?
Palm detection can come in two sorts, basically:

  • The hand's palm covers the entire screen, eg. on Gear S2 where this will turn off the screen (put to sleep)
  • The screen is larger than a hand and we are thus dealing with "Surface" like screens. In that case we only want to know the rough position and size of the hand. Obviously full handling of a whole hand input would require more information but this is a beginning.

Anyway this is why the value can be bool or any floating point. Also this is not a new type of input for simplicity, and not a flag in the standard mouse inputs for compatibility.

jpeg accepted this revision.May 15 2017, 6:09 PM
This revision is now accepted and ready to land.May 15 2017, 6:09 PM
devilhorns edited edge metadata.May 16 2017, 8:01 AM
In D4848#82290, @jpeg wrote:

I believe this is an acceptable API for palm detection.
@ManMower and @devilhorns What do you think?

I really don't know much wrt input (not an area I focus on). That being said, since this patch is just an addition of an enum value, I can't see it doing any real harm

Palm detection can come in two sorts, basically:

  • The hand's palm covers the entire screen, eg. on Gear S2 where this will turn off the screen (put to sleep)
  • The screen is larger than a hand and we are thus dealing with "Surface" like screens. In that case we only want to know the rough position and size of the hand. Obviously full handling of a whole hand input would require more information but this is a beginning. Anyway this is why the value can be bool or any floating point. Also this is not a new type of input for simplicity, and not a flag in the standard mouse inputs for compatibility.
ManMower edited edge metadata.May 16 2017, 3:24 PM

Yeah, this looks ok to me too.

I don't know of any wayland protocol to send anything like this to a client, but I suspect when such a thing exists it will fit readily with this API.

Closed by commit rEFLf603001367d3: ecore_input: add ECORE_AXIS_LABEL_TOUCH_PALM enum (authored by Sung-Jin Park <sj76.park@samsung.com>, committed by Jean-Philippe Andre <jp.andre@samsung.com>). · Explain WhyMay 16 2017, 6:38 PM
This revision was automatically updated to reflect the committed changes.