blob: 316e67c85e6160b94a1aacee79a693cba62a67f2 [file] [log] [blame]
# Copyright 2018 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("//ios/public/provider/chrome/browser/build_config.gni")
source_set("tab_grid") {
sources = [
"tab_grid_adaptor.h",
"tab_grid_adaptor.mm",
"tab_grid_coordinator.h",
"tab_grid_coordinator.mm",
"tab_grid_mediator.h",
"tab_grid_mediator.mm",
"tab_switcher.h",
"view_controller_swapping.h",
]
configs += [ "//build/config/compiler:enable_arc" ]
deps = [
":tab_grid_ui",
"grid:grid_ui",
"//base",
"//components/favicon/ios",
"//components/sessions",
"//ios/chrome/browser",
"//ios/chrome/browser/browser_state",
"//ios/chrome/browser/sessions",
"//ios/chrome/browser/sessions:serialisation",
"//ios/chrome/browser/snapshots",
"//ios/chrome/browser/tabs",
"//ios/chrome/browser/ui/commands",
"//ios/chrome/browser/ui/coordinators:chrome_coordinators",
"//ios/chrome/browser/ui/history",
"//ios/chrome/browser/ui/history/public",
"//ios/chrome/browser/ui/main",
"//ios/chrome/browser/ui/recent_tabs",
"//ios/chrome/browser/ui/recent_tabs:recent_tabs_ui",
"//ios/chrome/browser/url_loading",
"//ios/chrome/browser/web",
"//ios/chrome/browser/web_state_list",
"//ios/chrome/browser/web_state_list/web_usage_enabler",
"//ios/web",
"//ui/base",
"//ui/gfx",
]
}
source_set("tab_grid_ui") {
sources = [
"tab_grid_bottom_toolbar.h",
"tab_grid_bottom_toolbar.mm",
"tab_grid_constants.h",
"tab_grid_constants.mm",
"tab_grid_empty_state_view.h",
"tab_grid_empty_state_view.mm",
"tab_grid_new_tab_button.h",
"tab_grid_new_tab_button.mm",
"tab_grid_page_control.h",
"tab_grid_page_control.mm",
"tab_grid_paging.h",
"tab_grid_top_toolbar.h",
"tab_grid_top_toolbar.mm",
"tab_grid_transition_handler.h",
"tab_grid_transition_handler.mm",
"tab_grid_view_controller.h",
"tab_grid_view_controller.mm",
]
configs += [ "//build/config/compiler:enable_arc" ]
deps = [
"grid:grid_ui",
"resources:new_tab_floating_button",
"resources:new_tab_floating_button_incognito",
"resources:new_tab_toolbar_button",
"resources:new_tab_toolbar_button_incognito",
"resources:page_control_assets",
"//base",
"//ios/chrome/app/strings",
"//ios/chrome/browser",
"//ios/chrome/browser/crash_report",
"//ios/chrome/browser/ui/commands",
"//ios/chrome/browser/ui/recent_tabs:recent_tabs_ui",
"//ios/chrome/browser/ui/tab_grid/transitions",
"//ios/chrome/browser/ui/table_view:styler",
"//ios/chrome/browser/ui/util",
"//ios/chrome/common/ui_util",
"//ios/web/public",
"//ui/base",
]
}
source_set("unit_tests") {
configs += [ "//build/config/compiler:enable_arc" ]
testonly = true
sources = [
"tab_grid_coordinator_unittest.mm",
"tab_grid_mediator_unittest.mm",
]
deps = [
":tab_grid",
":tab_grid_ui",
"grid:grid_ui",
"//base",
"//base/test:test_support",
"//ios/chrome/browser",
"//ios/chrome/browser/browser_state:test_support",
"//ios/chrome/browser/ntp",
"//ios/chrome/browser/tabs",
"//ios/chrome/browser/web",
"//ios/chrome/browser/web:test_support",
"//ios/chrome/browser/web_state_list",
"//ios/chrome/browser/web_state_list:test_support",
"//ios/chrome/test:block_cleanup_test",
"//ios/web/public/test",
"//ios/web/public/test/fakes",
"//testing/gtest",
"//third_party/ocmock",
]
}
source_set("egtest_support") {
configs += [ "//build/config/compiler:enable_arc" ]
testonly = true
sources = [
"tab_grid_egtest_util.h",
"tab_grid_egtest_util.mm",
]
deps = [
":tab_grid_ui",
"grid:grid_ui",
"//base",
"//base/test:test_support",
"//ios/chrome/app/strings",
"//ios/chrome/browser/ui/recent_tabs:recent_tabs_ui",
"//ios/chrome/browser/ui/util",
"//ios/chrome/test/app:test_support",
"//ios/chrome/test/earl_grey:test_support",
"//ios/third_party/earl_grey:earl_grey+link",
"//ui/base",
]
}
source_set("eg_tests") {
configs += [ "//build/config/compiler:enable_arc" ]
testonly = true
sources = [
"tab_grid_egtest.mm",
"tab_grid_transition_egtest.mm",
]
deps = [
":egtest_support",
"//ios/chrome/app:app_internal",
"//ios/chrome/app/strings:ios_strings_grit",
"//ios/chrome/browser/tabs:tabs",
"//ios/chrome/browser/ui/tab_grid:tab_grid_ui",
"//ios/chrome/test/app:test_support",
"//ios/chrome/test/earl_grey:test_support",
"//ios/web/public/test/http_server",
]
libs = [ "XCTest.framework" ]
}