# 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")
import("//testing/test.gni")

mojo_native_application("view_manager") {
  output_name = "view_manager_service"

  sources = [
    "main.cc",
    "view_associate_table.cc",
    "view_associate_table.h",
    "view_host_impl.cc",
    "view_host_impl.h",
    "view_layout_request.cc",
    "view_layout_request.h",
    "view_manager_app.cc",
    "view_manager_app.h",
    "view_manager_impl.cc",
    "view_manager_impl.h",
    "view_registry.cc",
    "view_registry.h",
    "view_state.cc",
    "view_state.h",
    "view_stub.cc",
    "view_stub.h",
    "view_tree_host_impl.cc",
    "view_tree_host_impl.h",
    "view_tree_state.cc",
    "view_tree_state.h",
  ]

  deps = [
    "//base",
    "//mojo/application",
    "//mojo/common",
    "//mojo/common:tracing_impl",
    "//mojo/converters/geometry",
    "//mojo/environment:chromium",
    "//mojo/public/cpp/bindings:bindings",
    "//mojo/services/geometry/cpp",
    "//mojo/services/gfx/composition/cpp",
    "//mojo/services/gfx/composition/interfaces",
    "//mojo/services/ui/views/cpp",
    "//mojo/services/ui/views/interfaces",
  ]
}
