| # Copyright 2025 The Chromium Authors |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//chrome/common/features.gni") |
| |
| assert(!is_android) |
| |
| source_set("actor") { |
| friend = [ |
| ":unit_tests", |
| ":browser_tests", |
| ] |
| public = [ |
| "actor_features.h", |
| "actor_keyed_service.h", |
| "actor_keyed_service_factory.h", |
| "actor_metrics.h", |
| "actor_navigation_throttle.h", |
| "actor_policy_checker.h", |
| "actor_switches.h", |
| "actor_tab_data.h", |
| "actor_task.h", |
| "actor_task_metadata.h", |
| "aggregated_journal.h", |
| "aggregated_journal_file_serializer.h", |
| "aggregated_journal_in_memory_serializer.h", |
| "aggregated_journal_serializer.h", |
| "browser_action_util.h", |
| "execution_engine.h", |
| "tools/attempt_login_tool_request.h", |
| "tools/click_tool_request.h", |
| "tools/drag_and_release_tool_request.h", |
| "tools/history_tool_request.h", |
| "tools/media_control_tool_request.h", |
| "tools/move_mouse_tool_request.h", |
| "tools/navigate_tool_request.h", |
| "tools/observation_delay_controller.h", |
| "tools/page_tool_request.h", |
| "tools/script_tool_request.h", |
| "tools/scroll_to_tool_request.h", |
| "tools/scroll_tool_request.h", |
| "tools/select_tool_request.h", |
| "tools/tab_management_tool_request.h", |
| "tools/tool_controller.h", |
| "tools/tool_delegate.h", |
| "tools/tool_request.h", |
| "tools/tool_request_visitor_functor.h", |
| "tools/type_tool_request.h", |
| "tools/wait_tool_request.h", |
| "tools/window_management_tool_request.h", |
| ] |
| public_deps = [ |
| ":types", |
| "//base", |
| "//chrome/browser/actor/resources:browser_resources", |
| "//chrome/browser/actor/ui:dom_node_geometry", |
| "//chrome/browser/actor/ui:states", |
| "//chrome/browser/page_content_annotations:fetcher", |
| "//chrome/browser/password_manager/actor_login:service", |
| "//chrome/browser/profiles", |
| "//chrome/common", |
| "//chrome/common:actor_webui_mojom", |
| "//components/autofill/core/browser/integrators/glic:actor_form_filling_types", |
| "//components/optimization_guide/content/browser", |
| "//components/optimization_guide/proto:optimization_guide_proto", |
| "//components/password_manager/core/browser/actor_login:common", |
| "//components/tabs:public", |
| "//content/public/browser", |
| "//ui/base/unowned_user_data", |
| ] |
| } |
| |
| source_set("impl") { |
| sources = [ |
| "actor_features.cc", |
| "actor_keyed_service.cc", |
| "actor_keyed_service_factory.cc", |
| "actor_metrics.cc", |
| "actor_navigation_throttle.cc", |
| "actor_policy_checker.cc", |
| "actor_switches.cc", |
| "actor_tab_data.cc", |
| "actor_task.cc", |
| "actor_task_metadata.cc", |
| "aggregated_journal.cc", |
| "aggregated_journal_file_serializer.cc", |
| "aggregated_journal_in_memory_serializer.cc", |
| "aggregated_journal_serializer.cc", |
| "browser_action_util.cc", |
| "execution_engine.cc", |
| "safety_list.cc", |
| "safety_list.h", |
| "safety_list_manager.cc", |
| "safety_list_manager.h", |
| "site_policy.cc", |
| "site_policy.h", |
| "tools/attempt_login_tool.cc", |
| "tools/attempt_login_tool.h", |
| "tools/attempt_login_tool_request.cc", |
| "tools/click_tool_request.cc", |
| "tools/drag_and_release_tool_request.cc", |
| "tools/history_tool.cc", |
| "tools/history_tool.h", |
| "tools/history_tool_request.cc", |
| "tools/media_control_tool.cc", |
| "tools/media_control_tool.h", |
| "tools/media_control_tool_request.cc", |
| "tools/move_mouse_tool_request.cc", |
| "tools/navigate_tool.cc", |
| "tools/navigate_tool.h", |
| "tools/navigate_tool_request.cc", |
| "tools/observation_delay_controller.cc", |
| "tools/page_target_util.cc", |
| "tools/page_target_util.h", |
| "tools/page_tool.cc", |
| "tools/page_tool.h", |
| "tools/page_tool_request.cc", |
| "tools/script_tool_request.cc", |
| "tools/scroll_to_tool_request.cc", |
| "tools/scroll_tool_request.cc", |
| "tools/select_tool_request.cc", |
| "tools/tab_management_tool.cc", |
| "tools/tab_management_tool.h", |
| "tools/tab_management_tool_request.cc", |
| "tools/tool.cc", |
| "tools/tool.h", |
| "tools/tool_callbacks.cc", |
| "tools/tool_callbacks.h", |
| "tools/tool_controller.cc", |
| "tools/tool_request.cc", |
| "tools/type_tool_request.cc", |
| "tools/wait_tool.cc", |
| "tools/wait_tool.h", |
| "tools/wait_tool_request.cc", |
| "tools/window_management_tool.cc", |
| "tools/window_management_tool.h", |
| "tools/window_management_tool_request.cc", |
| ] |
| |
| public_deps = [ "//chrome/browser:browser_public_dependencies" ] |
| |
| deps = [ |
| ":actor", |
| ":variants", |
| "//chrome/browser:browser_process", |
| "//chrome/browser/actor/ui", |
| "//chrome/browser/actor/ui:event_dispatcher", |
| "//chrome/browser/favicon", |
| "//chrome/browser/optimization_guide", |
| "//chrome/browser/page_content_annotations:fetcher", |
| "//chrome/browser/profiles:profile", |
| "//chrome/browser/safe_browsing", |
| "//chrome/browser/ui:browser_list", |
| "//chrome/browser/ui:browser_navigator_params_headers", |
| "//chrome/browser/ui/browser_window", |
| "//chrome/browser/ui/tabs:tab_strip", |
| "//chrome/browser/ui/tabs:tab_strip_model_observer", |
| "//chrome/browser/ui/tabs:tabs_public", |
| "//chrome/common", |
| "//components/autofill/core/browser/integrators/glic:actor_form_filling_types", |
| "//components/content_settings/core/common", |
| "//components/favicon/core", |
| "//components/lookalikes/core", |
| "//components/page_load_metrics/browser", |
| "//components/password_manager/core/browser/features:password_features", |
| "//components/safe_browsing:buildflags", |
| "//components/safe_browsing/core/common:safe_browsing_prefs", |
| "//components/tracing:tracing_metrics", |
| "//components/variations/service", |
| "//content/public/browser", |
| "//net", |
| "//third_party/abseil-cpp:absl", |
| "//third_party/perfetto:libperfetto", |
| "//third_party/perfetto/protos/perfetto/config:zero_gen", |
| "//third_party/perfetto/protos/perfetto/trace/perfetto:zero_gen", |
| "//url", |
| ] |
| |
| if (enable_glic) { |
| deps += [ "//chrome/browser/glic" ] |
| } |
| } |
| |
| source_set("variants") { |
| sources = [ |
| "tool_request_variant.cc", |
| "tool_request_variant.h", |
| ] |
| deps = [ |
| ":actor", |
| "//base", |
| ] |
| } |
| |
| # This target contains only type definitions that may be depended on by other |
| # headers without depending on all of :actor. |
| # This avoids dependency cycles. |
| source_set("types") { |
| sources = [ |
| "actor_task_delegate.h", |
| "shared_types.cc", |
| "shared_types.h", |
| ] |
| public_deps = [ |
| "//base", |
| "//chrome/common:mojo_bindings", |
| "//ui/gfx/geometry", |
| ] |
| deps = [ |
| "//chrome/common", |
| "//chrome/common:actor_webui_mojom", |
| "//components/password_manager/core/browser/actor_login:common", |
| "//components/tabs:public", |
| "//third_party/abseil-cpp:absl", |
| ] |
| } |
| |
| source_set("impl_test_support") { |
| testonly = true |
| sources = [ |
| "tools/fake_tool.cc", |
| "tools/fake_tool.h", |
| "tools/fake_tool_request.cc", |
| "tools/fake_tool_request.h", |
| ] |
| |
| deps = [ |
| ":actor", |
| ":impl", |
| ] |
| } |
| |
| source_set("test_support") { |
| testonly = true |
| sources = [ |
| "actor_keyed_service_fake.cc", |
| "actor_keyed_service_fake.h", |
| "actor_test_util.cc", |
| "actor_test_util.h", |
| ] |
| |
| deps = [ ":actor" ] |
| |
| public_deps = [ |
| "//base", |
| "//chrome/browser/actor/ui:event_dispatcher", |
| "//chrome/browser/actor/ui:test_support", |
| "//components/optimization_guide/proto:optimization_guide_proto", |
| "//content/test:test_support", |
| ] |
| } |
| |
| source_set("unit_tests") { |
| testonly = true |
| sources = [ |
| "actor_keyed_service_unittest.cc", |
| "actor_task_metadata_unittest.cc", |
| "aggregated_journal_unittest.cc", |
| "safety_list_manager_unittest.cc", |
| "safety_list_unittest.cc", |
| "shared_types_unittest.cc", |
| "site_policy_unittest.cc", |
| ] |
| deps = [ |
| ":actor", |
| ":impl", |
| ":test_support", |
| "ui:event_dispatcher", |
| "ui:test_support", |
| "//base/test:test_support", |
| "//chrome/browser/optimization_guide:test_support", |
| "//chrome/test:test_support", |
| "//components/tabs:test_support", |
| "//testing/gtest", |
| ] |
| if (enable_glic) { |
| sources += [ "execution_engine_unittest.cc" ] |
| deps += [ |
| ":impl_test_support", |
| ":variants", |
| ] |
| } |
| } |
| |
| source_set("tools_test_support") { |
| testonly = true |
| public_deps = [ "//base/test:test_support" ] |
| deps = [ |
| ":actor", |
| ":impl", |
| ":test_support", |
| "//chrome/browser/optimization_guide:test_support", |
| "//chrome/browser/ui:ui_features", |
| "//chrome/browser/ui/zoom", |
| "//chrome/test:test_support", |
| "//chrome/test:test_support_ui", |
| "//testing/gtest", |
| ] |
| if (enable_glic) { |
| sources = [ |
| "tools/tools_test_util.cc", |
| "tools/tools_test_util.h", |
| ] |
| deps += [ "//chrome/browser/glic" ] |
| } |
| } |
| |
| source_set("browser_tests") { |
| testonly = true |
| defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ] |
| sources = [ "site_policy_browsertest.cc" ] |
| deps = [ |
| ":actor", |
| ":impl", |
| ":test_support", |
| ":tools_test_support", |
| "ui:event_dispatcher", |
| "//chrome/browser/optimization_guide:test_support", |
| "//chrome/browser/safe_browsing", |
| "//chrome/browser/ui", |
| "//chrome/browser/ui:ui_features", |
| "//chrome/browser/ui/views:file_system_access_test_support", |
| "//chrome/browser/ui/zoom", |
| "//chrome/test:test_support", |
| "//chrome/test:test_support_ui", |
| "//components/favicon/core/test:test_support", |
| "//components/javascript_dialogs", |
| "//components/optimization_guide/core:bloomfilter", |
| "//components/safe_browsing:buildflags", |
| "//components/safe_browsing/core/common:features", |
| "//components/safe_browsing/core/common:safe_browsing_prefs", |
| "//content/test:browsertest_support", |
| "//testing/gtest", |
| ] |
| |
| if (enable_glic) { |
| sources += [ |
| "actor_keyed_service_browsertest.cc", |
| "actor_policy_checker_browsertest.cc", |
| "execution_engine_browsertest.cc", |
| "execution_engine_origin_gating_browsertest.cc", |
| "tools/attempt_login_tool_browsertest.cc", |
| "tools/click_tool_browsertest.cc", |
| "tools/drag_and_release_tool_browsertest.cc", |
| "tools/history_tool_browsertest.cc", |
| "tools/media_control_tool_browsertest.cc", |
| "tools/mouse_move_tool_browsertest.cc", |
| "tools/navigate_tool_browsertest.cc", |
| "tools/observation_delay_controller_browsertest.cc", |
| "tools/page_stability_browsertest.cc", |
| "tools/page_tool_browsertest.cc", |
| "tools/script_tool_browsertest.cc", |
| "tools/scroll_to_tool_browsertest.cc", |
| "tools/scroll_tool_browsertest.cc", |
| "tools/select_tool_browsertest.cc", |
| "tools/tab_management_tool_browsertest.cc", |
| "tools/tool_agnostic_browsertest.cc", |
| "tools/type_tool_browsertest.cc", |
| "tools/wait_tool_browsertest.cc", |
| "tools/window_management_tool_browsertest.cc", |
| ] |
| deps += [ |
| "//chrome/browser/glic", |
| "//chrome/browser/glic/test_support", |
| "//components/page_load_metrics/browser:test_support", |
| "//ui/base:ozone_buildflags", |
| ] |
| } |
| } |
| |
| source_set("interactive_ui_tests") { |
| testonly = true |
| defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ] |
| deps = [ |
| ":actor", |
| ":impl", |
| ":test_support", |
| ":tools_test_support", |
| "//cc:test_support", |
| "//chrome/browser/ui:ui_features", |
| "//components/favicon/core/test:test_support", |
| "//content/test:browsertest_support", |
| "//testing/gtest", |
| "//ui/base/interaction:test_support", |
| "//ui/compositor", |
| "//ui/gfx/codec", |
| ] |
| if (enable_glic) { |
| sources = [ |
| "tools/attempt_login_tool_interactive_ui_test.cc", |
| "tools/select_tool_interactive_ui_test.cc", |
| ] |
| deps += [ |
| "//chrome/browser/glic", |
| "//chrome/browser/glic/test_support", |
| "//chrome/browser/optimization_guide:test_support", |
| ] |
| } |
| } |