diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2017-04-05 14:08:31 +0200 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2017-04-11 07:46:53 +0000 |
commit | 6a4cabb866f66d4128a97cdc6d9d08ce074f1247 (patch) | |
tree | ab00f70a5e89278d6a0d16ff0c42578dc4d84a2d /chromium/ios | |
parent | e733310db58160074f574c429d48f8308c0afe17 (diff) | |
download | qtwebengine-chromium-6a4cabb866f66d4128a97cdc6d9d08ce074f1247.tar.gz |
BASELINE: Update Chromium to 57.0.2987.144
Change-Id: I29db402ff696c71a04c4dbaec822c2e53efe0267
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
Diffstat (limited to 'chromium/ios')
181 files changed, 9760 insertions, 439 deletions
diff --git a/chromium/ios/BUILD.gn b/chromium/ios/BUILD.gn index 218df283dc0..79a7f396389 100644 --- a/chromium/ios/BUILD.gn +++ b/chromium/ios/BUILD.gn @@ -26,22 +26,21 @@ group("all") { ] } else { deps = [ - "//ios/chrome:ios_chrome_unittests", - "//ios/chrome/app", - "//ios/chrome/common", - "//ios/chrome/common/physical_web", - "//ios/chrome/share_extension:packed_resources", - "//ios/chrome/today_extension:packed_resources", - "//ios/net:ios_net_unittests", - "//ios/public/provider/chrome/browser", - "//ios/public/provider/web", - "//ios/testing:ocmock_support_unittest", - "//ios/third_party/earl_grey", - "//ios/web:earl_grey_test_support", - "//ios/web:ios_web_inttests", - "//ios/web:ios_web_unittests", + # List all the targets that need to be build on iOS by default. + "//ios/chrome/app:chrome", + "//ios/clean/chrome/app:chrome_clean_skeleton", + "//ios/showcase", "//ios/web/shell:ios_web_shell", - "//ios/web/shell/test:ios_web_shell_egtests", + + # List all the test targets that need to be build on iOS by default. + "//ios/chrome/test:all_tests", + "//ios/chrome/test/earl_grey:all_tests", + "//ios/clean/chrome/test:all_tests", + "//ios/net:all_tests", + "//ios/showcase:all_tests", + "//ios/testing:all_tests", + "//ios/web:all_tests", + "//ios/web/shell/test:all_tests", ] } } diff --git a/chromium/ios/build/chrome_build.gni b/chromium/ios/build/chrome_build.gni new file mode 100644 index 00000000000..af4b46ce0a7 --- /dev/null +++ b/chromium/ios/build/chrome_build.gni @@ -0,0 +1,60 @@ +# 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("//build/config/chrome_build.gni") +import("//build/config/ios/ios_sdk.gni") +import("//build/config/mac/symbols.gni") + +declare_args() { + # Enable today extension. + ios_enable_today_extension = true + ios_enable_widget_extension = false + + # Enable share extension. + ios_enable_share_extension = true + + # Value of the encryption export compliance code. See "Cryptography and + # U.S. Export Compliance" in "Submitting the App to App Review" in the + # Apple developer documentation (https://goo.gl/yv1xEF). + ios_encryption_export_compliance_code = "" + + # List of plist templates to merge when generating chrome Info.plist. + ios_chrome_info_plist_additions = [] + + # List of plist templates to merge when generating chrome entitlements. + ios_chrome_entitlements_additions = [] +} +assert(!(ios_enable_today_extension && ios_enable_widget_extension), + "Both today extensions cannot be enabled simultaneously.") + +# Configure whether breakpad support is enabled. +breakpad_enabled = is_official_build && is_chrome_branded + +if (breakpad_enabled) { + breakpad_enabled_as_int = 1 + is_official_release = enable_dsyms && !use_ios_simulator && + current_toolchain == default_toolchain +} else { + breakpad_enabled_as_int = 0 + is_official_release = false +} + +chromium_bundle_id = "chrome.ios.herebedragons" +chromium_handoff_id = "$ios_app_bundle_id_prefix.chrome.handoff" + +if (is_chrome_branded) { + chromium_short_name = "Chrome" + url_channel_scheme = "googlechrome-dev" + url_secure_scheme = "googlechromes" + url_ssoauth_scheme = "$ios_app_bundle_id_prefix.sso.chrome.stable" + url_unsecure_scheme = "googlechrome" + url_x_callback_scheme = "googlechrome-x-callback" +} else { + chromium_short_name = "Chromium" + url_channel_scheme = "chromium-dev" + url_secure_scheme = "chromiums" + url_ssoauth_scheme = "$ios_app_bundle_id_prefix.sso.chromium" + url_unsecure_scheme = "chromium" + url_x_callback_scheme = "chromium-x-callback" +} diff --git a/chromium/ios/chrome/BUILD.gn b/chromium/ios/chrome/BUILD.gn deleted file mode 100644 index 9c650c57441..00000000000 --- a/chromium/ios/chrome/BUILD.gn +++ /dev/null @@ -1,56 +0,0 @@ -# Copyright 2015 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/build/config.gni") -import("//testing/test.gni") - -test("ios_chrome_unittests") { - deps = [ - # Ensure that all unit tests are run. - "//ios/chrome/test:run_all_unittests", - - # Ensure that packed resources are available (it should be a dependency - # of //ios/chrome/app however, Chrome on iOS uses different resources, - # so the dependency cannot be added there). - # TODO(crbug.com/653086): find a way to fix those dependency as part of - # building Chromium for iOS, and then remove the dependency. - "//ios/chrome/app/resources:packed_resources", - - # Add unit_tests target here. - "//ios/chrome/app:unit_tests", - "//ios/chrome/app/application_delegate:unit_tests", - "//ios/chrome/browser:unit_tests", - "//ios/chrome/browser/browsing_data:unit_tests", - "//ios/chrome/browser/device_sharing:unit_tests", - "//ios/chrome/browser/favicon:unit_tests", - "//ios/chrome/browser/geolocation:unit_tests", - "//ios/chrome/browser/itunes_links:unit_tests", - "//ios/chrome/browser/metrics:unit_tests", - "//ios/chrome/browser/net:unit_tests", - "//ios/chrome/browser/passwords:unit_tests", - "//ios/chrome/browser/reading_list:unit_tests", - "//ios/chrome/browser/snapshots:unit_tests", - "//ios/chrome/browser/ssl:unit_tests", - "//ios/chrome/browser/suggestions:unit_tests", - "//ios/chrome/browser/sync:unit_tests", - "//ios/chrome/browser/translate:unit_tests", - "//ios/chrome/browser/u2f:unit_tests", - "//ios/chrome/browser/ui:unit_tests", - "//ios/chrome/browser/ui/alert_coordinator:unit_tests", - "//ios/chrome/browser/ui/commands:unit_tests", - "//ios/chrome/browser/ui/context_menu:unit_tests", - "//ios/chrome/browser/ui/dialogs:unit_tests", - "//ios/chrome/browser/ui/elements:unit_tests", - "//ios/chrome/browser/ui/keyboard:unit_tests", - "//ios/chrome/browser/ui/voice:unit_tests", - "//ios/chrome/browser/update_client:unit_tests", - "//ios/chrome/browser/voice:unit_tests", - "//ios/chrome/browser/web_resource:unit_tests", - "//ios/chrome/browser/webp_transcode:unit_tests", - "//ios/chrome/common:unit_tests", - "//ios/chrome/test:unit_tests", - ] - - assert_no_deps = ios_assert_no_deps -} diff --git a/chromium/ios/chrome/app/BUILD.gn b/chromium/ios/chrome/app/BUILD.gn index bd7b4910597..9b17b928557 100644 --- a/chromium/ios/chrome/app/BUILD.gn +++ b/chromium/ios/chrome/app/BUILD.gn @@ -2,6 +2,12 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. +import("//build/config/ios/rules.gni") +import("//build/config/mac/base_rules.gni") +import("//build/mac/tweak_info_plist.gni") +import("//ios/build/chrome_build.gni") +import("//ios/public/provider/chrome/browser/build_config.gni") + source_set("app") { sources = [ "deferred_initialization_runner.h", @@ -13,7 +19,9 @@ source_set("app") { ] deps = [ + ":resources", "//base", + ios_packed_resources_target, ] libs = [ "Foundation.framework" ] @@ -22,13 +30,324 @@ source_set("app") { source_set("unit_tests") { testonly = true sources = [ + "chrome_app_startup_parameters_unittest.mm", + "chrome_overlay_window_testing.h", "deferred_initialization_runner_unittest.mm", + "main_application_delegate_unittest.mm", + "main_controller_unittest.mm", "safe_mode_util_unittest.cc", ] deps = [ ":app", + ":app_internal", "//base", "//base/test:test_support", + "//ios/chrome/app/application_delegate:application_delegate_internal", + "//ios/chrome/browser", + "//ios/chrome/browser/tabs", + "//ios/chrome/common/app_group", + "//ios/chrome/test/base", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/distribution", "//testing/gtest", + "//third_party/ocmock", + "//url", + ] +} + +source_set("tests_hook") { + # This target is intentionally not test-only, as the main app depends on it. + sources = [ + "tests_hook.h", + ] +} + +source_set("tests_fake_hook") { + # This target is intentionally not test-only, as the main app depends on it. + sources = [ + "tests_fake_hook.mm", + ] + deps = [ + ":tests_hook", + ] +} + +bundle_data("resources") { + visibility = [ ":app" ] + sources = [ + "resources/SafeModeCrashingModules.plist", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +tweak_info_plist("info_plist") { + info_plists = [ + "resources/Info.plist", + "resources/ChromeAddition+Info.plist", + ] + if (ios_chrome_info_plist_additions != []) { + info_plists += ios_chrome_info_plist_additions + } + if (ios_encryption_export_compliance_code != "") { + info_plists += [ "resources/EncryptionExportCompliance+Info.plist" ] + } + args = [ + "--breakpad=$breakpad_enabled_as_int", + "--branding=$chromium_short_name", + ] +} + +compile_plist("entitlements") { + format = "xml1" + plist_templates = [ "resources/Chrome.entitlements" ] + if (ios_chrome_entitlements_additions != []) { + plist_templates += ios_chrome_entitlements_additions + } + if (!ios_automatically_manage_certs) { + plist_templates += [ "resources/AssociatedDomains.entitlements" ] + } + substitutions = [ "IOS_BUNDLE_ID_PREFIX=$ios_app_bundle_id_prefix" ] + output_name = "$target_gen_dir/$chromium_short_name.entitlements" +} + +source_set("app_internal") { + sources = [ + "application_mode.h", + "chrome_app_startup_parameters.h", + "chrome_app_startup_parameters.mm", + "chrome_overlay_window.h", + "chrome_overlay_window.mm", + "main_application_delegate.h", + "main_application_delegate.mm", + "main_application_delegate_testing.h", + "main_controller.h", + "main_controller.mm", + "main_controller_private.h", + "memory_monitor.h", + "memory_monitor.mm", + "startup_tasks.h", + "startup_tasks.mm", + ] + + deps = [ + ":app", + ":tests_hook", + "//base", + "//components/bookmarks/browser", + "//components/browser_sync", + "//components/browsing_data/core", + "//components/component_updater", + "//components/content_settings/core/browser", + "//components/crash/core/common", + "//components/favicon/core", + "//components/favicon_base", + "//components/handoff", + "//components/history/core/browser", + "//components/infobars/core", + "//components/keyed_service/core", + "//components/keyed_service/ios", + "//components/metrics", + "//components/prefs", + "//components/proxy_config", + "//components/reading_list/core", + "//components/signin/core/browser", + "//components/suggestions", + "//components/sync", + "//components/url_formatter", + "//components/web_resource", + "//ios/chrome/app/application_delegate", + "//ios/chrome/app/application_delegate:application_delegate_internal", + "//ios/chrome/app/safe_mode", + "//ios/chrome/app/spotlight", + "//ios/chrome/app/startup", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser:browser_internal", + "//ios/chrome/browser/bookmarks", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/browser_state:browser_state_impl", + "//ios/chrome/browser/browsing_data", + "//ios/chrome/browser/browsing_data:browsing_data_internal", + "//ios/chrome/browser/content_settings", + "//ios/chrome/browser/crash_report", + "//ios/chrome/browser/crash_report:crash_report_internal", + "//ios/chrome/browser/favicon", + "//ios/chrome/browser/first_run", + "//ios/chrome/browser/geolocation", + "//ios/chrome/browser/geolocation:geolocation_internal", + "//ios/chrome/browser/history", + "//ios/chrome/browser/memory", + "//ios/chrome/browser/metrics", + "//ios/chrome/browser/metrics:metrics_internal", + "//ios/chrome/browser/native_app_launcher:native_app_launcher_internal", + "//ios/chrome/browser/net", + "//ios/chrome/browser/omaha", + "//ios/chrome/browser/prefs", + "//ios/chrome/browser/reading_list", + "//ios/chrome/browser/search_engines", + "//ios/chrome/browser/share_extension", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/snapshots", + "//ios/chrome/browser/suggestions", + "//ios/chrome/browser/sync", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui:ui_internal", + "//ios/chrome/browser/ui/authentication", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/contextual_search", + "//ios/chrome/browser/ui/downloads", + "//ios/chrome/browser/ui/first_run", + "//ios/chrome/browser/ui/history", + "//ios/chrome/browser/ui/main", + "//ios/chrome/browser/ui/promos", + "//ios/chrome/browser/ui/settings", + "//ios/chrome/browser/ui/stack_view", + "//ios/chrome/browser/ui/tab_switcher", + "//ios/chrome/browser/ui/tabs", + "//ios/chrome/browser/ui/util", + "//ios/chrome/browser/ui/webui:webui_internal", + "//ios/chrome/browser/upgrade", + "//ios/chrome/browser/variations:ios_chrome_ui_string_overrider_factory", + "//ios/chrome/browser/voice", + "//ios/chrome/browser/web:web_internal", + "//ios/chrome/common", + "//ios/chrome/common/app_group", + "//ios/chrome/common/app_group:main_app", + "//ios/net", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/distribution", + "//ios/public/provider/chrome/browser/native_app_launcher", + "//ios/public/provider/chrome/browser/signin", + "//ios/public/provider/chrome/browser/user_feedback", + "//ios/third_party/material_roboto_font_loader_ios", + "//ios/web", + "//ios/web/public/app", + "//mojo/edk/system", + "//net", + "//skia", + "//ui/base", + "//ui/gfx", + "//ui/resources", + "//ui/strings:ui_strings", + ] + + libs = [ + "CoreSpotlight.framework", + "MediaPlayer.framework", ] + + allow_circular_includes_from = + [ "//ios/chrome/app/application_delegate:application_delegate_internal" ] +} + +source_set("main") { + sources = [ + "chrome_exe_main.mm", + ] + + deps = [ + ":app_internal", + "//base", + "//components/crash/core/common", + "//ios/chrome/app/startup", + "//ios/chrome/browser:browser_internal", + "//ios/chrome/browser/crash_report", + "//ios/chrome/common", + "//third_party/google_toolbox_for_mac", + ] +} + +ios_app_bundle("chrome") { + output_name = chromium_short_name + + entitlements_target = ":entitlements" + info_plist_target = ":info_plist" + + deps = [ + ":main", + ":tests_fake_hook", + ] + + bundle_deps = [ "//ios/chrome/app/resources" ] + + if (current_toolchain == default_toolchain) { + if (ios_enable_today_extension) { + deps += [ ":today_extension_bundle" ] + } + if (ios_enable_widget_extension) { + deps += [ ":widget_extension_bundle" ] + } + if (ios_enable_share_extension) { + deps += [ ":share_extension_bundle" ] + } + } + + extra_substitutions = [ + "CHROMIUM_BUNDLE_ID=$chromium_bundle_id", + "CHROMIUM_HANDOFF_ID=$chromium_handoff_id", + "CHROMIUM_SHORT_NAME=$chromium_short_name", + "CHROMIUM_URL_SCHEME_1=$url_unsecure_scheme", + "CHROMIUM_URL_SCHEME_2=$url_secure_scheme", + "CHROMIUM_URL_SCHEME_3=$url_x_callback_scheme", + "CHROMIUM_URL_SCHEME_4=$url_channel_scheme", + "SSOAUTH_URL_SCHEME=$url_ssoauth_scheme", + ] + + if (ios_encryption_export_compliance_code != "") { + extra_substitutions += [ "ENCRYPTION_EXPORT_COMPLIANCE_CODE=" + + ios_encryption_export_compliance_code ] + } +} + +if (current_toolchain == default_toolchain) { + if (ios_enable_today_extension) { + bundle_data("today_extension_bundle") { + public_deps = [ + "//ios/chrome/today_extension", + ] + sources = [ + "$root_out_dir/today_extension.appex", + ] + outputs = [ + "{{bundle_plugins_dir}}/{{source_file_part}}", + ] + } + } + + if (ios_enable_widget_extension) { + bundle_data("widget_extension_bundle") { + public_deps = [ + "//ios/chrome/widget_extension", + ] + sources = [ + "$root_out_dir/widget_extension.appex", + ] + + # The output is renamed today_extension.appex so that signing in canary + # works and clobbering is not necessary when switching between this + # extension and the today extension. + # TODO(crbug.com/682230) : Rename this when widget gets its own + # mobileprovision. + outputs = [ + "{{bundle_plugins_dir}}/today_extension.appex", + ] + } + } + + if (ios_enable_share_extension) { + bundle_data("share_extension_bundle") { + public_deps = [ + "//ios/chrome/share_extension", + ] + sources = [ + "$root_out_dir/share_extension.appex", + ] + outputs = [ + "{{bundle_plugins_dir}}/{{source_file_part}}", + ] + } + } } diff --git a/chromium/ios/chrome/app/application_delegate/BUILD.gn b/chromium/ios/chrome/app/application_delegate/BUILD.gn index adea24c6587..cf22cd0b0a5 100644 --- a/chromium/ios/chrome/app/application_delegate/BUILD.gn +++ b/chromium/ios/chrome/app/application_delegate/BUILD.gn @@ -20,12 +20,136 @@ source_set("application_delegate") { source_set("unit_tests") { testonly = true sources = [ + "app_state_unittest.mm", + "background_activity_unittest.mm", "memory_warning_helper_unittest.mm", + "metrics_mediator_unittest.mm", + "url_opener_unittest.mm", + "user_activity_handler_unittest.mm", ] deps = [ ":application_delegate", + ":application_delegate_internal", + ":test_support", "//base", + "//base/test:test_support", + "//breakpad:client", + "//components/handoff", + "//components/metrics", + "//ios/chrome/app", + "//ios/chrome/app:app_internal", + "//ios/chrome/app/safe_mode", + "//ios/chrome/app/spotlight", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/crash_report", + "//ios/chrome/browser/device_sharing", + "//ios/chrome/browser/geolocation", "//ios/chrome/browser/metrics", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/u2f", + "//ios/chrome/browser/ui:ui_internal", + "//ios/chrome/browser/ui/main", + "//ios/chrome/browser/ui/settings", + "//ios/chrome/test:test_support", + "//ios/chrome/test/base", + "//ios/chrome/test/ocmock", + "//ios/public/provider/chrome/browser:test_support", + "//ios/public/provider/chrome/browser/distribution", + "//ios/public/provider/chrome/browser/user_feedback:test_support", + "//ios/testing:ocmock_support", + "//ios/web", + "//ios/web:test_support", + "//net:test_support", "//testing/gtest", + "//third_party/ocmock", + "//ui/base", + "//url", + ] + libs = [ + "CoreSpotlight.framework", + "QuartzCore.framework", + ] +} + +source_set("application_delegate_internal") { + configs += [ "//build/config/compiler:enable_arc" ] + sources = [ + "app_navigation.h", + "app_state.h", + "app_state.mm", + "background_activity.h", + "background_activity.mm", + "browser_launcher.h", + "metrics_mediator.h", + "metrics_mediator.mm", + "startup_information.h", + "tab_opening.h", + "tab_switching.h", + "url_opener.h", + "url_opener.mm", + "user_activity_handler.h", + "user_activity_handler.mm", + ] + deps = [ + ":application_delegate", + "//base", + "//components/crash/core/common", + "//components/handoff", + "//components/metrics", + "//components/prefs", + "//ios/chrome/app", + "//ios/chrome/app/safe_mode", + "//ios/chrome/app/spotlight", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/crash_report", + "//ios/chrome/browser/device_sharing", + "//ios/chrome/browser/geolocation", + "//ios/chrome/browser/metrics", + "//ios/chrome/browser/metrics:metrics_internal", + "//ios/chrome/browser/net", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/u2f", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui:ui_internal", + "//ios/chrome/browser/ui/authentication", + "//ios/chrome/browser/ui/main", + "//ios/chrome/common/app_group:main_app", + "//ios/net", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/distribution", + "//ios/public/provider/chrome/browser/user_feedback", + "//ios/web", + "//net", + "//ui/base", + "//url", + ] + libs = [ + "CoreSpotlight.framework", + "UIKit.framework", + ] +} + +source_set("test_support") { + testonly = true + sources = [ + "app_state_testing.h", + "fake_startup_information.h", + "fake_startup_information.mm", + "metrics_mediator_testing.h", + "mock_tab_opener.h", + "mock_tab_opener.mm", + ] + deps = [ + ":application_delegate_internal", + "//base", + "//base/test:test_support", + "//ios/chrome/app:app_internal", + "//ios/chrome/browser", + "//net", + "//ui/base", + "//url", ] + libs = [ "UIKit.framework" ] } diff --git a/chromium/ios/chrome/app/resources/BUILD.gn b/chromium/ios/chrome/app/resources/BUILD.gn index ba5d8676445..02f882a5465 100644 --- a/chromium/ios/chrome/app/resources/BUILD.gn +++ b/chromium/ios/chrome/app/resources/BUILD.gn @@ -2,11 +2,25 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. +import("//build/config/chrome_build.gni") +import("//build/config/ios/rules.gni") import("//build/config/locales.gni") -import("//tools/grit/grit_rule.gni") import("//ios/chrome/app/resources/ios_chrome_repack.gni") +import("//ios/chrome/tools/strings/generate_localizable_strings.gni") +import("//ios/public/provider/chrome/browser/build_config.gni") +import("//tools/grit/grit_rule.gni") -grit("resources") { +group("resources") { + public_deps = [ + ":launchscreen_xib", + ":quick_action_icons", + ":system_strings", + ios_application_icons_target, + ios_packed_resources_target, + ] +} + +grit("ios_resources") { source = "ios_resources.grd" output_dir = "$root_gen_dir/ios/chrome" use_qualified_include = true @@ -49,7 +63,7 @@ repack("repack_unscaled_resources") { "$root_gen_dir/ui/resources/webui_resources.pak", ] deps = [ - ":resources", + ":ios_resources", "//components/resources", "//ios/web:resources", "//net:net_resources", @@ -58,3 +72,70 @@ repack("repack_unscaled_resources") { output = "$target_gen_dir/resources.pak" copy_data_to_bundle = true } + +bundle_data("chromium_icons") { + sources = [ + "chromium/Icon-120.png", + "chromium/Icon-152.png", + "chromium/Icon-167.png", + "chromium/Icon-180.png", + "chromium/Icon-29.png", + "chromium/Icon-40.png", + "chromium/Icon-58.png", + "chromium/Icon-76.png", + "chromium/Icon-80.png", + "chromium/Icon-87.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +bundle_data("quick_action_icons") { + sources = [ + "quick_action_new_incognito_tab@2x.png", + "quick_action_new_incognito_tab@3x.png", + "quick_action_new_tab@2x.png", + "quick_action_new_tab@3x.png", + "quick_action_qr_scanner@2x.png", + "quick_action_qr_scanner@3x.png", + "quick_action_voice_search@2x.png", + "quick_action_voice_search@3x.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +bundle_data("launchscreen_assets") { + sources = [ + "launchscreen_images.xcassets/Contents.json", + "launchscreen_images.xcassets/launchscreen_app_logo.imageset/Contents.json", + "launchscreen_images.xcassets/launchscreen_app_logo.imageset/launchscreen_app_logo.png", + "launchscreen_images.xcassets/launchscreen_brand_name.imageset/Contents.json", + "launchscreen_images.xcassets/launchscreen_brand_name.imageset/launchscreen_brand_name.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +bundle_data_ib_file("launchscreen_xib") { + source = "LaunchScreen.xib" + deps = [ + ios_launchscreen_assets_target, + ] +} + +generate_localizable_strings("system_strings") { + config_file = "chrome_localize_strings_config.plist" + datapack_dir = get_label_info(ios_packed_resources_target, "target_gen_dir") + packed_locales = ios_packed_locales_as_mac_outputs + output_filenames = [ + "InfoPlist.strings", + "Localizable.strings", + ] + deps = [ + ios_packed_resources_target, + ] +} diff --git a/chromium/ios/chrome/app/safe_mode/BUILD.gn b/chromium/ios/chrome/app/safe_mode/BUILD.gn new file mode 100644 index 00000000000..bd5b7ea3742 --- /dev/null +++ b/chromium/ios/chrome/app/safe_mode/BUILD.gn @@ -0,0 +1,74 @@ +# 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. + +bundle_data("resources") { + sources = [ + "resources/fatal_error.png", + "resources/fatal_error@2x.png", + "resources/fatal_error@3x.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +source_set("safe_mode") { + sources = [ + "safe_mode_coordinator.h", + "safe_mode_coordinator.mm", + "safe_mode_view_controller.h", + "safe_mode_view_controller.mm", + ] + + deps = [ + ":resources", + "//base", + "//ios/chrome/app", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/crash_report", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/fancy_ui", + "//ui/gfx", + ] + + libs = [ "UIKit.framework" ] +} + +source_set("eg_tests") { + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "safe_mode_egtest.mm", + ] + deps = [ + ":safe_mode", + "//base", + "//ios/chrome/app:app_internal", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui/main", + "//ios/chrome/test/base", + "//ios/chrome/test/earl_grey:test_support", + "//ios/third_party/earl_grey", + ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "safe_mode_coordinator_unittest.mm", + "safe_mode_view_controller_unittest.mm", + ] + deps = [ + ":safe_mode", + "//base", + "//breakpad:client", + "//ios/chrome/browser/crash_report", + "//ios/chrome/test/base", + "//ios/chrome/test/ocmock", + "//testing/gtest", + "//third_party/ocmock", + ] + libs = [ "UIKit.framework" ] +} diff --git a/chromium/ios/chrome/app/spotlight/BUILD.gn b/chromium/ios/chrome/app/spotlight/BUILD.gn new file mode 100644 index 00000000000..b872afa0e1a --- /dev/null +++ b/chromium/ios/chrome/app/spotlight/BUILD.gn @@ -0,0 +1,71 @@ +# 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. + +source_set("spotlight") { + sources = [ + "actions_spotlight_manager.h", + "actions_spotlight_manager.mm", + "base_spotlight_manager.h", + "base_spotlight_manager.mm", + "bookmarks_spotlight_manager.h", + "bookmarks_spotlight_manager.mm", + "spotlight_manager.h", + "spotlight_manager.mm", + "spotlight_util.h", + "spotlight_util.mm", + "topsites_spotlight_manager.h", + "topsites_spotlight_manager.mm", + ] + deps = [ + "//base", + "//components/bookmarks/browser", + "//components/browser_sync", + "//components/favicon/core", + "//components/favicon_base", + "//components/history/core/browser", + "//components/suggestions", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/bookmarks", + "//ios/chrome/browser/favicon", + "//ios/chrome/browser/history", + "//ios/chrome/browser/suggestions", + "//ios/chrome/browser/sync", + "//ios/chrome/browser/ui/ntp:ntp_internal", + "//ios/chrome/common/app_group", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/spotlight", + "//ios/third_party/material_components_ios", + "//net", + "//skia", + "//ui/base", + "//url", + ] + libs = [ + "CoreSpotlight.framework", + "UIKit.framework", + ] +} + +source_set("unit_tests") { + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "spotlight_manager_unittest.mm", + ] + deps = [ + ":spotlight", + "//base", + "//components/bookmarks/browser", + "//components/bookmarks/test", + "//components/favicon/core", + "//components/favicon_base", + "//ios/chrome/browser/bookmarks", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/spotlight", + "//net", + "//testing/gtest", + ] + libs = [ "CoreSpotlight.framework" ] +} diff --git a/chromium/ios/chrome/app/startup/BUILD.gn b/chromium/ios/chrome/app/startup/BUILD.gn new file mode 100644 index 00000000000..71c1a1970ef --- /dev/null +++ b/chromium/ios/chrome/app/startup/BUILD.gn @@ -0,0 +1,43 @@ +# 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/public/provider/chrome/browser/build_config.gni") + +source_set("startup") { + sources = [ + "background_upload_alert.h", + "background_upload_alert.mm", + "chrome_main_starter.h", + "chrome_main_starter.mm", + "client_registration.h", + "client_registration.mm", + "ios_chrome_main.h", + "ios_chrome_main.mm", + "ios_chrome_main_delegate.h", + "ios_chrome_main_delegate.mm", + "network_stack_setup.h", + "network_stack_setup.mm", + "provider_registration.h", + "provider_registration.mm", + "register_experimental_settings.h", + "register_experimental_settings.mm", + "setup_debugging.h", + "setup_debugging.mm", + ] + + deps = [ + "//base", + "//components/crash/core/common", + "//ios/chrome/browser", + "//ios/chrome/browser:browser_internal", + "//ios/chrome/browser/web", + "//ios/chrome/browser/web:web_internal", + "//ios/net", + "//ios/public/provider/chrome/browser", + "//ios/web", + "//ios/web/public/app", + "//skia", + ios_provider_target, + ] +} diff --git a/chromium/ios/chrome/browser/BUILD.gn b/chromium/ios/chrome/browser/BUILD.gn index bdc29ea25cf..7e026166fa3 100644 --- a/chromium/ios/chrome/browser/BUILD.gn +++ b/chromium/ios/chrome/browser/BUILD.gn @@ -2,7 +2,10 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. +import("//build/buildflag_header.gni") import("//build/config/features.gni") +import("//build/config/ios/rules.gni") +import("//rlz/features/features.gni") import("//third_party/protobuf/proto_library.gni") declare_args() { @@ -19,7 +22,10 @@ declare_args() { } source_set("browser") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ + "about_flags.h", + "about_flags.mm", "app_startup_parameters.h", "app_startup_parameters.mm", "application_context.cc", @@ -73,9 +79,14 @@ source_set("browser") { "xcallback_parameters.mm", ] deps = [ + ":google_api_keys_header", + ":settings_resources", "//base", "//components/autofill/core/browser", "//components/autofill/core/common", + "//components/dom_distiller/core", + "//components/flags_ui", + "//components/flags_ui:switches", "//components/gcm_driver", "//components/handoff", "//components/keyed_service/core", @@ -88,23 +99,31 @@ source_set("browser") { "//components/pref_registry", "//components/prefs", "//components/proxy_config", + "//components/reading_list/core", + "//components/reading_list/ios", "//components/search_engines", "//components/signin/core/browser", "//components/ssl_config", + "//components/strings", + "//components/sync", "//components/translate/core/browser", "//components/url_formatter", "//components/variations", "//components/variations/service", "//components/version_info", "//components/webdata_services", + "//google_apis", + "//ios/chrome/app/strings", "//ios/chrome/browser/browser_state", "//ios/chrome/browser/sync/glue", "//ios/chrome/common", "//ios/net", "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/voice", "//ios/web", "//ios/web:user_agent", "//net", + "//rlz/features", "//url", ] allow_circular_includes_from = [ @@ -115,6 +134,7 @@ source_set("browser") { } source_set("browser_impl") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "application_context_impl.cc", "application_context_impl.h", @@ -122,7 +142,6 @@ source_set("browser_impl") { "ios_chrome_main_parts.mm", ] deps = [ - ":about_flags", ":browser", "//base", "//components/component_updater", @@ -141,7 +160,6 @@ source_set("browser_impl") { "//components/physical_web/data_source", "//components/prefs", "//components/rappor", - "//components/task_scheduler_util", "//components/translate/core/browser", "//components/update_client", "//components/variations", @@ -157,6 +175,7 @@ source_set("browser_impl") { "//ios/chrome/browser/open_from_clipboard", "//ios/chrome/browser/physical_web", "//ios/chrome/browser/prefs", + "//ios/chrome/browser/prefs:browser_prefs", "//ios/chrome/browser/services/gcm", "//ios/chrome/browser/translate", "//ios/chrome/browser/update_client", @@ -166,6 +185,7 @@ source_set("browser_impl") { "//ios/web", "//ios/web/public/app", "//net", + "//rlz/features", "//ui/base", ] @@ -174,33 +194,9 @@ source_set("browser_impl") { } } -# This is a separate target so that the 'defines' does not leak to the -# other files (which would increase the compilation time when changing -# the value). -source_set("about_flags") { - sources = [ - "about_flags.h", - "about_flags.mm", - ] - - deps = [ - ":browser", - "//base", - "//components/autofill/core/common", - "//components/dom_distiller/core", - "//components/flags_ui", - "//components/flags_ui:switches", - "//components/ntp_tiles", - "//components/strings", - "//components/sync", - "//components/variations", - "//google_apis", - "//ios/chrome/app/strings", - "//ios/web", - "//ios/web:user_agent", - ] - - defines = [ +buildflag_header("google_api_keys_header") { + header = "google_api_keys.h" + flags = [ "GOOGLE_STAGING_API_URL=\"$google_staging_api_url\"", "GOOGLE_STAGING_LSO_URL=\"$google_staging_lso_url\"", "GOOGLE_TEST_API_URL=\"$google_test_api_url\"", @@ -212,9 +208,20 @@ source_set("about_flags") { ] } +bundle_data("settings_resources") { + sources = [ + "resources/Settings.bundle/Experimental.plist", + "resources/Settings.bundle/Root.plist", + ] + outputs = [ + "{{bundle_resources_dir}}/Settings.bundle/{{source_file_part}}", + ] +} + source_set("unit_tests") { testonly = true sources = [ + "callback_counter_unittest.mm", "chrome_url_util_unittest.mm", "crash_loop_detection_util_unittest.mm", "install_time_util_unittest.mm", @@ -224,6 +231,7 @@ source_set("unit_tests") { ] deps = [ ":browser", + ":browser_internal", "//base", "//base/test:test_support", "//components/prefs", @@ -238,3 +246,13 @@ source_set("unit_tests") { "//url", ] } + +source_set("browser_internal") { + sources = [ + "callback_counter.h", + "callback_counter.mm", + ] + deps = [ + "//base", + ] +} diff --git a/chromium/ios/chrome/browser/autocomplete/BUILD.gn b/chromium/ios/chrome/browser/autocomplete/BUILD.gn index 33a957c071f..c4bad9a1359 100644 --- a/chromium/ios/chrome/browser/autocomplete/BUILD.gn +++ b/chromium/ios/chrome/browser/autocomplete/BUILD.gn @@ -15,6 +15,9 @@ source_set("autocomplete") { "shortcuts_backend_factory.h", "shortcuts_backend_factory.mm", ] + + configs += [ "//build/config/compiler:enable_arc" ] + deps = [ "//base", "//components/browser_sync", diff --git a/chromium/ios/chrome/browser/autofill/BUILD.gn b/chromium/ios/chrome/browser/autofill/BUILD.gn index 2c35bce9d77..961309903b7 100644 --- a/chromium/ios/chrome/browser/autofill/BUILD.gn +++ b/chromium/ios/chrome/browser/autofill/BUILD.gn @@ -40,3 +40,92 @@ source_set("autofill") { ] libs = [ "QuartzCore.framework" ] } + +source_set("autofill_internal") { + configs += [ "//build/config/compiler:enable_arc" ] + sources = [ + "autofill_agent.h", + "autofill_agent.mm", + "autofill_controller.h", + "autofill_controller.mm", + ] + deps = [ + ":autofill", + "//base", + "//components/autofill/core/browser", + "//components/autofill/core/common", + "//components/autofill/ios/browser", + "//components/infobars/core", + "//components/pref_registry", + "//components/prefs", + "//components/signin/core/browser", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/infobars", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/ui/autofill", + "//ios/web", + "//ui/gfx/geometry", + "//url", + ] + libs = [ "UIKit.framework" ] +} + +source_set("unit_tests") { + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "autofill_controller_js_unittest.mm", + "autofill_controller_unittest.mm", + "form_structure_browsertest.mm", + "form_suggestion_controller_unittest.mm", + "js_autofill_manager_unittest.mm", + "js_suggestion_manager_unittest.mm", + ] + deps = [ + ":autofill", + ":autofill_internal", + "//base", + "//base/test:test_support", + "//components/autofill/core/browser", + "//components/autofill/core/browser:test_support", + "//components/autofill/core/common", + "//components/autofill/ios/browser", + "//components/infobars/core", + "//components/keyed_service/core", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/infobars", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/autofill", + "//ios/chrome/browser/web:test_support", + "//ios/chrome/test/base", + "//ios/web", + "//ios/web:test_support", + "//testing/gtest", + "//third_party/ocmock", + "//ui/base:test_support", + ] +} + +source_set("eg_tests") { + testonly = true + sources = [ + "form_input_egtest.mm", + ] + deps = [ + ":autofill", + "//base", + "//base/test:test_support", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui", + "//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/web:earl_grey_test_support", + "//ios/web:test_support", + ] +} diff --git a/chromium/ios/chrome/browser/browser_state/BUILD.gn b/chromium/ios/chrome/browser/browser_state/BUILD.gn index b9ff7059952..adfa6b78b75 100644 --- a/chromium/ios/chrome/browser/browser_state/BUILD.gn +++ b/chromium/ios/chrome/browser/browser_state/BUILD.gn @@ -8,14 +8,18 @@ source_set("browser_state") { "browser_state_otr_helper.h", "chrome_browser_state.h", "chrome_browser_state.mm", + "chrome_browser_state_manager.h", ] deps = [ "//base", "//components/prefs", "//components/sync_preferences", + "//ios/chrome/browser/tabs", "//ios/web", "//net", ] + + configs += [ "//build/config/compiler:enable_arc" ] } source_set("browser_state_impl") { @@ -33,7 +37,6 @@ source_set("browser_state_impl") { "chrome_browser_state_impl_io_data.mm", "chrome_browser_state_io_data.cc", "chrome_browser_state_io_data.h", - "chrome_browser_state_manager.h", "chrome_browser_state_manager_impl.cc", "chrome_browser_state_manager_impl.h", "chrome_browser_state_removal_controller.h", @@ -43,6 +46,9 @@ source_set("browser_state_impl") { "off_the_record_chrome_browser_state_io_data.h", "off_the_record_chrome_browser_state_io_data.mm", ] + + configs += [ "//build/config/compiler:enable_arc" ] + deps = [ ":browser_state", "//base", @@ -84,9 +90,11 @@ source_set("browser_state_impl") { "//ios/chrome/browser/ntp_snippets", "//ios/chrome/browser/passwords", "//ios/chrome/browser/prefs", + "//ios/chrome/browser/prefs:browser_prefs", "//ios/chrome/browser/reading_list", "//ios/chrome/browser/search_engines", "//ios/chrome/browser/services/gcm", + "//ios/chrome/browser/sessions", "//ios/chrome/browser/signin", "//ios/chrome/browser/suggestions", "//ios/chrome/browser/sync", @@ -95,6 +103,7 @@ source_set("browser_state_impl") { "//ios/chrome/browser/undo", "//ios/net", "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/signin", "//ios/web", "//net", "//net:extras", @@ -103,7 +112,7 @@ source_set("browser_state_impl") { "//ios/chrome/browser", "//ios/chrome/browser/browser_state_metrics", "//ios/chrome/browser/net", - "//ios/chrome/browser/prefs", + "//ios/chrome/browser/prefs:browser_prefs", "//ios/chrome/browser/signin", "//ios/chrome/browser/sync", "//ios/chrome/browser/sync/glue", @@ -140,10 +149,14 @@ source_set("test_support") { "//ios/chrome/browser/history", "//ios/chrome/browser/net", "//ios/chrome/browser/prefs", + "//ios/chrome/browser/prefs:browser_prefs", "//ios/chrome/browser/sync/glue", "//ios/chrome/test:test_support", "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/ui", "//ios/web", "//net:test_support", ] + + configs += [ "//build/config/compiler:enable_arc" ] } diff --git a/chromium/ios/chrome/browser/browser_state_metrics/BUILD.gn b/chromium/ios/chrome/browser/browser_state_metrics/BUILD.gn index 1993bb754c5..5c6756b3bb5 100644 --- a/chromium/ios/chrome/browser/browser_state_metrics/BUILD.gn +++ b/chromium/ios/chrome/browser/browser_state_metrics/BUILD.gn @@ -9,5 +9,6 @@ source_set("browser_state_metrics") { ] deps = [ "//components/profile_metrics", + "//ios/chrome/browser/browser_state", ] } diff --git a/chromium/ios/chrome/browser/browsing_data/BUILD.gn b/chromium/ios/chrome/browser/browsing_data/BUILD.gn index d8aaa48d0ba..4ca5db67140 100644 --- a/chromium/ios/chrome/browser/browsing_data/BUILD.gn +++ b/chromium/ios/chrome/browser/browsing_data/BUILD.gn @@ -53,17 +53,48 @@ source_set("browsing_data") { source_set("unit_tests") { testonly = true sources = [ + "browsing_data_removal_controller_unittest.mm", "cache_counter_unittest.cc", ] deps = [ ":browsing_data", + ":browsing_data_internal", "//base", + "//base/test:test_support", "//components/browsing_data/core", "//components/prefs", "//components/prefs:test_support", + "//ios/chrome/browser/browser_state:test_support", "//ios/web", "//ios/web:test_support", "//net", "//testing/gtest", + "//third_party/ocmock", ] } + +source_set("browsing_data_internal") { + sources = [ + "browsing_data_removal_controller.h", + "browsing_data_removal_controller.mm", + ] + deps = [ + ":browsing_data", + "//base", + "//components/browsing_data/core", + "//components/open_from_clipboard", + "//components/signin/ios/browser", + "//ios/chrome/browser:browser_internal", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/native_app_launcher:native_app_launcher_internal", + "//ios/chrome/browser/sessions", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/snapshots", + "//ios/chrome/browser/ui:ui_internal", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/native_app_launcher", + "//ios/web", + "//net", + ] + libs = [ "WebKit.framework" ] +} diff --git a/chromium/ios/chrome/browser/context_menu/BUILD.gn b/chromium/ios/chrome/browser/context_menu/BUILD.gn new file mode 100644 index 00000000000..aa2ccd23e99 --- /dev/null +++ b/chromium/ios/chrome/browser/context_menu/BUILD.gn @@ -0,0 +1,26 @@ +# 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. + +source_set("eg_tests") { + testonly = true + sources = [ + "context_menu_egtest.mm", + ] + deps = [ + "//base", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing:ios_test_support", + "//ios/third_party/earl_grey", + "//ios/web:earl_grey_test_support", + "//ios/web:test_support", + "//url", + ] + libs = [ + "UIKit.framework", + "XCTest.framework", + ] +} diff --git a/chromium/ios/chrome/browser/crash_report/BUILD.gn b/chromium/ios/chrome/browser/crash_report/BUILD.gn index 6808584422a..551342b8404 100644 --- a/chromium/ios/chrome/browser/crash_report/BUILD.gn +++ b/chromium/ios/chrome/browser/crash_report/BUILD.gn @@ -29,3 +29,51 @@ source_set("crash_report") { "//ios/web", ] } + +source_set("crash_report_internal") { + sources = [ + "crash_report_helper.h", + "crash_report_helper.mm", + "crash_restore_helper.h", + "crash_restore_helper.mm", + ] + deps = [ + ":crash_report", + "//base", + "//components/infobars/core", + "//components/sessions", + "//components/strings", + "//components/upload_list", + "//ios/chrome/app/theme", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/sessions", + "//ios/chrome/browser/tabs", + "//ios/web", + "//net", + "//ui/base", + ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "breakpad_helper_unittest.mm", + "crash_restore_helper_unittest.mm", + ] + deps = [ + ":crash_report", + ":crash_report_internal", + "//base", + "//breakpad:client", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/sessions", + "//ios/chrome/test/base", + "//ios/chrome/test/ocmock", + "//ios/web:test_support", + "//testing/gmock", + "//testing/gtest", + "//third_party/ocmock", + ] +} diff --git a/chromium/ios/chrome/browser/device_sharing/BUILD.gn b/chromium/ios/chrome/browser/device_sharing/BUILD.gn index 6c10dd99ba3..a15e20b1732 100644 --- a/chromium/ios/chrome/browser/device_sharing/BUILD.gn +++ b/chromium/ios/chrome/browser/device_sharing/BUILD.gn @@ -3,6 +3,7 @@ # found in the LICENSE file. source_set("device_sharing") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "device_sharing_manager.h", "device_sharing_manager.mm", @@ -11,7 +12,6 @@ source_set("device_sharing") { "//base", "//components/handoff", "//components/prefs", - "//ios/chrome/browser", "//ios/chrome/browser/browser_state", "//ios/chrome/browser/prefs", "//net", @@ -20,6 +20,7 @@ source_set("device_sharing") { } source_set("unit_tests") { + configs += [ "//build/config/compiler:enable_arc" ] testonly = true sources = [ "device_sharing_manager_unittest.mm", @@ -29,7 +30,6 @@ source_set("unit_tests") { "//base", "//components/handoff", "//components/sync_preferences:test_support", - "//ios/chrome/browser", "//ios/chrome/browser/browser_state:test_support", "//ios/web:test_support", "//testing/gtest", @@ -37,3 +37,23 @@ source_set("unit_tests") { "//url", ] } + +source_set("eg_tests") { + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "handoff_manager_egtest.mm", + ] + deps = [ + ":device_sharing", + "//components/handoff", + "//ios/chrome/browser/ui", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/third_party/earl_grey", + "//ios/web:test_support", + "//net", + "//url", + ] + libs = [ "XCTest.framework" ] +} diff --git a/chromium/ios/chrome/browser/dom_distiller/BUILD.gn b/chromium/ios/chrome/browser/dom_distiller/BUILD.gn index 67b4e9e30af..dab73d24a5f 100644 --- a/chromium/ios/chrome/browser/dom_distiller/BUILD.gn +++ b/chromium/ios/chrome/browser/dom_distiller/BUILD.gn @@ -11,7 +11,6 @@ source_set("dom_distiller") { ] deps = [ "//base", - "//components/dom_distiller/core", "//components/dom_distiller/ios", "//components/keyed_service/core", "//components/keyed_service/ios", @@ -19,6 +18,7 @@ source_set("dom_distiller") { "//ios/chrome/browser/browser_state", "//ios/web", "//ui/gfx", + "//url", ] public_deps = [ "//components/dom_distiller/core", diff --git a/chromium/ios/chrome/browser/favicon/BUILD.gn b/chromium/ios/chrome/browser/favicon/BUILD.gn index 162387ab68c..4b3e6af7520 100644 --- a/chromium/ios/chrome/browser/favicon/BUILD.gn +++ b/chromium/ios/chrome/browser/favicon/BUILD.gn @@ -3,6 +3,7 @@ # found in the LICENSE file. source_set("favicon") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "favicon_attributes.h", "favicon_attributes.mm", @@ -29,12 +30,13 @@ source_set("favicon") { "//components/favicon_base", "//components/keyed_service/core", "//components/keyed_service/ios", + "//components/resources", "//ios/chrome/browser", "//ios/chrome/browser/browser_state", "//ios/chrome/browser/history", - "//ios/public/provider/chrome/browser", "//ios/web", "//skia", + "//ui/base", "//ui/gfx", "//url", ] diff --git a/chromium/ios/chrome/browser/find_in_page/BUILD.gn b/chromium/ios/chrome/browser/find_in_page/BUILD.gn index 78b5bcb4eac..7c293261696 100644 --- a/chromium/ios/chrome/browser/find_in_page/BUILD.gn +++ b/chromium/ios/chrome/browser/find_in_page/BUILD.gn @@ -5,6 +5,7 @@ import("//ios/web/js_compile.gni") source_set("find_in_page") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "find_in_page_controller.h", "find_in_page_controller.mm", diff --git a/chromium/ios/chrome/browser/first_run/BUILD.gn b/chromium/ios/chrome/browser/first_run/BUILD.gn index b189a431b00..25f50590f79 100644 --- a/chromium/ios/chrome/browser/first_run/BUILD.gn +++ b/chromium/ios/chrome/browser/first_run/BUILD.gn @@ -3,6 +3,7 @@ # found in the LICENSE file. source_set("first_run") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "first_run.h", "first_run.mm", diff --git a/chromium/ios/chrome/browser/geolocation/BUILD.gn b/chromium/ios/chrome/browser/geolocation/BUILD.gn index 64b8a1e3c95..30306a6b8c3 100644 --- a/chromium/ios/chrome/browser/geolocation/BUILD.gn +++ b/chromium/ios/chrome/browser/geolocation/BUILD.gn @@ -3,6 +3,7 @@ # found in the LICENSE file. source_set("geolocation") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "CLLocation+OmniboxGeolocation.h", "CLLocation+OmniboxGeolocation.mm", @@ -33,6 +34,7 @@ source_set("geolocation") { } source_set("test_support") { + configs += [ "//build/config/compiler:enable_arc" ] testonly = true sources = [ "test_location_manager.h", @@ -45,6 +47,7 @@ source_set("test_support") { } source_set("unit_tests") { + configs += [ "//build/config/compiler:enable_arc" ] testonly = true sources = [ "CLLocation+XGeoHeaderTest.mm", @@ -61,3 +64,26 @@ source_set("unit_tests") { "//third_party/ocmock", ] } + +source_set("geolocation_internal") { + sources = [ + "omnibox_geolocation_controller+Testing.h", + "omnibox_geolocation_controller.h", + "omnibox_geolocation_controller.mm", + ] + deps = [ + ":geolocation", + "//base", + "//components/google/core/browser", + "//components/version_info", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/tabs", + "//ios/web", + "//ui/base", + "//url", + ] + libs = [ + "CoreLocation.framework", + "UIKit.framework", + ] +} diff --git a/chromium/ios/chrome/browser/google/BUILD.gn b/chromium/ios/chrome/browser/google/BUILD.gn index 177bd504675..77508245f46 100644 --- a/chromium/ios/chrome/browser/google/BUILD.gn +++ b/chromium/ios/chrome/browser/google/BUILD.gn @@ -3,6 +3,7 @@ # found in the LICENSE file. source_set("google") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "google_brand.h", "google_brand.mm", @@ -18,10 +19,12 @@ source_set("google") { "//components/prefs", "//ios/chrome/browser/browser_state", "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/distribution", ] } source_set("google_logo") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "google_logo_service.h", "google_logo_service.mm", diff --git a/chromium/ios/chrome/browser/infobars/BUILD.gn b/chromium/ios/chrome/browser/infobars/BUILD.gn index d829cab4b46..38c173a4a73 100644 --- a/chromium/ios/chrome/browser/infobars/BUILD.gn +++ b/chromium/ios/chrome/browser/infobars/BUILD.gn @@ -3,6 +3,7 @@ # found in the LICENSE file. source_set("infobars") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "confirm_infobar_controller+protected.h", "confirm_infobar_controller.h", @@ -23,7 +24,8 @@ source_set("infobars") { deps = [ "//base", "//components/translate/core/browser", - "//ios/public/provider/chrome/browser", + "//ios/chrome/browser/ui/infobars", + "//ios/chrome/common", "//ios/web", "//ui/base", "//ui/gfx", diff --git a/chromium/ios/chrome/browser/interstitials/BUILD.gn b/chromium/ios/chrome/browser/interstitials/BUILD.gn index dd910596b1e..ef500ba684b 100644 --- a/chromium/ios/chrome/browser/interstitials/BUILD.gn +++ b/chromium/ios/chrome/browser/interstitials/BUILD.gn @@ -3,6 +3,7 @@ # found in the LICENSE file. source_set("interstitials") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "ios_chrome_controller_client.h", "ios_chrome_controller_client.mm", diff --git a/chromium/ios/chrome/browser/invalidation/BUILD.gn b/chromium/ios/chrome/browser/invalidation/BUILD.gn index 1b79f920457..7b6b606ba36 100644 --- a/chromium/ios/chrome/browser/invalidation/BUILD.gn +++ b/chromium/ios/chrome/browser/invalidation/BUILD.gn @@ -3,6 +3,7 @@ # found in the LICENSE file. source_set("invalidation") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "ios_chrome_profile_invalidation_provider_factory.h", "ios_chrome_profile_invalidation_provider_factory.mm", diff --git a/chromium/ios/chrome/browser/itunes_links/BUILD.gn b/chromium/ios/chrome/browser/itunes_links/BUILD.gn index a4abdb0862a..7faa8c1a20d 100644 --- a/chromium/ios/chrome/browser/itunes_links/BUILD.gn +++ b/chromium/ios/chrome/browser/itunes_links/BUILD.gn @@ -3,6 +3,7 @@ # found in the LICENSE file. source_set("itunes_links") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "itunes_links_observer.h", "itunes_links_observer.mm", @@ -16,6 +17,7 @@ source_set("itunes_links") { } source_set("unit_tests") { + configs += [ "//build/config/compiler:enable_arc" ] testonly = true sources = [ "itunes_links_observer_unittest.mm", diff --git a/chromium/ios/chrome/browser/metrics/BUILD.gn b/chromium/ios/chrome/browser/metrics/BUILD.gn index 63b0e1b980c..9e4e7182c99 100644 --- a/chromium/ios/chrome/browser/metrics/BUILD.gn +++ b/chromium/ios/chrome/browser/metrics/BUILD.gn @@ -3,13 +3,14 @@ # found in the LICENSE file. source_set("metrics") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "field_trial_synchronizer.cc", "field_trial_synchronizer.h", "ios_chrome_metrics_service_accessor.cc", "ios_chrome_metrics_service_accessor.h", - "ios_chrome_metrics_service_client.cc", "ios_chrome_metrics_service_client.h", + "ios_chrome_metrics_service_client.mm", "ios_chrome_metrics_services_manager_client.h", "ios_chrome_metrics_services_manager_client.mm", "ios_chrome_origins_seen_service_factory.cc", @@ -47,16 +48,16 @@ source_set("metrics") { "//ios/chrome/browser/google", "//ios/chrome/browser/signin", "//ios/chrome/browser/sync", - "//ios/chrome/browser/ui", + "//ios/chrome/browser/tabs", "//ios/chrome/browser/variations", "//ios/chrome/browser/variations:ios_chrome_ui_string_overrider_factory", "//ios/chrome/common", - "//ios/public/provider/chrome/browser", "//ios/web", ] } source_set("unit_tests") { + configs += [ "//build/config/compiler:enable_arc" ] testonly = true sources = [ "ios_chrome_metrics_service_accessor_unittest.cc", @@ -77,3 +78,79 @@ source_set("unit_tests") { "//testing/gtest", ] } + +source_set("metrics_internal") { + sources = [ + "first_user_action_recorder.cc", + "first_user_action_recorder.h", + "new_tab_page_uma.h", + "new_tab_page_uma.mm", + "size_class_recorder.h", + "size_class_recorder.mm", + "size_class_recorder_private.h", + "tab_usage_recorder.h", + "tab_usage_recorder.mm", + "tab_usage_recorder_delegate.h", + ] + deps = [ + ":metrics", + "//base", + "//components/google/core/browser", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui", + "//ios/web", + "//ui/base", + "//url", + ] + libs = [ "UIKit.framework" ] +} + +source_set("unit_tests_internal") { + testonly = true + sources = [ + "first_user_action_recorder_unittest.cc", + "size_class_recorder_unittest.mm", + "tab_usage_recorder_unittest.mm", + ] + deps = [ + ":metrics", + ":metrics_internal", + "//base", + "//base/test:test_support", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui", + "//ios/testing:ocmock_support", + "//ios/web", + "//ios/web:test_support", + "//testing/gtest", + "//third_party/ocmock", + ] +} + +source_set("eg_tests") { + testonly = true + sources = [ + "tab_usage_recorder_egtest.mm", + ] + deps = [ + ":metrics_internal", + "//base", + "//base/test:test_support", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/settings", + "//ios/chrome/browser/ui/toolbar", + "//ios/chrome/browser/ui/tools_menu", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing:ios_test_support", + "//ios/third_party/earl_grey", + "//ios/web:test_support", + "//ui/base", + ] + libs = [ "XCTest.framework" ] +} diff --git a/chromium/ios/chrome/browser/native_app_launcher/BUILD.gn b/chromium/ios/chrome/browser/native_app_launcher/BUILD.gn new file mode 100644 index 00000000000..8a96523064f --- /dev/null +++ b/chromium/ios/chrome/browser/native_app_launcher/BUILD.gn @@ -0,0 +1,102 @@ +# 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. + +source_set("native_app_launcher") { + sources = [ + "ios_appstore_ids.h", + "ios_appstore_ids.mm", + "native_app_infobar_controller.h", + "native_app_infobar_controller.mm", + "native_app_infobar_delegate.h", + "native_app_infobar_delegate.mm", + "native_app_navigation_controller_protocol.h", + ] + deps = [ + "//base", + "//components/infobars/core", + "//ios/chrome/app/strings", + "//ios/chrome/browser/infobars", + "//ios/chrome/browser/ui/infobars", + "//ios/public/provider/chrome/browser/native_app_launcher", + "//ui/base", + "//url", + ] +} + +source_set("unit_tests") { + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "native_app_infobar_controller_unittest.mm", + "native_app_infobar_delegate_unittest.mm", + ] + deps = [ + ":native_app_launcher", + "//base", + "//base/test:test_support", + "//components/infobars/core", + "//ios/chrome/browser", + "//ios/chrome/test:test_support", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser:test_support", + "//ios/public/provider/chrome/browser/native_app_launcher", + "//ios/web", + "//ios/web:test_support", + "//net:test_support", + "//testing/gmock", + "//testing/gtest", + "//url", + ] +} + +source_set("native_app_launcher_internal") { + sources = [ + "native_app_navigation_controller.h", + "native_app_navigation_controller.mm", + ] + deps = [ + ":native_app_launcher", + "//base", + "//components/infobars/core", + "//ios/chrome/browser", + "//ios/chrome/browser/infobars", + "//ios/chrome/browser/net", + "//ios/chrome/browser/tabs", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/native_app_launcher", + "//ios/public/provider/chrome/browser/signin", + "//ios/public/provider/chrome/browser/ui", + "//ios/web", + "//net", + "//ui/base", + "//url", + ] + libs = [ "StoreKit.framework" ] +} + +source_set("unit_tests_internal") { + testonly = true + sources = [ + "native_app_navigation_controller_unittest.mm", + ] + deps = [ + ":native_app_launcher", + ":native_app_launcher_internal", + "//base", + "//base/test:test_support", + "//components/infobars/core", + "//ios/chrome/browser", + "//ios/chrome/test:test_support", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser:test_support", + "//ios/public/provider/chrome/browser/native_app_launcher:test_support", + "//ios/public/provider/chrome/browser/signin:test_support", + "//ios/web", + "//ios/web:test_support", + "//net:test_support", + "//testing/gmock", + "//testing/gtest", + "//url", + ] +} diff --git a/chromium/ios/chrome/browser/net/BUILD.gn b/chromium/ios/chrome/browser/net/BUILD.gn index 4b26d7f72c7..2d147ebf54e 100644 --- a/chromium/ios/chrome/browser/net/BUILD.gn +++ b/chromium/ios/chrome/browser/net/BUILD.gn @@ -3,6 +3,7 @@ # found in the LICENSE file. source_set("net") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "chrome_cookie_store_ios_client.h", "chrome_cookie_store_ios_client.mm", @@ -14,18 +15,12 @@ source_set("net") { "crl_set_fetcher.h", "http_server_properties_manager_factory.cc", "http_server_properties_manager_factory.h", - "image_fetcher.h", - "image_fetcher.mm", "ios_chrome_http_user_agent_settings.h", "ios_chrome_http_user_agent_settings.mm", "ios_chrome_network_delegate.cc", "ios_chrome_network_delegate.h", "ios_chrome_url_request_context_getter.cc", "ios_chrome_url_request_context_getter.h", - "metrics_network_client.h", - "metrics_network_client.mm", - "metrics_network_client_manager.h", - "metrics_network_client_manager.mm", "net_types.h", "proxy_service_factory.cc", "proxy_service_factory.h", @@ -43,7 +38,6 @@ source_set("net") { "//ios/chrome/browser", "//ios/chrome/browser/browser_state", "//ios/chrome/browser/browsing_data", - "//ios/chrome/browser/webp_transcode", "//ios/net", "//ios/web", "//net", @@ -56,24 +50,11 @@ source_set("net") { ] } -source_set("test_support") { - testonly = true - sources = [ - "mock_image_fetcher.h", - "mock_image_fetcher.mm", - ] - deps = [ - ":net", - "//testing/gmock", - ] -} - source_set("unit_tests") { + configs += [ "//build/config/compiler:enable_arc" ] testonly = true sources = [ "cookie_util_unittest.mm", - "image_fetcher_unittest.mm", - "metrics_network_client_unittest.mm", "retryable_url_fetcher_unittest.mm", ] deps = [ @@ -86,3 +67,19 @@ source_set("unit_tests") { "//testing/gtest", ] } + +source_set("eg_tests") { + testonly = true + sources = [ + "cookies_egtest.mm", + ] + deps = [ + "//base", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/third_party/earl_grey", + "//ios/web:test_support", + "//url", + ] + libs = [ "XCTest.framework" ] +} diff --git a/chromium/ios/chrome/browser/ntp_tiles/BUILD.gn b/chromium/ios/chrome/browser/ntp_tiles/BUILD.gn index 0aef993fdd6..a09c36d49b6 100644 --- a/chromium/ios/chrome/browser/ntp_tiles/BUILD.gn +++ b/chromium/ios/chrome/browser/ntp_tiles/BUILD.gn @@ -15,6 +15,7 @@ source_set("ntp_tiles") { "//components/image_fetcher", "//components/keyed_service/core", "//components/ntp_tiles", + "//components/ntp_tiles:json_unsafe_parser", "//ios/chrome/browser", "//ios/chrome/browser/browser_state", "//ios/chrome/browser/favicon", diff --git a/chromium/ios/chrome/browser/omaha/BUILD.gn b/chromium/ios/chrome/browser/omaha/BUILD.gn new file mode 100644 index 00000000000..8d5eb217ef9 --- /dev/null +++ b/chromium/ios/chrome/browser/omaha/BUILD.gn @@ -0,0 +1,54 @@ +# 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. + +source_set("omaha") { + sources = [ + "omaha_service.h", + "omaha_service.mm", + ] + deps = [ + "//base", + "//base:i18n", + "//components/metrics", + "//components/prefs", + "//components/profile_metrics", + "//components/version_info", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/browser_state_metrics", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/upgrade", + "//ios/chrome/common", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/omaha", + "//ios/web", + "//net", + "//third_party/libxml", + "//url", + ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "omaha_service_unittest.mm", + ] + deps = [ + ":omaha", + "//base", + "//components/metrics", + "//components/prefs", + "//components/version_info", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/common", + "//ios/chrome/test:test_support", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/omaha", + "//ios/web", + "//ios/web:test_support", + "//net:test_support", + "//testing/gtest", + ] +} diff --git a/chromium/ios/chrome/browser/open_from_clipboard/BUILD.gn b/chromium/ios/chrome/browser/open_from_clipboard/BUILD.gn index 585762a28f6..0c4d8dcef04 100644 --- a/chromium/ios/chrome/browser/open_from_clipboard/BUILD.gn +++ b/chromium/ios/chrome/browser/open_from_clipboard/BUILD.gn @@ -3,6 +3,7 @@ # found in the LICENSE file. source_set("open_from_clipboard") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "create_clipboard_recent_content.h", "create_clipboard_recent_content.mm", diff --git a/chromium/ios/chrome/browser/passwords/BUILD.gn b/chromium/ios/chrome/browser/passwords/BUILD.gn index 7a426e4ed4e..acc40c17ec7 100644 --- a/chromium/ios/chrome/browser/passwords/BUILD.gn +++ b/chromium/ios/chrome/browser/passwords/BUILD.gn @@ -69,7 +69,9 @@ source_set("passwords") { "//ios/chrome/browser/ui", "//ios/chrome/browser/ui/commands", "//ios/chrome/browser/ui/elements", + "//ios/chrome/browser/ui/infobars", "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/ui", "//ios/web", "//ui/base", "//url", @@ -82,6 +84,7 @@ source_set("passwords") { } source_set("passwords_generation_utils") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "password_generation_utils.h", "password_generation_utils.mm", @@ -94,6 +97,7 @@ source_set("passwords_generation_utils") { } source_set("unit_tests") { + configs += [ "//build/config/compiler:enable_arc" ] testonly = true sources = [ "credential_manager_js_unittest.mm", @@ -136,3 +140,27 @@ js_compile_unchecked("injected_js") { "resources/password_controller.js", ] } + +source_set("passwords_internal") { + sources = [ + "password_generation_prompt_view.h", + "password_generation_prompt_view.mm", + "password_generation_prompt_view_controller.h", + "password_generation_prompt_view_controller.mm", + "passwords_ui_delegate_impl.h", + "passwords_ui_delegate_impl.mm", + ] + deps = [ + ":passwords", + "//base", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/app/theme", + "//ios/chrome/browser/ui", + "//ios/chrome/common", + "//ios/third_party/material_components_ios", + "//ios/third_party/material_roboto_font_loader_ios", + "//ui/base", + ] + libs = [ "UIKit.framework" ] +} diff --git a/chromium/ios/chrome/browser/payments/BUILD.gn b/chromium/ios/chrome/browser/payments/BUILD.gn new file mode 100644 index 00000000000..19ebe31b61e --- /dev/null +++ b/chromium/ios/chrome/browser/payments/BUILD.gn @@ -0,0 +1,89 @@ +# 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") + +js_compile_checked("injected_js") { + sources = [ + "resources/payment_request_manager.js", + ] +} + +source_set("payments") { + sources = [ + "js_payment_request_manager.h", + "js_payment_request_manager.mm", + "payment_items_display_coordinator.h", + "payment_items_display_coordinator.mm", + "payment_items_display_view_controller.h", + "payment_items_display_view_controller.mm", + "payment_method_selection_coordinator.h", + "payment_method_selection_coordinator.mm", + "payment_method_selection_view_controller.h", + "payment_method_selection_view_controller.mm", + "payment_request_coordinator.h", + "payment_request_coordinator.mm", + "payment_request_manager.h", + "payment_request_manager.mm", + "payment_request_utils.h", + "payment_request_utils.mm", + "payment_request_view_controller.h", + "payment_request_view_controller.mm", + "shipping_address_selection_coordinator.h", + "shipping_address_selection_coordinator.mm", + "shipping_address_selection_view_controller.h", + "shipping_address_selection_view_controller.mm", + "shipping_option_selection_coordinator.h", + "shipping_option_selection_coordinator.mm", + "shipping_option_selection_view_controller.h", + "shipping_option_selection_view_controller.mm", + ] + deps = [ + ":injected_js", + "//base", + "//components/autofill/core/browser", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/autofill", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/payments/cells", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/collection_view", + "//ios/chrome/browser/ui/collection_view/cells", + "//ios/chrome/browser/ui/colors", + "//ios/chrome/browser/ui/icons", + "//ios/third_party/material_components_ios", + "//ios/third_party/material_roboto_font_loader_ios", + "//ios/web", + "//ui/base", + ] + libs = [ "UIKit.framework" ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "payment_items_display_coordinator_unittest.mm", + "payment_items_display_view_controller_unittest.mm", + "shipping_address_selection_coordinator_unittest.mm", + "shipping_address_selection_view_controller_unittest.mm", + "shipping_option_selection_coordinator_unittest.mm", + "shipping_option_selection_view_controller_unittest.mm", + ] + deps = [ + ":payments", + "//base", + "//base/test:test_support", + "//components/autofill/core/browser", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui/collection_view:test_support", + "//ios/chrome/browser/ui/collection_view/cells", + "//ios/chrome/browser/ui/collection_view/cells:test_support", + "//ios/chrome/test:test_support", + "//ios/third_party/material_components_ios", + "//ios/web", + "//testing/gtest", + ] +} diff --git a/chromium/ios/chrome/browser/payments/cells/BUILD.gn b/chromium/ios/chrome/browser/payments/cells/BUILD.gn new file mode 100644 index 00000000000..9f46adcc7b0 --- /dev/null +++ b/chromium/ios/chrome/browser/payments/cells/BUILD.gn @@ -0,0 +1,40 @@ +# 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. + +source_set("cells") { + sources = [ + "page_info_item.h", + "page_info_item.mm", + "payment_method_item.h", + "payment_method_item.mm", + "shipping_address_item.h", + "shipping_address_item.mm", + ] + + deps = [ + "//ios/chrome/browser/ui/collection_view/cells", + "//ios/third_party/material_components_ios", + "//ios/third_party/material_roboto_font_loader_ios", + ] + + configs += [ "//build/config/compiler:enable_arc" ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "page_info_item_unittest.mm", + "payment_method_item_unittest.mm", + "shipping_address_item_unittest.mm", + ] + + deps = [ + ":cells", + "//ios/chrome/browser/ui/collection_view/cells:test_support", + "//ios/third_party/material_components_ios", + "//testing/gtest", + ] + + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/chromium/ios/chrome/browser/physical_web/BUILD.gn b/chromium/ios/chrome/browser/physical_web/BUILD.gn index 6a9caf18a1f..832f11376f7 100644 --- a/chromium/ios/chrome/browser/physical_web/BUILD.gn +++ b/chromium/ios/chrome/browser/physical_web/BUILD.gn @@ -9,6 +9,8 @@ source_set("physical_web") { "ios_chrome_physical_web_data_source.h", "ios_chrome_physical_web_data_source.mm", "physical_web_constants.h", + "physical_web_initial_state_recorder.h", + "physical_web_initial_state_recorder.mm", "physical_web_prefs_registration.cc", "physical_web_prefs_registration.h", "start_physical_web_discovery.h", @@ -19,8 +21,11 @@ source_set("physical_web") { "//components/physical_web/data_source", "//components/pref_registry", "//components/prefs", + "//components/search_engines", "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", "//ios/chrome/browser/geolocation", + "//ios/chrome/browser/search_engines", "//ios/chrome/common/physical_web", "//url", ] diff --git a/chromium/ios/chrome/browser/prefs/BUILD.gn b/chromium/ios/chrome/browser/prefs/BUILD.gn index bb416232dfd..3935d5646a2 100644 --- a/chromium/ios/chrome/browser/prefs/BUILD.gn +++ b/chromium/ios/chrome/browser/prefs/BUILD.gn @@ -4,8 +4,6 @@ source_set("prefs") { sources = [ - "browser_prefs.h", - "browser_prefs.mm", "ios_chrome_pref_model_associator_client.cc", "ios_chrome_pref_model_associator_client.h", "ios_chrome_pref_service_factory.cc", @@ -15,12 +13,29 @@ source_set("prefs") { ] deps = [ "//base", + "//components/content_settings/core/browser", + "//components/prefs", + "//components/proxy_config", + "//components/search_engines", + "//components/sync_preferences", + "//ios/chrome/browser", + ] +} + +source_set("browser_prefs") { + sources = [ + "browser_prefs.h", + "browser_prefs.mm", + ] + deps = [ "//components/autofill/core/browser", "//components/browsing_data/core", "//components/content_settings/core/browser", "//components/dom_distiller/core", "//components/flags_ui", "//components/gcm_driver", + "//components/handoff", + "//components/metrics", "//components/network_time", "//components/ntp_snippets", "//components/ntp_tiles", @@ -35,7 +50,6 @@ source_set("prefs") { "//components/ssl_config", "//components/strings", "//components/sync", - "//components/sync_preferences", "//components/translate/core/browser", "//components/translate/core/common", "//components/update_client", @@ -48,8 +62,9 @@ source_set("prefs") { "//ios/chrome/browser/memory", "//ios/chrome/browser/metrics", "//ios/chrome/browser/net", - "//ios/chrome/browser/reading_list", + "//ios/chrome/browser/physical_web", "//ios/chrome/browser/signin", + "//ios/chrome/browser/ui/bookmarks", "//ios/chrome/browser/voice:prefs", "//ios/public/provider/chrome/browser", "//ui/base", diff --git a/chromium/ios/chrome/browser/providers/BUILD.gn b/chromium/ios/chrome/browser/providers/BUILD.gn index ea55c568854..2a6e7c7c8e2 100644 --- a/chromium/ios/chrome/browser/providers/BUILD.gn +++ b/chromium/ios/chrome/browser/providers/BUILD.gn @@ -10,11 +10,34 @@ source_set("providers") { "chromium_browser_provider.mm", "chromium_logo_controller.h", "chromium_logo_controller.mm", + "chromium_spotlight_provider.h", + "chromium_spotlight_provider.mm", "chromium_voice_search_provider.h", "chromium_voice_search_provider.mm", ] deps = [ "//base", + "//ios/chrome/browser/providers/images", + "//ios/chrome/browser/providers/signin", + "//ios/chrome/browser/providers/ui", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/distribution", + "//ios/public/provider/chrome/browser/signin", + "//ios/public/provider/chrome/browser/spotlight", + "//ios/public/provider/chrome/browser/ui", + "//ios/public/provider/chrome/browser/user_feedback", + "//ios/public/provider/chrome/browser/voice", + ] + configs += [ "//build/config/compiler:enable_arc" ] +} + +source_set("provider_factory") { + sources = [ + "chromium_browser_provider_factory.mm", + ] + deps = [ + ":providers", + "//base", "//ios/public/provider/chrome/browser", ] configs += [ "//build/config/compiler:enable_arc" ] diff --git a/chromium/ios/chrome/browser/providers/images/BUILD.gn b/chromium/ios/chrome/browser/providers/images/BUILD.gn new file mode 100644 index 00000000000..9aad49ee2d2 --- /dev/null +++ b/chromium/ios/chrome/browser/providers/images/BUILD.gn @@ -0,0 +1,18 @@ +# 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. + +source_set("images") { + sources = [ + "chromium_branded_image_provider.h", + "chromium_branded_image_provider.mm", + ] + deps = [ + "//base", + "//ios/chrome/app/theme", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/images", + "//ui/base", + ] + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/chromium/ios/chrome/browser/providers/signin/BUILD.gn b/chromium/ios/chrome/browser/providers/signin/BUILD.gn new file mode 100644 index 00000000000..d7427bd0c28 --- /dev/null +++ b/chromium/ios/chrome/browser/providers/signin/BUILD.gn @@ -0,0 +1,17 @@ +# 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. + +source_set("signin") { + sources = [ + "chromium_signin_resources_provider.h", + "chromium_signin_resources_provider.mm", + ] + deps = [ + "//base", + "//ios/chrome/browser/ui", + "//ios/public/provider/chrome/browser/signin", + ] + libs = [ "UIKit.framework" ] + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/chromium/ios/chrome/browser/providers/ui/BUILD.gn b/chromium/ios/chrome/browser/providers/ui/BUILD.gn new file mode 100644 index 00000000000..292643e348c --- /dev/null +++ b/chromium/ios/chrome/browser/providers/ui/BUILD.gn @@ -0,0 +1,16 @@ +# 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. + +source_set("ui") { + sources = [ + "chromium_styled_text_field.h", + "chromium_styled_text_field.mm", + ] + deps = [ + "//base", + "//ios/public/provider/chrome/browser/ui", + ] + libs = [ "UIKit.framework" ] + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/chromium/ios/chrome/browser/reading_list/BUILD.gn b/chromium/ios/chrome/browser/reading_list/BUILD.gn index 9dc3842e578..40d5ac3f1f8 100644 --- a/chromium/ios/chrome/browser/reading_list/BUILD.gn +++ b/chromium/ios/chrome/browser/reading_list/BUILD.gn @@ -3,29 +3,22 @@ # found in the LICENSE file. source_set("reading_list") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ + "favicon_web_state_dispatcher_impl.h", + "favicon_web_state_dispatcher_impl.mm", "offline_url_utils.cc", "offline_url_utils.h", + "reading_list_distiller_page.h", + "reading_list_distiller_page.mm", + "reading_list_distiller_page_factory.h", + "reading_list_distiller_page_factory.mm", "reading_list_download_service.cc", "reading_list_download_service.h", "reading_list_download_service_factory.cc", "reading_list_download_service_factory.h", - "reading_list_entry.cc", - "reading_list_entry.h", - "reading_list_model.cc", - "reading_list_model.h", - "reading_list_model_bridge_observer.h", - "reading_list_model_bridge_observer.mm", "reading_list_model_factory.cc", "reading_list_model_factory.h", - "reading_list_model_impl.cc", - "reading_list_model_impl.h", - "reading_list_model_observer.h", - "reading_list_model_storage.h", - "reading_list_model_storage_defaults.h", - "reading_list_model_storage_defaults.mm", - "reading_list_pref_names.cc", - "reading_list_pref_names.h", "reading_list_web_state_observer.h", "reading_list_web_state_observer.mm", "url_downloader.cc", @@ -33,12 +26,24 @@ source_set("reading_list") { ] deps = [ "//base", + "//components/browser_sync", + "//components/dom_distiller/ios", + "//components/favicon/core", + "//components/favicon/ios", + "//components/google/core/browser", "//components/keyed_service/core", "//components/keyed_service/ios", "//components/pref_registry", "//components/prefs", + "//components/reading_list/core", + "//components/reading_list/ios", + "//components/sync", "//ios/chrome/browser", + "//ios/chrome/browser/bookmarks", "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/favicon", + "//ios/chrome/browser/history", + "//ios/chrome/common", "//ios/web", "//net", "//url", @@ -49,21 +54,27 @@ source_set("reading_list") { } source_set("unit_tests") { + configs += [ "//build/config/compiler:enable_arc" ] testonly = true sources = [ + "favicon_web_state_dispatcher_impl_unittest.mm", "offline_url_utils_unittest.cc", - "reading_list_entry_unittest.cc", - "reading_list_model_storage_unittest.mm", - "reading_list_model_unittest.cc", - "url_downloader_unittest.cc", + "reading_list_web_state_observer_unittest.mm", + "url_downloader_unittest.mm", ] deps = [ ":reading_list", "//base", "//base/test:test_support", + "//components/favicon/ios", + "//components/reading_list/ios", "//ios/chrome/browser", + "//ios/chrome/browser/browser_state:test_support", "//ios/chrome/browser/dom_distiller", + "//ios/testing:ios_test_support", + "//ios/web", "//ios/web:test_support", + "//net", "//testing/gtest", "//url", ] diff --git a/chromium/ios/chrome/browser/search_engines/BUILD.gn b/chromium/ios/chrome/browser/search_engines/BUILD.gn index f101496cfa1..d2226cb9132 100644 --- a/chromium/ios/chrome/browser/search_engines/BUILD.gn +++ b/chromium/ios/chrome/browser/search_engines/BUILD.gn @@ -3,6 +3,7 @@ # found in the LICENSE file. import("//build/config/features.gni") +import("//rlz/features/features.gni") source_set("search_engines") { sources = [ @@ -33,6 +34,7 @@ source_set("search_engines") { "//ios/chrome/common", "//ios/web", "//net", + "//rlz/features", "//ui/base", "//url", ] diff --git a/chromium/ios/chrome/browser/sessions/BUILD.gn b/chromium/ios/chrome/browser/sessions/BUILD.gn index b64a739d4b5..cf8b95d284b 100644 --- a/chromium/ios/chrome/browser/sessions/BUILD.gn +++ b/chromium/ios/chrome/browser/sessions/BUILD.gn @@ -3,6 +3,7 @@ # found in the LICENSE file. source_set("sessions") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "ios_chrome_session_tab_helper.h", "ios_chrome_session_tab_helper.mm", @@ -17,8 +18,82 @@ source_set("sessions") { "//components/sessions", "//ios/chrome/browser", "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/tabs", "//ios/public/provider/chrome/browser", "//ios/web", "//url", ] + public_deps = [ + ":sessions_non_arc", + ] +} + +source_set("sessions_non_arc") { + visibility = [ ":sessions" ] + sources = [ + "NSCoder+Compatibility.h", + "NSCoder+Compatibility.mm", + "session_service.h", + "session_service.mm", + "session_util.h", + "session_util.mm", + "session_window.h", + "session_window.mm", + "tab_restore_service_delegate_impl_ios.h", + "tab_restore_service_delegate_impl_ios.mm", + "tab_restore_service_delegate_impl_ios_factory.h", + "tab_restore_service_delegate_impl_ios_factory.mm", + ] + deps = [ + "//base", + "//components/keyed_service/core", + "//components/keyed_service/ios", + "//components/sessions", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/tabs", + "//ios/web", + "//net", + ] + libs = [ "UIKit.framework" ] +} + +source_set("test_support") { + testonly = true + sources = [ + "test_session_service.h", + "test_session_service.mm", + ] + deps = [ + ":sessions", + ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "session_service_unittest.mm", + "session_window_unittest.mm", + ] + deps = [ + ":resources_unit_tests", + ":sessions", + "//base", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state:test_support", + "//ios/web", + "//ios/web:test_support", + "//testing/gtest", + "//third_party/ocmock", + ] +} + +bundle_data("resources_unit_tests") { + visibility = [ ":unit_tests" ] + testonly = true + sources = [ + "//ios/chrome/test/data/sessions/corrupted.plist", + ] + outputs = [ + "{{bundle_resources_dir}}/ios/chrome/test/data/sessions/{{source_file_part}}", + ] } diff --git a/chromium/ios/chrome/browser/share_extension/BUILD.gn b/chromium/ios/chrome/browser/share_extension/BUILD.gn index 2daa435dec8..632575cd2f0 100644 --- a/chromium/ios/chrome/browser/share_extension/BUILD.gn +++ b/chromium/ios/chrome/browser/share_extension/BUILD.gn @@ -3,6 +3,7 @@ # found in the LICENSE file. source_set("share_extension") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "share_extension_item_receiver.h", "share_extension_item_receiver.mm", @@ -16,6 +17,7 @@ source_set("share_extension") { "//components/bookmarks/browser", "//components/keyed_service/core", "//components/keyed_service/ios", + "//components/reading_list/ios", "//ios/chrome/browser", "//ios/chrome/browser/bookmarks", "//ios/chrome/browser/browser_state", diff --git a/chromium/ios/chrome/browser/signin/BUILD.gn b/chromium/ios/chrome/browser/signin/BUILD.gn index 428bc41dc6c..6790cb1bbc2 100644 --- a/chromium/ios/chrome/browser/signin/BUILD.gn +++ b/chromium/ios/chrome/browser/signin/BUILD.gn @@ -48,19 +48,8 @@ source_set("signin") { "signin_util.mm", ] deps = [ - "//components/browser_sync", - "//components/sync", - "//ios/chrome/browser", - "//ios/chrome/browser/bookmarks:bookmarks_utils", - "//ios/chrome/browser/browser_state", - "//ios/chrome/browser/content_settings", - "//ios/chrome/browser/crash_report", - "//ios/chrome/browser/ui/commands", - "//ios/web", - "//url", - ] - public_deps = [ "//base", + "//components/browser_sync", "//components/content_settings/core/browser", "//components/keyed_service/core", "//components/keyed_service/ios", @@ -69,10 +58,20 @@ source_set("signin") { "//components/prefs", "//components/signin/core/browser", "//components/signin/ios/browser", + "//components/sync", "//google_apis", + "//ios/chrome/browser", + "//ios/chrome/browser/bookmarks:bookmarks_utils", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/content_settings", + "//ios/chrome/browser/crash_report", + "//ios/chrome/browser/ui/commands", "//ios/chrome/common", "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/signin", + "//ios/web", "//net", + "//url", ] } @@ -87,15 +86,14 @@ source_set("test_support") { "fake_signin_manager_builder.h", ] deps = [ + ":signin", + "//base", "//components/signin/core/browser:test_support", "//components/signin/ios/browser", "//ios/chrome/browser/browser_state", "//ios/chrome/browser/sync", - ] - public_deps = [ - ":signin", - "//base", "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/signin", ] } @@ -122,12 +120,13 @@ source_set("unit_tests") { "//google_apis", "//ios/chrome/browser", "//ios/chrome/browser/browser_state:test_support", - "//ios/chrome/browser/prefs", + "//ios/chrome/browser/prefs:browser_prefs", "//ios/chrome/browser/sync", "//ios/chrome/browser/sync:test_support", "//ios/chrome/test:test_support", "//ios/public/provider/chrome/browser", - "//ios/public/provider/chrome/browser:test_support", + "//ios/public/provider/chrome/browser/signin", + "//ios/public/provider/chrome/browser/signin:test_support", "//ios/web:test_support", "//net:test_support", "//testing/gmock", @@ -135,3 +134,16 @@ source_set("unit_tests") { "//third_party/ocmock", ] } + +source_set("signin_internal") { + sources = [ + "signin_capability.cc", + "signin_capability.h", + ] + deps = [ + ":signin", + "//base", + "//components/signin/core/browser", + "//ios/chrome/browser/browser_state", + ] +} diff --git a/chromium/ios/chrome/browser/snapshots/BUILD.gn b/chromium/ios/chrome/browser/snapshots/BUILD.gn index cfda2e7d2a8..e6477b6e904 100644 --- a/chromium/ios/chrome/browser/snapshots/BUILD.gn +++ b/chromium/ios/chrome/browser/snapshots/BUILD.gn @@ -41,3 +41,19 @@ source_set("unit_tests") { "//testing/gtest", ] } + +source_set("snapshots_internal") { + sources = [ + "snapshot_overlay_provider.h", + "web_controller_snapshot_helper.h", + "web_controller_snapshot_helper.mm", + ] + deps = [ + ":snapshots", + "//base", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui", + "//ios/web", + ] + libs = [ "UIKit.framework" ] +} diff --git a/chromium/ios/chrome/browser/ssl/BUILD.gn b/chromium/ios/chrome/browser/ssl/BUILD.gn index 149ab78975c..29e125e345a 100644 --- a/chromium/ios/chrome/browser/ssl/BUILD.gn +++ b/chromium/ios/chrome/browser/ssl/BUILD.gn @@ -3,7 +3,10 @@ # found in the LICENSE file. source_set("ssl") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ + "captive_portal_detector_tab_helper.h", + "captive_portal_detector_tab_helper.mm", "ios_security_state_tab_helper.h", "ios_security_state_tab_helper.mm", "ios_ssl_blocking_page.h", @@ -13,6 +16,7 @@ source_set("ssl") { ] deps = [ "//base", + "//components/captive_portal", "//components/security_interstitials/core", "//components/security_state/core", "//components/strings", @@ -28,6 +32,7 @@ source_set("ssl") { } source_set("unit_tests") { + configs += [ "//build/config/compiler:enable_arc" ] testonly = true sources = [ "ios_ssl_error_handler_unittest.mm", diff --git a/chromium/ios/chrome/browser/suggestions/BUILD.gn b/chromium/ios/chrome/browser/suggestions/BUILD.gn index 7043f0aba97..66a2401239e 100644 --- a/chromium/ios/chrome/browser/suggestions/BUILD.gn +++ b/chromium/ios/chrome/browser/suggestions/BUILD.gn @@ -3,6 +3,7 @@ # found in the LICENSE file. source_set("suggestions") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "image_fetcher_impl.h", "image_fetcher_impl.mm", @@ -20,12 +21,10 @@ source_set("suggestions") { "//components/signin/core/browser", "//components/suggestions", "//ios/chrome/browser/browser_state", - "//ios/chrome/browser/net", - "//ios/chrome/browser/net", "//ios/chrome/browser/signin", "//ios/chrome/browser/sync", - "//ios/chrome/browser/webp_transcode", "//ios/web", + "//ios/web/public/image_fetcher", "//net", "//skia", "//ui/gfx", @@ -33,6 +32,7 @@ source_set("suggestions") { } source_set("unit_tests") { + configs += [ "//build/config/compiler:enable_arc" ] testonly = true sources = [ "ios_image_decoder_impl_unittest.mm", diff --git a/chromium/ios/chrome/browser/sync/BUILD.gn b/chromium/ios/chrome/browser/sync/BUILD.gn index 8117bb9c394..14f9eed6e98 100644 --- a/chromium/ios/chrome/browser/sync/BUILD.gn +++ b/chromium/ios/chrome/browser/sync/BUILD.gn @@ -3,6 +3,7 @@ # found in the LICENSE file. source_set("sync") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "ios_chrome_profile_sync_service_factory.cc", "ios_chrome_profile_sync_service_factory.h", @@ -30,6 +31,8 @@ source_set("sync") { "//components/password_manager/core/browser", "//components/password_manager/sync/browser", "//components/prefs", + "//components/reading_list/core", + "//components/reading_list/ios", "//components/search_engines", "//components/sessions", "//components/signin/core/browser", @@ -46,15 +49,16 @@ source_set("sync") { "//ios/chrome/browser/history", "//ios/chrome/browser/invalidation", "//ios/chrome/browser/passwords", + "//ios/chrome/browser/reading_list", "//ios/chrome/browser/search_engines", "//ios/chrome/browser/services/gcm", "//ios/chrome/browser/sessions", "//ios/chrome/browser/signin", "//ios/chrome/browser/sync/glue", "//ios/chrome/browser/sync/sessions", + "//ios/chrome/browser/tabs", "//ios/chrome/browser/undo", "//ios/chrome/common", - "//ios/public/provider/chrome/browser", "//ios/web", "//net", "//ui/base", @@ -63,6 +67,7 @@ source_set("sync") { allow_circular_includes_from = [ "//ios/chrome/browser/history", "//ios/chrome/browser/passwords", + "//ios/chrome/browser/reading_list", "//ios/chrome/browser/signin", "//ios/chrome/browser/sync/glue", "//ios/chrome/browser/sync/sessions", @@ -108,6 +113,7 @@ source_set("unit_tests") { ":sync", "//base", "//components/browser_sync", + "//components/reading_list/core", "//components/sync", "//ios/chrome/browser/browser_state:test_support", "//ios/web:test_support", diff --git a/chromium/ios/chrome/browser/sync/sessions/BUILD.gn b/chromium/ios/chrome/browser/sync/sessions/BUILD.gn index 997cbbb88ac..ee69c4b260b 100644 --- a/chromium/ios/chrome/browser/sync/sessions/BUILD.gn +++ b/chromium/ios/chrome/browser/sync/sessions/BUILD.gn @@ -3,6 +3,7 @@ # found in the LICENSE file. source_set("sessions") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "ios_chrome_local_session_event_router.h", "ios_chrome_local_session_event_router.mm", diff --git a/chromium/ios/chrome/browser/tabs/BUILD.gn b/chromium/ios/chrome/browser/tabs/BUILD.gn new file mode 100644 index 00000000000..3ac08a4db2b --- /dev/null +++ b/chromium/ios/chrome/browser/tabs/BUILD.gn @@ -0,0 +1,183 @@ +# 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. + +source_set("tabs") { + sources = [ + "tab.h", + "tab_delegate.h", + "tab_dialog_delegate.h", + "tab_headers_delegate.h", + "tab_model.h", + "tab_model_list.h", + "tab_model_observer.h", + "tab_model_order_controller.h", + "tab_model_synced_window_delegate.h", + "tab_model_synced_window_delegate_getter.h", + "tab_private.h", + "tab_snapshotting_delegate.h", + ] + deps = [ + "//components/sessions", + "//components/signin/ios/browser", + "//components/sync_sessions", + "//ios/net", + "//ios/web", + "//ui/base", + ] + libs = [ "UIKit.framework" ] +} + +source_set("tabs_internal") { + sources = [ + "tab.mm", + "tab_model.mm", + "tab_model_order_controller.mm", + "tab_model_synced_window_delegate.mm", + "tab_model_synced_window_delegate_getter.mm", + ] + deps = [ + ":tabs", + ":tabs_internal_arc", + "//base", + "//components/content_settings/core/browser", + "//components/favicon/core", + "//components/favicon/ios", + "//components/google/core/browser", + "//components/history/core/browser", + "//components/history/ios/browser", + "//components/infobars/core", + "//components/keyed_service/core", + "//components/metrics_services_manager", + "//components/navigation_metrics", + "//components/prefs", + "//components/reading_list/core", + "//components/reading_list/ios", + "//components/search_engines", + "//components/sessions", + "//components/signin/core/browser", + "//components/signin/ios/browser", + "//components/strings", + "//components/url_formatter", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/autofill", + "//ios/chrome/browser/autofill:autofill_internal", + "//ios/chrome/browser/bookmarks", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/content_settings", + "//ios/chrome/browser/favicon", + "//ios/chrome/browser/find_in_page", + "//ios/chrome/browser/geolocation:geolocation_internal", + "//ios/chrome/browser/history", + "//ios/chrome/browser/infobars", + "//ios/chrome/browser/metrics", + "//ios/chrome/browser/metrics:metrics_internal", + "//ios/chrome/browser/native_app_launcher:native_app_launcher_internal", + "//ios/chrome/browser/passwords", + "//ios/chrome/browser/passwords:passwords_internal", + "//ios/chrome/browser/reading_list", + "//ios/chrome/browser/search_engines", + "//ios/chrome/browser/sessions", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/signin:signin_internal", + "//ios/chrome/browser/snapshots", + "//ios/chrome/browser/snapshots:snapshots_internal", + "//ios/chrome/browser/ssl", + "//ios/chrome/browser/sync", + "//ios/chrome/browser/translate", + "//ios/chrome/browser/u2f", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui:ui_internal", + "//ios/chrome/browser/ui/alert_coordinator", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/downloads", + "//ios/chrome/browser/ui/overscroll_actions", + "//ios/chrome/browser/ui/reader_mode", + "//ios/chrome/browser/ui/sad_tab", + "//ios/chrome/browser/ui/toolbar", + "//ios/chrome/browser/ui/util", + "//ios/chrome/browser/web", + "//ios/chrome/browser/web:web_internal", + "//ios/net", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/native_app_launcher", + "//ios/web", + "//net", + "//ui/base", + "//url", + ] + allow_circular_includes_from = [ ":tabs_internal_arc" ] + libs = [ + "CoreLocation.framework", + "UIKit.framework", + ] +} + +source_set("tabs_internal_arc") { + sources = [ + "tab_model_list.mm", + ] + deps = [ + ":tabs", + "//base", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + ] + libs = [ "Foundation.framework" ] + configs += [ "//build/config/compiler:enable_arc" ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "tab_model_order_controller_unittest.mm", + "tab_model_unittest.mm", + "tab_unittest.mm", + ] + deps = [ + ":tabs", + ":tabs_internal", + ":unit_tests_arc", + "//base", + "//components/bookmarks/test", + "//components/history/core/browser", + "//components/keyed_service/core", + "//ios/chrome/browser", + "//ios/chrome/browser/bookmarks", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/history", + "//ios/chrome/browser/infobars", + "//ios/chrome/browser/sessions", + "//ios/chrome/browser/sessions:test_support", + "//ios/chrome/browser/ui:ui_internal", + "//ios/chrome/browser/web:web_internal", + "//ios/chrome/test:test_support", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser:test_support", + "//ios/public/provider/chrome/browser/native_app_launcher:test_support", + "//ios/testing:ocmock_support", + "//ios/web", + "//ios/web:test_support", + "//net", + "//testing/gtest", + "//third_party/ocmock", + ] +} + +source_set("unit_tests_arc") { + testonly = true + sources = [ + "tab_model_list_unittest.mm", + ] + deps = [ + ":tabs", + ":tabs_internal", + "//base", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/sessions:test_support", + "//ios/web:test_support", + "//testing/gtest", + ] + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/chromium/ios/chrome/browser/test/BUILD.gn b/chromium/ios/chrome/browser/test/BUILD.gn new file mode 100644 index 00000000000..2383e114cbe --- /dev/null +++ b/chromium/ios/chrome/browser/test/BUILD.gn @@ -0,0 +1,34 @@ +# 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/public/provider/chrome/browser/build_config.gni") + +source_set("perf_test_support") { + testonly = true + sources = [ + "perf_test_with_bvc_ios.h", + "perf_test_with_bvc_ios.mm", + ] + deps = [ + "//base", + "//components/bookmarks/test", + "//ios/chrome/browser/autocomplete", + "//ios/chrome/browser/bookmarks", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/search_engines", + "//ios/chrome/browser/sessions", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui:ui_internal", + "//ios/chrome/browser/web:web_internal", + "//ios/chrome/test:test_support", + "//ios/chrome/test/base:perf_test_support", + "//ios/public/provider/chrome/browser", + "//ios/web:test_support", + + # Perf tests can run with any provider, but the resulting numbers will only + # be meaningful if ChromeBrowserProviderImpl is used. + ios_provider_target, + ] + libs = [ "UIKit.framework" ] +} diff --git a/chromium/ios/chrome/browser/translate/BUILD.gn b/chromium/ios/chrome/browser/translate/BUILD.gn index 3a294fe604f..f72f3fc4526 100644 --- a/chromium/ios/chrome/browser/translate/BUILD.gn +++ b/chromium/ios/chrome/browser/translate/BUILD.gn @@ -36,7 +36,7 @@ source_set("translate") { "//ios/chrome/browser", "//ios/chrome/browser/browser_state", "//ios/chrome/browser/infobars", - "//ios/public/provider/chrome/browser", + "//ios/chrome/browser/ui/infobars", "//ios/web", "//ui/base", "//ui/gfx", @@ -48,13 +48,45 @@ source_set("translate") { source_set("unit_tests") { testonly = true sources = [ + "js_language_detection_manager_unittest.mm", "translate_service_ios_unittest.cc", ] deps = [ ":translate", + "//base", + "//base/test:test_support", + "//components/translate/ios/browser", "//ios/chrome/browser", + "//ios/chrome/browser/web:test_support", + "//ios/chrome/common", "//ios/public/provider/chrome/browser:test_support", + "//ios/web", + "//ios/web:test_support", "//testing/gtest", "//url", ] } + +source_set("eg_tests") { + testonly = true + sources = [ + "translate_egtest.mm", + ] + deps = [ + ":translate", + "//base", + "//components/strings", + "//components/translate/core/browser", + "//components/translate/core/common", + "//components/translate/ios/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing:ios_test_support", + "//ios/third_party/earl_grey", + "//ios/web:test_support", + "//net", + "//ui/base", + ] + libs = [ "XCTest.framework" ] +} diff --git a/chromium/ios/chrome/browser/ui/BUILD.gn b/chromium/ios/chrome/browser/ui/BUILD.gn index 210a10f846d..aea8ed31c14 100644 --- a/chromium/ios/chrome/browser/ui/BUILD.gn +++ b/chromium/ios/chrome/browser/ui/BUILD.gn @@ -12,8 +12,6 @@ source_set("ui") { "animation_util.mm", "background_generator.h", "background_generator.mm", - "browser_otr_state.h", - "browser_otr_state.mm", "favicon_view.h", "favicon_view.mm", "file_locations.h", @@ -22,6 +20,8 @@ source_set("ui") { "image_util.mm", "native_content_controller.h", "native_content_controller.mm", + "network_activity_indicator_manager.h", + "network_activity_indicator_manager.mm", "orientation_limiting_navigation_controller.h", "orientation_limiting_navigation_controller.mm", "prerender_final_status.h", @@ -47,7 +47,6 @@ source_set("ui") { "//ios/chrome/browser", "//ios/chrome/browser/favicon", "//ios/chrome/browser/ui/commands", - "//ios/public/provider/chrome/browser", "//ios/web", "//ui/base", "//ui/gfx", @@ -58,27 +57,371 @@ source_set("ui") { "CoreGraphics.framework", "QuartzCore.framework", ] + configs += [ "//build/config/compiler:enable_arc" ] } source_set("unit_tests") { testonly = true sources = [ + "browser_container_view_unittest.mm", + "browser_view_controller_unittest.mm", + "chrome_web_view_factory_unittest.mm", + "file_locations_unittest.mm", + "fullscreen_controller_unittest.mm", + "key_commands_provider_unittest.mm", "native_content_controller_unittest.mm", + "network_activity_indicator_manager_unittest.mm", + "open_in_controller_unittest.mm", + "open_in_toolbar_unittest.mm", + "page_not_available_controller_unittest.mm", + "preload_controller_unittest.mm", "ui_util_unittest.mm", "uikit_ui_util_unittest.mm", ] deps = [ ":native_content_controller_test_xib", + ":resources_unit_tests", + ":test_support", ":ui", + ":ui_internal", "//base", + "//base/test:test_support", + "//components/bookmarks/test", + "//components/prefs:test_support", + "//components/search_engines", + "//components/sessions", + "//components/toolbar:test_support", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/bookmarks", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/find_in_page", + "//ios/chrome/browser/search_engines", + "//ios/chrome/browser/sessions", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui/activity_services", + "//ios/chrome/browser/ui/alert_coordinator", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/ntp:ntp_internal", + "//ios/chrome/browser/ui/toolbar", + "//ios/chrome/browser/ui/toolbar:test_support", + "//ios/chrome/browser/web:web_internal", + "//ios/chrome/test:test_support", + "//ios/testing:ocmock_support", + "//ios/web", + "//ios/web:test_support", + "//net", + "//net:test_support", + "//testing/gmock", "//testing/gtest", "//third_party/ocmock", + "//ui/base", + "//ui/base:test_support", "//url", ] } -bundle_data_xib("native_content_controller_test_xib") { +bundle_data_ib_file("native_content_controller_test_xib") { visibility = [ ":unit_tests" ] testonly = true source = "native_content_controller_test.xib" } + +bundle_data("resources") { + sources = [ + "resources/custom_row_voice.png", + "resources/custom_row_voice@2x.png", + "resources/custom_row_voice@2x~ipad.png", + "resources/custom_row_voice@3x.png", + "resources/custom_row_voice_pressed.png", + "resources/custom_row_voice_pressed@2x.png", + "resources/custom_row_voice_pressed@2x~ipad.png", + "resources/custom_row_voice_pressed@3x.png", + "resources/custom_row_voice_pressed~ipad.png", + "resources/custom_row_voice~ipad.png", + "resources/default_favicon.png", + "resources/default_favicon@2x.png", + "resources/default_favicon@3x.png", + "resources/default_favicon_incognito.png", + "resources/default_favicon_incognito@2x.png", + "resources/default_favicon_incognito@3x.png", + "resources/keyboard_bg_portrait_tablet.png", + "resources/keyboard_button.png", + "resources/keyboard_button@2x.png", + "resources/keyboard_button@2x~ipad.png", + "resources/keyboard_button@3x.png", + "resources/keyboard_button~ipad.png", + + # On iOS, the terms of service file need to be loaded from the application + # bundle, not from a datapack. As GetTermsOfServicePath() returns path to + # those files, they are added to //ios/chrome/browser/ui:resources. + "//components/resources/terms/terms_ar.html", + "//components/resources/terms/terms_bg.html", + "//components/resources/terms/terms_ca.html", + "//components/resources/terms/terms_cs.html", + "//components/resources/terms/terms_da.html", + "//components/resources/terms/terms_de.html", + "//components/resources/terms/terms_el.html", + "//components/resources/terms/terms_en-GB.html", + "//components/resources/terms/terms_en.html", + "//components/resources/terms/terms_es-419.html", + "//components/resources/terms/terms_es.html", + "//components/resources/terms/terms_fa.html", + "//components/resources/terms/terms_fi.html", + "//components/resources/terms/terms_fr.html", + "//components/resources/terms/terms_he.html", + "//components/resources/terms/terms_hi.html", + "//components/resources/terms/terms_hr.html", + "//components/resources/terms/terms_hu.html", + "//components/resources/terms/terms_id.html", + "//components/resources/terms/terms_it.html", + "//components/resources/terms/terms_ja.html", + "//components/resources/terms/terms_ko.html", + "//components/resources/terms/terms_lt.html", + "//components/resources/terms/terms_nb.html", + "//components/resources/terms/terms_nl.html", + "//components/resources/terms/terms_pl.html", + "//components/resources/terms/terms_pt-BR.html", + "//components/resources/terms/terms_pt-PT.html", + "//components/resources/terms/terms_ro.html", + "//components/resources/terms/terms_ru.html", + "//components/resources/terms/terms_sk.html", + "//components/resources/terms/terms_sr.html", + "//components/resources/terms/terms_sv.html", + "//components/resources/terms/terms_th.html", + "//components/resources/terms/terms_tr.html", + "//components/resources/terms/terms_uk.html", + "//components/resources/terms/terms_vi.html", + "//components/resources/terms/terms_zh-CN.html", + "//components/resources/terms/terms_zh-TW.html", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +source_set("ui_internal") { + sources = [ + "browser_container_view.h", + "browser_container_view.mm", + "browser_view_controller.h", + "browser_view_controller.mm", + "browser_view_controller_dependency_factory.h", + "browser_view_controller_dependency_factory.mm", + "chrome_web_view_factory.h", + "chrome_web_view_factory.mm", + "external_file_controller.h", + "external_file_controller.mm", + "external_file_remover.h", + "external_file_remover.mm", + "fade_truncated_label.h", + "fade_truncated_label.mm", + "fullscreen_controller.h", + "fullscreen_controller.mm", + "key_commands_provider.h", + "key_commands_provider.mm", + "open_in_controller.h", + "open_in_controller.mm", + "open_in_controller_testing.h", + "open_in_toolbar.h", + "open_in_toolbar.mm", + "page_not_available_controller.h", + "page_not_available_controller.mm", + "preload_controller.h", + "preload_controller.mm", + "preload_controller_delegate.h", + "prerender_delegate.h", + ] + deps = [ + ":resources", + ":ui", + "//base", + "//base:i18n", + "//components/bookmarks/browser", + "//components/infobars/core", + "//components/prefs", + "//components/reading_list/core", + "//components/reading_list/ios", + "//components/search_engines", + "//components/sessions", + "//components/strings", + "//components/toolbar", + "//components/url_formatter", + "//ios/chrome/app:tests_hook", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/bookmarks", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/favicon", + "//ios/chrome/browser/find_in_page", + "//ios/chrome/browser/first_run", + "//ios/chrome/browser/geolocation:geolocation_internal", + "//ios/chrome/browser/infobars", + "//ios/chrome/browser/metrics:metrics_internal", + "//ios/chrome/browser/native_app_launcher:native_app_launcher_internal", + "//ios/chrome/browser/net", + "//ios/chrome/browser/passwords", + "//ios/chrome/browser/payments", + "//ios/chrome/browser/prefs", + "//ios/chrome/browser/reading_list", + "//ios/chrome/browser/search_engines", + "//ios/chrome/browser/sessions", + "//ios/chrome/browser/snapshots", + "//ios/chrome/browser/snapshots:snapshots_internal", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui/activity_services", + "//ios/chrome/browser/ui/alert_coordinator", + "//ios/chrome/browser/ui/authentication", + "//ios/chrome/browser/ui/bookmarks", + "//ios/chrome/browser/ui/colors", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/context_menu", + "//ios/chrome/browser/ui/contextual_search", + "//ios/chrome/browser/ui/dialogs:dialogs_internal", + "//ios/chrome/browser/ui/elements:elements_internal", + "//ios/chrome/browser/ui/find_bar", + "//ios/chrome/browser/ui/first_run", + "//ios/chrome/browser/ui/history", + "//ios/chrome/browser/ui/keyboard", + "//ios/chrome/browser/ui/no_tabs", + "//ios/chrome/browser/ui/ntp", + "//ios/chrome/browser/ui/ntp:ntp_internal", + "//ios/chrome/browser/ui/ntp/recent_tabs", + "//ios/chrome/browser/ui/omnibox:omnibox_internal", + "//ios/chrome/browser/ui/overscroll_actions", + "//ios/chrome/browser/ui/print", + "//ios/chrome/browser/ui/qr_scanner", + "//ios/chrome/browser/ui/reading_list", + "//ios/chrome/browser/ui/stack_view", + "//ios/chrome/browser/ui/static_content", + "//ios/chrome/browser/ui/sync", + "//ios/chrome/browser/ui/tab_switcher", + "//ios/chrome/browser/ui/tabs", + "//ios/chrome/browser/ui/tools_menu", + "//ios/chrome/browser/ui/voice", + "//ios/chrome/browser/upgrade", + "//ios/chrome/browser/web:web_internal", + "//ios/chrome/common", + "//ios/net", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/ui", + "//ios/public/provider/chrome/browser/voice", + "//ios/third_party/material_components_ios", + "//ios/web", + "//ios/web/public/image_fetcher", + "//net", + "//third_party/google_toolbox_for_mac", + "//ui/base", + "//ui/gfx", + "//url", + ] + public_deps = [ + "//ios/chrome/browser/ui/side_swipe", + "//ios/chrome/browser/ui/toolbar", + ] + allow_circular_includes_from = [ + "//ios/chrome/browser/ui/tabs", + "//ios/chrome/browser/ui/tab_switcher", + "//ios/chrome/browser/ui/toolbar", + "//ios/chrome/browser/ui/overscroll_actions", + "//ios/chrome/browser/snapshots:snapshots_internal", + "//ios/chrome/browser/web:web_internal", + "//ios/chrome/browser/ui/ntp:ntp_internal", + "//ios/chrome/browser/ui/stack_view", + ] + libs = [ + "AssetsLibrary.framework", + "MessageUI.framework", + "MobileCoreServices.framework", + "PassKit.framework", + "Photos.framework", + "QuartzCore.framework", + "StoreKit.framework", + "UIKit.framework", + "WebKit.framework", + ] +} + +source_set("test_support") { + testonly = true + sources = [ + "browser_view_controller_testing.h", + "browser_view_controller_testing.mm", + ] + deps = [ + ":ui_internal", + "//ios/chrome/browser/ui/toolbar", + "//ios/chrome/browser/ui/toolbar:test_support", + ] +} + +bundle_data("resources_unit_tests") { + visibility = [ ":unit_tests" ] + testonly = true + sources = [ + "//ios/chrome/test/data/testbadpass.pkpass", + "//ios/chrome/test/data/testpass.pkpass", + ] + outputs = [ + "{{bundle_resources_dir}}/ios/chrome/test/data/{{source_file_part}}", + ] +} + +source_set("eg_tests") { + testonly = true + sources = [ + "browser_view_controller_egtest.mm", + "error_page_egtest.mm", + "fullscreen_egtest.mm", + "keyboard_commands_egtest.mm", + ] + deps = [ + ":ui", + ":ui_internal", + "//base", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/ntp:ntp_internal", + "//ios/chrome/browser/ui/toolbar", + "//ios/chrome/browser/ui/tools_menu", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing:ios_test_support", + "//ios/third_party/earl_grey", + "//ios/web:earl_grey_test_support", + "//ios/web:test_support", + "//ui/base", + "//url", + ] + libs = [ + "UIKit.framework", + "WebKit.framework", + "XCTest.framework", + ] +} + +source_set("perf_tests") { + testonly = true + sources = [ + "omnibox_perftest.mm", + ] + deps = [ + "//base", + "//base/test:test_support", + "//components/toolbar:test_support", + "//ios/chrome/browser/autocomplete", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/search_engines", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/tabs:tabs_internal", + "//ios/chrome/browser/ui/omnibox:omnibox_internal", + "//ios/chrome/browser/ui/toolbar", + "//ios/chrome/test/base:perf_test_support", + "//testing/gtest", + "//third_party/ocmock", + "//ui/base:test_support", + ] + libs = [ "UIKit.framework" ] +} diff --git a/chromium/ios/chrome/browser/ui/activity_services/BUILD.gn b/chromium/ios/chrome/browser/ui/activity_services/BUILD.gn new file mode 100644 index 00000000000..3bbbee06d18 --- /dev/null +++ b/chromium/ios/chrome/browser/ui/activity_services/BUILD.gn @@ -0,0 +1,114 @@ +# 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. + +bundle_data("assets") { + sources = [ + "resources/activity_services_print.xcassets/Contents.json", + "resources/activity_services_print.xcassets/activity_services_print.imageset/Contents.json", + "resources/activity_services_print.xcassets/activity_services_print.imageset/activity_services_print-60@2x.png", + "resources/activity_services_print.xcassets/activity_services_print.imageset/activity_services_print-60@3x.png", + "resources/activity_services_print.xcassets/activity_services_print.imageset/activity_services_print-76.png", + "resources/activity_services_print.xcassets/activity_services_print.imageset/activity_services_print-76@2x.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +bundle_data("resources") { + sources = [ + "resources/activity_services_reading_list.png", + "resources/activity_services_reading_list@2x.png", + "resources/activity_services_reading_list@3x.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +source_set("activity_services") { + configs += [ "//build/config/compiler:enable_arc" ] + sources = [ + "activity_service_controller.h", + "activity_service_controller.mm", + "activity_type_util.h", + "activity_type_util.mm", + "appex_constants.h", + "appex_constants.mm", + "chrome_activity_item_source.h", + "chrome_activity_item_source.mm", + "chrome_activity_item_thumbnail_generator.h", + "chrome_activity_item_thumbnail_generator.mm", + "print_activity.h", + "print_activity.mm", + "reading_list_activity.h", + "reading_list_activity.mm", + "share_protocol.h", + "share_to_data.h", + "share_to_data.mm", + "share_to_data_builder.h", + "share_to_data_builder.mm", + ] + deps = [ + ":assets", + ":resources", + "//base", + "//components/reading_list/core", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/commands", + "//net", + "//ui/base", + "//url", + ] + libs = [ + "MobileCoreServices.framework", + "UIKit.framework", + ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "activity_service_controller_unittest.mm", + "activity_type_util_unittest.mm", + "chrome_activity_item_thumbnail_generator_unittest.mm", + ] + deps = [ + ":activity_services", + "//base", + "//base/test:test_support", + "//components/reading_list/core", + "//ios/chrome/app/strings", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/tabs", + "//ios/web:test_support", + "//testing/gtest", + "//third_party/ocmock", + "//ui/base", + "//ui/base:test_support", + ] +} + +source_set("eg_tests") { + testonly = true + sources = [ + "activity_service_controller_egtest.mm", + ] + deps = [ + "//base", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui:ui_internal", + "//ios/chrome/test/earl_grey:test_support", + "//ios/third_party/material_components_ios", + "//ios/web:test_support", + "//ui/base", + ] + libs = [ "XCTest.framework" ] +} diff --git a/chromium/ios/chrome/browser/ui/alert_coordinator/BUILD.gn b/chromium/ios/chrome/browser/ui/alert_coordinator/BUILD.gn index 5e70f810efd..db803b74f7a 100644 --- a/chromium/ios/chrome/browser/ui/alert_coordinator/BUILD.gn +++ b/chromium/ios/chrome/browser/ui/alert_coordinator/BUILD.gn @@ -3,35 +3,84 @@ # found in the LICENSE file. source_set("alert_coordinator") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "action_sheet_coordinator.h", "action_sheet_coordinator.mm", "alert_coordinator.h", "alert_coordinator.mm", + "form_resubmission_coordinator.h", + "form_resubmission_coordinator.mm", "input_alert_coordinator.h", "input_alert_coordinator.mm", ] deps = [ "//base", + "//components/strings", "//ios/chrome/browser", + "//ios/web", "//ui/base", "//ui/strings", ] } source_set("unit_tests") { + configs += [ "//build/config/compiler:enable_arc" ] testonly = true sources = [ "action_sheet_coordinator_unittest.mm", "alert_coordinator_unittest.mm", + "form_resubmission_coordinator_unittest.mm", "input_alert_coordinator_unittest.mm", ] deps = [ ":alert_coordinator", "//base", + "//base/test:test_support", + "//components/strings", + "//ios/chrome/browser/ui", + "//ios/chrome/test:test_support", + "//ios/web:test_support", "//testing/gtest", "//third_party/ocmock", "//ui/base", "//ui/strings", ] } + +source_set("alert_coordinator_internal") { + sources = [ + "loading_alert_coordinator.h", + "loading_alert_coordinator.mm", + ] + deps = [ + "//base", + "//components/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/material_components", + "//ios/third_party/material_components_ios", + "//ios/third_party/material_roboto_font_loader_ios", + "//ui/base", + ] + libs = [ "UIKit.framework" ] +} + +source_set("eg_tests") { + testonly = true + sources = [ + "alert_coordinator_egtest.mm", + ] + deps = [ + ":alert_coordinator", + "//base", + "//components/strings", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey", + ] + libs = [ + "UIKit.framework", + "XCTest.framework", + ] +} diff --git a/chromium/ios/chrome/browser/ui/authentication/BUILD.gn b/chromium/ios/chrome/browser/ui/authentication/BUILD.gn new file mode 100644 index 00000000000..e55edee76c0 --- /dev/null +++ b/chromium/ios/chrome/browser/ui/authentication/BUILD.gn @@ -0,0 +1,137 @@ +# 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. + +bundle_data("resources") { + sources = [ + "resources/signin_confirmation_more.png", + "resources/signin_confirmation_more@2x.png", + "resources/signin_confirmation_more@3x.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +source_set("authentication") { + sources = [ + "authentication_flow.h", + "authentication_flow.mm", + "authentication_flow_performer.h", + "authentication_flow_performer.mm", + "authentication_flow_performer_delegate.h", + "authentication_ui_util.h", + "authentication_ui_util.mm", + "chrome_signin_view_controller.h", + "chrome_signin_view_controller.mm", + "re_signin_infobar_delegate.h", + "re_signin_infobar_delegate.mm", + "signed_in_accounts_view_controller.h", + "signed_in_accounts_view_controller.mm", + "signin_account_selector_view_controller.h", + "signin_account_selector_view_controller.mm", + "signin_confirmation_view_controller.h", + "signin_confirmation_view_controller.mm", + "signin_interaction_controller.h", + "signin_interaction_controller.mm", + ] + deps = [ + ":resources", + "//base", + "//components/google/core/browser", + "//components/infobars/core", + "//components/prefs", + "//components/signin/core/browser", + "//components/signin/core/common", + "//components/signin/ios/browser", + "//components/strings", + "//google_apis", + "//ios/chrome/app/strings", + "//ios/chrome/app/theme", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/browsing_data", + "//ios/chrome/browser/infobars", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/sync", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/alert_coordinator", + "//ios/chrome/browser/ui/collection_view", + "//ios/chrome/browser/ui/collection_view/cells", + "//ios/chrome/browser/ui/colors", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/settings/cells", + "//ios/chrome/browser/ui/settings/utils", + "//ios/chrome/browser/ui/util", + "//ios/chrome/common", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/images", + "//ios/public/provider/chrome/browser/signin", + "//ios/third_party/material_components_ios", + "//ios/third_party/material_roboto_font_loader_ios", + "//ui/base", + "//ui/gfx", + "//url", + ] + libs = [ + "CoreGraphics.framework", + "QuartzCore.framework", + "UIKit.framework", + ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "authentication_flow_unittest.mm", + "re_signin_infobar_delegate_unittest.mm", + "signed_in_accounts_view_controller_unittest.mm", + ] + deps = [ + ":authentication", + "//base", + "//base/test:test_support", + "//components/pref_registry", + "//components/sync_preferences", + "//components/sync_preferences:test_support", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/infobars", + "//ios/chrome/browser/prefs:browser_prefs", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/signin:test_support", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/test:test_support", + "//ios/public/provider/chrome/browser/signin:test_support", + "//ios/web:test_support", + "//testing/gtest", + "//third_party/ocmock", + "//ui/base", + ] +} + +source_set("eg_tests") { + testonly = true + sources = [ + "signin_interaction_controller_egtest.mm", + ] + deps = [ + "//base", + "//base/test:test_support", + "//components/signin/core/browser", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/settings", + "//ios/chrome/browser/ui/tools_menu", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/public/provider/chrome/browser/signin:test_support", + "//ios/testing:ios_test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey", + ] + libs = [ "XCTest.framework" ] +} diff --git a/chromium/ios/chrome/browser/ui/autofill/BUILD.gn b/chromium/ios/chrome/browser/ui/autofill/BUILD.gn index 9b3f89faa76..0dc7a2f36e1 100644 --- a/chromium/ios/chrome/browser/ui/autofill/BUILD.gn +++ b/chromium/ios/chrome/browser/ui/autofill/BUILD.gn @@ -7,6 +7,10 @@ source_set("autofill") { "autofill_client_ios.h", "autofill_client_ios.mm", "autofill_save_card_infobar.mm", + "card_unmask_prompt_view_bridge.h", + "card_unmask_prompt_view_bridge.mm", + "storage_switch_tooltip.h", + "storage_switch_tooltip.mm", ] deps = [ "//base", @@ -17,11 +21,24 @@ source_set("autofill") { "//components/keyed_service/core", "//components/password_manager/core/browser", "//components/prefs", + "//components/strings", "//google_apis", "//ios/chrome/browser", "//ios/chrome/browser/autofill", "//ios/chrome/browser/browser_state", "//ios/chrome/browser/infobars", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/autofill/cells", + "//ios/chrome/browser/ui/collection_view/cells", + "//ios/chrome/browser/ui/colors", "//ios/public/provider/chrome/browser", + "//ios/third_party/material_components_ios", + "//ios/third_party/material_roboto_font_loader_ios", + "//ios/web", + "//ui/base", ] + public_deps = [ + "//ios/chrome/browser/ui/collection_view", + ] + libs = [ "UIKit.framework" ] } diff --git a/chromium/ios/chrome/browser/ui/autofill/cells/BUILD.gn b/chromium/ios/chrome/browser/ui/autofill/cells/BUILD.gn new file mode 100644 index 00000000000..086719673c8 --- /dev/null +++ b/chromium/ios/chrome/browser/ui/autofill/cells/BUILD.gn @@ -0,0 +1,51 @@ +# 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. + +source_set("cells") { + sources = [ + "cvc_item.h", + "cvc_item.mm", + "status_item.h", + "status_item.mm", + "storage_switch_item.h", + "storage_switch_item.mm", + ] + + deps = [ + "//components/resources", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/app/theme", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/collection_view/cells", + "//ios/chrome/browser/ui/colors", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/ui", + "//ios/third_party/material_components_ios", + "//ios/third_party/material_roboto_font_loader_ios", + "//ui/base", + ] + + configs += [ "//build/config/compiler:enable_arc" ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "cvc_item_unittest.mm", + "status_item_unittest.mm", + "storage_switch_item_unittest.mm", + ] + + deps = [ + ":cells", + "//base", + "//components/resources", + "//ios/chrome/browser/ui/collection_view/cells", + "//ios/third_party/material_components_ios", + "//testing/gtest", + ] + + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/chromium/ios/chrome/browser/ui/bookmarks/BUILD.gn b/chromium/ios/chrome/browser/ui/bookmarks/BUILD.gn new file mode 100644 index 00000000000..c589e263b9f --- /dev/null +++ b/chromium/ios/chrome/browser/ui/bookmarks/BUILD.gn @@ -0,0 +1,256 @@ +# 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. + +source_set("bookmarks") { + sources = [ + "bookmark_all_collection_view.h", + "bookmark_all_collection_view.mm", + "bookmark_collection_cells.h", + "bookmark_collection_cells.mm", + "bookmark_collection_view.h", + "bookmark_collection_view.mm", + "bookmark_collection_view_background.h", + "bookmark_collection_view_background.mm", + "bookmark_controller_factory.h", + "bookmark_controller_factory.mm", + "bookmark_edit_view_controller.h", + "bookmark_edit_view_controller.mm", + "bookmark_elevated_toolbar.h", + "bookmark_elevated_toolbar.mm", + "bookmark_extended_button.h", + "bookmark_extended_button.mm", + "bookmark_folder_collection_view.h", + "bookmark_folder_collection_view.mm", + "bookmark_folder_editor_view_controller.h", + "bookmark_folder_editor_view_controller.mm", + "bookmark_folder_table_view_cell.h", + "bookmark_folder_table_view_cell.mm", + "bookmark_folder_view_controller.h", + "bookmark_folder_view_controller.mm", + "bookmark_home_handset_view_controller.h", + "bookmark_home_handset_view_controller.mm", + "bookmark_home_primary_view.h", + "bookmark_home_tablet_ntp_controller.h", + "bookmark_home_tablet_ntp_controller.mm", + "bookmark_home_view_controller.h", + "bookmark_home_view_controller.mm", + "bookmark_home_waiting_view.h", + "bookmark_home_waiting_view.mm", + "bookmark_interaction_controller.h", + "bookmark_interaction_controller.mm", + "bookmark_menu_cell.h", + "bookmark_menu_cell.mm", + "bookmark_menu_item.h", + "bookmark_menu_item.mm", + "bookmark_menu_view.h", + "bookmark_menu_view.mm", + "bookmark_model_bridge_observer.h", + "bookmark_model_bridge_observer.mm", + "bookmark_navigation_controller.h", + "bookmark_navigation_controller.mm", + "bookmark_panel_view.h", + "bookmark_panel_view.mm", + "bookmark_position_cache.h", + "bookmark_position_cache.mm", + "bookmark_promo_cell.h", + "bookmark_promo_cell.mm", + "bookmark_promo_controller.h", + "bookmark_promo_controller.mm", + "bookmark_utils_ios.h", + "bookmark_utils_ios.mm", + "undo_manager_bridge_observer.h", + "undo_manager_bridge_observer.mm", + "undo_manager_wrapper.h", + "undo_manager_wrapper.mm", + ] + deps = [ + ":resources", + "//base", + "//base:i18n", + "//components/bookmarks/browser", + "//components/favicon/core", + "//components/favicon_base", + "//components/pref_registry", + "//components/prefs", + "//components/query_parser", + "//components/signin/core/browser", + "//components/strings", + "//components/undo", + "//components/url_formatter", + "//google_apis", + "//ios/chrome/app/strings", + "//ios/chrome/app/theme", + "//ios/chrome/browser", + "//ios/chrome/browser/bookmarks", + "//ios/chrome/browser/bookmarks:bookmarks_utils", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/favicon", + "//ios/chrome/browser/metrics:metrics_internal", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/alert_coordinator", + "//ios/chrome/browser/ui/bookmarks/bars", + "//ios/chrome/browser/ui/bookmarks/cells", + "//ios/chrome/browser/ui/collection_view", + "//ios/chrome/browser/ui/collection_view/cells", + "//ios/chrome/browser/ui/colors", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/icons", + "//ios/chrome/browser/ui/keyboard", + "//ios/chrome/browser/ui/material_components", + "//ios/chrome/browser/ui/ntp", + "//ios/chrome/browser/undo", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/ui", + "//ios/third_party/material_components_ios", + "//ios/third_party/material_roboto_font_loader_ios", + "//ios/web", + "//skia", + "//ui/base", + "//ui/gfx", + "//url", + ] + allow_circular_includes_from = [ + "//ios/chrome/browser/ui/bookmarks/bars", + "//ios/chrome/browser/ui/bookmarks/cells", + ] + libs = [ + "CoreGraphics.framework", + "QuartzCore.framework", + "UIKit.framework", + ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "bookmark_home_view_controller_unittest.mm", + "bookmark_ios_unittest.mm", + "bookmark_position_cache_unittest.mm", + "bookmark_utils_ios_unittest.mm", + ] + deps = [ + ":bookmarks", + "//base", + "//components/bookmarks/browser", + "//components/bookmarks/test", + "//ios/chrome/browser", + "//ios/chrome/browser/bookmarks", + "//ios/chrome/browser/browser_state:test_support", + "//ios/web:test_support", + "//testing/gtest", + ] +} + +source_set("eg_tests") { + testonly = true + sources = [ + "bookmarks_egtest.mm", + ] + deps = [ + "//base", + "//components/bookmarks/browser", + "//components/prefs", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/bookmarks", + "//ios/chrome/browser/bookmarks:bookmarks_utils", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/toolbar", + "//ios/chrome/browser/ui/tools_menu", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/public/provider/chrome/browser/signin:test_support", + "//ios/testing:ios_test_support", + "//ios/third_party/earl_grey", + "//ios/web:test_support", + "//ui/base", + "//url", + ] + libs = [ + "UIKit.framework", + "XCTest.framework", + ] +} + +bundle_data("resources") { + sources = [ + "resources/bookmark_bar_innershadow.png", + "resources/bookmark_bar_innershadow@2x.png", + "resources/bookmark_bar_innershadow@3x.png", + "resources/bookmark_bar_shadow.png", + "resources/bookmark_bar_shadow@2x.png", + "resources/bookmark_bar_shadow@3x.png", + "resources/bookmark_black_delete.png", + "resources/bookmark_black_delete@2x.png", + "resources/bookmark_black_delete@3x.png", + "resources/bookmark_black_edit.png", + "resources/bookmark_black_edit@2x.png", + "resources/bookmark_black_edit@3x.png", + "resources/bookmark_black_move.png", + "resources/bookmark_black_move@2x.png", + "resources/bookmark_black_move@3x.png", + "resources/bookmark_black_select.png", + "resources/bookmark_black_select@2x.png", + "resources/bookmark_black_select@3x.png", + "resources/bookmark_blue_check.png", + "resources/bookmark_blue_check@2x.png", + "resources/bookmark_blue_check@3x.png", + "resources/bookmark_blue_folder.png", + "resources/bookmark_blue_folder@2x.png", + "resources/bookmark_blue_folder@3x.png", + "resources/bookmark_blue_star.png", + "resources/bookmark_blue_star@2x.png", + "resources/bookmark_blue_star@3x.png", + "resources/bookmark_gray_back.png", + "resources/bookmark_gray_back@2x.png", + "resources/bookmark_gray_back@3x.png", + "resources/bookmark_gray_check.png", + "resources/bookmark_gray_check@2x.png", + "resources/bookmark_gray_check@3x.png", + "resources/bookmark_gray_close.png", + "resources/bookmark_gray_close@2x.png", + "resources/bookmark_gray_close@3x.png", + "resources/bookmark_gray_edit.png", + "resources/bookmark_gray_edit@2x.png", + "resources/bookmark_gray_edit@3x.png", + "resources/bookmark_gray_folder.png", + "resources/bookmark_gray_folder@2x.png", + "resources/bookmark_gray_folder@3x.png", + "resources/bookmark_gray_menu.png", + "resources/bookmark_gray_menu@2x.png", + "resources/bookmark_gray_menu@3x.png", + "resources/bookmark_gray_new_folder.png", + "resources/bookmark_gray_new_folder@2x.png", + "resources/bookmark_gray_new_folder@3x.png", + "resources/bookmark_gray_star.png", + "resources/bookmark_gray_star@2x.png", + "resources/bookmark_gray_star@3x.png", + "resources/bookmark_gray_star_large.png", + "resources/bookmark_gray_star_large@2x.png", + "resources/bookmark_gray_star_large@3x.png", + "resources/bookmark_more.png", + "resources/bookmark_more@2x.png", + "resources/bookmark_more@3x.png", + "resources/bookmark_white_close.png", + "resources/bookmark_white_close@2x.png", + "resources/bookmark_white_close@3x.png", + "resources/bookmark_white_delete.png", + "resources/bookmark_white_delete@2x.png", + "resources/bookmark_white_delete@3x.png", + "resources/bookmark_white_edit.png", + "resources/bookmark_white_edit@2x.png", + "resources/bookmark_white_edit@3x.png", + "resources/bookmark_white_move.png", + "resources/bookmark_white_move@2x.png", + "resources/bookmark_white_move@3x.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} diff --git a/chromium/ios/chrome/browser/ui/bookmarks/bars/BUILD.gn b/chromium/ios/chrome/browser/ui/bookmarks/bars/BUILD.gn new file mode 100644 index 00000000000..47c8cfe78f9 --- /dev/null +++ b/chromium/ios/chrome/browser/ui/bookmarks/bars/BUILD.gn @@ -0,0 +1,25 @@ +# 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. + +source_set("bars") { + sources = [ + "bookmark_editing_bar.h", + "bookmark_editing_bar.mm", + "bookmark_navigation_bar.h", + "bookmark_navigation_bar.mm", + "bookmark_top_bar.h", + "bookmark_top_bar.mm", + ] + deps = [ + "//base", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui", + "//ios/third_party/material_components_ios", + "//ui/base", + ] + libs = [ + "QuartzCore.framework", + "UIKit.framework", + ] +} diff --git a/chromium/ios/chrome/browser/ui/bookmarks/cells/BUILD.gn b/chromium/ios/chrome/browser/ui/bookmarks/cells/BUILD.gn new file mode 100644 index 00000000000..13996b56794 --- /dev/null +++ b/chromium/ios/chrome/browser/ui/bookmarks/cells/BUILD.gn @@ -0,0 +1,45 @@ +# 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. + +source_set("cells") { + sources = [ + "bookmark_parent_folder_item.h", + "bookmark_parent_folder_item.mm", + "bookmark_text_field_item.h", + "bookmark_text_field_item.mm", + ] + + deps = [ + "//base", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/collection_view/cells", + "//ios/chrome/browser/ui/icons", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/ui", + "//ios/third_party/material_components_ios", + "//ios/third_party/material_roboto_font_loader_ios", + "//ui/base", + ] + + configs += [ "//build/config/compiler:enable_arc" ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "bookmark_parent_folder_item_unittest.mm", + "bookmark_text_field_item_unittest.mm", + ] + + deps = [ + ":cells", + "//ios/chrome/browser/ui/collection_view/cells", + "//ios/third_party/material_components_ios", + "//testing/gtest", + "//third_party/ocmock", + ] + + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/chromium/ios/chrome/browser/ui/collection_view/BUILD.gn b/chromium/ios/chrome/browser/ui/collection_view/BUILD.gn new file mode 100644 index 00000000000..0aafb010ec3 --- /dev/null +++ b/chromium/ios/chrome/browser/ui/collection_view/BUILD.gn @@ -0,0 +1,54 @@ +# 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. + +source_set("collection_view") { + sources = [ + "collection_view_controller.h", + "collection_view_controller.mm", + "collection_view_model.h", + "collection_view_model.mm", + ] + deps = [ + "//base", + "//ios/chrome/browser/ui/material_components", + ] + public_deps = [ + "//ios/chrome/browser/ui/collection_view/cells", + "//ios/third_party/material_components_ios", + ] +} + +source_set("test_support") { + testonly = true + sources = [ + "collection_view_controller_test.h", + "collection_view_controller_test.mm", + ] + deps = [ + ":collection_view", + "//base", + "//ios/chrome/browser/ui/collection_view/cells", + "//ios/chrome/test:test_support", + "//ios/third_party/material_components_ios", + "//testing/gtest", + "//ui/base", + ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "collection_view_controller_unittest.mm", + "collection_view_model_unittest.mm", + ] + deps = [ + ":collection_view", + "//base", + "//ios/chrome/browser/ui/collection_view/cells", + "//ios/chrome/test:test_support", + "//ios/chrome/test/base", + "//ios/third_party/material_components_ios", + "//testing/gtest", + ] +} diff --git a/chromium/ios/chrome/browser/ui/collection_view/cells/BUILD.gn b/chromium/ios/chrome/browser/ui/collection_view/cells/BUILD.gn new file mode 100644 index 00000000000..e6e8c32bcce --- /dev/null +++ b/chromium/ios/chrome/browser/ui/collection_view/cells/BUILD.gn @@ -0,0 +1,72 @@ +# 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. + +source_set("cells") { + sources = [ + "MDCCollectionViewCell+Chrome.h", + "MDCCollectionViewCell+Chrome.mm", + "activity_indicator_cell.h", + "activity_indicator_cell.mm", + "collection_view_account_item.h", + "collection_view_account_item.mm", + "collection_view_detail_item.h", + "collection_view_detail_item.mm", + "collection_view_footer_item.h", + "collection_view_footer_item.mm", + "collection_view_item.h", + "collection_view_item.mm", + "collection_view_switch_item.h", + "collection_view_switch_item.mm", + "collection_view_text_item.h", + "collection_view_text_item.mm", + ] + + deps = [ + "//base", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui/colors", + "//ios/chrome/browser/ui/material_components", + "//ios/chrome/browser/ui/util", + "//ios/chrome/common", + "//ios/third_party/material_roboto_font_loader_ios", + "//ui/base", + "//url", + ] + public_deps = [ + "//ios/third_party/material_components_ios", + ] + + configs += [ "//build/config/compiler:enable_arc" ] +} + +source_set("test_support") { + testonly = true + sources = [ + "test_utils.h", + "test_utils.mm", + ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "MDCCollectionViewCell+Chrome_unittest.mm", + "activity_indicator_cell_unittest.mm", + "collection_view_account_item_unittest.mm", + "collection_view_detail_item_unittest.mm", + "collection_view_footer_item_unittest.mm", + "collection_view_item_unittest.mm", + "collection_view_switch_item_unittest.mm", + "collection_view_text_item_unittest.mm", + ] + + deps = [ + ":cells", + ":test_support", + "//ios/third_party/material_components_ios", + "//testing/gtest", + ] + + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/chromium/ios/chrome/browser/ui/colors/BUILD.gn b/chromium/ios/chrome/browser/ui/colors/BUILD.gn new file mode 100644 index 00000000000..f49ba7bc01d --- /dev/null +++ b/chromium/ios/chrome/browser/ui/colors/BUILD.gn @@ -0,0 +1,14 @@ +# 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. + +source_set("colors") { + sources = [ + "MDCPalette+CrAdditions.h", + "MDCPalette+CrAdditions.mm", + ] + deps = [ + "//ios/third_party/material_components_ios", + "//ios/web", + ] +} diff --git a/chromium/ios/chrome/browser/ui/commands/BUILD.gn b/chromium/ios/chrome/browser/ui/commands/BUILD.gn index c02e52ac41a..ce2d0523b5c 100644 --- a/chromium/ios/chrome/browser/ui/commands/BUILD.gn +++ b/chromium/ios/chrome/browser/ui/commands/BUILD.gn @@ -3,6 +3,7 @@ # found in the LICENSE file. source_set("commands") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "UIKit+ChromeExecuteCommand.h", "UIKit+ChromeExecuteCommand.mm", @@ -33,6 +34,7 @@ source_set("commands") { } source_set("unit_tests") { + configs += [ "//build/config/compiler:enable_arc" ] testonly = true sources = [ "set_up_for_testing_command_unittest.mm", diff --git a/chromium/ios/chrome/browser/ui/context_menu/BUILD.gn b/chromium/ios/chrome/browser/ui/context_menu/BUILD.gn index f78e42e0ab4..19804351c20 100644 --- a/chromium/ios/chrome/browser/ui/context_menu/BUILD.gn +++ b/chromium/ios/chrome/browser/ui/context_menu/BUILD.gn @@ -3,6 +3,7 @@ # found in the LICENSE file. source_set("context_menu") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "context_menu_coordinator.h", "context_menu_coordinator.mm", diff --git a/chromium/ios/chrome/browser/ui/contextual_search/BUILD.gn b/chromium/ios/chrome/browser/ui/contextual_search/BUILD.gn new file mode 100644 index 00000000000..e251d1e347e --- /dev/null +++ b/chromium/ios/chrome/browser/ui/contextual_search/BUILD.gn @@ -0,0 +1,142 @@ +# 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") + +bundle_data("resources") { + sources = [ + "resources/expand_less.png", + "resources/expand_less@2x.png", + "resources/expand_less@3x.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +js_compile_unchecked("injected_js") { + sources = [ + "resources/contextualsearch.js", + ] +} + +bundle_data("resources_unit_tests") { + testonly = true + sources = [ + "resources/contextualsearch_unittest.js", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +source_set("contextual_search") { + sources = [ + "contextual_search_context.cc", + "contextual_search_context.h", + "contextual_search_controller.h", + "contextual_search_controller.mm", + "contextual_search_delegate.cc", + "contextual_search_delegate.h", + "contextual_search_header_view.h", + "contextual_search_header_view.mm", + "contextual_search_highlighter_view.h", + "contextual_search_highlighter_view.mm", + "contextual_search_mask_view.h", + "contextual_search_mask_view.mm", + "contextual_search_metrics.h", + "contextual_search_metrics.mm", + "contextual_search_panel_protocols.h", + "contextual_search_panel_view.h", + "contextual_search_panel_view.mm", + "contextual_search_promo_view.h", + "contextual_search_promo_view.mm", + "contextual_search_results_view.h", + "contextual_search_results_view.mm", + "contextual_search_web_state_observer.h", + "contextual_search_web_state_observer.mm", + "js_contextual_search_manager.h", + "js_contextual_search_manager.mm", + "panel_configuration.h", + "panel_configuration.mm", + "touch_to_search_permissions_mediator.h", + "touch_to_search_permissions_mediator.mm", + "window_gesture_observer.h", + "window_gesture_observer.mm", + ] + deps = [ + ":injected_js", + ":resources", + "//base", + "//components/google/core/browser", + "//components/prefs", + "//components/search_engines", + "//components/variations", + "//components/variations/net", + "//ios/chrome/app:tests_hook", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/prefs", + "//ios/chrome/browser/search_engines", + "//ios/chrome/browser/sync", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/colors", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/contextual_search/protos", + "//ios/chrome/browser/ui/util", + "//ios/chrome/browser/web", + "//ios/chrome/common", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/images", + "//ios/third_party/material_components_ios", + "//ios/third_party/material_roboto_font_loader_ios", + "//ios/web", + "//net", + "//ui/base", + "//url", + ] + libs = [ "UIKit.framework" ] +} + +source_set("test_support") { + testonly = true + sources = [ + "touch_to_search_permissions_mediator+testing.h", + "touch_to_search_permissions_mediator+testing.mm", + ] + deps = [ + ":contextual_search", + ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "contextual_search_js_unittest.mm", + "touch_to_search_permissions_mediator_unittest.mm", + ] + deps = [ + ":contextual_search", + ":resources_unit_tests", + ":test_support", + "//base", + "//base/test:test_support", + "//components/pref_registry", + "//components/prefs", + "//components/search_engines", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/search_engines", + "//ios/chrome/browser/sync", + "//ios/chrome/browser/sync:test_support", + "//ios/chrome/browser/web:test_support", + "//ios/web", + "//ios/web:test_support", + "//net", + "//testing/gtest", + "//third_party/ocmock", + ] +} diff --git a/chromium/ios/chrome/browser/ui/contextual_search/protos/BUILD.gn b/chromium/ios/chrome/browser/ui/contextual_search/protos/BUILD.gn new file mode 100644 index 00000000000..a882a0608b1 --- /dev/null +++ b/chromium/ios/chrome/browser/ui/contextual_search/protos/BUILD.gn @@ -0,0 +1,11 @@ +# 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("//third_party/protobuf/proto_library.gni") + +proto_library("protos") { + sources = [ + "client_discourse_context.proto", + ] +} diff --git a/chromium/ios/chrome/browser/ui/dialogs/BUILD.gn b/chromium/ios/chrome/browser/ui/dialogs/BUILD.gn index 506aa95b1f6..4c2159cd811 100644 --- a/chromium/ios/chrome/browser/ui/dialogs/BUILD.gn +++ b/chromium/ios/chrome/browser/ui/dialogs/BUILD.gn @@ -5,7 +5,7 @@ source_set("dialogs") { deps = [ "//base", - "//ios/web:web", + "//ios/web", ] sources = [ @@ -25,10 +25,83 @@ source_set("unit_tests") { deps = [ ":dialogs", + "//ios/web", "//ios/web:test_support", - "//ios/web:web", "//testing/gtest", ] configs += [ "//build/config/compiler:enable_arc" ] } + +source_set("dialogs_internal") { + sources = [ + "dialog_presenter.h", + "dialog_presenter.mm", + "java_script_dialog_presenter_impl.h", + "java_script_dialog_presenter_impl.mm", + "nsurl_protection_space_util.h", + "nsurl_protection_space_util.mm", + ] + deps = [ + ":dialogs", + "//base", + "//components/strings", + "//components/url_formatter", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/alert_coordinator", + "//ios/web", + "//ui/base", + "//url", + ] + libs = [ "UIKit.framework" ] +} + +source_set("unit_tests_internal") { + testonly = true + sources = [ + "dialog_presenter_unittest.mm", + "nsurl_protection_space_util_unittest.mm", + ] + deps = [ + ":dialogs_internal", + "//base", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui/alert_coordinator", + "//ios/web", + "//ios/web:test_support", + "//testing/gtest", + "//ui/base", + "//url", + ] +} + +source_set("eg_tests") { + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "javascript_dialog_egtest.mm", + ] + deps = [ + ":dialogs_internal", + "//base", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/tools_menu", + "//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/web", + "//ios/web:test_support", + "//ui/base", + "//url", + ] + libs = [ + "UIKit.framework", + "XCTest.framework", + ] +} diff --git a/chromium/ios/chrome/browser/ui/downloads/BUILD.gn b/chromium/ios/chrome/browser/ui/downloads/BUILD.gn new file mode 100644 index 00000000000..685cea45c9d --- /dev/null +++ b/chromium/ios/chrome/browser/ui/downloads/BUILD.gn @@ -0,0 +1,80 @@ +# 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("//build/config/ios/rules.gni") + +bundle_data("assets") { + sources = [ + "resources/download_manager_assets.xcassets/Contents.json", + "resources/download_manager_assets.xcassets/error_icon.imageset/Contents.json", + "resources/download_manager_assets.xcassets/error_icon.imageset/error_icon.png", + "resources/download_manager_assets.xcassets/error_icon.imageset/error_icon@2x.png", + "resources/download_manager_assets.xcassets/error_icon.imageset/error_icon@3x.png", + "resources/download_manager_assets.xcassets/file_icon_body.imageset/Contents.json", + "resources/download_manager_assets.xcassets/file_icon_body.imageset/file_icon_body.png", + "resources/download_manager_assets.xcassets/file_icon_body.imageset/file_icon_body@2x.png", + "resources/download_manager_assets.xcassets/file_icon_body.imageset/file_icon_body@3x.png", + "resources/download_manager_assets.xcassets/file_icon_fold.imageset/Contents.json", + "resources/download_manager_assets.xcassets/file_icon_fold.imageset/file_icon_fold.png", + "resources/download_manager_assets.xcassets/file_icon_fold.imageset/file_icon_fold@2x.png", + "resources/download_manager_assets.xcassets/file_icon_fold.imageset/file_icon_fold@3x.png", + "resources/download_manager_assets.xcassets/file_icon_fold_complete.imageset/Contents.json", + "resources/download_manager_assets.xcassets/file_icon_fold_complete.imageset/file_icon_fold_complete.png", + "resources/download_manager_assets.xcassets/file_icon_fold_complete.imageset/file_icon_fold_complete@2x.png", + "resources/download_manager_assets.xcassets/file_icon_fold_complete.imageset/file_icon_fold_complete@3x.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +bundle_data_ib_file("download_manager_controller_xib") { + source = "resources/DownloadManagerController.xib" +} + +source_set("downloads") { + sources = [ + "download_manager_controller.h", + "download_manager_controller.mm", + ] + deps = [ + ":assets", + ":download_manager_controller_xib", + "//base", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/native_app_launcher", + "//ios/chrome/browser/native_app_launcher:native_app_launcher_internal", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/alert_coordinator", + "//ios/chrome/browser/ui/colors", + "//ios/chrome/browser/web:web_internal", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/native_app_launcher", + "//ios/third_party/material_components_ios", + "//ios/third_party/material_roboto_font_loader_ios", + "//ios/web", + "//ios/web:core", + "//net", + "//ui/base", + "//ui/gfx", + ] + libs = [ "UIKit.framework" ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "download_manager_controller_unittest.mm", + ] + deps = [ + ":downloads", + "//base", + "//ios/chrome/browser", + "//ios/web:test_support", + "//net:test_support", + "//testing/gtest", + ] +} diff --git a/chromium/ios/chrome/browser/ui/elements/BUILD.gn b/chromium/ios/chrome/browser/ui/elements/BUILD.gn index 1bd7c85a094..2eb19d63057 100644 --- a/chromium/ios/chrome/browser/ui/elements/BUILD.gn +++ b/chromium/ios/chrome/browser/ui/elements/BUILD.gn @@ -3,6 +3,7 @@ # found in the LICENSE file. source_set("elements") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "selector_coordinator.h", "selector_coordinator.mm", @@ -21,14 +22,33 @@ source_set("elements") { source_set("unit_tests") { testonly = true sources = [ + "activity_overlay_coordinator_unittest.mm", "selector_coordinator_unittest.mm", "selector_picker_view_controller_unittest.mm", ] deps = [ ":elements", + ":elements_internal", "//base", "//base/test:test_support", "//testing/gtest", "//third_party/ocmock", ] } + +source_set("elements_internal") { + sources = [ + "activity_overlay_coordinator.h", + "activity_overlay_coordinator.mm", + "activity_overlay_view_controller.h", + "activity_overlay_view_controller.mm", + ] + deps = [ + "//base", + "//ios/chrome/browser", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/material_components", + "//ios/third_party/material_components_ios", + ] + libs = [ "UIKit.framework" ] +} diff --git a/chromium/ios/chrome/browser/ui/fancy_ui/BUILD.gn b/chromium/ios/chrome/browser/ui/fancy_ui/BUILD.gn new file mode 100644 index 00000000000..2cab462de33 --- /dev/null +++ b/chromium/ios/chrome/browser/ui/fancy_ui/BUILD.gn @@ -0,0 +1,37 @@ +# 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. + +source_set("fancy_ui") { + sources = [ + "bidi_container_view.h", + "bidi_container_view.mm", + "primary_action_button.h", + "primary_action_button.mm", + "tinted_button.h", + "tinted_button.mm", + ] + deps = [ + "//base", + "//base:i18n", + "//ios/chrome/browser/ui/colors", + ] + public_deps = [ + "//ios/third_party/material_components_ios", + ] + libs = [ "UIKit.framework" ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "bidi_container_view_unittest.mm", + ] + deps = [ + ":fancy_ui", + "//base", + "//base:i18n", + "//testing/gtest", + ] + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/chromium/ios/chrome/browser/ui/find_bar/BUILD.gn b/chromium/ios/chrome/browser/ui/find_bar/BUILD.gn new file mode 100644 index 00000000000..f34b1639427 --- /dev/null +++ b/chromium/ios/chrome/browser/ui/find_bar/BUILD.gn @@ -0,0 +1,104 @@ +# 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. + +bundle_data("resources") { + sources = [ + "resources/find_bg@2x~ipad.png", + "resources/find_bg~ipad.png", + "resources/find_close.png", + "resources/find_close@2x.png", + "resources/find_close@3x.png", + "resources/find_close_incognito.png", + "resources/find_close_incognito@2x.png", + "resources/find_close_incognito@3x.png", + "resources/find_close_pressed.png", + "resources/find_close_pressed@2x.png", + "resources/find_close_pressed@3x.png", + "resources/find_next.png", + "resources/find_next@2x.png", + "resources/find_next@3x.png", + "resources/find_next_disabled.png", + "resources/find_next_disabled@2x.png", + "resources/find_next_disabled@3x.png", + "resources/find_next_disabled_incognito.png", + "resources/find_next_disabled_incognito@2x.png", + "resources/find_next_disabled_incognito@3x.png", + "resources/find_next_incognito.png", + "resources/find_next_incognito@2x.png", + "resources/find_next_incognito@3x.png", + "resources/find_next_pressed.png", + "resources/find_next_pressed@2x.png", + "resources/find_next_pressed@3x.png", + "resources/find_next_pressed_incognito.png", + "resources/find_next_pressed_incognito@2x.png", + "resources/find_next_pressed_incognito@3x.png", + "resources/find_prev.png", + "resources/find_prev@2x.png", + "resources/find_prev@3x.png", + "resources/find_prev_disabled.png", + "resources/find_prev_disabled@2x.png", + "resources/find_prev_disabled@3x.png", + "resources/find_prev_disabled_incognito.png", + "resources/find_prev_disabled_incognito@2x.png", + "resources/find_prev_disabled_incognito@3x.png", + "resources/find_prev_incognito.png", + "resources/find_prev_incognito@2x.png", + "resources/find_prev_incognito@3x.png", + "resources/find_prev_pressed.png", + "resources/find_prev_pressed@2x.png", + "resources/find_prev_pressed@3x.png", + "resources/find_prev_pressed_incognito.png", + "resources/find_prev_pressed_incognito@2x.png", + "resources/find_prev_pressed_incognito@3x.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +source_set("find_bar") { + sources = [ + "find_bar_controller_ios.h", + "find_bar_controller_ios.mm", + "find_bar_touch_forwarding_view.h", + "find_bar_touch_forwarding_view.mm", + "find_bar_view.h", + "find_bar_view.mm", + ] + deps = [ + ":resources", + "//base", + "//base:i18n", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser/find_in_page", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/commands", + "//ios/third_party/material_components_ios", + "//ui/base", + "//ui/gfx", + ] + libs = [ "UIKit.framework" ] +} + +source_set("eg_tests") { + testonly = true + sources = [ + "find_in_page_egtest.mm", + ] + deps = [ + ":find_bar", + "//base", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser/find_in_page", + "//ios/chrome/browser/ui/tools_menu", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing:ios_test_support", + "//ios/web:test_support", + "//ui/base", + ] + libs = [ "XCTest.framework" ] +} diff --git a/chromium/ios/chrome/browser/ui/first_run/BUILD.gn b/chromium/ios/chrome/browser/ui/first_run/BUILD.gn new file mode 100644 index 00000000000..ac1b3d12283 --- /dev/null +++ b/chromium/ios/chrome/browser/ui/first_run/BUILD.gn @@ -0,0 +1,123 @@ +# 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. + +bundle_data("assets") { + sources = [ + "resources/FirstRun.xcassets/checkbox.imageset/Contents.json", + "resources/FirstRun.xcassets/checkbox.imageset/checkbox.png", + "resources/FirstRun.xcassets/checkbox.imageset/checkbox@2x.png", + "resources/FirstRun.xcassets/checkbox.imageset/checkbox@2x~ipad.png", + "resources/FirstRun.xcassets/checkbox.imageset/checkbox@3x.png", + "resources/FirstRun.xcassets/checkbox.imageset/checkbox~ipad.png", + "resources/FirstRun.xcassets/checkbox_checked.imageset/Contents.json", + "resources/FirstRun.xcassets/checkbox_checked.imageset/checkbox_checked.png", + "resources/FirstRun.xcassets/checkbox_checked.imageset/checkbox_checked@2x.png", + "resources/FirstRun.xcassets/checkbox_checked.imageset/checkbox_checked@2x~ipad.png", + "resources/FirstRun.xcassets/checkbox_checked.imageset/checkbox_checked@3x.png", + "resources/FirstRun.xcassets/checkbox_checked.imageset/checkbox_checked~ipad.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +source_set("first_run") { + sources = [ + "first_run_chrome_signin_view_controller.h", + "first_run_chrome_signin_view_controller.mm", + "first_run_histograms.h", + "first_run_util.h", + "first_run_util.mm", + "static_file_view_controller.h", + "static_file_view_controller.mm", + "welcome_to_chrome_view.h", + "welcome_to_chrome_view.mm", + "welcome_to_chrome_view_controller.h", + "welcome_to_chrome_view_controller.mm", + ] + deps = [ + ":assets", + "//base", + "//base:i18n", + "//components/metrics", + "//components/prefs", + "//components/signin/core/browser", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/crash_report", + "//ios/chrome/browser/first_run", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/authentication", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/fancy_ui", + "//ios/chrome/browser/ui/material_components", + "//ios/chrome/browser/ui/promos", + "//ios/chrome/browser/ui/settings", + "//ios/chrome/browser/ui/sync", + "//ios/chrome/browser/ui/util", + "//ios/chrome/common", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/signin", + "//ios/third_party/material_components_ios", + "//ios/third_party/material_roboto_font_loader_ios", + "//ios/web", + "//ui/base", + "//ui/gfx", + "//url", + ] + libs = [ "UIKit.framework" ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "first_run_util_unittest.mm", + "welcome_to_chrome_view_controller_unittest.mm", + ] + deps = [ + ":first_run", + "//base", + "//components/metrics", + "//components/prefs", + "//components/prefs:test_support", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/fancy_ui", + "//ios/chrome/test:test_support", + "//ios/web:test_support", + "//testing/gtest", + "//third_party/ocmock", + ] +} + +source_set("eg_tests") { + testonly = true + sources = [ + "first_run_egtest.mm", + ] + deps = [ + ":first_run", + "//base", + "//components/metrics", + "//components/prefs", + "//components/signin/core/browser", + "//ios/chrome/app:app_internal", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/geolocation:geolocation_internal", + "//ios/chrome/browser/geolocation:test_support", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/sync", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/public/provider/chrome/browser/signin:test_support", + "//ios/third_party/earl_grey", + "//ui/base", + ] + libs = [ "XCTest.framework" ] +} diff --git a/chromium/ios/chrome/browser/ui/history/BUILD.gn b/chromium/ios/chrome/browser/ui/history/BUILD.gn new file mode 100644 index 00000000000..57f2f8b65bd --- /dev/null +++ b/chromium/ios/chrome/browser/ui/history/BUILD.gn @@ -0,0 +1,231 @@ +# 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. + +source_set("history") { + configs += [ "//build/config/compiler:enable_arc" ] + sources = [ + "clear_browsing_bar.h", + "clear_browsing_bar.mm", + "favicon_view.h", + "favicon_view.mm", + "favicon_view_provider.h", + "favicon_view_provider.mm", + "history_collection_view_controller.h", + "history_collection_view_controller.mm", + "history_entries_status_item.h", + "history_entries_status_item.mm", + "history_entry.cc", + "history_entry.h", + "history_entry_inserter.h", + "history_entry_inserter.mm", + "history_entry_item.h", + "history_entry_item.mm", + "history_panel_view_controller.h", + "history_panel_view_controller.mm", + "history_search_view.h", + "history_search_view.mm", + "history_search_view_controller.h", + "history_search_view_controller.mm", + "history_service_facade.h", + "history_service_facade.mm", + "history_service_facade_delegate.h", + "history_util.h", + "history_util.mm", + "tab_history_cell.h", + "tab_history_cell.mm", + "tab_history_popup_controller.h", + "tab_history_popup_controller.mm", + "tab_history_view_controller.h", + "tab_history_view_controller.mm", + ] + deps = [ + "//base", + "//base:i18n", + "//components/browser_sync", + "//components/browsing_data/core", + "//components/favicon/core", + "//components/favicon_base", + "//components/history/core/browser", + "//components/keyed_service/core", + "//components/prefs", + "//components/query_parser", + "//components/strings", + "//components/sync/protocol", + "//components/url_formatter", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/favicon", + "//ios/chrome/browser/history", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/sync", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/collection_view", + "//ios/chrome/browser/ui/collection_view/cells", + "//ios/chrome/browser/ui/colors", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/context_menu", + "//ios/chrome/browser/ui/icons", + "//ios/chrome/browser/ui/keyboard", + "//ios/chrome/browser/ui/material_components", + "//ios/chrome/browser/ui/ntp/recent_tabs/views", + "//ios/chrome/browser/ui/popup_menu", + "//ios/chrome/browser/ui/settings", + "//ios/chrome/browser/ui/util", + "//ios/chrome/common", + "//ios/third_party/material_components_ios", + "//ios/third_party/material_roboto_font_loader_ios", + "//ios/web", + "//net", + "//skia", + "//ui/base", + "//ui/gfx", + "//url", + ] + libs = [ + "MobileCoreServices.framework", + "QuartzCore.framework", + "UIKit.framework", + ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "favicon_view_provider_unittest.mm", + "history_entries_status_item_unittest.mm", + "history_entry_inserter_unittest.mm", + "history_entry_item_unittest.mm", + "history_search_view_controller_unittest.mm", + "history_util_unittest.mm", + "tab_history_popup_controller_unittest.mm", + ] + deps = [ + ":history", + ":resources_unit_tests", + "//base", + "//base/test:test_support", + "//components/favicon/core", + "//components/favicon_base", + "//components/history/core/browser", + "//components/keyed_service/core", + "//components/sessions", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/history", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/signin:test_support", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/collection_view", + "//ios/chrome/browser/ui/util", + "//ios/chrome/common", + "//ios/chrome/test:test_support", + "//ios/web", + "//ios/web:test_support", + "//skia", + "//testing/gtest", + "//third_party/ocmock", + "//ui/base", + "//ui/gfx", + "//url", + ] + + public_deps = [ + ":unit_tests_arc", + ] + allow_circular_includes_from = [ ":unit_tests_arc" ] +} + +source_set("unit_tests_arc") { + testonly = true + configs += [ "//build/config/compiler:enable_arc" ] + + sources = [ + "history_collection_view_controller_unittest.mm", + "history_service_facade_unittest.mm", + ] + deps = [ + ":history", + ":resources_unit_tests", + "//base", + "//base/test:test_support", + "//components/favicon/core", + "//components/favicon_base", + "//components/history/core/browser", + "//components/keyed_service/core", + "//components/sessions", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/history", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/signin:test_support", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/collection_view", + "//ios/chrome/browser/ui/util", + "//ios/chrome/common", + "//ios/chrome/test:test_support", + "//ios/web", + "//ios/web:test_support", + "//skia", + "//testing/gtest", + "//third_party/ocmock", + "//ui/base", + "//ui/gfx", + "//url", + ] +} + +bundle_data("resources_unit_tests") { + visibility = [ + ":unit_tests", + ":unit_tests_arc", + ] + testonly = true + sources = [ + "//ios/chrome/test/data/favicon/test_favicon.png", + ] + outputs = [ + "{{bundle_resources_dir}}/" + + "ios/chrome/test/data/favicon/{{source_file_part}}", + ] +} + +source_set("eg_tests") { + testonly = true + sources = [ + "history_ui_egtest.mm", + "tab_history_popup_controller_egtest.mm", + ] + deps = [ + ":history", + "//base", + "//components/browsing_data/core", + "//components/prefs", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/ui/settings", + "//ios/chrome/browser/ui/tools_menu", + "//ios/chrome/browser/ui/util", + "//ios/chrome/common", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/public/provider/chrome/browser/signin", + "//ios/public/provider/chrome/browser/signin:test_support", + "//ios/testing:ios_test_support", + "//ios/third_party/earl_grey", + "//ios/web:test_support", + "//net", + "//ui/base", + ] + libs = [ + "UIKit.framework", + "XCTest.framework", + ] +} diff --git a/chromium/ios/chrome/browser/ui/icons/BUILD.gn b/chromium/ios/chrome/browser/ui/icons/BUILD.gn new file mode 100644 index 00000000000..76bb5538077 --- /dev/null +++ b/chromium/ios/chrome/browser/ui/icons/BUILD.gn @@ -0,0 +1,63 @@ +# 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. + +source_set("icons") { + sources = [ + "chrome_icon.h", + "chrome_icon.mm", + ] + deps = [ + ":assets", + "//base", + "//ios/chrome/app/strings", + "//ui/base", + ] + libs = [ + "CoreGraphics.framework", + "UIKit.framework", + ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "chrome_icon_unittest.mm", + ] + deps = [ + ":icons", + "//ios/chrome/app/strings", + "//testing/gtest", + "//third_party/ocmock", + "//ui/base", + ] + configs += [ "//build/config/compiler:enable_arc" ] +} + +bundle_data("assets") { + sources = [ + "resources/Icons.xcassets/ic_arrow_back.imageset/Contents.json", + "resources/Icons.xcassets/ic_arrow_back.imageset/ic_arrow_back.png", + "resources/Icons.xcassets/ic_arrow_back.imageset/ic_arrow_back_2x.png", + "resources/Icons.xcassets/ic_arrow_back.imageset/ic_arrow_back_3x.png", + "resources/Icons.xcassets/ic_chevron_right.imageset/Contents.json", + "resources/Icons.xcassets/ic_chevron_right.imageset/ic_chevron_right.png", + "resources/Icons.xcassets/ic_chevron_right.imageset/ic_chevron_right_2x.png", + "resources/Icons.xcassets/ic_chevron_right.imageset/ic_chevron_right_3x.png", + "resources/Icons.xcassets/ic_close.imageset/Contents.json", + "resources/Icons.xcassets/ic_close.imageset/ic_close.png", + "resources/Icons.xcassets/ic_close.imageset/ic_close_2x.png", + "resources/Icons.xcassets/ic_close.imageset/ic_close_3x.png", + "resources/Icons.xcassets/ic_info.imageset/Contents.json", + "resources/Icons.xcassets/ic_info.imageset/ic_info.png", + "resources/Icons.xcassets/ic_info.imageset/ic_info_2x.png", + "resources/Icons.xcassets/ic_info.imageset/ic_info_3x.png", + "resources/Icons.xcassets/ic_search.imageset/Contents.json", + "resources/Icons.xcassets/ic_search.imageset/ic_search.png", + "resources/Icons.xcassets/ic_search.imageset/ic_search_2x.png", + "resources/Icons.xcassets/ic_search.imageset/ic_search_3x.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} diff --git a/chromium/ios/chrome/browser/ui/infobars/BUILD.gn b/chromium/ios/chrome/browser/ui/infobars/BUILD.gn new file mode 100644 index 00000000000..cde8e4cc2d0 --- /dev/null +++ b/chromium/ios/chrome/browser/ui/infobars/BUILD.gn @@ -0,0 +1,87 @@ +# 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. + +source_set("infobars") { + sources = [ + "infobar_view.h", + "infobar_view.mm", + "infobar_view_delegate.h", + ] + deps = [ + ":resources", + "//base", + "//base:i18n", + "//components/strings", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/colors", + "//ios/chrome/browser/ui/fancy_ui", + "//ios/chrome/browser/ui/util", + "//ios/public/provider/chrome/browser/ui", + "//ios/third_party/material_components_ios", + "//ui/base", + "//ui/gfx", + "//url", + ] + libs = [ + "CoreGraphics.framework", + "QuartzCore.framework", + "UIKit.framework", + ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "infobar_view_unittest.mm", + ] + deps = [ + ":infobars", + "//testing/gtest", + ] +} + +source_set("eg_tests") { + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "infobar_egtest.mm", + ] + deps = [ + "//base", + "//components/infobars/core", + "//ios/chrome/app:app_internal", + "//ios/chrome/browser/tabs", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/third_party/earl_grey", + "//ios/web:test_support", + "//url", + ] + libs = [ "XCTest.framework" ] +} + +bundle_data("resources") { + sources = [ + "resources/infobar_close.png", + "resources/infobar_close@2x.png", + "resources/infobar_close@3x.png", + "resources/infobar_downloading.png", + "resources/infobar_downloading@2x.png", + "resources/infobar_downloading@3x.png", + "resources/infobar_popup_blocker.png", + "resources/infobar_popup_blocker@2x.png", + "resources/infobar_popup_blocker@3x.png", + "resources/infobar_shadow.png", + "resources/infobar_shadow@2x.png", + "resources/infobar_update.png", + "resources/infobar_update@2x.png", + "resources/infobar_update@3x.png", + "resources/infobar_warning.png", + "resources/infobar_warning@2x.png", + "resources/infobar_warning@3x.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} diff --git a/chromium/ios/chrome/browser/ui/keyboard/BUILD.gn b/chromium/ios/chrome/browser/ui/keyboard/BUILD.gn index ee2525f159f..0a188fcee28 100644 --- a/chromium/ios/chrome/browser/ui/keyboard/BUILD.gn +++ b/chromium/ios/chrome/browser/ui/keyboard/BUILD.gn @@ -3,6 +3,7 @@ # found in the LICENSE file. source_set("keyboard") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "UIKeyCommand+Chrome.h", "UIKeyCommand+Chrome.mm", @@ -16,6 +17,7 @@ source_set("keyboard") { } source_set("unit_tests") { + configs += [ "//build/config/compiler:enable_arc" ] testonly = true sources = [ "UIKeyCommand+ChromeTest.mm", diff --git a/chromium/ios/chrome/browser/ui/main/BUILD.gn b/chromium/ios/chrome/browser/ui/main/BUILD.gn new file mode 100644 index 00000000000..052aa7f544a --- /dev/null +++ b/chromium/ios/chrome/browser/ui/main/BUILD.gn @@ -0,0 +1,53 @@ +# 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. + +source_set("main") { + sources = [ + "browser_view_information.h", + "browser_view_wrangler.h", + "browser_view_wrangler.mm", + "main_coordinator.h", + "main_coordinator.mm", + "main_view_controller.h", + "main_view_controller.mm", + ] + deps = [ + "//base", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/browsing_data", + "//ios/chrome/browser/browsing_data:browsing_data_internal", + "//ios/chrome/browser/crash_report:crash_report_internal", + "//ios/chrome/browser/device_sharing", + "//ios/chrome/browser/physical_web", + "//ios/chrome/browser/sessions", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/tabs:tabs_internal", + "//ios/public/provider/chrome/browser", + ] + public_deps = [ + "//ios/chrome/browser/ui:ui_internal", + ] + libs = [ "UIKit.framework" ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "browser_view_wrangler_unittest.mm", + "main_coordinator_unittest.mm", + "main_view_controller_unittest.mm", + ] + deps = [ + ":main", + "//base", + "//components/bookmarks/test", + "//ios/chrome/browser/bookmarks", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui:ui_internal", + "//ios/web:test_support", + "//testing/gtest", + ] +} diff --git a/chromium/ios/chrome/browser/ui/material_components/BUILD.gn b/chromium/ios/chrome/browser/ui/material_components/BUILD.gn new file mode 100644 index 00000000000..63e674f4287 --- /dev/null +++ b/chromium/ios/chrome/browser/ui/material_components/BUILD.gn @@ -0,0 +1,18 @@ +# 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. + +source_set("material_components") { + sources = [ + "activity_indicator.h", + "activity_indicator.mm", + "app_bar_presenting.h", + "utils.h", + "utils.mm", + ] + deps = [ + "//ios/chrome/browser/ui/colors", + "//ios/third_party/material_components_ios", + ] + libs = [ "UIKit.framework" ] +} diff --git a/chromium/ios/chrome/browser/ui/no_tabs/BUILD.gn b/chromium/ios/chrome/browser/ui/no_tabs/BUILD.gn new file mode 100644 index 00000000000..e243a5d18ff --- /dev/null +++ b/chromium/ios/chrome/browser/ui/no_tabs/BUILD.gn @@ -0,0 +1,34 @@ +# 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. + +source_set("no_tabs") { + sources = [ + "no_tabs_controller.h", + "no_tabs_controller.mm", + "no_tabs_controller_testing.h", + "no_tabs_toolbar_controller.h", + "no_tabs_toolbar_controller.mm", + ] + deps = [ + "//base", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/toolbar", + "//ios/chrome/browser/ui/tools_menu", + "//ui/gfx", + ] + libs = [ "UIKit.framework" ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "no_tabs_controller_unittest.mm", + ] + deps = [ + ":no_tabs", + "//base", + "//testing/gtest", + ] +} diff --git a/chromium/ios/chrome/browser/ui/ntp/BUILD.gn b/chromium/ios/chrome/browser/ui/ntp/BUILD.gn new file mode 100644 index 00000000000..d5f8a7d9289 --- /dev/null +++ b/chromium/ios/chrome/browser/ui/ntp/BUILD.gn @@ -0,0 +1,280 @@ +# 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. + +bundle_data("resources") { + sources = [ + "resources/bookmarks_bar_bg.png", + "resources/bookmarks_bar_bg@2x.png", + "resources/bookmarks_bar_bg@2x~ipad.png", + "resources/bookmarks_bar_bg_pressed@2x~ipad.png", + "resources/bookmarks_bar_bg_pressed~ipad.png", + "resources/bookmarks_bar_bg~ipad.png", + "resources/bookmarks_bar_breadcrumb.png", + "resources/bookmarks_bar_breadcrumb@2x.png", + "resources/bookmarks_bar_breadcrumb@2x~ipad.png", + "resources/bookmarks_bar_breadcrumb~ipad.png", + "resources/bookmarks_bar_edit.png", + "resources/bookmarks_bar_edit@2x.png", + "resources/bookmarks_bar_edit@2x~ipad.png", + "resources/bookmarks_bar_edit_moreshadow.png", + "resources/bookmarks_bar_edit_moreshadow@2x.png", + "resources/bookmarks_bar_edit_pressed.png", + "resources/bookmarks_bar_edit_pressed@2x.png", + "resources/bookmarks_bar_edit_pressed@2x~ipad.png", + "resources/bookmarks_bar_edit_pressed_moreshadow.png", + "resources/bookmarks_bar_edit_pressed_moreshadow@2x.png", + "resources/bookmarks_bar_edit_pressed~ipad.png", + "resources/bookmarks_bar_edit~ipad.png", + "resources/bookmarks_bar_left@2x~ipad.png", + "resources/bookmarks_bar_left~ipad.png", + "resources/bookmarks_button_bg.png", + "resources/bookmarks_button_bg@2x.png", + "resources/bookmarks_button_border.png", + "resources/bookmarks_button_border@2x.png", + "resources/disclosure_open.png", + "resources/disclosure_open@2x.png", + "resources/incognito_icon.png", + "resources/incognito_icon@2x.png", + "resources/incognito_icon@3x.png", + "resources/ntp_bookmarks.png", + "resources/ntp_bookmarks@2x.png", + "resources/ntp_bookmarks@3x.png", + "resources/ntp_bottom_bar_shadow.png", + "resources/ntp_bottom_bar_shadow@2x.png", + "resources/ntp_delete_button.png", + "resources/ntp_delete_button@2x.png", + "resources/ntp_google_search_box.png", + "resources/ntp_google_search_box@2x.png", + "resources/ntp_google_search_box@3x.png", + "resources/ntp_incognito.png", + "resources/ntp_incognito@2x.png", + "resources/ntp_mv_placeholder_bg.png", + "resources/ntp_mv_placeholder_bg@2x.png", + "resources/ntp_mv_placeholder_bg@3x.png", + "resources/ntp_mv_recentbar@2x~ipad.png", + "resources/ntp_mv_recentbar~ipad.png", + "resources/ntp_mv_recentpress@2x~ipad.png", + "resources/ntp_mv_recentpress~ipad.png", + "resources/ntp_mv_search.png", + "resources/ntp_mv_search@2x.png", + "resources/ntp_mv_thumbnail_container.png", + "resources/ntp_mv_thumbnail_container@2x.png", + "resources/ntp_mv_thumbnail_container@3x.png", + "resources/ntp_mv_thumbnail_empty.png", + "resources/ntp_mv_thumbnail_empty@2x.png", + "resources/ntp_mv_thumbnail_empty@2x~ipad.png", + "resources/ntp_mv_thumbnail_empty~ipad.png", + "resources/ntp_mv_welcome_favicon.png", + "resources/ntp_mv_welcome_favicon@2x.png", + "resources/ntp_opentabs@2x.png", + "resources/ntp_opentabs@3x.png", + "resources/ntp_opentabs_clock.png", + "resources/ntp_opentabs_clock@2x.png", + "resources/ntp_opentabs_clock@3x.png", + "resources/ntp_opentabs_header@2x~ipad.png", + "resources/ntp_opentabs_header~ipad.png", + "resources/ntp_opentabs_laptop.png", + "resources/ntp_opentabs_laptop@2x.png", + "resources/ntp_opentabs_laptop@3x.png", + "resources/ntp_opentabs_last_row@2x~ipad.png", + "resources/ntp_opentabs_last_row_h@2x~ipad.png", + "resources/ntp_opentabs_last_row_h~ipad.png", + "resources/ntp_opentabs_last_row~ipad.png", + "resources/ntp_opentabs_list_item@2x~ipad.png", + "resources/ntp_opentabs_list_item_h@2x~ipad.png", + "resources/ntp_opentabs_list_item_h~ipad.png", + "resources/ntp_opentabs_list_item~ipad.png", + "resources/ntp_opentabs_phone.png", + "resources/ntp_opentabs_phone@2x.png", + "resources/ntp_opentabs_phone@3x.png", + "resources/ntp_opentabs_recent_arrow.png", + "resources/ntp_opentabs_recent_arrow@2x.png", + "resources/ntp_opentabs_recent_arrow@3x.png", + "resources/ntp_opentabs_tablet.png", + "resources/ntp_opentabs_tablet@2x.png", + "resources/ntp_opentabs_tablet@3x.png", + "resources/ntp_recently_closed.png", + "resources/ntp_recently_closed@2x.png", + "resources/ntp_recently_closed@3x.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +source_set("ntp") { + sources = [ + "new_tab_page_panel_protocol.h", + ] +} + +source_set("ntp_internal") { + sources = [ + "centering_scrollview.h", + "centering_scrollview.mm", + "google_landing_controller.h", + "google_landing_controller.mm", + "incognito_panel_controller.h", + "incognito_panel_controller.mm", + "most_visited_cell.h", + "most_visited_cell.mm", + "most_visited_layout.h", + "most_visited_layout.mm", + "new_tab_page_bar.h", + "new_tab_page_bar.mm", + "new_tab_page_bar_button.h", + "new_tab_page_bar_button.mm", + "new_tab_page_bar_item.h", + "new_tab_page_bar_item.mm", + "new_tab_page_controller.h", + "new_tab_page_controller.mm", + "new_tab_page_header_constants.h", + "new_tab_page_header_constants.mm", + "new_tab_page_header_view.h", + "new_tab_page_header_view.mm", + "new_tab_page_panel_protocol.mm", + "new_tab_page_toolbar_controller.h", + "new_tab_page_toolbar_controller.mm", + "new_tab_page_view.h", + "new_tab_page_view.mm", + "notification_promo_whats_new.h", + "notification_promo_whats_new.mm", + "whats_new_header_view.h", + "whats_new_header_view.mm", + ] + deps = [ + ":ntp", + ":resources", + "//base", + "//base:i18n", + "//components/favicon/core", + "//components/favicon_base", + "//components/google/core/browser", + "//components/history/core/browser", + "//components/keyed_service/core", + "//components/metrics", + "//components/ntp_tiles", + "//components/prefs", + "//components/rappor", + "//components/reading_list/core", + "//components/search_engines", + "//components/strings", + "//components/suggestions", + "//components/sync_sessions", + "//components/toolbar", + "//ios/chrome/app/strings", + "//ios/chrome/app/theme", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/favicon", + "//ios/chrome/browser/history", + "//ios/chrome/browser/metrics:metrics_internal", + "//ios/chrome/browser/ntp_tiles", + "//ios/chrome/browser/reading_list", + "//ios/chrome/browser/search_engines", + "//ios/chrome/browser/suggestions", + "//ios/chrome/browser/sync", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/bookmarks", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/context_menu", + "//ios/chrome/browser/ui/ntp/recent_tabs", + "//ios/chrome/browser/ui/overscroll_actions", + "//ios/chrome/browser/ui/toolbar", + "//ios/chrome/browser/ui/toolbar:resource_macros", + "//ios/chrome/common", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/images", + "//ios/public/provider/chrome/browser/ui", + "//ios/public/provider/chrome/browser/voice", + "//ios/third_party/material_components_ios", + "//ios/third_party/material_roboto_font_loader_ios", + "//ios/web", + "//net", + "//skia", + "//ui/base", + "//ui/gfx", + "//url", + ] + libs = [ + "CoreGraphics.framework", + "QuartzCore.framework", + "UIKit.framework", + ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "centering_scrollview_unittest.mm", + "google_landing_controller_unittest.mm", + "most_visited_cell_unittest.mm", + "new_tab_page_bar_unittest.mm", + "new_tab_page_controller_unittest.mm", + "notification_promo_whats_new_unittest.mm", + ] + deps = [ + ":ntp", + ":ntp_internal", + "//base", + "//base/test:test_support", + "//components/bookmarks/test", + "//components/metrics", + "//components/prefs:test_support", + "//components/search_engines", + "//components/sessions", + "//components/variations", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/bookmarks", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/search_engines", + "//ios/chrome/browser/sessions", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/test:test_support", + "//ios/public/provider/chrome/browser/images", + "//ios/web:test_support", + "//testing/gtest", + "//third_party/ocmock", + "//ui/base", + "//url", + ] +} + +source_set("eg_tests") { + testonly = true + sources = [ + "new_tab_page_egtest.mm", + ] + deps = [ + ":ntp_internal", + "//components/strings", + "//ios/chrome/app/strings", + "//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", + "//ui/base", + ] + libs = [ "XCTest.framework" ] +} + +source_set("perf_tests") { + testonly = true + sources = [ + "new_tab_page_perftest.mm", + ] + deps = [ + "//base/test:test_support", + "//ios/chrome/browser/sessions", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/test:perf_test_support", + "//ios/chrome/browser/ui:ui_internal", + ] +} diff --git a/chromium/ios/chrome/browser/ui/ntp/recent_tabs/BUILD.gn b/chromium/ios/chrome/browser/ui/ntp/recent_tabs/BUILD.gn new file mode 100644 index 00000000000..c37ad567edd --- /dev/null +++ b/chromium/ios/chrome/browser/ui/ntp/recent_tabs/BUILD.gn @@ -0,0 +1,91 @@ +# 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. + +source_set("recent_tabs") { + sources = [ + "recent_tabs_bridges.h", + "recent_tabs_bridges.mm", + "recent_tabs_panel_controller.h", + "recent_tabs_panel_controller.mm", + "recent_tabs_panel_view_controller.h", + "recent_tabs_panel_view_controller.mm", + "recent_tabs_table_view_controller.h", + "recent_tabs_table_view_controller.mm", + "sessions_sync_user_state.h", + "synced_sessions.h", + "synced_sessions.mm", + "synced_sessions_bridge.h", + "synced_sessions_bridge.mm", + ] + deps = [ + "//base", + "//components/browser_sync", + "//components/sessions", + "//components/signin/core/browser", + "//components/sync", + "//ios/chrome/app/strings", + "//ios/chrome/app/theme", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/metrics:metrics_internal", + "//ios/chrome/browser/sessions", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/sync", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/context_menu", + "//ios/chrome/browser/ui/ntp", + "//ios/chrome/browser/ui/ntp/recent_tabs/views", + "//ios/web", + "//ui/base", + "//url", + ] + public_deps = [ + "//components/sync_sessions", + ] + allow_circular_includes_from = + [ "//ios/chrome/browser/ui/ntp/recent_tabs/views" ] + libs = [ "UIKit.framework" ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "recent_tabs_panel_controller_unittest.mm", + ] + deps = [ + ":recent_tabs", + "//base", + "//components/browser_sync", + "//components/browser_sync:test_support", + "//components/signin/core/browser", + "//components/sync_sessions", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/sync", + "//ios/chrome/browser/sync:test_support", + "//ios/chrome/browser/ui/ntp:ntp_internal", + "//ios/chrome/test:test_support", + "//ios/web:test_support", + "//testing/gtest", + "//third_party/ocmock", + ] +} + +source_set("eg_tests") { + testonly = true + sources = [ + "recent_tabs_panel_controller_egtest.mm", + ] + deps = [ + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/tools_menu", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/third_party/earl_grey", + "//ios/web:test_support", + ] + libs = [ "XCTest.framework" ] +} diff --git a/chromium/ios/chrome/browser/ui/ntp/recent_tabs/views/BUILD.gn b/chromium/ios/chrome/browser/ui/ntp/recent_tabs/views/BUILD.gn new file mode 100644 index 00000000000..2a203c2e12a --- /dev/null +++ b/chromium/ios/chrome/browser/ui/ntp/recent_tabs/views/BUILD.gn @@ -0,0 +1,52 @@ +# 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. + +source_set("views") { + configs += [ "//build/config/compiler:enable_arc" ] + sources = [ + "disclosure_view.h", + "disclosure_view.mm", + "generic_section_header_view.h", + "generic_section_header_view.mm", + "header_of_collapsable_section_protocol.h", + "panel_bar_view.h", + "panel_bar_view.mm", + "session_section_header_view.h", + "session_section_header_view.mm", + "session_tab_data_view.h", + "session_tab_data_view.mm", + "show_full_history_view.h", + "show_full_history_view.mm", + "signed_in_sync_in_progress_view.h", + "signed_in_sync_in_progress_view.mm", + "signed_in_sync_off_view.h", + "signed_in_sync_off_view.mm", + "signed_in_sync_on_no_sessions_view.h", + "signed_in_sync_on_no_sessions_view.mm", + "signed_out_view.h", + "signed_out_view.mm", + "spacers_view.h", + "spacers_view.mm", + "views_utils.h", + "views_utils.mm", + ] + deps = [ + "//base", + "//components/resources", + "//components/sessions", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser/favicon", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/fancy_ui", + "//ios/chrome/browser/ui/material_components", + "//ios/chrome/browser/ui/sync", + "//ios/chrome/browser/ui/tab_switcher:utils", + "//ios/third_party/material_components_ios", + "//ios/third_party/material_roboto_font_loader_ios", + "//ui/base", + ] + libs = [ "UIKit.framework" ] +} diff --git a/chromium/ios/chrome/browser/ui/omnibox/BUILD.gn b/chromium/ios/chrome/browser/ui/omnibox/BUILD.gn index 10b847a569d..437c7c42b70 100644 --- a/chromium/ios/chrome/browser/ui/omnibox/BUILD.gn +++ b/chromium/ios/chrome/browser/ui/omnibox/BUILD.gn @@ -16,3 +16,123 @@ source_set("omnibox") { "//ios/chrome/app/theme", ] } + +bundle_data("resources") { + sources = [ + "resources/omnibox_background.png", + "resources/omnibox_background@2x.png", + "resources/omnibox_background@3x.png", + "resources/omnibox_transparent_background.png", + "resources/omnibox_transparent_background@2x.png", + "resources/omnibox_transparent_background@3x.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +source_set("omnibox_internal") { + sources = [ + "chrome_omnibox_client_ios.h", + "chrome_omnibox_client_ios.mm", + "location_bar_view_ios.h", + "location_bar_view_ios.mm", + "omnibox_popup_material_row.h", + "omnibox_popup_material_row.mm", + "omnibox_popup_material_view_controller.h", + "omnibox_popup_material_view_controller.mm", + "omnibox_popup_positioner.h", + "omnibox_popup_view_ios.h", + "omnibox_popup_view_ios.mm", + "omnibox_text_field_ios.h", + "omnibox_text_field_ios.mm", + "omnibox_view_ios.h", + "omnibox_view_ios.mm", + "page_info_model.cc", + "page_info_model.h", + "page_info_model_observer.h", + "page_info_view_controller.h", + "page_info_view_controller.mm", + "preload_provider.h", + "truncating_attributed_label.h", + "truncating_attributed_label.mm", + ] + deps = [ + ":omnibox", + ":resources", + "//base", + "//base:i18n", + "//components/favicon/ios", + "//components/keyed_service/core", + "//components/open_from_clipboard", + "//components/resources", + "//components/search_engines", + "//components/ssl_errors", + "//components/strings", + "//components/toolbar", + "//ios/chrome/app/strings", + "//ios/chrome/app/theme", + "//ios/chrome/browser", + "//ios/chrome/browser/autocomplete", + "//ios/chrome/browser/bookmarks", + "//ios/chrome/browser/bookmarks:bookmarks_utils", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/net", + "//ios/chrome/browser/search_engines", + "//ios/chrome/browser/sessions", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/fancy_ui", + "//ios/chrome/browser/ui/popup_menu", + "//ios/chrome/common", + "//ios/public/provider/chrome/browser", + "//ios/third_party/material_components_ios", + "//ios/third_party/material_roboto_font_loader_ios", + "//ios/web", + "//ios/web/public/image_fetcher", + "//net", + "//skia", + "//third_party/google_toolbox_for_mac", + "//ui/base", + "//ui/gfx", + "//ui/gfx/geometry", + "//url", + ] + public_deps = [ + "//components/omnibox/browser", + ] + libs = [ + "CoreText.framework", + "MobileCoreServices.framework", + "QuartzCore.framework", + "UIKit.framework", + ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "omnibox_text_field_ios_unittest.mm", + ] + deps = [ + ":omnibox_internal", + ":resources_unit_tests", + "//base", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//testing/gtest", + "//ui/base", + ] +} + +bundle_data("resources_unit_tests") { + visibility = [ ":unit_tests" ] + testonly = true + sources = [ + "//ios/chrome/test/data/omnibox/selected_ranges.txt", + ] + outputs = [ + "{{bundle_resources_dir}}/" + + "ios/chrome/test/data/omnibox/{{source_file_part}}", + ] +} diff --git a/chromium/ios/chrome/browser/ui/overscroll_actions/BUILD.gn b/chromium/ios/chrome/browser/ui/overscroll_actions/BUILD.gn new file mode 100644 index 00000000000..98b99f7992a --- /dev/null +++ b/chromium/ios/chrome/browser/ui/overscroll_actions/BUILD.gn @@ -0,0 +1,54 @@ +# 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. + +bundle_data("resources") { + sources = [ + "resources/ptr_close.png", + "resources/ptr_close@2x.png", + "resources/ptr_close@3x.png", + "resources/ptr_close_active.png", + "resources/ptr_close_active@2x.png", + "resources/ptr_close_active@3x.png", + "resources/ptr_new_tab.png", + "resources/ptr_new_tab@2x.png", + "resources/ptr_new_tab@3x.png", + "resources/ptr_new_tab_active.png", + "resources/ptr_new_tab_active@2x.png", + "resources/ptr_new_tab_active@3x.png", + "resources/ptr_reload.png", + "resources/ptr_reload@2x.png", + "resources/ptr_reload@3x.png", + "resources/ptr_reload_active.png", + "resources/ptr_reload_active@2x.png", + "resources/ptr_reload_active@3x.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +source_set("overscroll_actions") { + sources = [ + "overscroll_actions_controller.h", + "overscroll_actions_controller.mm", + "overscroll_actions_view.h", + "overscroll_actions_view.mm", + ] + deps = [ + ":resources", + "//base", + "//ios/chrome/app/theme", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/static_content", + "//ios/chrome/browser/ui/toolbar", + "//ios/chrome/browser/ui/util", + "//ios/chrome/browser/ui/voice", + "//ios/web", + ] + allow_circular_includes_from = [ "//ios/chrome/browser/ui/static_content" ] + libs = [ + "QuartzCore.framework", + "UIKit.framework", + ] +} diff --git a/chromium/ios/chrome/browser/ui/popup_menu/BUILD.gn b/chromium/ios/chrome/browser/ui/popup_menu/BUILD.gn new file mode 100644 index 00000000000..1d0ae53265c --- /dev/null +++ b/chromium/ios/chrome/browser/ui/popup_menu/BUILD.gn @@ -0,0 +1,35 @@ +# 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. + +bundle_data("resources") { + sources = [ + "resources/popup_background.png", + "resources/popup_background@2x.png", + "resources/popup_background@3x.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +source_set("popup_menu") { + sources = [ + "popup_menu_controller.h", + "popup_menu_controller.mm", + "popup_menu_view.h", + "popup_menu_view.mm", + ] + deps = [ + ":resources", + "//base", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui", + "//ios/chrome/common", + "//ui/base", + ] + libs = [ + "QuartzCore.framework", + "UIKit.framework", + ] +} diff --git a/chromium/ios/chrome/browser/ui/print/BUILD.gn b/chromium/ios/chrome/browser/ui/print/BUILD.gn new file mode 100644 index 00000000000..3b1f3adbfdb --- /dev/null +++ b/chromium/ios/chrome/browser/ui/print/BUILD.gn @@ -0,0 +1,42 @@ +# 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. + +source_set("print") { + sources = [ + "print_controller.h", + "print_controller.mm", + ] + deps = [ + "//base", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui/alert_coordinator", + "//ios/chrome/browser/ui/alert_coordinator:alert_coordinator_internal", + "//ios/web", + "//net", + "//ui/base", + ] + libs = [ "UIKit.framework" ] +} + +source_set("eg_tests") { + testonly = true + sources = [ + "print_controller_egtest.mm", + ] + deps = [ + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/third_party/earl_grey", + "//ios/web:test_support", + "//ui/base", + "//url", + ] + libs = [ + "UIKit.framework", + "XCTest.framework", + ] +} diff --git a/chromium/ios/chrome/browser/ui/promos/BUILD.gn b/chromium/ios/chrome/browser/ui/promos/BUILD.gn new file mode 100644 index 00000000000..655326c2ee0 --- /dev/null +++ b/chromium/ios/chrome/browser/ui/promos/BUILD.gn @@ -0,0 +1,49 @@ +# 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. + +source_set("promos") { + sources = [ + "promo_view_controller.h", + "signin_promo_view_controller.h", + "signin_promo_view_controller.mm", + ] + deps = [ + "//base", + "//components/signin/core/browser", + "//components/version_info", + "//ios/chrome/app:tests_hook", + "//ios/chrome/app/strings", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/ui/authentication", + "//ios/chrome/browser/ui/commands", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/signin", + "//net", + ] + libs = [ "UIKit.framework" ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "signin_promo_view_controller_unittest.mm", + ] + deps = [ + ":promos", + "//base", + "//components/pref_registry", + "//components/sync_preferences", + "//components/sync_preferences:test_support", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/prefs:browser_prefs", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/signin:test_support", + "//ios/chrome/test:test_support", + "//ios/public/provider/chrome/browser/signin:test_support", + "//ios/web:test_support", + "//testing/gtest", + "//third_party/ocmock", + ] +} diff --git a/chromium/ios/chrome/browser/ui/qr_scanner/BUILD.gn b/chromium/ios/chrome/browser/ui/qr_scanner/BUILD.gn new file mode 100644 index 00000000000..20213622aca --- /dev/null +++ b/chromium/ios/chrome/browser/ui/qr_scanner/BUILD.gn @@ -0,0 +1,84 @@ +# 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. + +bundle_data("assets") { + sources = [ + "resources/QRScanner.xcassets/Contents.json", + "resources/QRScanner.xcassets/qr_scanner_torch_off.imageset/Contents.json", + "resources/QRScanner.xcassets/qr_scanner_torch_off.imageset/torch_off.png", + "resources/QRScanner.xcassets/qr_scanner_torch_off.imageset/torch_off@2x.png", + "resources/QRScanner.xcassets/qr_scanner_torch_off.imageset/torch_off@3x.png", + "resources/QRScanner.xcassets/qr_scanner_torch_on.imageset/Contents.json", + "resources/QRScanner.xcassets/qr_scanner_torch_on.imageset/torch_on.png", + "resources/QRScanner.xcassets/qr_scanner_torch_on.imageset/torch_on@2x.png", + "resources/QRScanner.xcassets/qr_scanner_torch_on.imageset/torch_on@3x.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +source_set("qr_scanner") { + sources = [ + "camera_controller.h", + "camera_controller.mm", + "qr_scanner_alerts.h", + "qr_scanner_alerts.mm", + "qr_scanner_transitioning_delegate.h", + "qr_scanner_transitioning_delegate.mm", + "qr_scanner_view.h", + "qr_scanner_view.mm", + "qr_scanner_view_controller.h", + "qr_scanner_view_controller.mm", + ] + deps = [ + ":assets", + "//base", + "//components/version_info", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/icons", + "//ios/chrome/common:ios_app_bundle_id_prefix_header", + "//ios/third_party/material_components_ios", + "//ui/base", + ] + libs = [ + "AVFoundation.framework", + "UIKit.framework", + ] +} + +source_set("eg_tests") { + testonly = true + sources = [ + "qr_scanner_view_controller_egtest.mm", + ] + deps = [ + ":qr_scanner", + "//base", + "//base/test:test_support", + "//components/strings", + "//components/version_info", + "//ios/chrome/app:app_internal", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/ui:ui_internal", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/icons", + "//ios/chrome/browser/ui/toolbar", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/base", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey", + "//ios/web:test_support", + "//third_party/ocmock", + "//ui/base", + ] + libs = [ + "AVFoundation.framework", + "UIKit.framework", + ] +} diff --git a/chromium/ios/chrome/browser/ui/reader_mode/BUILD.gn b/chromium/ios/chrome/browser/ui/reader_mode/BUILD.gn new file mode 100644 index 00000000000..4916f6080da --- /dev/null +++ b/chromium/ios/chrome/browser/ui/reader_mode/BUILD.gn @@ -0,0 +1,31 @@ +# 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. + +source_set("reader_mode") { + sources = [ + "reader_mode_checker.h", + "reader_mode_checker.mm", + "reader_mode_controller.h", + "reader_mode_controller.mm", + "reader_mode_infobar_delegate.h", + "reader_mode_infobar_delegate.mm", + "reader_mode_view.h", + "reader_mode_view.mm", + ] + deps = [ + "//base", + "//components/dom_distiller/core", + "//components/infobars/core", + "//components/resources", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/dom_distiller", + "//ios/chrome/browser/infobars", + "//ios/chrome/browser/ui/material_components", + "//ios/third_party/material_components_ios", + "//ios/web", + "//ui/base", + "//url", + ] + libs = [ "UIKit.framework" ] +} diff --git a/chromium/ios/chrome/browser/ui/reading_list/BUILD.gn b/chromium/ios/chrome/browser/ui/reading_list/BUILD.gn new file mode 100644 index 00000000000..3f8c944e725 --- /dev/null +++ b/chromium/ios/chrome/browser/ui/reading_list/BUILD.gn @@ -0,0 +1,141 @@ +# 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. + +bundle_data("resources") { + sources = [ + "resources/distillation_fail.png", + "resources/distillation_fail@2x.png", + "resources/distillation_fail@3x.png", + "resources/distillation_success.png", + "resources/distillation_success@2x.png", + "resources/distillation_success@3x.png", + "resources/reading_list_empty_state.png", + "resources/reading_list_empty_state@2x.png", + "resources/reading_list_empty_state@3x.png", + "resources/reading_list_share_icon.png", + "resources/reading_list_share_icon@2x.png", + "resources/reading_list_share_icon@3x.png", + "resources/reading_list_side_swipe.png", + "resources/reading_list_side_swipe@2x.png", + "resources/reading_list_side_swipe@3x.png", + "resources/reading_list_toolbar_icon.png", + "resources/reading_list_toolbar_icon@2x.png", + "resources/reading_list_toolbar_icon@3x.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +source_set("reading_list") { + configs += [ "//build/config/compiler:enable_arc" ] + sources = [ + "number_badge_view.h", + "number_badge_view.mm", + "offline_page_native_content.h", + "offline_page_native_content.mm", + "reading_list_collection_view_item.h", + "reading_list_collection_view_item.mm", + "reading_list_empty_collection_background.h", + "reading_list_empty_collection_background.mm", + "reading_list_menu_notification_delegate.h", + "reading_list_menu_notifier.h", + "reading_list_menu_notifier.mm", + "reading_list_side_swipe_provider.h", + "reading_list_side_swipe_provider.mm", + "reading_list_toolbar.h", + "reading_list_toolbar.mm", + "reading_list_view_controller.h", + "reading_list_view_controller.mm", + "reading_list_view_controller_builder.h", + "reading_list_view_controller_builder.mm", + "reading_list_view_controller_container.h", + "reading_list_view_controller_container.mm", + ] + deps = [ + ":resources", + "//base", + "//components/prefs", + "//components/reading_list/core", + "//components/strings", + "//components/url_formatter", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/favicon", + "//ios/chrome/browser/reading_list", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/alert_coordinator", + "//ios/chrome/browser/ui/collection_view/cells", + "//ios/chrome/browser/ui/colors", + "//ios/chrome/browser/ui/keyboard", + "//ios/chrome/browser/ui/material_components", + "//ios/chrome/browser/ui/side_swipe", + "//ios/chrome/browser/ui/static_content", + "//ios/chrome/common", + "//ios/third_party/material_components_ios", + "//ios/third_party/material_roboto_font_loader_ios", + "//ios/web", + "//net", + "//ui/base", + "//url", + ] + public_deps = [ + "//components/reading_list/ios", + "//ios/chrome/browser/ui/collection_view", + ] + allow_circular_includes_from = [ "//ios/chrome/browser/ui/side_swipe" ] + libs = [ "UIKit.framework" ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "offline_page_native_content_unittest.mm", + "reading_list_view_controller_unittest.mm", + ] + deps = [ + ":reading_list", + "//base", + "//components/favicon/core", + "//components/prefs", + "//components/reading_list/ios", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/favicon", + "//ios/chrome/browser/reading_list", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/static_content", + "//ios/web", + "//ios/web:test_support", + "//testing/gtest", + "//third_party/ocmock", + ] +} + +source_set("eg_tests") { + testonly = true + sources = [ + "reading_list_egtest.mm", + ] + deps = [ + ":reading_list", + "//base", + "//components/reading_list/ios", + "//ios/chrome/app/strings", + "//ios/chrome/browser/reading_list", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing:ios_test_support", + "//ios/third_party/earl_grey", + "//ios/third_party/material_components_ios", + "//ios/web:test_support", + ] + libs = [ + "UIKit.framework", + "XCTest.framework", + ] +} diff --git a/chromium/ios/chrome/browser/ui/sad_tab/BUILD.gn b/chromium/ios/chrome/browser/ui/sad_tab/BUILD.gn new file mode 100644 index 00000000000..7b92411f59e --- /dev/null +++ b/chromium/ios/chrome/browser/ui/sad_tab/BUILD.gn @@ -0,0 +1,27 @@ +# 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. + +source_set("sad_tab") { + sources = [ + "sad_tab_view.h", + "sad_tab_view.mm", + ] + deps = [ + "//base", + "//components/resources", + "//components/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/colors", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/util", + "//ios/third_party/material_components_ios", + "//ios/third_party/material_roboto_font_loader_ios", + "//ios/web", + "//net", + "//ui/base", + "//ui/gfx", + ] + libs = [ "UIKit.framework" ] +} diff --git a/chromium/ios/chrome/browser/ui/settings/BUILD.gn b/chromium/ios/chrome/browser/ui/settings/BUILD.gn new file mode 100644 index 00000000000..9984116e053 --- /dev/null +++ b/chromium/ios/chrome/browser/ui/settings/BUILD.gn @@ -0,0 +1,370 @@ +# 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. + +bundle_data("resources") { + sources = [ + "resources/app_icon_placeholder.png", + "resources/app_icon_placeholder@2x.png", + "resources/app_icon_placeholder@3x.png", + "resources/encryption_error.png", + "resources/encryption_error@2x.png", + "resources/encryption_error@3x.png", + "resources/settings_accounts_add_account.png", + "resources/settings_accounts_add_account@2x.png", + "resources/settings_accounts_add_account@3x.png", + "resources/settings_error.png", + "resources/settings_error@2x.png", + "resources/settings_error@3x.png", + "resources/settings_sync.png", + "resources/settings_sync@2x.png", + "resources/settings_sync@3x.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +source_set("settings") { + sources = [ + "about_chrome_collection_view_controller.h", + "about_chrome_collection_view_controller.mm", + "accounts_collection_view_controller.h", + "accounts_collection_view_controller.mm", + "autofill_collection_view_controller.h", + "autofill_collection_view_controller.mm", + "autofill_credit_card_edit_collection_view_controller.h", + "autofill_credit_card_edit_collection_view_controller.mm", + "autofill_edit_accessory_view.h", + "autofill_edit_accessory_view.mm", + "autofill_edit_collection_view_controller.h", + "autofill_edit_collection_view_controller.mm", + "autofill_profile_edit_collection_view_controller.h", + "autofill_profile_edit_collection_view_controller.mm", + "bandwidth_management_collection_view_controller.h", + "bandwidth_management_collection_view_controller.mm", + "bar_button_activity_indicator.h", + "bar_button_activity_indicator.mm", + "block_popups_collection_view_controller.h", + "block_popups_collection_view_controller.mm", + "clear_browsing_data_collection_view_controller.h", + "clear_browsing_data_collection_view_controller.mm", + "content_settings_collection_view_controller.h", + "content_settings_collection_view_controller.mm", + "contextual_search_collection_view_controller.h", + "contextual_search_collection_view_controller.mm", + "dataplan_usage_collection_view_controller.h", + "dataplan_usage_collection_view_controller.mm", + "do_not_track_collection_view_controller.h", + "do_not_track_collection_view_controller.mm", + "handoff_collection_view_controller.h", + "handoff_collection_view_controller.mm", + "import_data_collection_view_controller.h", + "import_data_collection_view_controller.mm", + "material_cell_catalog_view_controller.h", + "material_cell_catalog_view_controller.mm", + "native_apps_collection_view_controller.h", + "native_apps_collection_view_controller.mm", + "native_apps_collection_view_controller_private.h", + "password_details_collection_view_controller.h", + "password_details_collection_view_controller.mm", + "physical_web_collection_view_controller.h", + "physical_web_collection_view_controller.mm", + "privacy_collection_view_controller.h", + "privacy_collection_view_controller.mm", + "reauthentication_module.h", + "reauthentication_module.mm", + "reauthentication_protocol.h", + "save_passwords_collection_view_controller.h", + "save_passwords_collection_view_controller.mm", + "search_engine_settings_collection_view_controller.h", + "search_engine_settings_collection_view_controller.mm", + "settings_collection_view_controller.h", + "settings_collection_view_controller.mm", + "settings_navigation_controller.h", + "settings_navigation_controller.mm", + "settings_root_collection_view_controller.h", + "settings_root_collection_view_controller.mm", + "settings_utils.h", + "settings_utils.mm", + "sync_create_passphrase_collection_view_controller.h", + "sync_create_passphrase_collection_view_controller.mm", + "sync_encryption_collection_view_controller.h", + "sync_encryption_collection_view_controller.mm", + "sync_encryption_passphrase_collection_view_controller.h", + "sync_encryption_passphrase_collection_view_controller.mm", + "sync_settings_collection_view_controller.h", + "sync_settings_collection_view_controller.mm", + "time_range_selector_collection_view_controller.h", + "time_range_selector_collection_view_controller.mm", + "translate_collection_view_controller.h", + "translate_collection_view_controller.mm", + "voicesearch_collection_view_controller.h", + "voicesearch_collection_view_controller.mm", + ] + deps = [ + ":resources", + "//base", + "//base:i18n", + "//components/autofill/core/browser", + "//components/autofill/core/common", + "//components/autofill/ios/browser", + "//components/browser_sync", + "//components/browsing_data/core", + "//components/content_settings/core/browser", + "//components/content_settings/core/common", + "//components/google/core/browser", + "//components/handoff", + "//components/history/core/browser", + "//components/keyed_service/core", + "//components/metrics", + "//components/password_manager/core/browser", + "//components/password_manager/core/common", + "//components/physical_web/data_source", + "//components/prefs", + "//components/resources", + "//components/search_engines", + "//components/signin/core/browser", + "//components/signin/core/common", + "//components/signin/ios/browser", + "//components/strings", + "//components/sync", + "//components/translate/core/browser", + "//components/translate/core/common", + "//components/url_formatter", + "//components/version_info", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/autofill", + "//ios/chrome/browser/autofill:autofill_internal", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/browser_state:browser_state_impl", + "//ios/chrome/browser/browsing_data", + "//ios/chrome/browser/content_settings", + "//ios/chrome/browser/history", + "//ios/chrome/browser/native_app_launcher:native_app_launcher_internal", + "//ios/chrome/browser/passwords", + "//ios/chrome/browser/physical_web", + "//ios/chrome/browser/prefs", + "//ios/chrome/browser/search_engines", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/sync", + "//ios/chrome/browser/translate", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/alert_coordinator", + "//ios/chrome/browser/ui/authentication", + "//ios/chrome/browser/ui/autofill/cells", + "//ios/chrome/browser/ui/collection_view", + "//ios/chrome/browser/ui/colors", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/contextual_search", + "//ios/chrome/browser/ui/icons", + "//ios/chrome/browser/ui/keyboard", + "//ios/chrome/browser/ui/material_components", + "//ios/chrome/browser/ui/settings/cells", + "//ios/chrome/browser/ui/settings/utils", + "//ios/chrome/browser/ui/sync", + "//ios/chrome/browser/voice", + "//ios/chrome/common", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/images", + "//ios/public/provider/chrome/browser/native_app_launcher", + "//ios/public/provider/chrome/browser/signin", + "//ios/public/provider/chrome/browser/user_feedback", + "//ios/public/provider/chrome/browser/voice", + "//ios/third_party/material_components_ios", + "//ios/third_party/material_roboto_font_loader_ios", + "//ios/web", + "//net", + "//ui/base", + "//url", + ] + public_deps = [ + "//ios/chrome/browser/ui/collection_view/cells", + ] + allow_circular_includes_from = [ "//ios/chrome/browser/ui/authentication" ] + libs = [ + "CoreLocation.framework", + "LocalAuthentication.framework", + "StoreKit.framework", + "UIKit.framework", + ] +} + +source_set("test_support") { + testonly = true + sources = [ + "passphrase_collection_view_controller_test.h", + "passphrase_collection_view_controller_test.mm", + "personal_data_manager_data_changed_observer.cc", + "personal_data_manager_data_changed_observer.h", + ] + deps = [ + ":settings", + "//base", + "//components/autofill/core/browser", + "//components/browser_sync", + "//components/browser_sync:test_support", + "//components/keyed_service/core", + "//components/pref_registry", + "//components/sync", + "//components/sync_preferences", + "//components/sync_preferences:test_support", + "//google_apis", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/prefs:browser_prefs", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/signin:test_support", + "//ios/chrome/browser/sync", + "//ios/chrome/browser/sync:test_support", + "//ios/chrome/browser/ui/collection_view:test_support", + "//ios/public/provider/chrome/browser/signin:test_support", + "//ios/web:test_support", + "//testing/gtest", + ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "about_chrome_collection_view_controller_unittest.mm", + "autofill_collection_view_controller_unittest.mm", + "autofill_profile_edit_collection_view_controller_unittest.mm", + "bandwidth_management_collection_view_controller_unittest.mm", + "block_popups_collection_view_controller_unittest.mm", + "clear_browsing_data_collection_view_controller_unittest.mm", + "content_settings_collection_view_controller_unittest.mm", + "contextual_search_collection_view_controller_unittest.mm", + "dataplan_usage_collection_view_controller_unittest.mm", + "do_not_track_collection_view_controller_unittest.mm", + "import_data_collection_view_controller_unittest.mm", + "native_apps_collection_view_controller_unittest.mm", + "password_details_collection_view_controller_unittest.mm", + "physical_web_collection_view_controller_unittest.mm", + "privacy_collection_view_controller_unittest.mm", + "save_passwords_collection_view_controller_unittest.mm", + "search_engine_settings_collection_view_controller_unittest.mm", + "settings_navigation_controller_unittest.mm", + "settings_root_collection_view_controller_unittest.mm", + "sync_create_passphrase_collection_view_controller_unittest.mm", + "sync_encryption_collection_view_controller_unittest.mm", + "sync_encryption_passphrase_collection_view_controller_unittest.mm", + "sync_settings_collection_view_controller_unittest.mm", + "time_range_selector_collection_view_controller_unittest.mm", + "translate_collection_view_controller_unittest.mm", + "voicesearch_collection_view_controller_unittest.mm", + ] + deps = [ + ":settings", + ":test_support", + "//base", + "//base/test:test_support", + "//components/autofill/core/browser", + "//components/autofill/core/common", + "//components/browser_sync:test_support", + "//components/browsing_data/core", + "//components/content_settings/core/browser", + "//components/google/core/browser", + "//components/handoff", + "//components/password_manager/core/browser:test_support", + "//components/pref_registry", + "//components/prefs:test_support", + "//components/search_engines", + "//components/signin/core/browser:test_support", + "//components/strings", + "//components/sync_preferences", + "//components/sync_preferences:test_support", + "//components/translate/core/browser", + "//components/translate/core/common", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/autofill", + "//ios/chrome/browser/autofill:autofill_internal", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/browsing_data", + "//ios/chrome/browser/content_settings", + "//ios/chrome/browser/passwords", + "//ios/chrome/browser/physical_web", + "//ios/chrome/browser/prefs:browser_prefs", + "//ios/chrome/browser/search_engines", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/signin:test_support", + "//ios/chrome/browser/sync", + "//ios/chrome/browser/sync:test_support", + "//ios/chrome/browser/translate", + "//ios/chrome/browser/ui/collection_view", + "//ios/chrome/browser/ui/collection_view:test_support", + "//ios/chrome/browser/ui/collection_view/cells", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/contextual_search", + "//ios/chrome/browser/ui/icons", + "//ios/chrome/browser/ui/settings/cells", + "//ios/chrome/browser/ui/sync", + "//ios/chrome/browser/voice", + "//ios/chrome/browser/web:test_support", + "//ios/chrome/common", + "//ios/chrome/test:test_support", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/native_app_launcher:test_support", + "//ios/public/provider/chrome/browser/voice", + "//ios/third_party/material_components_ios", + "//ios/web", + "//ios/web:test_support", + "//net", + "//net:test_support", + "//testing/gmock", + "//testing/gtest", + "//third_party/ocmock", + "//ui/base", + "//url", + ] +} + +source_set("eg_tests") { + testonly = true + sources = [ + "accounts_collection_egtest.mm", + "autofill_settings_egtest.mm", + "block_popups_egtest.mm", + "clear_browsing_data_egtest.mm", + "settings_egtest.mm", + "translate_ui_egtest.mm", + ] + + deps = [ + ":settings", + "//base", + "//components/browsing_data/core", + "//components/content_settings/core/browser", + "//components/metrics", + "//components/password_manager/core/common", + "//components/prefs", + "//components/search_engines", + "//components/signin/core/browser", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/app/theme", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/content_settings", + "//ios/chrome/browser/search_engines", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/ui/tools_menu", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/public/provider/chrome/browser/signin:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey", + "//ios/web", + "//ios/web:test_support", + "//net", + "//ui/base", + "//url", + ] + libs = [ + "UIKit.framework", + "XCTest.framework", + ] +} diff --git a/chromium/ios/chrome/browser/ui/settings/cells/BUILD.gn b/chromium/ios/chrome/browser/ui/settings/cells/BUILD.gn new file mode 100644 index 00000000000..74d8d7c52ff --- /dev/null +++ b/chromium/ios/chrome/browser/ui/settings/cells/BUILD.gn @@ -0,0 +1,87 @@ +# 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. + +source_set("cells") { + sources = [ + "account_control_item.h", + "account_control_item.mm", + "account_signin_item.h", + "account_signin_item.mm", + "autofill_data_item.h", + "autofill_data_item.mm", + "autofill_edit_item.h", + "autofill_edit_item.mm", + "byo_textfield_item.h", + "byo_textfield_item.mm", + "card_multiline_item.h", + "card_multiline_item.mm", + "copied_to_chrome_item.h", + "copied_to_chrome_item.mm", + "encryption_item.h", + "encryption_item.mm", + "import_data_multiline_detail_cell.h", + "import_data_multiline_detail_cell.mm", + "native_app_item.h", + "native_app_item.mm", + "passphrase_error_item.h", + "passphrase_error_item.mm", + "password_details_item.h", + "password_details_item.mm", + "sync_switch_item.h", + "sync_switch_item.mm", + "text_and_error_item.h", + "text_and_error_item.mm", + "version_item.h", + "version_item.mm", + ] + + deps = [ + "//components/autofill/core/browser", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/collection_view/cells", + "//ios/chrome/browser/ui/colors", + "//ios/third_party/material_components_ios", + "//ios/third_party/material_roboto_font_loader_ios", + "//ui/base", + ] + + configs += [ "//build/config/compiler:enable_arc" ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "account_control_item_unittest.mm", + "account_signin_item_unittest.mm", + "autofill_data_item_unittest.mm", + "autofill_edit_item_unittest.mm", + "byo_textfield_item_unittest.mm", + "card_multiline_item_unittest.mm", + "copied_to_chrome_item_unittest.mm", + "encryption_item_unittest.mm", + "import_data_multiline_detail_cell_unittest.mm", + "native_app_item_unittest.mm", + "passphrase_error_item_unittest.mm", + "password_details_item_unittest.mm", + "sync_switch_item_unittest.mm", + "text_and_error_item_unittest.mm", + "version_item_unittest.mm", + ] + + deps = [ + ":cells", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui/collection_view/cells", + "//ios/chrome/browser/ui/collection_view/cells:test_support", + "//ios/chrome/browser/ui/colors", + "//ios/third_party/material_components_ios", + "//testing/gtest", + "//ui/base", + ] + + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/chromium/ios/chrome/browser/ui/settings/utils/BUILD.gn b/chromium/ios/chrome/browser/ui/settings/utils/BUILD.gn new file mode 100644 index 00000000000..3f4502981d7 --- /dev/null +++ b/chromium/ios/chrome/browser/ui/settings/utils/BUILD.gn @@ -0,0 +1,57 @@ +# 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. + +source_set("utils") { + sources = [ + "content_setting_backed_boolean.h", + "content_setting_backed_boolean.mm", + "observable_boolean.h", + "pref_backed_boolean.h", + "pref_backed_boolean.mm", + "resized_avatar_cache.h", + "resized_avatar_cache.mm", + ] + deps = [ + "//base", + "//components/content_settings/core/browser", + "//components/content_settings/core/common", + "//components/prefs", + "//ios/chrome/browser/ui", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/signin", + ] +} + +source_set("test_support") { + testonly = true + sources = [ + "fake_observable_boolean.h", + "fake_observable_boolean.mm", + ] + deps = [ + ":utils", + ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "content_setting_backed_boolean_unittest.mm", + "pref_backed_boolean_unittest.mm", + ] + deps = [ + ":test_support", + ":utils", + "//base", + "//components/content_settings/core/browser", + "//components/content_settings/core/common", + "//components/prefs", + "//components/prefs:test_support", + "//components/sync_preferences:test_support", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/content_settings", + "//ios/web:test_support", + "//testing/gtest", + ] +} diff --git a/chromium/ios/chrome/browser/ui/side_swipe/BUILD.gn b/chromium/ios/chrome/browser/ui/side_swipe/BUILD.gn new file mode 100644 index 00000000000..1291d8fbb5c --- /dev/null +++ b/chromium/ios/chrome/browser/ui/side_swipe/BUILD.gn @@ -0,0 +1,71 @@ +# 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. + +bundle_data("resources") { + sources = [ + "resources/side_swipe_navigation_back.png", + "resources/side_swipe_navigation_back@2x.png", + "resources/side_swipe_navigation_back@3x.png", + "resources/side_swipe_navigation_content_shadow.png", + "resources/side_swipe_navigation_content_shadow@2x.png", + "resources/side_swipe_navigation_content_shadow@3x.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +source_set("side_swipe") { + sources = [ + "card_side_swipe_view.h", + "card_side_swipe_view.mm", + "history_side_swipe_provider.h", + "history_side_swipe_provider.mm", + "side_swipe_controller.h", + "side_swipe_controller.mm", + "side_swipe_navigation_view.h", + "side_swipe_navigation_view.mm", + "side_swipe_util.h", + "side_swipe_util.mm", + ] + deps = [ + ":resources", + "//base", + "//components/reading_list/core", + "//components/reading_list/ios", + "//ios/chrome/app/theme", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/reading_list", + "//ios/chrome/browser/snapshots", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/ntp", + "//ios/chrome/browser/ui/tabs", + "//ios/chrome/common", + "//ios/web", + "//ui/base", + "//url", + ] + public_deps = [ + "//ios/chrome/browser/infobars", + ] + libs = [ "UIKit.framework" ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "side_swipe_controller_unittest.mm", + ] + deps = [ + ":side_swipe", + "//base", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/ui/toolbar", + "//ios/web:test_support", + "//testing/gtest", + "//third_party/ocmock", + ] +} diff --git a/chromium/ios/chrome/browser/ui/stack_view/BUILD.gn b/chromium/ios/chrome/browser/ui/stack_view/BUILD.gn new file mode 100644 index 00000000000..cfea1f387ba --- /dev/null +++ b/chromium/ios/chrome/browser/ui/stack_view/BUILD.gn @@ -0,0 +1,168 @@ +# 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. + +bundle_data("resources") { + sources = [ + "resources/border_frame_bottom.png", + "resources/border_frame_bottom@2x.png", + "resources/border_frame_bottom@3x.png", + "resources/border_frame_incognito_bottom.png", + "resources/border_frame_incognito_bottom@2x.png", + "resources/border_frame_incognito_bottom@3x.png", + "resources/border_frame_incognito_left.png", + "resources/border_frame_incognito_left@2x.png", + "resources/border_frame_incognito_left@3x.png", + "resources/border_frame_incognito_right.png", + "resources/border_frame_incognito_right@2x.png", + "resources/border_frame_incognito_right@3x.png", + "resources/border_frame_incognito_top.png", + "resources/border_frame_incognito_top@2x.png", + "resources/border_frame_incognito_top@3x.png", + "resources/border_frame_left.png", + "resources/border_frame_left@2x.png", + "resources/border_frame_left@3x.png", + "resources/border_frame_right.png", + "resources/border_frame_right@2x.png", + "resources/border_frame_right@3x.png", + "resources/border_frame_top.png", + "resources/border_frame_top@2x.png", + "resources/border_frame_top@3x.png", + "resources/card_close_button.png", + "resources/card_close_button@2x.png", + "resources/card_close_button@3x.png", + "resources/card_close_button_incognito.png", + "resources/card_close_button_incognito@2x.png", + "resources/card_close_button_incognito@3x.png", + "resources/card_close_button_pressed.png", + "resources/card_close_button_pressed@2x.png", + "resources/card_close_button_pressed@3x.png", + "resources/card_frame_shadow.png", + "resources/card_frame_shadow@2x.png", + "resources/card_frame_shadow@3x.png", + "resources/stack_view_background_noise.jpg", + "resources/stack_view_background_noise@2x.jpg", + "resources/stack_view_background_noise@2x~ipad.jpg", + "resources/stack_view_background_noise@3x.jpg", + "resources/stack_view_background_noise~ipad.jpg", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +source_set("stack_view") { + sources = [ + "card_set.h", + "card_set.mm", + "card_stack_layout_manager.h", + "card_stack_layout_manager.mm", + "card_stack_pinch_gesture_recognizer.h", + "card_stack_pinch_gesture_recognizer.mm", + "card_view.h", + "card_view.mm", + "close_button.h", + "close_button.mm", + "page_animation_util.h", + "page_animation_util.mm", + "stack_card.h", + "stack_card.mm", + "stack_view_controller.h", + "stack_view_controller.mm", + "stack_view_controller_private.h", + "stack_view_toolbar_controller.h", + "stack_view_toolbar_controller.mm", + "title_label.h", + "title_label.mm", + ] + deps = [ + ":resources", + "//base", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/keyboard", + "//ios/chrome/browser/ui/ntp", + "//ios/chrome/browser/ui/ntp:ntp_internal", + "//ios/chrome/browser/ui/tab_switcher", + "//ios/chrome/browser/ui/tabs", + "//ios/chrome/browser/ui/toolbar", + "//ios/chrome/browser/ui/tools_menu", + "//ios/chrome/common", + "//ios/third_party/material_components_ios", + "//ios/web", + "//net", + "//ui/base", + "//ui/gfx", + ] + libs = [ + "CoreGraphics.framework", + "QuartzCore.framework", + "UIKit.framework", + ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "card_set_unittest.mm", + "card_stack_layout_manager_unittest.mm", + "stack_card_unittest.mm", + "stack_view_controller_unittest.mm", + ] + deps = [ + ":stack_view", + "//base", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui", + "//ios/chrome/test:test_support", + "//ios/testing:ocmock_support", + "//testing/gtest", + "//third_party/ocmock", + ] +} + +source_set("eg_tests") { + testonly = true + sources = [ + "stack_view_egtest.mm", + ] + deps = [ + ":stack_view", + "//base", + "//base/test:test_support", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui:ui_internal", + "//ios/chrome/browser/ui/toolbar", + "//ios/chrome/browser/ui/tools_menu", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + ] + libs = [ "XCTest.framework" ] +} + +source_set("perf_tests") { + testonly = true + sources = [ + "stack_view_controller_perftest.mm", + ] + deps = [ + ":stack_view", + "//base", + "//base/test:test_support", + "//ios/chrome/browser/snapshots", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/test:perf_test_support", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui:ui_internal", + "//ios/web", + "//net", + ] + libs = [ "UIKit.framework" ] +} diff --git a/chromium/ios/chrome/browser/ui/static_content/BUILD.gn b/chromium/ios/chrome/browser/ui/static_content/BUILD.gn new file mode 100644 index 00000000000..494c90d46a5 --- /dev/null +++ b/chromium/ios/chrome/browser/ui/static_content/BUILD.gn @@ -0,0 +1,42 @@ +# 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. + +source_set("static_content") { + sources = [ + "static_html_native_content.h", + "static_html_native_content.mm", + "static_html_view_controller.h", + "static_html_view_controller.mm", + ] + deps = [ + "//base", + "//ios/chrome/browser/ui", + "//ios/web", + "//net", + "//ui/base", + ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "static_html_native_content_unittest.mm", + "static_html_view_controller_unittest.mm", + ] + deps = [ + ":static_content", + "//base", + "//base/test:test_support", + "//ios/chrome/app/strings", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/ui", + "//ios/testing:ocmock_support", + "//ios/web", + "//ios/web:test_support", + "//net", + "//testing/gtest", + "//third_party/ocmock", + "//ui/base", + ] +} diff --git a/chromium/ios/chrome/browser/ui/suggestions/BUILD.gn b/chromium/ios/chrome/browser/ui/suggestions/BUILD.gn new file mode 100644 index 00000000000..908f7207bbf --- /dev/null +++ b/chromium/ios/chrome/browser/ui/suggestions/BUILD.gn @@ -0,0 +1,52 @@ +# 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. + +source_set("suggestions") { + configs += [ "//build/config/compiler:enable_arc" ] + sources = [ + "expandable_item.h", + "suggestions_article_item.h", + "suggestions_article_item.mm", + "suggestions_collection_updater.h", + "suggestions_collection_updater.mm", + "suggestions_commands.h", + "suggestions_expandable_item.h", + "suggestions_expandable_item.mm", + "suggestions_item.h", + "suggestions_item.mm", + "suggestions_item_actions.h", + "suggestions_stack_item.h", + "suggestions_stack_item.mm", + "suggestions_stack_item_actions.h", + "suggestions_view_controller.h", + "suggestions_view_controller.mm", + ] + deps = [ + "//base", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/collection_view", + "//ios/third_party/material_roboto_font_loader_ios", + "//ui/base", + ] + public_deps = [ + "//ios/third_party/material_components_ios", + ] +} + +source_set("unit_tests") { + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "suggestions_article_item_unittest.mm", + "suggestions_expandable_item_unittest.mm", + "suggestions_item_unittest.mm", + "suggestions_stack_item_unittest.mm", + ] + deps = [ + ":suggestions", + "//ios/chrome/browser/ui/collection_view", + "//testing/gtest", + "//third_party/ocmock", + ] +} diff --git a/chromium/ios/chrome/browser/ui/sync/BUILD.gn b/chromium/ios/chrome/browser/ui/sync/BUILD.gn new file mode 100644 index 00000000000..53aaf3e0fb3 --- /dev/null +++ b/chromium/ios/chrome/browser/ui/sync/BUILD.gn @@ -0,0 +1,61 @@ +# 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/public/provider/chrome/browser/build_config.gni") + +source_set("sync") { + sources = [ + "sync_error_infobar_delegate.h", + "sync_error_infobar_delegate.mm", + "sync_util.h", + "sync_util.mm", + ] + deps = [ + "//base", + "//components/browser_sync", + "//components/infobars/core", + "//components/strings", + "//components/sync", + "//google_apis", + "//ios/chrome/app/strings", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/sync", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui/commands", + "//ui/base", + "//ui/gfx", + ] + libs = [ "UIKit.framework" ] +} + +source_set("eg_tests") { + testonly = true + sources = [ + "sync_fake_server_egtest.mm", + ] + deps = [ + "//base", + "//components/bookmarks/browser", + "//components/browser_sync", + "//components/strings", + "//components/sync", + "//ios/chrome/app/strings", + "//ios/chrome/browser/bookmarks", + "//ios/chrome/browser/bookmarks:bookmarks_utils", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/sync", + "//ios/chrome/browser/ui/settings", + "//ios/chrome/browser/ui/tools_menu", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/public/provider/chrome/browser/signin:test_support", + "//ios/testing:ios_test_support", + "//ios/third_party/earl_grey", + "//ios/web:test_support", + "//net", + "//ui/base", + "//url", + ] + libs = [ "XCTest.framework" ] +} diff --git a/chromium/ios/chrome/browser/ui/tab_switcher/BUILD.gn b/chromium/ios/chrome/browser/ui/tab_switcher/BUILD.gn new file mode 100644 index 00000000000..b38fde2afb7 --- /dev/null +++ b/chromium/ios/chrome/browser/ui/tab_switcher/BUILD.gn @@ -0,0 +1,201 @@ +# 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. + +bundle_data("resources") { + sources = [ + "resources/tabswitcher_full_history.png", + "resources/tabswitcher_full_history@2x.png", + "resources/tabswitcher_full_history@3x.png", + "resources/tabswitcher_incognito.png", + "resources/tabswitcher_incognito@2x.png", + "resources/tabswitcher_incognito@3x.png", + "resources/tabswitcher_laptop.png", + "resources/tabswitcher_laptop@2x.png", + "resources/tabswitcher_laptop@3x.png", + "resources/tabswitcher_menu.png", + "resources/tabswitcher_menu@2x.png", + "resources/tabswitcher_menu@3x.png", + "resources/tabswitcher_new_tab.png", + "resources/tabswitcher_new_tab@2x.png", + "resources/tabswitcher_new_tab@3x.png", + "resources/tabswitcher_new_tab_fab.png", + "resources/tabswitcher_new_tab_fab@2x.png", + "resources/tabswitcher_new_tab_fab@3x.png", + "resources/tabswitcher_open_tabs.png", + "resources/tabswitcher_open_tabs@2x.png", + "resources/tabswitcher_open_tabs@3x.png", + "resources/tabswitcher_other_devices.png", + "resources/tabswitcher_other_devices@2x.png", + "resources/tabswitcher_other_devices@3x.png", + "resources/tabswitcher_overflow_arrow.png", + "resources/tabswitcher_overflow_arrow@2x.png", + "resources/tabswitcher_overflow_arrow@3x.png", + "resources/tabswitcher_phone.png", + "resources/tabswitcher_phone@2x.png", + "resources/tabswitcher_phone@3x.png", + "resources/tabswitcher_recently_closed.png", + "resources/tabswitcher_recently_closed@2x.png", + "resources/tabswitcher_recently_closed@3x.png", + "resources/tabswitcher_tab_switcher_button.png", + "resources/tabswitcher_tab_switcher_button@2x.png", + "resources/tabswitcher_tab_switcher_button@3x.png", + "resources/tabswitcher_tablet.png", + "resources/tabswitcher_tablet@2x.png", + "resources/tabswitcher_tablet@3x.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +source_set("tab_switcher") { + sources = [ + "tab_model_snapshot.h", + "tab_model_snapshot.mm", + "tab_switcher.h", + "tab_switcher_button.h", + "tab_switcher_button.mm", + "tab_switcher_cache.h", + "tab_switcher_cache.mm", + "tab_switcher_controller.h", + "tab_switcher_controller.mm", + "tab_switcher_header_cell.h", + "tab_switcher_header_cell.mm", + "tab_switcher_header_view.h", + "tab_switcher_header_view.mm", + "tab_switcher_model.h", + "tab_switcher_model.mm", + "tab_switcher_model_private.h", + "tab_switcher_panel_cell.h", + "tab_switcher_panel_cell.mm", + "tab_switcher_panel_collection_view_layout.h", + "tab_switcher_panel_collection_view_layout.mm", + "tab_switcher_panel_controller.h", + "tab_switcher_panel_controller.mm", + "tab_switcher_panel_overlay_view.h", + "tab_switcher_panel_overlay_view.mm", + "tab_switcher_panel_view.h", + "tab_switcher_panel_view.mm", + "tab_switcher_session_cell_data.h", + "tab_switcher_session_cell_data.mm", + "tab_switcher_session_changes.h", + "tab_switcher_session_changes.mm", + "tab_switcher_tab_strip_placeholder_view.h", + "tab_switcher_tab_strip_placeholder_view.mm", + "tab_switcher_transition_context.h", + "tab_switcher_transition_context.mm", + "tab_switcher_view.h", + "tab_switcher_view.mm", + ] + deps = [ + ":resources", + ":utils", + "//base", + "//components/browser_sync", + "//components/sessions", + "//components/signin/core/browser", + "//components/sync", + "//components/sync_sessions", + "//ios/chrome/app/strings", + "//ios/chrome/app/theme", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/favicon", + "//ios/chrome/browser/metrics:metrics_internal", + "//ios/chrome/browser/sessions", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/sync", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/colors", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/keyboard", + "//ios/chrome/browser/ui/material_components", + "//ios/chrome/browser/ui/ntp/recent_tabs/views", + "//ios/chrome/browser/ui/sync", + "//ios/chrome/browser/ui/tabs", + "//ios/chrome/browser/ui/toolbar", + "//ios/chrome/common:ios_app_bundle_id_prefix_header", + "//ios/public/provider/chrome/browser", + "//ios/third_party/material_components_ios", + "//ios/third_party/material_roboto_font_loader_ios", + "//ios/third_party/material_text_accessibility_ios", + "//ios/web", + "//ui/base", + "//ui/gfx", + "//url", + ] + public_deps = [ + "//ios/chrome/browser/ui/ntp/recent_tabs", + ] + allow_circular_includes_from = [ "//ios/chrome/browser/ui/tabs" ] + libs = [ + "QuartzCore.framework", + "UIKit.framework", + ] +} + +source_set("utils") { + sources = [ + "tab_switcher_utils.h", + "tab_switcher_utils.mm", + ] + deps = [ + "//base", + "//components/browser_sync", + "//components/sync", + "//components/sync_sessions", + "//ios/chrome/app/strings", + "//ios/chrome/app/theme", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/favicon", + "//ios/chrome/browser/sync", + "//ios/chrome/browser/ui", + "//ui/base", + ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "tab_model_snapshot_unittest.mm", + "tab_switcher_model_unittest.mm", + "tab_switcher_utils_unittest.mm", + ] + deps = [ + ":tab_switcher", + ":utils", + "//base", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui/ntp/recent_tabs", + "//testing/gtest", + "//third_party/ocmock", + ] +} + +source_set("eg_tests") { + testonly = true + sources = [ + "tab_switcher_controller_egtest.mm", + ] + deps = [ + "//base", + "//base/test:test_support", + "//ios/chrome/app:app_internal", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/tools_menu", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/third_party/earl_grey", + "//ui/base", + ] + libs = [ + "UIKit.framework", + "XCTest.framework", + ] +} diff --git a/chromium/ios/chrome/browser/ui/tabs/BUILD.gn b/chromium/ios/chrome/browser/ui/tabs/BUILD.gn new file mode 100644 index 00000000000..aa66479fc55 --- /dev/null +++ b/chromium/ios/chrome/browser/ui/tabs/BUILD.gn @@ -0,0 +1,112 @@ +# 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. + +bundle_data("resources") { + sources = [ + "resources/tabstrip_background_tab@2x~ipad.png", + "resources/tabstrip_background_tab~ipad.png", + "resources/tabstrip_foreground_tab@2x~ipad.png", + "resources/tabstrip_foreground_tab~ipad.png", + "resources/tabstrip_incognito_background_tab@2x~ipad.png", + "resources/tabstrip_incognito_background_tab~ipad.png", + "resources/tabstrip_incognito_foreground_tab@2x~ipad.png", + "resources/tabstrip_incognito_foreground_tab~ipad.png", + "resources/tabstrip_incognito_switch@2x~ipad.png", + "resources/tabstrip_incognito_switch~ipad.png", + "resources/tabstrip_new_tab@2x~ipad.png", + "resources/tabstrip_new_tab_incognito@2x~ipad.png", + "resources/tabstrip_new_tab_incognito_pressed@2x~ipad.png", + "resources/tabstrip_new_tab_incognito_pressed~ipad.png", + "resources/tabstrip_new_tab_incognito~ipad.png", + "resources/tabstrip_new_tab_pressed@2x~ipad.png", + "resources/tabstrip_new_tab_pressed~ipad.png", + "resources/tabstrip_new_tab~ipad.png", + "resources/tabstrip_switch@2x~ipad.png", + "resources/tabstrip_switch~ipad.png", + "resources/tabstrip_tab_close@2x~ipad.png", + "resources/tabstrip_tab_close_incognito@2x~ipad.png", + "resources/tabstrip_tab_close_incognito_pressed@2x~ipad.png", + "resources/tabstrip_tab_close_incognito_pressed~ipad.png", + "resources/tabstrip_tab_close_incognito~ipad.png", + "resources/tabstrip_tab_close_pressed@2x~ipad.png", + "resources/tabstrip_tab_close_pressed~ipad.png", + "resources/tabstrip_tab_close~ipad.png", + "resources/tabstrip_toggle_button_gradient@2x~ipad.png", + "resources/tabstrip_toggle_button_gradient@3x~ipad.png", + "resources/tabstrip_toggle_button_gradient~ipad.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +source_set("tabs") { + sources = [ + "tab_strip_controller+tab_switcher_animation.h", + "tab_strip_controller.h", + "tab_strip_controller.mm", + "tab_strip_controller_private.h", + "tab_strip_view.h", + "tab_strip_view.mm", + "tab_view.h", + "tab_view.mm", + "target_frame_cache.h", + "target_frame_cache.mm", + ] + deps = [ + ":resources", + "//base", + "//base:i18n", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/colors", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/util", + "//ios/third_party/material_components_ios", + "//ios/web", + "//third_party/google_toolbox_for_mac", + "//ui/base", + "//ui/gfx", + ] + libs = [ "UIKit.framework" ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "tab_strip_controller_unittest.mm", + ] + deps = [ + ":tabs", + "//base", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/sessions:test_support", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui", + "//ios/web:test_support", + "//testing/gtest", + "//third_party/ocmock", + ] +} + +source_set("eg_tests") { + testonly = true + sources = [ + "tab_strip_egtest.mm", + ] + deps = [ + ":tabs", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/ui", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/third_party/earl_grey", + "//ui/base", + ] + libs = [ "XCTest.framework" ] +} diff --git a/chromium/ios/chrome/browser/ui/toolbar/BUILD.gn b/chromium/ios/chrome/browser/ui/toolbar/BUILD.gn new file mode 100644 index 00000000000..b2a94729ad0 --- /dev/null +++ b/chromium/ios/chrome/browser/ui/toolbar/BUILD.gn @@ -0,0 +1,201 @@ +# 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. + +bundle_data("resources") { + sources = [ + "resources/collapse.png", + "resources/collapse@2x.png", + "resources/collapse@3x.png", + "resources/collapse_incognito.png", + "resources/collapse_incognito@2x.png", + "resources/collapse_incognito@3x.png", + "resources/collapse_pressed.png", + "resources/collapse_pressed@2x.png", + "resources/collapse_pressed@3x.png", + "resources/collapse_pressed_incognito.png", + "resources/collapse_pressed_incognito@2x.png", + "resources/collapse_pressed_incognito@3x.png", + "resources/incognito_marker_typing.png", + "resources/incognito_marker_typing@2x.png", + "resources/incognito_marker_typing@3x.png", + "resources/toolbar_dark_newtab.png", + "resources/toolbar_dark_newtab@2x.png", + "resources/toolbar_dark_newtab@3x.png", + "resources/toolbar_dark_newtab_active.png", + "resources/toolbar_dark_newtab_active@2x.png", + "resources/toolbar_dark_newtab_active@3x.png", + "resources/toolbar_dark_newtab_incognito.png", + "resources/toolbar_dark_newtab_incognito@2x.png", + "resources/toolbar_dark_newtab_incognito@3x.png", + "resources/toolbar_dark_newtab_incognito_active.png", + "resources/toolbar_dark_newtab_incognito_active@2x.png", + "resources/toolbar_dark_newtab_incognito_active@3x.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +source_set("toolbar") { + sources = [ + "new_tab_button.h", + "new_tab_button.mm", + "toolbar_button_tints.h", + "toolbar_button_tints.mm", + "toolbar_controller+protected.h", + "toolbar_controller.h", + "toolbar_controller.mm", + "toolbar_controller_private.h", + "toolbar_model_delegate_ios.h", + "toolbar_model_delegate_ios.mm", + "toolbar_model_impl_ios.h", + "toolbar_model_impl_ios.mm", + "toolbar_model_ios.h", + "toolbar_owner.h", + "toolbar_tools_menu_button.h", + "toolbar_tools_menu_button.mm", + "tools_menu_button_observer_bridge.h", + "tools_menu_button_observer_bridge.mm", + "web_toolbar_controller.h", + "web_toolbar_controller.mm", + ] + deps = [ + ":resource_macros", + ":resources", + "//base", + "//base:i18n", + "//components/bookmarks/browser", + "//components/google/core/browser", + "//components/omnibox/browser", + "//components/prefs", + "//components/reading_list/core", + "//components/reading_list/ios", + "//components/search_engines", + "//components/strings", + "//components/toolbar", + "//ios/chrome/app/strings", + "//ios/chrome/app/theme", + "//ios/chrome/browser", + "//ios/chrome/browser/autocomplete", + "//ios/chrome/browser/bookmarks", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/reading_list", + "//ios/chrome/browser/search_engines", + "//ios/chrome/browser/ssl", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/colors", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/fancy_ui", + "//ios/chrome/browser/ui/history", + "//ios/chrome/browser/ui/keyboard", + "//ios/chrome/browser/ui/qr_scanner", + "//ios/chrome/browser/ui/tools_menu", + "//ios/chrome/browser/ui/util", + "//ios/chrome/browser/ui/voice", + "//ios/chrome/common", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/images", + "//ios/public/provider/chrome/browser/voice", + "//ios/third_party/material_components_ios", + "//ios/third_party/material_roboto_font_loader_ios", + "//ios/web", + "//net", + "//ui/base", + "//ui/gfx", + + # Fake dependencies to break cycles + "//ios/chrome/browser/ui/ntp", + "//ios/chrome/browser/ui/side_swipe", + ] + public_deps = [ + "//ios/chrome/browser/ui/omnibox:omnibox_internal", + ] + allow_circular_includes_from = [ + "//ios/chrome/browser/ui/side_swipe", + "//ios/chrome/browser/ui/ntp", + ] + libs = [ + "CoreLocation.framework", + "UIKit.framework", + ] +} + +source_set("resource_macros") { + sources = [ + "toolbar_resource_macros.h", + ] + deps = [ + "//ios/chrome/app/theme", + ] +} + +source_set("test_support") { + testonly = true + sources = [ + "test_toolbar_model_ios.h", + "test_toolbar_model_ios.mm", + "web_toolbar_controller_private.h", + ] + deps = [ + ":toolbar", + "//base", + "//components/toolbar", + "//components/toolbar:test_support", + "//ios/chrome/browser/tabs", + ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "toolbar_controller_unittest.mm", + "toolbar_model_impl_ios_unittest.mm", + "web_toolbar_controller_unittest.mm", + ] + deps = [ + ":test_support", + ":toolbar", + "//base", + "//components/bookmarks/browser", + "//components/bookmarks/test", + "//components/toolbar:test_support", + "//ios/chrome/browser", + "//ios/chrome/browser/bookmarks", + "//ios/chrome/browser/browser_state:test_support", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui", + "//ios/chrome/test:test_support", + "//ios/testing:ocmock_support", + "//ios/web:test_support", + "//testing/gtest", + "//third_party/ocmock", + ] +} + +source_set("eg_tests") { + testonly = true + sources = [ + "toolbar_egtest.mm", + ] + + deps = [ + ":toolbar", + "//base", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/ntp:ntp_internal", + "//ios/chrome/browser/ui/omnibox:omnibox_internal", + "//ios/chrome/browser/ui/tools_menu", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing/earl_grey:earl_grey_support", + "//ios/third_party/earl_grey", + "//ios/web:test_support", + "//ui/base", + ] + libs = [ "XCTest.framework" ] +} diff --git a/chromium/ios/chrome/browser/ui/tools_menu/BUILD.gn b/chromium/ios/chrome/browser/ui/tools_menu/BUILD.gn new file mode 100644 index 00000000000..e1f3950e380 --- /dev/null +++ b/chromium/ios/chrome/browser/ui/tools_menu/BUILD.gn @@ -0,0 +1,75 @@ +# 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. + +source_set("tools_menu") { + sources = [ + "reading_list_menu_view_item.h", + "reading_list_menu_view_item.mm", + "tools_menu_context.h", + "tools_menu_context.mm", + "tools_menu_view_controller.h", + "tools_menu_view_controller.mm", + "tools_menu_view_item.h", + "tools_menu_view_item.mm", + "tools_popup_controller.h", + "tools_popup_controller.mm", + ] + deps = [ + "//base", + "//base:i18n", + "//components/reading_list/core", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/colors", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/popup_menu", + "//ios/chrome/browser/ui/reading_list", + "//ios/chrome/browser/ui/toolbar:resource_macros", + "//ios/chrome/common", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/user_feedback", + "//ios/third_party/material_components_ios", + "//ios/third_party/material_roboto_font_loader_ios", + "//ui/base", + ] + libs = [ + "QuartzCore.framework", + "UIKit.framework", + ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "tools_menu_view_item_unittest.mm", + ] + deps = [ + ":tools_menu", + "//base", + "//testing/gtest", + ] +} + +source_set("eg_tests") { + testonly = true + sources = [ + "tools_popup_menu_egtest.mm", + ] + deps = [ + ":tools_menu", + "//base", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui:ui_internal", + "//ios/chrome/browser/ui/toolbar", + "//ios/chrome/test/earl_grey:test_support", + "//ios/third_party/earl_grey", + "//ios/web:test_support", + "//ui/base", + ] + libs = [ "XCTest.framework" ] +} diff --git a/chromium/ios/chrome/browser/ui/util/BUILD.gn b/chromium/ios/chrome/browser/ui/util/BUILD.gn new file mode 100644 index 00000000000..48dbae062ab --- /dev/null +++ b/chromium/ios/chrome/browser/ui/util/BUILD.gn @@ -0,0 +1,59 @@ +# 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. + +source_set("util") { + sources = [ + "CRUILabel+AttributeUtils.h", + "CRUILabel+AttributeUtils.mm", + "core_text_util.h", + "core_text_util.mm", + "label_link_controller.h", + "label_link_controller.mm", + "label_observer.h", + "label_observer.mm", + "manual_text_framer.h", + "manual_text_framer.mm", + "relaxed_bounds_constraints_hittest.h", + "snapshot_util.h", + "snapshot_util.mm", + "text_frame.h", + "text_frame.mm", + "text_region_mapper.h", + "text_region_mapper.mm", + "top_view_controller.h", + "top_view_controller.mm", + "transparent_link_button.h", + "transparent_link_button.mm", + "unicode_util.h", + "unicode_util.mm", + ] + deps = [ + "//base", + "//base:i18n", + "//ios/chrome/browser", + "//ios/chrome/browser/ui", + "//net", + "//url", + ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "CRUILabel+AttributeUtils_unittest.mm", + "core_text_util_unittest.mm", + "label_link_controller_unittest.mm", + "label_observer_unittest.mm", + "manual_text_framer_unittest.mm", + "text_region_mapper_unittest.mm", + ] + deps = [ + ":util", + "//base", + "//ios/third_party/material_components_ios", + "//ios/third_party/material_roboto_font_loader_ios", + "//testing/gtest", + "//url", + ] +} diff --git a/chromium/ios/chrome/browser/ui/voice/BUILD.gn b/chromium/ios/chrome/browser/ui/voice/BUILD.gn index 7cb794bc476..1039524f44f 100644 --- a/chromium/ios/chrome/browser/ui/voice/BUILD.gn +++ b/chromium/ios/chrome/browser/ui/voice/BUILD.gn @@ -3,7 +3,9 @@ # found in the LICENSE file. source_set("voice") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ + "text_to_speech_player+subclassing.h", "text_to_speech_player.h", "text_to_speech_player.mm", "voice_search_notification_names.h", @@ -18,6 +20,7 @@ source_set("voice") { } source_set("unit_tests") { + configs += [ "//build/config/compiler:enable_arc" ] testonly = true sources = [ @@ -25,6 +28,7 @@ source_set("unit_tests") { ] deps = [ + ":voice", ":voice_unit_tests_bundle_data", "//base", "//base/test:test_support", @@ -33,10 +37,6 @@ source_set("unit_tests") { "//testing/gtest", "//url", ] - - public_deps = [ - ":voice", - ] } bundle_data("voice_unit_tests_bundle_data") { diff --git a/chromium/ios/chrome/browser/ui/webui/BUILD.gn b/chromium/ios/chrome/browser/ui/webui/BUILD.gn index e21401d37fc..df43c20ddad 100644 --- a/chromium/ios/chrome/browser/ui/webui/BUILD.gn +++ b/chromium/ios/chrome/browser/ui/webui/BUILD.gn @@ -3,6 +3,7 @@ # found in the LICENSE file. source_set("webui") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "about_ui.cc", "about_ui.h", @@ -11,6 +12,8 @@ source_set("webui") { "flags_ui.cc", "flags_ui.h", "mojo_web_ui_ios_controller.h", + "ntp_tiles_internals_ui.cc", + "ntp_tiles_internals_ui.h", "physical_web_ui.cc", "physical_web_ui.h", "popular_sites_internals_ui.cc", @@ -37,7 +40,6 @@ source_set("webui") { "//google_apis", "//ios/chrome/app/strings", "//ios/chrome/browser", - "//ios/chrome/browser:about_flags", "//ios/chrome/browser/browser_state", "//ios/chrome/browser/crash_report", "//ios/chrome/browser/metrics", @@ -52,3 +54,51 @@ source_set("webui") { "//url", ] } + +source_set("webui_internal") { + sources = [ + "chrome_web_ui_ios_controller_factory.h", + "chrome_web_ui_ios_controller_factory.mm", + "omaha_ui.cc", + "omaha_ui.h", + "signin_internals_ui_ios.cc", + "signin_internals_ui_ios.h", + ] + deps = [ + ":webui", + "//base", + "//components/resources", + "//components/signin/core/browser", + "//ios/chrome/app/resources:ios_resources", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/omaha", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/ui/webui/gcm", + "//ios/chrome/browser/ui/webui/net_export", + "//ios/chrome/browser/ui/webui/sync_internals", + "//ios/web", + "//url", + ] +} + +source_set("eg_tests") { + testonly = true + sources = [ + "web_ui_egtest.mm", + ] + deps = [ + "//base", + "//components/strings", + "//components/version_info", + "//ios/chrome/browser", + "//ios/chrome/browser/ui/omnibox:omnibox_internal", + "//ios/chrome/test/app:test_support", + "//ios/chrome/test/earl_grey:test_support", + "//ios/testing:ios_test_support", + "//ios/web", + "//ui/base", + "//url", + ] + libs = [ "XCTest.framework" ] +} diff --git a/chromium/ios/chrome/browser/ui/webui/history/BUILD.gn b/chromium/ios/chrome/browser/ui/webui/history/BUILD.gn deleted file mode 100644 index a687d9f0bf1..00000000000 --- a/chromium/ios/chrome/browser/ui/webui/history/BUILD.gn +++ /dev/null @@ -1,51 +0,0 @@ -# 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. - -source_set("history") { - sources = [ - "browsing_history_handler.cc", - "browsing_history_handler.h", - "favicon_source.cc", - "favicon_source.h", - "history_ui.h", - "history_ui.mm", - "metrics_handler.cc", - "metrics_handler.h", - ] - deps = [ - "//base", - "//base:i18n", - "//components/bookmarks/browser", - "//components/browser_sync", - "//components/browsing_data/core", - "//components/favicon/core", - "//components/favicon_base", - "//components/history/core/browser", - "//components/keyed_service/core", - "//components/prefs", - "//components/resources", - "//components/search", - "//components/signin/core/browser", - "//components/strings", - "//components/sync", - "//components/sync_sessions", - "//components/url_formatter", - "//ios/chrome/app/resources", - "//ios/chrome/browser", - "//ios/chrome/browser/bookmarks", - "//ios/chrome/browser/browser_state", - "//ios/chrome/browser/favicon", - "//ios/chrome/browser/history", - "//ios/chrome/browser/signin", - "//ios/chrome/browser/signin", - "//ios/chrome/browser/sync", - "//ios/chrome/browser/ui", - "//ios/web", - "//net", - "//ui/base", - "//ui/gfx", - "//ui/resources", - "//url", - ] -} diff --git a/chromium/ios/chrome/browser/upgrade/BUILD.gn b/chromium/ios/chrome/browser/upgrade/BUILD.gn new file mode 100644 index 00000000000..71132988944 --- /dev/null +++ b/chromium/ios/chrome/browser/upgrade/BUILD.gn @@ -0,0 +1,38 @@ +# 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. + +source_set("upgrade") { + sources = [ + "upgrade_center.h", + "upgrade_center.mm", + "upgrade_recommended_details.h", + ] + deps = [ + "//base", + "//components/infobars/core", + "//components/version_info", + "//ios/chrome/app/strings", + "//ios/chrome/browser", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/infobars:resources", + "//ios/web", + "//net", + "//ui/base", + "//ui/gfx", + "//url", + ] + libs = [ "UIKit.framework" ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "upgrade_center_unittest.mm", + ] + deps = [ + ":upgrade", + "//base", + "//testing/gtest", + ] +} diff --git a/chromium/ios/chrome/browser/voice/BUILD.gn b/chromium/ios/chrome/browser/voice/BUILD.gn index 12850e1c970..d7c3926c1eb 100644 --- a/chromium/ios/chrome/browser/voice/BUILD.gn +++ b/chromium/ios/chrome/browser/voice/BUILD.gn @@ -14,13 +14,11 @@ source_set("voice") { ] deps = [ + "//base", "//components/pref_registry", "//components/prefs", - ] - - public_deps = [ - "//base", "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/voice", ] } @@ -33,11 +31,12 @@ source_set("prefs") { deps = [ "//components/pref_registry", "//components/prefs", - "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/voice", ] } source_set("tts") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "text_to_speech_listener.h", "text_to_speech_listener.mm", @@ -54,7 +53,7 @@ source_set("tts") { "//components/prefs", "//ios/chrome/browser", "//ios/chrome/browser/browser_state", - "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/voice", "//ios/web", "//net", "//third_party/google_toolbox_for_mac", @@ -63,6 +62,7 @@ source_set("tts") { } source_set("unit_tests") { + configs += [ "//build/config/compiler:enable_arc" ] testonly = true sources = [ @@ -71,14 +71,11 @@ source_set("unit_tests") { ] deps = [ + ":tts", "//base", "//ios/web", "//ios/web:test_support", "//testing/gtest", "//third_party/google_toolbox_for_mac", ] - - public_deps = [ - ":tts", - ] } diff --git a/chromium/ios/chrome/browser/web/BUILD.gn b/chromium/ios/chrome/browser/web/BUILD.gn index 3f59b9bb327..f9b589203ef 100644 --- a/chromium/ios/chrome/browser/web/BUILD.gn +++ b/chromium/ios/chrome/browser/web/BUILD.gn @@ -2,17 +2,303 @@ # 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", - "resubmit_data_controller.h", - "resubmit_data_controller.mm", + "form_resubmission_tab_helper.h", + "form_resubmission_tab_helper.mm", + "network_activity_indicator_tab_helper.h", + "network_activity_indicator_tab_helper.mm", + ] + deps = [ + "//base", + "//components/strings", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/alert_coordinator:alert_coordinator", + "//ios/chrome/browser/ui/util:util", + "//ios/web", + "//ui/base", + ] +} + +source_set("unit_tests") { + configs += [ "//build/config/compiler:enable_arc" ] + testonly = true + sources = [ + "form_resubmission_tab_helper_unittest.mm", + "network_activity_indicator_tab_helper_unittest.mm", + ] + deps = [ + ":web", + "//base:base", + "//base/test:test_support", + "//components/strings:components_strings_grit", + "//ios/chrome/browser/ui:ui", + "//ios/chrome/test:test_support", + "//ios/web:test_support", + "//testing/gtest", + "//ui/base:base", + ] +} + +bundle_data("resources") { + sources = [ + "resources/autofill_card_american_express.png", + "resources/autofill_card_american_express@2x.png", + "resources/autofill_card_american_express@2x~ipad.png", + "resources/autofill_card_american_express@3x.png", + "resources/autofill_card_american_express~ipad.png", + "resources/autofill_card_diners.png", + "resources/autofill_card_diners@2x.png", + "resources/autofill_card_diners@2x~ipad.png", + "resources/autofill_card_diners@3x.png", + "resources/autofill_card_diners~ipad.png", + "resources/autofill_card_discover.png", + "resources/autofill_card_discover@2x.png", + "resources/autofill_card_discover@2x~ipad.png", + "resources/autofill_card_discover@3x.png", + "resources/autofill_card_discover~ipad.png", + "resources/autofill_card_generic.png", + "resources/autofill_card_generic@2x.png", + "resources/autofill_card_generic@2x~ipad.png", + "resources/autofill_card_generic@3x.png", + "resources/autofill_card_generic~ipad.png", + "resources/autofill_card_jcb.png", + "resources/autofill_card_jcb@2x.png", + "resources/autofill_card_jcb@2x~ipad.png", + "resources/autofill_card_jcb@3x.png", + "resources/autofill_card_jcb~ipad.png", + "resources/autofill_card_mastercard.png", + "resources/autofill_card_mastercard@2x.png", + "resources/autofill_card_mastercard@2x~ipad.png", + "resources/autofill_card_mastercard@3x.png", + "resources/autofill_card_mastercard~ipad.png", + "resources/autofill_card_unionpay.png", + "resources/autofill_card_unionpay@2x.png", + "resources/autofill_card_unionpay@2x~ipad.png", + "resources/autofill_card_unionpay@3x.png", + "resources/autofill_card_unionpay~ipad.png", + "resources/autofill_card_visa.png", + "resources/autofill_card_visa@2x.png", + "resources/autofill_card_visa@2x~ipad.png", + "resources/autofill_card_visa@3x.png", + "resources/autofill_card_visa~ipad.png", + "resources/autofill_close.png", + "resources/autofill_close@2x.png", + "resources/autofill_close@3x.png", + "resources/autofill_close_pressed.png", + "resources/autofill_close_pressed@2x.png", + "resources/autofill_close_pressed@3x.png", + "resources/autofill_keyboard_background.png", + "resources/autofill_keyboard_background@2x.png", + "resources/autofill_keyboard_background@3x.png", + "resources/autofill_keyboard_background_left.png", + "resources/autofill_keyboard_background_left@2x.png", + "resources/autofill_keyboard_background_right.png", + "resources/autofill_keyboard_background_right@2x.png", + "resources/autofill_left_sep.png", + "resources/autofill_left_sep@2x.png", + "resources/autofill_left_sep@3x.png", + "resources/autofill_left_sep_RTL.png", + "resources/autofill_left_sep_RTL@2x.png", + "resources/autofill_left_sep_RTL@3x.png", + "resources/autofill_middle_sep.png", + "resources/autofill_middle_sep@2x.png", + "resources/autofill_middle_sep@3x.png", + "resources/autofill_next.png", + "resources/autofill_next@2x.png", + "resources/autofill_next@3x.png", + "resources/autofill_next_inactive.png", + "resources/autofill_next_inactive@2x.png", + "resources/autofill_next_inactive@3x.png", + "resources/autofill_next_pressed.png", + "resources/autofill_next_pressed@2x.png", + "resources/autofill_next_pressed@3x.png", + "resources/autofill_prev.png", + "resources/autofill_prev@2x.png", + "resources/autofill_prev@3x.png", + "resources/autofill_prev_inactive.png", + "resources/autofill_prev_inactive@2x.png", + "resources/autofill_prev_inactive@3x.png", + "resources/autofill_prev_pressed.png", + "resources/autofill_prev_pressed@2x.png", + "resources/autofill_prev_pressed@3x.png", + "resources/autofill_right_sep.png", + "resources/autofill_right_sep@2x.png", + "resources/autofill_right_sep@3x.png", + "resources/autofill_right_sep_RTL.png", + "resources/autofill_right_sep_RTL@2x.png", + "resources/autofill_right_sep_RTL@3x.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +js_compile_unchecked("injected_js") { + sources = [ + "resources/print.js", + ] +} + +source_set("web_internal") { + sources = [ + "auto_reload_bridge.h", + "auto_reload_bridge.mm", + "auto_reload_controller.h", + "auto_reload_controller.mm", + "blocked_popup_handler.h", + "blocked_popup_handler.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_observer.h", + "print_observer.mm", ] deps = [ + ":injected_js", + ":resources", "//base", + "//components/content_settings/core/browser", + "//components/dom_distiller/core", + "//components/error_page/common", + "//components/infobars/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/ssl", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/overscroll_actions", + "//ios/chrome/browser/ui/static_content", + "//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" ] +} + +source_set("test_support") { + testonly = true + sources = [ + "chrome_web_test.h", + "chrome_web_test.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/web", + "//ios/web:test_support", + ] +} + +source_set("unit_tests_internal") { + testonly = true + sources = [ + "auto_reload_controller_unittest.mm", + "chrome_web_client_unittest.mm", + "error_page_generator_unittest.mm", + "external_app_launcher_unittest.mm", + "find_in_page_js_unittest.mm", + "js_findinpage_manager_unittest.mm", + ] + deps = [ + ":test_support", + ":web_internal", + "//base", + "//base/test:test_support", + "//ios/chrome/browser/find_in_page", + "//ios/chrome/browser/ui", + "//ios/web", + "//ios/web:test_support", + "//net", + "//testing/gtest", + "//third_party/ocmock", + "//url", + ] +} + +source_set("eg_tests") { + 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", + "//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:test_support", + "//net", + "//ui/base", + "//url", + ] + libs = [ + "UIKit.framework", + "XCTest.framework", + ] +} + +source_set("perf_tests") { + testonly = true + sources = [ + "early_page_script_perftest.mm", + ] + deps = [ + "//base", + "//ios/chrome/test/base:perf_test_support", + "//ios/web", + "//ios/web:test_support", ] + libs = [ "WebKit.framework" ] } diff --git a/chromium/ios/chrome/common/BUILD.gn b/chromium/ios/chrome/common/BUILD.gn index b3e6bed52d0..d71c521771d 100644 --- a/chromium/ios/chrome/common/BUILD.gn +++ b/chromium/ios/chrome/common/BUILD.gn @@ -2,6 +2,9 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. +import("//build/buildflag_header.gni") +import("//build/config/ios/ios_sdk.gni") + source_set("common") { sources = [ "channel_info.h", @@ -18,7 +21,7 @@ source_set("common") { "//base", "//components/version_info", "//ios/chrome/common/app_group:main_app", - "//ios/chrome/common/physical_web:physical_web", + "//ios/chrome/common/physical_web", "//net", "//url", ] @@ -40,3 +43,8 @@ source_set("unit_tests") { "//testing/gtest", ] } + +buildflag_header("ios_app_bundle_id_prefix_header") { + header = "ios_app_bundle_id_prefix.h" + flags = [ "IOS_APP_BUNDLE_ID_PREFIX=\"$ios_app_bundle_id_prefix\"" ] +} diff --git a/chromium/ios/chrome/common/app_group/BUILD.gn b/chromium/ios/chrome/common/app_group/BUILD.gn index 735962e4783..2f482d83fdb 100644 --- a/chromium/ios/chrome/common/app_group/BUILD.gn +++ b/chromium/ios/chrome/common/app_group/BUILD.gn @@ -5,6 +5,7 @@ import("//build/config/ios/ios_sdk.gni") source_set("app_group") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "app_group_constants.h", "app_group_constants.mm", @@ -15,14 +16,14 @@ source_set("app_group") { deps = [ "//base", "//components/version_info", + "//ios/chrome/common:ios_app_bundle_id_prefix_header", ] - - defines = [ "IOS_BUNDLE_ID_PREFIX=\"$ios_app_bundle_id_prefix\"" ] } # This target will be included into application extensions and the list # of its dependencies must be kept as short as possible. source_set("client") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "app_group_metrics_client.h", "app_group_metrics_client.mm", @@ -35,6 +36,7 @@ source_set("client") { } source_set("main_app") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "app_group_metrics_mainapp.h", "app_group_metrics_mainapp.mm", diff --git a/chromium/ios/chrome/common/physical_web/BUILD.gn b/chromium/ios/chrome/common/physical_web/BUILD.gn index 0afdd5bad23..a41352be80a 100644 --- a/chromium/ios/chrome/common/physical_web/BUILD.gn +++ b/chromium/ios/chrome/common/physical_web/BUILD.gn @@ -3,6 +3,7 @@ # found in the LICENSE file. source_set("physical_web") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ "physical_web_device.h", "physical_web_device.mm", diff --git a/chromium/ios/chrome/share_extension/BUILD.gn b/chromium/ios/chrome/share_extension/BUILD.gn index 148827185b6..17e50e135ae 100644 --- a/chromium/ios/chrome/share_extension/BUILD.gn +++ b/chromium/ios/chrome/share_extension/BUILD.gn @@ -2,8 +2,14 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. +import("//build/config/ios/rules.gni") import("//build/config/locales.gni") +import("//build/config/mac/base_rules.gni") +import("//build/mac/tweak_info_plist.gni") +import("//ios/build/chrome_build.gni") import("//ios/chrome/extension_repack.gni") +import("//ios/chrome/tools/strings/generate_localizable_strings.gni") +import("//ios/public/provider/chrome/browser/build_config.gni") group("resources") { deps = [ @@ -16,3 +22,66 @@ extension_repack_all_locales("packed_resources") { input_locales = ios_packed_locales output_locales = ios_packed_locales_as_mac_outputs } + +tweak_info_plist("tweak_info_plist") { + info_plist = "Info.plist" +} + +compile_plist("entitlements") { + format = "xml1" + substitutions = [ "IOS_BUNDLE_ID_PREFIX=$ios_app_bundle_id_prefix" ] + output_name = "$target_gen_dir/share_extension.appex.entitlements" + plist_templates = + [ "entitlements/external/share_extension.appex.entitlements" ] + + ios_chrome_entitlements_additions +} + +ios_appex_bundle("share_extension") { + sources = [ + "share_extension_view.h", + "share_extension_view.mm", + "share_view_controller.h", + "share_view_controller.mm", + "ui_util.h", + "ui_util.mm", + ] + + configs += [ "//build/config/compiler:enable_arc" ] + + deps = [ + ":system_strings", + "//base", + "//ios/chrome/common/app_group", + "//ios/chrome/common/app_group:client", + ] + bundle_deps_filter = [ "//third_party/icu:icudata" ] + + libs = [ + "Foundation.framework", + "Social.framework", + "CoreGraphics.framework", + "MobileCoreServices.framework", + "UIKit.framework", + ] + + extra_substitutions = [ + "CHROME_CHANNEL_SCHEME=$url_channel_scheme", + "CHROMIUM_SHORT_NAME=$chromium_short_name", + "SHARE_EXTENSION_BUNDLE_ID=$chromium_bundle_id.ShareExtension", + ] + + entitlements_target = ":entitlements" + info_plist_target = ":tweak_info_plist" +} + +generate_localizable_strings("system_strings") { + visibility = [ ":*" ] + _packed_resources_target = ":packed_resources" + config_file = "share_extension_localize_strings_config.plist" + datapack_dir = get_label_info(_packed_resources_target, "target_gen_dir") + packed_locales = ios_packed_locales_as_mac_outputs + output_filenames = [ "Localizable.strings" ] + deps = [ + _packed_resources_target, + ] +} diff --git a/chromium/ios/chrome/test/BUILD.gn b/chromium/ios/chrome/test/BUILD.gn index c68df344616..72560b1431b 100644 --- a/chromium/ios/chrome/test/BUILD.gn +++ b/chromium/ios/chrome/test/BUILD.gn @@ -2,6 +2,20 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. +import("//ios/build/config.gni") +import("//ios/public/provider/chrome/browser/build_config.gni") +import("//testing/test.gni") + +# All tests needs to be listed in that target to be built as part of +# "gn_all" target (i.e. by the bots). +group("all_tests") { + testonly = true + deps = [ + ":ios_chrome_perftests", + ":ios_chrome_unittests", + ] +} + source_set("test_support") { testonly = true sources = [ @@ -9,23 +23,28 @@ source_set("test_support") { "block_cleanup_test.mm", "ios_chrome_scoped_testing_chrome_browser_provider.h", "ios_chrome_scoped_testing_chrome_browser_provider.mm", + "ios_chrome_scoped_testing_chrome_browser_state_manager.cc", + "ios_chrome_scoped_testing_chrome_browser_state_manager.h", "ios_chrome_scoped_testing_local_state.cc", "ios_chrome_scoped_testing_local_state.h", "ios_chrome_unit_test_suite.h", "ios_chrome_unit_test_suite.mm", + "scoped_key_window.h", "testing_application_context.h", "testing_application_context.mm", ] deps = [ "//base", + "//base/test:test_support", "//components/content_settings/core/common", "//components/network_time", "//components/prefs", "//components/prefs:test_support", "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", "//ios/chrome/browser/browser_state:browser_state_impl", - "//ios/chrome/browser/prefs", + "//ios/chrome/browser/prefs:browser_prefs", "//ios/public/provider/chrome/browser", "//ios/public/provider/chrome/browser:test_support", "//ios/web", @@ -51,6 +70,7 @@ source_set("run_all_unittests") { } source_set("unit_tests") { + configs += [ "//build/config/compiler:enable_arc" ] testonly = true sources = [ "google_toolbox_unittest.mm", @@ -61,3 +81,113 @@ source_set("unit_tests") { "//third_party/google_toolbox_for_mac", ] } + +test("ios_chrome_perftests") { + deps = [ + # Ensure that all perf tests are run, use fake hooks and pack resources. + ":run_all_unittests", + "//ios/chrome/app:tests_fake_hook", + ios_packed_resources_target, + + # Add perf_tests target here. + "//ios/chrome/browser/ui:perf_tests", + "//ios/chrome/browser/ui/ntp:perf_tests", + "//ios/chrome/browser/ui/stack_view:perf_tests", + "//ios/chrome/browser/web:perf_tests", + ] + + assert_no_deps = ios_assert_no_deps +} + +test("ios_chrome_unittests") { + deps = [ + # Ensure that all unit tests are run, use fake hooks and pack resources. + ":run_all_unittests", + "//ios/chrome/app:tests_fake_hook", + ios_packed_resources_target, + + # Add unit_tests target here. + ":unit_tests", + "//ios/chrome/app:unit_tests", + "//ios/chrome/app/application_delegate:unit_tests", + "//ios/chrome/app/safe_mode:unit_tests", + "//ios/chrome/app/spotlight:unit_tests", + "//ios/chrome/browser:unit_tests", + "//ios/chrome/browser/autofill:unit_tests", + "//ios/chrome/browser/browsing_data:unit_tests", + "//ios/chrome/browser/crash_report:unit_tests", + "//ios/chrome/browser/device_sharing:unit_tests", + "//ios/chrome/browser/favicon:unit_tests", + "//ios/chrome/browser/geolocation:unit_tests", + "//ios/chrome/browser/itunes_links:unit_tests", + "//ios/chrome/browser/metrics:unit_tests", + "//ios/chrome/browser/metrics:unit_tests_internal", + "//ios/chrome/browser/native_app_launcher:unit_tests", + "//ios/chrome/browser/native_app_launcher:unit_tests_internal", + "//ios/chrome/browser/net:unit_tests", + "//ios/chrome/browser/omaha:unit_tests", + "//ios/chrome/browser/passwords:unit_tests", + "//ios/chrome/browser/payments:unit_tests", + "//ios/chrome/browser/payments/cells:unit_tests", + "//ios/chrome/browser/reading_list:unit_tests", + "//ios/chrome/browser/sessions:unit_tests", + "//ios/chrome/browser/signin:unit_tests", + "//ios/chrome/browser/snapshots:unit_tests", + "//ios/chrome/browser/ssl:unit_tests", + "//ios/chrome/browser/suggestions:unit_tests", + "//ios/chrome/browser/sync:unit_tests", + "//ios/chrome/browser/tabs:unit_tests", + "//ios/chrome/browser/translate:unit_tests", + "//ios/chrome/browser/u2f:unit_tests", + "//ios/chrome/browser/ui:unit_tests", + "//ios/chrome/browser/ui/activity_services:unit_tests", + "//ios/chrome/browser/ui/alert_coordinator:unit_tests", + "//ios/chrome/browser/ui/authentication:unit_tests", + "//ios/chrome/browser/ui/autofill/cells:unit_tests", + "//ios/chrome/browser/ui/bookmarks:unit_tests", + "//ios/chrome/browser/ui/bookmarks/cells:unit_tests", + "//ios/chrome/browser/ui/collection_view:unit_tests", + "//ios/chrome/browser/ui/collection_view/cells:unit_tests", + "//ios/chrome/browser/ui/commands:unit_tests", + "//ios/chrome/browser/ui/context_menu:unit_tests", + "//ios/chrome/browser/ui/contextual_search:unit_tests", + "//ios/chrome/browser/ui/dialogs:unit_tests", + "//ios/chrome/browser/ui/dialogs:unit_tests_internal", + "//ios/chrome/browser/ui/downloads:unit_tests", + "//ios/chrome/browser/ui/elements:unit_tests", + "//ios/chrome/browser/ui/fancy_ui:unit_tests", + "//ios/chrome/browser/ui/first_run:unit_tests", + "//ios/chrome/browser/ui/history:unit_tests", + "//ios/chrome/browser/ui/icons:unit_tests", + "//ios/chrome/browser/ui/infobars:unit_tests", + "//ios/chrome/browser/ui/keyboard:unit_tests", + "//ios/chrome/browser/ui/main:unit_tests", + "//ios/chrome/browser/ui/no_tabs:unit_tests", + "//ios/chrome/browser/ui/ntp:unit_tests", + "//ios/chrome/browser/ui/omnibox:unit_tests", + "//ios/chrome/browser/ui/promos:unit_tests", + "//ios/chrome/browser/ui/reading_list:unit_tests", + "//ios/chrome/browser/ui/settings:unit_tests", + "//ios/chrome/browser/ui/settings/cells:unit_tests", + "//ios/chrome/browser/ui/side_swipe:unit_tests", + "//ios/chrome/browser/ui/stack_view:unit_tests", + "//ios/chrome/browser/ui/static_content:unit_tests", + "//ios/chrome/browser/ui/suggestions:unit_tests", + "//ios/chrome/browser/ui/tab_switcher:unit_tests", + "//ios/chrome/browser/ui/tabs:unit_tests", + "//ios/chrome/browser/ui/toolbar:unit_tests", + "//ios/chrome/browser/ui/tools_menu:unit_tests", + "//ios/chrome/browser/ui/util:unit_tests", + "//ios/chrome/browser/ui/voice:unit_tests", + "//ios/chrome/browser/update_client:unit_tests", + "//ios/chrome/browser/voice:unit_tests", + "//ios/chrome/browser/web:unit_tests", + "//ios/chrome/browser/web:unit_tests_internal", + "//ios/chrome/browser/web_resource:unit_tests", + "//ios/chrome/common:unit_tests", + "//ios/chrome/test/base:unit_tests", + "//ios/web/public/image_fetcher:unit_tests", + ] + + assert_no_deps = ios_assert_no_deps +} diff --git a/chromium/ios/chrome/test/app/BUILD.gn b/chromium/ios/chrome/test/app/BUILD.gn new file mode 100644 index 00000000000..c3a011be39f --- /dev/null +++ b/chromium/ios/chrome/test/app/BUILD.gn @@ -0,0 +1,80 @@ +# 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. + +source_set("test_support") { + testonly = true + sources = [ + "bookmarks_test_util.h", + "bookmarks_test_util.mm", + "chrome_test_util.h", + "chrome_test_util.mm", + "histogram_test_util.h", + "histogram_test_util.mm", + "history_test_util.h", + "history_test_util.mm", + "navigation_test_util.h", + "navigation_test_util.mm", + "settings_test_util.h", + "settings_test_util.mm", + "signin_test_util.h", + "signin_test_util.mm", + "stack_view_test_util.h", + "stack_view_test_util.mm", + "sync_test_util.h", + "sync_test_util.mm", + "tab_test_util.h", + "tab_test_util.mm", + "web_view_interaction_test_util.h", + "web_view_interaction_test_util.mm", + ] + deps = [ + "//base", + "//base/test:test_support", + "//breakpad:client", + "//components/autofill/core/browser", + "//components/bookmarks/browser", + "//components/browser_sync", + "//components/browsing_data/core", + "//components/content_settings/core/browser", + "//components/content_settings/core/common", + "//components/history/core/browser", + "//components/keyed_service/core", + "//components/metrics", + "//components/prefs", + "//components/signin/core/browser", + "//components/sync:test_support_fake_server", + "//google_apis", + "//ios/chrome/app:app_internal", + "//ios/chrome/app/application_delegate:application_delegate_internal", + "//ios/chrome/app/application_delegate:test_support", + "//ios/chrome/browser", + "//ios/chrome/browser:browser_internal", + "//ios/chrome/browser/autofill", + "//ios/chrome/browser/bookmarks", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/browser_state:browser_state_impl", + "//ios/chrome/browser/browsing_data", + "//ios/chrome/browser/content_settings", + "//ios/chrome/browser/history", + "//ios/chrome/browser/metrics", + "//ios/chrome/browser/metrics:metrics_internal", + "//ios/chrome/browser/signin", + "//ios/chrome/browser/sync", + "//ios/chrome/browser/tabs", + "//ios/chrome/browser/ui:ui_internal", + "//ios/chrome/browser/ui/commands", + "//ios/chrome/browser/ui/main", + "//ios/chrome/browser/ui/ntp:ntp_internal", + "//ios/chrome/browser/ui/stack_view", + "//ios/chrome/browser/ui/tabs", + "//ios/public/provider/chrome/browser", + "//ios/public/provider/chrome/browser/signin:test_support", + "//ios/testing:ios_test_support", + "//ios/web", + "//ios/web:test_support", + "//net", + "//net:test_support", + "//url", + ] +} diff --git a/chromium/ios/chrome/test/base/BUILD.gn b/chromium/ios/chrome/test/base/BUILD.gn new file mode 100644 index 00000000000..811cbbb4a30 --- /dev/null +++ b/chromium/ios/chrome/test/base/BUILD.gn @@ -0,0 +1,40 @@ +# 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. + +source_set("base") { + testonly = true + sources = [ + "scoped_block_swizzler.h", + "scoped_block_swizzler.mm", + ] + deps = [ + "//base", + ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "scoped_block_swizzler_unittest.mm", + ] + deps = [ + ":base", + "//base", + "//testing/gtest", + ] +} + +source_set("perf_test_support") { + testonly = true + sources = [ + "perf_test_ios.h", + "perf_test_ios.mm", + ] + deps = [ + "//base", + "//ios/chrome/browser/web:web_internal", + "//ios/chrome/test:test_support", + "//ios/web:test_support", + ] +} diff --git a/chromium/ios/chrome/test/earl_grey/BUILD.gn b/chromium/ios/chrome/test/earl_grey/BUILD.gn new file mode 100644 index 00000000000..6985625fd38 --- /dev/null +++ b/chromium/ios/chrome/test/earl_grey/BUILD.gn @@ -0,0 +1,203 @@ +# 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/chrome/test/earl_grey/chrome_ios_eg_test.gni") + +group("all_tests") { + testonly = true + deps = [ + ":ios_chrome_device_check_egtests", + ":ios_chrome_flaky_egtests", + ":ios_chrome_integration_egtests", + ":ios_chrome_multitasking_egtests", + ":ios_chrome_reading_list_egtests", + ":ios_chrome_settings_egtests", + ":ios_chrome_smoke_egtests", + ":ios_chrome_ui_egtests", + ":ios_chrome_web_egtests", + ] +} + +chrome_ios_eg_test("ios_chrome_integration_egtests") { + deps = [ + "//ios/chrome/browser/autofill:eg_tests", + "//ios/chrome/browser/context_menu:eg_tests", + "//ios/chrome/browser/device_sharing:eg_tests", + "//ios/chrome/browser/metrics:eg_tests", + "//ios/chrome/browser/net:eg_tests", + "//ios/chrome/browser/translate:eg_tests", + ] +} + +chrome_ios_eg_test("ios_chrome_reading_list_egtests") { + deps = [ + ":test_support", + "//ios/chrome/browser/ui/reading_list:eg_tests", + ] +} + +chrome_ios_eg_test("ios_chrome_settings_egtests") { + deps = [ + "//ios/chrome/browser/ui/settings:eg_tests", + ] +} + +chrome_ios_eg_test("ios_chrome_ui_egtests") { + deps = [ + "//ios/chrome/app/safe_mode:eg_tests", + "//ios/chrome/browser/ui:eg_tests", + "//ios/chrome/browser/ui/activity_services:eg_tests", + "//ios/chrome/browser/ui/alert_coordinator:eg_tests", + "//ios/chrome/browser/ui/authentication:eg_tests", + "//ios/chrome/browser/ui/bookmarks:eg_tests", + "//ios/chrome/browser/ui/dialogs:eg_tests", + "//ios/chrome/browser/ui/find_bar:eg_tests", + "//ios/chrome/browser/ui/first_run:eg_tests", + "//ios/chrome/browser/ui/history:eg_tests", + "//ios/chrome/browser/ui/infobars:eg_tests", + "//ios/chrome/browser/ui/ntp:eg_tests", + "//ios/chrome/browser/ui/ntp/recent_tabs:eg_tests", + "//ios/chrome/browser/ui/print:eg_tests", + "//ios/chrome/browser/ui/qr_scanner:eg_tests", + "//ios/chrome/browser/ui/stack_view:eg_tests", + "//ios/chrome/browser/ui/sync:eg_tests", + "//ios/chrome/browser/ui/tab_switcher:eg_tests", + "//ios/chrome/browser/ui/tabs:eg_tests", + "//ios/chrome/browser/ui/toolbar:eg_tests", + "//ios/chrome/browser/ui/tools_menu:eg_tests", + "//ios/chrome/browser/ui/webui:eg_tests", + ] +} + +chrome_ios_eg_test("ios_chrome_web_egtests") { + deps = [ + "//ios/chrome/browser/web:eg_tests", + ] +} + +chrome_ios_eg_test("ios_chrome_multitasking_egtests") { + sources = [ + "//ios/chrome/app/multitasking_test_application_delegate.h", + "//ios/chrome/app/multitasking_test_application_delegate.mm", + ] + + deps = [ + ":test_support", + "//base", + "//ios/chrome/app:app_internal", + "//ios/chrome/app/application_delegate:application_delegate_internal", + + # Depends on all EarlGrey test suites to create multitasking tests suite. + ":ios_chrome_integration_egtests_deps_group", + ":ios_chrome_settings_egtests_deps_group", + ":ios_chrome_ui_egtests_deps_group", + ":ios_chrome_web_egtests_deps_group", + ] + + eg_main_application_delegate = "MultitaskingTestApplicationDelegate" +} + +chrome_ios_eg_test("ios_chrome_device_check_egtests") { + sources = [ + "device_check_egtest.mm", + ] + deps = [ + ":test_support", + "//ios/third_party/earl_grey", + "//url", + ] +} + +chrome_ios_eg_test("ios_chrome_flaky_egtests") { + deps = [ + ":test_support", + "//base", + + # Depends on all EarlGrey test suites to run all the FLAKY_ tests found. + # When adding a new test application, please follow the same pattern. + ":ios_chrome_integration_egtests_deps_group", + ":ios_chrome_settings_egtests_deps_group", + ":ios_chrome_ui_egtests_deps_group", + ":ios_chrome_web_egtests_deps_group", + ] +} + +chrome_ios_eg_test("ios_chrome_smoke_egtests") { + sources = [ + "smoke_egtest.mm", + ] + deps = [ + ":test_support", + "//ios/chrome/app:app_internal", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui:ui_internal", + "//ios/third_party/earl_grey", + "//ui/base", + ] + libs = [ "XCTest.framework" ] +} + +source_set("test_support") { + testonly = true + sources = [ + "accessibility_util.h", + "accessibility_util.mm", + "chrome_actions.h", + "chrome_actions.mm", + "chrome_assertions.h", + "chrome_assertions.mm", + "chrome_earl_grey.h", + "chrome_earl_grey.mm", + "chrome_earl_grey_ui.h", + "chrome_earl_grey_ui.mm", + "chrome_matchers.h", + "chrome_matchers.mm", + "chrome_test_case.h", + "chrome_test_case.mm", + "chrome_util.h", + "chrome_util.mm", + ] + + deps = [ + "//base", + "//base/test:test_support", + "//components/strings", + "//ios/chrome/app/strings", + "//ios/chrome/browser/ui", + "//ios/chrome/browser/ui/collection_view/cells", + "//ios/chrome/browser/ui/omnibox:omnibox_internal", + "//ios/chrome/browser/ui/static_content", + "//ios/chrome/browser/ui/toolbar", + "//ios/chrome/browser/ui/tools_menu", + "//ios/chrome/test/app:test_support", + "//ios/testing:ios_test_support", + "//ios/third_party/material_components_ios", + "//ios/web", + "//ios/web:earl_grey_test_support", + "//ios/web:test_support", + "//ui/base", + "//url", + ] + + public_deps = [ + "//build/config/ios:xctest", + "//ios/third_party/earl_grey", + ] + + libs = [ + "OCHamcrest.framework", + "WebKit.framework", + "XCTest.framework", + ] +} + +source_set("hooks") { + testonly = true + sources = [ + "eg_tests_hook.mm", + ] + deps = [ + "//ios/chrome/app:tests_hook", + ] +} diff --git a/chromium/ios/chrome/test/earl_grey/chrome_ios_eg_test.gni b/chromium/ios/chrome/test/earl_grey/chrome_ios_eg_test.gni new file mode 100644 index 00000000000..9e55660fb99 --- /dev/null +++ b/chromium/ios/chrome/test/earl_grey/chrome_ios_eg_test.gni @@ -0,0 +1,144 @@ +# 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("//build/mac/tweak_info_plist.gni") +import("//ios/build/chrome_build.gni") +import("//ios/public/provider/chrome/browser/build_config.gni") +import("//ios/third_party/earl_grey/ios_eg_test.gni") + +# Template wrapping ios_eg_test, setting default values for EarlGrey test +# based on //ios/chrome/app:chrome. +# +# Arguments: +# +# info_plist: +# (optional) string, path to the Info.plist file that will be used for +# the bundle. +# +# info_plist_target: +# (optional) string, if the info_plist is generated from an action, +# rather than a regular source file, specify the target name in lieu +# of info_plist. The two arguments are mutually exclusive. +# +# extra_info_plists: +# (optional) string array, extra list of plist files that will be merged +# and tweaked; ignored if either info_plist or info_plist_target is set. +# +# entitlements_path: +# (optional) path to the template to use to generate the application +# entitlements by performing variable substitutions, defaults to +# //build/config/ios/entitlements.plist. +# +# entitlements_target: +# (optional) label of the target generating the application +# entitlements (must generate a single file as output); cannot be +# defined if entitlements_path is set. +# +# deps +# list of labels to depends on. +# +# This template defines two targets, one named "${target_name}" is the EarlGrey +# test application, and the other named "${target_name}_deps_group" is a group +# target that depends on the template "deps" property (used to implement the +# test suite running the FLAKY_ tests). +# +template("chrome_ios_eg_test") { + if (!defined(entitlements_path) && !defined(entitlements_target)) { + _target_name = target_name + _tweak_entitlements = target_name + "_tweak_entitlements" + compile_plist(_tweak_entitlements) { + format = "xml1" + substitutions = [ "IOS_BUNDLE_ID_PREFIX=$ios_app_bundle_id_prefix" ] + output_name = "$target_gen_dir/$_target_name.entitlements" + plist_templates = + [ "//ios/chrome/test/earl_grey/resources/Chrome.entitlements" ] + if (ios_chrome_entitlements_additions != []) { + plist_templates += ios_chrome_entitlements_additions + } + } + } + + if (!defined(info_plist) && !defined(info_plist_target)) { + _tweak_info_plist = target_name + "_tweak_info_plist" + tweak_info_plist(_tweak_info_plist) { + info_plists = [ + "//ios/chrome/app/resources/Info.plist", + "//ios/chrome/app/resources/EarlGreyAddition+Info.plist", + ] + if (ios_chrome_info_plist_additions != []) { + info_plists += ios_chrome_info_plist_additions + } + if (defined(invoker.extra_info_plists)) { + info_plists += invoker.extra_info_plists + } + args = [ + "--breakpad=$breakpad_enabled_as_int", + "--branding=$chromium_short_name", + "--version-overrides=MINOR=9999", + ] + } + } + + _deps_group_name = target_name + "_deps_group" + group(_deps_group_name) { + testonly = true + public_deps = invoker.deps + if (defined(invoker.public_deps)) { + public_deps += invoker.public_deps + } + } + + ios_eg_test(target_name) { + forward_variables_from(invoker, + "*", + [ + "deps", + "entitlements_path", + "entitlements_target", + "eg_main_application_delegate", + "info_plist", + "info_plist_target", + "public_deps", + ]) + + if (!defined(entitlements_path) && !defined(entitlements_target)) { + entitlements_target = ":$_tweak_entitlements" + } + + if (!defined(info_plist) && !defined(info_plist_target)) { + info_plist_target = ":$_tweak_info_plist" + } + + _eg_main_application_delegate = "MainApplicationDelegate" + if (defined(invoker.eg_main_application_delegate)) { + _eg_main_application_delegate = invoker.eg_main_application_delegate + } + + deps = [ + ":$_deps_group_name", + "//ios/chrome/app:main", + "//ios/chrome/test/earl_grey:hooks", + "//ios/testing:http_server_bundle_data", + ] + if (!defined(bundle_deps)) { + bundle_deps = [] + } + bundle_deps += [ "//ios/chrome/app/resources" ] + + if (!defined(extra_substitutions)) { + extra_substitutions = [] + } + extra_substitutions += [ + "CHROMIUM_BUNDLE_ID=gtest.$target_name", + "CHROMIUM_HANDOFF_ID=$chromium_handoff_id", + "CHROMIUM_SHORT_NAME=$target_name", + "CHROMIUM_URL_SCHEME_1=$url_unsecure_scheme", + "CHROMIUM_URL_SCHEME_2=$url_secure_scheme", + "CHROMIUM_URL_SCHEME_3=$url_x_callback_scheme", + "CHROMIUM_URL_SCHEME_4=$url_channel_scheme", + "EG_MAIN_APPLICATION_DELEGATE=$_eg_main_application_delegate", + "SSOAUTH_URL_SCHEME=$url_ssoauth_scheme", + ] + } +} diff --git a/chromium/ios/chrome/test/ocmock/BUILD.gn b/chromium/ios/chrome/test/ocmock/BUILD.gn new file mode 100644 index 00000000000..1b830410d59 --- /dev/null +++ b/chromium/ios/chrome/test/ocmock/BUILD.gn @@ -0,0 +1,19 @@ +# 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. + +source_set("ocmock") { + testonly = true + sources = [ + "OCMockObject+BreakpadControllerTesting.h", + "OCMockObject+BreakpadControllerTesting.mm", + "scoped_mock_object.h", + "scoped_verifying_mock_object.h", + ] + deps = [ + "//base", + "//breakpad:client", + "//testing/gtest", + "//third_party/ocmock", + ] +} diff --git a/chromium/ios/chrome/today_extension/BUILD.gn b/chromium/ios/chrome/today_extension/BUILD.gn index 88d5c68f1bf..f201cbf9720 100644 --- a/chromium/ios/chrome/today_extension/BUILD.gn +++ b/chromium/ios/chrome/today_extension/BUILD.gn @@ -2,14 +2,13 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. +import("//build/config/ios/rules.gni") import("//build/config/locales.gni") +import("//build/config/mac/base_rules.gni") +import("//build/mac/tweak_info_plist.gni") +import("//ios/build/chrome_build.gni") import("//ios/chrome/extension_repack.gni") - -group("resources") { - deps = [ - "//ios/chrome/today_extension/strings", - ] -} +import("//ios/public/provider/chrome/browser/build_config.gni") extension_repack_all_locales("packed_resources") { extension = "today_extension" @@ -17,3 +16,104 @@ extension_repack_all_locales("packed_resources") { output_locales = ios_packed_locales_as_mac_outputs copy_data_to_bundle = true } + +tweak_info_plist("tweak_info_plist") { + info_plist = "Info.plist" +} + +compile_plist("entitlements") { + format = "xml1" + substitutions = [ "IOS_BUNDLE_ID_PREFIX=$ios_app_bundle_id_prefix" ] + output_name = "$target_gen_dir/today_extension.appex.entitlements" + plist_templates = + [ "entitlements/external/today_extension.appex.entitlements" ] + + ios_chrome_entitlements_additions +} + +ios_appex_bundle("today_extension") { + sources = [ + "footer_label.h", + "footer_label.mm", + "interactive_label.h", + "interactive_label.mm", + "lock_screen_state.h", + "lock_screen_state.mm", + "notification_center_button.h", + "notification_center_button.mm", + "notification_center_url_button.h", + "notification_center_url_button.mm", + "physical_web_optin_footer.h", + "physical_web_optin_footer.mm", + "today_metrics_logger.h", + "today_metrics_logger.mm", + "today_view_controller.h", + "today_view_controller.mm", + "transparent_button.h", + "transparent_button.mm", + "ui_util.h", + "ui_util.mm", + "url_table_cell.h", + "url_table_cell.mm", + ] + + deps = [ + ":packed_resources", + ":resources", + "//base", + "//base:i18n", + "//components/metrics", + "//components/metrics:net", + "//components/open_from_clipboard", + "//components/prefs", + "//components/variations", + "//components/version_info", + "//ios/chrome/common", + "//ios/chrome/common/app_group", + "//ios/chrome/common/app_group:client", + "//ios/chrome/common/physical_web", + "//ios/chrome/today_extension/strings", + "//ios/third_party/material_components_ios", + "//net", + "//ui/base", + "//url", + ] + bundle_deps_filter = [ "//third_party/icu:icudata" ] + + libs = [ + "CoreGraphics.framework", + "QuartzCore.framework", + "Foundation.framework", + "NotificationCenter.framework", + "UIKit.framework", + "MobileCoreServices.framework", + ] + + extra_substitutions = [ + "CHROME_CHANNEL_SCHEME=$url_channel_scheme", + "TODAY_EXTENSION_BUNDLE_ID=$chromium_bundle_id.TodayExtension", + ] + + entitlements_target = ":entitlements" + info_plist_target = ":tweak_info_plist" +} + +bundle_data("resources") { + visibility = [ ":*" ] + sources = [ + "resources/todayview_clipboard.png", + "resources/todayview_clipboard@2x.png", + "resources/todayview_clipboard@3x.png", + "resources/todayview_new_tab.png", + "resources/todayview_new_tab@2x.png", + "resources/todayview_new_tab@3x.png", + "resources/todayview_physical_web.png", + "resources/todayview_physical_web@2x.png", + "resources/todayview_physical_web@3x.png", + "resources/todayview_voice_search.png", + "resources/todayview_voice_search@2x.png", + "resources/todayview_voice_search@3x.png", + ] + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} diff --git a/chromium/ios/chrome/widget_extension/BUILD.gn b/chromium/ios/chrome/widget_extension/BUILD.gn new file mode 100644 index 00000000000..1316fa98c4f --- /dev/null +++ b/chromium/ios/chrome/widget_extension/BUILD.gn @@ -0,0 +1,50 @@ +# Copyright 2017 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("//build/config/ios/rules.gni") +import("//build/mac/tweak_info_plist.gni") +import("//ios/build/chrome_build.gni") + +tweak_info_plist("tweak_info_plist") { + info_plist = "Info.plist" +} + +compile_plist("entitlements") { + format = "xml1" + substitutions = [ "IOS_BUNDLE_ID_PREFIX=$ios_app_bundle_id_prefix" ] + output_name = "$target_gen_dir/today_extension.appex.entitlements" + plist_templates = + [ "entitlements/external/widget_extension.appex.entitlements" ] + + ios_chrome_entitlements_additions +} + +ios_appex_bundle("widget_extension") { + sources = [ + "widget_view.h", + "widget_view.mm", + "widget_view_controller.h", + "widget_view_controller.mm", + ] + + libs = [ + "Foundation.framework", + "NotificationCenter.framework", + "UIKit.framework", + ] + + extra_substitutions = [ + "CHROME_CHANNEL_SCHEME=$url_channel_scheme", + "CHROMIUM_SHORT_NAME=$chromium_short_name", + + # The widget_extension and today_extension are using the same provisioning + # profile during development work. + # TODO(crbug.com/682238) : Request provisioning profile if widget is kept. + "WIDGET_EXTENSION_BUNDLE_ID=$chromium_bundle_id.TodayExtension", + ] + + configs += [ "//build/config/compiler:enable_arc" ] + + entitlements_target = ":entitlements" + info_plist_target = ":tweak_info_plist" +} diff --git a/chromium/ios/clean/chrome/app/BUILD.gn b/chromium/ios/clean/chrome/app/BUILD.gn new file mode 100644 index 00000000000..35525d826e7 --- /dev/null +++ b/chromium/ios/clean/chrome/app/BUILD.gn @@ -0,0 +1,106 @@ +# Copyright 2015 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("//build/config/ios/rules.gni") +import("//build/config/mac/base_rules.gni") +import("//build/mac/tweak_info_plist.gni") +import("//ios/build/chrome_build.gni") +import("//ios/public/provider/chrome/browser/build_config.gni") + +tweak_info_plist("info_plist") { + info_plists = [ + "//ios/chrome/app/resources/Info.plist", + "//ios/chrome/app/resources/ChromeAddition+Info.plist", + ] + if (ios_chrome_info_plist_additions != []) { + info_plists += ios_chrome_info_plist_additions + } + if (ios_encryption_export_compliance_code != "") { + info_plists += + [ "//ios/chrome/app/resources/EncryptionExportCompliance+Info.plist" ] + } + args = [ + "--breakpad=$breakpad_enabled_as_int", + "--branding=$chromium_short_name", + ] +} + +ios_app_bundle("chrome_clean_skeleton") { + output_name = "CSChromium" + + entitlements_path = "//ios/chrome/app/resources/Chrome.entitlements" + info_plist_target = ":info_plist" + + deps = [ + ":main", + "//ios/chrome/app:tests_fake_hook", + ] + + bundle_deps = [ "//ios/chrome/app/resources" ] + + extra_substitutions = [ + "CHROMIUM_BUNDLE_ID=$chromium_bundle_id", + "CHROMIUM_SHORT_NAME=$chromium_short_name", + "CHROMIUM_URL_SCHEME_1=$url_unsecure_scheme", + "CHROMIUM_URL_SCHEME_2=$url_secure_scheme", + "CHROMIUM_URL_SCHEME_3=$url_x_callback_scheme", + "CHROMIUM_URL_SCHEME_4=$url_channel_scheme", + ] + + if (ios_encryption_export_compliance_code != "") { + extra_substitutions += [ "ENCRYPTION_EXPORT_COMPLIANCE_CODE=" + + ios_encryption_export_compliance_code ] + } +} + +source_set("main") { + sources = [ + "main.mm", + ] + + deps = [ + ":app", + "//base", + "//components/crash/core/common", + "//ios/chrome/app:app_internal", + "//ios/chrome/app/startup", + "//ios/chrome/browser", + "//ios/chrome/browser:browser_internal", + "//ios/chrome/browser/crash_report", + "//ios/chrome/common", + "//third_party/google_toolbox_for_mac", + ] + + configs += [ "//build/config/compiler:enable_arc" ] +} + +source_set("application_state") { + sources = [ + "application_phase.h", + "application_state.h", + "application_state.mm", + "application_step.h", + ] + + configs += [ "//build/config/compiler:enable_arc" ] + + deps = [ + "//base", + "//ios/clean/chrome/browser", + ] +} + +source_set("app") { + sources = [ + "app_delegate.h", + "app_delegate.mm", + ] + + configs += [ "//build/config/compiler:enable_arc" ] + + deps = [ + ":application_state", + "//ios/clean/chrome/app/steps", + ] +} diff --git a/chromium/ios/clean/chrome/app/steps/BUILD.gn b/chromium/ios/clean/chrome/app/steps/BUILD.gn new file mode 100644 index 00000000000..0289f2673a3 --- /dev/null +++ b/chromium/ios/clean/chrome/app/steps/BUILD.gn @@ -0,0 +1,36 @@ +# 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. + +source_set("steps") { + sources = [ + "launch_to_background.h", + "launch_to_background.mm", + "launch_to_basic.h", + "launch_to_basic.mm", + "launch_to_foreground.h", + "launch_to_foreground.mm", + "tab_grid_coordinator+application_step.h", + "tab_grid_coordinator+application_step.mm", + ] + + configs += [ "//build/config/compiler:enable_arc" ] + + deps = [ + "//base", + "//components/content_settings/core/browser", + "//ios/chrome/app:app_internal", + "//ios/chrome/app/startup", + "//ios/chrome/browser", + "//ios/chrome/browser:browser_internal", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/browser_state:browser_state_impl", + "//ios/chrome/browser/content_settings", + "//ios/chrome/browser/web:web_internal", + "//ios/clean/chrome/app:application_state", + "//ios/clean/chrome/browser", + "//ios/clean/chrome/browser/ui/tab_grid", + "//ios/net", + "//ios/web:web_arc", + ] +} diff --git a/chromium/ios/clean/chrome/browser/BUILD.gn b/chromium/ios/clean/chrome/browser/BUILD.gn new file mode 100644 index 00000000000..579d6d00dd7 --- /dev/null +++ b/chromium/ios/clean/chrome/browser/BUILD.gn @@ -0,0 +1,40 @@ +# Copyright 2015 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. + +source_set("browser") { + sources = [ + "browser_coordinator+internal.h", + "browser_coordinator.h", + "browser_coordinator.mm", + "url_opening.h", + ] + + configs += [ "//build/config/compiler:enable_arc" ] + + deps = [ + "//base", + "//ios/chrome/app:tests_fake_hook", + "//ios/chrome/browser", + "//ios/chrome/browser/browser_state", + "//ios/chrome/browser/tabs:tabs_internal", + "//ios/shared/chrome/browser/coordinator_context", + ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "browser_coordinator_unittest.mm", + ] + + configs += [ "//build/config/compiler:enable_arc" ] + + deps = [ + ":browser", + "//base", + "//base/test:test_support", + "//ios/chrome/test/base", + "//testing/gtest", + ] +} diff --git a/chromium/ios/clean/chrome/browser/ui/BUILD.gn b/chromium/ios/clean/chrome/browser/ui/BUILD.gn new file mode 100644 index 00000000000..0b82fd2070b --- /dev/null +++ b/chromium/ios/clean/chrome/browser/ui/BUILD.gn @@ -0,0 +1,11 @@ +# 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. + +source_set("ui") { + sources = [ + "ui_types.h", + ] + + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/chromium/ios/clean/chrome/browser/ui/actions/BUILD.gn b/chromium/ios/clean/chrome/browser/ui/actions/BUILD.gn new file mode 100644 index 00000000000..3c8f0a16fe7 --- /dev/null +++ b/chromium/ios/clean/chrome/browser/ui/actions/BUILD.gn @@ -0,0 +1,15 @@ +# 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. + +source_set("actions") { + sources = [ + "navigation_actions.h", + "settings_actions.h", + "tab_grid_actions.h", + "tab_strip_actions.h", + "tools_menu_actions.h", + ] + + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/chromium/ios/clean/chrome/browser/ui/animators/BUILD.gn b/chromium/ios/clean/chrome/browser/ui/animators/BUILD.gn new file mode 100644 index 00000000000..32c610ad3c6 --- /dev/null +++ b/chromium/ios/clean/chrome/browser/ui/animators/BUILD.gn @@ -0,0 +1,17 @@ +# 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. + +source_set("animators") { + sources = [ + "zoom_transition_animator.h", + "zoom_transition_animator.mm", + "zoom_transition_delegate.h", + ] + + configs += [ "//build/config/compiler:enable_arc" ] + + deps = [ + "//base", + ] +} diff --git a/chromium/ios/clean/chrome/browser/ui/commands/BUILD.gn b/chromium/ios/clean/chrome/browser/ui/commands/BUILD.gn new file mode 100644 index 00000000000..8b12cb4a8a7 --- /dev/null +++ b/chromium/ios/clean/chrome/browser/ui/commands/BUILD.gn @@ -0,0 +1,14 @@ +# 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. + +source_set("commands") { + sources = [ + "settings_commands.h", + "tab_commands.h", + "tab_grid_commands.h", + "toolbar_commands.h", + ] + + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/chromium/ios/clean/chrome/browser/ui/presenters/BUILD.gn b/chromium/ios/clean/chrome/browser/ui/presenters/BUILD.gn new file mode 100644 index 00000000000..3a89a3397b8 --- /dev/null +++ b/chromium/ios/clean/chrome/browser/ui/presenters/BUILD.gn @@ -0,0 +1,17 @@ +# 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. + +source_set("presenters") { + sources = [ + "menu_presentation_controller.h", + "menu_presentation_controller.mm", + "menu_presentation_delegate.h", + ] + + configs += [ "//build/config/compiler:enable_arc" ] + + deps = [ + "//ios/clean/chrome/browser/ui/commands", + ] +} diff --git a/chromium/ios/clean/chrome/browser/ui/settings/BUILD.gn b/chromium/ios/clean/chrome/browser/ui/settings/BUILD.gn new file mode 100644 index 00000000000..c10b38155f7 --- /dev/null +++ b/chromium/ios/clean/chrome/browser/ui/settings/BUILD.gn @@ -0,0 +1,20 @@ +# 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. + +source_set("settings") { + sources = [ + "settings_coordinator.h", + "settings_coordinator.mm", + ] + + configs += [ "//build/config/compiler:enable_arc" ] + + deps = [ + "//ios/chrome/browser/ui/settings", + "//ios/clean/chrome/browser", + "//ios/clean/chrome/browser/ui/actions", + "//ios/clean/chrome/browser/ui/commands", + "//ios/shared/chrome/browser/coordinator_context", + ] +} diff --git a/chromium/ios/clean/chrome/browser/ui/tab/BUILD.gn b/chromium/ios/clean/chrome/browser/ui/tab/BUILD.gn new file mode 100644 index 00000000000..b1177b0c370 --- /dev/null +++ b/chromium/ios/clean/chrome/browser/ui/tab/BUILD.gn @@ -0,0 +1,26 @@ +# 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. + +source_set("tab") { + sources = [ + "tab_container_view_controller.h", + "tab_container_view_controller.mm", + "tab_coordinator.h", + "tab_coordinator.mm", + ] + + configs += [ "//build/config/compiler:enable_arc" ] + + deps = [ + "//base", + "//ios/clean/chrome/browser", + "//ios/clean/chrome/browser/ui", + "//ios/clean/chrome/browser/ui/animators", + "//ios/clean/chrome/browser/ui/presenters", + "//ios/clean/chrome/browser/ui/toolbar", + "//ios/clean/chrome/browser/ui/web_contents", + "//ios/shared/chrome/browser/coordinator_context", + "//ios/web", + ] +} diff --git a/chromium/ios/clean/chrome/browser/ui/tab_grid/BUILD.gn b/chromium/ios/clean/chrome/browser/ui/tab_grid/BUILD.gn new file mode 100644 index 00000000000..01b3f2b7116 --- /dev/null +++ b/chromium/ios/clean/chrome/browser/ui/tab_grid/BUILD.gn @@ -0,0 +1,44 @@ +# 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. + +source_set("tab_grid") { + sources = [ + "tab_grid_coordinator.h", + "tab_grid_coordinator.mm", + ] + + configs += [ "//build/config/compiler:enable_arc" ] + + deps = [ + ":tab_grid_ui", + "//base", + "//ios/chrome/browser/browser_state", + "//ios/clean/chrome/browser", + "//ios/clean/chrome/browser/ui/commands", + "//ios/clean/chrome/browser/ui/settings", + "//ios/clean/chrome/browser/ui/tab_strip", + "//ios/shared/chrome/browser/coordinator_context", + "//ios/web", + "//net", + "//ui/base", + ] +} + +source_set("tab_grid_ui") { + sources = [ + "tab_grid_tab_cell.h", + "tab_grid_tab_cell.mm", + "tab_grid_view_controller.h", + "tab_grid_view_controller.mm", + ] + + configs += [ "//build/config/compiler:enable_arc" ] + + deps = [ + "//base", + "//ios/clean/chrome/browser/ui/actions", + "//ios/clean/chrome/browser/ui/animators", + "//ios/clean/chrome/browser/ui/commands", + ] +} diff --git a/chromium/ios/clean/chrome/browser/ui/tab_strip/BUILD.gn b/chromium/ios/clean/chrome/browser/ui/tab_strip/BUILD.gn new file mode 100644 index 00000000000..69254568fdc --- /dev/null +++ b/chromium/ios/clean/chrome/browser/ui/tab_strip/BUILD.gn @@ -0,0 +1,33 @@ +# 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. + +source_set("tab_strip") { + sources = [ + "tab_strip_container_coordinator.h", + "tab_strip_container_coordinator.mm", + ] + deps = [ + ":tab_strip_ui", + "//base", + "//ios/clean/chrome/browser", + "//ios/clean/chrome/browser/ui/actions", + "//ios/clean/chrome/browser/ui/animators", + "//ios/clean/chrome/browser/ui/tab", + ] + libs = [ "UIKit.framework" ] + configs += [ "//build/config/compiler:enable_arc" ] +} + +source_set("tab_strip_ui") { + sources = [ + "tab_strip_container_view_controller.h", + "tab_strip_container_view_controller.mm", + ] + deps = [ + "//ios/clean/chrome/browser/ui", + "//ios/clean/chrome/browser/ui/actions", + ] + libs = [ "UIKit.framework" ] + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/chromium/ios/clean/chrome/browser/ui/toolbar/BUILD.gn b/chromium/ios/clean/chrome/browser/ui/toolbar/BUILD.gn new file mode 100644 index 00000000000..dd46a48bcb1 --- /dev/null +++ b/chromium/ios/clean/chrome/browser/ui/toolbar/BUILD.gn @@ -0,0 +1,27 @@ +# 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. + +source_set("toolbar") { + sources = [ + "toolbar_coordinator.h", + "toolbar_coordinator.mm", + "toolbar_view_controller.h", + "toolbar_view_controller.mm", + ] + + configs += [ "//build/config/compiler:enable_arc" ] + + deps = [ + "//base", + "//ios/chrome/app/theme", + "//ios/chrome/browser/ui", + "//ios/clean/chrome/browser", + "//ios/clean/chrome/browser/ui/actions", + "//ios/clean/chrome/browser/ui/animators", + "//ios/clean/chrome/browser/ui/commands", + "//ios/clean/chrome/browser/ui/tools", + "//ios/shared/chrome/browser/coordinator_context", + "//ios/web", + ] +} diff --git a/chromium/ios/clean/chrome/browser/ui/tools/BUILD.gn b/chromium/ios/clean/chrome/browser/ui/tools/BUILD.gn new file mode 100644 index 00000000000..cb3e9b0b4ec --- /dev/null +++ b/chromium/ios/clean/chrome/browser/ui/tools/BUILD.gn @@ -0,0 +1,36 @@ +# 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. + +source_set("tools") { + sources = [ + "tools_coordinator.h", + "tools_coordinator.mm", + ] + + configs += [ "//build/config/compiler:enable_arc" ] + + deps = [ + ":tools_ui", + "//base", + "//ios/clean/chrome/browser", + "//ios/clean/chrome/browser/ui/actions", + "//ios/clean/chrome/browser/ui/animators", + "//ios/clean/chrome/browser/ui/presenters", + "//ios/shared/chrome/browser/coordinator_context", + ] +} + +source_set("tools_ui") { + sources = [ + "menu_view_controller.h", + "menu_view_controller.mm", + ] + + configs += [ "//build/config/compiler:enable_arc" ] + + deps = [ + "//base", + "//ios/clean/chrome/browser/ui/actions", + ] +} diff --git a/chromium/ios/clean/chrome/browser/ui/web_contents/BUILD.gn b/chromium/ios/clean/chrome/browser/ui/web_contents/BUILD.gn new file mode 100644 index 00000000000..df8e8c68e1f --- /dev/null +++ b/chromium/ios/clean/chrome/browser/ui/web_contents/BUILD.gn @@ -0,0 +1,23 @@ +# 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. + +source_set("web_contents") { + sources = [ + "web_contents_view_controller.h", + "web_contents_view_controller.mm", + "web_coordinator.h", + "web_coordinator.mm", + ] + + configs += [ "//build/config/compiler:enable_arc" ] + + deps = [ + "//ios/clean/chrome/browser", + "//ios/clean/chrome/browser/web", + "//ios/shared/chrome/browser/coordinator_context", + "//ios/web", + "//ui/base", + "//url", + ] +} diff --git a/chromium/ios/clean/chrome/browser/web/BUILD.gn b/chromium/ios/clean/chrome/browser/web/BUILD.gn new file mode 100644 index 00000000000..e4f9f2cef5e --- /dev/null +++ b/chromium/ios/clean/chrome/browser/web/BUILD.gn @@ -0,0 +1,13 @@ +# 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. + +source_set("web") { + sources = [ + "web_mediator+internal.h", + "web_mediator.h", + "web_mediator.mm", + ] + + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/chromium/ios/clean/chrome/test/BUILD.gn b/chromium/ios/clean/chrome/test/BUILD.gn new file mode 100644 index 00000000000..f4231655f00 --- /dev/null +++ b/chromium/ios/clean/chrome/test/BUILD.gn @@ -0,0 +1,19 @@ +# Copyright 2017 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("//testing/test.gni") + +group("all_tests") { + testonly = true + deps = [ + ":ios_clean_chrome_unittests", + ] +} + +test("ios_clean_chrome_unittests") { + deps = [ + "//ios/chrome/test:run_all_unittests", + "//ios/clean/chrome/browser:unit_tests", + ] +} diff --git a/chromium/ios/crnet/BUILD.gn b/chromium/ios/crnet/BUILD.gn index 7397ba958ca..2030e8f0e32 100644 --- a/chromium/ios/crnet/BUILD.gn +++ b/chromium/ios/crnet/BUILD.gn @@ -14,10 +14,10 @@ assert(!is_component_build, "CrNet requires static library build.") source_set("crnet_sources") { deps = [ - "//base:base", - "//components/metrics:metrics", - "//components/metrics/proto:proto", - "//components/prefs:prefs", + "//base", + "//components/metrics", + "//components/metrics/proto", + "//components/prefs", "//ios/net", "//ios/web:user_agent", "//net", @@ -117,7 +117,7 @@ ios_framework_bundle("crnet_framework") { ":crnet_framework_resources", ":crnet_sources", "//base", - "//net:net", + "//net", ] libs = [ "UIKit.Framework" ] diff --git a/chromium/ios/net/BUILD.gn b/chromium/ios/net/BUILD.gn index be401baa11e..90c62253e8c 100644 --- a/chromium/ios/net/BUILD.gn +++ b/chromium/ios/net/BUILD.gn @@ -6,6 +6,13 @@ import("//ios/build/config.gni") import("//testing/test.gni") import("//url/features.gni") +group("all_tests") { + testonly = true + deps = [ + ":ios_net_unittests", + ] +} + source_set("net") { deps = [ "//base", @@ -16,13 +23,7 @@ source_set("net") { configs += [ "//build/config/compiler:enable_arc" ] sources = [ - "clients/crn_forwarding_network_client.h", - "clients/crn_forwarding_network_client.mm", - "clients/crn_forwarding_network_client_factory.h", - "clients/crn_forwarding_network_client_factory.mm", "clients/crn_network_client_protocol.h", - "clients/crn_simple_network_client_factory.h", - "clients/crn_simple_network_client_factory.mm", "cookies/cookie_cache.cc", "cookies/cookie_cache.h", "cookies/cookie_creation_time_manager.h", @@ -74,7 +75,6 @@ test("ios_net_unittests") { ] sources = [ - "clients/crn_forwarding_network_client_factory_unittest.mm", "cookies/cookie_cache_unittest.cc", "cookies/cookie_creation_time_manager_unittest.mm", "cookies/cookie_store_ios_unittest.mm", diff --git a/chromium/ios/public/provider/chrome/browser/BUILD.gn b/chromium/ios/public/provider/chrome/browser/BUILD.gn index 0243745a335..d28965c507a 100644 --- a/chromium/ios/public/provider/chrome/browser/BUILD.gn +++ b/chromium/ios/public/provider/chrome/browser/BUILD.gn @@ -9,116 +9,38 @@ source_set("browser") { sources = [ "chrome_browser_provider.h", "chrome_browser_provider.mm", - "distribution/app_distribution_provider.h", - "distribution/app_distribution_provider.mm", "geolocation_updater_provider.h", "geolocation_updater_provider.mm", - "native_app_launcher/native_app_metadata.h", - "native_app_launcher/native_app_types.h", - "native_app_launcher/native_app_whitelist_manager.h", - "omaha/omaha_service_provider.h", - "omaha/omaha_service_provider.mm", - "sessions/live_tab_context_provider.h", - "signin/chrome_identity.h", - "signin/chrome_identity.mm", - "signin/chrome_identity_browser_opener.h", - "signin/chrome_identity_interaction_manager.h", - "signin/chrome_identity_interaction_manager.mm", - "signin/chrome_identity_service.h", - "signin/chrome_identity_service.mm", - "signin/signin_error_provider.h", - "signin/signin_error_provider.mm", - "signin/signin_resources_provider.h", - "signin/signin_resources_provider.mm", - "ui/app_rating_prompt.h", - "ui/default_ios_web_view_factory.h", - "ui/default_ios_web_view_factory.mm", - "ui/infobar_view_delegate.h", - "ui/infobar_view_protocol.h", - "ui/logo_vendor.h", - "ui/text_field_styling.h", - "voice/audio_session_controller.h", - "voice/logo_animation_controller.h", - "voice/voice_search_bar.h", - "voice/voice_search_bar_owner.h", - "voice/voice_search_controller.h", - "voice/voice_search_controller.mm", - "voice/voice_search_controller_delegate.h", - "voice/voice_search_language.h", - "voice/voice_search_language.mm", - "voice/voice_search_prefs.cc", - "voice/voice_search_prefs.h", - "voice/voice_search_presenter.h", - "voice/voice_search_provider.h", - "voice/voice_search_provider.mm", ] - - public_deps = [ - ":provider_flags", - ] - deps = [ "//base", - "//components/autofill/core/browser", - "//components/favicon_base", "//components/metrics", - "//components/sync_sessions", - "//ios/public/provider/web", - "//ios/web", - "//url", - ] - - libs = [ - "CoreGraphics.framework", - "CoreLocation.framework", ] -} - -buildflag_header("provider_flags") { - header = "provider_flags.h" - flags = [ "USE_IOS_INTERNAL_PROVIDER=$use_ios_internal_provider" ] + libs = [ "CoreLocation.framework" ] } source_set("test_support") { testonly = true - sources = [ - "distribution/test_app_distribution_provider.h", - "distribution/test_app_distribution_provider.mm", - "omaha/test_omaha_service_provider.h", - "omaha/test_omaha_service_provider.mm", - "sessions/test_live_tab_context_provider.cc", - "sessions/test_live_tab_context_provider.h", - "sessions/test_synced_window_delegates_getter.cc", - "sessions/test_synced_window_delegates_getter.h", - "signin/fake_chrome_identity.h", - "signin/fake_chrome_identity.mm", - "signin/fake_chrome_identity_interaction_manager.h", - "signin/fake_chrome_identity_interaction_manager.mm", - "signin/fake_chrome_identity_service.h", - "signin/fake_chrome_identity_service.mm", - "signin/test_signin_resources_provider.h", - "signin/test_signin_resources_provider.mm", "test_chrome_browser_provider.h", "test_chrome_browser_provider.mm", "test_chrome_provider_initializer.h", "test_chrome_provider_initializer.mm", - "ui/test_infobar_view.h", - "ui/test_infobar_view.mm", - "ui/test_styled_text_field.h", - "ui/test_styled_text_field.mm", - "voice/test_voice_search_provider.h", - "voice/test_voice_search_provider.mm", ] - deps = [ ":browser", "//base", - "//components/signin/ios/browser:test_support", - "//components/sync_sessions", + "//ios/public/provider/chrome/browser/distribution:test_support", + "//ios/public/provider/chrome/browser/images:test_support", + "//ios/public/provider/chrome/browser/native_app_launcher:test_support", + "//ios/public/provider/chrome/browser/omaha:test_support", + "//ios/public/provider/chrome/browser/signin:test_support", + "//ios/public/provider/chrome/browser/spotlight:test_support", + "//ios/public/provider/chrome/browser/ui", + "//ios/public/provider/chrome/browser/ui:test_support", + "//ios/public/provider/chrome/browser/user_feedback:test_support", + "//ios/public/provider/chrome/browser/voice", + "//ios/public/provider/chrome/browser/voice:test_support", "//testing/gtest", ] - public_deps = [ - "//testing/gmock", - ] } diff --git a/chromium/ios/public/provider/chrome/browser/build_config.gni b/chromium/ios/public/provider/chrome/browser/build_config.gni index 64c1528db5c..aaf2ee99a28 100644 --- a/chromium/ios/public/provider/chrome/browser/build_config.gni +++ b/chromium/ios/public/provider/chrome/browser/build_config.gni @@ -2,10 +2,23 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -import("//build/config/chrome_build.gni") - declare_args() { - # Control the provider API implementation used by Chromium on iOS. Requires - # access to the private Google-internal Chrome on iOS repository if true. - use_ios_internal_provider = is_chrome_branded + # Label of the target providing application icons. This target must be a + # bundle_data target that copy Icon-*.png files in the application bundle. + ios_application_icons_target = "//ios/chrome/app/resources:chromium_icons" + + # Label of the target providing image assets for the launchscreen. This + # target must be an asset catalog that contains at least two imagesets, one + # named "launchscreen_app_logo" and one named "launchscreen_brand_name". + ios_launchscreen_assets_target = + "//ios/chrome/app/resources:launchscreen_assets" + + # Label of the target providing packed resources (localizable strings, + # scalable and unscalable resources). This target must copy the packed + # resources to the application bundle when depended on. + ios_packed_resources_target = "//ios/chrome/app/resources:packed_resources" + + # Label of the target providing implementation for ChromeBrowserProvider. + # Overridden when using the Google-internal repository to build Chrome on iOS. + ios_provider_target = "//ios/chrome/browser/providers:provider_factory" } diff --git a/chromium/ios/public/provider/chrome/browser/distribution/BUILD.gn b/chromium/ios/public/provider/chrome/browser/distribution/BUILD.gn new file mode 100644 index 00000000000..f75858434b3 --- /dev/null +++ b/chromium/ios/public/provider/chrome/browser/distribution/BUILD.gn @@ -0,0 +1,25 @@ +# 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. + +source_set("distribution") { + sources = [ + "app_distribution_provider.h", + "app_distribution_provider.mm", + ] + deps = [ + "//base", + ] +} + +source_set("test_support") { + testonly = true + sources = [ + "test_app_distribution_provider.h", + "test_app_distribution_provider.mm", + ] + deps = [ + ":distribution", + "//base", + ] +} diff --git a/chromium/ios/public/provider/chrome/browser/images/BUILD.gn b/chromium/ios/public/provider/chrome/browser/images/BUILD.gn new file mode 100644 index 00000000000..3d96d7ff333 --- /dev/null +++ b/chromium/ios/public/provider/chrome/browser/images/BUILD.gn @@ -0,0 +1,25 @@ +# 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. + +source_set("images") { + sources = [ + "branded_image_provider.h", + "branded_image_provider.mm", + "whats_new_icon.h", + ] + deps = [ + "//base", + ] +} + +source_set("test_support") { + testonly = true + sources = [ + "test_branded_image_provider.h", + "test_branded_image_provider.mm", + ] + deps = [ + ":images", + ] +} diff --git a/chromium/ios/public/provider/chrome/browser/native_app_launcher/BUILD.gn b/chromium/ios/public/provider/chrome/browser/native_app_launcher/BUILD.gn new file mode 100644 index 00000000000..b647bb388d1 --- /dev/null +++ b/chromium/ios/public/provider/chrome/browser/native_app_launcher/BUILD.gn @@ -0,0 +1,29 @@ +# 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. + +source_set("native_app_launcher") { + sources = [ + "native_app_metadata.h", + "native_app_types.h", + "native_app_whitelist_manager.h", + ] + configs += [ "//build/config/compiler:enable_arc" ] +} + +source_set("test_support") { + testonly = true + sources = [ + "fake_native_app_metadata.h", + "fake_native_app_metadata.mm", + "fake_native_app_whitelist_manager.h", + "fake_native_app_whitelist_manager.mm", + ] + deps = [ + ":native_app_launcher", + "//base", + "//ios/public/provider/chrome/browser", + "//url", + ] + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/chromium/ios/public/provider/chrome/browser/omaha/BUILD.gn b/chromium/ios/public/provider/chrome/browser/omaha/BUILD.gn new file mode 100644 index 00000000000..06f5238af01 --- /dev/null +++ b/chromium/ios/public/provider/chrome/browser/omaha/BUILD.gn @@ -0,0 +1,26 @@ +# 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. + +source_set("omaha") { + sources = [ + "omaha_service_provider.h", + "omaha_service_provider.mm", + "omaha_xml_writer.h", + ] + deps = [ + "//base", + "//url", + ] +} + +source_set("test_support") { + testonly = true + sources = [ + "test_omaha_service_provider.h", + "test_omaha_service_provider.mm", + ] + deps = [ + ":omaha", + ] +} diff --git a/chromium/ios/public/provider/chrome/browser/signin/BUILD.gn b/chromium/ios/public/provider/chrome/browser/signin/BUILD.gn new file mode 100644 index 00000000000..fd8141a2494 --- /dev/null +++ b/chromium/ios/public/provider/chrome/browser/signin/BUILD.gn @@ -0,0 +1,45 @@ +# 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. + +source_set("signin") { + sources = [ + "chrome_identity.h", + "chrome_identity.mm", + "chrome_identity_browser_opener.h", + "chrome_identity_interaction_manager.h", + "chrome_identity_interaction_manager.mm", + "chrome_identity_service.h", + "chrome_identity_service.mm", + "signin_error_provider.h", + "signin_error_provider.mm", + "signin_resources_provider.h", + "signin_resources_provider.mm", + ] + deps = [ + "//base", + ] +} + +source_set("test_support") { + testonly = true + sources = [ + "fake_chrome_identity.h", + "fake_chrome_identity.mm", + "fake_chrome_identity_interaction_manager.h", + "fake_chrome_identity_interaction_manager.mm", + "fake_chrome_identity_service.h", + "fake_chrome_identity_service.mm", + "test_signin_resources_provider.h", + "test_signin_resources_provider.mm", + ] + deps = [ + ":signin", + "//base", + "//google_apis", + "//ios/public/provider/chrome/browser", + ] + public_deps = [ + "//testing/gmock", + ] +} diff --git a/chromium/ios/public/provider/chrome/browser/spotlight/BUILD.gn b/chromium/ios/public/provider/chrome/browser/spotlight/BUILD.gn new file mode 100644 index 00000000000..816bf722acf --- /dev/null +++ b/chromium/ios/public/provider/chrome/browser/spotlight/BUILD.gn @@ -0,0 +1,25 @@ +# 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. + +source_set("spotlight") { + sources = [ + "spotlight_provider.h", + "spotlight_provider.mm", + ] + deps = [ + "//base", + ] + libs = [ "Foundation.framework" ] +} + +source_set("test_support") { + testonly = true + sources = [ + "test_spotlight_provider.h", + "test_spotlight_provider.mm", + ] + deps = [ + ":spotlight", + ] +} diff --git a/chromium/ios/public/provider/chrome/browser/ui/BUILD.gn b/chromium/ios/public/provider/chrome/browser/ui/BUILD.gn new file mode 100644 index 00000000000..56d77e54877 --- /dev/null +++ b/chromium/ios/public/provider/chrome/browser/ui/BUILD.gn @@ -0,0 +1,29 @@ +# 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. + +source_set("ui") { + sources = [ + "app_rating_prompt.h", + "default_ios_web_view_factory.h", + "default_ios_web_view_factory.mm", + "logo_vendor.h", + "text_field_styling.h", + ] + deps = [ + "//base", + "//ios/public/provider/chrome/browser/voice", + ] + libs = [ "CoreGraphics.framework" ] +} + +source_set("test_support") { + testonly = true + sources = [ + "test_styled_text_field.h", + "test_styled_text_field.mm", + ] + deps = [ + ":ui", + ] +} diff --git a/chromium/ios/public/provider/chrome/browser/user_feedback/BUILD.gn b/chromium/ios/public/provider/chrome/browser/user_feedback/BUILD.gn new file mode 100644 index 00000000000..efd22991a8f --- /dev/null +++ b/chromium/ios/public/provider/chrome/browser/user_feedback/BUILD.gn @@ -0,0 +1,25 @@ +# 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. + +source_set("user_feedback") { + sources = [ + "user_feedback_provider.h", + "user_feedback_provider.mm", + ] + deps = [ + "//base", + ] +} + +source_set("test_support") { + testonly = true + sources = [ + "test_user_feedback_provider.h", + "test_user_feedback_provider.mm", + ] + deps = [ + ":user_feedback", + "//base", + ] +} diff --git a/chromium/ios/public/provider/chrome/browser/voice/BUILD.gn b/chromium/ios/public/provider/chrome/browser/voice/BUILD.gn index 4f160a7a3b1..02e838ac1b7 100644 --- a/chromium/ios/public/provider/chrome/browser/voice/BUILD.gn +++ b/chromium/ios/public/provider/chrome/browser/voice/BUILD.gn @@ -2,13 +2,38 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. +source_set("voice") { + sources = [ + "audio_session_controller.h", + "logo_animation_controller.h", + "voice_search_bar.h", + "voice_search_bar_owner.h", + "voice_search_controller.h", + "voice_search_controller.mm", + "voice_search_controller_delegate.h", + "voice_search_language.h", + "voice_search_language.mm", + "voice_search_prefs.cc", + "voice_search_prefs.h", + "voice_search_presenter.h", + "voice_search_provider.h", + "voice_search_provider.mm", + ] + deps = [ + "//base", + ] +} + source_set("test_support") { sources = [ "test_audio_session_controller.cc", "test_audio_session_controller.h", + "test_voice_search_provider.h", + "test_voice_search_provider.mm", ] deps = [ + ":voice", "//base", "//ios/public/provider/chrome/browser", ] diff --git a/chromium/ios/public/provider/web/BUILD.gn b/chromium/ios/public/provider/web/BUILD.gn deleted file mode 100644 index d70aa343eea..00000000000 --- a/chromium/ios/public/provider/web/BUILD.gn +++ /dev/null @@ -1,18 +0,0 @@ -# Copyright 2015 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. - -source_set("web") { - sources = [ - "web_controller_provider.h", - "web_controller_provider.mm", - ] - - deps = [ - "//base", - "//ios/web", - "//url", - ] - - allow_circular_includes_from = [ "//ios/web" ] -} diff --git a/chromium/ios/shared/chrome/browser/coordinator_context/BUILD.gn b/chromium/ios/shared/chrome/browser/coordinator_context/BUILD.gn new file mode 100644 index 00000000000..4f3f5c29929 --- /dev/null +++ b/chromium/ios/shared/chrome/browser/coordinator_context/BUILD.gn @@ -0,0 +1,24 @@ +# Copyright 2017 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. + +source_set("coordinator_context") { + sources = [ + "coordinator_context.h", + "coordinator_context.mm", + ] + configs += [ "//build/config/compiler:enable_arc" ] + libs = [ "UIKit.framework" ] +} + +source_set("unit_tests") { + testonly = true + sources = [ + "coordinator_context_unittest.mm", + ] + deps = [ + ":coordinator_context", + "//testing/gtest", + ] + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/chromium/ios/showcase/BUILD.gn b/chromium/ios/showcase/BUILD.gn new file mode 100644 index 00000000000..ade3d342e3c --- /dev/null +++ b/chromium/ios/showcase/BUILD.gn @@ -0,0 +1,65 @@ +# 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("//build/config/ios/rules.gni") +import("//ios/build/chrome_build.gni") +import("//ios/build/config.gni") +import("//ios/third_party/earl_grey/ios_eg_test.gni") + +ios_app_bundle("showcase") { + info_plist = "core/Info.plist" + extra_substitutions = [ "IOS_BUNDLE_ID_PREFIX=$ios_app_bundle_id_prefix" ] + output_name = "Showcase" + deps = [ + ":features", + "//ios/showcase/core:main", + + # All shared libraries must have the sanitizer deps to properly link in + # asan mode (this target will be empty in other cases). + "//build/config/sanitizers:deps", + ] + bundle_deps = [ ":launchscreen_storyboard" ] + assert_no_deps = ios_assert_no_deps +} + +group("features") { + deps = [ + "//ios/clean/chrome/browser/ui/tools:tools_ui", + "//ios/showcase/settings", + "//ios/showcase/suggestions", + "//ios/showcase/tab_grid", + "//ios/showcase/tab_strip", + "//ios/showcase/uikit_table_view_cell", + ] +} + +group("all_tests") { + testonly = true + deps = [ + ":ios_showcase_egtests", + ] +} + +ios_eg_test("ios_showcase_egtests") { + info_plist = "core/Info.plist" + extra_substitutions = [ "IOS_BUNDLE_ID_PREFIX=$ios_app_bundle_id_prefix" ] + deps = [ + ":features", + "//ios/showcase/core:main", + + # Add all eg_tests targets below. + "//ios/showcase/core:eg_tests", + "//ios/showcase/tab_grid:eg_tests", + + # All shared libraries must have the sanitizer deps to properly link in + # asan mode (this target will be empty in other cases). + "//build/config/sanitizers:deps", + ] + bundle_deps = [ ":launchscreen_storyboard" ] + assert_no_deps = ios_assert_no_deps +} + +bundle_data_ib_file("launchscreen_storyboard") { + source = "core/LaunchScreen.storyboard" +} diff --git a/chromium/ios/showcase/common/BUILD.gn b/chromium/ios/showcase/common/BUILD.gn new file mode 100644 index 00000000000..8a5dcd14a17 --- /dev/null +++ b/chromium/ios/showcase/common/BUILD.gn @@ -0,0 +1,16 @@ +# 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. + +source_set("common") { + sources = [ + "coordinator.h", + "protocol_alerter.h", + "protocol_alerter.mm", + ] + deps = [ + "//base", + ] + libs = [ "UIKit.framework" ] + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/chromium/ios/showcase/core/BUILD.gn b/chromium/ios/showcase/core/BUILD.gn new file mode 100644 index 00000000000..61457380dce --- /dev/null +++ b/chromium/ios/showcase/core/BUILD.gn @@ -0,0 +1,52 @@ +# 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. + +source_set("core") { + sources = [ + "app_delegate.h", + "app_delegate.mm", + "showcase_model.h", + "showcase_model.mm", + "showcase_view_controller.h", + "showcase_view_controller.mm", + ] + deps = [ + "//base", + "//ios/showcase/common", + "//ios/third_party/material_components_ios", + "//ios/third_party/material_roboto_font_loader_ios", + ] + libs = [ "UIKit.framework" ] + configs += [ "//build/config/compiler:enable_arc" ] +} + +source_set("main") { + sources = [ + "main.mm", + ] + deps = [ + ":core", + + # Needed to disable the tests hooks. + "//ios/chrome/app:tests_fake_hook", + + # Needed for including ios/chrome/browser/ui. + "//ios/chrome/browser/tabs:tabs_internal", + "//ios/chrome/browser/ui:ui_internal", + ] + libs = [ "UIKit.framework" ] + configs += [ "//build/config/compiler:enable_arc" ] +} + +source_set("eg_tests") { + testonly = true + sources = [ + "showcase_egtest.mm", + ] + deps = [ + "//ios/showcase/test", + "//ios/third_party/earl_grey", + ] + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/chromium/ios/showcase/settings/BUILD.gn b/chromium/ios/showcase/settings/BUILD.gn new file mode 100644 index 00000000000..6810351c11c --- /dev/null +++ b/chromium/ios/showcase/settings/BUILD.gn @@ -0,0 +1,16 @@ +# 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. + +source_set("settings") { + sources = [ + "settings_coordinator.h", + "settings_coordinator.mm", + ] + deps = [ + "//base", + "//ios/showcase/common", + ] + libs = [ "UIKit.framework" ] + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/chromium/ios/showcase/suggestions/BUILD.gn b/chromium/ios/showcase/suggestions/BUILD.gn new file mode 100644 index 00000000000..3bf7c7740ab --- /dev/null +++ b/chromium/ios/showcase/suggestions/BUILD.gn @@ -0,0 +1,29 @@ +# 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. + +source_set("suggestions") { + sources = [ + "sc_suggestions_coordinator.h", + "sc_suggestions_coordinator.mm", + ] + deps = [ + "//base", + "//ios/chrome/browser/ui/suggestions", + "//ios/showcase/common", + ] + libs = [ "UIKit.framework" ] + configs += [ "//build/config/compiler:enable_arc" ] +} + +source_set("eg_tests") { + testonly = true + sources = [ + "sc_suggestions_egtest.mm", + ] + deps = [ + "//ios/showcase/test", + "//ios/third_party/earl_grey", + ] + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/chromium/ios/showcase/tab_grid/BUILD.gn b/chromium/ios/showcase/tab_grid/BUILD.gn new file mode 100644 index 00000000000..0da6a0b8fca --- /dev/null +++ b/chromium/ios/showcase/tab_grid/BUILD.gn @@ -0,0 +1,30 @@ +# 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. + +source_set("tab_grid") { + sources = [ + "sc_tab_grid_coordinator.h", + "sc_tab_grid_coordinator.mm", + ] + deps = [ + "//base", + "//ios/clean/chrome/browser/ui/commands", + "//ios/clean/chrome/browser/ui/tab_grid:tab_grid_ui", + "//ios/showcase/common", + ] + libs = [ "UIKit.framework" ] + configs += [ "//build/config/compiler:enable_arc" ] +} + +source_set("eg_tests") { + testonly = true + sources = [ + "sc_tab_grid_egtest.mm", + ] + deps = [ + "//ios/showcase/test", + "//ios/third_party/earl_grey", + ] + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/chromium/ios/showcase/tab_strip/BUILD.gn b/chromium/ios/showcase/tab_strip/BUILD.gn new file mode 100644 index 00000000000..9be2c06d884 --- /dev/null +++ b/chromium/ios/showcase/tab_strip/BUILD.gn @@ -0,0 +1,17 @@ +# 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. + +source_set("tab_strip") { + sources = [ + "sc_tab_strip_coordinator.h", + "sc_tab_strip_coordinator.mm", + ] + deps = [ + "//ios/clean/chrome/browser/ui/actions", + "//ios/clean/chrome/browser/ui/tab_strip:tab_strip_ui", + "//ios/showcase/common", + ] + libs = [ "UIKit.framework" ] + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/chromium/ios/showcase/test/BUILD.gn b/chromium/ios/showcase/test/BUILD.gn new file mode 100644 index 00000000000..a38fe5f884b --- /dev/null +++ b/chromium/ios/showcase/test/BUILD.gn @@ -0,0 +1,19 @@ +# 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. + +source_set("test") { + testonly = true + sources = [ + "showcase_test_case.h", + "showcase_test_case.mm", + ] + deps = [ + "//base", + "//ios/third_party/earl_grey", + ] + public_deps = [ + "//build/config/ios:xctest", + ] + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/chromium/ios/showcase/uikit_table_view_cell/BUILD.gn b/chromium/ios/showcase/uikit_table_view_cell/BUILD.gn new file mode 100644 index 00000000000..2db31ddb8eb --- /dev/null +++ b/chromium/ios/showcase/uikit_table_view_cell/BUILD.gn @@ -0,0 +1,12 @@ +# 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. + +source_set("uikit_table_view_cell") { + sources = [ + "uikit_table_view_cell_view_controller.h", + "uikit_table_view_cell_view_controller.mm", + ] + libs = [ "UIKit.framework" ] + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/chromium/ios/test/BUILD.gn b/chromium/ios/test/BUILD.gn new file mode 100644 index 00000000000..f05c0ecb70f --- /dev/null +++ b/chromium/ios/test/BUILD.gn @@ -0,0 +1,10 @@ +# 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. + +# This empty target is there to help with upstreaming by removing a manual +# step from the process (updating the //ios:all target). It will be changed +# to a real target as part of upstreaming. +group("all_tests") { + testonly = true +} diff --git a/chromium/ios/testing/BUILD.gn b/chromium/ios/testing/BUILD.gn index 0d6bc3712bd..8cad15ab09e 100644 --- a/chromium/ios/testing/BUILD.gn +++ b/chromium/ios/testing/BUILD.gn @@ -5,7 +5,15 @@ import("//ios/build/config.gni") import("//testing/test.gni") +group("all_tests") { + testonly = true + deps = [ + ":ocmock_support_unittest", + ] +} + source_set("ios_test_support") { + configs += [ "//build/config/compiler:enable_arc" ] testonly = true deps = [ @@ -19,6 +27,7 @@ source_set("ios_test_support") { } source_set("ocmock_support") { + configs += [ "//build/config/compiler:enable_arc" ] testonly = true deps = [ @@ -52,3 +61,37 @@ test("ocmock_support_unittest") { assert_no_deps = ios_assert_no_deps } + +bundle_data("http_server_bundle_data") { + testonly = true + + sources = [ + "data/http_server_files/autofill_smoke_test.html", + "data/http_server_files/browsing_prevent_default_test_page.html", + "data/http_server_files/chromium_logo.png", + "data/http_server_files/chromium_logo_page.html", + "data/http_server_files/destination.html", + "data/http_server_files/fullscreen.html", + "data/http_server_files/history.html", + "data/http_server_files/history.js", + "data/http_server_files/history_go.html", + "data/http_server_files/history_go.js", + "data/http_server_files/memory_usage.html", + "data/http_server_files/multi_field_form.html", + "data/http_server_files/pony.html", + "data/http_server_files/redirect_refresh.html", + "data/http_server_files/request_desktop_test_page.html", + "data/http_server_files/single_page_wide.pdf", + "data/http_server_files/testpage.pdf", + "data/http_server_files/two_pages.pdf", + "data/http_server_files/window_close.html", + "data/http_server_files/window_location.html", + "data/http_server_files/window_location.js", + "data/http_server_files/window_open.html", + "data/http_server_files/window_proxy.html", + ] + outputs = [ + "{{bundle_resources_dir}}/" + + "{{source_root_relative_dir}}/{{source_file_part}}", + ] +} diff --git a/chromium/ios/testing/earl_grey/BUILD.gn b/chromium/ios/testing/earl_grey/BUILD.gn index 221784c48f0..917583799f8 100644 --- a/chromium/ios/testing/earl_grey/BUILD.gn +++ b/chromium/ios/testing/earl_grey/BUILD.gn @@ -8,6 +8,7 @@ config("earl_grey_support_config") { } source_set("earl_grey_support") { + configs += [ "//build/config/compiler:enable_arc" ] testonly = true deps = [ diff --git a/chromium/ios/third_party/material_components_ios/BUILD.gn b/chromium/ios/third_party/material_components_ios/BUILD.gn new file mode 100644 index 00000000000..fd9cc38ebc0 --- /dev/null +++ b/chromium/ios/third_party/material_components_ios/BUILD.gn @@ -0,0 +1,339 @@ +# 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("//build/config/locales.gni") + +config("config") { + visibility = [ ":material_components_ios" ] + include_dirs = [ + "src/components/AppBar/src", + "src/components/ActivityIndicator/src", + "src/components/ButtonBar/src", + "src/components/Buttons/src", + "src/components/CollectionCells/src", + "src/components/CollectionLayoutAttributes/src", + "src/components/Collections/src", + "src/components/Dialogs/src", + "src/components/FlexibleHeader/src", + "src/components/HeaderStackView/src", + "src/components/Ink/src", + "src/components/NavigationBar/src", + "src/components/OverlayWindow/src", + "src/components/Palettes/src", + "src/components/ProgressView/src", + "src/components/ShadowElevations/src", + "src/components/ShadowLayer/src", + "src/components/Snackbar/src", + "src/components/Typography/src", + ] + + cflags_objc = [ + # Do not consider use of deprecated API as errors when building third-party + # libraries. + "-Wno-error=deprecated-declarations", + ] +} + +_icon_names = [ + "ic_check", + "ic_check_circle", + "ic_chevron_right", + "ic_info", + "ic_radio_button_unchecked", + "ic_reorder", +] + +source_set("material_components_ios") { + sources = [ + "src/components/ActivityIndicator/src/MDCActivityIndicator.h", + "src/components/ActivityIndicator/src/MDCActivityIndicator.m", + "src/components/ActivityIndicator/src/MaterialActivityIndicator.h", + "src/components/AnimationTiming/src/CAMediaTimingFunction+MDCAnimationTiming.h", + "src/components/AnimationTiming/src/CAMediaTimingFunction+MDCAnimationTiming.m", + "src/components/AppBar/src/MDCAppBar.h", + "src/components/AppBar/src/MDCAppBar.m", + "src/components/AppBar/src/MDCAppBarContainerViewController.h", + "src/components/AppBar/src/MDCAppBarContainerViewController.m", + "src/components/AppBar/src/MaterialAppBar.h", + "src/components/ButtonBar/src/MDCButtonBar.h", + "src/components/ButtonBar/src/MDCButtonBar.m", + "src/components/ButtonBar/src/MaterialButtonBar.h", + "src/components/ButtonBar/src/private/MDCAppBarButtonBarBuilder.h", + "src/components/ButtonBar/src/private/MDCAppBarButtonBarBuilder.m", + "src/components/Buttons/src/MDCButton.h", + "src/components/Buttons/src/MDCButton.m", + "src/components/Buttons/src/MDCFlatButton.h", + "src/components/Buttons/src/MDCFlatButton.m", + "src/components/Buttons/src/MDCFloatingButton.h", + "src/components/Buttons/src/MDCFloatingButton.m", + "src/components/Buttons/src/MDCRaisedButton.h", + "src/components/Buttons/src/MDCRaisedButton.m", + "src/components/Buttons/src/MaterialButtons.h", + "src/components/Buttons/src/private/MDCButton+Subclassing.h", + "src/components/CollectionCells/src/MDCCollectionViewCell+Ink.h", + "src/components/CollectionCells/src/MDCCollectionViewCell+Ink.m", + "src/components/CollectionCells/src/MDCCollectionViewCell.h", + "src/components/CollectionCells/src/MDCCollectionViewCell.m", + "src/components/CollectionCells/src/MDCCollectionViewTextCell.h", + "src/components/CollectionCells/src/MDCCollectionViewTextCell.m", + "src/components/CollectionCells/src/MaterialCollectionCells.h", + "src/components/CollectionLayoutAttributes/src/MDCCollectionViewLayoutAttributes.h", + "src/components/CollectionLayoutAttributes/src/MDCCollectionViewLayoutAttributes.m", + "src/components/CollectionLayoutAttributes/src/MaterialCollectionLayoutAttributes.h", + "src/components/Collections/src/MDCCollectionViewController.h", + "src/components/Collections/src/MDCCollectionViewController.m", + "src/components/Collections/src/MDCCollectionViewEditing.h", + "src/components/Collections/src/MDCCollectionViewEditingDelegate.h", + "src/components/Collections/src/MDCCollectionViewFlowLayout.h", + "src/components/Collections/src/MDCCollectionViewFlowLayout.m", + "src/components/Collections/src/MDCCollectionViewStyling.h", + "src/components/Collections/src/MDCCollectionViewStylingDelegate.h", + "src/components/Collections/src/MaterialCollections.h", + "src/components/Collections/src/private/MDCCollectionGridBackgroundView.h", + "src/components/Collections/src/private/MDCCollectionGridBackgroundView.m", + "src/components/Collections/src/private/MDCCollectionInfoBarView.h", + "src/components/Collections/src/private/MDCCollectionInfoBarView.m", + "src/components/Collections/src/private/MDCCollectionStringResources.h", + "src/components/Collections/src/private/MDCCollectionStringResources.m", + "src/components/Collections/src/private/MDCCollectionViewEditor.h", + "src/components/Collections/src/private/MDCCollectionViewEditor.m", + "src/components/Collections/src/private/MDCCollectionViewStyler.h", + "src/components/Collections/src/private/MDCCollectionViewStyler.m", + "src/components/Collections/src/private/MaterialCollectionsStrings.h", + "src/components/Collections/src/private/MaterialCollectionsStrings_table.h", + "src/components/Dialogs/src/MDCAlertController.h", + "src/components/Dialogs/src/MDCAlertController.m", + "src/components/Dialogs/src/MDCDialogPresentationController.h", + "src/components/Dialogs/src/MDCDialogPresentationController.m", + "src/components/Dialogs/src/MDCDialogTransitionController.h", + "src/components/Dialogs/src/MDCDialogTransitionController.m", + "src/components/Dialogs/src/MaterialDialogs.h", + "src/components/Dialogs/src/private/MDCDialogShadowedView.h", + "src/components/Dialogs/src/private/MDCDialogShadowedView.m", + "src/components/FlexibleHeader/src/MDCFlexibleHeaderContainerViewController.h", + "src/components/FlexibleHeader/src/MDCFlexibleHeaderContainerViewController.m", + "src/components/FlexibleHeader/src/MDCFlexibleHeaderView.h", + "src/components/FlexibleHeader/src/MDCFlexibleHeaderView.m", + "src/components/FlexibleHeader/src/MDCFlexibleHeaderViewController.h", + "src/components/FlexibleHeader/src/MDCFlexibleHeaderViewController.m", + "src/components/FlexibleHeader/src/MaterialFlexibleHeader.h", + "src/components/FlexibleHeader/src/private/MDCStatusBarShifter.h", + "src/components/FlexibleHeader/src/private/MDCStatusBarShifter.m", + "src/components/HeaderStackView/src/MDCHeaderStackView.h", + "src/components/HeaderStackView/src/MDCHeaderStackView.m", + "src/components/HeaderStackView/src/MaterialHeaderStackView.h", + "src/components/Ink/src/MDCInkGestureRecognizer.h", + "src/components/Ink/src/MDCInkGestureRecognizer.m", + "src/components/Ink/src/MDCInkTouchController.h", + "src/components/Ink/src/MDCInkTouchController.m", + "src/components/Ink/src/MDCInkView.h", + "src/components/Ink/src/MDCInkView.m", + "src/components/Ink/src/MaterialInk.h", + "src/components/Ink/src/private/MDCInkLayer.h", + "src/components/Ink/src/private/MDCInkLayer.m", + "src/components/NavigationBar/src/MDCNavigationBar.h", + "src/components/NavigationBar/src/MDCNavigationBar.m", + "src/components/NavigationBar/src/MaterialNavigationBar.h", + "src/components/OverlayWindow/src/MDCOverlayWindow.h", + "src/components/OverlayWindow/src/MDCOverlayWindow.m", + "src/components/OverlayWindow/src/MaterialOverlayWindow.h", + "src/components/Palettes/src/MDCPalettes.h", + "src/components/Palettes/src/MDCPalettes.m", + "src/components/Palettes/src/MaterialPalettes.h", + "src/components/Palettes/src/private/MDCPaletteExpansions.h", + "src/components/Palettes/src/private/MDCPaletteExpansions.m", + "src/components/Palettes/src/private/MDCPaletteNames.h", + "src/components/Palettes/src/private/MDCPaletteNames.m", + "src/components/ProgressView/src/MDCProgressView.h", + "src/components/ProgressView/src/MDCProgressView.m", + "src/components/ProgressView/src/MaterialProgressView.h", + "src/components/ShadowElevations/src/MDCShadowElevations.h", + "src/components/ShadowElevations/src/MDCShadowElevations.m", + "src/components/ShadowElevations/src/MaterialShadowElevations.h", + "src/components/ShadowLayer/src/MDCShadowLayer.h", + "src/components/ShadowLayer/src/MDCShadowLayer.m", + "src/components/ShadowLayer/src/MaterialShadowLayer.h", + "src/components/Snackbar/src/MDCSnackbarManager.h", + "src/components/Snackbar/src/MDCSnackbarManager.m", + "src/components/Snackbar/src/MDCSnackbarMessage.h", + "src/components/Snackbar/src/MDCSnackbarMessage.m", + "src/components/Snackbar/src/MaterialSnackbar.h", + "src/components/Snackbar/src/private/MDCSnackbarMessageInternal.h", + "src/components/Snackbar/src/private/MDCSnackbarMessageView.h", + "src/components/Snackbar/src/private/MDCSnackbarMessageView.m", + "src/components/Snackbar/src/private/MDCSnackbarOverlayView.h", + "src/components/Snackbar/src/private/MDCSnackbarOverlayView.m", + "src/components/Typography/src/MDCTypography.h", + "src/components/Typography/src/MDCTypography.m", + "src/components/Typography/src/MaterialTypography.h", + "src/components/private/Application/src/MaterialApplication.h", + "src/components/private/Application/src/UIApplication+AppExtensions.h", + "src/components/private/Application/src/UIApplication+AppExtensions.m", + "src/components/private/Icons/icons/ic_arrow_back/src/MaterialIcons+ic_arrow_back.h", + "src/components/private/Icons/icons/ic_arrow_back/src/MaterialIcons+ic_arrow_back.m", + "src/components/private/Icons/icons/ic_check/src/MaterialIcons+ic_check.h", + "src/components/private/Icons/icons/ic_check/src/MaterialIcons+ic_check.m", + "src/components/private/Icons/icons/ic_check_circle/src/MaterialIcons+ic_check_circle.h", + "src/components/private/Icons/icons/ic_check_circle/src/MaterialIcons+ic_check_circle.m", + "src/components/private/Icons/icons/ic_chevron_right/src/MaterialIcons+ic_chevron_right.h", + "src/components/private/Icons/icons/ic_chevron_right/src/MaterialIcons+ic_chevron_right.m", + "src/components/private/Icons/icons/ic_info/src/MaterialIcons+ic_info.h", + "src/components/private/Icons/icons/ic_info/src/MaterialIcons+ic_info.m", + "src/components/private/Icons/icons/ic_radio_button_unchecked/src/MaterialIcons+ic_radio_button_unchecked.h", + "src/components/private/Icons/icons/ic_radio_button_unchecked/src/MaterialIcons+ic_radio_button_unchecked.m", + "src/components/private/Icons/icons/ic_reorder/src/MaterialIcons+ic_reorder.h", + "src/components/private/Icons/icons/ic_reorder/src/MaterialIcons+ic_reorder.m", + "src/components/private/Icons/src/MDCIcons+BundleLoader.h", + "src/components/private/Icons/src/MDCIcons.h", + "src/components/private/Icons/src/MDCIcons.m", + "src/components/private/Icons/src/MaterialIcons.h", + "src/components/private/KeyboardWatcher/src/MDCKeyboardWatcher.h", + "src/components/private/KeyboardWatcher/src/MDCKeyboardWatcher.m", + "src/components/private/Overlay/src/MDCOverlayImplementor.h", + "src/components/private/Overlay/src/MDCOverlayObserver.h", + "src/components/private/Overlay/src/MDCOverlayObserver.m", + "src/components/private/Overlay/src/MDCOverlayTransitioning.h", + "src/components/private/Overlay/src/MaterialOverlays.h", + "src/components/private/Overlay/src/private/MDCOverlayAnimationObserver.h", + "src/components/private/Overlay/src/private/MDCOverlayAnimationObserver.m", + "src/components/private/Overlay/src/private/MDCOverlayObserverOverlay.h", + "src/components/private/Overlay/src/private/MDCOverlayObserverOverlay.m", + "src/components/private/Overlay/src/private/MDCOverlayObserverTransition.h", + "src/components/private/Overlay/src/private/MDCOverlayObserverTransition.m", + "src/components/private/Overlay/src/private/MDCOverlayUtilities.h", + "src/components/private/Overlay/src/private/MDCOverlayUtilities.m", + "src/components/private/RTL/src/MDCRTL.h", + "src/components/private/RTL/src/MDCRTL.m", + "src/components/private/RTL/src/MaterialRTL.h", + "src/components/private/RTL/src/UIImage+MaterialRTL.h", + "src/components/private/RTL/src/UIImage+MaterialRTL.m", + "src/components/private/RTL/src/UIView+MaterialRTL.h", + "src/components/private/RTL/src/UIView+MaterialRTL.m", + "src/components/private/ThumbTrack/src/MDCNumericValueLabel.h", + "src/components/private/ThumbTrack/src/MDCNumericValueLabel.m", + "src/components/private/ThumbTrack/src/MDCThumbTrack.h", + "src/components/private/ThumbTrack/src/MDCThumbTrack.m", + "src/components/private/ThumbTrack/src/MDCThumbView.h", + "src/components/private/ThumbTrack/src/MDCThumbView.m", + "src/components/private/ThumbTrack/src/MaterialThumbTrack.h", + ] + include_dirs = [ + "src/components/ActivityIndicator/src", + "src/components/AnimationTiming/src", + "src/components/AppBar/src", + "src/components/ButtonBar/src", + "src/components/NavigationBar/src", + "src/components/OverlayWindow/src", + "src/components/private/Application/src", + "src/components/private/Color/src", + "src/components/private/Icons/src", + "src/components/private/Icons/icons/ic_arrow_back/src", + "src/components/private/Icons/icons/ic_check/src", + "src/components/private/Icons/icons/ic_check_circle/src", + "src/components/private/Icons/icons/ic_chevron_right/src", + "src/components/private/Icons/icons/ic_info/src", + "src/components/private/Icons/icons/ic_radio_button_unchecked/src", + "src/components/private/Icons/icons/ic_reorder/src", + "src/components/private/KeyboardWatcher/src", + "src/components/private/Overlay/src", + "src/components/private/RTL/src", + "src/components/private/ThumbTrack/src", + ] + + libs = [ + "CoreGraphics.framework", + "CoreText.framework", + "QuartzCore.framework", + "UIKit.framework", + ] + + deps = [ + ":material_collections_bundle", + ":material_component_ic_arrow_back_bundle", + "//ios/third_party/material_text_accessibility_ios", + ] + + foreach(icon_name, _icon_names) { + deps += [ ":material_component_${icon_name}_bundle" ] + } + + public_configs = [ ":config" ] + + configs -= [ "//build/config/compiler:chromium_code" ] + configs += [ + ":config", + "//build/config/compiler:enable_arc", + "//build/config/compiler:no_chromium_code", + ] +} + +bundle_data("material_collections_bundle") { + visibility = [ ":material_components_ios" ] + sources = [ + "src/components/Collections/src/MaterialCollections.bundle/Resources/en.lproj/MaterialCollections.strings", + ] + outputs = [ + "{{bundle_root_dir}}/MaterialCollections.bundle/Resources/en.lproj/{{source_file_part}}", + ] +} + +# TODO(crbug.com/662421): Move back to _icon_names when there is just one +# resource. +bundle_data("material_component_ic_arrow_back_bundle") { + visibility = [ ":material_components_ios" ] + sources = [ + "src/components/private/Icons/icons/ic_arrow_back/src/MaterialIcons_ic_arrow_back.bundle/ic_arrow_back.png", + "src/components/private/Icons/icons/ic_arrow_back/src/MaterialIcons_ic_arrow_back.bundle/ic_arrow_back@2x.png", + "src/components/private/Icons/icons/ic_arrow_back/src/MaterialIcons_ic_arrow_back.bundle/ic_arrow_back@3x.png", + "src/components/private/Icons/icons/ic_arrow_back/src/MaterialIcons_ic_arrow_back.bundle/ic_arrow_back_ios.png", + "src/components/private/Icons/icons/ic_arrow_back/src/MaterialIcons_ic_arrow_back.bundle/ic_arrow_back_ios@2x.png", + "src/components/private/Icons/icons/ic_arrow_back/src/MaterialIcons_ic_arrow_back.bundle/ic_arrow_back_ios@3x.png", + ] + outputs = [ + "{{bundle_resources_dir}}/MaterialIcons_ic_arrow_back.bundle/" + + "{{source_file_part}}", + ] +} + +# Template to declare a bundle_data target to pack an icon bundle. +# +# Arguments: +# +# icon_name: +# string, short name of the icon without .bundle or .png extension. +# +template("material_component_icon_bundle") { + assert(defined(invoker.icon_name) && invoker.icon_name != "", + "icon_name must be defined for $target_name") + + _icon_name = invoker.icon_name + _icon_path = "src/components/private/Icons/icons/$_icon_name/src/" + + "MaterialIcons_$_icon_name.bundle/$_icon_name" + + bundle_data(target_name) { + forward_variables_from(invoker, + "*", + [ + "sources", + "outputs", + "icon_name", + ]) + sources = [ + "$_icon_path.png", + "$_icon_path@2x.png", + "$_icon_path@3x.png", + ] + outputs = [ + "{{bundle_resources_dir}}/MaterialIcons_$_icon_name.bundle/" + + "{{source_file_part}}", + ] + } +} + +foreach(icon_name, _icon_names) { + material_component_icon_bundle("material_component_${icon_name}_bundle") { + visibility = [ ":material_components_ios" ] + icon_name = "$icon_name" + } +} diff --git a/chromium/ios/third_party/material_font_disk_loader_ios/BUILD.gn b/chromium/ios/third_party/material_font_disk_loader_ios/BUILD.gn new file mode 100644 index 00000000000..4f9d914f8bf --- /dev/null +++ b/chromium/ios/third_party/material_font_disk_loader_ios/BUILD.gn @@ -0,0 +1,23 @@ +# 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. + +config("material_font_disk_loader_ios_config") { + include_dirs = [ "src/src" ] + visibility = [ ":material_font_disk_loader_ios" ] +} + +source_set("material_font_disk_loader_ios") { + sources = [ + "src/src/MDFFontDiskLoader.h", + "src/src/MDFFontDiskLoader.m", + "src/src/MaterialFontDiskLoader.h", + ] + public_configs = [ ":material_font_disk_loader_ios_config" ] + configs -= [ "//build/config/compiler:chromium_code" ] + configs += [ + ":material_font_disk_loader_ios_config", + "//build/config/compiler:enable_arc", + "//build/config/compiler:no_chromium_code", + ] +} diff --git a/chromium/ios/third_party/material_roboto_font_loader_ios/BUILD.gn b/chromium/ios/third_party/material_roboto_font_loader_ios/BUILD.gn new file mode 100644 index 00000000000..6a3dd76cdf2 --- /dev/null +++ b/chromium/ios/third_party/material_roboto_font_loader_ios/BUILD.gn @@ -0,0 +1,51 @@ +# 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. + +config("material_roboto_font_loader_ios_config") { + include_dirs = [ "src/src" ] + visibility = [ ":material_roboto_font_loader_ios" ] +} + +source_set("material_roboto_font_loader_ios") { + sources = [ + "src/src/MDCTypographyAdditions/MDFRobotoFontLoader+MDCTypographyAdditions.h", + "src/src/MDCTypographyAdditions/MDFRobotoFontLoader+MDCTypographyAdditions.m", + "src/src/MDFRobotoFontLoader.h", + "src/src/MDFRobotoFontLoader.m", + "src/src/MaterialRobotoFontLoader.h", + ] + deps = [ + ":material_roboto_font_loader_bundle", + "//ios/third_party/material_components_ios", + "//ios/third_party/material_font_disk_loader_ios", + ] + public_configs = [ ":material_roboto_font_loader_ios_config" ] + configs -= [ "//build/config/compiler:chromium_code" ] + configs += [ + ":material_roboto_font_loader_ios_config", + "//build/config/compiler:enable_arc", + "//build/config/compiler:no_chromium_code", + ] +} + +bundle_data("material_roboto_font_loader_bundle") { + visibility = [ ":material_roboto_font_loader_ios" ] + sources = [ + "src/src/MaterialRobotoFontLoader.bundle/Roboto-Black.ttf", + "src/src/MaterialRobotoFontLoader.bundle/Roboto-BlackItalic.ttf", + "src/src/MaterialRobotoFontLoader.bundle/Roboto-Bold.ttf", + "src/src/MaterialRobotoFontLoader.bundle/Roboto-BoldItalic.ttf", + "src/src/MaterialRobotoFontLoader.bundle/Roboto-Italic.ttf", + "src/src/MaterialRobotoFontLoader.bundle/Roboto-Light.ttf", + "src/src/MaterialRobotoFontLoader.bundle/Roboto-LightItalic.ttf", + "src/src/MaterialRobotoFontLoader.bundle/Roboto-Medium.ttf", + "src/src/MaterialRobotoFontLoader.bundle/Roboto-MediumItalic.ttf", + "src/src/MaterialRobotoFontLoader.bundle/Roboto-Regular.ttf", + "src/src/MaterialRobotoFontLoader.bundle/Roboto-Thin.ttf", + "src/src/MaterialRobotoFontLoader.bundle/Roboto-ThinItalic.ttf", + ] + outputs = [ + "{{bundle_resources_dir}}/MaterialRobotoFontLoader.bundle/{{source_file_part}}", + ] +} diff --git a/chromium/ios/third_party/material_sprited_animation_view_ios/BUILD.gn b/chromium/ios/third_party/material_sprited_animation_view_ios/BUILD.gn new file mode 100644 index 00000000000..eeb94fc69db --- /dev/null +++ b/chromium/ios/third_party/material_sprited_animation_view_ios/BUILD.gn @@ -0,0 +1,23 @@ +# 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. + +config("material_sprited_animation_view_ios_config") { + include_dirs = [ "src/src" ] + visibility = [ ":material_sprited_animation_view_ios" ] +} + +source_set("material_sprited_animation_view_ios") { + sources = [ + "src/src/MDFSpritedAnimationView.h", + "src/src/MDFSpritedAnimationView.m", + "src/src/MaterialSpritedAnimationView.h", + ] + public_configs = [ ":material_sprited_animation_view_ios_config" ] + configs -= [ "//build/config/compiler:chromium_code" ] + configs += [ + ":material_sprited_animation_view_ios_config", + "//build/config/compiler:enable_arc", + "//build/config/compiler:no_chromium_code", + ] +} diff --git a/chromium/ios/third_party/material_text_accessibility_ios/BUILD.gn b/chromium/ios/third_party/material_text_accessibility_ios/BUILD.gn index 72f0ead127c..c23b77797e2 100644 --- a/chromium/ios/third_party/material_text_accessibility_ios/BUILD.gn +++ b/chromium/ios/third_party/material_text_accessibility_ios/BUILD.gn @@ -19,10 +19,11 @@ source_set("material_text_accessibility_ios") { "src/src/private/NSArray+MDFUtils.h", "src/src/private/NSArray+MDFUtils.m", ] - public_configs = [ ":material_text_accessibility_ios_config" ] + configs -= [ "//build/config/compiler:chromium_code" ] configs += [ ":material_text_accessibility_ios_config", "//build/config/compiler:enable_arc", + "//build/config/compiler:no_chromium_code", ] } diff --git a/chromium/ios/web/BUILD.gn b/chromium/ios/web/BUILD.gn index d2b37d67358..f1bbde11346 100644 --- a/chromium/ios/web/BUILD.gn +++ b/chromium/ios/web/BUILD.gn @@ -7,6 +7,14 @@ import("//ios/web/js_compile.gni") import("//testing/test.gni") import("//tools/grit/grit_rule.gni") +group("all_tests") { + testonly = true + deps = [ + ":ios_web_inttests", + ":ios_web_unittests", + ] +} + source_set("web_arc") { deps = [ ":core", @@ -23,7 +31,7 @@ source_set("web_arc") { "//services/service_manager/public/cpp", "//ui/base", "//ui/gfx", - "//ui/gfx/geometry:geometry", + "//ui/gfx/geometry", "//ui/resources", "//url", ] @@ -31,8 +39,6 @@ source_set("web_arc") { sources = [ "active_state_manager_impl.h", "active_state_manager_impl.mm", - "alloc_with_zone_interceptor.h", - "alloc_with_zone_interceptor.mm", "browser_state.mm", "browser_url_rewriter_impl.h", "browser_url_rewriter_impl.mm", @@ -66,14 +72,6 @@ source_set("web_arc") { "net/cert_host_pair.h", "net/cert_policy.cc", "net/certificate_policy_cache.cc", - "net/clients/crw_js_injection_network_client.h", - "net/clients/crw_js_injection_network_client.mm", - "net/clients/crw_js_injection_network_client_factory.h", - "net/clients/crw_js_injection_network_client_factory.mm", - "net/clients/crw_redirect_network_client.h", - "net/clients/crw_redirect_network_client.mm", - "net/clients/crw_redirect_network_client_factory.h", - "net/clients/crw_redirect_network_client_factory.mm", "net/cookie_notification_bridge.h", "net/cookie_notification_bridge.mm", "net/crw_cert_verification_controller.h", @@ -118,7 +116,6 @@ source_set("web_arc") { "public/security_style.h", "public/ssl_status.cc", "public/ssl_status.h", - "public/string_util.h", "public/url_data_source_ios.h", "public/url_scheme_util.h", "public/url_schemes.h", @@ -143,6 +140,7 @@ source_set("web_arc") { "public/web_state/page_display_state.h", "public/web_state/page_display_state.mm", "public/web_state/ui/crw_content_view.h", + "public/web_state/ui/crw_context_menu_delegate.h", "public/web_state/ui/crw_generic_content_view.h", "public/web_state/ui/crw_native_content.h", "public/web_state/ui/crw_native_content_provider.h", @@ -166,13 +164,14 @@ source_set("web_arc") { "public/webui/web_ui_ios_controller_factory.h", "public/webui/web_ui_ios_message_handler.cc", "public/webui/web_ui_ios_message_handler.h", - "string_util.cc", "url_scheme_util.mm", "url_util.cc", "web_kit_constants.cc", "web_state/blocked_popup_info.h", "web_state/blocked_popup_info.mm", "web_state/context_menu_params.mm", + "web_state/context_menu_params_utils.h", + "web_state/context_menu_params_utils.mm", "web_state/credential.cc", "web_state/crw_pass_kit_downloader.h", "web_state/crw_pass_kit_downloader.mm", @@ -197,10 +196,14 @@ source_set("web_arc") { "web_state/js/page_script_util.mm", "web_state/page_viewport_state.h", "web_state/page_viewport_state.mm", + "web_state/ui/crw_context_menu_controller.h", + "web_state/ui/crw_context_menu_controller.mm", "web_state/ui/crw_generic_content_view.mm", "web_state/ui/crw_swipe_recognizer_provider.h", "web_state/ui/crw_touch_tracking_recognizer.h", "web_state/ui/crw_touch_tracking_recognizer.mm", + "web_state/ui/crw_wk_navigation_states.h", + "web_state/ui/crw_wk_navigation_states.mm", "web_thread_impl.cc", "web_thread_impl.h", "web_view_creation_util.mm", @@ -246,13 +249,14 @@ source_set("web") { "//components/url_formatter", "//ios/net", "//ios/third_party/blink:html_tokenizer", + "//ios/web/public/image_fetcher", "//mojo/public/cpp/system", "//mojo/public/js", "//net", "//services/service_manager/public/cpp", "//ui/base", "//ui/gfx", - "//ui/gfx/geometry:geometry", + "//ui/gfx/geometry", "//ui/resources", "//url", ] @@ -303,16 +307,15 @@ source_set("web") { } source_set("core") { + configs += [ "//build/config/compiler:enable_arc" ] deps = [ "//base", "//url", ] sources = [ - "crw_network_activity_indicator_manager.h", - "crw_network_activity_indicator_manager.mm", + "history_state_util.cc", "history_state_util.h", - "history_state_util.mm", ] } @@ -325,6 +328,8 @@ source_set("user_agent") { "public/user_agent.h", "public/user_agent.mm", ] + + configs += [ "//build/config/compiler:enable_arc" ] } source_set("earl_grey_test_support") { @@ -338,6 +343,7 @@ source_set("earl_grey_test_support") { "//ios/testing:ios_test_support", "//ios/testing/earl_grey:earl_grey_support", "//ios/third_party/earl_grey", + "//net", ] sources = [ @@ -360,23 +366,44 @@ source_set("test_support") { "//ios/testing:ios_test_support", "//ios/testing:ocmock_support", "//ios/third_party/gcdwebserver", + "//ios/web/public/image_fetcher", "//ios/web/test:mojo_bindings", "//net:test_support", "//testing/gmock", "//testing/gtest", "//third_party/ocmock", - "//ui/base:base", + "//ui/base", ] sources = [ - "public/test/crw_test_js_injection_receiver.h", - "public/test/crw_test_js_injection_receiver.mm", + "public/test/fakes/crw_test_js_injection_receiver.h", + "public/test/fakes/crw_test_js_injection_receiver.mm", + "public/test/fakes/test_browser_state.cc", + "public/test/fakes/test_browser_state.h", + "public/test/fakes/test_java_script_dialog_presenter.h", + "public/test/fakes/test_java_script_dialog_presenter.mm", + "public/test/fakes/test_native_content.h", + "public/test/fakes/test_native_content.mm", + "public/test/fakes/test_native_content_provider.h", + "public/test/fakes/test_native_content_provider.mm", + "public/test/fakes/test_navigation_manager.h", + "public/test/fakes/test_navigation_manager.mm", + "public/test/fakes/test_web_client.h", + "public/test/fakes/test_web_client.mm", + "public/test/fakes/test_web_state.h", + "public/test/fakes/test_web_state.mm", + "public/test/fakes/test_web_state_delegate.h", + "public/test/fakes/test_web_state_delegate.mm", + "public/test/fakes/test_web_view_content_view.h", + "public/test/fakes/test_web_view_content_view.mm", "public/test/http_server.h", "public/test/http_server.mm", "public/test/http_server_util.h", "public/test/http_server_util.mm", "public/test/js_test_util.h", "public/test/js_test_util.mm", + "public/test/mock_image_data_fetcher.h", + "public/test/mock_image_data_fetcher.mm", "public/test/native_controller_test_util.h", "public/test/native_controller_test_util.mm", "public/test/navigation_test_util.h", @@ -401,18 +428,10 @@ source_set("test_support") { "public/test/response_providers/string_response_provider.mm", "public/test/scoped_testing_web_client.h", "public/test/scoped_testing_web_client.mm", - "public/test/test_browser_state.cc", - "public/test/test_browser_state.h", "public/test/test_redirect_observer.h", "public/test/test_redirect_observer.mm", - "public/test/test_web_client.h", - "public/test/test_web_client.mm", - "public/test/test_web_state.h", - "public/test/test_web_state.mm", "public/test/test_web_thread.h", "public/test/test_web_thread_bundle.h", - "public/test/test_web_view_content_view.h", - "public/test/test_web_view_content_view.mm", "public/test/web_js_test.h", "public/test/web_test.h", "public/test/web_test.mm", @@ -473,8 +492,10 @@ test("ios_web_unittests") { ":web", "//base", "//base/test:test_support", + "//components/url_formatter", "//ios/net", "//ios/testing:ocmock_support", + "//ios/web/public/image_fetcher:unit_tests", "//ios/web/test:mojo_bindings", "//net:test_support", "//services/service_manager/public/cpp", @@ -486,9 +507,7 @@ test("ios_web_unittests") { sources = [ "active_state_manager_impl_unittest.mm", - "alloc_with_zone_interceptor_unittest.mm", "browser_state_unittest.cc", - "crw_network_activity_indicator_manager_unittest.mm", "history_state_util_unittest.mm", "navigation/crw_session_controller_unittest.mm", "navigation/crw_session_entry_unittest.mm", @@ -497,7 +516,6 @@ test("ios_web_unittests") { "navigation/nscoder_util_unittest.mm", "net/cert_host_pair_unittest.cc", "net/cert_policy_unittest.cc", - "net/clients/crw_js_injection_network_client_unittest.mm", "net/crw_cert_verification_controller_unittest.mm", "net/crw_ssl_status_updater_unittest.mm", "net/request_group_util_unittest.mm", @@ -507,10 +525,9 @@ test("ios_web_unittests") { "public/origin_util_unittest.mm", "public/referrer_util_unittest.cc", "public/web_state/page_viewport_state_unittest.mm", - "string_util_unittest.cc", - "test/crw_fake_web_controller_observer_unittest.mm", "url_scheme_util_unittest.mm", "url_util_unittest.cc", + "web_state/context_menu_params_utils_unittest.mm", "web_state/crw_pass_kit_downloader_unittest.mm", "web_state/crw_web_view_scroll_view_proxy_unittest.mm", "web_state/error_translation_util_unittest.mm", @@ -524,6 +541,7 @@ test("ios_web_unittests") { "web_state/ui/crw_web_controller_container_view_unittest.mm", "web_state/ui/crw_web_controller_observer_unittest.mm", "web_state/ui/crw_web_controller_unittest.mm", + "web_state/ui/crw_wk_navigation_states_unittest.mm", "web_state/ui/crw_wk_script_message_router_unittest.mm", "web_state/ui/web_view_js_utils_unittest.mm", "web_state/ui/wk_back_forward_list_item_holder_unittest.mm", @@ -548,7 +566,7 @@ test("ios_web_inttests") { ":test_support", ":web", "//base/test:test_support", - "//ios/public/provider/web", + "//ios/testing:http_server_bundle_data", "//ios/web/test:mojo_bindings", "//ios/web/test:packed_resources", "//ios/web/test:resources", @@ -560,6 +578,7 @@ test("ios_web_inttests") { ] sources = [ "browser_state_web_view_partition_inttest.mm", + "navigation/window_location_inttest.mm", "public/test/http_server_inttest.mm", "test/run_all_unittests.cc", "webui/web_ui_mojo_inttest.mm", @@ -577,7 +596,6 @@ js_compile_bundle("web_ui_bundle") { "webui/resources/web_ui_base.js", "webui/resources/web_ui_bind.js", "webui/resources/web_ui_bundle.js", - "webui/resources/web_ui_favicons.js", "webui/resources/web_ui_module_load_notifier.js", "webui/resources/web_ui_send.js", ] diff --git a/chromium/ios/web/public/app/BUILD.gn b/chromium/ios/web/public/app/BUILD.gn index 71cd249f3f2..0d512ff2e0c 100644 --- a/chromium/ios/web/public/app/BUILD.gn +++ b/chromium/ios/web/public/app/BUILD.gn @@ -10,12 +10,9 @@ source_set("app") { "web_main_runner.h", ] - public_deps = [ - "//ios/web/app", - ] - deps = [ "//base", + "//ios/web/app", ] configs += [ "//build/config/compiler:enable_arc" ] diff --git a/chromium/ios/chrome/browser/webp_transcode/BUILD.gn b/chromium/ios/web/public/image_fetcher/BUILD.gn index 499ec31ccb2..7c93ce1d42e 100644 --- a/chromium/ios/chrome/browser/webp_transcode/BUILD.gn +++ b/chromium/ios/web/public/image_fetcher/BUILD.gn @@ -2,26 +2,34 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -source_set("webp_transcode") { +source_set("image_fetcher") { + configs += [ "//build/config/compiler:enable_arc" ] sources = [ + "image_data_fetcher.h", + "image_data_fetcher.mm", "webp_decoder.h", "webp_decoder.mm", ] deps = [ "//base", + "//net", "//third_party/libwebp:libwebp_dec", ] } source_set("unit_tests") { + configs += [ "//build/config/compiler:enable_arc" ] testonly = true sources = [ + "image_data_fetcher_unittest.mm", "webp_decoder_unittest.mm", ] deps = [ - ":webp_transcode", + ":image_fetcher", ":webp_transcode_unit_tests_bundle_data", "//base", + "//net", + "//net:test_support", "//testing/gmock", "//testing/gtest", ] @@ -32,12 +40,12 @@ bundle_data("webp_transcode_unit_tests_bundle_data") { visibility = [ ":unit_tests" ] testonly = true sources = [ - "//ios/chrome/test/data/webp_transcode/test.jpg", - "//ios/chrome/test/data/webp_transcode/test.webp", - "//ios/chrome/test/data/webp_transcode/test_alpha.png", - "//ios/chrome/test/data/webp_transcode/test_alpha.webp", - "//ios/chrome/test/data/webp_transcode/test_small.tiff", - "//ios/chrome/test/data/webp_transcode/test_small.webp", + "//ios/web/test/data/webp_transcode/test.jpg", + "//ios/web/test/data/webp_transcode/test.webp", + "//ios/web/test/data/webp_transcode/test_alpha.png", + "//ios/web/test/data/webp_transcode/test_alpha.webp", + "//ios/web/test/data/webp_transcode/test_small.tiff", + "//ios/web/test/data/webp_transcode/test_small.webp", ] outputs = [ "{{bundle_resources_dir}}/{{source_root_relative_dir}}/" + diff --git a/chromium/ios/web/shell/test/BUILD.gn b/chromium/ios/web/shell/test/BUILD.gn index 150b03a0558..47e138e211c 100644 --- a/chromium/ios/web/shell/test/BUILD.gn +++ b/chromium/ios/web/shell/test/BUILD.gn @@ -5,7 +5,15 @@ import("//ios/build/config.gni") import("//ios/third_party/earl_grey/ios_eg_test.gni") +group("all_tests") { + testonly = true + deps = [ + ":ios_web_shell_egtests", + ] +} + ios_eg_test("ios_web_shell_egtests") { + info_plist = "//ios/web/shell/Info.plist" sources = [ "context_menu_egtest.mm", "meta_tags_egtest.mm", @@ -17,6 +25,7 @@ ios_eg_test("ios_web_shell_egtests") { ] deps = [ + ":earl_grey_test_support", "//base", "//base/test:test_support", "//ios/testing:ios_test_support", @@ -24,9 +33,8 @@ ios_eg_test("ios_web_shell_egtests") { "//ios/web:earl_grey_test_support", "//ios/web:test_support", "//ios/web/shell", - "//ios/web/shell/test:earl_grey_test_support", - "//net:net", - "//url:url", + "//net", + "//url", # All shared libraries must have the sanitizer deps to properly link in # asan mode (this target will be empty in other cases). |