# 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.

# Vortininja/Vorticon/Dorp/Blooglet/Lick
Section "InputClass"
    Identifier      "touchpad octopus elan"
    MatchIsTouchpad "on"
    MatchDevicePath "/dev/input/event*"
    MatchProduct    "Elan"
    MatchUSBID      "04f3:00c3|04f3:00c7|04f3:00cb|04f3:00cc|04f3:00eb"
    Option          "Zero Finger Click Enable" "0"
EndSection

# Lick
Section "InputClass"
    Identifier      "touchpad octopus synaptics"
    MatchIsTouchpad "on"
    MatchDevicePath "/dev/input/event*"
    MatchProduct    "Synaptics"
    MatchUSBID      "06cb:7ca2"
    Option          "Zero Finger Click Enable" "0"
EndSection
