# 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/js_compile.gni") source_set("web") { configs += [ "//build/config/compiler:enable_arc" ] sources = [ "dom_altering_lock.h", "dom_altering_lock.mm", "legacy_mailto_url_rewriter.h", "legacy_mailto_url_rewriter.mm", "mailto_handler.h", "mailto_handler.mm", "mailto_handler_gmail.h", "mailto_handler_gmail.mm", "mailto_handler_inbox.h", "mailto_handler_inbox.mm", "mailto_handler_system_mail.h", "mailto_handler_system_mail.mm", "mailto_url_rewriter.h", "mailto_url_rewriter.mm", "navigation_manager_util.h", "navigation_manager_util.mm", "network_activity_indicator_tab_helper.h", "network_activity_indicator_tab_helper.mm", "nullable_mailto_url_rewriter.h", "nullable_mailto_url_rewriter.mm", "page_placeholder_tab_helper.h", "page_placeholder_tab_helper.mm", "repost_form_tab_helper.h", "repost_form_tab_helper.mm", "sad_tab_tab_helper.h", "sad_tab_tab_helper.mm", "tab_id_tab_helper.h", "tab_id_tab_helper.mm", ] deps = [ ":features", ":tab_helper_delegates", "//base", "//components/strings", "//ios/chrome/app/strings:ios_strings_grit", "//ios/chrome/browser", "//ios/chrome/browser/ui", "//ios/chrome/browser/ui/commands:commands", "//ios/chrome/browser/ui/util:util", "//ios/web", "//ui/base", "//url", ] } source_set("features") { configs += [ "//build/config/compiler:enable_arc" ] sources = [ "features.h", "features.mm", ] deps = [ "//base", ] } source_set("tab_helper_delegates") { configs += [ "//build/config/compiler:enable_arc" ] sources = [ "page_placeholder_tab_helper_delegate.h", "repost_form_tab_helper_delegate.h", "sad_tab_tab_helper_delegate.h", ] } source_set("unit_tests") { configs += [ "//build/config/compiler:enable_arc" ] testonly = true sources = [ "legacy_mailto_url_rewriter_unittest.mm", "mailto_handler_gmail_unittest.mm", "mailto_handler_inbox_unittest.mm", "mailto_handler_system_mail_unittest.mm", "mailto_handler_unittest.mm", "navigation_manager_util_unittest.mm", "network_activity_indicator_tab_helper_unittest.mm", "nullable_mailto_url_rewriter_unittest.mm", "page_placeholder_tab_helper_unittest.mm", "repost_form_tab_helper_unittest.mm", "sad_tab_tab_helper_unittest.mm", "tab_id_tab_helper_unittest.mm", ] deps = [ ":tab_helper_delegates", ":test_support", ":web", "//base:base", "//base/test:test_support", "//ios/chrome/browser/browser_state:test_support", "//ios/chrome/test:test_support", "//ios/web:web", "//ios/web/public/test", "//ios/web/public/test/fakes", "//testing/gtest", "//third_party/ocmock", "//ui/base:base", "//url:url", ] } js_compile_bundle("chrome_bundle") { closure_entry_point = "__crWeb.chromeBundle" sources = [ "resources/chrome_bundle.js", "resources/print.js", ] deps = [ ":credential_manager", ":payment_request", ] } js_compile_unchecked("payment_request") { sources = [ "resources/payment_request.js", ] } js_compile_checked("credential_manager") { sources = [ "resources/credential_manager.js", ] } source_set("web_internal") { configs += [ "//build/config/compiler:enable_arc" ] sources = [ "blocked_popup_tab_helper.h", "blocked_popup_tab_helper.mm", "chrome_web_client.h", "chrome_web_client.mm", "error_page_content.h", "error_page_content.mm", "error_page_generator.h", "error_page_generator.mm", "external_app_launcher.h", "external_app_launcher.mm", "passkit_dialog_provider.h", "print_tab_helper.h", "print_tab_helper.mm", "web_state_printer.h", ] deps = [ ":chrome_bundle", ":features", "//base", "//components/content_settings/core/browser", "//components/dom_distiller/core", "//components/error_page/common", "//components/infobars/core", "//components/payments/core", "//components/prefs", "//components/resources", "//components/strings", "//components/task_scheduler_util/browser", "//components/version_info", "//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/infobars", "//ios/chrome/browser/passwords", "//ios/chrome/browser/ssl", "//ios/chrome/browser/tabs", "//ios/chrome/browser/ui:ui_util", "//ios/chrome/browser/ui/commands", "//ios/chrome/browser/ui/external_app", "//ios/chrome/browser/ui/static_content", "//ios/chrome/browser/web", "//ios/public/provider/chrome/browser", "//ios/public/provider/chrome/browser/voice", "//ios/third_party/material_components_ios", "//ios/web", "//ios/web:user_agent", "//net", "//ui/base", "//ui/gfx", "//url", ] libs = [ "UIKit.framework", "Foundation.framework", ] } source_set("test_support") { configs += [ "//build/config/compiler:enable_arc" ] testonly = true sources = [ "chrome_web_test.h", "chrome_web_test.mm", "fake_mailto_handler_helpers.h", "fake_mailto_handler_helpers.mm", ] deps = [ "//components/password_manager/core/browser:test_support", "//ios/chrome/browser/browser_state:test_support", "//ios/chrome/browser/passwords", "//ios/chrome/browser/ui:ui_internal", "//ios/chrome/browser/web", "//ios/web", "//ios/web/public/test", ] } 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", "error_page_generator_unittest.mm", "external_app_launcher_unittest.mm", ] deps = [ ":test_support", ":web_internal", "//base", "//base/test:test_support", "//components/content_settings/core/browser", "//components/infobars/core", "//components/payments/core", "//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/passwords", "//ios/chrome/browser/ui", "//ios/web", "//ios/web/public/test", "//ios/web/public/test/fakes", "//net", "//testing/gtest", "//third_party/ocmock", "//url", ] } source_set("eg_tests") { configs += [ "//build/config/compiler:enable_arc" ] testonly = true sources = [ "browsing_egtest.mm", "browsing_prevent_default_egtest.mm", "cache_egtest.mm", "child_window_open_by_dom_egtest.mm", "forms_egtest.mm", "http_auth_egtest.mm", "js_print_egtest.mm", "navigation_egtest.mm", "progress_indicator_egtest.mm", "push_and_replace_state_navigation_egtest.mm", "stop_loading_egtest.mm", "visible_url_egtest.mm", "window_open_by_dom_egtest.mm", ] deps = [ "//base", "//base/test:test_support", "//components/content_settings/core/browser", "//components/content_settings/core/common", "//components/strings", "//components/version_info:version_info", "//ios/chrome/app/strings", "//ios/chrome/browser", "//ios/chrome/browser/browser_state", "//ios/chrome/browser/content_settings", "//ios/chrome/browser/ui", "//ios/chrome/browser/ui/commands", "//ios/chrome/test/app:test_support", "//ios/chrome/test/earl_grey:test_support", "//ios/testing:ios_test_support", "//ios/testing/earl_grey:earl_grey_support", "//ios/third_party/earl_grey", "//ios/third_party/material_components_ios", "//ios/web:earl_grey_test_support", "//ios/web/public/test", "//ios/web/public/test/http_server", "//net", "//net:test_support", "//ui/base", "//url", ] libs = [ "UIKit.framework", "XCTest.framework", ] } source_set("perf_tests") { configs += [ "//build/config/compiler:enable_arc" ] testonly = true sources = [ "early_page_script_perftest.mm", ] deps = [ "//base", "//base/test:test_support", "//ios/chrome/browser/browser_state:test_support", "//ios/chrome/test/base:perf_test_support", "//ios/web", "//ios/web/public/test", ] libs = [ "WebKit.framework" ] }