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

import("//third_party/WebKit/Source/core/core.gni")

blink_core_sources("input") {
  sources = [
    "BoundaryEventDispatcher.cpp",
    "BoundaryEventDispatcher.h",
    "ContextMenuAllowedScope.cpp",
    "ContextMenuAllowedScope.h",
    "EventHandler.cpp",
    "EventHandler.h",
    "EventHandlingUtil.cpp",
    "EventHandlingUtil.h",
    "GestureManager.cpp",
    "GestureManager.h",
    "InputDeviceCapabilities.cpp",
    "InputDeviceCapabilities.h",
    "KeyboardEventManager.cpp",
    "KeyboardEventManager.h",
    "MouseEventManager.cpp",
    "MouseEventManager.h",
    "MouseWheelEventManager.cpp",
    "MouseWheelEventManager.h",
    "PointerEventManager.cpp",
    "PointerEventManager.h",
    "ScrollManager.cpp",
    "ScrollManager.h",
    "Touch.cpp",
    "Touch.h",
    "TouchActionUtil.cpp",
    "TouchActionUtil.h",
    "TouchEventManager.cpp",
    "TouchEventManager.h",
    "TouchList.cpp",
    "TouchList.h",
  ]
}
