diff options
author | Ming-Yang Lu <op8867555@gmail.com> | 2017-07-02 18:07:20 +0800 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@who-t.net> | 2017-07-10 09:33:24 +1000 |
commit | 5dc330bdea6fc0ba6ec380b746dac5763c50cfeb (patch) | |
tree | efce5053c76010d5a00bc370e516767f21f8726f /doc | |
parent | 6a77cae8509bd45bff7ae220101295bbc57b9803 (diff) |
touchpad: add upper edge into exclusion zone
This reduces unexpected cursor moves when placing the thumb near the border
of trackpoint buttons and upper edge of touchpad.
https://bugs.freedesktop.org/show_bug.cgi?id=101574
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Diffstat (limited to 'doc')
-rw-r--r-- | doc/palm-detection.dox | 24 | ||||
-rw-r--r-- | doc/svg/palm-detection.svg | 47 |
2 files changed, 43 insertions, 28 deletions
diff --git a/doc/palm-detection.dox b/doc/palm-detection.dox index c8ceb4eb..4dbd67c0 100644 --- a/doc/palm-detection.dox +++ b/doc/palm-detection.dox @@ -27,16 +27,20 @@ pressure ranges, see @ref touchpad_pressure. @section palm_exclusion_zones Palm exclusion zones -libinput enables palm detection on the edge of the touchpad. Two exclusion -zones are defined on the left and right edge of the touchpad. -If a touch starts in the exclusion zone, it is considered a palm and the -touch point is ignored. However, for fast cursor movements across the -screen, it is common for a finger to start inside an exclusion zone and move -rapidly across the touchpad. libinput detects such movements and avoids palm -detection on such touch sequences. - -Each exclusion zone is divided into a top part and a bottom part. A touch -starting in the top part of the exclusion zone does not trigger a +libinput enables palm detection on the left, right and top edges of the +touchpad. Two exclusion zones are defined on the left and right edge of the +touchpad. If a touch starts in the exclusion zone, it is considered a palm +and the touch point is ignored. However, for fast cursor movements across +the screen, it is common for a finger to start inside an exclusion zone and +move rapidly across the touchpad. libinput detects such movements and avoids +palm detection on such touch sequences. + +Another exclusion zone is defined on the top edge of the touchpad. As with +the edge zones, libinput detects vertical movements out of the edge zone and +avoids palm detection on such touch sequences. + +Each side edge exclusion zone is divided into a top part and a bottom part. +A touch starting in the top part of the exclusion zone does not trigger a tap (see @ref tapping). In the diagram below, the exclusion zones are painted red. diff --git a/doc/svg/palm-detection.svg b/doc/svg/palm-detection.svg index c3e45f44..2849e265 100644 --- a/doc/svg/palm-detection.svg +++ b/doc/svg/palm-detection.svg @@ -36,16 +36,17 @@ inkscape:pageopacity="0" inkscape:pageshadow="2" inkscape:window-width="1920" - inkscape:window-height="1136" + inkscape:window-height="1016" id="namedview3477" showgrid="false" inkscape:zoom="3.5662625" - inkscape:cx="199.35048" - inkscape:cy="156.74673" + inkscape:cx="180.54059" + inkscape:cy="269.48563" inkscape:window-x="0" inkscape:window-y="27" inkscape:window-maximized="1" - inkscape:current-layer="svg2" /> + inkscape:current-layer="svg2" + inkscape:document-rotation="0" /> <defs id="defs4"> <marker @@ -138,15 +139,14 @@ id="path13492" d="m 38.928571,67.914286 c 0,0 3.508205,24.810617 9.642857,57.857144 6.134651,33.04652 23.277202,79.68584 89.642852,90.35714" /> <rect - style="fill:#000000;fill-opacity:0.3559322;fill-rule:evenodd;stroke:none;stroke-width:3.30527353px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + style="fill:#000000;fill-opacity:0.3559322;fill-rule:evenodd;stroke:none;stroke-width:3.30510259px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" id="rect3490" - width="65.272476" - height="136.21509" + width="65.310997" + height="136.12065" x="7.0411549" - y="7.0411549" /> + y="7.1355872" /> <text - sodipodi:linespacing="100%" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:12px;line-height:100%;font-family:Utopia;-inkscape-font-specification:Utopia;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:12px;line-height:0%;font-family:Utopia;-inkscape-font-specification:Utopia;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none" xml:space="preserve" id="text13874" y="63.628628" @@ -160,11 +160,10 @@ id="rect3490-2" width="65.272476" height="136.21509" - x="321.23563" - y="6.7607527" /> + x="321.22849" + y="6.8830237" /> <text - sodipodi:linespacing="100%" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:12px;line-height:100%;font-family:Utopia;-inkscape-font-specification:Utopia;text-align:start;writing-mode:lr-tb;text-anchor:start;display:inline;fill:#000000;fill-opacity:1;stroke:none" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:12px;line-height:0%;font-family:Utopia;-inkscape-font-specification:Utopia;text-align:start;writing-mode:lr-tb;text-anchor:start;display:inline;fill:#000000;fill-opacity:1;stroke:none" xml:space="preserve" id="text13874-8" y="98.748993" @@ -183,8 +182,7 @@ id="layer1" style="display:inline" /> <text - sodipodi:linespacing="100%" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:12px;line-height:100%;font-family:Utopia;-inkscape-font-specification:Utopia;text-align:start;writing-mode:lr-tb;text-anchor:start;display:inline;fill:#000000;fill-opacity:1;stroke:none" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:12px;line-height:0%;font-family:Utopia;-inkscape-font-specification:Utopia;text-align:start;writing-mode:lr-tb;text-anchor:start;display:inline;fill:#000000;fill-opacity:1;stroke:none" xml:space="preserve" id="text13874-8-1" y="46.009491" @@ -194,8 +192,7 @@ y="46.009491" x="342.27759">C</tspan></text> <text - sodipodi:linespacing="100%" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:12px;line-height:100%;font-family:Utopia;-inkscape-font-specification:Utopia;text-align:start;writing-mode:lr-tb;text-anchor:start;display:inline;fill:#000000;fill-opacity:1;stroke:none" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:12px;line-height:0%;font-family:Utopia;-inkscape-font-specification:Utopia;text-align:start;writing-mode:lr-tb;text-anchor:start;display:inline;fill:#000000;fill-opacity:1;stroke:none" xml:space="preserve" id="text13874-8-1-4" y="215.65927" @@ -218,4 +215,18 @@ cy="194.8819" r="4.0658817" transform="scale(-1,1)" /> + <rect + width="248.87633" + height="6.8111157" + x="72.35215" + y="7.1355872" + id="rect4355" + style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:#ff0000;fill-opacity:0.32017547;fill-rule:nonzero;stroke:none;stroke-width:1.11822701;marker:none;enable-background:accumulate" /> + <rect + y="7.1355872" + x="72.35215" + height="6.8111153" + width="248.87634" + id="rect4353" + style="fill:#000000;fill-opacity:0.3559322;fill-rule:evenodd;stroke:none;stroke-width:1.44321382px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" /> </svg> |