# Copyright 2020 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# Configure touchpads to use Chromium Multitouch (cmt) X input driver
Section "InputClass"
    Identifier      "touchpad gnawty elan"
    MatchIsTouchpad "on"
    MatchDevicePath "/dev/input/event*"
    MatchProduct    "Elan"

    Option          "Integrated Touchpad" "1"
    Option          "Touchpad Stack Version" "2"

    Option          "Pressure Calibration Offset" "-139.968517794835"
    Option          "Pressure Calibration Slope" "3.523495034"
    Option          "Tap Minimum Pressure" "25.0"

    Option          "Max Stationary Move Speed" "47"
    Option          "Max Stationary Move Speed Hysteresis" "1"
    Option          "Max Stationary Move Suppress Distance" "0.2"
EndSection
