blob: 2f64e936f445003c8517bb04a431e3ec97529443 [file] [log] [blame]
# 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("//mojo/public/tools/bindings/mojom.gni")
# C++ headers and sources that can be used outside ash.
component("cpp") {
sources = [
"accessibility_types.h",
"app_list/term_break_iterator.cc",
"app_list/term_break_iterator.h",
"app_list/tokenized_string.cc",
"app_list/tokenized_string.h",
"app_list/tokenized_string_char_iterator.cc",
"app_list/tokenized_string_char_iterator.h",
"app_list/tokenized_string_match.cc",
"app_list/tokenized_string_match.h",
"app_types.h",
"ash_pref_names.cc",
"ash_pref_names.h",
"ash_public_export.h",
"ash_switches.cc",
"ash_switches.h",
"ash_typography.cc",
"ash_typography.h",
"config.h",
"immersive/immersive_context.cc",
"immersive/immersive_context.h",
"immersive/immersive_focus_watcher.h",
"immersive/immersive_fullscreen_controller.cc",
"immersive/immersive_fullscreen_controller.h",
"immersive/immersive_fullscreen_controller_delegate.h",
"immersive/immersive_gesture_handler.h",
"immersive/immersive_handler_factory.cc",
"immersive/immersive_handler_factory.h",
"immersive/immersive_revealed_lock.cc",
"immersive/immersive_revealed_lock.h",
"login_constants.h",
"mus_property_mirror_ash.cc",
"mus_property_mirror_ash.h",
"remote_shelf_item_delegate.cc",
"remote_shelf_item_delegate.h",
"scale_utility.cc",
"scale_utility.h",
"session_types.h",
"shelf_item.cc",
"shelf_item.h",
"shelf_item_delegate.cc",
"shelf_item_delegate.h",
"shelf_model.cc",
"shelf_model.h",
"shelf_model_observer.h",
"shelf_prefs.cc",
"shelf_prefs.h",
"shelf_types.cc",
"shelf_types.h",
"shell_window_ids.cc",
"shell_window_ids.h",
"stylus_utils.cc",
"stylus_utils.h",
"window_pin_type.cc",
"window_pin_type.h",
"window_properties.cc",
"window_properties.h",
"window_state_type.cc",
"window_state_type.h",
"window_style.cc",
"window_style.h",
]
defines = [ "ASH_PUBLIC_IMPLEMENTATION" ]
deps = [
"//components/prefs",
"//mojo/common:common_custom_types",
"//skia/public/interfaces",
"//ui/aura",
"//ui/display",
"//ui/events/devices",
"//ui/views",
"//ui/views/mus",
]
public_deps = [
"//ash/public/interfaces:interfaces_internal",
"//base",
"//ui/gfx",
]
allow_circular_includes_from =
[ "//ash/public/interfaces:interfaces_internal" ]
output_name = "ash_public_cpp"
}
# Using a test service because the traits need to pass handles around. Revisit
# this after Deserialize(Serialize()) API works with handles.
mojom("test_interfaces") {
visibility = [ ":unit_tests" ]
sources = [
"shelf_struct_traits_test_service.mojom",
]
public_deps = [
"//ash/public/interfaces:interfaces_internal",
]
}
source_set("unit_tests") {
testonly = true
sources = [
"shelf_model_unittest.cc",
"shelf_struct_traits_unittest.cc",
]
deps = [
":cpp",
":test_interfaces",
"//base",
"//testing/gtest",
"//ui/gfx:test_support",
]
}