| # 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", |
| ] |
| } |