# 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", "error_page_util.h", "error_page_util.mm", "font_size_tab_helper.h", "font_size_tab_helper.mm", "image_fetch_tab_helper.h", "image_fetch_tab_helper.mm", "load_timing_tab_helper.h", "load_timing_tab_helper.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_manager.h", "mailto_handler_manager.mm", "mailto_handler_system_mail.h", "mailto_handler_system_mail.mm", "network_activity_indicator_tab_helper.h", "network_activity_indicator_tab_helper.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", ] deps = [ ":feature_flags", ":tab_helper_delegates", "//base", "//components/error_page/common", "//components/resources:components_resources_grit", "//components/strings", "//ios/chrome/app/strings:ios_strings_grit", "//ios/chrome/browser", "//ios/chrome/browser/browser_state", "//ios/chrome/browser/snapshots", "//ios/chrome/browser/ui", "//ios/chrome/browser/ui/commands:commands", "//ios/chrome/browser/ui/fullscreen", "//ios/chrome/browser/ui/util:util", "//ios/net", "//ios/web", "//ui/base", "//url", ] public_deps = [ ":tab_id_tab_helper", ] } source_set("tab_id_tab_helper") { sources = [ "tab_id_tab_helper.h", "tab_id_tab_helper.mm", ] deps = [ "//base", "//ios/web/public", ] configs += [ "//build/config/compiler:enable_arc" ] } source_set("tab_helper_delegates") { configs += [ "//build/config/compiler:enable_arc" ] sources = [ "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 = [ "error_page_util_unittest.mm", "font_size_js_unittest.mm", "font_size_tab_helper_unittest.mm", "image_fetch_js_unittest.mm", "image_fetch_tab_helper_unittest.mm", "load_timing_tab_helper_unittest.mm", "mailto_handler_gmail_unittest.mm", "mailto_handler_inbox_unittest.mm", "mailto_handler_manager_unittest.mm", "mailto_handler_system_mail_unittest.mm", "mailto_handler_unittest.mm", "network_activity_indicator_tab_helper_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 = [ ":accessibility", ":image_fetch", ":tab_helper_delegates", ":test_support", ":web", "//base:base", "//base/test:test_support", "//components/strings:components_strings_grit", "//ios/chrome/browser/browser_state:test_support", "//ios/chrome/browser/snapshots", "//ios/chrome/test:test_support", "//ios/web", "//ios/web/public/test", "//ios/web/public/test/fakes", "//ios/web/public/test/http_server", "//net:test_support", "//testing/gmock", "//testing/gtest", "//third_party/ocmock", "//ui/base:base", "//url:url", ] } js_compile_bundle("chrome_bundle_all_frames") { closure_entry_point = "__crWeb.chromeBundleAllFrames" sources = [ "//components/autofill/ios/form_util/resources/form.js", "resources/accessibility.js", "resources/chrome_bundle_all_frames.js", ] } js_compile_bundle("chrome_bundle_main_frame") { closure_entry_point = "__crWeb.chromeBundleMainFrame" sources = [ "//components/autofill/ios/browser/resources/autofill_controller.js", "//components/autofill/ios/form_util/resources/fill.js", "//ios/chrome/browser/passwords/resources/password_controller.js", "resources/chrome_bundle_main_frame.js", "resources/image_fetch.js", "resources/print.js", ] deps = [ ":credential_manager", ":payment_request", ] } js_compile_checked("payment_request") { sources = [ "resources/payment_request.js", ] } js_compile_checked("credential_manager") { sources = [ "resources/credential_manager.js", ] } js_compile_checked("accessibility") { sources = [ "resources/accessibility.js", ] } js_compile_checked("image_fetch") { sources = [ "resources/image_fetch.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", "print_tab_helper.h", "print_tab_helper.mm", "web_state_printer.h", ] deps = [ ":chrome_bundle_all_frames", ":chrome_bundle_main_frame", "//base", "//components/content_settings/core/browser", "//components/dom_distiller/core", "//components/infobars/core", "//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/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/static_content", "//ios/chrome/browser/unzip", "//ios/chrome/browser/web", "//ios/public/provider/chrome/browser", "//ios/public/provider/chrome/browser/voice", "//ios/web", "//ios/web/public", "//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", ] 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/chrome/browser/web", "//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", "error_page_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/common", "//components/strings", "//components/version_info:version_info", "//ios/chrome/app/strings", "//ios/chrome/browser", "//ios/chrome/browser/browser_state", "//ios/chrome/browser/ui", "//ios/chrome/browser/ui/commands", "//ios/chrome/browser/ui/popup_menu:constants", "//ios/chrome/test:test_support", "//ios/chrome/test/app:test_support", "//ios/chrome/test/earl_grey:test_support", "//ios/testing:embedded_test_server_support", "//ios/testing/earl_grey:earl_grey_support", "//ios/third_party/earl_grey:earl_grey+link", "//ios/third_party/material_components_ios", "//ios/web", "//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" ] } source_set("feature_flags") { configs += [ "//build/config/compiler:enable_arc" ] sources = [ "features.cc", "features.h", ] deps = [ "//base", ] }