# Copyright 2024 The Chromium Authors # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. import("//extensions/buildflags/buildflags.gni") source_set("history") { public = [ "chrome_history_backend_client.h", "chrome_history_client.h", "domain_diversity_reporter_factory.h", "history_service_factory.h", "history_tab_helper.h", "history_utils.h", "profile_based_browsing_history_driver.h", "top_sites_factory.h", "web_history_service_factory.h", ] public_deps = [ "//base", "//chrome/browser/profiles:profile", "//components/bookmarks/browser", "//components/history/core/browser", "//components/keyed_service/core", "//components/sessions", "//components/translate/core/browser", "//content/public/browser", ] } source_set("impl") { sources = [ "chrome_history_backend_client.cc", "chrome_history_client.cc", "domain_diversity_reporter_factory.cc", "history_service_factory.cc", "history_tab_helper.cc", "history_utils.cc", "profile_based_browsing_history_driver.cc", "top_sites_factory.cc", "web_history_service_factory.cc", ] public_deps = [ ":history", "//chrome/browser:browser_public_dependencies", ] deps = [ "//base", "//chrome/browser/actor", "//chrome/browser/bookmarks", "//chrome/browser/complex_tasks", "//chrome/browser/engagement", "//chrome/browser/preloading/prefetch/no_state_prefetch", "//chrome/browser/profiles:profile", "//chrome/browser/renderer_host", "//chrome/browser/search_engines", "//chrome/browser/signin", "//chrome/browser/sync:factories", "//chrome/browser/translate", "//chrome/browser/ui/profiles", "//chrome/common", "//chrome/common:constants", "//components/bookmarks/browser", "//components/browsing_data/core", "//components/dom_distiller/core", "//components/history/content/browser", "//components/history/core/browser", "//components/history/core/common", "//components/history/metrics", "//components/keyed_service/core", "//components/no_state_prefetch/browser", "//components/policy/core/common:common_constants", "//components/pref_registry", "//components/prefs", "//components/search_engines", "//components/sessions", "//components/strings:components_strings", "//components/sync/service", "//components/webapps/browser", "//content/public/browser", "//extensions/buildflags", "//net", "//third_party/blink/public/common", "//ui/base", "//url", ] if (enable_extensions_core) { deps += [ "//chrome/browser/extensions" ] } if (is_android) { deps += [ ":jni_headers", "//chrome/browser/feed", "//chrome/browser/flags:flags_android", "//chrome/browser/ui/android/tab_model:impl", ] } else { deps += [ "//chrome/browser/ui/browser_window" ] } } if (is_android) { import("//build/config/android/config.gni") import("//build/config/android/rules.gni") import("//chrome/browser/buildflags.gni") import("//third_party/jni_zero/jni_zero.gni") android_library("java") { srcjar_deps = [ ":jni_headers" ] sources = [ "java/src/org/chromium/chrome/browser/history/AppFilterCoordinator.java", "java/src/org/chromium/chrome/browser/history/AppFilterMediator.java", "java/src/org/chromium/chrome/browser/history/AppFilterProperties.java", "java/src/org/chromium/chrome/browser/history/AppFilterSheetContent.java", "java/src/org/chromium/chrome/browser/history/AppFilterViewBinder.java", "java/src/org/chromium/chrome/browser/history/HistoryTabHelper.java", ] deps = [ ":java_resources", "//base:base_java", "//chrome/browser/tab:java", "//components/browser_ui/bottomsheet/android:java", "//content/public/android:content_java", "//third_party/androidx:androidx_annotation_annotation_java", "//third_party/androidx:androidx_recyclerview_recyclerview_java", "//third_party/jni_zero:jni_zero_java", "//ui/android:ui_full_java", ] resources_package = "org.chromium.chrome.browser.history" } generate_jni("jni_headers") { sources = [ "java/src/org/chromium/chrome/browser/history/HistoryTabHelper.java" ] } android_resources("java_resources") { sources = [ "java/res/layout/appfilter_content.xml", "java/res/layout/appfilter_header.xml", ] deps = [ "//chrome/browser/ui/android/strings:ui_strings_grd", "//components/browser_ui/widget/android:java_resources", ] } android_library("unit_device_javatests") { testonly = true resources_package = "org.chromium.chrome.browser.history" sources = [ "java/src/org/chromium/chrome/browser/history/AppFilterCoordinatorTest.java" ] deps = [ ":java", ":java_resources", "//base:base_java", "//base:base_java_test_support", "//chrome/browser/flags:java", "//chrome/test/android:chrome_java_unit_test_support", "//components/browser_ui/bottomsheet/android:factory_java", "//components/browser_ui/bottomsheet/android:java", "//components/browser_ui/bottomsheet/android:manager_java", "//components/browser_ui/desktop_windowing/android:java", "//components/browser_ui/widget/android:java", "//content/public/test/android:content_java_test_support", "//third_party/androidx:androidx_test_monitor_java", "//third_party/androidx:androidx_test_rules_java", "//third_party/androidx:androidx_test_runner_java", "//third_party/junit", "//ui/android:ui_java", "//ui/android:ui_java_test_support", ] } } source_set("test_support") { testonly = true sources = [ "history_test_utils.cc", "history_test_utils.h", ] public_deps = [ ":history", "//base", "//components/history/core/browser", ] deps = [ "//chrome/browser/profiles:profile", "//content/test:test_support", ] } source_set("unit_tests") { testonly = true sources = [ "history_tab_helper_unittest.cc" ] deps = [ ":history", "//base", "//base/test:test_support", "//chrome/browser", "//chrome/browser/actor", "//chrome/browser/actor:test_support", "//chrome/common:chrome_features", "//chrome/test:test_support", "//components/history/core/browser", "//content/public/browser", "//content/test:test_support", "//testing/gmock", "//testing/gtest", "//third_party/blink/public/common", "//ui/base", ] if (is_android) { deps += [ "//chrome/browser/feed", "//components/feed/core/v2:feed_core_stubs", "//components/feed/core/v2:feed_core_v2", ] } } if (!is_android) { source_set("browser_tests") { testonly = true defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ] sources = [ "history_browsertest.cc", "redirect_browsertest.cc", ] deps = [ ":history", ":test_support", "//base", "//base/test:test_support", "//chrome/app:command_ids", "//chrome/browser", "//chrome/browser/actor", "//chrome/browser/actor:test_support", "//chrome/browser/profiles:profile", "//chrome/browser/renderer_host", "//chrome/browser/search_engines", "//chrome/browser/sync/test/integration:sync_integration_test_support", "//chrome/browser/ui", "//chrome/browser/ui:ui_features", "//chrome/browser/ui:view_ids", "//chrome/browser/ui/browser_window", "//chrome/common", "//chrome/test:test_support", "//chrome/test:test_support_ui", "//components/actor/core", "//components/history/core/browser", "//components/history/core/common", "//components/history/core/test", "//components/prefs", "//components/search_engines", "//content/public/browser", "//content/test:test_support", "//net:test_support", "//testing/gtest", "//third_party/blink/public/common", "//ui/base", "//ui/events", "//ui/webui:test_support", "//url", ] } }