# Copyright 2015 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("//mojo/public/mojo_application.gni")

mojo_native_application("keyboard_client") {
  sources = [
    "keyboard_client.cc",
  ]

  deps = [
    "//base",
    "//mojo/application",
    "//mojo/gpu",
    "//mojo/public/interfaces/application:application__generator",
    "//mojo/services/geometry/public/cpp:cpp",
    "//mojo/services/geometry/public/interfaces:interfaces__generator",
    "//mojo/services/keyboard/public/interfaces",
    "//mojo/services/surfaces/public/cpp:cpp",
    "//mojo/services/surfaces/public/interfaces:interfaces_cpp_sources",
    "//mojo/services/surfaces/public/interfaces:surface_id_cpp_sources",
    "//mojo/services/view_manager/public/cpp",
    "//mojo/skia:skia",
    "//skia",
  ]
}
