blob: eb0904aeec9ccc78e56bbde4f970a26b6596c93e [file] [log] [blame]
# 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("//build/config/chromeos/args.gni")
assert(is_win || is_mac || is_linux || is_chromeos || is_android)
# The public interface has no circular dependencies.
source_set("omnibox") {
sources = [ "omnibox_pedal_implementations.h" ]
deps = []
public_deps = [
"//base",
"//components/omnibox/browser",
]
if (!is_android) {
sources += [
"alternate_nav_infobar_delegate.h",
"chrome_omnibox_client.h",
"chrome_omnibox_navigation_observer.h",
"clipboard_utils.h",
"omnibox_tab_helper.h",
"omnibox_theme.h",
]
public_deps += [
"//base",
"//chrome/browser/bitmap_fetcher",
"//chrome/browser/page_content_annotations:extraction_service",
"//chrome/browser/ui/color:color_headers",
"//chrome/common",
"//components/infobars/core",
"//components/omnibox/browser:mojo_bindings_shared",
"//components/omnibox/browser:mojo_bindings_shared_cpp_sources",
"//components/omnibox/common",
"//content/public/browser",
"//services/network/public/mojom:url_loader_base",
]
}
}
# The implementation must be linked into the same binary as the public
# interface. This does have circular dependencies with //chrome/browser and
# //chrome/browser/ui.
source_set("impl") {
sources = [ "omnibox_pedal_implementations.cc" ]
public_deps = [ "//chrome/browser:browser_public_dependencies" ]
deps = [
":omnibox",
"//base",
"//build:branding_buildflags",
"//chrome/app/vector_icons",
"//chrome/browser:shell_integration",
"//chrome/browser/feedback",
"//chrome/browser/feedback:feedback_enum",
"//chrome/common",
"//chrome/common:chrome_features",
"//components/omnibox/browser",
"//components/omnibox/browser:vector_icons",
"//components/omnibox/common",
"//components/omnibox/resources:omnibox_pedal_synonyms",
"//components/omnibox/resources:omnibox_pedal_synonyms_grit",
"//components/prefs",
"//components/search",
"//components/strings:components_strings",
"//components/strings:components_strings_grit",
"//components/vector_icons",
]
if (!is_android) {
sources += [
"alternate_nav_infobar_delegate.cc",
"chrome_omnibox_client.cc",
"chrome_omnibox_navigation_observer.cc",
"clipboard_utils.cc",
"omnibox_tab_helper.cc",
]
deps += [
"//chrome/app:command_ids",
"//chrome/browser:browser_process",
"//chrome/browser:primitives",
"//chrome/browser/autocomplete",
"//chrome/browser/bitmap_fetcher",
"//chrome/browser/extensions/api/omnibox",
"//chrome/browser/favicon",
"//chrome/browser/omnibox",
"//chrome/browser/preloading/search_preload",
"//chrome/browser/profiles:profile",
"//chrome/browser/safe_browsing",
"//chrome/browser/search_engines",
"//chrome/browser/ui:browser_list",
"//chrome/browser/ui:layout_constants",
"//chrome/browser/ui/bookmarks",
"//chrome/browser/ui/extensions/",
"//chrome/browser/ui/hats",
"//chrome/browser/ui/lens",
"//chrome/browser/ui/location_bar",
"//chrome/browser/ui/views/location_bar",
"//chrome/common",
"//components/bookmarks/browser",
"//components/favicon/content",
"//components/favicon/core",
"//components/history/core/browser",
"//components/infobars/content",
"//components/infobars/core",
"//components/profile_metrics",
"//components/search_engines",
"//components/sessions",
"//content/public/browser",
"//extensions/buildflags",
"//net",
"//net/traffic_annotation",
"//services/metrics/public/cpp:gen_ukm_builders",
"//services/metrics/public/cpp:metrics_cpp",
"//services/metrics/public/cpp:ukm_builders",
"//services/network/public/cpp",
"//services/network/public/mojom:url_loader_base",
"//ui/base",
"//ui/base:types",
"//ui/base/clipboard",
"//ui/base/data_transfer_policy",
"//ui/gfx",
"//url",
]
}
}
if (!is_android) {
source_set("unit_tests") {
testonly = true
sources = [
"chrome_omnibox_navigation_observer_unittest.cc",
"clipboard_utils_unittest.cc",
"omnibox_pedal_implementations_unittest.cc",
"omnibox_pedals_unittest.cc",
]
deps = [
":omnibox",
"//base/test:test_support",
"//chrome/browser/search_engines",
"//chrome/test:test_support",
"//components/infobars/content",
"//components/omnibox/browser",
"//components/omnibox/browser:location_bar",
"//components/omnibox/browser:test_support",
"//components/omnibox/common",
"//components/search_engines",
"//content/public/browser",
"//content/test:test_support",
"//net",
"//services/network:test_support",
"//services/network/public/cpp",
"//services/network/public/mojom:url_loader_base",
"//ui/base",
"//ui/base:types",
"//ui/base/clipboard",
"//ui/base/clipboard:clipboard_test_support",
]
}
source_set("browser_tests") {
testonly = true
defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]
sources = [
"alternate_nav_infobar_delegate_browsertest.cc",
"omnibox_search_aggregator_browsertest.cc",
]
deps = [
":omnibox",
"//base/test:test_support",
"//chrome/browser/autocomplete",
"//chrome/browser/profiles:profile",
"//chrome/browser/search_engines",
"//chrome/browser/ui/location_bar",
"//chrome/browser/ui/search",
"//chrome/test:test_support",
"//chrome/test:test_support_ui",
"//components/infobars/core",
"//components/omnibox/browser",
"//components/omnibox/browser:location_bar",
"//components/policy:generated",
"//components/policy:policy_code_generate",
"//components/policy/core/browser",
"//components/policy/core/common:test_support",
"//components/search_engines",
"//components/search_engines:search_engine_type",
"//content/test:test_support",
"//net:test_support",
"//third_party/metrics_proto",
"//url",
# This target has a circular dependency against //chrome/test:browser_tests
# due to the inclusion of `chrome/browser/ui/test/test_infobar.h`.
]
# TODO(crbug.com/40031409): Fix code that adds exit-time destructors and
# enable the diagnostic by removing this line.
configs += [ "//build/config/compiler:no_exit_time_destructors" ]
}
if (!is_chromeos_device) {
source_set("interactive_ui_tests") {
testonly = true
defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]
sources = [ "omnibox_metrics_browsertest.cc" ]
deps = [
"//base/test:test_support",
"//chrome/browser/autocomplete",
"//chrome/browser/profiles:profile",
"//chrome/browser/search_engines",
"//chrome/browser/ui/location_bar",
"//chrome/browser/ui/search",
"//chrome/test:test_support",
"//chrome/test:test_support_ui",
"//components/omnibox/browser",
"//components/omnibox/browser:location_bar",
"//components/search_engines",
"//components/search_engines:search_engine_type",
"//content/test:test_support",
"//third_party/metrics_proto",
]
if (!is_mac) {
sources += [
# TODO(crbug.com/40659953): Re-enable this test when history backend failures are addressed.
"omnibox_view_browsertest.cc",
]
deps += [
":omnibox",
"//chrome/browser/ui:browser_navigator_params_headers",
"//chrome/browser/ui/browser_window",
]
}
}
}
}