| # 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("//ios/web/public/js_messaging/optimize_js.gni") |
| |
| source_set("web") { |
| configs += [ "//build/config/compiler:enable_arc" ] |
| sources = [ |
| "blocked_popup_tab_helper.h", |
| "blocked_popup_tab_helper.mm", |
| "certificate_policy_app_agent.h", |
| "certificate_policy_app_agent.mm", |
| "dom_altering_lock.h", |
| "dom_altering_lock.mm", |
| "error_page_controller_bridge.h", |
| "error_page_controller_bridge.mm", |
| "error_page_util.h", |
| "error_page_util.mm", |
| "invalid_url_tab_helper.h", |
| "invalid_url_tab_helper.mm", |
| "load_timing_tab_helper.h", |
| "load_timing_tab_helper.mm", |
| "repost_form_tab_helper.h", |
| "repost_form_tab_helper.mm", |
| "sad_tab_tab_helper.h", |
| "sad_tab_tab_helper.mm", |
| "web_navigation_browser_agent.h", |
| "web_navigation_browser_agent.mm", |
| "web_navigation_ntp_delegate.h", |
| "web_navigation_util.h", |
| "web_navigation_util.mm", |
| ] |
| deps = [ |
| ":feature_flags", |
| ":page_placeholder", |
| ":tab_helper_delegates", |
| "//base", |
| "//components/content_settings/core/browser", |
| "//components/error_page/common", |
| "//components/feature_engagement/public", |
| "//components/pref_registry", |
| "//components/resources:components_resources_grit", |
| "//components/resources:dev_ui_components_resources_grit", |
| "//components/search_engines", |
| "//components/strings", |
| "//components/ukm/ios:ukm_url_recorder", |
| "//ios/chrome/app/application_delegate:observing_app_state_agent", |
| "//ios/chrome/app/strings:ios_strings_grit", |
| "//ios/chrome/browser", |
| "//ios/chrome/browser/browser_state", |
| "//ios/chrome/browser/content_settings", |
| "//ios/chrome/browser/feature_engagement", |
| "//ios/chrome/browser/infobars", |
| "//ios/chrome/browser/infobars:public", |
| "//ios/chrome/browser/main:public", |
| "//ios/chrome/browser/ntp", |
| "//ios/chrome/browser/ui/commands", |
| "//ios/chrome/browser/ui/elements", |
| "//ios/chrome/browser/ui/fullscreen", |
| "//ios/chrome/browser/ui/util", |
| "//ios/chrome/browser/web_state_list", |
| "//ios/chrome/common/ui/util", |
| "//ios/components/ui_util", |
| "//ios/components/webui:url_constants", |
| "//ios/net", |
| "//ios/web", |
| "//ios/web/common", |
| "//ios/web/common:user_agent", |
| "//ios/web/public/js_messaging", |
| "//ios/web/public/security", |
| "//ios/web/public/session", |
| "//services/metrics/public/cpp:ukm_builders", |
| "//ui/base", |
| "//url", |
| ] |
| public_deps = [ "//components/infobars/core" ] |
| } |
| |
| source_set("delegate") { |
| configs += [ "//build/config/compiler:enable_arc" ] |
| sources = [ |
| "web_state_delegate_browser_agent.h", |
| "web_state_delegate_browser_agent.mm", |
| ] |
| deps = [ |
| ":tab_helper_delegates", |
| ":web", |
| "//base", |
| "//components/url_param_filter/core", |
| "//ios/chrome/browser/main:public", |
| "//ios/chrome/browser/overlays", |
| "//ios/chrome/browser/overlays/public/web_content_area", |
| "//ios/chrome/browser/snapshots", |
| "//ios/chrome/browser/ui/context_menu", |
| "//ios/chrome/browser/ui/dialogs:dialogs_internal", |
| "//ios/chrome/browser/url_loading", |
| "//ios/chrome/browser/url_loading:url_loading_params_header", |
| "//ios/chrome/browser/web_state_list", |
| "//ios/chrome/browser/web_state_list:agents", |
| "//ios/components/security_interstitials", |
| "//ios/web/public", |
| "//url", |
| ] |
| |
| frameworks = [ |
| "UIKit.framework", |
| "Foundation.framework", |
| ] |
| } |
| |
| source_set("page_placeholder") { |
| configs += [ "//build/config/compiler:enable_arc" ] |
| sources = [ |
| "page_placeholder_tab_helper.h", |
| "page_placeholder_tab_helper.mm", |
| ] |
| deps = [ |
| "//base", |
| "//ios/chrome/browser/snapshots", |
| "//ios/chrome/browser/ui/elements", |
| "//ios/chrome/browser/ui/util", |
| "//ios/chrome/common/ui/util", |
| "//ios/net", |
| "//ios/web", |
| ] |
| } |
| |
| source_set("tab_helper_delegates") { |
| configs += [ "//build/config/compiler:enable_arc" ] |
| sources = [ |
| "repost_form_tab_helper_delegate.h", |
| "sad_tab_tab_helper_delegate.h", |
| "web_state_container_view_provider.h", |
| ] |
| deps = [ "//ios/web/public" ] |
| } |
| |
| source_set("unit_tests") { |
| configs += [ "//build/config/compiler:enable_arc" ] |
| testonly = true |
| sources = [ |
| "certificate_policy_app_agent_unittest.mm", |
| "error_page_util_unittest.mm", |
| "invalid_url_tab_helper_unittest.mm", |
| "load_timing_tab_helper_unittest.mm", |
| "page_placeholder_tab_helper_unittest.mm", |
| "repost_form_tab_helper_unittest.mm", |
| "sad_tab_tab_helper_unittest.mm", |
| "web_navigation_browser_agent_unittest.mm", |
| "web_navigation_util_unittest.mm", |
| "web_state_delegate_browser_agent_unittest.mm", |
| ] |
| deps = [ |
| ":delegate", |
| ":page_placeholder", |
| ":tab_helper_delegates", |
| ":web", |
| "//base", |
| "//base/test:test_support", |
| "//components/search_engines", |
| "//components/strings:components_strings_grit", |
| "//components/sync_preferences:sync_preferences", |
| "//components/sync_preferences:test_support", |
| "//ios/chrome/app:app_internal", |
| "//ios/chrome/app/application_delegate:application_delegate_internal", |
| "//ios/chrome/browser", |
| "//ios/chrome/browser/browser_state:test_support", |
| "//ios/chrome/browser/main", |
| "//ios/chrome/browser/main:test_support", |
| "//ios/chrome/browser/ntp", |
| "//ios/chrome/browser/overlays", |
| "//ios/chrome/browser/overlays/public/web_content_area", |
| "//ios/chrome/browser/prefs:browser_prefs", |
| "//ios/chrome/browser/snapshots", |
| "//ios/chrome/browser/ui/util", |
| "//ios/chrome/browser/web:feature_flags", |
| "//ios/chrome/browser/web_state_list", |
| "//ios/chrome/browser/web_state_list:agents", |
| "//ios/chrome/test:test_support", |
| "//ios/net", |
| "//ios/net:test_support", |
| "//ios/web", |
| "//ios/web/public/security", |
| "//ios/web/public/session", |
| "//ios/web/public/test", |
| "//ios/web/public/test/fakes", |
| "//ios/web/public/test/http_server", |
| "//net:test_support", |
| "//services/network:test_support", |
| "//testing/gmock", |
| "//testing/gtest", |
| "//third_party/ocmock", |
| "//ui/base", |
| "//url:url", |
| ] |
| } |
| |
| optimize_js("language_detection_js") { |
| primary_script = |
| "//components/translate/ios/browser/resources/language_detection.js" |
| sources = |
| [ "//components/translate/ios/browser/resources/language_detection.js" ] |
| } |
| |
| source_set("web_internal") { |
| configs += [ "//build/config/compiler:enable_arc" ] |
| sources = [ |
| "chrome_web_client.h", |
| "chrome_web_client.mm", |
| ] |
| deps = [ |
| ":language_detection_js", |
| ":web", |
| "//base", |
| "//components/autofill/ios/browser", |
| "//components/autofill/ios/form_util:form_handler_feature", |
| "//components/content_settings/core/browser", |
| "//components/dom_distiller/core", |
| "//components/google/core/common", |
| "//components/password_manager/core/common:features", |
| "//components/password_manager/ios:password_manager_feature", |
| "//components/payments/core", |
| "//components/prefs", |
| "//components/resources", |
| "//components/strings", |
| "//components/version_info", |
| "//ios/chrome/app/resources:ios_resources", |
| "//ios/chrome/app/strings", |
| "//ios/chrome/browser", |
| "//ios/chrome/browser:browser_impl", |
| "//ios/chrome/browser/browser_state", |
| "//ios/chrome/browser/content_settings", |
| "//ios/chrome/browser/follow:javascript_feature", |
| "//ios/chrome/browser/https_upgrades", |
| "//ios/chrome/browser/link_to_text", |
| "//ios/chrome/browser/ntp", |
| "//ios/chrome/browser/passwords", |
| "//ios/chrome/browser/prerender", |
| "//ios/chrome/browser/reading_list", |
| "//ios/chrome/browser/safe_browsing", |
| "//ios/chrome/browser/search_engines", |
| "//ios/chrome/browser/ssl", |
| "//ios/chrome/browser/ui:feature_flags", |
| "//ios/chrome/browser/ui/elements", |
| "//ios/chrome/browser/ui/infobars/coordinators", |
| "//ios/chrome/browser/ui/util", |
| "//ios/chrome/browser/web:feature_flags", |
| "//ios/chrome/browser/web/font_size", |
| "//ios/chrome/browser/web/image_fetch", |
| "//ios/chrome/browser/web/java_script_console", |
| "//ios/chrome/browser/web/print", |
| "//ios/chrome/browser/web/session_state", |
| "//ios/chrome/browser/web/web_performance_metrics", |
| "//ios/components/security_interstitials", |
| "//ios/components/security_interstitials/https_only_mode", |
| "//ios/components/security_interstitials/lookalikes", |
| "//ios/components/security_interstitials/safe_browsing", |
| "//ios/components/webui:url_constants", |
| "//ios/net", |
| "//ios/public/provider/chrome/browser/url_rewriters:url_rewriters_api", |
| "//ios/web", |
| "//ios/web/common", |
| "//ios/web/common:user_agent", |
| "//ios/web/public", |
| "//ios/web/public/js_messaging", |
| "//net", |
| "//services/metrics/public/cpp:metrics_cpp", |
| "//ui/base", |
| "//ui/gfx", |
| "//url", |
| ] |
| frameworks = [ |
| "UIKit.framework", |
| "Foundation.framework", |
| ] |
| } |
| |
| source_set("unit_tests_internal") { |
| configs += [ "//build/config/compiler:enable_arc" ] |
| testonly = true |
| sources = [ |
| "blocked_popup_tab_helper_unittest.mm", |
| "chrome_web_client_unittest.mm", |
| ] |
| deps = [ |
| ":feature_flags", |
| ":web_internal", |
| "//base", |
| "//base/test:test_support", |
| "//components/captive_portal/core", |
| "//components/content_settings/core/browser", |
| "//components/infobars/core", |
| "//components/lookalikes/core", |
| "//components/payments/core", |
| "//components/safe_browsing/ios/browser:allow_list", |
| "//components/security_interstitials/core:unsafe_resource", |
| "//components/strings:components_strings_grit", |
| "//components/version_info", |
| "//ios/chrome/browser", |
| "//ios/chrome/browser/browser_state:test_support", |
| "//ios/chrome/browser/content_settings:content_settings", |
| "//ios/chrome/browser/find_in_page", |
| "//ios/chrome/browser/infobars", |
| "//ios/chrome/browser/infobars:public", |
| "//ios/chrome/browser/passwords", |
| "//ios/chrome/browser/reading_list", |
| "//ios/chrome/browser/safe_browsing", |
| "//ios/chrome/browser/ssl", |
| "//ios/chrome/browser/web", |
| "//ios/chrome/test/fakes", |
| "//ios/components/security_interstitials", |
| "//ios/components/security_interstitials/https_only_mode", |
| "//ios/components/security_interstitials/lookalikes", |
| "//ios/components/security_interstitials/safe_browsing", |
| "//ios/net", |
| "//ios/web/common:features", |
| "//ios/web/common:web_view_creation_util", |
| "//ios/web/public/test", |
| "//ios/web/public/test/fakes", |
| "//net", |
| "//net:test_support", |
| "//services/network:test_support", |
| "//services/network/public/mojom", |
| "//testing/gtest", |
| "//third_party/ocmock", |
| "//ui/base", |
| "//url", |
| ] |
| } |
| |
| source_set("constants") { |
| configs += [ "//build/config/compiler:enable_arc" ] |
| sources = [ |
| "lookalike_url_constants.h", |
| "lookalike_url_constants.mm", |
| ] |
| } |
| |
| source_set("eg_test_support+eg2") { |
| configs += [ |
| "//build/config/compiler:enable_arc", |
| "//build/config/ios:xctest_config", |
| ] |
| testonly = true |
| |
| sources = [ |
| "lookalike_url_app_interface.h", |
| "lookalike_url_app_interface_stub.mm", |
| "progress_indicator_app_interface.h", |
| "progress_indicator_app_interface_stub.mm", |
| ] |
| |
| deps = [ |
| "//ios/chrome/test/earl_grey:eg_test_support+eg2", |
| "//ios/third_party/earl_grey2:test_lib", |
| ] |
| } |
| |
| source_set("eg_app_support+eg2") { |
| configs += [ |
| "//build/config/compiler:enable_arc", |
| "//build/config/ios:xctest_config", |
| ] |
| testonly = true |
| |
| sources = [ |
| "lookalike_url_app_interface.h", |
| "lookalike_url_app_interface.mm", |
| "progress_indicator_app_interface.h", |
| "progress_indicator_app_interface.mm", |
| ] |
| |
| deps = [ |
| ":constants", |
| "//base", |
| "//components/content_settings/core/browser", |
| "//components/lookalikes/core", |
| "//ios/chrome/browser/browser_state", |
| "//ios/chrome/test/app:test_support", |
| "//ios/components/security_interstitials/lookalikes", |
| "//ios/testing/earl_grey:eg_app_support+eg2", |
| "//ios/third_party/earl_grey2:app_framework+link", |
| "//ios/third_party/material_components_ios", |
| "//ios/web/public", |
| "//net", |
| ] |
| } |
| |
| source_set("eg2_tests") { |
| configs += [ |
| "//build/config/compiler:enable_arc", |
| "//build/config/ios:xctest_config", |
| ] |
| testonly = true |
| |
| sources = [ |
| "browsing_egtest.mm", |
| "browsing_prevent_default_egtest.mm", |
| "cache_egtest.mm", |
| "child_window_open_by_dom_egtest.mm", |
| "content_mode_egtest.mm", |
| "error_page_egtest.mm", |
| "forms_egtest.mm", |
| "http_auth_egtest.mm", |
| "js_print_egtest.mm", |
| "lookalike_url_egtest.mm", |
| "navigation_egtest.mm", |
| "progress_indicator_egtest.mm", |
| "push_and_replace_state_navigation_egtest.mm", |
| "restore_egtest.mm", |
| "ssl_egtest.mm", |
| "stop_loading_egtest.mm", |
| "tab_order_egtest.mm", |
| "visible_url_egtest.mm", |
| "web_share_egtest.mm", |
| "window_open_by_dom_egtest.mm", |
| ] |
| |
| deps = [ |
| ":constants", |
| ":eg_test_support+eg2", |
| "//components/content_settings/core/common", |
| "//components/omnibox/common", |
| "//components/security_interstitials/core", |
| "//components/strings", |
| "//components/url_formatter", |
| "//components/version_info:version_info", |
| "//ios/chrome/app/strings", |
| "//ios/chrome/browser:chrome_url_constants", |
| "//ios/chrome/browser/metrics:eg_test_support+eg2", |
| "//ios/chrome/browser/prefs:pref_names", |
| "//ios/chrome/browser/ui/infobars/banners:public", |
| "//ios/chrome/browser/ui/popup_menu:constants", |
| "//ios/chrome/browser/ui/start_surface:feature_flags", |
| "//ios/chrome/browser/web:feature_flags", |
| "//ios/chrome/test:eg_test_support+eg2", |
| "//ios/chrome/test/earl_grey:eg_test_support+eg2", |
| "//ios/net:test_support", |
| "//ios/testing:embedded_test_server_support", |
| "//ios/testing/earl_grey:eg_test_support+eg2", |
| "//ios/third_party/earl_grey2:test_lib", |
| "//ios/web/common:features", |
| "//ios/web/public/test:element_selector", |
| "//ios/web/public/test/http_server", |
| "//net:test_support", |
| "//ui/base", |
| "//url", |
| ] |
| |
| frameworks = [ "UIKit.framework" ] |
| } |
| |
| source_set("feature_flags") { |
| configs += [ "//build/config/compiler:enable_arc" ] |
| sources = [ |
| "features.cc", |
| "features.h", |
| ] |
| deps = [ "//base" ] |
| } |