diff --git a/android_flags.gn b/android_flags.gn index f37b58b..46cfa5e 100644 --- a/android_flags.gn +++ b/android_flags.gn @@ -3,17 +3,15 @@ android_ndk_root = "//third_party/android_ndk" android_ndk_version = "r20b" android_ndk_major_version = 20 android_sdk_build_tools_version="29.0.2" -android_sdk_tools_version_suffix="-26.2.0-dev" android_sdk_version=29 clang_base_path="/usr" disable_android_lint=true enable_gvr_services=false enable_resource_whitelist_generation=false -exclude_unwind_tables=true +enable_supervised_users=false ffmpeg_branding="Chrome" is_clang=true -manifest_merger_sdk_root = "//third_party/android_sdk/public" -manifest_merger_sdk_version = "-26.2.0-dev" rtc_build_examples=false target_os="android" +use_gnome_keyring=false use_sysroot=false diff --git a/android_flags.release.gn b/android_flags.release.gn index cb00a69..d4b71dc 100644 --- a/android_flags.release.gn +++ b/android_flags.release.gn @@ -4,6 +4,7 @@ disable_autofill_assistant_dfm=true disable_tab_ui_dfm=true enable_iterator_debugging=false enable_swiftshader=false +exclude_unwind_tables=true fatal_linker_warnings=false is_component_build=false is_debug=false diff --git a/build.sh b/build.sh index bcc6017..657180d 100755 --- a/build.sh +++ b/build.sh @@ -8,7 +8,7 @@ chrome_target=chrome_public_apk mono_target=monochrome_public_apk webview_target=system_webview_apk -chromium_version=81.0.4044.138 +chromium_version=83.0.4103.61 ungoogled_chromium_revision=1 # Argument parser from https://stackoverflow.com/questions/192249/how-do-i-parse-command-line-arguments-in-bash/29754866#29754866 @@ -195,6 +195,7 @@ mkdir platforms ln -s ../../../../../android-sdk/${SDK_DIR}/platforms/android-10 platforms/android-29 ln -s ../../../../android-sdk/${SDK_DIR}/platform-tools platform-tools ln -s ../../../../android-sdk/${SDK_DIR}/tools tools +#TODO: Regression: third_party/android_sdk/public/cmdline-tools doesn't yet have a rebuilt counterpart, so the folder needs to be copied manually from the synced source popd # remove ndk folders @@ -276,6 +277,11 @@ export NM=${NM:=llvm-nm} export CC=${CC:=clang} export CXX=${CXX:=clang++} +# Link to system clang tools +pushd src/buildtools/linux64 +ln -s /usr/bin/clang-format +popd + ## Build pushd src ninja -C out/Default $TARGET diff --git a/domain_sub_2.list b/domain_sub_2.list index cd3bb10..68a9b61 100644 --- a/domain_sub_2.list +++ b/domain_sub_2.list @@ -4,24 +4,32 @@ ./android_webview/java/src/org/chromium/android_webview/AwFirebaseConfig.java ./android_webview/java/src/org/chromium/android_webview/metrics/AwMetricsServiceClient.java ./android_webview/nonembedded/java/AndroidManifest.xml -./android_webview/nonembedded/java/src/org/chromium/android_webview/devui/CrashesListActivity.java +./android_webview/nonembedded/java/src/org/chromium/android_webview/devui/CrashesListFragment.java +./android_webview/nonembedded/java/src/org/chromium/android_webview/devui/MainActivity.java ./android_webview/nonembedded/java/src/org/chromium/android_webview/devui/WebViewPackageError.java ./android_webview/tools/system_webview_shell/apk/src/org/chromium/webview_shell/WebViewTracingActivity.java ./android_webview/tools/system_webview_shell/page_cycler/src/org/chromium/webview_shell/page_cycler/PageCyclerTest.java ./ash/BUILD.gn -./ash/laser/laser_pointer_view.cc +./ash/fast_ink/laser/laser_pointer_view.cc +./ash/login/security_token_request_controller.cc ./ash/login/ui/lock_contents_view.cc ./ash/multi_device_setup/multi_device_notification_presenter.cc ./ash/public/cpp/app_menu_constants.h +./ash/public/cpp/BUILD.gn ./ash/public/cpp/login_types.cc ./ash/public/cpp/login_types.h ./ash/public/mojom/BUILD.gn +./ash/quick_answers/quick_answers_controller_impl.cc +./ash/quick_answers/quick_answers_controller_impl.h +./ash/quick_answers/quick_answers_ui_controller.cc +./ash/quick_answers/ui/quick_answers_view.cc ./base/android/java/src/org/chromium/base/ApiCompatibilityUtils.java ./base/android/java/src/org/chromium/base/ApplicationStatus.java ./base/android/java/src/org/chromium/base/library_loader/LibraryLoader.java ./base/android/java/src/org/chromium/base/LifetimeAssert.java ./base/android/java/src/org/chromium/base/LocaleUtils.java -./base/android/java/src/org/chromium/base/metrics/RecordHistogram.java +./base/android/java/src/org/chromium/base/metrics/RecordUserAction.java +./base/android/java/src/org/chromium/base/metrics/UmaRecorderHolder.java ./base/android/java/src/org/chromium/base/metrics/UmaRecorder.java ./base/android/java/src/org/chromium/base/PathUtils.java ./base/android/java/src/org/chromium/base/StrictModeContext.java @@ -62,7 +70,6 @@ ./build/linux/unbundle/zlib.gn ./build/toolchain/clang_code_coverage_wrapper.py ./build/toolchain/cros_toolchain.gni -./build/toolchain/gcc_toolchain.gni ./buildtools/checkdeps/graphdeps.py ./buildtools/third_party/eu-strip/elfutils/backends/linux-core-note.c ./buildtools/third_party/eu-strip/elfutils/backends/x86_64_corenote.c @@ -82,20 +89,15 @@ ./chrome/android/features/autofill_assistant/BUILD.gn ./chrome/android/features/autofill_assistant/java/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantClient.java ./chrome/android/features/autofill_assistant/java/src/org/chromium/chrome/browser/autofill_assistant/carousel/AssistantChip.java -./chrome/android/features/autofill_assistant/javatests/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantCollectUserDataIntegrationTest.java -./chrome/android/features/autofill_assistant/javatests/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantCollectUserDataTestHelper.java -./chrome/android/features/autofill_assistant/javatests/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantCollectUserDataUiTest.java -./chrome/android/features/autofill_assistant/javatests/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantFormActionTest.java -./chrome/android/features/autofill_assistant/javatests/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantPersonalDataManagerTest.java +./chrome/android/features/cablev2_authenticator/internal/java/src/org/chromium/chrome/browser/webauth/authenticator/BLEHandler.java +./chrome/android/features/cablev2_authenticator/internal/java/src/org/chromium/chrome/browser/webauth/authenticator/CableAuthenticatorUI.java +./chrome/android/features/cablev2_authenticator/internal/java/src/org/chromium/chrome/browser/webauth/authenticator/CameraView.java +./chrome/android/features/cablev2_authenticator/internal/java/src/org/chromium/chrome/browser/webauth/authenticator/QRScanDialog.java ./chrome/android/features/dev_ui/BUILD.gn ./chrome/android/features/keyboard_accessory/internal/BUILD.gn -./chrome/android/features/keyboard_accessory/javatests/src/org/chromium/chrome/browser/keyboard_accessory/ManualFillingTestHelper.java -./chrome/android/features/keyboard_accessory/javatests/src/org/chromium/chrome/browser/keyboard_accessory/sheet_tabs/AddressAccessorySheetViewTest.java -./chrome/android/features/keyboard_accessory/javatests/src/org/chromium/chrome/browser/keyboard_accessory/sheet_tabs/PasswordAccessoryIntegrationTest.java ./chrome/android/features/media_router/BUILD.gn ./chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/MediaStatusBridge.java ./chrome/android/features/start_surface/internal/BUILD.gn -./chrome/android/features/start_surface/internal/javatests/src/org/chromium/chrome/features/start_surface/StartSurfaceLayoutTest.java ./chrome/android/features/tab_ui/BUILD.gn ./chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/pseudotab/TabAttributeCacheUnitTest.java ./chrome/android/features/tab_ui/junit/src/org/chromium/chrome/browser/tasks/tab_management/TabGridDialogMediatorUnitTest.java @@ -109,31 +111,30 @@ ./chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/library/hostimpl/storage/PersistentJournalStorage.java ./chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/library/piet/ui/GradientShader.java ./chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/library/testing/conformance/network/NetworkClientConformanceTest.java -./chrome/android/feed/core/javatests/src/org/chromium/chrome/browser/feed/FeedConfigurationTest.java -./chrome/android/feed/core/javatests/src/org/chromium/chrome/browser/feed/FeedNetworkBridgeConformanceTest.java -./chrome/android/feed/core/javatests/src/org/chromium/chrome/browser/feed/library/basicstream/internal/actions/StreamActionApiImplTest.java -./chrome/android/feed/core/javatests/src/org/chromium/chrome/browser/feed/library/basicstream/internal/drivers/ContentDriverTest.java -./chrome/android/feed/core/javatests/src/org/chromium/chrome/browser/feed/library/feedactionparser/FeedActionParserTest.java -./chrome/android/feed/core/javatests/src/org/chromium/chrome/browser/feed/library/sharedstream/offlinemonitor/StreamOfflineMonitorTest.java +./chrome/android/java_sources.gni +./chrome/android/java/src/org/chromium/chrome/browser/AppHooks.java +./chrome/android/java/src/org/chromium/chrome/browser/background_sync/BackgroundSyncPwaDetector.java ./chrome/android/java/src/org/chromium/chrome/browser/browserservices/ClientAppBroadcastReceiver.java ./chrome/android/java/src/org/chromium/chrome/browser/browserservices/Relationship.java ./chrome/android/java/src/org/chromium/chrome/browser/browserservices/trustedwebactivityui/controller/Verifier.java +./chrome/android/java/src/org/chromium/chrome/browser/browsing_data/ClearBrowsingDataTabsFragment.java ./chrome/android/java/src/org/chromium/chrome/browser/ChromeApplication.java ./chrome/android/java/src/org/chromium/chrome/browser/ChromeStringConstants.java ./chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java ./chrome/android/java/src/org/chromium/chrome/browser/compositor/CompositorSurfaceManagerImpl.java ./chrome/android/java/src/org/chromium/chrome/browser/compositor/CompositorViewHolder.java +./chrome/android/java/src/org/chromium/chrome/browser/contextmenu/RevampedContextMenuHeaderCoordinator.java ./chrome/android/java/src/org/chromium/chrome/browser/crash/FirebaseConfig.java ./chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomButtonParams.java ./chrome/android/java/src/org/chromium/chrome/browser/customtabs/features/ImmersiveModeController.java +./chrome/android/java/src/org/chromium/chrome/browser/device_dialog/BluetoothChooserDialog.java +./chrome/android/java/src/org/chromium/chrome/browser/device_dialog/BluetoothScanningPermissionDialog.java +./chrome/android/java/src/org/chromium/chrome/browser/device_dialog/UsbChooserDialog.java ./chrome/android/java/src/org/chromium/chrome/browser/directactions/ChromeDirectActionIds.java ./chrome/android/java/src/org/chromium/chrome/browser/directactions/DirectActionCoordinator.java -./chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationHandler.java -./chrome/android/java/src/org/chromium/chrome/browser/favicon/RoundedIconGenerator.java ./chrome/android/java/src/org/chromium/chrome/browser/feedback/ConnectivityChecker.java ./chrome/android/java/src/org/chromium/chrome/browser/help/HelpAndFeedback.java ./chrome/android/java/src/org/chromium/chrome/browser/infobar/InfoBarContainerLayout.java -./chrome/android/java/src/org/chromium/chrome/browser/infobar/InfoBarLayout.java ./chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java ./chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java ./chrome/android/java/src/org/chromium/chrome/browser/metrics/UkmRecorder.java @@ -145,15 +146,17 @@ ./chrome/android/java/src/org/chromium/chrome/browser/omaha/OmahaBase.java ./chrome/android/java/src/org/chromium/chrome/browser/omaha/RequestGenerator.java ./chrome/android/java/src/org/chromium/chrome/browser/omaha/ResponseParser.java +./chrome/android/java/src/org/chromium/chrome/browser/omnibox/ChromeAutocompleteSchemeClassifier.java ./chrome/android/java/src/org/chromium/chrome/browser/omnibox/geo/GeolocationHeader.java ./chrome/android/java/src/org/chromium/chrome/browser/omnibox/geo/partner_location_descriptor.proto -./chrome/android/java/src/org/chromium/chrome/browser/omnibox/OmniboxUrlEmphasizer.java ./chrome/android/java/src/org/chromium/chrome/browser/omnibox/suggestions/answer/AnswerSuggestionProcessor.java ./chrome/android/java/src/org/chromium/chrome/browser/omnibox/suggestions/answer/AnswerText.java ./chrome/android/java/src/org/chromium/chrome/browser/omnibox/suggestions/answer/AnswerTextNewLayout.java ./chrome/android/java/src/org/chromium/chrome/browser/omnibox/suggestions/basic/SuggestionViewProperties.java ./chrome/android/java/src/org/chromium/chrome/browser/omnibox/suggestions/entity/EntitySuggestionProcessor.java ./chrome/android/java/src/org/chromium/chrome/browser/page_info/ConnectionInfoPopup.java +./chrome/android/java/src/org/chromium/chrome/browser/page_info/PageInfoController.java +./chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/ExportFlow.java ./chrome/android/java/src/org/chromium/chrome/browser/payments/AndroidPaymentAppFinder.java ./chrome/android/java/src/org/chromium/chrome/browser/payments/AndroidPaymentApp.java ./chrome/android/java/src/org/chromium/chrome/browser/payments/AutofillPaymentAppFactory.java @@ -162,16 +165,17 @@ ./chrome/android/java/src/org/chromium/chrome/browser/payments/PaymentRequestImpl.java ./chrome/android/java/src/org/chromium/chrome/browser/payments/SkipToGPayHelper.java ./chrome/android/java/src/org/chromium/chrome/browser/payments/ui/DimmingDialog.java +./chrome/android/java/src/org/chromium/chrome/browser/payments/ui/PaymentRequestHeader.java ./chrome/android/java/src/org/chromium/chrome/browser/payments/ui/PaymentRequestUI.java -./chrome/android/java/src/org/chromium/chrome/browser/settings/password/ExportFlow.java -./chrome/android/java/src/org/chromium/chrome/browser/settings/privacy/ClearBrowsingDataTabsFragment.java -./chrome/android/java/src/org/chromium/chrome/browser/settings/search_engine/SearchEngineAdapter.java -./chrome/android/java/src/org/chromium/chrome/browser/settings/sync/SyncSettingsUtils.java +./chrome/android/java/src/org/chromium/chrome/browser/search_engines/settings/SearchEngineAdapter.java +./chrome/android/java/src/org/chromium/chrome/browser/share/ShareSheetPropertyModelBuilder.java ./chrome/android/java/src/org/chromium/chrome/browser/ShortcutHelper.java ./chrome/android/java/src/org/chromium/chrome/browser/suggestions/SuggestionsConfig.java ./chrome/android/java/src/org/chromium/chrome/browser/suggestions/SuggestionsNavigationDelegate.java ./chrome/android/java/src/org/chromium/chrome/browser/sync/GoogleServiceAuthError.java +./chrome/android/java/src/org/chromium/chrome/browser/sync/settings/SyncSettingsUtils.java ./chrome/android/java/src/org/chromium/chrome/browser/tab/TabState.java +./chrome/android/java/src/org/chromium/chrome/browser/toolbar/LocationBarModel.java ./chrome/android/java/src/org/chromium/chrome/browser/toolbar/top/CustomTabToolbar.java ./chrome/android/java/src/org/chromium/chrome/browser/upgrade/PackageReplacedBroadcastReceiver.java ./chrome/android/java/src/org/chromium/chrome/browser/vr/ArCoreShim.java @@ -181,6 +185,7 @@ ./chrome/android/junit/src/org/chromium/chrome/browser/firstrun/FirstRunFlowSequencerTest.java ./chrome/android/junit/src/org/chromium/chrome/browser/firstrun/ToSAckedReceiverTest.java ./chrome/android/junit/src/org/chromium/chrome/browser/native_page/NativePageFactoryTest.java +./chrome/android/junit/src/org/chromium/chrome/browser/night_mode/NightModeReparentingControllerTest.java ./chrome/android/junit/src/org/chromium/chrome/browser/offlinepages/CctOfflinePageModelObserverTest.java ./chrome/android/junit/src/org/chromium/chrome/browser/omaha/ResponseParserTest.java ./chrome/android/junit/src/org/chromium/chrome/browser/omnibox/AutocompleteEditTextTest.java @@ -204,7 +209,7 @@ ./chrome/android/junit/src/org/chromium/chrome/browser/webapps/WebappLauncherActivityTest.java ./chrome/android/junit/src/org/chromium/chrome/browser/webapps/WebappRegistryTest.java ./chrome/android/modules/chrome_bundle_tmpl.gni -./chrome/android/native_java_unittests/src/org/chromium/chrome/browser/util/UrlUtilitiesUnitTest.java +./chrome/android/native_java_unittests/src/org/chromium/chrome/browser/payments/AndroidPaymentAppFinderUnitTest.java ./chrome/android/webapk/libs/client/junit/src/org/chromium/webapk/lib/client/WebApkValidatorTest.java ./chrome/android/webapk/libs/client/src/org/chromium/webapk/lib/client/WebApkValidator.java ./chrome/android/webapk/libs/common/src/org/chromium/webapk/lib/common/WebApkMetaDataUtils.java @@ -223,7 +228,6 @@ ./chrome/app/chrome_main_delegate.cc ./chrome/app/chrome_main_delegate.h ./chrome/app/chrome_main_mac.mm -./chrome/app/chrome_watcher_command_line_win.cc ./chrome/app/main_dll_loader_win.cc ./chrome/app/PRESUBMIT.py ./chrome/app/resources/BUILD.gn @@ -255,8 +259,6 @@ ./chrome/browser/android/compositor/layer/content_layer.h ./chrome/browser/android/compositor/layer/contextual_search_layer.cc ./chrome/browser/android/compositor/layer/contextual_search_layer.h -./chrome/browser/android/compositor/layer/ephemeral_tab_layer.cc -./chrome/browser/android/compositor/layer/ephemeral_tab_layer.h ./chrome/browser/android/compositor/layer/overlay_panel_layer.cc ./chrome/browser/android/compositor/layer/overlay_panel_layer.h ./chrome/browser/android/compositor/layer/tabgroup_content_layer.cc @@ -277,8 +279,6 @@ ./chrome/browser/android/compositor/resources/toolbar_resource.cc ./chrome/browser/android/compositor/scene_layer/contextual_search_scene_layer.cc ./chrome/browser/android/compositor/scene_layer/contextual_search_scene_layer.h -./chrome/browser/android/compositor/scene_layer/ephemeral_tab_scene_layer.cc -./chrome/browser/android/compositor/scene_layer/ephemeral_tab_scene_layer.h ./chrome/browser/android/compositor/scene_layer/scene_layer.cc ./chrome/browser/android/compositor/scene_layer/scrolling_bottom_view_scene_layer.cc ./chrome/browser/android/compositor/scene_layer/scrolling_bottom_view_scene_layer.h @@ -300,8 +300,8 @@ ./chrome/browser/android/explore_sites/explore_sites_service_factory.cc ./chrome/browser/android/explore_sites/history_statistics_reporter.cc ./chrome/browser/android/explore_sites/most_visited_client.cc -./chrome/browser/android/feature_utilities.cc ./chrome/browser/android/feed/feed_host_service_factory.cc +./chrome/browser/android/feed/v2/feed_service_factory.cc ./chrome/browser/android/foreign_session_helper.cc ./chrome/browser/android/metrics/uma_session_stats.cc ./chrome/browser/android/ntp/new_tab_page_url_handler.cc @@ -311,7 +311,6 @@ ./chrome/browser/android/preferences/clipboard_android.cc ./chrome/browser/android/preferences/prefs.h ./chrome/browser/android/preferences/privacy_preferences_manager.cc -./chrome/browser/android/preferences/website_preference_bridge.cc ./chrome/browser/android/search_permissions/search_geolocation_disclosure_infobar_delegate.cc ./chrome/browser/android/search_permissions/search_geolocation_disclosure_tab_helper.cc ./chrome/browser/android/search_permissions/search_permissions_service.cc @@ -333,9 +332,7 @@ ./chrome/browser/android/webapk/webapk_installer.cc ./chrome/browser/android/webapps/add_to_homescreen_data_fetcher.cc ./chrome/browser/android/webapps/add_to_homescreen_data_fetcher.h -./chrome/browser/app_controller_mac_browsertest.mm ./chrome/browser/app_controller_mac.mm -./chrome/browser/app_controller_mac_unittest.mm ./chrome/browser/app_mode/app_mode_utils.cc ./chrome/browser/apps/app_service/app_icon_source.cc ./chrome/browser/apps/app_service/app_service_metrics.cc @@ -343,23 +340,22 @@ ./chrome/browser/apps/app_service/app_service_proxy_factory.cc ./chrome/browser/apps/app_service/arc_apps.cc ./chrome/browser/apps/app_service/arc_apps_factory.cc +./chrome/browser/apps/app_service/browser_app_launcher.cc +./chrome/browser/apps/app_service/crostini_apps.cc ./chrome/browser/apps/app_service/extension_apps.cc +./chrome/browser/apps/app_service/launch_utils.cc +./chrome/browser/apps/app_service/menu_util.cc ./chrome/browser/apps/app_service/web_apps.cc -./chrome/browser/apps/app_shim/app_shim_host_bootstrap_mac.cc ./chrome/browser/apps/app_shim/app_shim_host_bootstrap_mac.h ./chrome/browser/apps/app_shim/app_shim_host_mac.cc ./chrome/browser/apps/app_shim/app_shim_host_mac.h -./chrome/browser/apps/app_shim/app_shim_interactive_uitest_mac.mm ./chrome/browser/apps/app_shim/app_shim_listener_browsertest_mac.mm ./chrome/browser/apps/app_shim/app_shim_listener.mm -./chrome/browser/apps/app_shim/app_shim_quit_interactive_uitest_mac.mm ./chrome/browser/apps/app_shim/app_shim_termination_manager.cc ./chrome/browser/apps/app_shim/BUILD.gn -./chrome/browser/apps/app_shim/extension_app_shim_handler_mac.cc ./chrome/browser/apps/app_shim/mach_bootstrap_acceptor.cc ./chrome/browser/apps/intent_helper/apps_navigation_throttle.cc ./chrome/browser/apps/launch_service/extension_app_launch_manager.cc -./chrome/browser/apps/launch_service/launch_manager.cc ./chrome/browser/apps/launch_service/launch_service.cc ./chrome/browser/apps/platform_apps/api/arc_apps_private/arc_apps_private_api.cc ./chrome/browser/apps/platform_apps/api/browser/browser_api.cc @@ -375,7 +371,10 @@ ./chrome/browser/apps/platform_apps/api/webstore_widget_private/app_installer.cc ./chrome/browser/apps/platform_apps/api/webstore_widget_private/webstore_widget_private_api.cc ./chrome/browser/apps/platform_apps/api/webstore_widget_private/webstore_widget_private_api.h +./chrome/browser/apps/platform_apps/app_shim_interactive_uitest_mac.mm +./chrome/browser/apps/platform_apps/app_shim_quit_interactive_uitest_mac.mm ./chrome/browser/apps/platform_apps/BUILD.gn +./chrome/browser/apps/platform_apps/extension_app_shim_manager_delegate_mac.cc ./chrome/browser/apps/platform_apps/install_chrome_app.cc ./chrome/browser/apps/platform_apps/platform_app_launch.cc ./chrome/browser/apps/platform_apps/platform_app_navigation_redirector.cc @@ -405,6 +404,7 @@ ./chrome/browser/browser_process_impl.cc ./chrome/browser/browser_process_impl.h ./chrome/browser/browser_process_platform_part_chromeos.cc +./chrome/browser/browser_process_platform_part_mac.mm ./chrome/browser/browser_switcher/browser_switcher_navigation_throttle.cc ./chrome/browser/browsing_data/browsing_data_history_observer_service.cc ./chrome/browser/browsing_data/browsing_data_quota_helper_impl.cc @@ -423,6 +423,7 @@ ./chrome/browser/chrome_browser_main_android.cc ./chrome/browser/chrome_browser_main.cc ./chrome/browser/chrome_browser_main_extra_parts_x11.cc +./chrome/browser/chrome_browser_main.h ./chrome/browser/chrome_browser_main_linux.cc ./chrome/browser/chrome_browser_main_mac.mm ./chrome/browser/chrome_browser_main_win.cc @@ -474,6 +475,7 @@ ./chrome/browser/chromeos/arc/tracing/arc_tracing_graphics_model.cc ./chrome/browser/chromeos/attestation/platform_verification_dialog.cc ./chrome/browser/chromeos/attestation/tpm_challenge_key.cc +./chrome/browser/chromeos/attestation/tpm_challenge_key_subtle.cc ./chrome/browser/chromeos/authpolicy/authpolicy_credentials_manager.cc ./chrome/browser/chromeos/authpolicy/kerberos_files_handler.cc ./chrome/browser/chromeos/backdrop_wallpaper_handlers/backdrop_wallpaper_handlers.cc @@ -481,14 +483,20 @@ ./chrome/browser/chromeos/boot_times_recorder.cc ./chrome/browser/chromeos/BUILD.gn ./chrome/browser/chromeos/certificate_provider/certificate_provider_service_factory.cc +./chrome/browser/chromeos/certificate_provider/pin_dialog_manager.h +./chrome/browser/chromeos/certificate_provider/security_token_pin_dialog_host.h ./chrome/browser/chromeos/certificate_provider/test_certificate_provider_extension.cc ./chrome/browser/chromeos/certificate_provider/test_certificate_provider_extension_login_screen_mixin.cc +./chrome/browser/chromeos/cert_provisioning/cert_provisioning_common.cc ./chrome/browser/chromeos/child_accounts/child_status_reporting_service.cc ./chrome/browser/chromeos/child_accounts/parent_access_code/config_source.cc ./chrome/browser/chromeos/child_accounts/parent_access_code/parent_access_service.cc ./chrome/browser/chromeos/child_accounts/screen_time_controller.cc +./chrome/browser/chromeos/child_accounts/time_limits/app_activity_registry.cc ./chrome/browser/chromeos/child_accounts/time_limits/app_time_controller.cc +./chrome/browser/chromeos/child_accounts/time_limits/app_time_limit_utils.cc ./chrome/browser/chromeos/child_accounts/time_limits/web_time_limit_enforcer.cc +./chrome/browser/chromeos/child_accounts/time_limits/web_time_limit_navigation_throttle.cc ./chrome/browser/chromeos/chrome_browser_main_chromeos.cc ./chrome/browser/chromeos/chrome_content_browser_client_chromeos_part.cc ./chrome/browser/chromeos/crostini/ansible/ansible_management_test_helper.cc @@ -521,6 +529,7 @@ ./chrome/browser/chromeos/extensions/default_app_order.cc ./chrome/browser/chromeos/extensions/dictionary_event_router.cc ./chrome/browser/chromeos/extensions/echo_private_api.cc +./chrome/browser/chromeos/extensions/extensions_permissions_tracker.cc ./chrome/browser/chromeos/extensions/extension_tab_util_delegate_chromeos.cc ./chrome/browser/chromeos/extensions/file_manager/device_event_router.h ./chrome/browser/chromeos/extensions/file_manager/drivefs_event_router.cc @@ -693,6 +702,7 @@ ./chrome/browser/chromeos/login/screens/user_selection_screen.h ./chrome/browser/chromeos/login/screens/welcome_screen.cc ./chrome/browser/chromeos/login/session/chrome_session_manager.cc +./chrome/browser/chromeos/login/session/user_session_initializer.cc ./chrome/browser/chromeos/login/session/user_session_manager.cc ./chrome/browser/chromeos/login/signin/merge_session_throttling_utils.cc ./chrome/browser/chromeos/login/signin/oauth2_token_initializer.cc @@ -707,12 +717,12 @@ ./chrome/browser/chromeos/login/users/chrome_user_manager_impl.cc ./chrome/browser/chromeos/login/users/multi_profile_user_controller.cc ./chrome/browser/chromeos/login/wizard_controller.cc +./chrome/browser/chromeos/net/network_pref_state_observer.cc ./chrome/browser/chromeos/net/network_throttling_observer.cc ./chrome/browser/chromeos/note_taking_helper.cc ./chrome/browser/chromeos/platform_keys/key_permissions.cc ./chrome/browser/chromeos/plugin_vm/plugin_vm_test_helper.cc ./chrome/browser/chromeos/plugin_vm/plugin_vm_util.cc -./chrome/browser/chromeos/policy/affiliated_invalidation_service_provider_impl.cc ./chrome/browser/chromeos/policy/affiliation_test_helper.cc ./chrome/browser/chromeos/policy/app_install_event_log_collector.cc ./chrome/browser/chromeos/policy/app_install_event_log_manager_wrapper.cc @@ -749,11 +759,14 @@ ./chrome/browser/chromeos/printing/calculators_policies_binder.cc ./chrome/browser/chromeos/printing/cups_printers_manager.cc ./chrome/browser/chromeos/printing/cups_print_job_notification.cc +./chrome/browser/chromeos/printing/cups_proxy_service_delegate_impl.cc ./chrome/browser/chromeos/printing/cups_proxy_service_manager.cc ./chrome/browser/chromeos/printing/enterprise_printers_provider.cc ./chrome/browser/chromeos/printing/history/print_job_history_cleaner.cc ./chrome/browser/chromeos/printing/history/print_job_history_service.cc ./chrome/browser/chromeos/printing/printer_configurer.cc +./chrome/browser/chromeos/printing/print_management/printing_manager.h +./chrome/browser/chromeos/printing/print_management/print_job_info_mojom_conversions.h ./chrome/browser/chromeos/printing/print_servers_provider.cc ./chrome/browser/chromeos/printing/synced_printers_manager.cc ./chrome/browser/chromeos/printing/synced_printers_manager_factory.cc @@ -764,10 +777,10 @@ ./chrome/browser/chromeos/scheduler_configuration_manager.cc ./chrome/browser/chromeos/session_length_limiter.cc ./chrome/browser/chromeos/set_time_dialog.cc -./chrome/browser/chromeos/settings/device_oauth2_token_service.cc ./chrome/browser/chromeos/settings/device_settings_cache.cc ./chrome/browser/chromeos/settings/owner_flags_storage.cc ./chrome/browser/chromeos/smb_client/smbfs_share.h +./chrome/browser/chromeos/smb_client/smb_persisted_share_registry.cc ./chrome/browser/chromeos/smb_client/smb_provider.cc ./chrome/browser/chromeos/smb_client/smb_service.cc ./chrome/browser/chromeos/smb_client/smb_service_factory.cc @@ -787,20 +800,28 @@ ./chrome/browser/chromeos/tpm_firmware_update.cc ./chrome/browser/chromeos/tpm_firmware_update_notification.cc ./chrome/browser/chromeos/ui/low_disk_notification.cc +./chrome/browser/chromeos/ui/request_pin_view.cc +./chrome/browser/chromeos/ui/request_pin_view.h ./chrome/browser/chromeos/ui/tpm_auto_update_notification.cc ./chrome/browser/chromeos/usb/cros_usb_detector.cc +./chrome/browser/chromeos/web_applications/chrome_help_app_ui_delegate.cc +./chrome/browser/chromeos/web_applications/chrome_help_app_ui_delegate.h +./chrome/browser/chromeos/web_applications/chrome_media_app_ui_delegate.cc +./chrome/browser/chromeos/web_applications/chrome_media_app_ui_delegate.h +./chrome/browser/chromeos/web_applications/terminal_source.cc +./chrome/browser/chromeos/web_applications/terminal_source.h ./chrome/browser/chromeos/wilco_dtc_supportd/wilco_dtc_supportd_client.cc ./chrome/browser/chrome_resource_bundle_helper.cc ./chrome/browser/client_hints/client_hints.cc ./chrome/browser/clipboard/clipboard_read_write_permission_context.cc ./chrome/browser/component_updater/chrome_component_updater_configurator.cc ./chrome/browser/component_updater/component_updater_prefs.cc -./chrome/browser/component_updater/file_type_policies_component_installer.cc ./chrome/browser/component_updater/games_component_installer.cc ./chrome/browser/component_updater/origin_trials_component_installer.cc ./chrome/browser/component_updater/pepper_flash_component_installer.cc ./chrome/browser/component_updater/pnacl_component_installer.cc ./chrome/browser/component_updater/recovery_component_installer.cc +./chrome/browser/component_updater/registration.cc ./chrome/browser/component_updater/soda_component_installer.cc ./chrome/browser/component_updater/supervised_user_whitelist_installer.cc ./chrome/browser/component_updater/widevine_cdm_component_installer.cc @@ -820,7 +841,10 @@ ./chrome/browser/data_reduction_proxy/data_reduction_proxy_chrome_settings.cc ./chrome/browser/data_reduction_proxy/data_reduction_proxy_settings_android.cc ./chrome/browser/data_reduction_proxy/data_reduction_proxy_settings_unittest_android.cc +./chrome/browser/device_identity/chromeos/device_oauth2_token_store_chromeos.cc +./chrome/browser/device_identity/device_oauth2_token_store_desktop.cc ./chrome/browser/devtools/BUILD.gn +./chrome/browser/devtools/chrome_devtools_manager_delegate.cc ./chrome/browser/devtools/device/devtools_android_bridge.cc ./chrome/browser/devtools/device/port_forwarding_controller.cc ./chrome/browser/devtools/device/usb/android_rsa.cc @@ -838,6 +862,9 @@ ./chrome/browser/domain_reliability/service_factory.cc ./chrome/browser/dom_distiller/profile_utils.cc ./chrome/browser/downgrade/downgrade_manager.cc +./chrome/browser/downgrade/downgrade_prefs.cc +./chrome/browser/downgrade/snapshot_file_collector.cc +./chrome/browser/downgrade/snapshot_manager.cc ./chrome/browser/downgrade/user_data_downgrade.cc ./chrome/browser/download/android/available_offline_content_provider.cc ./chrome/browser/download/android/available_offline_content_provider.h @@ -846,30 +873,25 @@ ./chrome/browser/download/chrome_download_manager_delegate.cc ./chrome/browser/download/default_download_dir_policy_handler.cc ./chrome/browser/download/download_commands.cc -./chrome/browser/download/download_danger_prompt.cc ./chrome/browser/download/download_dir_policy_handler.cc -./chrome/browser/download/download_item_model.h ./chrome/browser/download/download_prefs.cc ./chrome/browser/download/download_service_factory.cc ./chrome/browser/download/download_status_updater_linux.cc ./chrome/browser/download/download_target_determiner.cc -./chrome/browser/download/download_target_determiner.h -./chrome/browser/download/download_target_info.cc -./chrome/browser/download/download_target_info.h ./chrome/browser/download/download_ui_model.cc -./chrome/browser/download/download_ui_model.h ./chrome/browser/download/mixed_content_download_blocking.cc ./chrome/browser/download/notification/download_item_notification.cc ./chrome/browser/download/save_package_file_picker.cc ./chrome/browser/download/trusted_sources_manager.cc ./chrome/browser/engagement/important_sites_util.cc ./chrome/browser/engagement/site_engagement_service.cc -./chrome/browser/enterprise_reporting/browser_report_generator.cc -./chrome/browser/enterprise_reporting/extension_info.cc -./chrome/browser/enterprise_reporting/notification/extension_request_observer.cc -./chrome/browser/enterprise_reporting/prefs.cc -./chrome/browser/enterprise_reporting/profile_report_generator.cc -./chrome/browser/enterprise_reporting/report_scheduler.cc +./chrome/browser/enterprise/reporting/browser_report_generator.cc +./chrome/browser/enterprise/reporting/extension_info.cc +./chrome/browser/enterprise/reporting/extension_request_policy_handler.cc +./chrome/browser/enterprise/reporting/notification/extension_request_observer.cc +./chrome/browser/enterprise/reporting/prefs.cc +./chrome/browser/enterprise/reporting/profile_report_generator.cc +./chrome/browser/enterprise/reporting/report_scheduler.cc ./chrome/browser/exo_parts.cc ./chrome/browser/extensions/activity_log/activity_actions.h ./chrome/browser/extensions/activity_log/activity_database.cc @@ -878,6 +900,7 @@ ./chrome/browser/extensions/activity_log/counting_policy.cc ./chrome/browser/extensions/activity_log/fullstream_ui_policy.cc ./chrome/browser/extensions/api/activity_log_private/activity_log_private_api.cc +./chrome/browser/extensions/api/autofill_assistant_private/autofill_assistant_private_api.h ./chrome/browser/extensions/api/autofill_private/autofill_private_api.cc ./chrome/browser/extensions/api/autofill_private/autofill_private_event_router.cc ./chrome/browser/extensions/api/autofill_private/autofill_util.cc @@ -899,7 +922,6 @@ ./chrome/browser/extensions/api/commands/command_service.cc ./chrome/browser/extensions/api/commands/command_service.h ./chrome/browser/extensions/api/content_settings/content_settings_api.cc -./chrome/browser/extensions/api/content_settings/content_settings_store.cc ./chrome/browser/extensions/api/context_menus/context_menus_api.cc ./chrome/browser/extensions/api/context_menus/context_menus_api_helpers.h ./chrome/browser/extensions/api/cookies/cookies_api.cc @@ -976,6 +998,8 @@ ./chrome/browser/extensions/api/omnibox/omnibox_api.cc ./chrome/browser/extensions/api/omnibox/omnibox_api.h ./chrome/browser/extensions/api/page_capture/page_capture_api.h +./chrome/browser/extensions/api/passwords_private/password_check_delegate.cc +./chrome/browser/extensions/api/passwords_private/password_check_delegate.h ./chrome/browser/extensions/api/passwords_private/passwords_private_api.cc ./chrome/browser/extensions/api/passwords_private/passwords_private_delegate.h ./chrome/browser/extensions/api/passwords_private/passwords_private_delegate_impl.cc @@ -1071,6 +1095,8 @@ ./chrome/browser/extensions/extension_action_runner.cc ./chrome/browser/extensions/extension_context_menu_model.cc ./chrome/browser/extensions/extension_install_error_menu_item_id_provider.cc +./chrome/browser/extensions/extension_install_prompt.cc +./chrome/browser/extensions/extension_install_prompt.h ./chrome/browser/extensions/extension_keybinding_registry.cc ./chrome/browser/extensions/extension_management.cc ./chrome/browser/extensions/extension_message_bubble_controller.cc @@ -1147,16 +1173,15 @@ ./chrome/browser/first_run/upgrade_util_win.cc ./chrome/browser/flag_descriptions.h ./chrome/browser/flag-metadata.json +./chrome/browser/flags/android/cached_feature_flags.cc ./chrome/browser/flags/android/chrome_feature_list.cc +./chrome/browser/flags/BUILD.gn ./chrome/browser/font_family_cache.cc ./chrome/browser/font_pref_change_notifier.cc ./chrome/browser/gcm/gcm_product_util.cc ./chrome/browser/gcm/gcm_profile_service_factory.cc -./chrome/browser/geolocation/geolocation_permission_context_android.cc -./chrome/browser/global_keyboard_shortcuts_mac_browsertest.mm ./chrome/browser/global_keyboard_shortcuts_mac.h ./chrome/browser/global_keyboard_shortcuts_mac.mm -./chrome/browser/global_keyboard_shortcuts_mac_unittest.mm ./chrome/browser/google/google_brand_chromeos.cc ./chrome/browser/google/google_update_settings_posix.cc ./chrome/browser/google/google_update_win.cc @@ -1211,6 +1236,8 @@ ./chrome/browser/media/cast_transport_host_filter.cc ./chrome/browser/media/chromeos_login_media_access_handler.cc ./chrome/browser/media/extension_media_access_handler.cc +./chrome/browser/media/feeds/media_feeds_contents_observer.cc +./chrome/browser/media/feeds/media_feeds_contents_observer.h ./chrome/browser/media_galleries/media_file_system_registry.cc ./chrome/browser/media_galleries/media_galleries_permission_controller.cc ./chrome/browser/media_galleries/media_galleries_preferences.cc @@ -1312,7 +1339,6 @@ ./chrome/browser/metrics/chrome_metrics_service_client.cc ./chrome/browser/metrics/chrome_metrics_services_manager_client.cc ./chrome/browser/metrics/chromeos_metrics_provider.cc -./chrome/browser/metrics/field_trial_synchronizer.cc ./chrome/browser/metrics/metrics_reporting_state.cc ./chrome/browser/metrics/perf/collection_params.cc ./chrome/browser/metrics/plugin_metrics_provider.cc @@ -1324,12 +1350,12 @@ ./chrome/browser/nacl_host/nacl_browser_delegate_impl.cc ./chrome/browser/native_file_system/chrome_native_file_system_permission_context.cc ./chrome/browser/native_file_system/native_file_system_permission_context_factory.cc -./chrome/browser/native_file_system/native_file_system_permission_request_manager.cc ./chrome/browser/native_file_system/tab_scoped_native_file_system_permission_context.cc ./chrome/browser/navigation_predictor/search_engine_preconnector.cc ./chrome/browser/net_benchmarking.cc ./chrome/browser/net_benchmarking.h ./chrome/browser/net/disk_cache_dir_policy_handler.cc +./chrome/browser/net/dns_util.cc ./chrome/browser/net/net_error_tab_helper.cc ./chrome/browser/net/net_error_tab_helper.h ./chrome/browser/net/prediction_options.cc @@ -1337,6 +1363,7 @@ ./chrome/browser/net/profile_network_context_service_test_utils.cc ./chrome/browser/net/proxy_test_utils.cc ./chrome/browser/net/secure_dns_policy_handler.cc +./chrome/browser/net/stub_resolver_config_reader.cc ./chrome/browser/net/system_network_context_manager.cc ./chrome/browser/net/trial_comparison_cert_verifier_controller.cc ./chrome/browser/notifications/chrome_ash_message_center_client.cc @@ -1348,7 +1375,6 @@ ./chrome/browser/notifications/notification_platform_bridge_android.cc ./chrome/browser/notifications/notification_platform_bridge_linux.cc ./chrome/browser/notifications/notification_platform_bridge_mac.mm -./chrome/browser/notifications/notification_platform_bridge_mac_unittest.mm ./chrome/browser/notifications/notification_platform_bridge_win.cc ./chrome/browser/notifications/notification_trigger_scheduler.cc ./chrome/browser/notifications/notifier_state_tracker.cc @@ -1357,6 +1383,7 @@ ./chrome/browser/notifications/platform_notification_service_impl.h ./chrome/browser/notifications/scheduler/notification_schedule_service_factory.cc ./chrome/browser/notifications/win/notification_image_retainer.cc +./chrome/browser/notifications/win/notification_launch_id.cc ./chrome/browser/notifications/win/notification_template_builder.cc ./chrome/browser/ntp_snippets/content_suggestions_service_factory.cc ./chrome/browser/ntp_tiles/chrome_most_visited_sites_factory.cc @@ -1364,6 +1391,7 @@ ./chrome/browser/obsolete_system/obsolete_system_win.cc ./chrome/browser/offline_pages/android/evaluation/offline_page_evaluation_bridge.cc ./chrome/browser/offline_pages/android/offline_page_auto_fetcher.h +./chrome/browser/offline_pages/android/offline_page_auto_fetcher_service.cc ./chrome/browser/offline_pages/android/offline_page_auto_fetcher_service.h ./chrome/browser/offline_pages/android/offline_page_model_factory.cc ./chrome/browser/offline_pages/android/request_coordinator_factory.cc @@ -1380,6 +1408,7 @@ ./chrome/browser/page_load_metrics/observers/ukm_page_load_metrics_observer.cc ./chrome/browser/password_manager/chrome_password_manager_client.cc ./chrome/browser/password_manager/credential_leak_controller_android.cc +./chrome/browser/password_manager/credential_leak_password_change_controller_android.cc ./chrome/browser/password_manager/password_store_factory.cc ./chrome/browser/pdf/pdf_extension_util.cc ./chrome/browser/pepper_flash_settings_manager.cc @@ -1388,12 +1417,9 @@ ./chrome/browser/performance_manager/graph/policies/dynamic_tcmalloc_policy_linux.cc ./chrome/browser/performance_manager/graph/policies/dynamic_tcmalloc_policy_linux.h ./chrome/browser/permissions/adaptive_quiet_notification_permission_ui_enabler.cc +./chrome/browser/permissions/chrome_permissions_client.cc ./chrome/browser/permissions/contextual_notification_permission_ui_selector.cc -./chrome/browser/permissions/permission_context_base.cc -./chrome/browser/permissions/permission_dialog_delegate.cc -./chrome/browser/permissions/permission_manager.cc -./chrome/browser/permissions/permission_prompt_android.cc -./chrome/browser/permissions/permission_request_manager.cc +./chrome/browser/permissions/permission_manager_factory.cc ./chrome/browser/permissions/quiet_notification_permission_ui_config.cc ./chrome/browser/permissions/quiet_notification_permission_ui_state.cc ./chrome/browser/platform_util.h @@ -1420,11 +1446,6 @@ ./chrome/browser/policy/BUILD.gn ./chrome/browser/policy/chrome_browser_cloud_management_controller.cc ./chrome/browser/policy/chrome_browser_policy_connector.cc -./chrome/browser/policy/cloud/cloud_policy_invalidator.cc -./chrome/browser/policy/cloud/policy_invalidation_util.cc -./chrome/browser/policy/cloud/remote_commands_invalidator.cc -./chrome/browser/policy/cloud/user_cloud_policy_invalidator.cc -./chrome/browser/policy/cloud/user_cloud_policy_invalidator_factory.cc ./chrome/browser/policy/cloud/user_policy_signin_service_base.cc ./chrome/browser/policy/cloud/user_policy_signin_service_factory.cc ./chrome/browser/policy/cloud/user_policy_signin_service_mobile.cc @@ -1536,32 +1557,34 @@ ./chrome/browser/renderer_host/pepper/pepper_isolated_file_system_message_filter.cc ./chrome/browser/renderer_preferences_util.cc ./chrome/browser/reputation/local_heuristics.cc +./chrome/browser/reputation/safety_tips.proto ./chrome/browser/reputation/safety_tip_ui_helper.cc ./chrome/browser/resource_coordinator/BUILD.gn ./chrome/browser/resource_coordinator/session_restore_policy.cc ./chrome/browser/resource_coordinator/tab_lifecycle_unit_source.cc ./chrome/browser/resource_coordinator/tab_manager.cc -./chrome/browser/resource_coordinator/tab_manager_delegate_chromeos.cc ./chrome/browser/resource_coordinator/tab_manager_features.cc ./chrome/browser/resources/bookmarks/BUILD.gn ./chrome/browser/resources/BUILD.gn ./chrome/browser/resources/chromeos/accessibility/autoclick/autoclick_test.js ./chrome/browser/resources/chromeos/accessibility/autoclick/BUILD.gn -./chrome/browser/resources/chromeos/accessibility/chromevox/background/language_switching_test.js +./chrome/browser/resources/chromeos/accessibility/BUILD.gn +./chrome/browser/resources/chromeos/accessibility/chromevox/background/annotation/user_annotation_handler_test.js +./chrome/browser/resources/chromeos/accessibility/chromevox/background/locale_output_helper_test.js ./chrome/browser/resources/chromeos/accessibility/chromevox/braille/braille_key_types.js ./chrome/browser/resources/chromeos/accessibility/chromevox/BUILD.gn -./chrome/browser/resources/chromeos/accessibility/chromevox/strings/chromevox_strings.gni ./chrome/browser/resources/chromeos/accessibility/chromevox/testing/chromevox_e2e_test_base.js +./chrome/browser/resources/chromeos/accessibility/common/BUILD.gn ./chrome/browser/resources/chromeos/accessibility/select_to_speak/BUILD.gn ./chrome/browser/resources/chromeos/accessibility/select_to_speak/select_to_speak_e2e_test_base.js -./chrome/browser/resources/chromeos/accessibility/select_to_speak/strings/BUILD.gn +./chrome/browser/resources/chromeos/accessibility/strings/accessibility_strings.gni ./chrome/browser/resources/chromeos/accessibility/switch_access/BUILD.gn -./chrome/browser/resources/chromeos/accessibility/switch_access/strings/BUILD.gn ./chrome/browser/resources/chromeos/accessibility/switch_access/switch_access_e2e_test_base.js ./chrome/browser/resources/chromeos/BUILD.gn ./chrome/browser/resources/chromeos/camera/src/strings/BUILD.gn ./chrome/browser/resources/chromeos/emulator/icons.html ./chrome/browser/resources/chromeos/login/encryption_migration.js +./chrome/browser/resources/chromeos/login/security_token_pin.js ./chrome/browser/resources/downloads/BUILD.gn ./chrome/browser/resources/downloads/icons.html ./chrome/browser/resources/extensions/BUILD.gn @@ -1576,8 +1599,6 @@ ./chrome/browser/resources/print_preview/BUILD.gn ./chrome/browser/resources/print_preview/ui/icons.html ./chrome/browser/resources/quota_internals/BUILD.gn -./chrome/browser/resources/safe_browsing/BUILD.gn -./chrome/browser/resources/safe_browsing/push_file_type_proto.py ./chrome/browser/resources/settings/BUILD.gn ./chrome/browser/resources/settings/chromeos/BUILD.gn ./chrome/browser/resources/settings/chromeos/google_assistant_page/google_assistant_page.js @@ -1587,7 +1608,6 @@ ./chrome/browser/resources/vr/assets/push_assets_component.py ./chrome/browser/resources/webapks/BUILD.gn ./chrome/browser/rlz/chrome_rlz_tracker_delegate.cc -./chrome/browser/safe_browsing/android/safe_browsing_bridge.cc ./chrome/browser/safe_browsing/BUILD.gn ./chrome/browser/safe_browsing/chrome_cleaner/BUILD.gn ./chrome/browser/safe_browsing/chrome_cleaner/chrome_cleaner_navigation_util_win.cc @@ -1602,7 +1622,6 @@ ./chrome/browser/safe_browsing/client_side_detection_service.cc ./chrome/browser/safe_browsing/client_side_model_loader.cc ./chrome/browser/safe_browsing/cloud_content_scanning/deep_scanning_dialog_delegate.h -./chrome/browser/safe_browsing/download_protection/check_client_download_request_base.cc ./chrome/browser/safe_browsing/download_protection/check_client_download_request_base.h ./chrome/browser/safe_browsing/download_protection/check_client_download_request.cc ./chrome/browser/safe_browsing/download_protection/check_native_file_system_write_request.cc @@ -1610,7 +1629,6 @@ ./chrome/browser/safe_browsing/download_protection/download_protection_service.cc ./chrome/browser/safe_browsing/download_protection/file_analyzer.cc ./chrome/browser/safe_browsing/download_protection/file_analyzer.h -./chrome/browser/safe_browsing/download_protection/ppapi_download_request.cc ./chrome/browser/safe_browsing/incident_reporting/binary_integrity_analyzer_win.cc ./chrome/browser/safe_browsing/incident_reporting/environment_data_collection.cc ./chrome/browser/safe_browsing/incident_reporting/environment_data_collection_win.cc @@ -1651,7 +1669,6 @@ ./chrome/browser/service_process/service_process_control.cc ./chrome/browser/service_process/service_process_control.h ./chrome/browser/service_process/service_process_control_mac.mm -./chrome/browser/service_process/service_process_control_mac_unittest.mm ./chrome/browser/sessions/chrome_serialized_navigation_driver.cc ./chrome/browser/sessions/chrome_tab_restore_service_client.cc ./chrome/browser/sessions/restore_on_startup_policy_handler.cc @@ -1700,7 +1717,6 @@ ./chrome/browser/spellchecker/spellcheck_language_blacklist_policy_handler.cc ./chrome/browser/spellchecker/spellcheck_language_policy_handler.cc ./chrome/browser/ssl/chrome_security_blocking_page_factory.cc -./chrome/browser/ssl/chrome_ssl_host_state_delegate.cc ./chrome/browser/ssl/connection_help_tab_helper.cc ./chrome/browser/ssl/known_interception_disclosure_infobar_delegate.cc ./chrome/browser/ssl/secure_origin_policy_handler.cc @@ -1710,6 +1726,8 @@ ./chrome/browser/ssl/ssl_config_service_manager_pref.cc ./chrome/browser/ssl/ssl_error_controller_client.cc ./chrome/browser/startup_data.cc +./chrome/browser/storage_access_api/BUILD.gn +./chrome/browser/storage/storage_notification_service_impl.cc ./chrome/browser/subresource_filter/subresource_filter_browser_test_harness.cc ./chrome/browser/supervised_user/child_accounts/child_account_service.cc ./chrome/browser/supervised_user/child_accounts/permission_request_creator_apiary.cc @@ -1741,6 +1759,7 @@ ./chrome/browser/task_manager/task_manager_interface.cc ./chrome/browser/task_manager/task_manager_tester.cc ./chrome/browser/themes/browser_theme_pack.cc +./chrome/browser/themes/browser_theme_pack.h ./chrome/browser/themes/theme_properties.h ./chrome/browser/themes/theme_service_aura_linux.cc ./chrome/browser/themes/theme_service.cc @@ -1761,6 +1780,8 @@ ./chrome/browser/ui/android/device_dialog/bluetooth_chooser_android.cc ./chrome/browser/ui/android/device_dialog/bluetooth_scanning_prompt_android.cc ./chrome/browser/ui/android/device_dialog/usb_chooser_dialog_android.cc +./chrome/browser/ui/android/favicon/java/src/org/chromium/chrome/browser/ui/favicon/RoundedIconGenerator.java +./chrome/browser/ui/android/favicon/java/src/org/chromium/chrome/browser/ui/favicon/RoundedIconGeneratorTest.java ./chrome/browser/ui/android/overlay/overlay_window_android.cc ./chrome/browser/ui/android/page_info/page_info_controller_android.cc ./chrome/browser/ui/android/strings/BUILD.gn @@ -1841,73 +1862,51 @@ ./chrome/browser/ui/certificate_dialogs.cc ./chrome/browser/ui/chrome_pages.cc ./chrome/browser/ui/chrome_select_file_policy.cc -./chrome/browser/ui/cocoa/accelerators_cocoa_browsertest.mm ./chrome/browser/ui/cocoa/accelerators_cocoa.h ./chrome/browser/ui/cocoa/accelerators_cocoa.mm -./chrome/browser/ui/cocoa/accelerator_utils_cocoa.mm ./chrome/browser/ui/cocoa/applescript/apple_event_util.mm -./chrome/browser/ui/cocoa/applescript/bookmark_item_applescript_browsertest.mm -./chrome/browser/ui/cocoa/applescript/tab_applescript_browsertest.mm ./chrome/browser/ui/cocoa/applescript/tab_applescript.mm ./chrome/browser/ui/cocoa/applescript/window_applescript.mm -./chrome/browser/ui/cocoa/apps/app_shim_menu_controller_mac_browsertest.mm ./chrome/browser/ui/cocoa/apps/app_shim_menu_controller_mac.mm -./chrome/browser/ui/cocoa/apps/native_app_window_cocoa_browsertest.mm ./chrome/browser/ui/cocoa/apps/quit_with_apps_controller_mac.cc -./chrome/browser/ui/cocoa/apps/quit_with_apps_controller_mac_interactive_uitest.mm ./chrome/browser/ui/cocoa/bookmarks/bookmark_menu_bridge.mm -./chrome/browser/ui/cocoa/bookmarks/bookmark_menu_bridge_unittest.mm ./chrome/browser/ui/cocoa/bookmarks/bookmark_menu_cocoa_controller.mm ./chrome/browser/ui/cocoa/browser_window_command_handler.mm -./chrome/browser/ui/cocoa/browser_window_mac_browsertest.mm ./chrome/browser/ui/cocoa/chrome_command_dispatcher_delegate.mm ./chrome/browser/ui/cocoa/confirm_quit.cc ./chrome/browser/ui/cocoa/confirm_quit_panel_controller.mm ./chrome/browser/ui/cocoa/first_run_dialog.mm ./chrome/browser/ui/cocoa/fullscreen/fullscreen_toolbar_controller.mm ./chrome/browser/ui/cocoa/history_menu_bridge.mm -./chrome/browser/ui/cocoa/history_menu_bridge_unittest.mm ./chrome/browser/ui/cocoa/history_menu_cocoa_controller.mm -./chrome/browser/ui/cocoa/history_menu_cocoa_controller_unittest.mm ./chrome/browser/ui/cocoa/keystone_infobar_delegate.mm ./chrome/browser/ui/cocoa/main_menu_builder.mm -./chrome/browser/ui/cocoa/main_menu_builder_unittest.mm -./chrome/browser/ui/cocoa/page_info/page_info_bubble_views_mac_browsertest.mm ./chrome/browser/ui/cocoa/profiles/profile_menu_controller.mm -./chrome/browser/ui/cocoa/profiles/profile_menu_controller_unittest.mm ./chrome/browser/ui/cocoa/renderer_context_menu/render_view_context_menu_mac.mm -./chrome/browser/ui/cocoa/share_menu_controller_browsertest.mm ./chrome/browser/ui/cocoa/share_menu_controller.mm -./chrome/browser/ui/cocoa/task_manager_mac_browsertest.mm ./chrome/browser/ui/cocoa/task_manager_mac.mm ./chrome/browser/ui/cocoa/touchbar/browser_window_default_touch_bar.mm -./chrome/browser/ui/cocoa/touchbar/browser_window_default_touch_bar_unittest.mm -./chrome/browser/ui/cocoa/touchbar/browser_window_touch_bar_controller_browsertest.mm ./chrome/browser/ui/content_settings/content_setting_bubble_model.cc ./chrome/browser/ui/content_settings/content_setting_bubble_model.h ./chrome/browser/ui/content_settings/content_setting_image_model.cc -./chrome/browser/ui/content_settings/content_setting_media_image_model_unittest.mm ./chrome/browser/ui/exclusive_access/exclusive_access_bubble.cc ./chrome/browser/ui/exclusive_access/exclusive_access_bubble_type.cc ./chrome/browser/ui/exclusive_access/exclusive_access_manager.cc ./chrome/browser/ui/exclusive_access/fullscreen_controller.cc ./chrome/browser/ui/exclusive_access/keyboard_lock_controller.cc -./chrome/browser/ui/extensions/accelerator_priority.cc ./chrome/browser/ui/extensions/application_launch.cc ./chrome/browser/ui/extensions/extension_action_view_controller.cc -./chrome/browser/ui/extensions/extension_installed_bubble.cc +./chrome/browser/ui/extensions/extension_installed_bubble_model.cc ./chrome/browser/ui/extensions/extension_install_ui_default.cc ./chrome/browser/ui/extensions/extension_message_bubble_factory.cc ./chrome/browser/ui/extensions/hosted_app_browser_controller.cc ./chrome/browser/ui/extensions/settings_api_bubble_helpers.cc ./chrome/browser/ui/extensions/terminal_system_app_menu_model_chromeos.cc -./chrome/browser/ui/find_bar/find_bar_platform_helper_mac_interactive_uitest.mm +./chrome/browser/ui/focus_tab_after_navigation_helper.cc ./chrome/browser/ui/fullscreen_keyboard_browsertest_base.cc ./chrome/browser/ui/global_media_controls/cast_media_notification_item.h ./chrome/browser/ui/global_media_controls/cast_media_session_controller.cc ./chrome/browser/ui/global_media_controls/cast_media_session_controller.h -./chrome/browser/ui/gtk/BUILD.gn -./chrome/browser/ui/gtk/gtk_ui.cc ./chrome/browser/ui/hats/hats_service.cc ./chrome/browser/ui/hung_plugin_tab_helper.cc ./chrome/browser/ui/input_method/input_method_engine.cc @@ -1923,13 +1922,14 @@ ./chrome/browser/ui/media_router/media_sink_with_cast_modes.h ./chrome/browser/ui/media_router/query_result_manager.h ./chrome/browser/ui/media_router/ui_media_sink.h +./chrome/browser/ui/messages/android/java/src/org/chromium/chrome/browser/ui/messages/infobar/InfoBarLayout.java ./chrome/browser/ui/navigation_correction_tab_observer.cc ./chrome/browser/ui/network_profile_bubble.cc ./chrome/browser/ui/omnibox/chrome_omnibox_client.cc ./chrome/browser/ui/omnibox/chrome_omnibox_client.h ./chrome/browser/ui/omnibox/chrome_omnibox_edit_controller.cc -./chrome/browser/ui/page_info/page_info.cc -./chrome/browser/ui/page_info/page_info_ui.cc +./chrome/browser/ui/page_info/chrome_page_info_delegate.cc +./chrome/browser/ui/page_info/chrome_page_info_ui_delegate.cc ./chrome/browser/ui/page_info/permission_menu_model.cc ./chrome/browser/ui/passwords/google_password_manager_navigation_throttle.cc ./chrome/browser/ui/passwords/manage_passwords_ui_controller.cc @@ -1990,19 +1990,18 @@ ./chrome/browser/ui/ui_features.h ./chrome/browser/ui/views/accelerator_table.cc ./chrome/browser/ui/views/accelerator_table_unittest_mac.mm -./chrome/browser/ui/views/accelerator_utils_aura.cc ./chrome/browser/ui/views/accessibility/invert_bubble_view.cc ./chrome/browser/ui/views/accessibility/navigation_accessibility_uitest_win.cc +./chrome/browser/ui/views/apps/app_dialog/app_uninstall_dialog_view.cc ./chrome/browser/ui/views/apps/app_info_dialog/app_info_dialog_container.cc ./chrome/browser/ui/views/apps/app_info_dialog/app_info_dialog_views.cc ./chrome/browser/ui/views/apps/app_info_dialog/app_info_header_panel.cc -./chrome/browser/ui/views/apps/app_uninstall_dialog_view.cc ./chrome/browser/ui/views/apps/chrome_native_app_window_views_aura_ash.cc ./chrome/browser/ui/views/apps/chrome_native_app_window_views.cc ./chrome/browser/ui/views/apps/chrome_native_app_window_views_win.cc ./chrome/browser/ui/views/autofill/autofill_bubble_handler_impl.cc ./chrome/browser/ui/views/autofill/payments/local_card_migration_icon_view.cc -./chrome/browser/ui/views/autofill/payments/save_card_icon_view.cc +./chrome/browser/ui/views/autofill/payments/save_payment_icon_view.cc ./chrome/browser/ui/views/bookmarks/bookmark_bar_view.cc ./chrome/browser/ui/views/bookmarks/bookmark_context_menu.cc ./chrome/browser/ui/views/bookmarks/bookmark_menu_delegate.cc @@ -2017,13 +2016,10 @@ ./chrome/browser/ui/views/desktop_capture/desktop_media_list_view.cc ./chrome/browser/ui/views/download/download_item_view.cc ./chrome/browser/ui/views/exclusive_access_bubble_views.cc -./chrome/browser/ui/views/extensions/bookmark_app_confirmation_view.cc -./chrome/browser/ui/views/extensions/bookmark_app_confirmation_view.h ./chrome/browser/ui/views/extensions/extension_action_platform_delegate_views.cc +./chrome/browser/ui/views/extensions/extension_install_blocked_dialog_view.cc ./chrome/browser/ui/views/extensions/extension_install_dialog_view.cc ./chrome/browser/ui/views/extensions/extension_installed_bubble_view.cc -./chrome/browser/ui/views/extensions/pwa_confirmation_bubble_view.h -./chrome/browser/ui/views/extensions/web_app_info_image_source.h ./chrome/browser/ui/views/external_protocol_dialog.cc ./chrome/browser/ui/views/feature_promos/reopen_tab_promo_controller.cc ./chrome/browser/ui/views/first_run_dialog.cc @@ -2070,13 +2066,17 @@ ./chrome/browser/ui/views/media_router/media_router_views_ui.h ./chrome/browser/ui/views/media_router/presentation_receiver_window_view.cc ./chrome/browser/ui/views/native_file_system/native_file_system_access_icon_view.cc +./chrome/browser/ui/views/native_file_system/native_file_system_directory_access_confirmation_view.cc +./chrome/browser/ui/views/native_file_system/native_file_system_permission_view.cc ./chrome/browser/ui/views/network_profile_bubble_view.cc ./chrome/browser/ui/views/omnibox/omnibox_view_views.cc +./chrome/browser/ui/views/omnibox/webui_omnibox_popup_view.cc ./chrome/browser/ui/views/outdated_upgrade_bubble_view.cc ./chrome/browser/ui/views/page_action/pwa_install_view.cc ./chrome/browser/ui/views/page_info/page_info_bubble_view.cc ./chrome/browser/ui/views/passwords/manage_passwords_icon_views.cc ./chrome/browser/ui/views/payments/payment_sheet_view_controller.cc +./chrome/browser/ui/views/permission_bubble/permission_prompt_bubble_view.cc ./chrome/browser/ui/views/profiles/avatar_toolbar_button.cc ./chrome/browser/ui/views/profiles/profile_menu_view.cc ./chrome/browser/ui/views/profiles/signin_view_controller_delegate_views.cc @@ -2106,7 +2106,12 @@ ./chrome/browser/ui/views/translate/translate_bubble_view.cc ./chrome/browser/ui/views/translate/translate_icon_view.cc ./chrome/browser/ui/views/uninstall_view.cc +./chrome/browser/ui/views/web_apps/pwa_confirmation_bubble_view.h +./chrome/browser/ui/views/web_apps/web_app_confirmation_view.cc +./chrome/browser/ui/views/web_apps/web_app_confirmation_view.h ./chrome/browser/ui/views/web_apps/web_app_frame_toolbar_view.cc +./chrome/browser/ui/views/web_apps/web_app_info_image_source.h +./chrome/browser/ui/views/webauthn/authenticator_qr_sheet_view.cc ./chrome/browser/ui/web_applications/app_browser_controller.cc ./chrome/browser/ui/web_applications/system_web_app_ui_utils.cc ./chrome/browser/ui/web_applications/web_app_controller_browsertest.h @@ -2150,6 +2155,7 @@ ./chrome/browser/ui/webui/chromeos/crostini_upgrader/crostini_upgrader_ui.cc ./chrome/browser/ui/webui/chromeos/cryptohome_ui.cc ./chrome/browser/ui/webui/chromeos/drive_internals_ui.cc +./chrome/browser/ui/webui/chromeos/edu_account_login_handler_chromeos.cc ./chrome/browser/ui/webui/chromeos/emulator/device_emulator_ui.cc ./chrome/browser/ui/webui/chromeos/first_run/first_run_ui.cc ./chrome/browser/ui/webui/chromeos/image_source.cc @@ -2166,6 +2172,7 @@ ./chrome/browser/ui/webui/chromeos/login/eula_screen_handler.cc ./chrome/browser/ui/webui/chromeos/login/fingerprint_setup_screen_handler.cc ./chrome/browser/ui/webui/chromeos/login/gaia_screen_handler.cc +./chrome/browser/ui/webui/chromeos/login/gaia_screen_handler.h ./chrome/browser/ui/webui/chromeos/login/hid_detection_screen_handler.cc ./chrome/browser/ui/webui/chromeos/login/kiosk_autolaunch_screen_handler.cc ./chrome/browser/ui/webui/chromeos/login/kiosk_enable_screen_handler.cc @@ -2188,8 +2195,6 @@ ./chrome/browser/ui/webui/chromeos/smb_shares/smb_credentials_dialog.cc ./chrome/browser/ui/webui/chromeos/smb_shares/smb_share_dialog.cc ./chrome/browser/ui/webui/chromeos/sys_internals/sys_internals_ui.cc -./chrome/browser/ui/webui/chromeos/terminal/terminal_source.cc -./chrome/browser/ui/webui/chromeos/terminal/terminal_source.h ./chrome/browser/ui/webui/chromeos/user_image_source.cc ./chrome/browser/ui/webui/chromeos/video_source.cc ./chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc @@ -2233,8 +2238,10 @@ ./chrome/browser/ui/webui/management_ui_handler.cc ./chrome/browser/ui/webui/management_ui_handler.h ./chrome/browser/ui/webui/media/media_engagement_ui.cc +./chrome/browser/ui/webui/media/media_feeds_ui.cc ./chrome/browser/ui/webui/media/media_history_ui.cc ./chrome/browser/ui/webui/media_router/media_router_internals_ui.cc +./chrome/browser/ui/webui/media_router/media_router_internals_webui_message_handler.h ./chrome/browser/ui/webui/media/webrtc_logs_ui.cc ./chrome/browser/ui/webui/memory_internals_ui.cc ./chrome/browser/ui/webui/nacl_ui.cc @@ -2243,10 +2250,12 @@ ./chrome/browser/ui/webui/new_tab_page/new_tab_page_handler.cc ./chrome/browser/ui/webui/new_tab_page/new_tab_page_handler.h ./chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.cc +./chrome/browser/ui/webui/new_tab_page/untrusted_source.cc ./chrome/browser/ui/webui/notifications_internals/notifications_internals_ui.cc ./chrome/browser/ui/webui/ntp/app_icon_webui_handler.cc ./chrome/browser/ui/webui/ntp/app_launcher_handler.cc ./chrome/browser/ui/webui/ntp/app_launcher_handler.h +./chrome/browser/ui/webui/ntp/cookie_controls_handler.cc ./chrome/browser/ui/webui/ntp/core_app_launcher_handler.cc ./chrome/browser/ui/webui/ntp/core_app_launcher_handler.h ./chrome/browser/ui/webui/ntp/new_tab_ui.cc @@ -2283,6 +2292,7 @@ ./chrome/browser/ui/webui/settings/chromeos/date_time_handler.cc ./chrome/browser/ui/webui/settings/chromeos/fingerprint_handler.cc ./chrome/browser/ui/webui/settings/chromeos/internet_handler.h +./chrome/browser/ui/webui/settings/chromeos/internet_strings_provider.cc ./chrome/browser/ui/webui/settings/chromeos/multidevice_handler.cc ./chrome/browser/ui/webui/settings/chromeos/multidevice_handler.h ./chrome/browser/ui/webui/settings/chromeos/os_settings_localized_strings_provider.cc @@ -2298,12 +2308,14 @@ ./chrome/browser/ui/webui/settings/protocol_handlers_handler.cc ./chrome/browser/ui/webui/settings/protocol_handlers_handler.h ./chrome/browser/ui/webui/settings/reset_settings_handler.cc +./chrome/browser/ui/webui/settings/safety_check_handler.cc ./chrome/browser/ui/webui/settings/search_engines_handler.cc ./chrome/browser/ui/webui/settings/settings_clear_browsing_data_handler.cc ./chrome/browser/ui/webui/settings/settings_default_browser_handler.cc ./chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc ./chrome/browser/ui/webui/settings/settings_manage_profile_handler.cc ./chrome/browser/ui/webui/settings/settings_media_devices_selection_handler.cc +./chrome/browser/ui/webui/settings/settings_secure_dns_handler.cc ./chrome/browser/ui/webui/settings/settings_startup_pages_handler.cc ./chrome/browser/ui/webui/settings/settings_ui.cc ./chrome/browser/ui/webui/settings/shared_settings_localized_strings_provider.cc @@ -2363,21 +2375,23 @@ ./chrome/browser/ui/zoom/chrome_zoom_level_prefs.cc ./chrome/browser/unified_consent/unified_consent_service_factory.cc ./chrome/browser/update_client/chrome_update_query_params_delegate.cc +./chrome/browser/upgrade_detector/get_installed_version_linux.cc +./chrome/browser/upgrade_detector/installed_version_poller.cc ./chrome/browser/upgrade_detector/upgrade_detector.cc ./chrome/browser/upgrade_detector/upgrade_detector_chromeos.cc ./chrome/browser/upgrade_detector/upgrade_detector_impl.cc ./chrome/browser/usb/usb_chooser_context.cc ./chrome/browser/usb/usb_chooser_controller.cc -./chrome/browser/util/android/java/src/org/chromium/chrome/browser/util/UrlConstants.java -./chrome/browser/util/android/java/src/org/chromium/chrome/browser/util/UrlUtilities.java ./chrome/browser/vr/BUILD.gn -./chrome/browser/vr/service/vr_service_impl.cc -./chrome/browser/vr/service/xr_runtime_manager.cc -./chrome/browser/vr/ui_host/vr_ui_host_impl.cc -./chrome/browser/vr/ui_scene_creator.cc +./chrome/browser/vr/chrome_xr_integration_client.cc ./chrome/browser/web_applications/BUILD.gn +./chrome/browser/web_applications/chrome_pwa_launcher/BUILD.gn +./chrome/browser/web_applications/chrome_pwa_launcher/chrome_pwa_launcher_main.cc +./chrome/browser/web_applications/chrome_pwa_launcher/chrome_pwa_launcher_util.cc ./chrome/browser/web_applications/components/app_icon_manager.h +./chrome/browser/web_applications/components/app_registrar.cc ./chrome/browser/web_applications/components/app_registrar.h +./chrome/browser/web_applications/components/app_registry_controller.cc ./chrome/browser/web_applications/components/BUILD.gn ./chrome/browser/web_applications/components/externally_installed_web_app_prefs.cc ./chrome/browser/web_applications/components/install_bounce_metric.cc @@ -2391,17 +2405,20 @@ ./chrome/browser/web_applications/components/web_app_shortcut.cc ./chrome/browser/web_applications/components/web_app_shortcut_linux.cc ./chrome/browser/web_applications/components/web_app_shortcut_mac.mm -./chrome/browser/web_applications/components/web_app_shortcut_mac_unittest.mm ./chrome/browser/web_applications/components/web_app_shortcut_win.cc +./chrome/browser/web_applications/components/web_app_utils.cc ./chrome/browser/web_applications/extensions/bookmark_app_install_finalizer.cc ./chrome/browser/web_applications/extensions/bookmark_app_registrar.cc +./chrome/browser/web_applications/extensions/bookmark_app_registry_controller.cc ./chrome/browser/web_applications/extensions/bookmark_app_util.cc +./chrome/browser/web_applications/extensions/bookmark_app_util.h ./chrome/browser/web_applications/extensions/BUILD.gn ./chrome/browser/web_applications/extensions/web_app_extension_shortcut.cc ./chrome/browser/web_applications/extensions/web_app_extension_shortcut_mac.mm ./chrome/browser/web_applications/external_web_app_manager.cc ./chrome/browser/web_applications/manifest_update_manager.cc ./chrome/browser/web_applications/manifest_update_task.cc +./chrome/browser/web_applications/manifest_update_task.h ./chrome/browser/web_applications/pending_app_install_task.cc ./chrome/browser/web_applications/pending_app_manager_impl.cc ./chrome/browser/web_applications/system_web_app_manager.cc @@ -2412,6 +2429,7 @@ ./chrome/browser/web_applications/web_app_install_finalizer.cc ./chrome/browser/web_applications/web_app_install_manager.cc ./chrome/browser/web_applications/web_app_install_task.cc +./chrome/browser/web_applications/web_app_migration_manager.h ./chrome/browser/web_applications/web_app_provider.cc ./chrome/browser/web_applications/web_app_shortcut_manager.cc ./chrome/browser/web_applications/web_app_shortcut_manager.h @@ -2474,6 +2492,9 @@ ./chromecast/browser/service_connector.h ./chromecast/browser/webview/js_channel_service.h ./chromecast/BUILD.gn +./chromecast/common/activity_filtering_url_loader_throttle.cc +./chromecast/common/activity_filtering_url_loader_throttle.h +./chromecast/common/activity_url_filter.cc ./chromecast/common/BUILD.gn ./chromecast/common/cast_content_client.cc ./chromecast/common/cast_extensions_api_provider.cc @@ -2499,11 +2520,14 @@ ./chromecast/media/service/BUILD.gn ./chromecast/media/service/cast_renderer.cc ./chromecast/media/service/cast_renderer.h +./chromecast/renderer/activity_filtering_websocket_handshake_throttle.h ./chromecast/renderer/BUILD.gn +./chromecast/renderer/cast_activity_url_filter_manager.h ./chromecast/renderer/cast_content_renderer_client.cc ./chromecast/renderer/cast_content_renderer_client.h ./chromecast/renderer/cast_media_playback_options.h ./chromecast/renderer/cast_url_loader_throttle_provider.cc +./chromecast/renderer/cast_url_loader_throttle_provider.h ./chromecast/renderer/js_channel_bindings.h ./chromecast/renderer/media/BUILD.gn ./chromecast/renderer/media/media_caps_observer_impl.h @@ -2518,8 +2542,6 @@ ./chrome/chrome_elf/chrome_elf_test_stubs.cc ./chrome/chrome_paks.gni ./chrome/chrome_proxy/chrome_proxy_main_win.cc -./chrome/chrome_watcher/BUILD.gn -./chrome/chrome_watcher/chrome_watcher_main.cc ./chrome/common/all_messages.h ./chrome/common/apps/platform_apps/api/_api_features.json ./chrome/common/apps/platform_apps/api/api_sources.gni @@ -2557,6 +2579,7 @@ ./chrome/common/chrome_paths_win.cc ./chrome/common/chrome_switches.cc ./chrome/common/chrome_switches.h +./chrome/common/chrome_ui_features_prefs.cc ./chrome/common/client_hints/client_hints.cc ./chrome/common/cloud_print/BUILD.gn ./chrome/common/cloud_print/cloud_print_class_mac.mm @@ -2695,21 +2718,13 @@ ./chrome/common/extensions/docs/server2/branch_utility.py ./chrome/common/extensions/docs/server2/build_server.py ./chrome/common/extensions/docs/server2/content_providers.py -./chrome/common/extensions/docs/server2/content_providers_test.py -./chrome/common/extensions/docs/server2/content_provider_test.py ./chrome/common/extensions/docs/server2/datastore_util.py ./chrome/common/extensions/docs/server2/directory_zipper.py ./chrome/common/extensions/docs/server2/extensions_paths.py ./chrome/common/extensions/docs/server2/gcs_file_system.py -./chrome/common/extensions/docs/server2/integration_test.py -./chrome/common/extensions/docs/server2/jsc_view_test.py -./chrome/common/extensions/docs/server2/link_error_detector_test.py ./chrome/common/extensions/docs/server2/patch_servlet.py -./chrome/common/extensions/docs/server2/patch_servlet_test.py ./chrome/common/extensions/docs/server2/PRESUBMIT.py ./chrome/common/extensions/docs/server2/redirector.py -./chrome/common/extensions/docs/server2/redirector_test.py -./chrome/common/extensions/docs/server2/render_servlet_test.py ./chrome/common/extensions/docs/server2/rietveld_patcher.py ./chrome/common/extensions/docs/server2/servlet.py ./chrome/common/extensions/docs/server2/update_cache.py @@ -2877,8 +2892,6 @@ ./chrome/common/extensions/manifest_handlers/settings_overrides_handler.cc ./chrome/common/extensions/manifest_handlers/settings_overrides_handler.h ./chrome/common/extensions/manifest_handlers/theme_handler.cc -./chrome/common/extensions/manifest_handlers/ui_overrides_handler.cc -./chrome/common/extensions/manifest_handlers/ui_overrides_handler.h ./chrome/common/extensions/permissions/chrome_api_permissions.cc ./chrome/common/extensions/permissions/chrome_permission_message_provider.cc ./chrome/common/extensions/permissions/chrome_permission_message_provider.h @@ -2914,7 +2927,6 @@ ./chrome/common/initialize_extensions_client.cc ./chrome/common/instant_mojom_traits.h ./chrome/common/logging_chrome.cc -./chrome/common/mac/app_mode_chrome_locator_browsertest.mm ./chrome/common/mac/app_mode_chrome_locator.mm ./chrome/common/mac/app_mode_common.mm ./chrome/common/mac/launchd.h @@ -2950,7 +2962,6 @@ ./chrome/common/media_router/providers/cast/cast_media_source.cc ./chrome/common/media_router/providers/cast/cast_media_source.h ./chrome/common/media_router/route_request_result.cc -./chrome/common/metrics_constants_util_win.cc ./chrome/common/multi_process_lock_linux.cc ./chrome/common/multi_process_lock_mac.cc ./chrome/common/multi_process_lock_win.cc @@ -2976,6 +2987,8 @@ ./chrome/common/profiler/main_thread_stack_sampling_profiler.cc ./chrome/common/profiler/stack_sampling_configuration.cc ./chrome/common/profiler/thread_profiler.cc +./chrome/common/qr_code_generator/qr_code_generator.cc +./chrome/common/qr_code_generator/qr_print.cc ./chrome/common/render_messages.h ./chrome/common/safe_browsing/archive_analyzer_results.cc ./chrome/common/safe_browsing/binary_feature_extractor.cc @@ -2987,10 +3000,6 @@ ./chrome/common/safe_browsing/client_model.proto ./chrome/common/safe_browsing/disk_image_type_sniffer_mac.cc ./chrome/common/safe_browsing/download_type_util.cc -./chrome/common/safe_browsing/file_type_policies.cc -./chrome/common/safe_browsing/file_type_policies.h -./chrome/common/safe_browsing/file_type_policies_test_util.cc -./chrome/common/safe_browsing/file_type_policies_test_util.h ./chrome/common/safe_browsing/ipc_protobuf_message_test_messages.h ./chrome/common/safe_browsing/mach_o_image_reader_mac.cc ./chrome/common/safe_browsing/mock_binary_feature_extractor.cc @@ -3012,7 +3021,6 @@ ./chrome/common/service_process_util.cc ./chrome/common/service_process_util_linux.cc ./chrome/common/service_process_util_mac.mm -./chrome/common/service_process_util_mac_unittest.mm ./chrome/common/service_process_util_posix.cc ./chrome/common/service_process_util_posix.h ./chrome/common/service_process_util_win.cc @@ -3094,11 +3102,21 @@ ./chromeos/components/drivefs/fake_drivefs.h ./chromeos/components/drivefs/fake_drivefs_launcher_client.cc ./chromeos/components/drivefs/fake_drivefs_launcher_client.h -./chromeos/components/help_app_ui/help_app_guest_ui.cc +./chromeos/components/help_app_ui/BUILD.gn +./chromeos/components/help_app_ui/help_app_page_handler.cc +./chromeos/components/help_app_ui/help_app_page_handler.h ./chromeos/components/help_app_ui/help_app_ui.cc +./chromeos/components/help_app_ui/help_app_ui.h +./chromeos/components/help_app_ui/help_app_untrusted_ui.cc +./chromeos/components/help_app_ui/resources/BUILD.gn ./chromeos/components/help_app_ui/url_constants.cc +./chromeos/components/media_app_ui/BUILD.gn ./chromeos/components/media_app_ui/media_app_guest_ui.cc +./chromeos/components/media_app_ui/media_app_page_handler.cc +./chromeos/components/media_app_ui/media_app_page_handler.h ./chromeos/components/media_app_ui/media_app_ui.cc +./chromeos/components/media_app_ui/media_app_ui.h +./chromeos/components/media_app_ui/resources/js/BUILD.gn ./chromeos/components/media_app_ui/resources/mock/js/BUILD.gn ./chromeos/components/media_app_ui/url_constants.cc ./chromeos/components/mojo_bootstrap/pending_connection_manager.cc @@ -3174,6 +3192,9 @@ ./chromeos/components/nearby/thread_utils_impl.cc ./chromeos/components/nearby/thread_utils_impl.h ./chromeos/components/power/dark_resume_controller.cc +./chromeos/components/print_management/print_management_ui.cc +./chromeos/components/print_management/scanning_ui.cc +./chromeos/components/print_management/url_constants.cc ./chromeos/components/proximity_auth/BUILD.gn ./chromeos/components/proximity_auth/fake_lock_handler.cc ./chromeos/components/proximity_auth/fake_lock_handler.h @@ -3208,8 +3229,14 @@ ./chromeos/components/proximity_auth/unlock_manager.h ./chromeos/components/proximity_auth/unlock_manager_impl.cc ./chromeos/components/proximity_auth/unlock_manager_impl.h +./chromeos/components/quick_answers/BUILD.gn +./chromeos/components/quick_answers/public/cpp/quick_answers_prefs.cc ./chromeos/components/quick_answers/quick_answers_client.cc ./chromeos/components/quick_answers/quick_answers_client.h +./chromeos/components/quick_answers/quick_answers_consents.cc +./chromeos/components/quick_answers/quick_answers_model.cc +./chromeos/components/quick_answers/result_loader.cc +./chromeos/components/quick_answers/result_loader.h ./chromeos/components/quick_answers/search_result_loader.cc ./chromeos/components/quick_answers/search_result_loader.h ./chromeos/components/quick_answers/search_result_parsers/definition_result_parser.cc @@ -3223,23 +3250,38 @@ ./chromeos/components/quick_answers/search_result_parsers/translation_result_parser.h ./chromeos/components/quick_answers/search_result_parsers/unit_conversion_result_parser.cc ./chromeos/components/quick_answers/search_result_parsers/unit_conversion_result_parser.h +./chromeos/components/quick_answers/understanding/intent_generator.cc +./chromeos/components/quick_answers/understanding/intent_generator.h +./chromeos/components/quick_answers/utils/language_detector.cc ./chromeos/components/quick_answers/utils/quick_answers_metrics.cc ./chromeos/components/quick_answers/utils/quick_answers_metrics.h ./chromeos/components/sample_system_web_app_ui/sample_system_web_app_ui.cc ./chromeos/components/sample_system_web_app_ui/url_constants.cc +./chromeos/components/security_token_pin/error_generator.cc +./chromeos/components/security_token_pin/error_generator.h ./chromeos/components/smbfs/BUILD.gn +./chromeos/components/smbfs/ip_address_mojom_traits.cc +./chromeos/components/smbfs/ip_address_mojom_traits.h +./chromeos/components/smbfs/mojom/ip_address.mojom ./chromeos/components/smbfs/mojom/smbfs.mojom ./chromeos/components/smbfs/smbfs_host.cc ./chromeos/components/smbfs/smbfs_host.h ./chromeos/components/smbfs/smbfs_mounter.cc ./chromeos/components/smbfs/smbfs_mounter.h +./chromeos/components/sync_wifi/fake_local_network_collector.cc +./chromeos/components/sync_wifi/fake_local_network_collector.h ./chromeos/components/sync_wifi/fake_one_shot_timer.cc ./chromeos/components/sync_wifi/fake_pending_network_configuration_tracker.cc ./chromeos/components/sync_wifi/fake_pending_network_configuration_tracker.h ./chromeos/components/sync_wifi/fake_timer_factory.cc ./chromeos/components/sync_wifi/fake_timer_factory.h +./chromeos/components/sync_wifi/local_network_collector.h +./chromeos/components/sync_wifi/local_network_collector_impl.cc +./chromeos/components/sync_wifi/local_network_collector_impl.h ./chromeos/components/sync_wifi/network_identifier.cc +./chromeos/components/sync_wifi/network_test_helper.cc ./chromeos/components/sync_wifi/network_type_conversions.cc +./chromeos/components/sync_wifi/network_type_conversions.h ./chromeos/components/sync_wifi/pending_network_configuration_tracker.h ./chromeos/components/sync_wifi/pending_network_configuration_tracker_impl.cc ./chromeos/components/sync_wifi/pending_network_configuration_tracker_impl.h @@ -3389,6 +3431,8 @@ ./chromeos/components/tether/wifi_hotspot_connector.h ./chromeos/components/tether/wifi_hotspot_disconnector_impl.cc ./chromeos/components/tether/wifi_hotspot_disconnector_impl.h +./chromeos/components/trial_group/trial_group_checker.cc +./chromeos/components/web_applications/manifest_request_filter.cc ./chromeos/dbus/arc_obb_mounter_client.h ./chromeos/network/certificate_helper.h ./chromeos/resources/BUILD.gn @@ -3587,8 +3631,6 @@ ./chrome/renderer/plugins/chrome_plugin_placeholder.h ./chrome/renderer/plugins/non_loadable_plugin_placeholder.cc ./chrome/renderer/plugins/pdf_plugin_placeholder.cc -./chrome/renderer/prerender/prerender_dispatcher.cc -./chrome/renderer/prerender/prerender_dispatcher.h ./chrome/renderer/prerender/prerender_helper.cc ./chrome/renderer/prerender/prerender_helper.h ./chrome/renderer/printing/chrome_print_render_frame_helper_delegate.cc @@ -3640,18 +3682,20 @@ ./chrome/services/file_util/public/cpp/sandboxed_zip_analyzer.cc ./chrome/services/file_util/public/mojom/safe_archive_analyzer_param_traits.h ./chrome/services/file_util/safe_archive_analyzer.cc -./chrome/services/isolated_xr_device/BUILD.gn -./chrome/services/isolated_xr_device/xr_runtime_provider.cc ./chrome/services/local_search_service/index_impl.cc ./chrome/services/media_gallery_util/media_metadata_parser.h ./chrome/services/media_gallery_util/public/cpp/safe_media_metadata_parser.h ./chrome/services/media_gallery_util/public/mojom/media_parser_mojom_traits.h +./chrome/services/qrcode_generator/BUILD.gn +./chrome/services/qrcode_generator/qrcode_generator_service_impl.cc ./chrome/services/util_win/BUILD.gn ./chrome/third_party/mozilla_security_manager/nsNSSCertHelper.cpp ./chrome/tools/safe_browsing/sb_sigutil.cc ./chrome/typemaps.gni +./chrome/updater/BUILD.gn ./chrome/updater/mac/BUILD.gn ./chrome/updater/mac/setup/setup.mm +./chrome/updater/tools/BUILD.gn ./chrome/utility/BUILD.gn ./chrome/utility/image_writer/image_writer_mac.cc ./chrome/utility/importer/bookmark_html_reader.cc @@ -3673,7 +3717,6 @@ ./chrome/utility/importer/profile_import_impl.h ./chrome/utility/importer/safari_importer.h ./chrome/utility/importer/safari_importer.mm -./chrome/utility/importer/safari_importer_unittest.mm ./chrome/utility/printing_handler.cc ./chrome/utility/safe_browsing/mac/BUILD.gn ./chrome/utility/safe_browsing/mac/dmg_analyzer.cc @@ -3688,15 +3731,16 @@ ./components/arc/mojom/file_system.mojom ./components/arc/mojom/intent_helper.mojom ./components/arc/mojom/print.mojom -./components/autofill_assistant/browser/service.proto +./components/autofill_assistant/browser/model.proto +./components/autofill_assistant/browser/view_layout.proto ./components/autofill/content/renderer/form_cache.cc ./components/autofill/content/renderer/page_passwords_analyser.cc ./components/autofill/core/browser/address_rewriter.cc ./components/autofill/core/browser/BUILD.gn ./components/autofill/core/browser/form_structure.cc ./components/autofill/core/browser/proto/api_v1.proto -./components/background_task_scheduler/android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskBroadcastReceiver.java -./components/background_task_scheduler/android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskSchedulerJobService.java +./components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskBroadcastReceiver.java +./components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskSchedulerJobService.java ./components/browser_ui/modaldialog/android/java/src/org/chromium/components/browser_ui/modaldialog/ModalDialogView.java ./components/browser_ui/widget/android/java/src/org/chromium/components/browser_ui/widget/ClipDrawableProgressBar.java ./components/browser_ui/widget/android/java/src/org/chromium/components/browser_ui/widget/DualControlLayout.java @@ -3715,9 +3759,13 @@ ./components/data_reduction_proxy/proto/data_store.proto ./components/domain_reliability/bake_in_configs.py ./components/drive/drive.proto +./components/embedder_support/android/java/src/org/chromium/components/embedder_support/util/UrlConstants.java +./components/embedder_support/android/java/src/org/chromium/components/embedder_support/util/UrlUtilities.java +./components/embedder_support/android/native_java_unittests/src/org/chromium/components/embedder_support/util/UrlUtilitiesUnitTest.java ./components/embedder_support/android/view/content_view_render_view.cc ./components/embedder_support/android/view/content_view_render_view.h ./components/exo/BUILD.gn +./components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalNavigationHandler.java ./components/feedback/proto/web.proto ./components/feed/core/BUILD.gn ./components/feed/core/common/BUILD.gn @@ -3725,12 +3773,13 @@ ./components/feed/core/proto/ui/piet/images.proto ./components/feed/core/proto/ui/piet/media_queries.proto ./components/feed/core/proto/ui/piet/shadows.proto +./components/feed/core/proto/v2/wire/client_info.proto +./components/feed/core/proto/v2/wire/display_info.proto ./components/feed/core/proto/wire/display_info.proto +./components/feed/core/v2/BUILD.gn +./components/feed/core/v2/feed_network_impl.cc ./components/flags_ui/BUILD.gn ./components/gcm_driver/android/java/src/org/chromium/components/gcm_driver/GoogleCloudMessagingV2.java -./components/invalidation/impl/android/java/src/org/chromium/components/invalidation/InvalidationClientService.java -./components/invalidation/impl/android/javatests/src/org/chromium/components/invalidation/InvalidationClientServiceTest.java -./components/invalidation/impl/android/javatests/src/org/chromium/components/invalidation/TestableInvalidationClientService.java ./components/metrics/BUILD.gn ./components/metrics/component_metrics_provider.cc ./components/metrics/log_decoder.cc @@ -3738,19 +3787,22 @@ ./components/minidump_uploader/android/java/src/org/chromium/components/minidump_uploader/MinidumpUploader.java ./components/module_installer/android/junit/src/org/chromium/components/module_installer/logger/LoggerTestUtil.java ./components/nacl/broker/BUILD.gn +./components/omnibox/browser/android/java/src/org/chromium/components/omnibox/OmniboxUrlEmphasizer.java ./components/optimization_guide/proto/performance_hints_metadata.proto ./components/page_load_metrics/browser/metrics_web_contents_observer.cc ./components/page_load_metrics/browser/page_load_tracker.h ./components/password_manager/core/browser/form_parsing/form_parser.cc ./components/password_manager/core/browser/form_parsing/fuzzer/form_data_producer.h +./components/payments/content/android/java/src/org/chromium/components/payments/intent/IsReadyToPayServiceHelper.java +./components/payments/content/android/java/src/org/chromium/components/payments/intent/WebPaymentIntentHelperType.java ./components/performance_manager/public/graph/process_node.h +./components/permissions/permission_context_base.cc ./components/policy/core/browser/android/android_combined_policy_provider.cc ./components/policy/core/browser/BUILD.gn ./components/policy/proto/chrome_device_policy.proto ./components/policy/proto/device_management_backend.proto ./components/policy/resources/policy_templates.json ./components/rappor/proto/rappor_metric.proto -./components/rappor/public/mojom/rappor_recorder.mojom ./components/remote_cocoa/common/native_widget_ns_window_host.mojom ./components/renderer_context_menu/render_view_context_menu_observer.h ./components/resources/ssl/ssl_error_assistant/push_proto.py @@ -3758,16 +3810,18 @@ ./components/safe_browsing/core/proto/csd.proto ./components/safe_browsing/core/proto/PRESUBMIT.py ./components/safe_browsing/core/proto/realtimeapi.proto +./components/safe_browsing/core/resources/push_file_type_proto.py +./components/schema_org/common/improved_metadata.mojom +./components/schema_org/common/metadata.mojom ./components/search_engines/prepopulated_engines.json ./components/security_interstitials/content/android/java/src/org/chromium/components/security_interstitials/CaptivePortalHelper.java ./components/security_interstitials/content/cert_logger.proto ./components/security_interstitials/core/browser/resources/interstitial_large.js ./components/security_interstitials/core/BUILD.gn -./components/signin/core/browser/android/java/src/org/chromium/components/signin/AccountManagerFacade.java +./components/signin/core/browser/android/java/src/org/chromium/components/signin/AccountUtils.java ./components/signin/internal/identity_manager/BUILD.gn ./components/signin/internal/identity_manager/profile_oauth2_token_service_builder.cc ./components/signin/internal/identity_manager/profile_oauth2_token_service_delegate_chromeos.h -./components/signin/public/android/javatests/src/org/chromium/components/signin/identitymanager/ProfileOAuth2TokenServiceDelegateTest.java ./components/signin/public/base/account_consistency_method.h ./components/spellcheck/browser/android/component_jni_registrar.cc ./components/spellcheck/browser/android/java/src/org/chromium/components/spellcheck/SpellCheckerSessionBridge.java @@ -3775,7 +3829,6 @@ ./components/strings/BUILD.gn ./components/sync/android/java/src/org/chromium/components/sync/notifier/InvalidationPreferences.java ./components/sync/android/java/src/org/chromium/components/sync/SyncConstants.java -./components/sync/android/javatests/src/org/chromium/components/sync/notifier/InvalidationPreferencesTest.java ./components/sync/BUILD.gn ./components/sync/engine/net/http_bridge.cc ./components/sync/protocol/history_delete_directive_specifics.proto @@ -3786,6 +3839,7 @@ ./components/ukm/BUILD.gn ./components/ukm/ukm_service.cc ./components/url_formatter/android/java/src/org/chromium/components/url_formatter/UrlFormatter.java +./components/url_formatter/android/native_java_unittests/src/org/chromium/components/url_formatter/UrlFormatterUnitTest.java ./components/url_formatter/url_formatter.cc ./components/variations/android/java/src/org/chromium/components/variations/firstrun/VariationsSeedFetcher.java ./components/variations/BUILD.gn @@ -3803,7 +3857,6 @@ ./content/browser/renderer_host/input/touch_action_filter.h ./content/browser/renderer_host/render_process_host_impl.cc ./content/browser/renderer_host/render_widget_host_view_android.cc -./content/browser/webauth/authenticator_common.cc ./content/browser/webui/shared_resources_data_source.cc ./content/child/blink_platform_impl.cc ./content/child/BUILD.gn @@ -3821,13 +3874,13 @@ ./content/public/common/content_switches.cc ./content/public/common/resource_request_body_android.cc ./content/renderer/pepper/pepper_media_device_manager.cc -./content/shell/android/BUILD.gn ./content/shell/android/java/src/org/chromium/content_shell/ShellManager.java ./content/shell/app/shell_main_delegate.cc ./content/shell/common/web_test/fake_bluetooth_chooser.mojom ./device/bluetooth/bluetooth_adapter_mac.mm ./device/bluetooth/bluetooth_classic_device_mac.mm ./device/bluetooth/bluetooth_task_manager_win.cc +./device/fido/client_data.cc ./device/fido/fido_constants.h ./device/fido/fido_test_data.h ./device/gamepad/gamepad_platform_data_fetcher_win.cc @@ -3857,7 +3910,6 @@ ./ios/build/chrome_build.gni ./ios/chrome/app/application_delegate/BUILD.gn ./ios/chrome/app/application_delegate/metrics_mediator.mm -./ios/chrome/app/application_delegate/user_activity_handler_unittest.mm ./ios/chrome/app/BUILD.gn ./ios/chrome/app/chrome_exe_main.mm ./ios/chrome/app/main_controller.mm @@ -3866,7 +3918,6 @@ ./ios/chrome/app/spotlight/BUILD.gn ./ios/chrome/app/startup/BUILD.gn ./ios/chrome/app/startup/chrome_app_startup_parameters.mm -./ios/chrome/app/startup/chrome_app_startup_parameters_unittest.mm ./ios/chrome/browser/application_context_impl.cc ./ios/chrome/browser/autofill/BUILD.gn ./ios/chrome/browser/autofill/form_suggestion_label.mm @@ -3876,28 +3927,27 @@ ./ios/chrome/browser/component_updater/ios_component_updater_configurator.cc ./ios/chrome/browser/favicon/BUILD.gn ./ios/chrome/browser/favicon/favicon_loader.mm -./ios/chrome/browser/favicon/favicon_loader_unittest.mm ./ios/chrome/browser/gcm/BUILD.gn ./ios/chrome/browser/gcm/ios_chrome_gcm_profile_service_factory.cc ./ios/chrome/browser/ios_chrome_io_thread.mm ./ios/chrome/browser/metrics/BUILD.gn ./ios/chrome/browser/metrics/ios_chrome_metrics_service_client.mm +./ios/chrome/browser/metrics/metrics_app_interface.mm ./ios/chrome/browser/ntp_snippets/BUILD.gn ./ios/chrome/browser/ntp_snippets/ios_chrome_content_suggestions_service_factory_util.cc ./ios/chrome/browser/omaha/BUILD.gn ./ios/chrome/browser/omaha/omaha_service.mm -./ios/chrome/browser/omaha/omaha_service_unittest.mm ./ios/chrome/browser/open_from_clipboard/BUILD.gn ./ios/chrome/browser/open_from_clipboard/create_clipboard_recent_content.mm ./ios/chrome/browser/overscroll_actions/BUILD.gn -./ios/chrome/browser/overscroll_actions/overscroll_actions_tab_helper_unittest.mm ./ios/chrome/browser/passwords/BUILD.gn ./ios/chrome/browser/passwords/notify_auto_signin_view_controller.mm +./ios/chrome/browser/policy/BUILD.gn +./ios/chrome/browser/policy/policy_features.cc ./ios/chrome/browser/reading_list/BUILD.gn ./ios/chrome/browser/reading_list/reading_list_model_factory.cc ./ios/chrome/browser/search_engines/BUILD.gn ./ios/chrome/browser/search_engines/extension_search_engine_data_updater.mm -./ios/chrome/browser/search_engines/extension_search_engine_data_updater_unittest.mm ./ios/chrome/browser/search_engines/ui_thread_search_terms_data.cc ./ios/chrome/browser/share_extension/BUILD.gn ./ios/chrome/browser/share_extension/share_extension_item_receiver.mm @@ -3912,10 +3962,8 @@ ./ios/chrome/browser/sync/send_tab_to_self_sync_service_factory.mm ./ios/chrome/browser/sync/session_sync_service_factory.mm ./ios/chrome/browser/translate/BUILD.gn -./ios/chrome/browser/translate/js_language_detection_manager_unittest.mm ./ios/chrome/browser/u2f/BUILD.gn ./ios/chrome/browser/u2f/u2f_controller.mm -./ios/chrome/browser/ui/alert_coordinator/BUILD.gn ./ios/chrome/browser/ui/alert_coordinator/loading_alert_coordinator.mm ./ios/chrome/browser/ui/alert_view/alert_view_controller.mm ./ios/chrome/browser/ui/alert_view/BUILD.gn @@ -3927,6 +3975,9 @@ ./ios/chrome/browser/ui/authentication/cells/table_view_account_item.mm ./ios/chrome/browser/ui/authentication/chrome_signin_view_controller.mm ./ios/chrome/browser/ui/authentication/signed_in_accounts_view_controller.mm +./ios/chrome/browser/ui/authentication/signin/user_signin/BUILD.gn +./ios/chrome/browser/ui/authentication/signin/user_signin/gradient_view.mm +./ios/chrome/browser/ui/authentication/signin/user_signin/user_signin_view_controller.mm ./ios/chrome/browser/ui/authentication/unified_consent/BUILD.gn ./ios/chrome/browser/ui/authentication/unified_consent/identity_chooser/BUILD.gn ./ios/chrome/browser/ui/authentication/unified_consent/identity_chooser/identity_chooser_cell.mm @@ -3978,8 +4029,6 @@ ./ios/chrome/browser/ui/bookmarks/cells/bookmark_table_signin_promo_cell.mm ./ios/chrome/browser/ui/bookmarks/cells/bookmark_text_field_item.mm ./ios/chrome/browser/ui/bookmarks/cells/BUILD.gn -./ios/chrome/browser/ui/browser_container/browser_container_coordinator_unittest.mm -./ios/chrome/browser/ui/browser_container/BUILD.gn ./ios/chrome/browser/ui/browser_view/browser_view_controller.mm ./ios/chrome/browser/ui/browser_view/BUILD.gn ./ios/chrome/browser/ui/bubble/bubble_view_controller.mm @@ -4003,7 +4052,6 @@ ./ios/chrome/browser/ui/content_suggestions/cells/content_suggestions_most_visited_action_cell.mm ./ios/chrome/browser/ui/content_suggestions/cells/content_suggestions_most_visited_cell.mm ./ios/chrome/browser/ui/content_suggestions/cells/content_suggestions_most_visited_item.mm -./ios/chrome/browser/ui/content_suggestions/cells/content_suggestions_most_visited_item_unittest.mm ./ios/chrome/browser/ui/content_suggestions/cells/content_suggestions_text_item.mm ./ios/chrome/browser/ui/content_suggestions/cells/content_suggestions_whats_new_item.mm ./ios/chrome/browser/ui/content_suggestions/content_suggestions_collection_utils.mm @@ -4040,7 +4088,6 @@ ./ios/chrome/browser/ui/fullscreen/fullscreen_animator.mm ./ios/chrome/browser/ui/history/BUILD.gn ./ios/chrome/browser/ui/history/history_table_view_controller.mm -./ios/chrome/browser/ui/history/history_ui_egtest.mm ./ios/chrome/browser/ui/infobars/banners/BUILD.gn ./ios/chrome/browser/ui/infobars/banners/infobar_banner_view_controller.mm ./ios/chrome/browser/ui/infobars/BUILD.gn @@ -4059,14 +4106,13 @@ ./ios/chrome/browser/ui/material_components/BUILD.gn ./ios/chrome/browser/ui/material_components/utils.mm ./ios/chrome/browser/ui/ntp/BUILD.gn +./ios/chrome/browser/ui/ntp/incognito_cookies_view.mm ./ios/chrome/browser/ui/ntp/incognito_view_controller.mm ./ios/chrome/browser/ui/ntp/incognito_view.mm ./ios/chrome/browser/ui/ntp/metrics.h ./ios/chrome/browser/ui/ntp/notification_promo_whats_new.h ./ios/chrome/browser/ui/ntp/notification_promo_whats_new.mm -./ios/chrome/browser/ui/ntp/notification_promo_whats_new_unittest.mm ./ios/chrome/browser/ui/ntp/ntp_tile_saver.mm -./ios/chrome/browser/ui/ntp/ntp_tile_saver_unittest.mm ./ios/chrome/browser/ui/ntp_tile_views/BUILD.gn ./ios/chrome/browser/ui/ntp_tile_views/ntp_most_visited_tile_view.mm ./ios/chrome/browser/ui/ntp_tile_views/ntp_shortcut_tile_view.mm @@ -4090,33 +4136,21 @@ ./ios/chrome/browser/ui/orchestrator/omnibox_focus_orchestrator.mm ./ios/chrome/browser/ui/overlays/BUILD.gn ./ios/chrome/browser/ui/overlays/overlay_container_coordinator.mm +./ios/chrome/browser/ui/overlays/test_modality/BUILD.gn +./ios/chrome/browser/ui/overlays/test_modality/test_contained_overlay_coordinator.mm +./ios/chrome/browser/ui/overlays/test_modality/test_presented_overlay_coordinator.mm +./ios/chrome/browser/ui/overlays/test_modality/test_resizing_presented_overlay_coordinator.mm ./ios/chrome/browser/ui/overscroll_actions/BUILD.gn ./ios/chrome/browser/ui/overscroll_actions/overscroll_actions_view.mm ./ios/chrome/browser/ui/page_info/BUILD.gn ./ios/chrome/browser/ui/page_info/legacy_page_info_view_controller.mm +./ios/chrome/browser/ui/page_info/page_info_cookies_view_controller.mm +./ios/chrome/browser/ui/page_info/page_info_site_security_view_controller.mm ./ios/chrome/browser/ui/passwords/BUILD.gn ./ios/chrome/browser/ui/passwords/password_breach_learn_more_view_controller.mm +./ios/chrome/browser/ui/passwords/password_breach_mediator.h +./ios/chrome/browser/ui/passwords/password_breach_view_controller.h ./ios/chrome/browser/ui/passwords/password_breach_view_controller.mm -./ios/chrome/browser/ui/payments/billing_address_selection_mediator.mm -./ios/chrome/browser/ui/payments/BUILD.gn -./ios/chrome/browser/ui/payments/cells/accepted_payment_methods_item.mm -./ios/chrome/browser/ui/payments/cells/autofill_profile_item.mm -./ios/chrome/browser/ui/payments/cells/BUILD.gn -./ios/chrome/browser/ui/payments/cells/page_info_item.mm -./ios/chrome/browser/ui/payments/cells/payment_method_item.mm -./ios/chrome/browser/ui/payments/cells/payments_selector_edit_item.mm -./ios/chrome/browser/ui/payments/cells/payments_text_item.mm -./ios/chrome/browser/ui/payments/cells/price_item.mm -./ios/chrome/browser/ui/payments/contact_info_selection_mediator.mm -./ios/chrome/browser/ui/payments/payment_items_display_view_controller.mm -./ios/chrome/browser/ui/payments/payment_method_selection_mediator.mm -./ios/chrome/browser/ui/payments/payment_request_edit_view_controller.mm -./ios/chrome/browser/ui/payments/payment_request_error_view_controller.mm -./ios/chrome/browser/ui/payments/payment_request_mediator.mm -./ios/chrome/browser/ui/payments/payment_request_picker_view_controller.mm -./ios/chrome/browser/ui/payments/payment_request_selector_view_controller.mm -./ios/chrome/browser/ui/payments/payment_request_view_controller.mm -./ios/chrome/browser/ui/payments/shipping_address_selection_mediator.mm ./ios/chrome/browser/ui/popup_menu/cells/BUILD.gn ./ios/chrome/browser/ui/popup_menu/cells/popup_menu_navigation_item.mm ./ios/chrome/browser/ui/popup_menu/cells/popup_menu_tools_item.mm @@ -4140,7 +4174,6 @@ ./ios/chrome/browser/ui/recent_tabs/recent_tabs_table_view_controller.mm ./ios/chrome/browser/ui/sad_tab/BUILD.gn ./ios/chrome/browser/ui/sad_tab/sad_tab_coordinator.mm -./ios/chrome/browser/ui/sad_tab/sad_tab_coordinator_unittest.mm ./ios/chrome/browser/ui/sad_tab/sad_tab_view_controller.mm ./ios/chrome/browser/ui/sad_tab/sad_tab_view.mm ./ios/chrome/browser/ui/safe_mode/BUILD.gn @@ -4170,6 +4203,7 @@ ./ios/chrome/browser/ui/settings/clear_browsing_data/clear_browsing_data_table_view_controller.mm ./ios/chrome/browser/ui/settings/clear_browsing_data/time_range_selector_table_view_controller.mm ./ios/chrome/browser/ui/settings/dataplan_usage_table_view_controller.mm +./ios/chrome/browser/ui/settings/google_services/accounts_table_view_controller.mm ./ios/chrome/browser/ui/settings/google_services/BUILD.gn ./ios/chrome/browser/ui/settings/google_services/google_services_settings_mediator.mm ./ios/chrome/browser/ui/settings/google_services/manage_sync_settings_mediator.mm @@ -4179,8 +4213,9 @@ ./ios/chrome/browser/ui/settings/language/language_settings_table_view_controller.mm ./ios/chrome/browser/ui/settings/password/BUILD.gn ./ios/chrome/browser/ui/settings/password/password_details_table_view_controller.mm +./ios/chrome/browser/ui/settings/password/password_exporter.mm +./ios/chrome/browser/ui/settings/password/passwords_settings_app_interface.h ./ios/chrome/browser/ui/settings/password/passwords_table_view_controller.mm -./ios/chrome/browser/ui/settings/password/passwords_table_view_controller_unittest.mm ./ios/chrome/browser/ui/settings/search_engine_table_view_controller.mm ./ios/chrome/browser/ui/settings/settings_navigation_controller.mm ./ios/chrome/browser/ui/settings/settings_root_table_view_controller.mm @@ -4203,7 +4238,6 @@ ./ios/chrome/browser/ui/table_view/cells/table_view_cell.mm ./ios/chrome/browser/ui/table_view/cells/table_view_detail_icon_item.mm ./ios/chrome/browser/ui/table_view/cells/table_view_detail_text_item.mm -./ios/chrome/browser/ui/table_view/cells/table_view_detail_text_item_unittest.mm ./ios/chrome/browser/ui/table_view/cells/table_view_disclosure_header_footer_item.mm ./ios/chrome/browser/ui/table_view/cells/table_view_image_item.mm ./ios/chrome/browser/ui/table_view/cells/table_view_link_header_footer_item.mm @@ -4211,7 +4245,6 @@ ./ios/chrome/browser/ui/table_view/cells/table_view_text_button_item.mm ./ios/chrome/browser/ui/table_view/cells/table_view_text_edit_item.mm ./ios/chrome/browser/ui/table_view/cells/table_view_text_item.mm -./ios/chrome/browser/ui/table_view/cells/table_view_text_item_unittest.mm ./ios/chrome/browser/ui/table_view/cells/table_view_text_link_item.mm ./ios/chrome/browser/ui/table_view/cells/table_view_url_item.mm ./ios/chrome/browser/ui/table_view/chrome_table_view_controller.mm @@ -4221,6 +4254,7 @@ ./ios/chrome/browser/ui/table_view/table_view_presentation_controller.mm ./ios/chrome/browser/ui/tabs/background_tab_animation_view.mm ./ios/chrome/browser/ui/tabs/BUILD.gn +./ios/chrome/browser/ui/tabs/tab_strip_controller.mm ./ios/chrome/browser/ui/tabs/tab_view.mm ./ios/chrome/browser/ui/text_zoom/BUILD.gn ./ios/chrome/browser/ui/text_zoom/text_zoom_coordinator.mm @@ -4233,12 +4267,10 @@ ./ios/chrome/browser/ui/toolbar/buttons/toolbar_button_factory.mm ./ios/chrome/browser/ui/toolbar/buttons/toolbar_button.mm ./ios/chrome/browser/ui/toolbar/buttons/toolbar_configuration.mm -./ios/chrome/browser/ui/toolbar/buttons/toolbar_search_button.mm +./ios/chrome/browser/ui/toolbar/buttons/toolbar_new_tab_button.mm ./ios/chrome/browser/ui/toolbar/buttons/toolbar_tab_grid_button.mm ./ios/chrome/browser/ui/toolbar_container/BUILD.gn -./ios/chrome/browser/ui/toolbar_container/collapsing_toolbar_height_constraint_unittest.mm ./ios/chrome/browser/ui/toolbar_container/toolbar_container_view_controller.mm -./ios/chrome/browser/ui/toolbar_container/toolbar_container_view_controller_unittest.mm ./ios/chrome/browser/ui/toolbar/keyboard_assist/BUILD.gn ./ios/chrome/browser/ui/toolbar/keyboard_assist/toolbar_keyboard_accessory_view.mm ./ios/chrome/browser/ui/toolbar/primary_toolbar_view.mm @@ -4250,15 +4282,15 @@ ./ios/chrome/browser/ui/translate/translate_infobar_language_tab_view.mm ./ios/chrome/browser/ui/translate/translate_infobar_view.mm ./ios/chrome/browser/ui/util/BUILD.gn +./ios/chrome/browser/ui/util/dynamic_type_util.mm ./ios/chrome/browser/ui/util/keyboard_observer_helper.mm ./ios/chrome/browser/ui/util/named_guide.mm ./ios/chrome/browser/ui/util/page_animation_util.mm ./ios/chrome/browser/ui/webui/autofill_and_password_manager_internals/internals_ui_handler.mm ./ios/chrome/browser/ui/webui/BUILD.gn +./ios/chrome/browser/ui/webui/chrome_web_ui_provider.cc ./ios/chrome/browser/ui/webui/net_export/BUILD.gn ./ios/chrome/browser/ui/webui/net_export/net_export_ui.mm -./ios/chrome/browser/ui/webui/sync_internals/BUILD.gn -./ios/chrome/browser/ui/webui/sync_internals/sync_internals_message_handler.cc ./ios/chrome/browser/ui/webui/version_ui.mm ./ios/chrome/browser/update_client/BUILD.gn ./ios/chrome/browser/update_client/ios_chrome_update_query_params_delegate.cc @@ -4280,27 +4312,48 @@ ./ios/chrome/common/app_group/BUILD.gn ./ios/chrome/common/BUILD.gn ./ios/chrome/common/channel_info.mm -./ios/chrome/common/colors/dynamic_color_util.mm -./ios/chrome/common/colors/semantic_color_names.mm -./ios/chrome/common/colors/UIColor+cr_dynamic_colors.mm -./ios/chrome/common/colors/UIColor+cr_semantic_colors.mm -./ios/chrome/common/favicon/BUILD.gn -./ios/chrome/common/favicon/favicon_attributes.mm -./ios/chrome/common/favicon/favicon_view.h -./ios/chrome/common/favicon/favicon_view.mm -./ios/chrome/common/highlight_button.mm +./ios/chrome/common/credential_provider/archivable_credential.h +./ios/chrome/common/credential_provider/archivable_credential.mm +./ios/chrome/common/credential_provider/archivable_credential_store.h +./ios/chrome/common/credential_provider/archivable_credential_store.mm ./ios/chrome/common/material_timing.mm ./ios/chrome/common/ntp_tile/ntp_tile.mm ./ios/chrome/common/string_util.mm -./ios/chrome/common/string_util_unittest.mm -./ios/chrome/common/ui_util/constraints_ui_util.mm -./ios/chrome/common/ui_util/image_util.mm +./ios/chrome/common/ui/colors/dynamic_color_util.mm +./ios/chrome/common/ui/colors/semantic_color_names.mm +./ios/chrome/common/ui/colors/UIColor+cr_dynamic_colors.mm +./ios/chrome/common/ui/colors/UIColor+cr_semantic_colors.mm +./ios/chrome/common/ui/confirmation_alert/BUILD.gn +./ios/chrome/common/ui/confirmation_alert/confirmation_alert_view_controller.mm +./ios/chrome/common/ui/elements/BUILD.gn +./ios/chrome/common/ui/elements/highlight_button.mm +./ios/chrome/common/ui/favicon/BUILD.gn +./ios/chrome/common/ui/favicon/favicon_attributes.mm +./ios/chrome/common/ui/favicon/favicon_view.h +./ios/chrome/common/ui/favicon/favicon_view.mm +./ios/chrome/common/ui/reauthentication/reauthentication_module_for_testing.h +./ios/chrome/common/ui/reauthentication/reauthentication_module.h +./ios/chrome/common/ui/reauthentication/reauthentication_module.mm +./ios/chrome/common/ui/util/constraints_ui_util.mm +./ios/chrome/common/ui/util/dynamic_type_util.mm +./ios/chrome/common/ui/util/image_util.mm ./ios/chrome/common/x_callback_url.cc ./ios/chrome/content_widget_extension/BUILD.gn ./ios/chrome/content_widget_extension/content_widget_view_controller.mm ./ios/chrome/content_widget_extension/content_widget_view.mm ./ios/chrome/content_widget_extension/most_visited_tile_view.h ./ios/chrome/content_widget_extension/most_visited_tile_view.mm +./ios/chrome/credential_provider_extension/BUILD.gn +./ios/chrome/credential_provider_extension/credential_provider_view_controller.mm +./ios/chrome/credential_provider_extension/reauthentication_handler.h +./ios/chrome/credential_provider_extension/reauthentication_handler.mm +./ios/chrome/credential_provider_extension/ui/BUILD.gn +./ios/chrome/credential_provider_extension/ui/consent_view_controller.h +./ios/chrome/credential_provider_extension/ui/credential_list_consumer.h +./ios/chrome/credential_provider_extension/ui/credential_list_coordinator.mm +./ios/chrome/credential_provider_extension/ui/credential_list_view_controller.mm +./ios/chrome/credential_provider_extension/ui/empty_credentials_view_controller.h +./ios/chrome/credential_provider_extension/ui/stale_credentials_view_controller.h ./ios/chrome/search_widget_extension/BUILD.gn ./ios/chrome/search_widget_extension/copied_content_view.h ./ios/chrome/search_widget_extension/copied_content_view.mm @@ -4317,6 +4370,8 @@ ./ios/showcase/content_suggestions/sc_content_suggestions_data_source.mm ./ios/showcase/content_suggestions/sc_content_suggestions_item.mm ./ios/showcase/content_suggestions/sc_content_suggestions_most_visited_item.mm +./ios/showcase/credential_provider/BUILD.gn +./ios/showcase/credential_provider/sc_credential_list_coordinator.mm ./ios/showcase/omnibox_popup/BUILD.gn ./ios/showcase/omnibox_popup/sc_omnibox_popup_container_view_controller.mm ./ios/third_party/firebase/cipd.yaml @@ -4361,7 +4416,6 @@ ./pdf/out_of_process_instance.cc ./ppapi/native_client/tools/browser_tester/browser_tester.py ./PRESUBMIT.py -./PRESUBMIT_test.py ./remoting/android/java/src/org/chromium/chromoting/Chromoting.java ./remoting/android/java/src/org/chromium/chromoting/help/HelpAndFeedbackBasic.java ./remoting/android/java/src/org/chromium/chromoting/InputEventSender.java @@ -4384,19 +4438,19 @@ ./services/resource_coordinator/public/mojom/memory_instrumentation/memory_instrumentation.mojom ./services/shape_detection/android/java/src/org/chromium/shape_detection/BarcodeDetectionImpl.java ./services/shape_detection/android/java/src/org/chromium/shape_detection/FaceDetectionImpl.java -./services/shape_detection/android/javatests/src/org/chromium/shape_detection/BarcodeDetectionImplTest.java ./services/tracing/public/mojom/constants.mojom ./services/tracing/public/mojom/perfetto_service.mojom +./testing/buildbot/chrome.ci.json ./testing/buildbot/chrome.json ./testing/buildbot/chromium.android.json ./testing/buildbot/chromium.chromiumos.json +./testing/buildbot/chromium.ci.json ./testing/buildbot/chromium.clang.json ./testing/buildbot/chromium.fyi.json ./testing/buildbot/chromium.memory.json ./testing/libfuzzer/fuzzers/url.proto ./testing/libfuzzer/proto/skia_image_filter.proto ./testing/libfuzzer/proto/skia_image_filter_proto_converter.cc -./testing/scripts/run_android_wpt.py ./third_party/afl/src/afl-as.c ./third_party/android_protobuf/src/android/config.h ./third_party/android_protobuf/src/benchmarks/ProtoBench.java @@ -4517,58 +4571,38 @@ ./third_party/android_protobuf/src/python/google/protobuf/descriptor_pool.py ./third_party/android_protobuf/src/python/google/protobuf/descriptor.py ./third_party/android_protobuf/src/python/google/protobuf/internal/api_implementation.cc -./third_party/android_protobuf/src/python/google/protobuf/internal/api_implementation_default_test.py ./third_party/android_protobuf/src/python/google/protobuf/internal/api_implementation.py ./third_party/android_protobuf/src/python/google/protobuf/internal/containers.py ./third_party/android_protobuf/src/python/google/protobuf/internal/cpp_message.py ./third_party/android_protobuf/src/python/google/protobuf/internal/decoder.py -./third_party/android_protobuf/src/python/google/protobuf/internal/descriptor_database_test.py ./third_party/android_protobuf/src/python/google/protobuf/internal/descriptor_pool_test1.proto ./third_party/android_protobuf/src/python/google/protobuf/internal/descriptor_pool_test2.proto -./third_party/android_protobuf/src/python/google/protobuf/internal/descriptor_pool_test.py -./third_party/android_protobuf/src/python/google/protobuf/internal/descriptor_python_test.py -./third_party/android_protobuf/src/python/google/protobuf/internal/descriptor_test.py ./third_party/android_protobuf/src/python/google/protobuf/internal/encoder.py ./third_party/android_protobuf/src/python/google/protobuf/internal/enum_type_wrapper.py ./third_party/android_protobuf/src/python/google/protobuf/internal/factory_test1.proto ./third_party/android_protobuf/src/python/google/protobuf/internal/factory_test2.proto -./third_party/android_protobuf/src/python/google/protobuf/internal/generator_test.py -./third_party/android_protobuf/src/python/google/protobuf/internal/message_factory_python_test.py -./third_party/android_protobuf/src/python/google/protobuf/internal/message_factory_test.py ./third_party/android_protobuf/src/python/google/protobuf/internal/message_listener.py -./third_party/android_protobuf/src/python/google/protobuf/internal/message_python_test.py -./third_party/android_protobuf/src/python/google/protobuf/internal/message_test.py ./third_party/android_protobuf/src/python/google/protobuf/internal/missing_enum_values.proto ./third_party/android_protobuf/src/python/google/protobuf/internal/more_extensions_dynamic.proto ./third_party/android_protobuf/src/python/google/protobuf/internal/more_extensions.proto ./third_party/android_protobuf/src/python/google/protobuf/internal/more_messages.proto ./third_party/android_protobuf/src/python/google/protobuf/internal/python_message.py -./third_party/android_protobuf/src/python/google/protobuf/internal/reflection_test.py -./third_party/android_protobuf/src/python/google/protobuf/internal/service_reflection_test.py -./third_party/android_protobuf/src/python/google/protobuf/internal/symbol_database_test.py ./third_party/android_protobuf/src/python/google/protobuf/internal/test_bad_identifiers.proto ./third_party/android_protobuf/src/python/google/protobuf/internal/test_util.py -./third_party/android_protobuf/src/python/google/protobuf/internal/text_encoding_test.py -./third_party/android_protobuf/src/python/google/protobuf/internal/text_format_test.py ./third_party/android_protobuf/src/python/google/protobuf/internal/type_checkers.py -./third_party/android_protobuf/src/python/google/protobuf/internal/unknown_fields_test.py ./third_party/android_protobuf/src/python/google/protobuf/internal/wire_format.py -./third_party/android_protobuf/src/python/google/protobuf/internal/wire_format_test.py ./third_party/android_protobuf/src/python/google/protobuf/message_factory.py ./third_party/android_protobuf/src/python/google/protobuf/message.py ./third_party/android_protobuf/src/python/google/protobuf/pyext/cpp_message.py ./third_party/android_protobuf/src/python/google/protobuf/pyext/descriptor.cc -./third_party/android_protobuf/src/python/google/protobuf/pyext/descriptor_cpp2_test.py ./third_party/android_protobuf/src/python/google/protobuf/pyext/descriptor.h ./third_party/android_protobuf/src/python/google/protobuf/pyext/extension_dict.cc ./third_party/android_protobuf/src/python/google/protobuf/pyext/extension_dict.h ./third_party/android_protobuf/src/python/google/protobuf/pyext/message.cc -./third_party/android_protobuf/src/python/google/protobuf/pyext/message_factory_cpp2_test.py ./third_party/android_protobuf/src/python/google/protobuf/pyext/message.h ./third_party/android_protobuf/src/python/google/protobuf/pyext/proto2_api_test.proto ./third_party/android_protobuf/src/python/google/protobuf/pyext/python.proto ./third_party/android_protobuf/src/python/google/protobuf/pyext/python_protobuf.h -./third_party/android_protobuf/src/python/google/protobuf/pyext/reflection_cpp2_generated_test.py ./third_party/android_protobuf/src/python/google/protobuf/pyext/repeated_composite_container.cc ./third_party/android_protobuf/src/python/google/protobuf/pyext/repeated_composite_container.h ./third_party/android_protobuf/src/python/google/protobuf/pyext/repeated_scalar_container.cc @@ -4712,7 +4746,6 @@ ./third_party/android_protobuf/src/src/google/protobuf/descriptor_database.cc ./third_party/android_protobuf/src/src/google/protobuf/descriptor_database.h ./third_party/android_protobuf/src/src/google/protobuf/descriptor.h -./third_party/android_protobuf/src/src/google/protobuf/descriptor_pb2_test.py ./third_party/android_protobuf/src/src/google/protobuf/descriptor.proto ./third_party/android_protobuf/src/src/google/protobuf/dynamic_message.cc ./third_party/android_protobuf/src/src/google/protobuf/dynamic_message.h @@ -4856,7 +4889,6 @@ ./third_party/blink/perf_tests/speedometer/resources/todomvc/architecture-examples/vuejs-cli/dist/static/css/app.5b47040a23ec3fcb78037de398c53557.css.map ./third_party/blink/perf_tests/speedometer/resources/todomvc/architecture-examples/vuejs-cli/dist/static/js/vendor.e7008001a8bed009bbf1.js.map ./third_party/blink/perf_tests/speedometer/resources/todomvc/vanilla-examples/es2015-babel-webpack/dist/bundle.app.930ad8b83126862d7445.js.map -./third_party/blink/public/mojom/document_metadata/document_metadata.mojom ./third_party/blink/public/mojom/payments/payment_handler_host.mojom ./third_party/blink/public/mojom/payments/payment_request.mojom ./third_party/blink/public/mojom/peerconnection/peer_connection_tracker.mojom @@ -4901,61 +4933,32 @@ ./third_party/blink/renderer/platform/runtime_enabled_features.json5 ./third_party/blink/renderer/platform/weborigin/security_origin.cc ./third_party/blink/tools/blinkpy/common/checkout/baseline_optimizer.py -./third_party/blink/tools/blinkpy/common/checkout/git_unittest.py ./third_party/blink/tools/blinkpy/common/net/git_cl.py ./third_party/blink/tools/blinkpy/common/net/results_fetcher.py -./third_party/blink/tools/blinkpy/common/net/results_fetcher_test.py ./third_party/blink/tools/blinkpy/common/pretty_diff.py ./third_party/blink/tools/blinkpy/common/system/filesystem.py ./third_party/blink/tools/blinkpy/common/system/profiler.py ./third_party/blink/tools/blinkpy/PRESUBMIT.py ./third_party/blink/tools/blinkpy/style/checker.py -./third_party/blink/tools/blinkpy/style/checkers/cpp_unittest.py -./third_party/blink/tools/blinkpy/style/checkers/text_unittest.py -./third_party/blink/tools/blinkpy/style/checker_unittest.py ./third_party/blink/tools/blinkpy/style/filereader.py ./third_party/blink/tools/blinkpy/style/filter.py -./third_party/blink/tools/blinkpy/style/filter_unittest.py ./third_party/blink/tools/blinkpy/style/patchreader.py -./third_party/blink/tools/blinkpy/style/patchreader_unittest.py ./third_party/blink/tools/blinkpy/third_party/pep8.py ./third_party/blink/tools/blinkpy/third_party/wpt/wpt/tools/webdriver/webdriver/client.py ./third_party/blink/tools/blinkpy/third_party/wpt/wpt/tools/wpt/android.py ./third_party/blink/tools/blinkpy/third_party/wpt/wpt/tools/wpt/browser.py ./third_party/blink/tools/blinkpy/third_party/wpt/wpt/tools/wpt/run.py ./third_party/blink/tools/blinkpy/tool/commands/flaky_tests.py -./third_party/blink/tools/blinkpy/tool/commands/rebaseline_cl_unittest.py -./third_party/blink/tools/blinkpy/tool/commands/rebaseline_test_unittest.py -./third_party/blink/tools/blinkpy/tool/commands/rebaseline_unittest.py ./third_party/blink/tools/blinkpy/w3c/chromium_commit_mock.py ./third_party/blink/tools/blinkpy/w3c/chromium_commit.py -./third_party/blink/tools/blinkpy/w3c/chromium_commit_unittest.py ./third_party/blink/tools/blinkpy/w3c/common.py -./third_party/blink/tools/blinkpy/w3c/directory_owners_extractor_unittest.py ./third_party/blink/tools/blinkpy/w3c/export_notifier.py ./third_party/blink/tools/blinkpy/w3c/gerrit.py -./third_party/blink/tools/blinkpy/w3c/gerrit_unittest.py ./third_party/blink/tools/blinkpy/w3c/import_notifier.py -./third_party/blink/tools/blinkpy/w3c/import_notifier_unittest.py ./third_party/blink/tools/blinkpy/w3c/monorail.py -./third_party/blink/tools/blinkpy/w3c/monorail_unittest.py ./third_party/blink/tools/blinkpy/w3c/pr_cleanup_tool.py -./third_party/blink/tools/blinkpy/w3c/pr_cleanup_tool_unittest.py ./third_party/blink/tools/blinkpy/w3c/test_exporter.py -./third_party/blink/tools/blinkpy/w3c/test_exporter_unittest.py ./third_party/blink/tools/blinkpy/w3c/test_importer.py -./third_party/blink/tools/blinkpy/w3c/test_importer_unittest.py -./third_party/blink/tools/blinkpy/web_tests/builder_list.py -./third_party/blink/tools/blinkpy/web_tests/layout_package/bot_test_expectations.py -./third_party/blink/tools/blinkpy/web_tests/layout_package/bot_test_expectations_unittest.py -./third_party/blink/tools/blinkpy/web_tests/merge_results.py -./third_party/blink/tools/blinkpy/web_tests/port/android.py -./third_party/blink/tools/blinkpy/web_tests/port/linux.py -./third_party/blink/tools/blinkpy/web_tests/port/mac.py -./third_party/blink/tools/blinkpy/web_tests/port/win.py -./third_party/blink/tools/blinkpy/web_tests/run_web_tests.py -./third_party/blink/tools/blinkpy/web_tests/try_flag_unittest.py -./third_party/blink/tools/blinkpy/web_tests/update_expectations_unittest.py ./third_party/blink/tools/check_blink_style.py ./third_party/blink/tools/move_blink_source.py ./third_party/blink/tools/print_stale_test_expectations_entries.py @@ -4996,8 +4999,6 @@ ./third_party/catapult/dashboard/queue.yaml ./third_party/catapult/devil/devil/android/constants/chrome.py ./third_party/catapult/devil/devil/android/device_utils.py -./third_party/catapult/devil/devil/android/flag_changer_devicetest.py -./third_party/catapult/devil/devil/android/flag_changer_test.py ./third_party/catapult/devil/devil/android/tools/provision_devices.py ./third_party/catapult/devil/devil/utils/markdown.py ./third_party/catapult/experimental/bisect_lib/fetch_intervening_revisions.py @@ -5009,7 +5010,6 @@ ./third_party/catapult/telemetry/telemetry/internal/backends/android_browser_backend_settings.py ./third_party/catapult/telemetry/telemetry/internal/backends/chrome/desktop_browser_finder.py ./third_party/catapult/telemetry/telemetry/internal/browser/browser_options.py -./third_party/catapult/telemetry/telemetry/page/legacy_page_test.py ./third_party/catapult/telemetry/telemetry/timeline/tracing_config.py ./third_party/catapult/third_party/flot/excanvas.js ./third_party/catapult/third_party/flot/excanvas.min.js @@ -5090,7 +5090,6 @@ ./third_party/catapult/tracing/tracing/model/vm_region.html ./third_party/catapult/tracing/tracing/value/histogram.py ./third_party/catapult/web_page_replay_go/src/webpagereplay/transformers.go -./third_party/cct_dynamic_module/src/src/java/org/chromium/chrome/browser/customtabs/dynamicmodule/IActivityHost.aidl ./third_party/cld_3/src/src/nnet_lang_id_test_data.cc ./third_party/closure_compiler/externs/chrome_extensions.js ./third_party/crashpad/crashpad/doc/appengine/main.go @@ -5105,10 +5104,9 @@ ./third_party/custom_tabs_client/src/demos/src/main/java/org/chromium/customtabsdemos/BrowserActionActivity.java ./third_party/custom_tabs_client/src/demos/src/main/res/values/strings.xml ./third_party/dawn/src/dawn_native/vulkan/VulkanInfo.cpp -./third_party/depot_tools/git_cl.py ./third_party/depot_tools/gsutil.py ./third_party/depot_tools/metrics_utils.py -./third_party/depot_tools/tests/owners_unittest.py +./third_party/devtools-frontend/src/front_end/third_party/lit-html/package/lib/template.js.map ./third_party/devtools-frontend/src/node_modules/acorn/dist/acorn.js.map ./third_party/devtools-frontend/src/node_modules/acorn/dist/acorn.mjs.map ./third_party/devtools-frontend/src/node_modules/@babel/generator/node_modules/source-map/dist/source-map.min.js.map @@ -5141,6 +5139,7 @@ ./third_party/devtools-frontend/src/node_modules/uri-js/dist/es5/uri.all.js.map ./third_party/devtools-frontend/src/node_modules/uri-js/dist/es5/uri.all.min.js.map ./third_party/devtools-frontend/src/node_modules/util/util.js +./third_party/devtools-frontend/src/third_party/blink/public/devtools_protocol/browser_protocol.json ./third_party/devtools-frontend/src/third_party/pyjson5/src/benchmarks/mb_config.json ./third_party/expat/src/expat/conftools/ax-append-compile-flags.m4 ./third_party/expat/src/expat/conftools/ax-append-flag.m4 @@ -5332,9 +5331,7 @@ ./third_party/perfetto/protos/perfetto/trace/track_event/chrome_compositor_scheduler_state.proto ./third_party/perfetto/protos/perfetto/trace/track_event/track_event.proto ./third_party/perfetto/src/traced/probes/ftrace/cpu_reader.cc -./third_party/perfetto/src/trace_processor/BUILD.gn ./third_party/perfetto/src/trace_processor/importers/proto/args_table_utils.cc -./third_party/perfetto/src/trace_processor/importers/proto/chrome_compositor_scheduler_state.descriptor.h ./third_party/perfetto/src/trace_processor/importers/proto/track_event_parser.cc ./third_party/PRESUBMIT.py ./third_party/protobuf/benchmarks/benchmarks.proto @@ -5764,7 +5761,9 @@ ./third_party/pyjson5/src/benchmarks/mb_config.json ./third_party/skia/docker/cloudbuild.yaml ./third_party/skia/infra/bots/android_compile/trigger_wait_ac_task.py +./third_party/skia/infra/bots/gen_tasks_logic/dm_flags.go ./third_party/skia/infra/bots/gen_tasks_logic/gen_tasks_logic.go +./third_party/skia/infra/bots/gen_tasks_logic/nano_flags.go ./third_party/skia/infra/bots/recipes/android_compile.expected/android_compile_nontrybot.json ./third_party/skia/infra/bots/recipes/android_compile.expected/android_compile_sdk_trybot.json ./third_party/skia/infra/bots/recipes/android_compile.expected/android_compile_trybot_failure.json @@ -5778,9 +5777,9 @@ ./third_party/skia/tests/AnnotationTest.cpp ./third_party/skia/tests/PathOpsSkpTest.cpp ./third_party/skia/tools/gpu/gl/interface/interface.json5 -./third_party/sqlite/patched/autoconf/tea/tclconfig/tcl.m4 -./third_party/sqlite/sqlite-src-3310100/autoconf/tea/tclconfig/tcl.m4 +./third_party/sqlite/src/autoconf/tea/tclconfig/tcl.m4 ./third_party/tcmalloc/vendor/configure.ac +./third_party/turbine/src/java/com/google/turbine/options/TurbineOptionsParser.java ./third_party/webrtc/modules/desktop_capture/mouse_cursor_monitor_win.cc ./third_party/webrtc/modules/desktop_capture/win/screen_capturer_win_directx.h ./third_party/webrtc/pc/data_channel_controller.h @@ -5862,7 +5861,6 @@ ./tools/perf/testdata/task_output_dir/3/v8.runtime_stats.top_25.reference/perf_results.json ./tools/traffic_annotation/traffic_annotation.proto ./tools/web_dev_style/css_checker.py -./tools/web_dev_style/css_checker_test.py ./tools/web_dev_style/js_checker.py ./tools/win/chromeexts/chromeexts.cc ./tools/win/chromeexts/commands/hwnd_command.cc @@ -5902,12 +5900,14 @@ ./ui/webui/resources/cr_elements/icons.html ./url/android/native_java_unittests/src/org/chromium/url/GURLJavaTest.java ./url/url_idna_icu.cc +./v8/BUILD.gn ./v8/src/codegen/reloc-info.h ./v8/src/debug/interface-types.h ./v8/src/handles/handles.h ./v8/src/objects/maybe-object.h ./v8/src/objects/objects.h ./v8/src/parsing/parser-base.h +./v8/src/snapshot/snapshot-compression.cc ./v8/src/trap-handler/handler-inside.cc ./v8/src/trap-handler/handler-inside-posix.cc ./v8/src/trap-handler/handler-inside-win.cc diff --git a/misc/android_studio_setup.sh b/misc/android_studio_setup.sh index 01f4e9d..98d671f 100644 --- a/misc/android_studio_setup.sh +++ b/misc/android_studio_setup.sh @@ -1,9 +1,9 @@ #!/usr/bin/env bash set -eux -o pipefail -chromium_version=81.0.4044.138 +chromium_version=83.0.4103.61 chrome_target=chrome_public_apk -monochrome_target=monochrome_public_apk +mono_target=monochrome_public_apk webview_target=system_webview_apk # Create symbol links to gn, depot-tools @@ -23,13 +23,6 @@ export NM=${NM:=llvm-nm} export CC=${CC:=clang} export CXX=${CXX:=clang++} -# Need different GN flags than a release build -pushd src -output_folder=out/Debug_apk -mkdir -p ${output_folder} -cat ../android_flags.debug.gn ../android_flags.gn > ${output_folder}/args.gn -popd - # Fix repos ui_automator_commit=$(grep 'ub-uiautomator\.git' src/DEPS | cut -d\' -f10) mkdir src/third_party/ub-uiautomator/lib @@ -58,6 +51,13 @@ git fetch --depth 1 --no-tags origin "${netty4_commit}" git reset --hard FETCH_HEAD popd +# Need different GN flags than a release build +pushd src +output_folder=out/Debug_apk +mkdir -p ${output_folder} +cat ../android_flags.debug.gn ../android_flags.gn > ${output_folder}/args.gn +printf '\ntarget_cpu="arm64"\n' >> ${output_folder}/args.gn +popd # Run gn first pushd src @@ -66,7 +66,7 @@ popd # Compile apk pushd src -ninja -C ${output_folder} ${monochrome_target} +ninja -C ${output_folder} ${mono_target} popd ### @@ -75,6 +75,7 @@ pushd src output_folder=out/Debug mkdir -p ${output_folder} cat ../android_flags.debug.gn ../android_flags.gn > ${output_folder}/args.gn +printf '\ntarget_cpu="arm64"\n' >> ${output_folder}/args.gn # Run gn first gn gen ${output_folder} --fail-on-unused-args @@ -85,5 +86,5 @@ pushd .. patch -p1 --ignore-whitespace -i patches/generate_gradle.patch --no-backup-if-mismatch popd # patch -p1 --ignore-whitespace -i ../patches/src-fix/fix-unkown-warning-clang-9.patch --no-backup-if-mismatch -python build/android/gradle/generate_gradle.py --target //chrome/android:${monochrome_target} --output-directory ${output_folder} +python build/android/gradle/generate_gradle.py --target //chrome/android:${mono_target} --output-directory ${output_folder} popd diff --git a/patches/Bromite/Add-exit-menu-item.patch b/patches/Bromite/Add-exit-menu-item.patch index e582be5..8297b1e 100644 --- a/patches/Bromite/Add-exit-menu-item.patch +++ b/patches/Bromite/Add-exit-menu-item.patch @@ -23,7 +23,7 @@ Corrected Exit functionality --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java -@@ -2078,6 +2078,8 @@ public abstract class ChromeActivity Settings diff --git a/patches/Bromite/Add-flag-to-disable-WebGL.patch b/patches/Bromite/Add-flag-to-disable-WebGL.patch index f062f8b..5e2d5c9 100644 --- a/patches/Bromite/Add-flag-to-disable-WebGL.patch +++ b/patches/Bromite/Add-flag-to-disable-WebGL.patch @@ -10,7 +10,7 @@ Subject: Add flag to disable WebGL --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -1605,6 +1605,9 @@ const FeatureEntry kFeatureEntries[] = { +@@ -1826,6 +1826,9 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kAccelerated2dCanvasName, flag_descriptions::kAccelerated2dCanvasDescription, kOsAll, SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAccelerated2dCanvas)}, @@ -22,9 +22,9 @@ Subject: Add flag to disable WebGL SINGLE_VALUE_TYPE(cc::switches::kShowCompositedLayerBorders)}, --- a/chrome/browser/flag_descriptions.cc +++ b/chrome/browser/flag_descriptions.cc -@@ -414,6 +414,10 @@ const char kDevtoolsExperimentsDescripti - "Enables Developer Tools experiments. Use Settings panel in Developer " - "Tools to toggle individual experiments."; +@@ -401,6 +401,10 @@ const char kDeviceDiscoveryNotifications + const char kDeviceDiscoveryNotificationsDescription[] = + "Device discovery notifications on local network."; +const char kDisableWebGLName[] = "Disable all versions of WebGL"; + @@ -35,9 +35,9 @@ Subject: Add flag to disable WebGL "With this flag on, tasks of the lowest priority will not be executed " --- a/chrome/browser/flag_descriptions.h +++ b/chrome/browser/flag_descriptions.h -@@ -264,6 +264,9 @@ extern const char kDeviceDiscoveryNotifi - extern const char kDevtoolsExperimentsName[]; - extern const char kDevtoolsExperimentsDescription[]; +@@ -255,6 +255,9 @@ extern const char kDebugShortcutsDescrip + extern const char kDeviceDiscoveryNotificationsName[]; + extern const char kDeviceDiscoveryNotificationsDescription[]; +extern const char kDisableWebGLName[]; +extern const char kDisableWebGLDescription[]; diff --git a/patches/Bromite/Add-flags-to-disable-device-motion-and-orientation-APIs.patch b/patches/Bromite/Add-flags-to-disable-device-motion-and-orientation-APIs.patch index cea8220..57fd46a 100644 --- a/patches/Bromite/Add-flags-to-disable-device-motion-and-orientation-APIs.patch +++ b/patches/Bromite/Add-flags-to-disable-device-motion-and-orientation-APIs.patch @@ -19,7 +19,7 @@ legacy acceleration events. --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -1824,6 +1824,12 @@ const FeatureEntry kFeatureEntries[] = { +@@ -2045,6 +2045,12 @@ const FeatureEntry kFeatureEntries[] = { {"enable-gpu-rasterization", flag_descriptions::kGpuRasterizationName, flag_descriptions::kGpuRasterizationDescription, kOsAll, MULTI_VALUE_TYPE(kEnableGpuRasterizationChoices)}, @@ -34,7 +34,7 @@ legacy acceleration events. MULTI_VALUE_TYPE(kEnableOopRasterizationChoices)}, --- a/chrome/browser/flag_descriptions.cc +++ b/chrome/browser/flag_descriptions.cc -@@ -598,6 +598,14 @@ const char kWinrtSensorsImplementationDe +@@ -600,6 +600,14 @@ const char kWinrtSensorsImplementationDe "Enables usage of the Windows.Devices.Sensors WinRT APIs on Windows for " "sensors"; @@ -78,7 +78,7 @@ legacy acceleration events. #else --- a/content/public/common/content_features.cc +++ b/content/public/common/content_features.cc -@@ -756,6 +756,16 @@ const base::Feature kExperimentalProduct +@@ -781,6 +781,16 @@ const base::Feature kWebOtpBackend{"kWeb // TODO(rouslan): Remove this. const base::Feature kWebPayments{"WebPayments", base::FEATURE_ENABLED_BY_DEFAULT}; @@ -93,11 +93,11 @@ legacy acceleration events. + base::FEATURE_DISABLED_BY_DEFAULT}; + - // Makes WebRTC use ECDSA certs by default (i.e., when no cert type was - // specified in JS). + // Minimal user interface experience for payments on the web. + const base::Feature kWebPaymentsMinimalUI{"WebPaymentsMinimalUI", --- a/content/public/common/content_features.h +++ b/content/public/common/content_features.h -@@ -165,6 +165,8 @@ CONTENT_EXPORT extern const base::Featur +@@ -171,6 +171,8 @@ CONTENT_EXPORT extern const base::Featur CONTENT_EXPORT extern const base::Feature kWebXrIncubations; CONTENT_EXPORT extern const base::Feature kWebXrPermissionsApi; @@ -119,7 +119,7 @@ legacy acceleration events. BLINK_PLATFORM_EXPORT static void EnableDecodeJpeg420ImagesToYUV(bool); --- a/third_party/blink/renderer/modules/modules_initializer.cc +++ b/third_party/blink/renderer/modules/modules_initializer.cc -@@ -245,9 +245,12 @@ void ModulesInitializer::InitInspectorAg +@@ -244,9 +244,12 @@ void ModulesInitializer::InitInspectorAg void ModulesInitializer::OnClearWindowObjectInMainWorld( Document& document, const Settings& settings) const { @@ -154,7 +154,7 @@ legacy acceleration events. } --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 -@@ -1172,6 +1172,14 @@ +@@ -1203,6 +1203,14 @@ status: "experimental", }, { diff --git a/patches/Bromite/Add-option-to-not-persist-tabs-across-sessions.patch b/patches/Bromite/Add-option-to-not-persist-tabs-across-sessions.patch index 12e7d39..5fdabdc 100644 --- a/patches/Bromite/Add-option-to-not-persist-tabs-across-sessions.patch +++ b/patches/Bromite/Add-option-to-not-persist-tabs-across-sessions.patch @@ -4,11 +4,11 @@ Subject: Add option to not persist tabs across sessions --- chrome/android/java/res/values/values.xml | 3 ++ - chrome/android/java/res/xml/privacy_preferences.xml | 5 ++++ - chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java | 4 ++- - chrome/android/java/src/org/chromium/chrome/browser/settings/privacy/PrivacySettings.java | 12 ++++++++++ - chrome/browser/ui/android/strings/android_chrome_strings.grd | 6 +++++ - 5 files changed, 29 insertions(+), 1 deletion(-) + chrome/android/java/res/xml/privacy_preferences.xml | 5 +++ + chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java | 4 ++ + chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java | 14 +++++++++- + chrome/browser/ui/android/strings/android_chrome_strings.grd | 6 ++++ + 5 files changed, 30 insertions(+), 2 deletions(-) --- a/chrome/android/java/res/values/values.xml +++ b/chrome/android/java/res/values/values.xml @@ -24,21 +24,21 @@ Subject: Add option to not persist tabs across sessions --- a/chrome/android/java/res/xml/privacy_preferences.xml +++ b/chrome/android/java/res/xml/privacy_preferences.xml -@@ -23,6 +23,11 @@ - android:fragment="org.chromium.chrome.browser.settings.privacy.DoNotTrackSettings" - android:key="do_not_track" - android:title="@string/do_not_track_title" /> -+ ++ IMAGE diff --git a/patches/Bromite/Add-user-setting-for-DNS-over-HTTPS-DoH-custom-URL.patch b/patches/Bromite/Add-user-setting-for-DNS-over-HTTPS-DoH-custom-URL.patch index b47db08..e80c045 100644 --- a/patches/Bromite/Add-user-setting-for-DNS-over-HTTPS-DoH-custom-URL.patch +++ b/patches/Bromite/Add-user-setting-for-DNS-over-HTTPS-DoH-custom-URL.patch @@ -3,28 +3,47 @@ Date: Sat, 23 Nov 2019 10:55:16 +0100 Subject: Add user setting for DNS-over-HTTPS (DoH) custom URL --- - chrome/android/chrome_java_sources.gni | 2 - chrome/android/java/res/layout/doh_editor.xml | 65 +++++++ - chrome/android/java/res/values/values.xml | 2 - chrome/android/java/res/xml/doh_preferences.xml | 25 ++ - chrome/android/java/res/xml/privacy_preferences.xml | 5 - chrome/android/java/src/org/chromium/chrome/browser/flags/FeatureUtilities.java | 24 ++ - chrome/android/java/src/org/chromium/chrome/browser/settings/DoHEditor.java | 92 ++++++++++ - chrome/android/java/src/org/chromium/chrome/browser/settings/DoHPreferences.java | 54 +++++ - chrome/app/generated_resources.grd | 6 - chrome/browser/android/feature_utilities.cc | 23 ++ - chrome/browser/net/system_network_context_manager.cc | 41 ---- - chrome/browser/ui/android/strings/android_chrome_strings.grd | 11 + - chrome/common/chrome_features.cc | 4 - 13 files changed, 320 insertions(+), 34 deletions(-) + chrome/android/chrome_java_resources.gni | 2 + chrome/android/chrome_java_sources.gni | 2 + chrome/android/java/res/layout/doh_editor.xml | 65 +++++++ + chrome/android/java/res/values/values.xml | 2 + chrome/android/java/res/xml/doh_preferences.xml | 25 ++ + chrome/android/java/res/xml/privacy_preferences.xml | 5 + chrome/android/java/src/org/chromium/chrome/browser/settings/DoHEditor.java | 92 ++++++++++ + chrome/android/java/src/org/chromium/chrome/browser/settings/DoHPreferences.java | 54 +++++ + chrome/app/generated_resources.grd | 6 + chrome/browser/flags/android/cached_feature_flags.cc | 24 ++ + chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java | 24 ++ + chrome/browser/net/stub_resolver_config_reader.cc | 40 ---- + chrome/browser/ui/android/strings/android_chrome_strings.grd | 11 + + chrome/common/chrome_features.cc | 4 + 14 files changed, 322 insertions(+), 34 deletions(-) create mode 100644 chrome/android/java/res/layout/doh_editor.xml create mode 100644 chrome/android/java/res/xml/doh_preferences.xml create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/settings/DoHEditor.java create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/settings/DoHPreferences.java +--- a/chrome/android/chrome_java_resources.gni ++++ b/chrome/android/chrome_java_resources.gni +@@ -1107,6 +1107,7 @@ chrome_java_resources = [ + "java/res/layout/device_item_list.xml", + "java/res/layout/distilled_page_font_family_spinner.xml", + "java/res/layout/distilled_page_prefs_view.xml", ++ "java/res/layout/doh_editor.xml", + "java/res/layout/edit_url_suggestion_layout.xml", + "java/res/layout/editable_option_editor_footer.xml", + "java/res/layout/editable_option_editor_icons.xml", +@@ -1346,6 +1347,7 @@ chrome_java_resources = [ + "java/res/xml/data_reduction_preferences.xml", + "java/res/xml/data_reduction_preferences_off_lite_mode.xml", + "java/res/xml/developer_preferences.xml", ++ "java/res/xml/doh_preferences.xml", + "java/res/xml/do_not_track_preferences.xml", + "java/res/xml/download_preferences.xml", + "java/res/xml/homepage_preferences.xml", --- a/chrome/android/chrome_java_sources.gni +++ b/chrome/android/chrome_java_sources.gni -@@ -1345,6 +1345,8 @@ chrome_java_sources = [ +@@ -1399,6 +1399,8 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/searchwidget/SearchWidgetProvider.java", "java/src/org/chromium/chrome/browser/send_tab_to_self/DevicePickerBottomSheetAdapter.java", "java/src/org/chromium/chrome/browser/send_tab_to_self/DevicePickerBottomSheetContent.java", @@ -124,7 +143,7 @@ Subject: Add user setting for DNS-over-HTTPS (DoH) custom URL + xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:app="http://schemas.android.com/apk/res-auto"> + -+ @@ -151,49 +170,9 @@ Subject: Add user setting for DNS-over-HTTPS (DoH) custom URL + android:key="doh" + android:title="@string/options_doh_title" + android:summary="@string/options_doh_summary" /> - { -+ FeatureUtilities.setDoHEnabled((boolean) newValue); ++ CachedFeatureFlags.setDoHEnabled((boolean) newValue); + return true; + }); + @@ -337,7 +316,7 @@ Subject: Add user setting for DNS-over-HTTPS (DoH) custom URL + } + + private void updateCurrentDoHUrl() { -+ mDoHEdit.setSummary(FeatureUtilities.getDoHTemplates()); ++ mDoHEdit.setSummary(CachedFeatureFlags.getDoHTemplates()); + } + + @Override @@ -348,120 +327,160 @@ Subject: Add user setting for DNS-over-HTTPS (DoH) custom URL +} --- a/chrome/app/generated_resources.grd +++ b/chrome/app/generated_resources.grd -@@ -6848,6 +6848,12 @@ the Bookmarks menu."> - - Home page - +@@ -6864,6 +6864,12 @@ the Bookmarks menu."> + + + + + Secure DNS + + + Configure DNS-over-HTTPS (DoH) secure DNS + - - - ---- a/chrome/browser/android/feature_utilities.cc -+++ b/chrome/browser/android/feature_utilities.cc -@@ -7,6 +7,9 @@ - #include "chrome/android/chrome_jni_headers/FeatureUtilities_jni.h" + + Homepage + +--- a/chrome/browser/flags/android/cached_feature_flags.cc ++++ b/chrome/browser/flags/android/cached_feature_flags.cc +@@ -11,6 +11,10 @@ + #include "content/public/common/content_features.h" + #include "content/public/common/network_service_util.h" - #include "base/android/jni_string.h" +#include "chrome/browser/browser_process.h" +#include "components/prefs/pref_service.h" +#include "chrome/common/pref_names.h" - #include "content/public/common/content_features.h" - #include "content/public/common/network_service_util.h" - -@@ -37,3 +40,23 @@ static jboolean JNI_FeatureUtilities_IsN ++ + using base::android::ConvertJavaStringToUTF8; + using base::android::ConvertUTF8ToJavaString; + using base::android::JavaParamRef; +@@ -41,3 +45,23 @@ static jboolean JNI_CachedFeatureFlags_I return content::IsOutOfProcessNetworkService() && base::FeatureList::IsEnabled(features::kWarmUpNetworkProcess); } + -+static jboolean JNI_FeatureUtilities_GetDoHEnabled(JNIEnv* env) { ++static jboolean JNI_CachedFeatureFlags_GetDoHEnabled(JNIEnv* env) { + std::string doh_mode = g_browser_process->local_state()->GetString(prefs::kDnsOverHttpsMode); + return ((doh_mode == "secure") || (doh_mode == "auto")); +} + -+static void JNI_FeatureUtilities_SetDoHEnabled(JNIEnv* env, jboolean enabled) { ++static void JNI_CachedFeatureFlags_SetDoHEnabled(JNIEnv* env, jboolean enabled) { + if (enabled) + g_browser_process->local_state()->SetString(prefs::kDnsOverHttpsMode, "secure"); + else + g_browser_process->local_state()->SetString(prefs::kDnsOverHttpsMode, "off"); +} + -+static ScopedJavaLocalRef JNI_FeatureUtilities_GetDoHTemplates(JNIEnv* env) { ++static ScopedJavaLocalRef JNI_CachedFeatureFlags_GetDoHTemplates(JNIEnv* env) { + return base::android::ConvertUTF8ToJavaString(env, g_browser_process->local_state()->GetString(prefs::kDnsOverHttpsTemplates)); +} + -+static void JNI_FeatureUtilities_SetDoHTemplates(JNIEnv* env, const JavaParamRef& templates) { ++static void JNI_CachedFeatureFlags_SetDoHTemplates(JNIEnv* env, const JavaParamRef& templates) { + g_browser_process->local_state()->SetString(prefs::kDnsOverHttpsTemplates, base::android::ConvertJavaStringToUTF8(env, templates)); +} ---- a/chrome/browser/net/system_network_context_manager.cc -+++ b/chrome/browser/net/system_network_context_manager.cc -@@ -377,40 +377,12 @@ SystemNetworkContextManager::SystemNetwo - local_state_->SetDefaultPrefValue(prefs::kBuiltInDnsClientEnabled, - base::Value(ShouldEnableAsyncDns())); - std::string default_doh_mode = chrome_browser_net::kDnsOverHttpsModeOff; -- std::string default_doh_templates = ""; -- if (base::FeatureList::IsEnabled(features::kDnsOverHttps)) { -- if (features::kDnsOverHttpsFallbackParam.Get()) { -- default_doh_mode = chrome_browser_net::kDnsOverHttpsModeAutomatic; -- } else { -- default_doh_mode = chrome_browser_net::kDnsOverHttpsModeSecure; +--- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java ++++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java +@@ -124,6 +124,26 @@ public class CachedFeatureFlags { + private static Map sOverridesTestFeatures; + private static String sReachedCodeProfilerTrialGroup; + ++ /** ++ * Records whether custom URL for DoH is enabled with native-side feature utilities. ++ * @param url Whether custom URL is enabled or not. ++ */ ++ public static void setDoHEnabled(boolean enabled) { ++ CachedFeatureFlagsJni.get().setDoHEnabled(enabled); ++ } ++ ++ public static boolean getDoHEnabled() { ++ return CachedFeatureFlagsJni.get().getDoHEnabled(); ++ } ++ ++ public static void setDoHTemplates(String t) { ++ CachedFeatureFlagsJni.get().setDoHTemplates(t); ++ } ++ ++ public static String getDoHTemplates() { ++ return CachedFeatureFlagsJni.get().getDoHTemplates(); ++ } ++ + /** + * Checks if a cached feature flag is enabled. + * +@@ -393,6 +413,10 @@ public class CachedFeatureFlags { + + @NativeMethods + interface Natives { ++ void setDoHEnabled(boolean enabled); ++ boolean getDoHEnabled(); ++ void setDoHTemplates(String templates); ++ String getDoHTemplates(); + boolean isNetworkServiceWarmUpEnabled(); + } + } +--- a/chrome/browser/net/stub_resolver_config_reader.cc ++++ b/chrome/browser/net/stub_resolver_config_reader.cc +@@ -122,41 +122,12 @@ StubResolverConfigReader::StubResolverCo + local_state_->SetDefaultPrefValue(prefs::kBuiltInDnsClientEnabled, + base::Value(ShouldEnableAsyncDns())); + std::string default_doh_mode = chrome_browser_net::kDnsOverHttpsModeOff; +- std::string default_doh_templates; +- if (base::FeatureList::IsEnabled(features::kDnsOverHttps)) { +- if (features::kDnsOverHttpsFallbackParam.Get()) { +- default_doh_mode = chrome_browser_net::kDnsOverHttpsModeAutomatic; +- } else { +- default_doh_mode = chrome_browser_net::kDnsOverHttpsModeSecure; +- } +- default_doh_templates = features::kDnsOverHttpsTemplatesParam.Get(); - } -- default_doh_templates = features::kDnsOverHttpsTemplatesParam.Get(); -- } -+ std::string default_doh_templates = features::kDnsOverHttpsTemplatesParam.Get(); - local_state_->SetDefaultPrefValue(prefs::kDnsOverHttpsMode, - base::Value(default_doh_mode)); - local_state_->SetDefaultPrefValue(prefs::kDnsOverHttpsTemplates, - base::Value(default_doh_templates)); ++ std::string default_doh_templates = features::kDnsOverHttpsTemplatesParam.Get(); + local_state_->SetDefaultPrefValue(prefs::kDnsOverHttpsMode, + base::Value(default_doh_mode)); + local_state_->SetDefaultPrefValue(prefs::kDnsOverHttpsTemplates, + base::Value(default_doh_templates)); -- // If the user has explicitly enabled or disabled the DoH experiment in -- // chrome://flags, store that choice in the user prefs so that it can be -- // persisted after the experiment ends. Also make sure to remove the stored -- // prefs value if the user has changed their chrome://flags selection to the -- // default. -- flags_ui::PrefServiceFlagsStorage flags_storage(local_state_); -- std::set entries = flags_storage.GetFlags(); -- if (entries.count("dns-over-https@1")) { -- // The user has "Enabled" selected. -- local_state_->SetString(prefs::kDnsOverHttpsMode, -- chrome_browser_net::kDnsOverHttpsModeAutomatic); -- } else if (entries.count("dns-over-https@2")) { -- // The user has "Disabled" selected. -- local_state_->SetString(prefs::kDnsOverHttpsMode, -- chrome_browser_net::kDnsOverHttpsModeOff); -- } else { -- // The user has "Default" selected. -- local_state_->ClearPref(prefs::kDnsOverHttpsMode); -- } -- - PrefChangeRegistrar::NamedChangeCallback dns_pref_callback = - base::BindRepeating(&OnStubResolverConfigChanged, - base::Unretained(local_state_)); -@@ -545,9 +517,14 @@ void SystemNetworkContextManager::GetStu +- // If the user has explicitly enabled or disabled the DoH experiment in +- // chrome://flags and the DoH UI setting is not visible, store that choice +- // in the user prefs so that it can be persisted after the experiment ends. +- // Also make sure to remove the stored prefs value if the user has changed +- // their chrome://flags selection to the default. +- if (!features::kDnsOverHttpsShowUiParam.Get()) { +- flags_ui::PrefServiceFlagsStorage flags_storage(local_state_); +- std::set entries = flags_storage.GetFlags(); +- if (entries.count("dns-over-https@1")) { +- // The user has "Enabled" selected. +- local_state_->SetString(prefs::kDnsOverHttpsMode, +- chrome_browser_net::kDnsOverHttpsModeAutomatic); +- } else if (entries.count("dns-over-https@2")) { +- // The user has "Disabled" selected. +- local_state_->SetString(prefs::kDnsOverHttpsMode, +- chrome_browser_net::kDnsOverHttpsModeOff); +- } else { +- // The user has "Default" selected. +- local_state_->ClearPref(prefs::kDnsOverHttpsMode); +- } +- } + } - std::string doh_templates = - local_state->GetString(prefs::kDnsOverHttpsTemplates); -- std::string server_method; + pref_change_registrar_.Add(prefs::kBuiltInDnsClientEnabled, pref_callback); +@@ -346,8 +317,13 @@ void StubResolverConfigReader::GetAndUpd + std::vector dns_over_https_servers; + base::Optional> + servers_mojo; - if (!doh_templates.empty() && -- *secure_dns_mode != net::DnsConfig::SecureDnsMode::OFF) { +- secure_dns_mode != net::DnsConfig::SecureDnsMode::OFF) { + if (doh_templates.empty()) { -+ *secure_dns_mode = net::DnsConfig::SecureDnsMode::OFF; ++ secure_dns_mode = net::DnsConfig::SecureDnsMode::OFF; + doh_mode = chrome_browser_net::kDnsOverHttpsModeOff; + } -+ + LOG(INFO) << "DoH templates: '" << doh_templates << "' with mode " << doh_mode; -+ if (*secure_dns_mode != net::DnsConfig::SecureDnsMode::OFF) { ++ if (secure_dns_mode != net::DnsConfig::SecureDnsMode::OFF) { + std::string server_method; - for (const std::string& server_template : - SplitString(doh_templates, " ", base::TRIM_WHITESPACE, - base::SPLIT_WANT_NONEMPTY)) { + for (base::StringPiece server_template : + chrome_browser_net::SplitDohTemplateGroup(doh_templates)) { + if (!net::dns_util::IsValidDohTemplate(server_template, &server_method)) { --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd -@@ -599,6 +599,17 @@ CHAR-LIMIT guidelines: +@@ -594,6 +594,17 @@ CHAR-LIMIT guidelines: Chrome Passwords @@ -477,11 +496,11 @@ Subject: Add user setting for DNS-over-HTTPS (DoH) custom URL + + - - Edit home page + + Enter custom web address --- a/chrome/common/chrome_features.cc +++ b/chrome/common/chrome_features.cc -@@ -293,12 +293,12 @@ const char kDisallowUnsafeHttpDownloadsP +@@ -265,12 +265,12 @@ const base::Feature kDnsHttpssvc{"DnsHtt // Enable DNS over HTTPS (DoH). const base::Feature kDnsOverHttps{"DnsOverHttps", diff --git a/patches/Bromite/Change-default-webRTC-policy-to-not-use-any-address.patch b/patches/Bromite/Change-default-webRTC-policy-to-not-use-any-address.patch new file mode 100644 index 0000000..a6af68f --- /dev/null +++ b/patches/Bromite/Change-default-webRTC-policy-to-not-use-any-address.patch @@ -0,0 +1,49 @@ +From: csagan5 <32685696+csagan5@users.noreply.github.com> +Date: Sat, 9 May 2020 14:42:37 +0200 +Subject: Change default webRTC policy to not use any address + +This prevents leakage of the local IP address. + +See also: https://github.com/bromite/bromite/issues/553 +--- + chrome/browser/ui/browser_ui_prefs.cc | 4 ++-- + .../peerconnection/peer_connection_dependency_factory.cc | 7 ++++--- + 2 files changed, 6 insertions(+), 5 deletions(-) + +diff --git a/chrome/browser/ui/browser_ui_prefs.cc b/chrome/browser/ui/browser_ui_prefs.cc +--- a/chrome/browser/ui/browser_ui_prefs.cc ++++ b/chrome/browser/ui/browser_ui_prefs.cc +@@ -83,8 +83,8 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistrySyncable* registry) { + false); + #endif + // TODO(guoweis): Remove next 2 options at M50. +- registry->RegisterBooleanPref(prefs::kWebRTCMultipleRoutesEnabled, true); +- registry->RegisterBooleanPref(prefs::kWebRTCNonProxiedUdpEnabled, true); ++ registry->RegisterBooleanPref(prefs::kWebRTCMultipleRoutesEnabled, false); ++ registry->RegisterBooleanPref(prefs::kWebRTCNonProxiedUdpEnabled, false); + registry->RegisterStringPref(prefs::kWebRTCIPHandlingPolicy, + blink::kWebRTCIPHandlingDefault); + registry->RegisterStringPref(prefs::kWebRTCUDPPortRange, std::string()); +diff --git a/third_party/blink/renderer/modules/peerconnection/peer_connection_dependency_factory.cc b/third_party/blink/renderer/modules/peerconnection/peer_connection_dependency_factory.cc +--- a/third_party/blink/renderer/modules/peerconnection/peer_connection_dependency_factory.cc ++++ b/third_party/blink/renderer/modules/peerconnection/peer_connection_dependency_factory.cc +@@ -435,12 +435,13 @@ PeerConnectionDependencyFactory::CreatePortAllocator( + port_config.enable_nonproxied_udp = false; + break; + case DEFAULT: +- port_config.enable_multiple_routes = true; +- port_config.enable_nonproxied_udp = true; ++ port_config.enable_multiple_routes = false; ++ port_config.enable_nonproxied_udp = false; ++ port_config.enable_default_local_candidate = false; + break; + } + +- VLOG(3) << "WebRTC routing preferences: " ++ LOG(INFO) << "WebRTC routing preferences: " + << "policy: " << policy + << ", multiple_routes: " << port_config.enable_multiple_routes + << ", nonproxied_udp: " << port_config.enable_nonproxied_udp +-- +2.17.1 + diff --git a/patches/Bromite/Disable-AImageReader-for-ARM64-P-and-ARM64-Q.patch b/patches/Bromite/Disable-AImageReader-for-ARM64-P-and-ARM64-Q.patch deleted file mode 100644 index b7602b3..0000000 --- a/patches/Bromite/Disable-AImageReader-for-ARM64-P-and-ARM64-Q.patch +++ /dev/null @@ -1,95 +0,0 @@ -From: csagan5 <32685696+csagan5@users.noreply.github.com> -Date: Thu, 20 Feb 2020 22:44:06 +0100 -Subject: Disable AImageReader for ARM64/P and ARM64/Q - ---- - chrome/browser/android/chrome_startup_flags.cc | 9 +++++++++ - gpu/config/gpu_finch_features.cc | 4 ++++ - gpu/config/gpu_util.cc | 8 ++++++++ - media/base/media_switches.cc | 4 ++++ - 4 files changed, 25 insertions(+) - ---- a/chrome/browser/android/chrome_startup_flags.cc -+++ b/chrome/browser/android/chrome_startup_flags.cc -@@ -6,6 +6,7 @@ - - #include "chrome/browser/android/chrome_startup_flags.h" - -+#include "base/android/build_info.h" - #include "base/android/jni_android.h" - #include "base/android/jni_string.h" - #include "base/android/scoped_java_ref.h" -@@ -16,6 +17,7 @@ - #include "chrome/common/chrome_switches.h" - #include "components/browser_sync/browser_sync_switches.h" - #include "components/dom_distiller/core/dom_distiller_switches.h" -+#include "content/public/common/content_switches.h" - #include "media/base/media_switches.h" - - namespace { -@@ -40,6 +42,13 @@ void SetChromeSpecificCommandLineFlags() - if (base::SysInfo::IsLowEndDevice()) - SetCommandLineSwitchASCII(switches::kDisableSyncTypes, "Favicon Images"); - -+#ifdef ARCH_CPU_ARM64 -+ // workaround for Android 9/10 crashes on ARM64 CPUs -+ if (base::android::BuildInfo::GetInstance()->sdk_int() >= base::android::SDK_VERSION_P) { -+ SetCommandLineSwitchASCII("disable_aimagereader", "1"); -+ } -+#endif -+ - // Enable DOM Distiller backend. - SetCommandLineSwitch(switches::kEnableDomDistiller); - } ---- a/gpu/config/gpu_finch_features.cc -+++ b/gpu/config/gpu_finch_features.cc -@@ -15,7 +15,11 @@ namespace features { - #if defined(OS_ANDROID) - // Use android AImageReader when playing videos with MediaPlayer. - const base::Feature kAImageReaderMediaPlayer{"AImageReaderMediaPlayer", -+#ifdef ARCH_CPU_ARM64 -+ base::FEATURE_DISABLED_BY_DEFAULT}; -+#else - base::FEATURE_ENABLED_BY_DEFAULT}; -+#endif - - // Used only by webview to disable SurfaceControl. - const base::Feature kDisableSurfaceControlForWebview{ ---- a/gpu/config/gpu_util.cc -+++ b/gpu/config/gpu_util.cc -@@ -47,6 +47,9 @@ GpuFeatureStatus GetAndroidSurfaceContro - #if !defined(OS_ANDROID) - return kGpuFeatureStatusDisabled; - #else -+ if (blacklisted_features.count(GPU_FEATURE_TYPE_ANDROID_SURFACE_CONTROL)) -+ return kGpuFeatureStatusBlacklisted; -+ - if (!gpu_preferences.enable_android_surface_control) - return kGpuFeatureStatusDisabled; - -@@ -288,6 +291,11 @@ void AdjustGpuFeatureStatusToWorkarounds - gpu_feature_info->status_values[GPU_FEATURE_TYPE_ACCELERATED_WEBGL2] = - kGpuFeatureStatusBlacklisted; - } -+ -+ if (gpu_feature_info->IsWorkaroundEnabled(DISABLE_AIMAGEREADER)) { -+ gpu_feature_info->status_values[GPU_FEATURE_TYPE_ANDROID_SURFACE_CONTROL] = -+ kGpuFeatureStatusBlacklisted; -+ } - } - - GPUInfo* g_gpu_info_cache = nullptr; ---- a/media/base/media_switches.cc -+++ b/media/base/media_switches.cc -@@ -504,7 +504,11 @@ const base::Feature kMediaDrmPreprovisio - - // Enables the Android Image Reader path for Video decoding(for AVDA and MCVD) - const base::Feature kAImageReaderVideoOutput{"AImageReaderVideoOutput", -+#ifdef ARCH_CPU_ARM64 -+ base::FEATURE_DISABLED_BY_DEFAULT}; -+#else - base::FEATURE_ENABLED_BY_DEFAULT}; -+#endif - - // Prevents using SurfaceLayer for videos. This is meant to be used by embedders - // that cannot support SurfaceLayer at the moment. diff --git a/patches/Bromite/Download-on-Android-Q-Remove-a-DCHECK-in-CreateReservation.patch b/patches/Bromite/Download-on-Android-Q-Remove-a-DCHECK-in-CreateReservation.patch deleted file mode 100644 index 373cce5..0000000 --- a/patches/Bromite/Download-on-Android-Q-Remove-a-DCHECK-in-CreateReservation.patch +++ /dev/null @@ -1,28 +0,0 @@ -From: Xing Liu -Date: Tue, 18 Feb 2020 21:10:54 +0000 -Subject: Download on Android Q: Remove a DCHECK in CreateReservation. - -When resuming a download, the suggested path can be content URI. This -will hit a DCHECK in CreateReservation. - -Bug: 1045642 -Change-Id: I61c452afafbbc9606f747c84ff18e6b9dc9a0fb6 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2062759 -Reviewed-by: Min Qin -Commit-Queue: Xing Liu -Cr-Commit-Position: refs/heads/master@{#742270} ---- - components/download/internal/common/download_path_reservation_tracker.cc | 2 -- - 1 file changed, 2 deletions(-) - ---- a/components/download/internal/common/download_path_reservation_tracker.cc -+++ b/components/download/internal/common/download_path_reservation_tracker.cc -@@ -325,8 +325,6 @@ PathValidationResult ValidatePathAndReso - // - Returns the result of creating the path reservation. - PathValidationResult CreateReservation(const CreateReservationInfo& info, - base::FilePath* reserved_path) { -- DCHECK(info.suggested_path.IsAbsolute()); -- - // Create a reservation map if one doesn't exist. It will be automatically - // deleted when all the reservations are revoked. - if (g_reservation_map == NULL) diff --git a/patches/Bromite/Remove-account-permissions-from-manifest.patch b/patches/Bromite/Remove-account-permissions-from-manifest.patch new file mode 100644 index 0000000..05802fb --- /dev/null +++ b/patches/Bromite/Remove-account-permissions-from-manifest.patch @@ -0,0 +1,87 @@ +From: csagan5 <32685696+csagan5@users.noreply.github.com> +Date: Sun, 14 Apr 2019 12:08:27 +0200 +Subject: Remove all sync and account permissions/features from manifest + +--- + chrome/android/java/AndroidManifest.xml | 26 ---------- + components/sync/android/java/src/org/chromium/components/sync/AndroidSyncSettings.java | 2 + 2 files changed, 1 insertion(+), 27 deletions(-) + +--- a/chrome/android/java/AndroidManifest.xml ++++ b/chrome/android/java/AndroidManifest.xml +@@ -43,23 +43,17 @@ by a child template that "extends" this + {% if target_sdk_version|int > 27 or target_sdk_version == "Q" %} + + {% endif %} +- + +- + + + +- +- + + +- + + + + + +- + {% set enable_vr = enable_vr|default(0) %} + {% if enable_vr == "true" %} + +@@ -95,8 +89,6 @@ by a child template that "extends" this + + + +- +- + {% block extra_uses_permissions %} + {% endblock %} + +@@ -932,16 +924,6 @@ by a child template that "extends" this + android:resource="@xml/file_paths" /> + + +- +- +- +- +- +- +- +- + + + +@@ -1010,14 +992,6 @@ by a child template that "extends" this + android:configChanges="orientation|keyboardHidden|keyboard|screenSize|mcc|mnc|screenLayout|smallestScreenSize" + android:hardwareAccelerated="false" /> + +- +- +- +- +- + + +--- a/components/sync/android/java/src/org/chromium/components/sync/AndroidSyncSettings.java ++++ b/components/sync/android/java/src/org/chromium/components/sync/AndroidSyncSettings.java +@@ -311,7 +311,7 @@ public class AndroidSyncSettings { + mIsSyncable = false; + mChromeSyncEnabled = false; + } +- mMasterSyncEnabled = mSyncContentResolverDelegate.getMasterSyncAutomatically(); ++ mMasterSyncEnabled = false; + StrictMode.setThreadPolicy(oldPolicy); + + return oldChromeSyncEnabled != mChromeSyncEnabled diff --git a/patches/Bromite/Revert-flags-remove-disable-pull-to-refresh-effect.patch b/patches/Bromite/Revert-flags-remove-disable-pull-to-refresh-effect.patch index b2cd06d..b5e40f5 100644 --- a/patches/Bromite/Revert-flags-remove-disable-pull-to-refresh-effect.patch +++ b/patches/Bromite/Revert-flags-remove-disable-pull-to-refresh-effect.patch @@ -12,7 +12,7 @@ This reverts commit 4e598f38a0e6dd3dbede009c6a99b2a520a94e1f. --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -2145,6 +2145,10 @@ const FeatureEntry kFeatureEntries[] = { +@@ -2375,6 +2375,10 @@ const FeatureEntry kFeatureEntries[] = { SINGLE_VALUE_TYPE(switches::kHostedAppQuitNotification)}, #endif // OS_MACOSX #if defined(OS_ANDROID) @@ -25,7 +25,7 @@ This reverts commit 4e598f38a0e6dd3dbede009c6a99b2a520a94e1f. flag_descriptions::kTranslateForceTriggerOnEnglishDescription, kOsAndroid, --- a/chrome/browser/flag-metadata.json +++ b/chrome/browser/flag-metadata.json -@@ -70,6 +70,11 @@ +@@ -65,6 +65,11 @@ "expiry_milestone": 88 }, { @@ -39,9 +39,9 @@ This reverts commit 4e598f38a0e6dd3dbede009c6a99b2a520a94e1f. // This flag is used for frequent manual testing and should not be removed. --- a/chrome/browser/flag_descriptions.cc +++ b/chrome/browser/flag_descriptions.cc -@@ -2600,6 +2600,10 @@ const char kProcessSharingWithStrictSite - "separated like strict site isolation, but process selection puts multiple " - "site instances in a single process."; +@@ -2575,6 +2575,10 @@ const char kProcessSharingWithStrictSite + const char kQueryTilesName[] = "Show query tiles"; + const char kQueryTilesDescription[] = "Shows query tiles in Chrome"; +const char kPullToRefreshEffectName[] = "The pull-to-refresh effect"; +const char kPullToRefreshEffectDescription[] = @@ -52,9 +52,9 @@ This reverts commit 4e598f38a0e6dd3dbede009c6a99b2a520a94e1f. "Determines what pages the Reader Mode infobar is shown on."; --- a/chrome/browser/flag_descriptions.h +++ b/chrome/browser/flag_descriptions.h -@@ -1504,6 +1504,9 @@ extern const char kProcessSharingWithDef - extern const char kProcessSharingWithStrictSiteInstancesName[]; - extern const char kProcessSharingWithStrictSiteInstancesDescription[]; +@@ -1484,6 +1484,9 @@ extern const char kProcessSharingWithStr + extern const char kQueryTilesName[]; + extern const char kQueryTilesDescription[]; +extern const char kPullToRefreshEffectName[]; +extern const char kPullToRefreshEffectDescription[]; diff --git a/patches/Bromite/Use-a-minimum-DoH-timeout-of-400ms.patch b/patches/Bromite/Use-a-minimum-DoH-timeout-of-400ms.patch deleted file mode 100644 index 69f2432..0000000 --- a/patches/Bromite/Use-a-minimum-DoH-timeout-of-400ms.patch +++ /dev/null @@ -1,44 +0,0 @@ -From: csagan5 <32685696+csagan5@users.noreply.github.com> -Date: Thu, 9 Jan 2020 19:59:08 +0100 -Subject: Use a minimum DoH timeout of 400ms - ---- - net/dns/dns_session.cc | 7 ++++++- - net/dns/dns_session.h | 1 + - 2 files changed, 7 insertions(+), 1 deletion(-) - ---- a/net/dns/dns_session.cc -+++ b/net/dns/dns_session.cc -@@ -118,6 +118,8 @@ DnsSession::DnsSession(const DnsConfig& - socket_pool_->Initialize(&config_.nameservers, net_log); - UMA_HISTOGRAM_CUSTOM_COUNTS("AsyncDNS.ServerCount", - config_.nameservers.size(), 1, 10, 11); -+ // minimum timeout for all DoH requests -+ min_doh_timeout_ = base::TimeDelta::FromMilliseconds(400); - UpdateTimeouts(NetworkChangeNotifier::GetConnectionType()); - InitializeServerStats(); - } -@@ -334,9 +336,12 @@ base::TimeDelta DnsSession::NextTimeout( - } - - base::TimeDelta DnsSession::NextDohTimeout(unsigned doh_server_index) { -- return NextTimeoutHelper( -+ base::TimeDelta timeout = NextTimeoutHelper( - GetServerStats(doh_server_index, true /* is _doh_server */), - 0 /* num_backoffs */); -+ if (timeout < min_doh_timeout_) -+ return min_doh_timeout_; -+ return timeout; - } - - base::TimeDelta DnsSession::NextTimeoutHelper(ServerStats* server_stats, ---- a/net/dns/dns_session.h -+++ b/net/dns/dns_session.h -@@ -176,6 +176,7 @@ class NET_EXPORT_PRIVATE DnsSession : pu - - base::TimeDelta initial_timeout_; - base::TimeDelta max_timeout_; -+ base::TimeDelta min_doh_timeout_; - - // TODO(crbug.com/1022059): Move all handling of ServerStats (both for DoH and - // non-DoH) to ResolveContext. diff --git a/patches/Kiwi/gn.patch b/patches/Kiwi/gn.patch index 659f494..b2cccc6 100644 --- a/patches/Kiwi/gn.patch +++ b/patches/Kiwi/gn.patch @@ -3,19 +3,18 @@ build/config/locales.gni | 2 chrome/BUILD.gn | 4 chrome/android/BUILD.gn | 1 - chrome/browser/BUILD.gn | 44 ----- - chrome/browser/apps/BUILD.gn | 5 + chrome/browser/BUILD.gn | 43 +--- chrome/browser/apps/platform_apps/api/music_manager_private/BUILD.gn | 1 chrome/browser/devtools/BUILD.gn | 14 - chrome/browser/extensions/BUILD.gn | 7 chrome/browser/media/router/discovery/BUILD.gn | 4 chrome/browser/resources/BUILD.gn | 4 - chrome/browser/ui/BUILD.gn | 85 +--------- + chrome/browser/ui/BUILD.gn | 88 +--------- chrome/browser/ui/views/BUILD.gn | 2 chrome/browser/ui/webui/discards/BUILD.gn | 2 - chrome/browser/web_applications/BUILD.gn | 5 + chrome/browser/web_applications/BUILD.gn | 3 chrome/browser/web_applications/components/BUILD.gn | 11 - - chrome/browser/web_applications/extensions/BUILD.gn | 3 + chrome/browser/web_applications/extensions/BUILD.gn | 1 chrome/chrome_paks.gni | 2 chrome/common/BUILD.gn | 1 chrome/common/extensions/api/api_sources.gni | 2 @@ -40,7 +39,7 @@ ui/gfx/animation/BUILD.gn | 2 ui/message_center/BUILD.gn | 4 ui/views/BUILD.gn | 20 ++ - 41 files changed, 97 insertions(+), 179 deletions(-) + 40 files changed, 95 insertions(+), 174 deletions(-) --- a/apps/BUILD.gn +++ b/apps/BUILD.gn @@ -75,7 +74,7 @@ --- a/ui/base/BUILD.gn +++ b/ui/base/BUILD.gn -@@ -453,6 +453,11 @@ jumbo_component("base") { +@@ -452,6 +452,11 @@ jumbo_component("base") { deps += [ "//third_party/re2" ] } @@ -87,7 +86,7 @@ if (!is_ios) { # iOS does not use Chromium-specific code for event handling. public_deps += [ -@@ -616,14 +621,6 @@ jumbo_component("base") { +@@ -613,14 +618,6 @@ jumbo_component("base") { if (!toolkit_views && !use_aura) { sources -= [ "dragdrop/drag_drop_types.h", @@ -102,10 +101,10 @@ ] } -@@ -633,12 +630,6 @@ jumbo_component("base") { +@@ -629,12 +626,6 @@ jumbo_component("base") { + libs += [ "jnigraphics" ] sources -= [ - "cursor/cursor_android.cc", - "default_theme_provider.cc", - "l10n/l10n_font_util.cc", - "models/button_menu_item_model.cc", @@ -117,7 +116,7 @@ --- a/chrome/browser/web_applications/BUILD.gn +++ b/chrome/browser/web_applications/BUILD.gn -@@ -186,7 +186,6 @@ source_set("web_applications_unit_tests" +@@ -198,7 +198,6 @@ source_set("web_applications_unit_tests" "//chrome/browser", "//chrome/browser/web_applications/components", "//chrome/common", @@ -125,27 +124,18 @@ "//content/public/browser", "//content/test:test_support", "//skia", -@@ -217,8 +216,6 @@ source_set("web_applications_browser_tes - ":web_applications", - ":web_applications_test_support", - "//chrome/browser/web_applications/components", -- "//chrome/test:test_support", -- "//chrome/test:test_support_ui", - ] - } - -@@ -234,8 +231,6 @@ source_set("common_browser_tests") { - ":web_applications_test_support", +@@ -244,8 +243,6 @@ source_set("web_applications_browser_tes "//chrome/app:command_ids", "//chrome/browser/web_applications/components", + "//chrome/services/app_service/public/cpp:app_update", - "//chrome/test:test_support", - "//chrome/test:test_support_ui", + "//components/permissions:permissions", ] - } --- a/chrome/browser/web_applications/components/BUILD.gn +++ b/chrome/browser/web_applications/components/BUILD.gn -@@ -94,6 +94,14 @@ source_set("components") { +@@ -97,6 +97,14 @@ source_set("components") { ] } @@ -160,7 +150,7 @@ if (is_win) { sources += [ "web_app_file_handler_registration_win.cc", -@@ -168,7 +176,6 @@ source_set("unit_tests") { +@@ -181,7 +189,6 @@ source_set("unit_tests") { "//chrome/app/theme:theme_resources", "//chrome/browser/web_applications:web_app_test_group", "//chrome/browser/web_applications:web_applications_test_support", @@ -168,7 +158,7 @@ "//content/public/browser", "//skia", "//testing/gmock", -@@ -190,8 +197,6 @@ source_set("browser_tests") { +@@ -211,8 +218,6 @@ source_set("browser_tests") { deps = [ ":components", "//chrome/browser/web_applications:web_applications_test_support", @@ -179,7 +169,7 @@ } --- a/chrome/browser/web_applications/extensions/BUILD.gn +++ b/chrome/browser/web_applications/extensions/BUILD.gn -@@ -66,7 +66,6 @@ source_set("unit_tests") { +@@ -67,7 +67,6 @@ source_set("unit_tests") { "//chrome/browser/web_applications:web_applications_test_support", "//chrome/browser/web_applications/components", "//chrome/common", @@ -187,15 +177,6 @@ "//components/crx_file:crx_file", "//content/public/browser", "//content/test:test_support", -@@ -100,8 +99,6 @@ source_set("browser_tests") { - "//chrome/browser/web_applications:web_applications_on_extensions_test_support", - "//chrome/browser/web_applications:web_applications_test_support", - "//chrome/browser/web_applications/components", -- "//chrome/test:test_support", -- "//chrome/test:test_support_ui", - "//extensions:test_support", - "//extensions/browser", - "//extensions/common", --- a/chrome/browser/ui/views/BUILD.gn +++ b/chrome/browser/ui/views/BUILD.gn @@ -5,8 +5,6 @@ @@ -294,7 +275,7 @@ # Reset sources_assignment_filter for the BUILD.gn file to prevent # regression during the migration of Chromium away from the feature. -@@ -157,6 +157,7 @@ jumbo_component("views") { +@@ -153,6 +153,7 @@ jumbo_component("views") { "controls/menu/menu_types.h", "controls/menu/submenu_view.h", "controls/message_box_view.h", @@ -302,7 +283,7 @@ "controls/native/native_view_host.h", "controls/native/native_view_host_mac.h", "controls/native/native_view_host_wrapper.h", -@@ -193,6 +194,7 @@ jumbo_component("views") { +@@ -189,6 +190,7 @@ jumbo_component("views") { "debug_utils.h", "drag_controller.h", "drag_utils.h", @@ -310,7 +291,7 @@ "event_monitor.h", "focus/external_focus_tracker.h", "focus/focus_manager.h", -@@ -257,6 +259,7 @@ jumbo_component("views") { +@@ -255,6 +257,7 @@ jumbo_component("views") { "widget/native_widget_private.h", "widget/root_view.h", "widget/root_view_targeter.h", @@ -318,7 +299,7 @@ "widget/tooltip_manager.h", "widget/widget.h", "widget/widget_delegate.h", -@@ -347,6 +350,7 @@ jumbo_component("views") { +@@ -343,6 +346,7 @@ jumbo_component("views") { "controls/label.cc", "controls/link.cc", "controls/menu/menu_config.cc", @@ -326,7 +307,7 @@ "controls/menu/menu_controller.cc", "controls/menu/menu_delegate.cc", "controls/menu/menu_host.cc", -@@ -354,6 +358,8 @@ jumbo_component("views") { +@@ -350,6 +354,8 @@ jumbo_component("views") { "controls/menu/menu_image_util.cc", "controls/menu/menu_item_view.cc", "controls/menu/menu_model_adapter.cc", @@ -335,7 +316,7 @@ "controls/menu/menu_runner.cc", "controls/menu/menu_runner_impl.cc", "controls/menu/menu_runner_impl_adapter.cc", -@@ -361,6 +367,7 @@ jumbo_component("views") { +@@ -357,6 +363,7 @@ jumbo_component("views") { "controls/menu/menu_separator.cc", "controls/menu/submenu_view.cc", "controls/message_box_view.cc", @@ -343,7 +324,7 @@ "controls/native/native_view_host.cc", "controls/prefix_selector.cc", "controls/progress_bar.cc", -@@ -389,7 +396,9 @@ jumbo_component("views") { +@@ -385,7 +392,9 @@ jumbo_component("views") { "controls/views_text_services_context_menu_base.cc", "controls/views_text_services_context_menu_base.h", "debug_utils.cc", @@ -353,7 +334,7 @@ "focus/external_focus_tracker.cc", "focus/focus_manager.cc", "focus/focus_manager_factory.cc", -@@ -412,9 +421,12 @@ jumbo_component("views") { +@@ -408,9 +417,12 @@ jumbo_component("views") { "metadata/metadata_cache.cc", "metadata/metadata_types.cc", "metadata/type_conversion.cc", @@ -366,7 +347,7 @@ "paint_info.cc", "painter.cc", "rect_based_targeting_utils.cc", -@@ -424,6 +436,7 @@ jumbo_component("views") { +@@ -420,6 +432,7 @@ jumbo_component("views") { "style/platform_style.cc", "style/typography.cc", "style/typography_provider.cc", @@ -374,11 +355,13 @@ "view.cc", "view_class_properties.cc", "view_constants.cc", -@@ -435,10 +448,14 @@ jumbo_component("views") { +@@ -431,12 +444,16 @@ jumbo_component("views") { "views_delegate.cc", "views_features.cc", "views_switches.cc", + "views_touch_selection_controller_factory_android.cc", + "widget/any_widget_observer.cc", + "widget/any_widget_observer_singleton.cc", "widget/drop_helper.cc", + "widget/native_widget_android.cc", + "widget/native_widget_android.h", @@ -389,7 +372,7 @@ "widget/tooltip_manager.cc", "widget/widget.cc", "widget/widget_aura_utils.cc", -@@ -487,6 +504,7 @@ jumbo_component("views") { +@@ -484,6 +501,7 @@ jumbo_component("views") { "//skia", "//third_party/icu", "//ui/accessibility", @@ -399,7 +382,7 @@ "//ui/latency", --- a/chrome/test/BUILD.gn +++ b/chrome/test/BUILD.gn -@@ -4782,7 +4782,6 @@ test("unit_tests") { +@@ -4837,7 +4837,6 @@ test("unit_tests") { "//chrome/common/extensions/api", "//components/safe_browsing:buildflags", "//components/services/unzip:in_process", @@ -409,7 +392,7 @@ "//extensions/renderer:unit_test_support", --- a/extensions/BUILD.gn +++ b/extensions/BUILD.gn -@@ -221,7 +221,6 @@ test("extensions_unittests") { +@@ -220,7 +220,6 @@ test("extensions_unittests") { ] deps = [ @@ -419,7 +402,7 @@ "//base/test:test_support", --- a/chrome/BUILD.gn +++ b/chrome/BUILD.gn -@@ -1410,7 +1410,7 @@ group("extra_resources") { +@@ -1393,7 +1393,7 @@ group("extra_resources") { "//components/autofill/core/browser:autofill_address_rewriter_resources", ] @@ -428,7 +411,7 @@ public_deps += [ "//chrome/browser/resources:bookmarks_resources", "//chrome/browser/resources:component_extension_resources", -@@ -1436,7 +1436,7 @@ group("extra_resources") { +@@ -1417,7 +1417,7 @@ group("extra_resources") { ] } @@ -439,16 +422,16 @@ --- a/chrome/browser/resources/BUILD.gn +++ b/chrome/browser/resources/BUILD.gn -@@ -82,7 +82,7 @@ if (closure_compile) { +@@ -85,7 +85,7 @@ if (closure_compile) { } } -if (!is_android) { +if (enable_extensions || !is_android) { grit("bookmarks_resources") { - # The .grd contains references to generated files. - source_is_generated = true -@@ -292,7 +292,7 @@ if (is_chromeos) { + grit_flags = [ + "-E", +@@ -303,7 +303,7 @@ if (is_chromeos) { } } @@ -459,7 +442,7 @@ --- a/third_party/blink/public/mojom/BUILD.gn +++ b/third_party/blink/public/mojom/BUILD.gn -@@ -162,7 +162,7 @@ mojom("mojom_platform") { +@@ -180,7 +180,7 @@ mojom("mojom_platform") { "worker/worker_options.mojom", ] @@ -468,23 +451,9 @@ sources += [ "serial/serial.mojom" ] } ---- a/chrome/browser/apps/BUILD.gn -+++ b/chrome/browser/apps/BUILD.gn -@@ -13,7 +13,10 @@ source_set("apps") { - "apps_launch.h", - ] - -- deps = [ "//chrome/browser/apps/platform_apps" ] -+ deps = [ -+ "//chrome/browser/apps/platform_apps", -+ "//chrome/services/app_service/public/mojom", -+ ] - - configs += [ "//build/config/compiler:wexit_time_destructors" ] - } --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -415,7 +415,6 @@ jumbo_static_library("browser") { +@@ -414,7 +414,6 @@ jumbo_static_library("browser") { "download/download_core_service_factory.h", "download/download_core_service_impl.cc", "download/download_core_service_impl.h", @@ -492,7 +461,7 @@ "download/download_file_picker.cc", "download/download_file_picker.h", "download/download_history.cc", -@@ -459,6 +458,7 @@ jumbo_static_library("browser") { +@@ -458,6 +457,7 @@ jumbo_static_library("browser") { "download/download_ui_controller.h", "download/download_ui_model.cc", "download/download_ui_model.h", @@ -500,7 +469,7 @@ "download/drag_download_item.h", "download/mixed_content_download_blocking.cc", "download/mixed_content_download_blocking.h", -@@ -1206,6 +1206,8 @@ jumbo_static_library("browser") { +@@ -1224,6 +1224,8 @@ jumbo_static_library("browser") { "plugins/pdf_plugin_placeholder_observer.h", "policy/browser_dm_token_storage.cc", "policy/browser_dm_token_storage.h", @@ -509,15 +478,15 @@ "policy/browser_dm_token_storage_linux.cc", "policy/browser_dm_token_storage_linux.h", "policy/browser_dm_token_storage_mac.h", -@@ -3026,7 +3028,6 @@ jumbo_static_library("browser") { - ] - deps += [ "//chrome/android/modules/dev_ui/provider:native" ] +@@ -3090,7 +3092,6 @@ jumbo_static_library("browser") { + + defines += [ "ENABLE_PASSWORD_CHANGE" ] } - } else { # !is_android sources += [ "accessibility/invert_bubble_prefs.cc", "accessibility/invert_bubble_prefs.h", -@@ -3074,8 +3075,6 @@ jumbo_static_library("browser") { +@@ -3142,8 +3143,6 @@ jumbo_static_library("browser") { "badging/badge_manager_delegate.h", "badging/badge_manager_factory.cc", "badging/badge_manager_factory.h", @@ -526,16 +495,7 @@ "bookmarks/bookmark_html_writer.cc", "bookmarks/bookmark_html_writer.h", "certificate_viewer.h", -@@ -3140,8 +3139,6 @@ jumbo_static_library("browser") { - "enterprise_reporting/report_request_definition.h", - "enterprise_reporting/report_request_queue_generator.cc", - "enterprise_reporting/report_request_queue_generator.h", -- "enterprise_reporting/report_scheduler.cc", -- "enterprise_reporting/report_scheduler.h", - "enterprise_reporting/report_uploader.cc", - "enterprise_reporting/report_uploader.h", - "feedback/feedback_dialog_utils.cc", -@@ -3301,7 +3298,6 @@ jumbo_static_library("browser") { +@@ -3356,7 +3355,6 @@ jumbo_static_library("browser") { "metrics/desktop_session_duration/desktop_session_duration_tracker.h", "metrics/first_web_contents_profiler.cc", "metrics/first_web_contents_profiler.h", @@ -543,7 +503,7 @@ "metrics/tab_stats_data_store.cc", "metrics/tab_stats_data_store.h", "metrics/tab_stats_tracker.cc", -@@ -3314,6 +3310,7 @@ jumbo_static_library("browser") { +@@ -3369,6 +3367,7 @@ jumbo_static_library("browser") { "notifications/profile_notification.cc", "notifications/profile_notification.h", "obsolete_system/obsolete_system.h", @@ -551,7 +511,7 @@ "obsolete_system/obsolete_system_linux.cc", "obsolete_system/obsolete_system_mac.cc", "obsolete_system/obsolete_system_win.cc", -@@ -3383,14 +3380,6 @@ jumbo_static_library("browser") { +@@ -3446,14 +3445,6 @@ jumbo_static_library("browser") { "profiles/profile_window.h", "renderer_context_menu/accessibility_labels_bubble_model.cc", "renderer_context_menu/accessibility_labels_bubble_model.h", @@ -566,7 +526,7 @@ "repost_form_warning_controller.cc", "repost_form_warning_controller.h", "resource_coordinator/background_tab_navigation_throttle.cc", -@@ -3530,16 +3519,6 @@ jumbo_static_library("browser") { +@@ -3593,16 +3584,6 @@ jumbo_static_library("browser") { "serial/serial_chooser_context.h", "serial/serial_chooser_context_factory.cc", "serial/serial_chooser_context_factory.h", @@ -583,7 +543,15 @@ "sharing/shared_clipboard/remote_copy_message_handler.cc", "sharing/shared_clipboard/remote_copy_message_handler.h", "sharing/shared_clipboard/shared_clipboard_context_menu_observer.cc", -@@ -3718,7 +3697,6 @@ jumbo_static_library("browser") { +@@ -3756,6 +3737,7 @@ jumbo_static_library("browser") { + "upgrade_detector/build_state.cc", + "upgrade_detector/build_state.h", + "upgrade_detector/build_state_observer.h", ++ "upgrade_detector/get_installed_version_android.cc", + "upgrade_detector/upgrade_detector.cc", + "upgrade_detector/upgrade_detector.h", + "upgrade_detector/upgrade_observer.h", +@@ -3786,7 +3768,6 @@ jumbo_static_library("browser") { "//chrome/browser/profile_resetter:profile_reset_report_proto", "//chrome/browser/resource_coordinator:intervention_policy_database_proto", "//chrome/browser/resource_coordinator:tab_metrics_event_proto", @@ -591,7 +559,7 @@ "//chrome/browser/resources:component_extension_resources", "//chrome/browser/search:generated", "//chrome/common/importer:interfaces", -@@ -3748,7 +3726,6 @@ jumbo_static_library("browser") { +@@ -3816,7 +3797,6 @@ jumbo_static_library("browser") { "chrome_browser_main_posix.h", "first_run/first_run_internal_posix.cc", "importer/firefox_profile_lock_posix.cc", @@ -599,7 +567,7 @@ "task_manager/sampling/shared_sampler_posix.cc", ] } -@@ -3837,8 +3814,6 @@ jumbo_static_library("browser") { +@@ -3923,8 +3903,6 @@ jumbo_static_library("browser") { "notifications/web_page_notifier_controller.h", "policy/default_geolocation_policy_handler.cc", "policy/default_geolocation_policy_handler.h", @@ -608,16 +576,16 @@ "signin/signin_error_notifier_ash.cc", "signin/signin_error_notifier_ash.h", "signin/signin_error_notifier_factory_ash.cc", -@@ -4216,7 +4191,7 @@ jumbo_static_library("browser") { - defines += [ "USE_CRAS" ] +@@ -4334,7 +4312,7 @@ jumbo_static_library("browser") { + ] } - if (!is_android && !is_chromeos) { + if (is_android && !is_chromeos) { sources += [ - "first_run/upgrade_util.cc", - "first_run/upgrade_util.h", -@@ -4244,8 +4219,6 @@ jumbo_static_library("browser") { + "device_identity/device_oauth2_token_store_desktop.cc", + "device_identity/device_oauth2_token_store_desktop.h", +@@ -4364,8 +4342,6 @@ jumbo_static_library("browser") { "policy/chrome_browser_cloud_management_register_watcher.h", "policy/cloud/chrome_browser_cloud_management_helper.cc", "policy/cloud/chrome_browser_cloud_management_helper.h", @@ -626,7 +594,7 @@ "policy/cloud/user_policy_signin_service_internal.h", "profiles/avatar_menu.cc", "profiles/avatar_menu.h", -@@ -4275,7 +4248,6 @@ jumbo_static_library("browser") { +@@ -4401,7 +4377,6 @@ jumbo_static_library("browser") { "upgrade_detector/upgrade_detector_impl.cc", "upgrade_detector/upgrade_detector_impl.h", ] @@ -634,7 +602,7 @@ sources += [ "media/protected_media_identifier_permission_context.cc", "media/protected_media_identifier_permission_context.h", -@@ -4381,7 +4353,7 @@ jumbo_static_library("browser") { +@@ -4507,7 +4482,7 @@ jumbo_static_library("browser") { sources -= [ "background/background_mode_manager_aura.cc" ] } } @@ -643,7 +611,7 @@ sources += [ "background/background_contents_service.cc", "background/background_contents_service.h", -@@ -5141,7 +5113,7 @@ jumbo_static_library("browser") { +@@ -5274,7 +5249,7 @@ jumbo_static_library("browser") { } } @@ -652,7 +620,7 @@ sources += [ "sessions/session_restore.cc", "sessions/session_restore.h", -@@ -5490,7 +5462,7 @@ grit("resources") { +@@ -5656,7 +5631,7 @@ grit("resources") { } } @@ -660,7 +628,7 @@ + if (is_win || is_mac || is_desktop_linux || is_chromeos || is_android) { deps += [ "//chrome/browser/resources/discards:discards_resources_gen", - "//chrome/browser/resources/management:polymer3_elements", + "//chrome/browser/resources/gaia_auth_host:modulize", --- a/extensions/browser/api/system_cpu/BUILD.gn +++ b/extensions/browser/api/system_cpu/BUILD.gn @@ -11,6 +11,7 @@ source_set("system_cpu") { @@ -673,7 +641,16 @@ "cpu_info_provider_win.cc", --- a/chrome/browser/ui/BUILD.gn +++ b/chrome/browser/ui/BUILD.gn -@@ -825,8 +825,6 @@ jumbo_static_library("ui") { +@@ -608,7 +608,7 @@ jumbo_static_library("ui") { + allow_circular_includes_from += + [ "//chrome/browser/ui/webui/bluetooth_internals" ] + +- if (is_win || is_mac || is_desktop_linux || is_chromeos) { ++ if (is_win || is_mac || is_desktop_linux || is_chromeos || is_android) { + deps += [ "//chrome/browser/ui/webui/discards:mojo_bindings" ] + } + +@@ -838,8 +838,6 @@ jumbo_static_library("ui") { "//services/device/public/mojom:usb", "//ui/android", ] @@ -682,7 +659,7 @@ sources += [ "apps/app_info_dialog.h", "apps/chrome_app_delegate.cc", -@@ -889,7 +887,6 @@ jumbo_static_library("ui") { +@@ -902,7 +900,6 @@ jumbo_static_library("ui") { "browser_location_bar_model_delegate.h", "browser_navigator.cc", "browser_navigator.h", @@ -690,7 +667,7 @@ "browser_otr_state.h", "browser_tab_restorer.cc", "browser_tab_strip_model_delegate.cc", -@@ -978,12 +975,6 @@ jumbo_static_library("ui") { +@@ -991,12 +988,6 @@ jumbo_static_library("ui") { "global_media_controls/overlay_media_notification.h", "global_media_controls/overlay_media_notifications_manager.cc", "global_media_controls/overlay_media_notifications_manager.h", @@ -700,10 +677,10 @@ - "hats/hats_service.h", - "hats/hats_service_factory.cc", - "hats/hats_service_factory.h", + "hats/hats_survey_status_checker.cc", + "hats/hats_survey_status_checker.h", "hid/hid_chooser.cc", - "hid/hid_chooser.h", - "hid/hid_chooser_controller.cc", -@@ -1038,6 +1029,8 @@ jumbo_static_library("ui") { +@@ -1053,6 +1044,8 @@ jumbo_static_library("ui") { "media_router/query_result_manager.h", "media_router/ui_media_sink.cc", "media_router/ui_media_sink.h", @@ -712,7 +689,7 @@ "native_window_tracker.h", "omnibox/alternate_nav_infobar_delegate.cc", "omnibox/alternate_nav_infobar_delegate.h", -@@ -1124,8 +1117,6 @@ jumbo_static_library("ui") { +@@ -1146,8 +1139,6 @@ jumbo_static_library("ui") { "singleton_tabs.h", "startup/automation_infobar_delegate.cc", "startup/automation_infobar_delegate.h", @@ -721,7 +698,7 @@ "startup/obsolete_system_infobar_delegate.cc", "startup/obsolete_system_infobar_delegate.h", "startup/startup_browser_creator.cc", -@@ -1194,10 +1185,6 @@ jumbo_static_library("ui") { +@@ -1222,10 +1213,6 @@ jumbo_static_library("ui") { "tabs/tab_types.h", "tabs/tab_utils.cc", "tabs/tab_utils.h", @@ -731,25 +708,17 @@ - "task_manager/task_manager_table_model.h", "thumbnails/thumbnail_image.cc", "thumbnails/thumbnail_image.h", - "thumbnails/thumbnail_page_event_adapter.cc", -@@ -1233,10 +1220,16 @@ jumbo_static_library("ui") { - "uma_browsing_activity_observer.h", - "unload_controller.cc", - "unload_controller.h", -+ "views/accelerator_utils_android.cc", -+ "views/frame/browser_non_client_frame_view_factory_views.cc", -+ "views/frame/desktop_browser_frame_android.cc", -+ "views/frame/desktop_browser_frame_android.h", -+ "views/frame/native_browser_frame_factory_android.cc", - "views/intent_picker_bubble_view.cc", - "views/intent_picker_bubble_view.h", - "views/location_bar/intent_picker_view.cc", - "views/location_bar/intent_picker_view.h", -+ "views/tabs/window_finder_android.cc", - "webui/app_launcher_login_handler.cc", - "webui/app_launcher_login_handler.h", - "webui/app_management/app_management_page_handler.cc", -@@ -1409,6 +1402,7 @@ jumbo_static_library("ui") { + "thumbnails/thumbnail_tab_helper.cc", +@@ -1366,8 +1353,6 @@ jumbo_static_library("ui") { + "webui/settings/extension_control_handler.h", + "webui/settings/font_handler.cc", + "webui/settings/font_handler.h", +- "webui/settings/hats_handler.cc", +- "webui/settings/hats_handler.h", + "webui/settings/import_data_handler.cc", + "webui/settings/import_data_handler.h", + "webui/settings/languages_handler.cc", +@@ -1440,6 +1425,7 @@ jumbo_static_library("ui") { "webui/theme_source.h", "webui/web_footer_experiment_ui.cc", "webui/web_footer_experiment_ui.h", @@ -757,15 +726,15 @@ "window_sizer/window_sizer.cc", "window_sizer/window_sizer.h", "zoom/chrome_zoom_level_otr_delegate.cc", -@@ -1423,7 +1417,6 @@ jumbo_static_library("ui") { +@@ -1454,7 +1440,6 @@ jumbo_static_library("ui") { "//chrome/browser/media/router", "//chrome/browser/profile_resetter:profile_reset_report_proto", "//chrome/browser/resource_coordinator:tab_metrics_event_proto", - "//chrome/browser/resource_coordinator/tab_ranker", "//chrome/browser/safe_browsing:advanced_protection", "//chrome/browser/ui/color:color_headers", - "//chrome/browser/ui/webui/app_management:mojo_bindings", -@@ -2090,7 +2083,7 @@ jumbo_static_library("ui") { + "//chrome/browser/ui/color:mixers", +@@ -2167,7 +2152,7 @@ jumbo_static_library("ui") { } } @@ -774,7 +743,7 @@ sources += [ "autofill/payments/virtual_card_selection_dialog_controller.h", "autofill/payments/virtual_card_selection_dialog_controller_impl.cc", -@@ -2127,10 +2120,6 @@ jumbo_static_library("ui") { +@@ -2211,10 +2196,6 @@ jumbo_static_library("ui") { "views/profiles/profile_menu_view_base.h", "views/profiles/signin_view_controller_delegate_views.cc", "views/profiles/signin_view_controller_delegate_views.h", @@ -782,19 +751,19 @@ - "webui/discards/discards_ui.h", - "webui/discards/graph_dump_impl.cc", - "webui/discards/graph_dump_impl.h", + "webui/discards/site_data_provider_impl.cc", + "webui/discards/site_data_provider_impl.h", "webui/signin/inline_login_handler.cc", - "webui/signin/inline_login_handler.h", - "webui/signin/inline_login_ui.cc", -@@ -2145,7 +2134,7 @@ jumbo_static_library("ui") { +@@ -2231,7 +2212,7 @@ jumbo_static_library("ui") { deps += [ "//ui/webui" ] } - if (is_win || is_mac || is_desktop_linux) { + if (is_win || is_mac || is_linux || is_android) { sources += [ - "avatar_button_error_controller.cc", - "avatar_button_error_controller.h", -@@ -2161,10 +2150,7 @@ jumbo_static_library("ui") { + "bookmarks/bookmark_bubble_sign_in_delegate.cc", + "bookmarks/bookmark_bubble_sign_in_delegate.h", +@@ -2244,10 +2225,7 @@ jumbo_static_library("ui") { "sync/one_click_signin_links_delegate_impl.h", "user_manager.cc", "user_manager.h", @@ -802,10 +771,10 @@ "views/external_protocol_dialog.h", - "views/profiles/badged_profile_photo.cc", - "views/profiles/badged_profile_photo.h", - "views/profiles/profile_menu_view.cc", - "views/profiles/profile_menu_view.h", "views/profiles/user_manager_view.cc", -@@ -2547,14 +2533,11 @@ jumbo_static_library("ui") { + "views/profiles/user_manager_view.h", + "webui/app_launcher_page_ui.cc", +@@ -2622,14 +2600,11 @@ jumbo_static_library("ui") { } } @@ -821,7 +790,7 @@ "views/status_icons/status_icon_button_linux.cc", "views/status_icons/status_icon_button_linux.h", "views/status_icons/status_icon_linux_wrapper.cc", -@@ -2564,9 +2547,6 @@ jumbo_static_library("ui") { +@@ -2639,9 +2614,6 @@ jumbo_static_library("ui") { "webui/settings_utils_linux.cc", ] deps += [ @@ -831,8 +800,8 @@ ] if (use_dbus) { -@@ -2651,7 +2631,7 @@ jumbo_static_library("ui") { - } +@@ -2734,7 +2706,7 @@ jumbo_static_library("ui") { + ] } - if (toolkit_views) { @@ -840,18 +809,28 @@ sources += [ "autofill/payments/local_card_migration_bubble.h", "autofill/payments/local_card_migration_bubble_controller_impl.cc", -@@ -2717,10 +2697,6 @@ jumbo_static_library("ui") { +@@ -2772,6 +2744,7 @@ jumbo_static_library("ui") { + # This test header is included because it contains forward declarations + # needed for "friend" statements for use in tests. + "translate/translate_bubble_test_utils.h", ++ "views/accelerator_utils_android.cc", + "views/accessibility/caption_bubble.cc", + "views/accessibility/caption_bubble.h", + "views/accessibility/invert_bubble_view.cc", +@@ -2804,12 +2777,8 @@ jumbo_static_library("ui") { "views/autofill/autofill_bubble_handler_impl.h", "views/autofill/autofill_popup_base_view.cc", "views/autofill/autofill_popup_base_view.h", - "views/autofill/autofill_popup_view_native_views.cc", - "views/autofill/autofill_popup_view_native_views.h", + "views/autofill/autofill_popup_view_utils.cc", + "views/autofill/autofill_popup_view_utils.h", - "views/autofill/payments/card_unmask_prompt_views.cc", - "views/autofill/payments/card_unmask_prompt_views.h", "views/autofill/payments/dialog_view_ids.h", "views/autofill/payments/local_card_migration_bubble_views.cc", "views/autofill/payments/local_card_migration_bubble_views.h", -@@ -2773,8 +2749,6 @@ jumbo_static_library("ui") { +@@ -2862,8 +2831,6 @@ jumbo_static_library("ui") { "views/bulleted_label_list_view.h", "views/certificate_selector.cc", "views/certificate_selector.h", @@ -860,7 +839,7 @@ "views/chrome_constrained_window_views_client.cc", "views/chrome_constrained_window_views_client.h", "views/chrome_layout_provider.cc", -@@ -2823,6 +2797,7 @@ jumbo_static_library("ui") { +@@ -2912,6 +2879,7 @@ jumbo_static_library("ui") { "views/download/download_shelf_view.cc", "views/download/download_shelf_view.h", "views/download/download_started_animation_views.cc", @@ -868,7 +847,7 @@ "views/dropdown_bar_host.cc", "views/dropdown_bar_host.h", "views/dropdown_bar_host_delegate.h", -@@ -2876,8 +2851,6 @@ jumbo_static_library("ui") { +@@ -2960,8 +2928,6 @@ jumbo_static_library("ui") { "views/find_bar_host.h", "views/find_bar_view.cc", "views/find_bar_view.h", @@ -877,7 +856,31 @@ "views/frame/app_menu_button.cc", "views/frame/app_menu_button.h", "views/frame/app_menu_button_observer.h", -@@ -2959,8 +2932,6 @@ jumbo_static_library("ui") { +@@ -2969,6 +2935,7 @@ jumbo_static_library("ui") { + "views/frame/browser_frame.h", + "views/frame/browser_non_client_frame_view.cc", + "views/frame/browser_non_client_frame_view.h", ++ "views/frame/browser_non_client_frame_view_factory_views.cc", + "views/frame/browser_root_view.cc", + "views/frame/browser_root_view.h", + "views/frame/browser_view.cc", +@@ -2983,12 +2950,15 @@ jumbo_static_library("ui") { + "views/frame/contents_layout_manager.h", + "views/frame/contents_web_view.cc", + "views/frame/contents_web_view.h", ++ "views/frame/desktop_browser_frame_android.cc", ++ "views/frame/desktop_browser_frame_android.h", + "views/frame/immersive_mode_controller.cc", + "views/frame/immersive_mode_controller.h", + "views/frame/immersive_mode_controller_factory_views.cc", + "views/frame/immersive_mode_controller_stub.cc", + "views/frame/immersive_mode_controller_stub.h", + "views/frame/native_browser_frame.h", ++ "views/frame/native_browser_frame_factory_android.cc", + "views/frame/native_browser_frame_factory.cc", + "views/frame/native_browser_frame_factory.h", + "views/frame/system_menu_model_builder.cc", +@@ -3043,8 +3013,6 @@ jumbo_static_library("ui") { "views/importer/import_lock_dialog_view.h", "views/infobars/alternate_nav_infobar_view.cc", "views/infobars/alternate_nav_infobar_view.h", @@ -886,7 +889,7 @@ "views/infobars/infobar_container_view.cc", "views/infobars/infobar_container_view.h", "views/infobars/infobar_view.cc", -@@ -3016,12 +2987,8 @@ jumbo_static_library("ui") { +@@ -3104,12 +3072,8 @@ jumbo_static_library("ui") { "views/media_router/cast_dialog_view.h", "views/media_router/cast_toolbar_button.cc", "views/media_router/cast_toolbar_button.h", @@ -899,7 +902,7 @@ "views/media_router/media_router_views_ui.cc", "views/media_router/media_router_views_ui.h", "views/media_router/presentation_receiver_window_factory.cc", -@@ -3031,16 +2998,8 @@ jumbo_static_library("ui") { +@@ -3119,16 +3083,8 @@ jumbo_static_library("ui") { "views/media_router/presentation_receiver_window_view.h", "views/media_router/web_contents_display_observer_view.cc", "views/media_router/web_contents_display_observer_view.h", @@ -916,7 +919,7 @@ "views/native_file_system/native_file_system_ui_helpers.cc", "views/native_file_system/native_file_system_ui_helpers.h", "views/native_file_system/native_file_system_usage_bubble_view.cc", -@@ -3065,8 +3024,6 @@ jumbo_static_library("ui") { +@@ -3155,8 +3111,6 @@ jumbo_static_library("ui") { "views/overlay/back_to_tab_image_button.h", "views/overlay/close_image_button.cc", "views/overlay/close_image_button.h", @@ -925,7 +928,7 @@ "views/overlay/playback_image_button.cc", "views/overlay/playback_image_button.h", "views/overlay/resize_handle_button.cc", -@@ -3101,8 +3058,6 @@ jumbo_static_library("ui") { +@@ -3191,8 +3145,6 @@ jumbo_static_library("ui") { "views/page_info/permission_selector_row.cc", "views/page_info/permission_selector_row.h", "views/page_info/permission_selector_row_observer.h", @@ -934,7 +937,7 @@ "views/passwords/account_chooser_dialog_view.cc", "views/passwords/account_chooser_dialog_view.h", "views/passwords/auto_signin_first_run_dialog_view.cc", -@@ -3119,8 +3074,6 @@ jumbo_static_library("ui") { +@@ -3209,8 +3161,6 @@ jumbo_static_library("ui") { "views/passwords/password_bubble_view_base.h", "views/passwords/password_generation_confirmation_view.cc", "views/passwords/password_generation_confirmation_view.h", @@ -942,12 +945,9 @@ - "views/passwords/password_generation_popup_view_views.h", "views/passwords/password_items_view.cc", "views/passwords/password_items_view.h", - "views/passwords/password_pending_view.cc", -@@ -3172,11 +3125,8 @@ jumbo_static_library("ui") { - "views/payments/view_stack.h", + "views/passwords/password_save_unsynced_credentials_locally_view.cc", +@@ -3267,8 +3217,6 @@ jumbo_static_library("ui") { "views/permission_bubble/chooser_bubble_ui.cc", - "views/permission_bubble/chooser_bubble_ui.h", -- "views/permission_bubble/chooser_bubble_ui_views.cc", "views/permission_bubble/permission_prompt_bubble_view.cc", "views/permission_bubble/permission_prompt_bubble_view.h", - "views/permission_bubble/permission_prompt_impl.cc", @@ -955,7 +955,15 @@ "views/profiles/avatar_toolbar_button.cc", "views/profiles/avatar_toolbar_button.h", "views/profiles/avatar_toolbar_button_delegate.cc", -@@ -3445,8 +3395,6 @@ jumbo_static_library("ui") { +@@ -3381,6 +3329,7 @@ jumbo_static_library("ui") { + "views/tabs/tab_style_views.h", + "views/tabs/tab_width_constraints.cc", + "views/tabs/tab_width_constraints.h", ++ "views/tabs/window_finder_android.cc", + "views/tabs/window_finder.h", + "views/task_manager_view.cc", + "views/task_manager_view.h", +@@ -3545,8 +3494,6 @@ jumbo_static_library("ui") { sources += [ "views/create_application_shortcut_view.cc", "views/create_application_shortcut_view.h", @@ -964,7 +972,7 @@ ] } -@@ -3518,9 +3466,6 @@ jumbo_static_library("ui") { +@@ -3617,9 +3564,6 @@ jumbo_static_library("ui") { "views/relaunch_notification/relaunch_recommended_timer.h", "views/relaunch_notification/relaunch_required_dialog_view.cc", "views/relaunch_notification/relaunch_required_dialog_view.h", @@ -974,7 +982,7 @@ "views/sync/dice_signin_button_view.cc", "views/sync/dice_signin_button_view.h", ] -@@ -4062,7 +4007,7 @@ jumbo_static_library("ui") { +@@ -4159,7 +4103,7 @@ jumbo_static_library("ui") { "//components/printing/browser", "//printing", ] @@ -995,7 +1003,7 @@ "device_id_win.cc", --- a/content/public/browser/BUILD.gn +++ b/content/public/browser/BUILD.gn -@@ -491,7 +491,7 @@ jumbo_source_set("browser_sources") { +@@ -496,7 +496,7 @@ jumbo_source_set("browser_sources") { sources += [ "remote_cocoa.h" ] } @@ -1006,7 +1014,7 @@ "zoom_level_delegate.h", --- a/content/browser/BUILD.gn +++ b/content/browser/BUILD.gn -@@ -2433,7 +2433,7 @@ jumbo_source_set("browser") { +@@ -2469,7 +2469,7 @@ jumbo_source_set("browser") { } defines += [ "APPCACHE_USE_SIMPLE_CACHE" ] libs += [ "jnigraphics" ] @@ -1017,7 +1025,7 @@ # The WebAuthn devtools protocol API is not supported in Android yet. --- a/chrome/renderer/BUILD.gn +++ b/chrome/renderer/BUILD.gn -@@ -420,6 +420,8 @@ jumbo_static_library("renderer") { +@@ -419,6 +419,8 @@ jumbo_static_library("renderer") { "net/page_auto_fetcher_helper_android.cc", "net/page_auto_fetcher_helper_android.h", ] @@ -1028,7 +1036,7 @@ if (is_chromeos) { --- a/chrome/common/BUILD.gn +++ b/chrome/common/BUILD.gn -@@ -421,7 +421,6 @@ static_library("common") { +@@ -424,7 +424,6 @@ static_library("common") { "media/chrome_media_drm_bridge_client.cc", "media/chrome_media_drm_bridge_client.h", ] @@ -1046,7 +1054,7 @@ "api/image_writer_private/removable_storage_provider_chromeos.cc", "api/image_writer_private/removable_storage_provider_mac.cc", "api/image_writer_private/removable_storage_provider_win.cc", -@@ -625,6 +626,8 @@ jumbo_static_library("extensions") { +@@ -629,6 +630,8 @@ jumbo_static_library("extensions") { "global_shortcut_listener_mac.mm", "global_shortcut_listener_win.cc", "global_shortcut_listener_win.h", @@ -1055,7 +1063,7 @@ "install_gate.h", "install_observer.cc", "install_observer.h", -@@ -691,6 +694,8 @@ jumbo_static_library("extensions") { +@@ -695,6 +698,8 @@ jumbo_static_library("extensions") { "sync_bundle.cc", "sync_bundle.h", "system_display/display_info_provider.h", @@ -1064,7 +1072,7 @@ "system_display/display_info_provider_chromeos.cc", "system_display/display_info_provider_chromeos.h", "system_display/display_info_provider_mac.cc", -@@ -1106,7 +1111,7 @@ jumbo_static_library("extensions") { +@@ -1116,7 +1121,7 @@ jumbo_static_library("extensions") { } } @@ -1100,7 +1108,7 @@ deps += [ "//chrome:extra_resources", "//chrome:resources", -@@ -179,19 +179,13 @@ static_library("devtools") { +@@ -180,19 +180,13 @@ static_library("devtools") { "url_constants.cc", "url_constants.h", ] @@ -1130,8 +1138,8 @@ -if (is_win || is_mac || is_desktop_linux || is_chromeos) { +if (is_win || is_mac || is_desktop_linux || is_chromeos || is_android) { mojom("mojo_bindings") { - sources = [ "discards.mojom" ] - + sources = [ + "discards.mojom", --- a/chrome/common/extensions/api/api_sources.gni +++ b/chrome/common/extensions/api/api_sources.gni @@ -72,7 +72,7 @@ schema_sources_ = [ @@ -1209,18 +1217,18 @@ } --- a/build/config/locales.gni +++ b/build/config/locales.gni -@@ -171,7 +171,7 @@ android_only_chrome_locales = [ +@@ -171,7 +171,7 @@ android_bundle_only_locales = [ ] if (is_android) { - locales = all_chrome_locales -+ locales = all_chrome_locales - android_only_chrome_locales ++ locales = all_chrome_locales - android_bundle_only_locales # Android doesn't ship all locales on KitKat in order to save space # (but webview does). http://crbug.com/369218 --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -1344,7 +1344,6 @@ if (current_toolchain == default_toolcha +@@ -1474,7 +1474,6 @@ if (current_toolchain == default_toolcha } } if (!dfmify_dev_ui || !_is_bundle_module) { diff --git a/patches/Kiwi/res.patch b/patches/Kiwi/res.patch index 974d8a1..4ffe297 100644 --- a/patches/Kiwi/res.patch +++ b/patches/Kiwi/res.patch @@ -3,8 +3,8 @@ chrome/app/chromium_strings.grd | 20 +++---- chrome/app/generated_resources.grd | 77 ++++++++++------------------- chrome/app/profiles_strings.grdp | 9 --- - chrome/app/theme/theme_resources.grd | 22 ++++---- - chrome/browser/browser_resources.grd | 22 ++++---- + chrome/app/theme/theme_resources.grd | 24 ++++----- + chrome/browser/browser_resources.grd | 24 ++++----- components/autofill_payments_strings.grdp | 14 +---- components/autofill_strings.grdp | 2 components/components_strings.grd | 4 - @@ -15,7 +15,8 @@ components/sync_ui_strings.grdp | 2 mojo/public/js/mojo_bindings_resources.grd | 2 ui/resources/ui_resources.grd | 10 +-- - 16 files changed, 87 insertions(+), 117 deletions(-) + ui/webui/resources/webui_resources.grd | 6 +- + 17 files changed, 92 insertions(+), 122 deletions(-) --- a/chrome/app/theme/theme_resources.grd +++ b/chrome/app/theme/theme_resources.grd @@ -73,16 +74,22 @@ -@@ -159,7 +159,7 @@ +@@ -158,12 +158,12 @@ + +- ++ + + + - + -@@ -249,7 +249,7 @@ +@@ -253,7 +253,7 @@ @@ -178,16 +185,16 @@ use_base_dir="false" --- a/chrome/app/generated_resources.grd +++ b/chrome/app/generated_resources.grd -@@ -290,7 +290,7 @@ are declared in tools/grit/grit_rule.gni +@@ -292,7 +292,7 @@ are declared in tools/grit/grit_rule.gni - + + - -@@ -300,7 +300,7 @@ are declared in tools/grit/grit_rule.gni +@@ -303,7 +303,7 @@ are declared in tools/grit/grit_rule.gni @@ -196,7 +203,7 @@ -@@ -448,7 +448,7 @@ are declared in tools/grit/grit_rule.gni +@@ -447,7 +447,7 @@ are declared in tools/grit/grit_rule.gni Disable @@ -205,7 +212,7 @@ Search cleared -@@ -476,7 +476,7 @@ are declared in tools/grit/grit_rule.gni +@@ -475,7 +475,7 @@ are declared in tools/grit/grit_rule.gni @@ -214,7 +221,7 @@ I&nspect -@@ -976,7 +976,7 @@ are declared in tools/grit/grit_rule.gni +@@ -975,7 +975,7 @@ are declared in tools/grit/grit_rule.gni @@ -223,7 +230,7 @@ New &tab -@@ -1992,7 +1992,7 @@ are declared in tools/grit/grit_rule.gni +@@ -2019,7 +2019,7 @@ are declared in tools/grit/grit_rule.gni @@ -232,7 +239,7 @@ @@ -241,7 +248,7 @@ Install -@@ -2732,7 +2732,6 @@ are declared in tools/grit/grit_rule.gni +@@ -2747,7 +2747,6 @@ are declared in tools/grit/grit_rule.gni @@ -249,15 +256,15 @@ Subject -@@ -2745,7 +2744,6 @@ are declared in tools/grit/grit_rule.gni +@@ -2760,7 +2759,6 @@ are declared in tools/grit/grit_rule.gni Serial - - - -@@ -3357,7 +3355,7 @@ are declared in tools/grit/grit_rule.gni + + Base64-encoded ASCII, single certificate +@@ -3327,7 +3325,7 @@ are declared in tools/grit/grit_rule.gni @@ -266,7 +273,7 @@ End process -@@ -3630,7 +3628,7 @@ are declared in tools/grit/grit_rule.gni +@@ -3606,7 +3604,7 @@ are declared in tools/grit/grit_rule.gni Chrome File Utilities @@ -275,7 +282,7 @@ Profile Importer -@@ -5110,7 +5108,7 @@ Keep your key file in a safe place. You +@@ -5106,7 +5104,7 @@ Keep your key file in a safe place. You @@ -284,7 +291,7 @@ About System -@@ -5141,7 +5139,7 @@ Keep your key file in a safe place. You +@@ -5137,7 +5135,7 @@ Keep your key file in a safe place. You @@ -293,7 +300,7 @@ Legacy Browser Support -@@ -5616,7 +5614,7 @@ Keep your key file in a safe place. You +@@ -5622,7 +5620,7 @@ Keep your key file in a safe place. You @@ -302,7 +309,7 @@ To open this link, choose an app -@@ -5872,20 +5870,7 @@ the Bookmarks menu."> +@@ -5854,20 +5852,7 @@ the Bookmarks menu."> No thanks @@ -324,7 +331,7 @@ Never -@@ -5939,7 +5924,7 @@ the Bookmarks menu."> +@@ -5924,7 +5909,7 @@ the Bookmarks menu."> @@ -333,7 +340,7 @@ -@@ -6719,7 +6704,7 @@ the Bookmarks menu."> +@@ -6738,7 +6723,7 @@ the Bookmarks menu."> @@ -342,7 +349,7 @@ Your home page has been set. -@@ -6926,7 +6911,7 @@ the Bookmarks menu."> +@@ -6945,7 +6930,7 @@ the Bookmarks menu."> Generate QR code for this Image @@ -351,7 +358,7 @@ QR code -@@ -7095,14 +7080,12 @@ the Bookmarks menu."> +@@ -7109,14 +7094,12 @@ the Bookmarks menu."> @@ -366,7 +373,7 @@ -@@ -7156,7 +7139,7 @@ the Bookmarks menu."> +@@ -7170,7 +7153,7 @@ the Bookmarks menu."> @@ -375,7 +382,7 @@ Your <a target="_blank" href="$1">$2Chromebook is managed</a> by your organization -@@ -7305,7 +7288,7 @@ the Bookmarks menu."> +@@ -7291,7 +7274,7 @@ the Bookmarks menu."> @@ -384,7 +391,7 @@ Apps -@@ -7953,7 +7936,7 @@ Please help our engineers fix this probl +@@ -7937,7 +7920,7 @@ Please help our engineers fix this probl @@ -393,7 +400,7 @@ -@@ -8062,7 +8045,6 @@ Please help our engineers fix this probl +@@ -8046,7 +8029,6 @@ Please help our engineers fix this probl @@ -401,15 +408,15 @@ Translate this page? -@@ -8226,7 +8208,6 @@ Please help our engineers fix this probl +@@ -8210,7 +8192,6 @@ Please help our engineers fix this probl Reset - - -@@ -9249,7 +9230,7 @@ Please help our engineers fix this probl + +@@ -9086,7 +9067,7 @@ Please help our engineers fix this probl @@ -418,7 +425,7 @@ Media-File Permissions for "$1Photo Editor" -@@ -9782,7 +9763,7 @@ Please help our engineers fix this probl +@@ -9625,7 +9606,7 @@ Please help our engineers fix this probl @@ -427,7 +434,7 @@ $1www.9oo91e.qjz9zk wants to pair -@@ -9895,7 +9876,7 @@ Please help our engineers fix this probl +@@ -9738,7 +9719,7 @@ Please help our engineers fix this probl @@ -436,7 +443,7 @@ $1www.9oo91e.qjz9zk wants to connect to a serial port -@@ -9914,7 +9895,7 @@ Please help our engineers fix this probl +@@ -9757,7 +9738,7 @@ Please help our engineers fix this probl @@ -445,7 +452,7 @@ $1www.9oo91e.qjz9zk wants to connect to a HID device -@@ -9975,7 +9956,7 @@ Please help our engineers fix this probl +@@ -9818,7 +9799,7 @@ Please help our engineers fix this probl @@ -454,7 +461,7 @@ Redirect blocked: -@@ -10081,7 +10062,7 @@ Please help our engineers fix this probl +@@ -9924,7 +9905,7 @@ Please help our engineers fix this probl @@ -463,7 +470,7 @@ Open download -@@ -10203,7 +10184,7 @@ Please help our engineers fix this probl +@@ -10093,7 +10074,7 @@ Please help our engineers fix this probl @@ -472,7 +479,7 @@ Relaunch now -@@ -10220,7 +10201,7 @@ Please help our engineers fix this probl +@@ -10110,7 +10091,7 @@ Please help our engineers fix this probl @@ -481,7 +488,7 @@ Use your security key with $19oo91e.qjz9zk -@@ -10510,7 +10491,7 @@ Please help our engineers fix this probl +@@ -10416,7 +10397,7 @@ Please help our engineers fix this probl @@ -490,7 +497,7 @@ Take Survey -@@ -10640,7 +10621,7 @@ Please help our engineers fix this probl +@@ -10611,7 +10592,7 @@ Please help our engineers fix this probl @@ -501,7 +508,7 @@ =1 {An extension has been approved} --- a/components/components_strings.grd +++ b/components/components_strings.grd -@@ -314,7 +314,7 @@ +@@ -316,7 +316,7 @@ @@ -510,7 +517,7 @@ -@@ -394,7 +394,7 @@ +@@ -396,7 +396,7 @@ This plugin is not supported @@ -550,7 +557,7 @@ --- a/chrome/app/chromium_strings.grd +++ b/chrome/app/chromium_strings.grd -@@ -178,7 +178,7 @@ If you update this file, be sure also to +@@ -179,7 +179,7 @@ If you update this file, be sure also to @@ -559,7 +566,7 @@ -@@ -636,7 +636,6 @@ Chromium is unable to recover your setti +@@ -667,7 +667,6 @@ Chromium is unable to recover your setti @@ -567,7 +574,7 @@ Link your Chromium data to this account? -@@ -646,10 +645,9 @@ Chromium is unable to recover your setti +@@ -677,10 +676,9 @@ Chromium is unable to recover your setti You are signing in with a managed account and giving its administrator control over your Chromium profile. Your Chromium data, such as your apps, bookmarks, history, passwords, and other settings will become permanently tied to $1pat@example.com. You will be able to delete this data via the Google Accounts Dashboard, but you will not be able to associate this data with another account. You can optionally create a new profile to keep your existing Chromium data separate. $2Learn more @@ -579,7 +586,7 @@ Your system administrator has configured Chromium to open an alternative browser to access $1example.com. -@@ -764,7 +762,7 @@ Chromium is unable to recover your setti +@@ -795,7 +793,7 @@ Chromium is unable to recover your setti @@ -588,7 +595,7 @@ This person's browsing data will be deleted from this device. To recover the data, sign in to Chromium as $2foo@example.com. -@@ -841,7 +839,7 @@ Chromium is unable to recover your setti +@@ -872,7 +870,7 @@ Chromium is unable to recover your setti @@ -597,7 +604,7 @@ If an image doesn’t have a useful description, Chromium will try to provide one for you. To create descriptions, images are sent to Google. You can turn this off in settings at any time. -@@ -926,7 +924,7 @@ Chromium is unable to recover your setti +@@ -957,7 +955,7 @@ Chromium is unable to recover your setti @@ -606,7 +613,7 @@ Update Chromium to start sync -@@ -1014,7 +1012,7 @@ Chromium is unable to recover your setti +@@ -1045,7 +1043,7 @@ Chromium is unable to recover your setti @@ -615,7 +622,7 @@ Welcome to Chromium -@@ -1027,7 +1025,7 @@ Chromium is unable to recover your setti +@@ -1058,7 +1056,7 @@ Chromium is unable to recover your setti @@ -624,7 +631,7 @@ {0, plural, -@@ -1071,7 +1069,7 @@ Chromium is unable to recover your setti +@@ -1102,7 +1100,7 @@ Chromium is unable to recover your setti @@ -633,7 +640,7 @@ Launching Chromium... -@@ -1086,7 +1084,7 @@ Chromium is unable to recover your setti +@@ -1117,7 +1115,7 @@ Chromium is unable to recover your setti Share a Chromium tab @@ -668,8 +675,8 @@ -@@ -54,7 +54,7 @@ - +@@ -63,7 +63,7 @@ + - @@ -677,7 +684,7 @@ -@@ -70,7 +70,7 @@ +@@ -79,7 +79,7 @@ @@ -686,8 +693,17 @@ -@@ -132,7 +132,7 @@ - +@@ -110,7 +110,7 @@ + + + +- ++ + + + +@@ -128,7 +128,7 @@ + - @@ -695,7 +711,7 @@ -@@ -172,14 +172,14 @@ +@@ -170,14 +170,14 @@ @@ -708,11 +724,11 @@ - -+ - - ++ + + -@@ -189,7 +189,7 @@ +@@ -187,7 +187,7 @@ @@ -720,8 +736,8 @@ + - -@@ -297,7 +297,7 @@ + +@@ -313,7 +313,7 @@ @@ -730,7 +746,7 @@ -@@ -315,7 +315,7 @@ +@@ -331,7 +331,7 @@ @@ -739,7 +755,7 @@ -@@ -392,7 +392,7 @@ +@@ -408,7 +408,7 @@ @@ -891,7 +907,7 @@ --- a/components/page_info_strings.grdp +++ b/components/page_info_strings.grdp -@@ -175,7 +175,7 @@ +@@ -181,7 +181,7 @@ @@ -900,7 +916,7 @@ Certificate -@@ -203,7 +203,7 @@ +@@ -209,7 +209,7 @@ @@ -909,7 +925,7 @@ Cookies -@@ -412,7 +412,7 @@ +@@ -426,7 +426,7 @@ @@ -920,7 +936,7 @@ --- a/components/payments_strings.grdp +++ b/components/payments_strings.grdp -@@ -552,7 +552,7 @@ +@@ -558,7 +558,7 @@ @@ -946,7 +962,7 @@ -@@ -462,7 +462,7 @@ without changes to the corresponding grd +@@ -459,7 +459,7 @@ without changes to the corresponding grd compress="gzip" /> diff --git a/patches/Kiwi/src.patch b/patches/Kiwi/src.patch index 8260962..f19bf4a 100644 --- a/patches/Kiwi/src.patch +++ b/patches/Kiwi/src.patch @@ -3,15 +3,14 @@ android_webview/browser/aw_browser_context.h | 2 chrome/android/java/src/org/chromium/chrome/browser/payments/PaymentRequestFactory.java | 3 chrome/android/java/src/org/chromium/chrome/browser/payments/PaymentRequestImpl.java | 12 - chrome/browser/apps/platform_apps/api/music_manager_private/device_id_android.cc | 188 ++++ - chrome/browser/autofill/autofill_keyboard_accessory_adapter.cc | 8 - chrome/browser/autofill/autofill_keyboard_accessory_adapter.h | 3 + chrome/browser/apps/platform_apps/api/music_manager_private/device_id_android.cc | 188 +++ chrome/browser/chrome_browser_main_posix.cc | 2 - chrome/browser/chrome_content_browser_client.cc | 4 + chrome/browser/chrome_content_browser_client.cc | 3 chrome/browser/content_settings/host_content_settings_map_factory.cc | 1 - chrome/browser/custom_handlers/register_protocol_handler_permission_request.cc | 14 - chrome/browser/custom_handlers/register_protocol_handler_permission_request.h | 2 + chrome/browser/custom_handlers/register_protocol_handler_permission_request.cc | 8 + chrome/browser/custom_handlers/register_protocol_handler_permission_request.h | 1 chrome/browser/devtools/chrome_devtools_manager_delegate.h | 2 + chrome/browser/devtools/devtools_window.cc | 1 chrome/browser/download/download_commands.cc | 6 chrome/browser/download/download_commands.h | 4 chrome/browser/download/download_ui_model.cc | 4 @@ -41,19 +40,19 @@ chrome/browser/media/router/media_router_base.cc | 2 chrome/browser/media/router/media_router_base.h | 4 chrome/browser/media/router/media_router_feature.cc | 7 - chrome/browser/media/router/media_router_feature.h | 4 + chrome/browser/media/router/media_router_feature.h | 3 chrome/browser/media/webrtc/media_capture_devices_dispatcher.cc | 9 - chrome/browser/metrics/thread_watcher.cc | 10 + chrome/browser/metrics/thread_watcher.cc | 8 chrome/browser/metrics/thread_watcher.h | 2 chrome/browser/metrics/thread_watcher_report_hang.cc | 2 chrome/browser/metrics/thread_watcher_report_hang.h | 2 chrome/browser/obsolete_system/obsolete_system_android.cc | 25 chrome/browser/performance_manager/graph/policies/policy_features.cc | 2 chrome/browser/performance_manager/graph/policies/policy_features.h | 2 - chrome/browser/permissions/attestation_permission_request.cc | 12 + chrome/browser/permissions/attestation_permission_request.cc | 7 chrome/browser/platform_util.cc | 18 chrome/browser/platform_util_android.cc | 6 - chrome/browser/policy/browser_dm_token_storage_android.cc | 181 ++++ + chrome/browser/policy/browser_dm_token_storage_android.cc | 181 +++ chrome/browser/policy/browser_dm_token_storage_android.h | 55 + chrome/browser/policy/chrome_browser_policy_connector.cc | 19 chrome/browser/policy/chrome_browser_policy_connector.h | 6 @@ -68,8 +67,7 @@ chrome/browser/profiles/profile_impl.h | 6 chrome/browser/profiles/profile_manager.cc | 21 chrome/browser/profiles/profile_manager.h | 8 - chrome/browser/profiles/profile_metrics.cc | 12 - chrome/browser/profiles/profile_metrics.h | 4 + chrome/browser/profiles/profile_metrics.cc | 6 chrome/browser/profiles/profile_window.cc | 4 chrome/browser/profiles/profile_window.h | 3 chrome/browser/profiles/profiles_state.cc | 4 @@ -84,15 +82,10 @@ chrome/browser/sessions/session_restore.cc | 25 chrome/browser/sharing/shared_clipboard/feature_flags.cc | 2 chrome/browser/sharing/shared_clipboard/feature_flags.h | 2 - chrome/browser/startup_data.cc | 2 + chrome/browser/startup_data.cc | 5 chrome/browser/storage/storage_notification_service_impl.cc | 2 chrome/browser/supervised_user/supervised_user_service_factory.cc | 1 chrome/browser/sync/profile_sync_service_factory.cc | 2 - chrome/browser/ui/autofill/autofill_popup_controller_impl.cc | 2 - chrome/browser/ui/autofill/autofill_popup_controller_impl.h | 2 - chrome/browser/ui/autofill/autofill_popup_layout_model.cc | 4 - chrome/browser/ui/autofill/autofill_popup_layout_model.h | 4 - chrome/browser/ui/autofill/autofill_popup_view_delegate.h | 2 chrome/browser/ui/bookmarks/bookmark_utils_desktop.cc | 6 chrome/browser/ui/browser.h | 4 chrome/browser/ui/browser_commands.cc | 1 @@ -108,15 +101,14 @@ chrome/browser/ui/content_settings/content_setting_bubble_model.cc | 11 chrome/browser/ui/content_settings/content_setting_bubble_model.h | 2 chrome/browser/ui/content_settings/content_setting_image_model.cc | 2 + chrome/browser/ui/native_file_system_dialogs.cc | 2 chrome/browser/ui/native_window_tracker_android.cc | 26 chrome/browser/ui/native_window_tracker_android.h | 27 - chrome/browser/ui/page_info/page_info_ui.cc | 10 - chrome/browser/ui/page_info/page_info_ui.h | 4 chrome/browser/ui/passwords/manage_passwords_view_utils.cc | 4 chrome/browser/ui/passwords/password_generation_popup_controller_impl.cc | 2 - chrome/browser/ui/passwords/password_generation_popup_controller_impl.h | 2 - chrome/browser/ui/passwords/settings/password_manager_presenter.cc | 4 - chrome/browser/ui/permission_bubble/chooser_bubble_delegate.cc | 2 + chrome/browser/ui/passwords/password_generation_popup_controller_impl.h | 6 + chrome/browser/ui/passwords/settings/password_manager_presenter.cc | 6 + chrome/browser/ui/passwords/settings/password_manager_presenter.h | 2 chrome/browser/ui/search/instant_controller.h | 2 chrome/browser/ui/search/ntp_user_data_logger.h | 2 chrome/browser/ui/search/search_ipc_router.h | 2 @@ -124,7 +116,7 @@ chrome/browser/ui/search/search_tab_helper.h | 2 chrome/browser/ui/signin_view_controller.h | 4 chrome/browser/ui/tabs/tab_strip_model.h | 4 - chrome/browser/ui/views/accelerator_utils_android.cc | 34 + chrome/browser/ui/views/accelerator_utils_android.cc | 23 chrome/browser/ui/views/autofill/payments/save_card_manage_cards_bubble_views.cc | 17 chrome/browser/ui/views/autofill/payments/save_card_sign_in_promo_bubble_views.cc | 2 chrome/browser/ui/views/bookmarks/bookmark_bubble_view.cc | 9 @@ -132,30 +124,36 @@ chrome/browser/ui/views/desktop_capture/desktop_media_list_view.cc | 2 chrome/browser/ui/views/dropdown_bar_host_android.cc | 11 chrome/browser/ui/views/extensions/extension_installed_bubble_view.cc | 6 - chrome/browser/ui/views/frame/browser_frame.cc | 6 - chrome/browser/ui/views/frame/browser_view.cc | 2 + chrome/browser/ui/views/frame/browser_frame.cc | 5 + chrome/browser/ui/views/frame/browser_view.cc | 3 chrome/browser/ui/views/frame/desktop_browser_frame_android.cc | 76 + chrome/browser/ui/views/frame/desktop_browser_frame_android.h | 63 + chrome/browser/ui/views/frame/native_browser_frame_factory_android.cc | 13 chrome/browser/ui/views/intent_picker_bubble_view.cc | 2 chrome/browser/ui/views/location_bar/location_bar_view.cc | 2 chrome/browser/ui/views/page_action/page_action_icon_controller.cc | 22 + chrome/browser/ui/views/page_info/page_info_bubble_view.cc | 1 chrome/browser/ui/views/permission_bubble/permission_prompt_bubble_view.cc | 3 chrome/browser/ui/views/profiles/profile_menu_view.cc | 9 chrome/browser/ui/views/tabs/tab_strip.cc | 12 chrome/browser/ui/views/tabs/window_finder_android.cc | 19 chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc | 18 chrome/browser/ui/webui/history/foreign_session_handler.cc | 1 + chrome/browser/ui/webui/omnibox/omnibox_ui.cc | 4 + chrome/browser/ui/webui/omnibox/omnibox_ui.h | 6 chrome/browser/ui/webui/settings/printing_handler.cc | 2 + chrome/browser/ui/webui/settings/settings_ui.cc | 8 chrome/browser/ui/webui/settings/system_handler.cc | 1 chrome/browser/ui/webui/signin/inline_login_handler_impl.cc | 34 - chrome/browser/ui/webui/signin/login_ui_service.cc | 12 + chrome/browser/ui/webui/signin/login_ui_service.cc | 11 chrome/browser/ui/webui/welcome/welcome_handler.cc | 3 chrome/browser/ui/window_sizer/window_sizer_android.cc | 16 + chrome/browser/upgrade_detector/get_installed_version_android.cc | 33 + chrome/browser/web_applications/components/web_app_file_handler_registration.cc | 2 chrome/browser/web_applications/components/web_app_shortcut_android.cc | 116 ++ chrome/browser/web_applications/components/web_app_shortcut_android.h | 62 + chrome/browser/web_applications/web_app_provider_factory.cc | 1 - chrome/common/chrome_features.cc | 6 + chrome/common/chrome_features.cc | 4 chrome/common/chrome_features.h | 6 chrome/common/chrome_paths.cc | 2 chrome/common/chrome_paths.h | 2 @@ -181,6 +179,8 @@ components/omnibox/browser/omnibox_pedal_implementations.h | 2 components/omnibox/browser/omnibox_popup_model.cc | 4 components/omnibox/browser/omnibox_popup_model.h | 2 + components/page_info/page_info_ui.cc | 8 + components/page_info/page_info_ui.h | 3 components/policy/resources/policy_templates.json | 8 components/search/search.cc | 2 components/ui_devtools/views/overlay_agent_views.cc | 34 @@ -225,10 +225,10 @@ ui/views/controls/menu/menu_controller.h | 1 ui/views/controls/menu/menu_host.cc | 8 ui/views/controls/menu/menu_host.h | 2 - ui/views/controls/menu/menu_pre_target_handler_android.cc | 48 + + ui/views/controls/menu/menu_pre_target_handler_android.cc | 48 ui/views/controls/menu/menu_pre_target_handler_android.h | 44 ui/views/controls/native/native_view_host_android.cc | 122 ++ - ui/views/controls/native/native_view_host_android.h | 98 ++ + ui/views/controls/native/native_view_host_android.h | 98 + ui/views/controls/webview/unhandled_keyboard_event_handler_default.cc | 2 ui/views/drag_utils_android.cc | 18 ui/views/event_monitor_android.cc | 76 + @@ -238,14 +238,14 @@ ui/views/painter.cc | 1 ui/views/touchui/touch_selection_controller_impl.cc | 43 ui/views/views_touch_selection_controller_factory_android.cc | 21 - ui/views/widget/native_widget_android.cc | 445 ++++++++++ - ui/views/widget/native_widget_android.h | 194 ++++ + ui/views/widget/native_widget_android.cc | 496 ++++++++++ + ui/views/widget/native_widget_android.h | 194 +++ ui/views/widget/tooltip_manager_android.cc | 72 + ui/views/widget/tooltip_manager_android.h | 65 + ui/views/widget/widget.cc | 5 weblayer/browser/browser_context_impl.cc | 2 weblayer/browser/browser_context_impl.h | 2 - 246 files changed, 3343 insertions(+), 732 deletions(-) + 246 files changed, 3384 insertions(+), 740 deletions(-) --- /dev/null +++ b/chrome/browser/web_applications/components/web_app_shortcut_android.cc @@ -822,7 +822,7 @@ void UnregisterRemotingSource(SessionID tab_id) override; --- a/chrome/browser/media/router/media_router.h +++ b/chrome/browser/media/router/media_router.h -@@ -27,11 +27,9 @@ +@@ -28,11 +28,9 @@ #include "media/base/flinging_controller.h" #include "third_party/blink/public/mojom/presentation/presentation.mojom.h" @@ -834,7 +834,7 @@ namespace content { class WebContents; -@@ -198,7 +196,6 @@ class MediaRouter : public KeyedService +@@ -183,7 +181,6 @@ class MediaRouter : public KeyedService virtual std::unique_ptr GetFlingingController( const MediaRoute::Id& route_id) = 0; @@ -842,7 +842,7 @@ // Binds |controller| for sending media commands to a route. The controller // will notify |observer| whenever there is a change to the status of the // media. It may invalidate bindings from previous calls to this method. -@@ -206,7 +203,6 @@ class MediaRouter : public KeyedService +@@ -191,7 +188,6 @@ class MediaRouter : public KeyedService const MediaRoute::Id& route_id, mojo::PendingReceiver controller, mojo::PendingRemote observer) = 0; @@ -852,7 +852,7 @@ // given |tab_id|, only one CastRemotingConnector can be registered. The --- a/chrome/browser/media/router/media_router_feature.cc +++ b/chrome/browser/media/router/media_router_feature.cc -@@ -23,13 +23,10 @@ +@@ -22,13 +22,10 @@ #include "components/user_prefs/user_prefs.h" #endif // defined(OS_ANDROID) || BUILDFLAG(ENABLE_EXTENSIONS) @@ -866,7 +866,7 @@ // Controls if browser side DialMediaRouteProvider is enabled. const base::Feature kDialMediaRouteProvider{"DialMediaRouteProvider", base::FEATURE_ENABLED_BY_DEFAULT}; -@@ -37,7 +34,6 @@ const base::Feature kCastMediaRouteProvi +@@ -36,7 +33,6 @@ const base::Feature kCastMediaRouteProvi base::FEATURE_DISABLED_BY_DEFAULT}; const base::Feature kCastAllowAllIPsFeature{"CastAllowAllIPs", base::FEATURE_DISABLED_BY_DEFAULT}; @@ -874,7 +874,7 @@ #if defined(OS_ANDROID) || BUILDFLAG(ENABLE_EXTENSIONS) namespace { -@@ -67,7 +63,6 @@ bool MediaRouterEnabled(content::Browser +@@ -66,7 +62,6 @@ bool MediaRouterEnabled(content::Browser #endif // defined(OS_ANDROID) || BUILDFLAG(ENABLE_EXTENSIONS) } @@ -882,8 +882,8 @@ void RegisterLocalStatePrefs(PrefRegistrySimple* registry) { registry->RegisterBooleanPref(prefs::kMediaRouterCastAllowAllIPs, false, PrefRegistry::PUBLIC); -@@ -121,6 +116,4 @@ bool ShouldUseMirroringService() { - base::FeatureList::IsEnabled(kCastMediaRouteProvider); +@@ -113,6 +108,4 @@ bool CastMediaRouteProviderEnabled() { + return base::FeatureList::IsEnabled(kCastMediaRouteProvider); } -#endif // !defined(OS_ANDROID) @@ -900,18 +900,17 @@ // TODO(crbug.com/1028753): Remove default-enabled kDialMediaRouteProvider after // tests stop disabling it. extern const base::Feature kDialMediaRouteProvider; -@@ -66,8 +64,6 @@ bool CastMediaRouteProviderEnabled(); - // Returns true if Mirroring Service should be used for mirroring. - bool ShouldUseMirroringService(); - +@@ -62,7 +60,6 @@ bool DialMediaRouteProviderEnabled(); + // Returns true if browser side Cast Media Route Provider and sink query are + // enabled. + bool CastMediaRouteProviderEnabled(); -#endif // !defined(OS_ANDROID) -- + } // namespace media_router - #endif // CHROME_BROWSER_MEDIA_ROUTER_MEDIA_ROUTER_FEATURE_H_ --- a/chrome/browser/ui/browser.h +++ b/chrome/browser/ui/browser.h -@@ -55,10 +55,6 @@ +@@ -56,10 +56,6 @@ #include "ui/gfx/geometry/rect.h" #include "ui/shell_dialogs/select_file_dialog.h" @@ -924,9 +923,9 @@ class BrowserInstantController; --- a/chrome/browser/ui/signin_view_controller.h +++ b/chrome/browser/ui/signin_view_controller.h -@@ -13,10 +13,6 @@ - #include "components/signin/public/base/signin_buildflags.h" - #include "url/gurl.h" +@@ -17,10 +17,6 @@ + #include "chrome/browser/ui/webui/signin/signin_email_confirmation_dialog.h" + #endif -#if defined(OS_ANDROID) -#error This file should only be included on desktop. @@ -1018,7 +1017,7 @@ void SetHtml(const base::string16& html, const GURL& base_url); --- a/ui/views/controls/menu/menu_host.cc +++ b/ui/views/controls/menu/menu_host.cc -@@ -28,7 +28,7 @@ namespace views { +@@ -30,7 +30,7 @@ namespace views { namespace internal { @@ -1036,7 +1035,7 @@ NOTIMPLEMENTED(); #else // !defined(OS_MACOSX) source->GetGestureRecognizer()->TransferEventsTo( -@@ -138,7 +138,7 @@ void MenuHost::InitMenuHost(Widget* pare +@@ -136,7 +136,7 @@ void MenuHost::InitMenuHost(Widget* pare #endif Init(std::move(params)); @@ -1045,7 +1044,7 @@ pre_dispatch_handler_ = std::make_unique( menu_controller, submenu_, GetNativeView()); -@@ -203,7 +203,7 @@ void MenuHost::DestroyMenuHost() { +@@ -201,7 +201,7 @@ void MenuHost::DestroyMenuHost() { HideMenuHost(); destroying_ = true; static_cast(GetRootView())->ClearSubmenu(); @@ -1119,7 +1118,7 @@ // Compositor callback relay. void OnCompositingDidCommit(); -@@ -140,6 +149,12 @@ class UI_ANDROID_EXPORT WindowAndroid : +@@ -142,6 +151,12 @@ class UI_ANDROID_EXPORT WindowAndroid : // ViewAndroid overrides. WindowAndroid* GetWindowAndroid() const override; @@ -1134,7 +1133,7 @@ --- a/chrome/browser/chrome_content_browser_client.cc +++ b/chrome/browser/chrome_content_browser_client.cc -@@ -421,7 +421,7 @@ +@@ -427,7 +427,7 @@ #include "chrome/browser/chrome_browser_main_posix.h" #endif @@ -1143,12 +1142,11 @@ #include "chrome/browser/badging/badge_manager.h" #include "chrome/browser/devtools/chrome_devtools_manager_delegate.h" #include "chrome/browser/devtools/devtools_window.h" -@@ -1275,7 +1275,7 @@ ChromeContentBrowserClient::CreateBrowse - #else +@@ -1232,7 +1232,6 @@ ChromeContentBrowserClient::CreateBrowse + #if defined(TOOLKIT_VIEWS) + #if defined(OS_LINUX) && !defined(OS_CHROMEOS) main_parts->AddParts(new ChromeBrowserMainExtraPartsViewsLinux()); - #endif // USE_X11 -#else -+#elif !defined(OS_ANDROID) main_parts->AddParts(new ChromeBrowserMainExtraPartsViews()); #endif #endif @@ -1230,7 +1228,7 @@ #include "components/download/public/common/download_item.h" --- a/chrome/browser/profiles/profile.cc +++ b/chrome/browser/profiles/profile.cc -@@ -38,8 +38,8 @@ +@@ -42,8 +42,8 @@ #include "chromeos/constants/chromeos_switches.h" #endif @@ -1241,7 +1239,7 @@ #include "content/public/browser/host_zoom_map.h" #endif -@@ -128,7 +128,7 @@ TestingProfile* Profile::AsTestingProfil +@@ -163,7 +163,7 @@ TestingProfile* Profile::AsTestingProfil return nullptr; } @@ -1250,7 +1248,7 @@ ChromeZoomLevelPrefs* Profile::GetZoomLevelPrefs() { return nullptr; } -@@ -185,7 +185,7 @@ void Profile::RegisterProfilePrefs(user_ +@@ -220,7 +220,7 @@ void Profile::RegisterProfilePrefs(user_ std::string()); registry->RegisterBooleanPref(prefs::kLiveCaptionEnabled, false); registry->RegisterFilePathPref(prefs::kSODAPath, base::FilePath()); @@ -1259,7 +1257,7 @@ registry->RegisterDictionaryPref(prefs::kPartitionDefaultZoomLevel); registry->RegisterDictionaryPref(prefs::kPartitionPerHostZoomLevels); #endif // !defined(OS_ANDROID) -@@ -353,7 +353,7 @@ bool ProfileCompare::operator()(Profile* +@@ -384,7 +384,7 @@ bool ProfileCompare::operator()(Profile* return a->GetOriginalProfile() < b->GetOriginalProfile(); } @@ -1279,7 +1277,7 @@ class ChromeZoomLevelPrefs; #endif -@@ -218,7 +218,7 @@ class Profile : public content::BrowserC +@@ -213,7 +213,7 @@ class Profile : public content::BrowserC virtual PrefService* GetPrefs() = 0; virtual const PrefService* GetPrefs() const = 0; @@ -1288,7 +1286,7 @@ // Retrieves a pointer to the PrefService that manages the default zoom // level and the per-host zoom levels for this user profile. // TODO(wjmaclean): Remove this when HostZoomMap migrates to StoragePartition. -@@ -421,7 +421,7 @@ class Profile : public content::BrowserC +@@ -412,7 +412,7 @@ class Profile : public content::BrowserC // correctly assigned to its owner. Profile* CreateOffTheRecordProfile(); @@ -1328,7 +1326,7 @@ explicit NavigateParams( std::unique_ptr contents_to_insert); #else -@@ -211,7 +211,7 @@ struct NavigateParams { +@@ -215,7 +215,7 @@ struct NavigateParams { }; PathBehavior path_behavior = RESPECT; @@ -1339,7 +1337,7 @@ // it is not compatible with the operation being performed. This can be --- a/chrome/browser/extensions/api/safe_browsing_private/safe_browsing_private_event_router.cc +++ b/chrome/browser/extensions/api/safe_browsing_private/safe_browsing_private_event_router.cc -@@ -443,24 +443,9 @@ void SafeBrowsingPrivateEventRouter::OnS +@@ -444,24 +444,9 @@ void SafeBrowsingPrivateEventRouter::OnS triggered_rule.SetIntKey(kKeyTriggeredRuleId, rule.rule_id()); triggered_rule.SetStringKey(kKeyTriggeredRuleName, rule.rule_name()); @@ -1364,7 +1362,7 @@ triggered_rule.SetKey(kKeyMatchedDetectors, std::move(matched_detectors)); -@@ -481,35 +466,7 @@ void SafeBrowsingPrivateEventRouter::OnS +@@ -482,35 +467,7 @@ void SafeBrowsingPrivateEventRouter::OnS const std::string& mime_type, const std::string& trigger, const int64_t content_size) { @@ -1402,7 +1400,7 @@ void SafeBrowsingPrivateEventRouter::OnUnscannedFileEvent( --- a/chrome/common/pref_names.cc +++ b/chrome/common/pref_names.cc -@@ -1041,7 +1041,7 @@ const char kSpeechRecognitionFilterProfa +@@ -1090,7 +1090,7 @@ const char kSpeechRecognitionFilterProfa // permitted. const char kAllowDeletingBrowserHistory[] = "history.deleting_enabled"; @@ -1411,7 +1409,7 @@ // Whether the "Click here to clear your browsing data" tooltip promo has been // shown on the History page. const char kHistoryMenuPromoShown[] = "history.menu_promo_shown"; -@@ -1205,7 +1205,7 @@ const char kContentSettingsPluginWhiteli +@@ -1254,7 +1254,7 @@ const char kContentSettingsPluginWhiteli "profile.content_settings.plugin_whitelist"; #endif @@ -1420,7 +1418,7 @@ // Double that indicates the default zoom level. const char kPartitionDefaultZoomLevel[] = "partition.default_zoom_level"; -@@ -1494,7 +1494,7 @@ const char kWebRtcEventLogCollectionAllo +@@ -1550,7 +1550,7 @@ const char kWebRtcEventLogCollectionAllo // in ICE candidates. const char kWebRtcLocalIpsAllowedUrls[] = "webrtc.local_ips_allowed_urls"; @@ -1429,7 +1427,7 @@ // Whether or not this profile has been shown the Welcome page. const char kHasSeenWelcomePage[] = "browser.has_seen_welcome_page"; #endif -@@ -1697,7 +1697,7 @@ const char kShutdownNumProcessesSlow[] = +@@ -1753,7 +1753,7 @@ const char kShutdownNumProcessesSlow[] = // before shutting everything down. const char kRestartLastSessionOnShutdown[] = "restart.last.session.on.shutdown"; @@ -1438,7 +1436,7 @@ #if !defined(OS_CHROMEOS) // Pref name for the policy controlling presentation of full-tab promotional // and/or educational content. -@@ -1740,7 +1740,6 @@ const char kNtpCollapsedSnapshotDocument +@@ -1796,7 +1796,6 @@ const char kNtpCollapsedSnapshotDocument // Keeps track of sync promo collapsed state in the Other Devices menu. const char kNtpCollapsedSyncPromo[] = "ntp.collapsed_sync_promo"; @@ -1446,7 +1444,7 @@ // Holds info for New Tab Page custom background const char kNtpCustomBackgroundDict[] = "ntp.custom_background_dict"; const char kNtpCustomBackgroundLocalToDevice[] = -@@ -1807,7 +1806,7 @@ const char kDevToolsTCPDiscoveryConfig[] +@@ -1863,7 +1862,7 @@ const char kDevToolsTCPDiscoveryConfig[] // A dictionary with generic DevTools settings. const char kDevToolsPreferences[] = "devtools.preferences"; @@ -1455,7 +1453,7 @@ // Tracks the number of times the dice signin promo has been shown in the user // menu. const char kDiceSigninUserMenuPromoCount[] = "sync_promo.user_menu_show_count"; -@@ -2310,13 +2309,13 @@ const char kSystemTimezoneAutomaticDetec +@@ -2368,13 +2367,13 @@ const char kSystemTimezoneAutomaticDetec // Pref name for the policy controlling whether to enable Media Router. const char kEnableMediaRouter[] = "media_router.enable_media_router"; @@ -1471,7 +1469,7 @@ // Pref name for the policy controlling the way in which users are notified of // the need to relaunch the browser for a pending update. const char kRelaunchNotification[] = "browser.relaunch_notification"; -@@ -2429,7 +2428,7 @@ const char kCustomHandlersEnabled[] = "c +@@ -2487,7 +2486,7 @@ const char kCustomHandlersEnabled[] = "c // by the cloud policy subsystem. const char kDevicePolicyRefreshRate[] = "policy.device_refresh_rate"; @@ -1480,7 +1478,7 @@ // A boolean where true means that the browser has previously attempted to // enable autoupdate and failed, so the next out-of-date browser start should // not prompt the user to enable autoupdate, it should offer to reinstall Chrome -@@ -2561,7 +2560,7 @@ const char kRecoveryComponentNeedsElevat +@@ -2623,7 +2622,7 @@ const char kRecoveryComponentNeedsElevat const char kRegisteredSupervisedUserWhitelists[] = "supervised_users.whitelists"; @@ -1489,7 +1487,7 @@ // Boolean that indicates whether Chrome enterprise cloud reporting is enabled // or not. const char kCloudReportingEnabled[] = -@@ -2828,7 +2827,7 @@ const char kSitePerProcess[] = "site_iso +@@ -2871,7 +2870,7 @@ const char kSitePerProcess[] = "site_iso const char kUserTriggeredIsolatedOrigins[] = "site_isolation.user_triggered_isolated_origins"; @@ -1500,7 +1498,7 @@ --- a/chrome/common/pref_names.h +++ b/chrome/common/pref_names.h -@@ -328,7 +328,7 @@ extern const char kDeviceLoginScreenWebU +@@ -340,7 +340,7 @@ extern const char kDeviceLoginScreenWebU extern const char kShowHomeButton[]; extern const char kSpeechRecognitionFilterProfanities[]; extern const char kAllowDeletingBrowserHistory[]; @@ -1509,7 +1507,7 @@ extern const char kHistoryMenuPromoShown[]; #endif extern const char kForceGoogleSafeSearch[]; -@@ -371,7 +371,7 @@ extern const char kUseCustomChromeFrame[ +@@ -383,7 +383,7 @@ extern const char kUseCustomChromeFrame[ #if BUILDFLAG(ENABLE_PLUGINS) extern const char kContentSettingsPluginWhitelist[]; #endif @@ -1518,7 +1516,7 @@ extern const char kPartitionDefaultZoomLevel[]; extern const char kPartitionPerHostZoomLevels[]; -@@ -479,7 +479,7 @@ extern const char kWebRTCUDPPortRange[]; +@@ -492,7 +492,7 @@ extern const char kWebRTCUDPPortRange[]; extern const char kWebRtcEventLogCollectionAllowed[]; extern const char kWebRtcLocalIpsAllowedUrls[]; @@ -1527,7 +1525,7 @@ extern const char kHasSeenWelcomePage[]; #endif -@@ -565,7 +565,7 @@ extern const char kShutdownNumProcesses[ +@@ -578,7 +578,7 @@ extern const char kShutdownNumProcesses[ extern const char kShutdownNumProcessesSlow[]; extern const char kRestartLastSessionOnShutdown[]; @@ -1536,7 +1534,7 @@ #if !defined(OS_CHROMEOS) extern const char kPromotionalTabsEnabled[]; extern const char kCommandLineFlagSecurityWarningsEnabled[]; -@@ -582,7 +582,6 @@ extern const char kNtpCollapsedForeignSe +@@ -595,7 +595,6 @@ extern const char kNtpCollapsedForeignSe extern const char kNtpCollapsedRecentlyClosedTabs[]; extern const char kNtpCollapsedSnapshotDocument[]; extern const char kNtpCollapsedSyncPromo[]; @@ -1544,7 +1542,7 @@ extern const char kNtpCustomBackgroundDict[]; extern const char kNtpCustomBackgroundLocalToDevice[]; extern const char kNtpPromoBlocklist[]; -@@ -607,7 +606,7 @@ extern const char kDevToolsPreferences[] +@@ -620,7 +619,7 @@ extern const char kDevToolsPreferences[] extern const char kDevToolsDiscoverTCPTargetsEnabled[]; extern const char kDevToolsTCPDiscoveryConfig[]; @@ -1553,7 +1551,7 @@ extern const char kDiceSigninUserMenuPromoCount[]; #endif -@@ -801,11 +800,11 @@ extern const char kSystemTimezoneAutomat +@@ -815,11 +814,11 @@ extern const char kSystemTimezoneAutomat #endif // defined(OS_CHROMEOS) extern const char kEnableMediaRouter[]; @@ -1567,7 +1565,7 @@ extern const char kRelaunchNotification[]; extern const char kRelaunchNotificationPeriod[]; #endif // !defined(OS_ANDROID) -@@ -814,7 +813,7 @@ extern const char kRelaunchNotificationP +@@ -828,7 +827,7 @@ extern const char kRelaunchNotificationP extern const char kRelaunchHeadsUpPeriod[]; #endif // defined(OS_CHROMEOS) @@ -1576,7 +1574,7 @@ extern const char kAttemptedToEnableAutoupdate[]; extern const char kMediaGalleriesUniqueId[]; -@@ -865,7 +864,7 @@ extern const char kRecoveryComponentNeed +@@ -880,7 +879,7 @@ extern const char kRecoveryComponentNeed extern const char kRegisteredSupervisedUserWhitelists[]; @@ -1585,7 +1583,7 @@ extern const char kCloudReportingEnabled[]; extern const char kCloudExtensionRequestEnabled[]; extern const char kCloudExtensionRequestIds[]; -@@ -975,7 +974,7 @@ extern const char kIsolateOrigins[]; +@@ -985,7 +984,7 @@ extern const char kIsolateOrigins[]; extern const char kSitePerProcess[]; extern const char kUserTriggeredIsolatedOrigins[]; @@ -1607,25 +1605,16 @@ AppWindowRegistry* registry = AppWindowRegistry::Get(profile_); --- a/chrome/common/chrome_features.cc +++ b/chrome/common/chrome_features.cc -@@ -64,7 +64,7 @@ const base::Feature kAppNotificationStat - "AppNotificationStatusMessaging", base::FEATURE_DISABLED_BY_DEFAULT}; - #endif // defined(OS_ANDROID) +@@ -46,7 +46,7 @@ const base::Feature kShow10_9ObsoleteInf + base::FEATURE_DISABLED_BY_DEFAULT}; + #endif // defined(OS_MACOSX) -#if !defined(OS_ANDROID) +#if defined(OS_ANDROID) // App Service related flags. See chrome/services/app_service/README.md. const base::Feature kAppServiceContextMenu{"AppServiceContextMenu", - base::FEATURE_DISABLED_BY_DEFAULT}; -@@ -328,7 +328,7 @@ const base::Feature kEnableAmbientAuthen - "EnableAmbientAuthenticationInGuestSession", - base::FEATURE_DISABLED_BY_DEFAULT}; - --#if !defined(OS_ANDROID) -+#if defined(OS_ANDROID) - // Upload enterprise cloud reporting without the extension. - const base::Feature kEnterpriseReportingInBrowser{ - "EnterpriseReportingInBrowser", base::FEATURE_DISABLED_BY_DEFAULT}; -@@ -521,7 +521,7 @@ const base::Feature kAcknowledgeNtpOverr + base::FEATURE_ENABLED_BY_DEFAULT}; +@@ -474,7 +474,7 @@ const base::Feature kAcknowledgeNtpOverr const base::Feature kMixedContentSiteSetting{"MixedContentSiteSetting", base::FEATURE_ENABLED_BY_DEFAULT}; @@ -1636,25 +1625,25 @@ #endif --- a/chrome/common/chrome_features.h +++ b/chrome/common/chrome_features.h -@@ -55,7 +55,7 @@ COMPONENT_EXPORT(CHROME_FEATURES) - extern const base::Feature kAppNotificationStatusMessaging; - #endif // defined(OS_ANDROID) +@@ -48,7 +48,7 @@ COMPONENT_EXPORT(CHROME_FEATURES) + extern const base::Feature kShow10_9ObsoleteInfobar; + #endif // defined(OS_MACOSX) -#if !defined(OS_ANDROID) +#if defined(OS_ANDROID) COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kAppServiceContextMenu; COMPONENT_EXPORT(CHROME_FEATURES) -@@ -187,7 +187,7 @@ extern const base::Feature kEnableAmbien - COMPONENT_EXPORT(CHROME_FEATURES) - extern const base::Feature kEnableAmbientAuthenticationInIncognito; +@@ -216,7 +216,7 @@ COMPONENT_EXPORT(CHROME_FEATURES) + extern const base::Feature kHappinessTrackingSystem; + #endif -#if !defined(OS_ANDROID) +#if defined(OS_ANDROID) COMPONENT_EXPORT(CHROME_FEATURES) - extern const base::Feature kEnterpriseReportingInBrowser; - #endif -@@ -327,7 +327,7 @@ extern const base::Feature kAcknowledgeN + extern const base::Feature kHappinessTrackingSurveysForDesktop; + +@@ -291,7 +291,7 @@ extern const base::Feature kAcknowledgeN COMPONENT_EXPORT(CHROME_FEATURES) extern const base::Feature kMixedContentSiteSetting; @@ -1665,7 +1654,7 @@ --- a/chrome/browser/extensions/api/enterprise_reporting_private/chrome_desktop_report_request_helper.cc +++ b/chrome/browser/extensions/api/enterprise_reporting_private/chrome_desktop_report_request_helper.cc -@@ -89,12 +89,7 @@ std::string GetProfileId(const Profile* +@@ -90,12 +90,7 @@ std::string GetProfileId(const Profile* // Returns last policy fetch timestamp of machine level user cloud policy if // it exists. Otherwise, returns zero. int64_t GetMachineLevelUserCloudPolicyFetchTimestamp() { @@ -1702,7 +1691,7 @@ DIR_USER_NATIVE_MESSAGING, // Directory with Native Messaging Hosts --- a/chrome/browser/profiles/profile_window.h +++ b/chrome/browser/profiles/profile_window.h -@@ -15,9 +15,6 @@ +@@ -14,9 +14,6 @@ #include "chrome/browser/ui/profile_chooser_constants.h" #include "chrome/browser/ui/startup/startup_types.h" @@ -1723,7 +1712,7 @@ #include "chrome/browser/ui/browser.h" #endif -@@ -81,7 +81,7 @@ void SetLastUsedProfile(const std::strin +@@ -80,7 +80,7 @@ void SetLastUsedProfile(const std::strin local_state->SetString(prefs::kProfileLastUsed, profile_dir); } @@ -1734,7 +1723,7 @@ return l10n_util::GetStringUTF16(IDS_GUEST_PROFILE_NAME); --- a/chrome/browser/profiles/profiles_state.h +++ b/chrome/browser/profiles/profiles_state.h -@@ -43,7 +43,7 @@ void RegisterPrefs(PrefRegistrySimple* r +@@ -42,7 +42,7 @@ void RegisterPrefs(PrefRegistrySimple* r // System Profile directory, which is an invalid last used profile. void SetLastUsedProfile(const std::string& profile_dir); @@ -2045,14 +2034,14 @@ +} // namespace chrome_apps --- a/chrome/browser/ui/browser_commands.cc +++ b/chrome/browser/ui/browser_commands.cc -@@ -76,6 +76,7 @@ - #include "components/prefs/pref_service.h" +@@ -88,6 +88,7 @@ + #include "components/services/app_service/public/mojom/types.mojom.h" #include "components/sessions/core/live_tab_context.h" #include "components/sessions/core/tab_restore_service.h" +#include "components/signin/public/base/signin_metrics.h" + #include "components/tab_groups/tab_group_id.h" + #include "components/tab_groups/tab_group_visual_data.h" #include "components/translate/core/browser/language_state.h" - #include "components/version_info/version_info.h" - #include "components/web_modal/web_contents_modal_dialog_manager.h" --- a/ui/native_theme/native_theme_android.cc +++ b/ui/native_theme/native_theme_android.cc @@ -22,8 +22,7 @@ NativeTheme* NativeTheme::GetInstanceFor @@ -2082,16 +2071,16 @@ void AdjustCheckboxRadioRectForPadding(SkRect* rect) const override; --- a/content/browser/storage_partition_impl.h +++ b/content/browser/storage_partition_impl.h -@@ -50,7 +50,7 @@ +@@ -54,7 +54,7 @@ #include "storage/browser/quota/special_storage_policy.h" - #include "third_party/blink/public/mojom/dom_storage/storage_partition_service.mojom.h" + #include "third_party/blink/public/mojom/dom_storage/dom_storage.mojom.h" -#if !defined(OS_ANDROID) +#if defined(OS_ANDROID) #include "content/browser/host_zoom_level_context.h" #endif -@@ -144,7 +144,7 @@ class CONTENT_EXPORT StoragePartitionImp +@@ -149,7 +149,7 @@ class CONTENT_EXPORT StoragePartitionImp DevToolsBackgroundServicesContextImpl* GetDevToolsBackgroundServicesContext() override; ContentIndexContextImpl* GetContentIndexContext() override; @@ -2100,18 +2089,18 @@ HostZoomMap* GetHostZoomMap() override; HostZoomLevelContext* GetHostZoomLevelContext() override; ZoomLevelDelegate* GetZoomLevelDelegate() override; -@@ -445,7 +445,7 @@ class CONTENT_EXPORT StoragePartitionImp +@@ -475,7 +475,7 @@ class CONTENT_EXPORT StoragePartitionImp std::unique_ptr shared_worker_service_; std::unique_ptr push_messaging_context_; scoped_refptr special_storage_policy_; -#if !defined(OS_ANDROID) +#if defined(OS_ANDROID) - scoped_refptr host_zoom_level_context_; + std::unique_ptr + host_zoom_level_context_; #endif // !defined(OS_ANDROID) - scoped_refptr platform_notification_context_; --- a/content/public/browser/storage_partition.h +++ b/content/public/browser/storage_partition.h -@@ -67,7 +67,7 @@ class PlatformNotificationContext; +@@ -66,7 +66,7 @@ class PlatformNotificationContext; class ServiceWorkerContext; class SharedWorkerService; @@ -2120,7 +2109,7 @@ class HostZoomLevelContext; class HostZoomMap; class ZoomLevelDelegate; -@@ -138,7 +138,7 @@ class CONTENT_EXPORT StoragePartition { +@@ -136,7 +136,7 @@ class CONTENT_EXPORT StoragePartition { virtual DevToolsBackgroundServicesContext* GetDevToolsBackgroundServicesContext() = 0; virtual ContentIndexContext* GetContentIndexContext() = 0; @@ -2131,7 +2120,7 @@ virtual ZoomLevelDelegate* GetZoomLevelDelegate() = 0; --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -173,7 +173,6 @@ +@@ -177,7 +177,6 @@ #include "content/browser/android/nfc_host.h" #include "content/browser/web_contents/web_contents_android.h" #include "services/device/public/mojom/nfc.mojom.h" @@ -2139,7 +2128,7 @@ #include "content/browser/host_zoom_map_impl.h" #endif // OS_ANDROID -@@ -1181,7 +1180,7 @@ FindRequestManager* WebContentsImpl::Get +@@ -1203,7 +1202,7 @@ FindRequestManager* WebContentsImpl::Get return GetFindRequestManager(); } @@ -2150,7 +2139,7 @@ if (rwh->GetView()) --- a/content/browser/web_contents/web_contents_impl.h +++ b/content/browser/web_contents/web_contents_impl.h -@@ -255,7 +255,7 @@ class CONTENT_EXPORT WebContentsImpl : p +@@ -260,7 +260,7 @@ class CONTENT_EXPORT WebContentsImpl : p // bitmap. void AddAccessibilityMode(ui::AXMode mode); @@ -2161,16 +2150,16 @@ --- a/content/browser/storage_partition_impl.cc +++ b/content/browser/storage_partition_impl.cc -@@ -1346,7 +1346,7 @@ void StoragePartitionImpl::Initialize() +@@ -1490,7 +1490,7 @@ void StoragePartitionImpl::Initialize() push_messaging_context_ = std::make_unique( browser_context_, service_worker_context_); -#if !defined(OS_ANDROID) +#if defined(OS_ANDROID) - host_zoom_level_context_ = new HostZoomLevelContext( - browser_context_->CreateZoomLevelDelegate(partition_path_)); + host_zoom_level_context_.reset(new HostZoomLevelContext( + browser_context_->CreateZoomLevelDelegate(partition_path_))); #endif // !defined(OS_ANDROID) -@@ -1603,7 +1603,7 @@ SharedWorkerServiceImpl* StoragePartitio +@@ -1751,7 +1751,7 @@ SharedWorkerServiceImpl* StoragePartitio return shared_worker_service_.get(); } @@ -2190,7 +2179,7 @@ #include "content/public/browser/zoom_level_delegate.h" #endif -@@ -248,7 +248,7 @@ class CONTENT_EXPORT BrowserContext : pu +@@ -255,7 +255,7 @@ class CONTENT_EXPORT BrowserContext : pu // StoragePartition can have time to do necessary cleanups on IO thread. void ShutdownStoragePartitions(); @@ -2201,7 +2190,7 @@ virtual std::unique_ptr CreateZoomLevelDelegate( --- a/chrome/browser/profiles/profile_impl.cc +++ b/chrome/browser/profiles/profile_impl.cc -@@ -186,7 +186,6 @@ +@@ -188,7 +188,6 @@ #if defined(OS_ANDROID) #include "chrome/browser/android/profile_key_startup_accessor.h" @@ -2209,7 +2198,7 @@ #include "components/zoom/zoom_event_manager.h" #include "content/public/common/page_zoom.h" #endif -@@ -796,7 +795,7 @@ Profile::ProfileType ProfileImpl::GetPro +@@ -812,7 +811,7 @@ Profile::ProfileType ProfileImpl::GetPro return REGULAR_PROFILE; } @@ -2218,7 +2207,7 @@ std::unique_ptr ProfileImpl::CreateZoomLevelDelegate(const base::FilePath& partition_path) { return std::make_unique( -@@ -1051,7 +1050,7 @@ const PrefService* ProfileImpl::GetPrefs +@@ -1058,7 +1057,7 @@ const PrefService* ProfileImpl::GetPrefs return prefs_.get(); } @@ -2229,16 +2218,16 @@ GetDefaultStoragePartition(this)->GetZoomLevelDelegate()); --- a/chrome/browser/profiles/profile_impl.h +++ b/chrome/browser/profiles/profile_impl.h -@@ -27,7 +27,7 @@ - #include "mojo/public/cpp/bindings/remote.h" - #include "services/identity/public/mojom/identity_service.mojom.h" +@@ -26,7 +26,7 @@ + #include "content/public/browser/content_browser_client.h" + #include "extensions/buildflags/buildflags.h" -#if !defined(OS_ANDROID) +#if defined(OS_ANDROID) #include "chrome/browser/ui/zoom/chrome_zoom_level_prefs.h" #include "content/public/browser/host_zoom_map.h" #endif -@@ -76,7 +76,7 @@ class ProfileImpl : public Profile { +@@ -71,7 +71,7 @@ class ProfileImpl : public Profile { static void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry); // content::BrowserContext implementation: @@ -2247,7 +2236,7 @@ std::unique_ptr CreateZoomLevelDelegate( const base::FilePath& partition_path) override; #endif -@@ -133,7 +133,7 @@ class ProfileImpl : public Profile { +@@ -128,7 +128,7 @@ class ProfileImpl : public Profile { ExtensionSpecialStoragePolicy* GetExtensionSpecialStoragePolicy() override; PrefService* GetPrefs() override; const PrefService* GetPrefs() const override; @@ -2401,7 +2390,7 @@ parent_default_zoom_level_subscription_; --- a/weblayer/browser/browser_context_impl.cc +++ b/weblayer/browser/browser_context_impl.cc -@@ -95,7 +95,7 @@ base::FilePath BrowserContextImpl::GetDe +@@ -106,7 +106,7 @@ base::FilePath BrowserContextImpl::GetDe return download_dir; } @@ -2412,7 +2401,7 @@ return nullptr; --- a/weblayer/browser/browser_context_impl.h +++ b/weblayer/browser/browser_context_impl.h -@@ -30,7 +30,7 @@ class BrowserContextImpl : public conten +@@ -31,7 +31,7 @@ class BrowserContextImpl : public conten static base::FilePath GetDefaultDownloadDirectory(); // BrowserContext implementation: @@ -2423,7 +2412,7 @@ #endif // !defined(OS_ANDROID) --- a/ui/views/widget/widget.cc +++ b/ui/views/widget/widget.cc -@@ -191,6 +191,11 @@ Widget::~Widget() { +@@ -193,6 +193,11 @@ Widget::~Widget() { } // static @@ -2433,11 +2422,11 @@ + +// static Widget* Widget::CreateWindowWithParent(WidgetDelegate* delegate, - gfx::NativeView parent) { - return CreateWindowWithParentAndBounds(delegate, parent, gfx::Rect()); + gfx::NativeView parent, + const gfx::Rect& bounds) { --- a/chrome/browser/ui/browser_dialogs.cc +++ b/chrome/browser/ui/browser_dialogs.cc -@@ -16,7 +16,7 @@ void RecordDialogCreation(DialogIdentifi +@@ -29,7 +29,7 @@ bool IsDeviceChooserShowingForTesting() } // namespace chrome @@ -2514,7 +2503,7 @@ --- a/chrome/browser/ui/search/search_tab_helper.h +++ b/chrome/browser/ui/search/search_tab_helper.h -@@ -29,7 +29,7 @@ +@@ -32,7 +32,7 @@ #include "content/public/browser/web_contents_user_data.h" #include "ui/shell_dialogs/select_file_dialog.h" @@ -2525,11 +2514,10 @@ --- a/chrome/browser/custom_handlers/register_protocol_handler_permission_request.h +++ b/chrome/browser/custom_handlers/register_protocol_handler_permission_request.h -@@ -26,6 +26,8 @@ class RegisterProtocolHandlerPermissionR +@@ -28,6 +28,7 @@ class RegisterProtocolHandlerPermissionR private: // permissions::PermissionRequest: IconId GetIconId() const override; -+ base::string16 GetTitleText() const override; + base::string16 GetMessageText() const override; base::string16 GetMessageTextFragment() const override; GURL GetOrigin() const override; @@ -2583,38 +2571,27 @@ + --- /dev/null +++ b/chrome/browser/ui/views/accelerator_utils_android.cc -@@ -0,0 +1,34 @@ +@@ -0,0 +1,23 @@ +// Copyright (c) 2013 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. + +#include + -+#include "chrome/app/chrome_command_ids.h" -+#include "chrome/browser/profiles/profile.h" +#include "chrome/browser/ui/views/accelerator_table.h" +#include "ui/base/accelerators/accelerator.h" + -+#if defined(OS_CHROMEOS) -+#include "ash/public/cpp/accelerators.h" -+#endif -+ +namespace chrome { + -+bool IsChromeAccelerator(const ui::Accelerator& accelerator, Profile* profile) { -+ return false; -+} -+ -+ui::Accelerator GetPrimaryChromeAcceleratorForBookmarkTab() { -+ std::vector accelerators = GetAcceleratorList(); -+ for (size_t i = 0; i < accelerators.size(); ++i) { -+ if (accelerators[i].command_id == IDC_BOOKMARK_THIS_TAB) { -+ return ui::Accelerator(accelerators[i].keycode, -+ accelerators[i].modifiers); -+ } ++bool IsChromeAccelerator(const ui::Accelerator& accelerator) { ++ const std::vector accelerators = GetAcceleratorList(); ++ for (const auto& entry : accelerators) { ++ if (entry.keycode == accelerator.key_code() && ++ entry.modifiers == accelerator.modifiers()) ++ return true; + } + -+ return ui::Accelerator(); ++ return false; +} + +} // namespace chrome @@ -2651,7 +2628,7 @@ #include "chrome/browser/ui/browser.h" #endif -@@ -538,7 +538,7 @@ bool DownloadUIModel::ShouldPromoteOrigi +@@ -531,7 +531,7 @@ bool DownloadUIModel::ShouldPromoteOrigi return false; } @@ -2662,7 +2639,7 @@ DownloadCommands::Command command) const { --- a/chrome/browser/download/download_ui_model.h +++ b/chrome/browser/download/download_ui_model.h -@@ -19,7 +19,7 @@ +@@ -18,7 +18,7 @@ #include "components/offline_items_collection/core/offline_item.h" #include "components/safe_browsing/buildflags.h" @@ -2671,7 +2648,7 @@ #include "chrome/browser/download/download_commands.h" #endif -@@ -295,7 +295,7 @@ class DownloadUIModel { +@@ -285,7 +285,7 @@ class DownloadUIModel { // security reasons. virtual bool ShouldPromoteOrigin() const; @@ -2803,7 +2780,7 @@ } // namespace chrome --- a/chrome/browser/ui/chrome_pages.cc +++ b/chrome/browser/ui/chrome_pages.cc -@@ -69,7 +69,7 @@ +@@ -71,7 +71,7 @@ #include "chrome/browser/ui/signin_view_controller.h" #endif @@ -2812,7 +2789,7 @@ #include "chrome/browser/signin/identity_manager_factory.h" #include "components/signin/public/identity_manager/identity_manager.h" #endif -@@ -488,7 +488,7 @@ GURL GetOSSettingsUrl(const std::string& +@@ -490,7 +490,7 @@ GURL GetOSSettingsUrl(const std::string& } #endif @@ -2832,7 +2809,7 @@ #include "chrome/browser/signin/signin_promo.h" #endif -@@ -135,7 +135,7 @@ void ShowEnterpriseManagementPageInTabbe +@@ -138,7 +138,7 @@ void ShowEnterpriseManagementPageInTabbe GURL GetOSSettingsUrl(const std::string& sub_page); #endif @@ -2870,19 +2847,10 @@ browser_activity_watcher_ = std::make_unique( base::BindRepeating(&ThreadWatcherObserver::OnUserActivityDetected, base::Unretained(this))); -@@ -477,7 +477,7 @@ namespace { - // StartupTimeBomb::DisarmStartupTimeBomb() proxy, to avoid ifdefing out - // individual calls by ThreadWatcherList methods. - static void DisarmStartupTimeBomb() { --#if !defined(OS_ANDROID) -+#if defined(OS_ANDROID) - StartupTimeBomb::DisarmStartupTimeBomb(); - #endif - } -@@ -851,7 +851,7 @@ void WatchDogThread::CleanUp() { +@@ -832,7 +832,7 @@ void WatchDogThread::CleanUp() { } - // StartupTimeBomb and ShutdownWatcherHelper are not available on Android. + // ShutdownWatcherHelper is not available on Android. -#if !defined(OS_ANDROID) +#if defined(OS_ANDROID) @@ -2890,15 +2858,15 @@ --- a/chrome/browser/metrics/thread_watcher.h +++ b/chrome/browser/metrics/thread_watcher.h -@@ -502,7 +502,7 @@ class WatchDogThread : public base::Thre +@@ -498,7 +498,7 @@ class WatchDogThread : public base::Thre // ShutdownWatcherHelper is useless on Android because there is no shutdown, // Chrome is always killed one way or another (swiped away in the task // switcher, OOM-killed, etc.). -#if !defined(OS_ANDROID) +#if defined(OS_ANDROID) - - // This is a wrapper class for getting the crash dumps of the hangs during - // startup. + // This is a wrapper class for detecting hangs during shutdown. + class ShutdownWatcherHelper { + public: --- a/chrome/browser/lifetime/browser_shutdown.cc +++ b/chrome/browser/lifetime/browser_shutdown.cc @@ -46,7 +46,7 @@ @@ -2919,7 +2887,7 @@ bool ShutdownPreThreadsStop() { #if defined(OS_CHROMEOS) chromeos::BootTimesRecorder::Get()->AddLogoutTimeMarker( -@@ -383,7 +383,7 @@ void SetTryingToQuit(bool quitting) { +@@ -380,7 +380,7 @@ void SetTryingToQuit(bool quitting) { // attempt is cancelled. PrefService* pref_service = g_browser_process->local_state(); if (pref_service) { @@ -2950,7 +2918,7 @@ // --- a/chrome/browser/metrics/thread_watcher_report_hang.cc +++ b/chrome/browser/metrics/thread_watcher_report_hang.cc -@@ -22,7 +22,7 @@ NOINLINE void ReportThreadHang() { +@@ -34,7 +34,7 @@ NOINLINE void ReportThreadHang() { #endif } @@ -2983,7 +2951,7 @@ --- a/chrome/browser/profiles/profile_metrics.cc +++ b/chrome/browser/profiles/profile_metrics.cc -@@ -25,7 +25,7 @@ +@@ -25,13 +25,13 @@ #include "components/signin/core/browser/signin_header_helper.h" #include "content/public/browser/browser_thread.h" @@ -2992,74 +2960,25 @@ #include "chrome/browser/ui/browser_finder.h" #endif -@@ -33,7 +33,7 @@ namespace { - - const int kMaximumDaysOfDisuse = 4 * 7; // Should be integral number of weeks. + namespace { -#if !defined(OS_ANDROID) +#if defined(OS_ANDROID) - size_t number_of_profile_switches_ = 0; + constexpr base::TimeDelta kProfileActivityThreshold = + base::TimeDelta::FromDays(28); // Should be integral number of weeks. #endif +@@ -133,7 +133,7 @@ enum ProfileAvatar { -@@ -47,7 +47,7 @@ enum ProfileOpenState { - PROFILE_UNOPENED - }; - --#if !defined(OS_ANDROID) -+#if defined(OS_ANDROID) - ProfileOpenState GetProfileOpenState( - ProfileManager* manager, - const base::FilePath& path) { -@@ -80,7 +80,7 @@ ProfileMetrics::ProfileType GetProfileTy - - bool HasProfileBeenActiveSince(const ProfileAttributesEntry* entry, - const base::Time& active_limit) { + // static + bool ProfileMetrics::IsProfileActive(const ProfileAttributesEntry* entry) { -#if !defined(OS_ANDROID) +#if defined(OS_ANDROID) // TODO(mlerman): iOS and Android should set an ActiveTime in the // ProfileAttributesStorage. (see ProfileManager::OnBrowserSetLastActive) - if (entry->GetActiveTime() < active_limit) -@@ -214,7 +214,7 @@ profile_metrics::BrowserProfileType Prof - return profile_metrics::BrowserProfileType::kMaxValue; - } - --#if !defined(OS_ANDROID) -+#if defined(OS_ANDROID) - void ProfileMetrics::LogNumberOfProfileSwitches() { - UMA_HISTOGRAM_COUNTS_100("Profile.NumberOfSwitches", - number_of_profile_switches_); -@@ -436,7 +436,7 @@ void ProfileMetrics::LogProfileOpenMetho - NUM_PROFILE_OPEN_METRICS); - } - --#if !defined(OS_ANDROID) -+#if defined(OS_ANDROID) - void ProfileMetrics::LogProfileSwitch( - ProfileOpen metric, - ProfileManager* manager, ---- a/chrome/browser/profiles/profile_metrics.h -+++ b/chrome/browser/profiles/profile_metrics.h -@@ -154,7 +154,7 @@ class ProfileMetrics { - static bool CountProfileInformation(ProfileManager* manager, - profile_metrics::Counts* counts); - --#if !defined(OS_ANDROID) -+#if defined(OS_ANDROID) - static void LogNumberOfProfileSwitches(); - #endif - -@@ -167,7 +167,7 @@ class ProfileMetrics { - static void LogProfileAvatarSelection(size_t icon_index); - static void LogProfileDeleteUser(ProfileDelete metric); - static void LogProfileOpenMethod(ProfileOpen metric); --#if !defined(OS_ANDROID) -+#if defined(OS_ANDROID) - static void LogProfileSwitch(ProfileOpen metric, - ProfileManager* manager, - const base::FilePath& profile_path); + if (base::Time::Now() - entry->GetActiveTime() > kProfileActivityThreshold) --- a/chrome/browser/download/download_commands.cc +++ b/chrome/browser/download/download_commands.cc -@@ -26,7 +26,7 @@ +@@ -27,7 +27,7 @@ #include "net/base/url_util.h" #include "ui/base/clipboard/scoped_clipboard_writer.h" @@ -3068,7 +2987,7 @@ #include "chrome/browser/ui/browser.h" #include "chrome/browser/ui/browser_finder.h" #include "chrome/browser/ui/scoped_tabbed_browser_displayer.h" -@@ -153,7 +153,7 @@ void DownloadCommands::ExecuteCommand(Co +@@ -154,7 +154,7 @@ void DownloadCommands::ExecuteCommand(Co model_->ExecuteCommand(this, command); } @@ -3077,7 +2996,7 @@ Browser* DownloadCommands::GetBrowser() const { chrome::ScopedTabbedBrowserDisplayer browser_displayer(model_->profile()); -@@ -176,7 +176,7 @@ bool DownloadCommands::CanOpenPdfInSyste +@@ -177,7 +177,7 @@ bool DownloadCommands::CanOpenPdfInSyste return IsDownloadPdf() && (IsAdobeReaderDefaultPDFViewer() ? is_adobe_pdf_reader_up_to_date : true); @@ -3088,7 +3007,7 @@ } --- a/chrome/browser/custom_handlers/register_protocol_handler_permission_request.cc +++ b/chrome/browser/custom_handlers/register_protocol_handler_permission_request.cc -@@ -27,7 +27,19 @@ RegisterProtocolHandlerPermissionRequest +@@ -29,7 +29,13 @@ RegisterProtocolHandlerPermissionRequest permissions::PermissionRequest::IconId RegisterProtocolHandlerPermissionRequest::GetIconId() const { @@ -3096,12 +3015,6 @@ + return 0; +} + -+base::string16 RegisterProtocolHandlerPermissionRequest::GetTitleText() const { -+ return l10n_util::GetStringFUTF16( -+ IDS_REGISTER_PROTOCOL_HANDLER_CONFIRM, -+ handler_.GetProtocolDisplayName()); -+} -+ +base::string16 RegisterProtocolHandlerPermissionRequest::GetMessageText() const { + return l10n_util::GetStringFUTF16( + IDS_REGISTER_PROTOCOL_HANDLER_CONFIRM, @@ -3111,7 +3024,7 @@ base::string16 --- a/chrome/browser/policy/chrome_browser_policy_connector.cc +++ b/chrome/browser/policy/chrome_browser_policy_connector.cc -@@ -32,22 +32,10 @@ +@@ -33,22 +33,10 @@ #include "extensions/buildflags/buildflags.h" #include "services/network/public/cpp/shared_url_loader_factory.h" @@ -3135,7 +3048,7 @@ #include "chrome/browser/policy/chrome_browser_cloud_management_controller.h" #include "components/policy/core/common/cloud/machine_level_user_cloud_policy_manager.h" #endif -@@ -109,7 +97,7 @@ bool ChromeBrowserPolicyConnector::IsEnt +@@ -96,7 +84,7 @@ bool ChromeBrowserPolicyConnector::IsEnt bool ChromeBrowserPolicyConnector::HasMachineLevelPolicies() { if (ProviderHasPolicies(GetPlatformProvider())) return true; @@ -3144,7 +3057,7 @@ if (ProviderHasPolicies(machine_level_user_cloud_policy_manager_)) return true; #endif // !defined(OS_ANDROID) && !defined(OS_CHROMEOS) -@@ -117,7 +105,7 @@ bool ChromeBrowserPolicyConnector::HasMa +@@ -104,7 +92,7 @@ bool ChromeBrowserPolicyConnector::HasMa } void ChromeBrowserPolicyConnector::Shutdown() { @@ -3153,7 +3066,7 @@ // Reset the controller before calling base class so that // shutdown occurs in correct sequence. chrome_browser_cloud_management_controller_.reset(); -@@ -205,7 +193,6 @@ ChromeBrowserPolicyConnector::CreatePlat +@@ -184,7 +172,6 @@ ChromeBrowserPolicyConnector::CreatePlat } else { return nullptr; } @@ -3192,7 +3105,7 @@ // Owned by base class. --- a/chrome/browser/hid/hid_chooser_context.cc +++ b/chrome/browser/hid/hid_chooser_context.cc -@@ -177,11 +177,6 @@ base::WeakPtr HidChoo +@@ -179,11 +179,6 @@ base::WeakPtr HidChoo void HidChooserContext::EnsureHidManagerConnection() { if (hid_manager_) return; @@ -3206,7 +3119,7 @@ void HidChooserContext::SetUpHidManagerConnection( --- a/chrome/browser/permissions/attestation_permission_request.cc +++ b/chrome/browser/permissions/attestation_permission_request.cc -@@ -26,9 +26,19 @@ class AttestationPermissionRequest : pub +@@ -26,9 +26,14 @@ class AttestationPermissionRequest : pub : origin_(origin), callback_(std::move(callback)) {} permissions::PermissionRequest::IconId GetIconId() const override { @@ -3214,11 +3127,6 @@ + return 0; } -+ base::string16 GetTitleText() const override { -+ return l10n_util::GetStringUTF16( -+ IDS_SECURITY_KEY_ATTESTATION_PERMISSION_FRAGMENT); -+ } -+ + base::string16 GetMessageText() const override { + return l10n_util::GetStringUTF16( + IDS_SECURITY_KEY_ATTESTATION_PERMISSION_FRAGMENT); @@ -3327,9 +3235,9 @@ extern const base::Feature kPageFreezingFromPerformanceManager; --- a/chrome/browser/storage/storage_notification_service_impl.cc +++ b/chrome/browser/storage/storage_notification_service_impl.cc -@@ -7,7 +7,7 @@ - #include "build/build_config.h" +@@ -11,7 +11,7 @@ #include "chrome/browser/profiles/profile.h" + #include "chrome/common/chrome_switches.h" -#if !defined(OS_ANDROID) +#if defined(OS_ANDROID) @@ -3409,7 +3317,7 @@ void PopulateInfoMapWithInstalled( browsing_data::TimePeriod time_period, Profile* profile, -@@ -483,7 +482,7 @@ ImportantSitesUtil::GetImportantRegister +@@ -482,7 +481,7 @@ ImportantSitesUtil::GetImportantRegister return final_list; } @@ -3418,20 +3326,9 @@ std::vector ImportantSitesUtil::GetInstalledRegisterableDomains( browsing_data::TimePeriod time_period, ---- a/chrome/browser/ui/permission_bubble/chooser_bubble_delegate.cc -+++ b/chrome/browser/ui/permission_bubble/chooser_bubble_delegate.cc -@@ -17,6 +17,8 @@ ChooserBubbleDelegate::ChooserBubbleDele - content::WebContents::FromRenderFrameHost(owner))), - chooser_controller_(std::move(chooser_controller)) {} - -+std::unique_ptr ChooserBubbleDelegate::BuildBubbleUi() {} -+ - ChooserBubbleDelegate::~ChooserBubbleDelegate() {} - - const content::RenderFrameHost* ChooserBubbleDelegate::OwningFrame() const { --- a/chrome/common/chrome_switches.h +++ b/chrome/common/chrome_switches.h -@@ -261,12 +261,12 @@ extern const char kAllowNaClFileHandleAP +@@ -259,12 +259,12 @@ extern const char kAllowNaClFileHandleAP extern const char kAllowNaClSocketAPI[]; #endif @@ -3445,10 +3342,10 @@ +#if !defined(OS_CHROMEOS) && defined(OS_ANDROID) // Only has an effect in branded builds. extern const char kEnableChromeBrowserCloudManagement[]; - #endif + extern const char kUseSystemDefaultPrinter[]; --- a/chrome/common/chrome_switches.cc +++ b/chrome/common/chrome_switches.cc -@@ -846,14 +846,14 @@ const char kAllowNaClFileHandleAPI[] +@@ -850,14 +850,14 @@ const char kAllowNaClFileHandleAPI[] const char kAllowNaClSocketAPI[] = "allow-nacl-socket-api"; #endif @@ -3467,7 +3364,7 @@ const char kEnableChromeBrowserCloudManagement[] = --- a/chrome/common/webui_url_constants.cc +++ b/chrome/common/webui_url_constants.cc -@@ -336,7 +336,7 @@ const char kChromeUILinuxProxyConfigHost +@@ -335,7 +335,7 @@ const char kChromeUILinuxProxyConfigHost const char kChromeUISandboxHost[] = "sandbox"; #endif @@ -3478,7 +3375,7 @@ const char kChromeUIBrowserSwitchURL[] = "chrome://browser-switch/"; --- a/chrome/common/webui_url_constants.h +++ b/chrome/common/webui_url_constants.h -@@ -291,7 +291,7 @@ extern const char kChromeUILinuxProxyCon +@@ -299,7 +299,7 @@ extern const char kChromeUILinuxProxyCon extern const char kChromeUISandboxHost[]; #endif @@ -3489,7 +3386,7 @@ extern const char kChromeUIBrowserSwitchURL[]; --- a/chrome/browser/profiles/profile_manager.cc +++ b/chrome/browser/profiles/profile_manager.cc -@@ -124,7 +124,6 @@ +@@ -126,7 +126,6 @@ #if defined(OS_ANDROID) #include "chrome/browser/android/metrics/android_profile_session_durations_service_factory.h" #include "chrome/browser/ntp_snippets/content_suggestions_service_factory.h" @@ -3497,7 +3394,7 @@ #include "chrome/browser/first_run/first_run.h" #include "chrome/browser/ui/browser.h" #include "chrome/browser/ui/browser_finder.h" -@@ -146,7 +145,7 @@ +@@ -148,7 +147,7 @@ #include "components/user_manager/user_type.h" #endif @@ -3506,7 +3403,7 @@ #include "chrome/browser/profiles/profile_statistics.h" #include "chrome/browser/profiles/profile_statistics_factory.h" #endif -@@ -236,7 +235,7 @@ void ProfileSizeTask(const base::FilePat +@@ -238,7 +237,7 @@ void ProfileSizeTask(const base::FilePat UMA_HISTOGRAM_COUNTS_10000("Profile.AppCount", enabled_app_count); } @@ -3515,7 +3412,7 @@ // Schedule a profile for deletion if it isn't already scheduled. // Returns whether the profile has been newly scheduled. bool ScheduleProfileDirectoryForDeletion(const base::FilePath& path) { -@@ -335,7 +334,7 @@ void OnProfileLoaded(ProfileManager::Pro +@@ -337,7 +336,7 @@ void OnProfileLoaded(ProfileManager::Pro .Run(incognito ? profile->GetOffTheRecordProfile() : profile); } @@ -3524,7 +3421,7 @@ // Helper function for ScheduleForcedEphemeralProfileForDeletion. bool IsProfileEphemeral(ProfileAttributesStorage* storage, const base::FilePath& profile_dir) { -@@ -804,7 +803,7 @@ ProfileShortcutManager* ProfileManager:: +@@ -818,7 +817,7 @@ ProfileShortcutManager* ProfileManager:: return profile_shortcut_manager_.get(); } @@ -3533,7 +3430,7 @@ void ProfileManager::MaybeScheduleProfileForDeletion( const base::FilePath& profile_dir, ProfileLoadedCallback callback, -@@ -1022,7 +1021,7 @@ void ProfileManager::InitProfileUserPref +@@ -1035,7 +1034,7 @@ void ProfileManager::InitProfileUserPref } else if (profile->GetPath() == profiles::GetDefaultProfileDir(user_data_dir())) { avatar_index = profiles::GetPlaceholderAvatarIndex(); @@ -3542,7 +3439,7 @@ profile_name = base::UTF16ToUTF8(storage.ChooseNameForNewProfile(avatar_index)); #else -@@ -1246,7 +1245,7 @@ void ProfileManager::DoFinalInitForServi +@@ -1259,7 +1258,7 @@ void ProfileManager::DoFinalInitForServi ChildAccountServiceFactory::GetForProfile(profile)->Init(); SupervisedUserServiceFactory::GetForProfile(profile)->Init(); #endif @@ -3551,7 +3448,7 @@ // If the lock enabled algorithm changed, update this profile's lock status. // This depends on services which shouldn't be initialized until // DoFinalInitForServices. -@@ -1418,7 +1417,7 @@ Profile* ProfileManager::CreateAndInitia +@@ -1439,7 +1438,7 @@ Profile* ProfileManager::CreateAndInitia return profile_ptr; } @@ -3560,7 +3457,7 @@ void ProfileManager::EnsureActiveProfileExistsBeforeDeletion( ProfileLoadedCallback callback, const base::FilePath& profile_dir) { -@@ -1609,13 +1608,13 @@ void ProfileManager::AddProfileToStorage +@@ -1630,7 +1629,7 @@ void ProfileManager::AddProfileToStorage bool has_entry = storage.GetProfileAttributesWithPath(profile->GetPath(), &entry); if (has_entry) { @@ -3569,14 +3466,16 @@ bool was_authenticated_status = entry->IsAuthenticated(); #endif // The ProfileAttributesStorage's info must match the Identity Manager. - entry->SetAuthInfo(account_info.gaia, username, - is_consented_primary_account); +@@ -1639,7 +1638,7 @@ void ProfileManager::AddProfileToStorage + + entry->SetSignedInWithCredentialProvider(false); + -#if !defined(OS_ANDROID) && !defined(OS_CHROMEOS) +#if defined(OS_ANDROID) && !defined(OS_CHROMEOS) // Sign out if force-sign-in policy is enabled and profile is not signed // in. VLOG(1) << "ForceSigninCheck: " << signin_util::IsForceSigninEnabled() -@@ -1733,7 +1732,7 @@ void ProfileManager::SaveActiveProfiles( +@@ -1759,7 +1758,7 @@ void ProfileManager::SaveActiveProfiles( } } @@ -3605,7 +3504,7 @@ // Continues the scheduled profile deletion after closing all the profile's // browsers tabs. Creates a new profile if the profile to be deleted is the // last non-supervised profile. In the Mac, loads the next non-supervised -@@ -369,7 +369,7 @@ class ProfileManager : public content::N +@@ -372,7 +372,7 @@ class ProfileManager : public content::N void SaveActiveProfiles(); @@ -3614,7 +3513,7 @@ void OnBrowserOpened(Browser* browser); void OnBrowserClosed(Browser* browser); -@@ -433,7 +433,7 @@ class ProfileManager : public content::N +@@ -436,7 +436,7 @@ class ProfileManager : public content::N // default. bool logged_in_ = false; @@ -3988,29 +3887,9 @@ } } // namespace ui_devtools ---- a/chrome/browser/ui/autofill/autofill_popup_layout_model.cc -+++ b/chrome/browser/ui/autofill/autofill_popup_layout_model.cc -@@ -30,7 +30,7 @@ - #include "ui/gfx/image/image_skia.h" - #include "ui/gfx/paint_vector_icon.h" - --#if !defined(OS_ANDROID) -+#if defined(OS_ANDROID) - #include "chrome/app/vector_icons/vector_icons.h" - #include "components/omnibox/browser/vector_icons.h" // nogncheck - #endif -@@ -114,7 +114,7 @@ AutofillPopupLayoutModel::AutofillPopupL - - AutofillPopupLayoutModel::~AutofillPopupLayoutModel() {} - --#if !defined(OS_ANDROID) -+#if defined(OS_ANDROID) - int AutofillPopupLayoutModel::GetDesiredPopupHeight() const { - std::vector suggestions = delegate_->GetSuggestions(); - int popup_height = 2 * kPopupBorderThickness; --- a/components/url_formatter/elide_url.cc +++ b/components/url_formatter/elide_url.cc -@@ -25,7 +25,7 @@ +@@ -26,7 +26,7 @@ namespace { @@ -4019,7 +3898,7 @@ const base::char16 kDot = '.'; // Build a path from the first |num_components| elements in |path_elements|. -@@ -144,7 +144,7 @@ base::string16 HostForDisplay(base::Stri +@@ -145,7 +145,7 @@ base::string16 HostForDisplay(base::Stri namespace url_formatter { @@ -4030,7 +3909,7 @@ // kerning/ligatures/etc. issues potentially wrong by assuming that the width of --- a/components/url_formatter/elide_url.h +++ b/components/url_formatter/elide_url.h -@@ -27,7 +27,7 @@ namespace url_formatter { +@@ -26,7 +26,7 @@ namespace url_formatter { // ElideUrl and Elide host require // gfx::GetStringWidthF which is not implemented in Android @@ -4039,26 +3918,6 @@ // This function takes a GURL object and elides it. It returns a string // composed of parts from subdomain, domain, path, filename and query. // A "..." is added automatically at the end if the elided string is bigger ---- a/chrome/browser/ui/autofill/autofill_popup_layout_model.h -+++ b/chrome/browser/ui/autofill/autofill_popup_layout_model.h -@@ -43,7 +43,7 @@ class AutofillPopupLayoutModel { - // The amount of padding at the end of the popup in dip. - static const int kEndPadding = 8; - --#if !defined(OS_ANDROID) -+#if defined(OS_ANDROID) - // Calculates the desired height of the popup based on its contents. - int GetDesiredPopupHeight() const; - -@@ -99,7 +99,7 @@ class AutofillPopupLayoutModel { - // Returns the enclosing rectangle for the element_bounds. - gfx::Rect RoundedElementBounds() const; - --#if !defined(OS_ANDROID) -+#if defined(OS_ANDROID) - gfx::ImageSkia GetIconImageByName(const std::string& icon_str) const; - - // The fonts for the popup text. --- a/content/public/browser/desktop_media_id.cc +++ b/content/public/browser/desktop_media_id.cc @@ -27,22 +27,20 @@ const DesktopMediaID::Id DesktopMediaID: @@ -4097,90 +3956,46 @@ // Assigns integer identifier to the |window| and returns its DesktopMediaID. static DesktopMediaID RegisterNativeWindow(Type type, gfx::NativeWindow window); ---- a/chrome/browser/ui/autofill/autofill_popup_view_delegate.h -+++ b/chrome/browser/ui/autofill/autofill_popup_view_delegate.h -@@ -64,7 +64,7 @@ class AutofillPopupViewDelegate { - // Returns the full set of autofill suggestions, if applicable. - virtual const std::vector GetSuggestions() = 0; - --#if !defined(OS_ANDROID) -+#if defined(OS_ANDROID) - // Returns elided values and labels for the given |row|. - virtual int GetElidedValueWidthForRow(int row) = 0; - virtual int GetElidedLabelWidthForRow(int row) = 0; ---- a/chrome/browser/autofill/autofill_keyboard_accessory_adapter.cc -+++ b/chrome/browser/autofill/autofill_keyboard_accessory_adapter.cc -@@ -113,6 +113,14 @@ const base::string16& AutofillKeyboardAc - return labels_[OffsetIndexFor(row)]; - } - -+int AutofillKeyboardAccessoryAdapter::GetElidedValueWidthForRow(int row) { -+ return 0; -+} -+ -+int AutofillKeyboardAccessoryAdapter::GetElidedLabelWidthForRow(int row) { -+ return 0; -+} -+ - bool AutofillKeyboardAccessoryAdapter::GetRemovalConfirmationText( - int index, - base::string16* title, ---- a/chrome/browser/autofill/autofill_keyboard_accessory_adapter.h -+++ b/chrome/browser/autofill/autofill_keyboard_accessory_adapter.h -@@ -50,6 +50,9 @@ class AutofillKeyboardAccessoryAdapter : - base::OnceClosure confirm_deletion) = 0; - }; - -+ int GetElidedValueWidthForRow(int row) override; -+ int GetElidedLabelWidthForRow(int row) override; -+ - void SetAccessoryView(std::unique_ptr view) { - view_ = std::move(view); - } --- a/chrome/browser/ui/passwords/password_generation_popup_controller_impl.cc +++ b/chrome/browser/ui/passwords/password_generation_popup_controller_impl.cc -@@ -344,7 +344,7 @@ PasswordGenerationPopupControllerImpl::G - return std::vector(); +@@ -271,7 +271,7 @@ void PasswordGenerationPopupControllerIm + } } -#if !defined(OS_ANDROID) +#if defined(OS_ANDROID) - int PasswordGenerationPopupControllerImpl::GetElidedValueWidthForRow(int row) { - return 0; - } + void PasswordGenerationPopupControllerImpl::OnZoomChanged( + const zoom::ZoomController::ZoomChangedEventData& data) { + Hide(PopupHidingReason::kContentAreaMoved); --- a/chrome/browser/ui/passwords/password_generation_popup_controller_impl.h +++ b/chrome/browser/ui/passwords/password_generation_popup_controller_impl.h -@@ -140,7 +140,7 @@ class PasswordGenerationPopupControllerI - const gfx::RectF& element_bounds() const override; - bool IsRTL() const override; - const std::vector GetSuggestions() override; +@@ -24,7 +24,7 @@ + #include "ui/gfx/geometry/rect_f.h" + #include "ui/gfx/native_widget_types.h" + -#if !defined(OS_ANDROID) +#if defined(OS_ANDROID) - int GetElidedValueWidthForRow(int row) override; - int GetElidedLabelWidthForRow(int row) override; - #endif ---- a/chrome/browser/ui/autofill/autofill_popup_controller_impl.cc -+++ b/chrome/browser/ui/autofill/autofill_popup_controller_impl.cc -@@ -379,7 +379,7 @@ const std::vector AutofillPo - return suggestions_; - } + #include "components/zoom/zoom_observer.h" + #endif // !defined(OS_ANDROID) +@@ -59,7 +59,7 @@ class PasswordGenerationPopupView; + class PasswordGenerationPopupControllerImpl + : public PasswordGenerationPopupController, + public content::WebContentsObserver -#if !defined(OS_ANDROID) +#if defined(OS_ANDROID) - int AutofillPopupControllerImpl::GetElidedValueWidthForRow(int row) { - return gfx::GetStringWidth(GetElidedValueAt(row), - layout_model_.GetValueFontListForRow(row)); ---- a/chrome/browser/ui/autofill/autofill_popup_controller_impl.h -+++ b/chrome/browser/ui/autofill/autofill_popup_controller_impl.h -@@ -101,7 +101,7 @@ class AutofillPopupControllerImpl : publ - void SetElementBounds(const gfx::RectF& bounds); - bool IsRTL() const override; - const std::vector GetSuggestions() override; + , + public zoom::ZoomObserver + #endif // !defined(OS_ANDROID) +@@ -106,7 +106,7 @@ class PasswordGenerationPopupControllerI + void DidFinishNavigation( + content::NavigationHandle* navigation_handle) override; + -#if !defined(OS_ANDROID) +#if defined(OS_ANDROID) - int GetElidedValueWidthForRow(int row) override; - int GetElidedLabelWidthForRow(int row) override; - #endif + // ZoomObserver implementation. + void OnZoomChanged( + const zoom::ZoomController::ZoomChangedEventData& data) override; --- a/content/public/browser/native_web_keyboard_event.h +++ b/content/public/browser/native_web_keyboard_event.h @@ -48,7 +48,6 @@ struct CONTENT_EXPORT NativeWebKeyboardE @@ -4204,18 +4019,26 @@ } // namespace content --- a/chrome/browser/ui/views/frame/browser_view.cc +++ b/chrome/browser/ui/views/frame/browser_view.cc -@@ -3081,7 +3081,7 @@ void BrowserView::ShowAvatarBubbleFromAv +@@ -1699,7 +1699,6 @@ void BrowserView::UserChangedTheme(Brows + // In Incognito, the usage of dark or normal hinges on the browser theme. + if (theme_change_type == BrowserThemeChangeType::kBrowserTheme && + !IsRegularOrGuestSession()) { +- ui::NativeTheme::GetInstanceForDarkUI()->NotifyObservers(); + ui::NativeTheme::GetInstanceForNativeUi()->NotifyObservers(); + + // Early exit. A native theme change will update all the +@@ -3215,7 +3214,7 @@ void BrowserView::ShowAvatarBubbleFromAv profiles::BubbleViewMode bubble_view_mode; profiles::BubbleViewModeFromAvatarBubbleMode(mode, GetProfile(), &bubble_view_mode); -#if !defined(OS_CHROMEOS) +#if defined(OS_CHROMEOS) if (SigninViewController::ShouldShowSigninForMode(bubble_view_mode)) { - browser_->signin_view_controller()->ShowSignin( - bubble_view_mode, browser_.get(), access_point); + browser_->signin_view_controller()->ShowSignin(bubble_view_mode, + access_point); --- a/chrome/browser/ui/views/location_bar/location_bar_view.cc +++ b/chrome/browser/ui/views/location_bar/location_bar_view.cc -@@ -238,7 +238,7 @@ void LocationBarView::Init() { +@@ -235,7 +235,7 @@ void LocationBarView::Init() { // The send tab to self icon is intentionally the first one added so it is // the left most icon. params.types_enabled.push_back(PageActionIconType::kSendTabToSelf); @@ -4226,7 +4049,7 @@ params.types_enabled.push_back(PageActionIconType::kQRCodeGenerator); --- a/components/omnibox/browser/omnibox_popup_model.cc +++ b/components/omnibox/browser/omnibox_popup_model.cc -@@ -20,7 +20,7 @@ +@@ -21,7 +21,7 @@ #include "third_party/icu/source/common/unicode/ubidi.h" #include "ui/gfx/geometry/rect.h" @@ -4235,7 +4058,7 @@ #include "components/omnibox/browser/vector_icons.h" // nogncheck #include "ui/gfx/paint_vector_icon.h" #include "ui/gfx/vector_icon_types.h" -@@ -278,7 +278,7 @@ void OmniboxPopupModel::SetRichSuggestio +@@ -328,7 +328,7 @@ void OmniboxPopupModel::SetRichSuggestio } // Android and iOS have their own platform-specific icon logic. @@ -4246,7 +4069,7 @@ gfx::Image extension_icon = --- a/components/omnibox/browser/omnibox_popup_model.h +++ b/components/omnibox/browser/omnibox_popup_model.h -@@ -136,7 +136,7 @@ class OmniboxPopupModel { +@@ -188,7 +188,7 @@ class OmniboxPopupModel { // Stores the image in a local data member and schedules a repaint. void SetRichSuggestionBitmap(int result_index, const SkBitmap& bitmap); @@ -4255,73 +4078,6 @@ // Gets the icon for the match index. gfx::Image GetMatchIcon(const AutocompleteMatch& match, SkColor vector_icon_color); ---- a/chrome/browser/ui/page_info/page_info_ui.cc -+++ b/chrome/browser/ui/page_info/page_info_ui.cc -@@ -31,7 +31,7 @@ - - #if defined(OS_ANDROID) - #include "chrome/browser/android/android_theme_resources.h" --#else -+ - #include "chrome/app/vector_icons/vector_icons.h" - #include "chrome/browser/profiles/profile.h" - #include "chrome/common/pref_names.h" -@@ -50,7 +50,7 @@ namespace { - - const int kInvalidResourceID = -1; - --#if !defined(OS_ANDROID) -+#if defined(OS_ANDROID) - // The icon size is actually 16, but the vector icons being used generally all - // have additional internal padding. Account for this difference by asking for - // the vectors in 18x18dip sizes. -@@ -110,7 +110,7 @@ static_assert(base::size(kPermissionButt - CONTENT_SETTING_NUM_SETTINGS, - "kPermissionButtonTextIDDefaultSetting array size is incorrect"); - --#if !defined(OS_ANDROID) -+#if defined(OS_ANDROID) - // The resource IDs for the strings that are displayed on the sound permission - // button if the sound permission setting is managed by the user. - const int kSoundPermissionButtonTextIDUserManaged[] = { -@@ -176,7 +176,7 @@ base::span GetC - ? IDS_PAGE_INFO_TYPE_SENSORS - : IDS_PAGE_INFO_TYPE_MOTION_SENSORS}, - {ContentSettingsType::USB_GUARD, IDS_PAGE_INFO_TYPE_USB}, --#if !defined(OS_ANDROID) -+#if defined(OS_ANDROID) - {ContentSettingsType::SERIAL_GUARD, IDS_PAGE_INFO_TYPE_SERIAL}, - #endif - {ContentSettingsType::NATIVE_FILE_SYSTEM_WRITE_GUARD, -@@ -554,7 +554,7 @@ int PageInfoUI::GetConnectionIconID(Page - } - return resource_id; - } --#else // !defined(OS_ANDROID) -+ - // static - const gfx::ImageSkia PageInfoUI::GetPermissionIcon(const PermissionInfo& info, - SkColor related_text_color) { ---- a/chrome/browser/ui/page_info/page_info_ui.h -+++ b/chrome/browser/ui/page_info/page_info_ui.h -@@ -18,7 +18,7 @@ - #include "components/safe_browsing/buildflags.h" - #include "ui/gfx/native_widget_types.h" - --#if !defined(OS_ANDROID) -+#if defined(OS_ANDROID) - #include "ui/gfx/image/image_skia.h" - #endif - -@@ -204,7 +204,7 @@ class PageInfoUI { - - // Returns the connection icon ID for the given connection |status|. - static int GetConnectionIconID(PageInfo::SiteConnectionStatus status); --#else // !defined(OS_ANDROID) -+ - // Returns icons for the given PermissionInfo |info|. If |info|'s current - // setting is CONTENT_SETTING_DEFAULT, it will return the icon for |info|'s - // default setting. --- a/third_party/blink/public/mojom/payments/payment_request.mojom +++ b/third_party/blink/public/mojom/payments/payment_request.mojom @@ -214,8 +214,7 @@ interface PaymentRequest { @@ -4336,7 +4092,7 @@ Show(bool is_user_gesture, bool wait_for_updated_details); --- a/third_party/blink/renderer/modules/payments/payment_request.cc +++ b/third_party/blink/renderer/modules/payments/payment_request.cc -@@ -1144,7 +1144,7 @@ PaymentRequest::PaymentRequest( +@@ -1148,7 +1148,7 @@ PaymentRequest::PaymentRequest( UseCounter::Count(execution_context, WebFeature::kPaymentRequestInitialized); mojo::PendingRemote client; client_receiver_.Bind(client.InitWithNewPipeAndPassReceiver(), task_runner); @@ -4393,7 +4149,7 @@ --- a/chrome/browser/ui/views/permission_bubble/permission_prompt_bubble_view.cc +++ b/chrome/browser/ui/views/permission_bubble/permission_prompt_bubble_view.cc -@@ -72,12 +72,9 @@ void PermissionPromptBubbleView::AddPerm +@@ -108,12 +108,9 @@ void PermissionPromptBubbleView::AddPerm auto* icon = line_container->AddChildView(std::make_unique()); @@ -4403,9 +4159,9 @@ constexpr int kPermissionIconSize = 18; - icon->SetImage( - gfx::CreateVectorIcon(vector_id, kPermissionIconSize, icon_color)); + icon->SetVerticalAlignment(views::ImageView::Alignment::kLeading); auto* label = line_container->AddChildView( - std::make_unique(request->GetMessageTextFragment())); --- a/chrome/browser/ui/views/tabs/tab_strip.cc +++ b/chrome/browser/ui/views/tabs/tab_strip.cc @@ -136,21 +136,9 @@ class TabHoverCardEventSniffer : public @@ -4441,7 +4197,7 @@ #include "components/omnibox/browser/vector_icons.h" // nogncheck #include "components/vector_icons/vector_icons.h" // nogncheck #endif -@@ -222,7 +222,7 @@ AutocompleteMatch& AutocompleteMatch::op +@@ -228,7 +228,7 @@ AutocompleteMatch& AutocompleteMatch::op return *this; } @@ -4534,7 +4290,7 @@ }; --- a/chrome/browser/ui/views/browser_dialogs_views.cc +++ b/chrome/browser/ui/views/browser_dialogs_views.cc -@@ -18,15 +18,6 @@ +@@ -17,15 +17,6 @@ // This file provides definitions of desktop browser dialog-creation methods for // all toolkit-views platforms. // static @@ -4552,15 +4308,15 @@ const EditDetails& details, --- a/chrome/browser/ui/content_settings/content_setting_image_model.cc +++ b/chrome/browser/ui/content_settings/content_setting_image_model.cc -@@ -231,8 +231,6 @@ const ContentSettingsImageDetails kImage - IDS_BLOCKED_PLUGIN_EXPLANATORY_TEXT, 0}, +@@ -232,8 +232,6 @@ const ContentSettingsImageDetails kImage + IDS_BLOCKED_PLUGINS_MESSAGE, IDS_BLOCKED_PLUGIN_EXPLANATORY_TEXT, 0}, {ContentSettingsType::MIXEDSCRIPT, kMixedContentIcon, IDS_BLOCKED_DISPLAYING_INSECURE_CONTENT, 0, 0}, -- {ContentSettingsType::PPAPI_BROKER, kExtensionIcon, +- {ContentSettingsType::PPAPI_BROKER, vector_icons::kExtensionIcon, - IDS_BLOCKED_PPAPI_BROKER_MESSAGE, 0, IDS_ALLOWED_PPAPI_BROKER_MESSAGE}, {ContentSettingsType::SOUND, kTabAudioIcon, IDS_BLOCKED_SOUND_TITLE, 0, 0}, - {ContentSettingsType::ADS, kAdsIcon, IDS_BLOCKED_ADS_PROMPT_TOOLTIP, - IDS_BLOCKED_ADS_PROMPT_TITLE, 0}, + {ContentSettingsType::ADS, vector_icons::kAdsIcon, + IDS_BLOCKED_ADS_PROMPT_TOOLTIP, IDS_BLOCKED_ADS_PROMPT_TITLE, 0}, --- a/chrome/browser/ui/content_settings/content_setting_bubble_model.cc +++ b/chrome/browser/ui/content_settings/content_setting_bubble_model.cc @@ -208,7 +208,6 @@ void ContentSettingSimpleBubbleModel::Se @@ -4595,7 +4351,7 @@ {ContentSettingsType::CLIPBOARD_READ_WRITE, IDS_ALLOWED_CLIPBOARD_MESSAGE}, {ContentSettingsType::SENSORS, -@@ -687,8 +683,7 @@ ContentSettingPluginBubbleModel::Content +@@ -689,8 +685,7 @@ ContentSettingPluginBubbleModel::Content GetSettingManagedByUser(url, content_type(), GetProfile(), nullptr); HostContentSettingsMap* map = HostContentSettingsMapFactory::GetForProfile(GetProfile()); @@ -4605,7 +4361,7 @@ // If the setting is not managed by the user, hide the "Manage" button. if (!managed_by_user) -@@ -792,7 +787,6 @@ void ContentSettingSingleRadioGroup::Set +@@ -794,7 +789,6 @@ void ContentSettingSingleRadioGroup::Set {ContentSettingsType::IMAGES, IDS_BLOCKED_IMAGES_UNBLOCK}, {ContentSettingsType::JAVASCRIPT, IDS_BLOCKED_JAVASCRIPT_UNBLOCK}, {ContentSettingsType::POPUPS, IDS_BLOCKED_POPUPS_REDIRECTS_UNBLOCK}, @@ -4613,7 +4369,7 @@ {ContentSettingsType::SOUND, IDS_BLOCKED_SOUND_UNBLOCK}, {ContentSettingsType::CLIPBOARD_READ_WRITE, IDS_BLOCKED_CLIPBOARD_UNBLOCK}, -@@ -801,7 +795,6 @@ void ContentSettingSingleRadioGroup::Set +@@ -803,7 +797,6 @@ void ContentSettingSingleRadioGroup::Set // Fields as for kBlockedAllowIDs, above. static const ContentSettingsTypeIdEntry kAllowedAllowIDs[] = { {ContentSettingsType::COOKIES, IDS_ALLOWED_COOKIES_NO_ACTION}, @@ -4621,7 +4377,7 @@ {ContentSettingsType::CLIPBOARD_READ_WRITE, IDS_ALLOWED_CLIPBOARD_NO_ACTION}, {ContentSettingsType::SENSORS, IDS_ALLOWED_SENSORS_NO_ACTION}, -@@ -824,7 +817,6 @@ void ContentSettingSingleRadioGroup::Set +@@ -826,7 +819,6 @@ void ContentSettingSingleRadioGroup::Set {ContentSettingsType::IMAGES, IDS_BLOCKED_IMAGES_NO_ACTION}, {ContentSettingsType::JAVASCRIPT, IDS_BLOCKED_JAVASCRIPT_NO_ACTION}, {ContentSettingsType::POPUPS, IDS_BLOCKED_POPUPS_REDIRECTS_NO_ACTION}, @@ -4629,7 +4385,7 @@ {ContentSettingsType::SOUND, IDS_BLOCKED_SOUND_NO_ACTION}, {ContentSettingsType::CLIPBOARD_READ_WRITE, IDS_BLOCKED_CLIPBOARD_NO_ACTION}, -@@ -832,7 +824,6 @@ void ContentSettingSingleRadioGroup::Set +@@ -834,7 +826,6 @@ void ContentSettingSingleRadioGroup::Set }; static const ContentSettingsTypeIdEntry kAllowedBlockIDs[] = { {ContentSettingsType::COOKIES, IDS_ALLOWED_COOKIES_BLOCK}, @@ -4650,7 +4406,7 @@ : public ContentSettingSingleRadioGroup, --- a/chrome/browser/ui/passwords/settings/password_manager_presenter.cc +++ b/chrome/browser/ui/passwords/settings/password_manager_presenter.cc -@@ -44,7 +44,7 @@ +@@ -45,7 +45,7 @@ #include "components/undo/undo_operation.h" #include "content/public/browser/browser_thread.h" @@ -4659,15 +4415,24 @@ #include "chrome/browser/extensions/api/passwords_private/passwords_private_utils.h" #endif -@@ -342,7 +342,7 @@ void PasswordManagerPresenter::UndoRemov +@@ -101,7 +101,7 @@ FormVector GetEntryList(const std::map)> callback) const { + password_manager::PlaintextReason reason, --- /dev/null +++ b/chrome/browser/extensions/global_shortcut_listener_android.cc @@ -0,0 +1,50 @@ @@ -4762,7 +4527,7 @@ +#endif // CHROME_BROWSER_EXTENSIONS_GLOBAL_SHORTCUT_LISTENER_ANDROID_H_ --- a/chrome/browser/ui/webui/signin/login_ui_service.cc +++ b/chrome/browser/ui/webui/signin/login_ui_service.cc -@@ -78,18 +78,6 @@ void LoginUIService::ShowExtensionLoginP +@@ -78,17 +78,6 @@ void LoginUIService::ShowExtensionLoginP chrome::ScopedTabbedBrowserDisplayer displayer( profile_->GetOriginalProfile()); Browser* browser = displayer.browser(); @@ -4770,20 +4535,19 @@ - if (enable_sync) { - // Set a primary account. - browser->signin_view_controller()->ShowDiceEnableSyncTab( -- browser, signin_metrics::AccessPoint::ACCESS_POINT_EXTENSIONS, +- signin_metrics::AccessPoint::ACCESS_POINT_EXTENSIONS, - signin_metrics::PromoAction::PROMO_ACTION_NO_SIGNIN_PROMO, email_hint); - } else { - // Add an account to the web without setting a primary account. - browser->signin_view_controller()->ShowDiceAddAccountTab( -- browser, signin_metrics::AccessPoint::ACCESS_POINT_EXTENSIONS, -- email_hint); +- signin_metrics::AccessPoint::ACCESS_POINT_EXTENSIONS, email_hint); - } #endif } --- a/chrome/browser/platform_util.cc +++ b/chrome/browser/platform_util.cc -@@ -55,24 +55,6 @@ void DisableShellOperationsForTesting() +@@ -56,24 +56,6 @@ void DisableShellOperationsForTesting() } // namespace internal @@ -4797,9 +4561,9 @@ - // TaskShutdownBehavior::CONTINUE_ON_SHUTDOWN because this doesn't need global - // state and can hang shutdown without this trait as it may result in an - // interactive dialog. -- base::PostTask( +- base::ThreadPool::PostTask( - FROM_HERE, -- {base::ThreadPool(), base::MayBlock(), base::TaskPriority::USER_BLOCKING, +- {base::MayBlock(), base::TaskPriority::USER_BLOCKING, - base::TaskShutdownBehavior::CONTINUE_ON_SHUTDOWN}, - base::BindOnce(&VerifyAndOpenItemOnBlockingThread, full_path, item_type, - callback)); @@ -5024,33 +4788,33 @@ break; --- a/chrome/browser/ui/views/profiles/profile_menu_view.cc +++ b/chrome/browser/ui/views/profiles/profile_menu_view.cc -@@ -246,16 +246,10 @@ void ProfileMenuView::OnSyncErrorButtonC +@@ -277,16 +277,10 @@ void ProfileMenuView::OnSyncErrorButtonC signin_metrics::USER_CLICKED_SIGNOUT_SETTINGS, signin_metrics::SignoutDelete::IGNORE_METRIC); Hide(); - browser()->signin_view_controller()->ShowSignin( -- profiles::BUBBLE_VIEW_MODE_GAIA_SIGNIN, browser(), +- profiles::BUBBLE_VIEW_MODE_GAIA_SIGNIN, - signin_metrics::AccessPoint::ACCESS_POINT_AVATAR_BUBBLE_SIGN_IN); } break; case sync_ui_util::AUTH_ERROR: Hide(); - browser()->signin_view_controller()->ShowSignin( -- profiles::BUBBLE_VIEW_MODE_GAIA_REAUTH, browser(), +- profiles::BUBBLE_VIEW_MODE_GAIA_REAUTH, - signin_metrics::AccessPoint::ACCESS_POINT_AVATAR_BUBBLE_SIGN_IN); break; case sync_ui_util::UPGRADE_CLIENT_ERROR: chrome::OpenUpdateChromeDialog(browser()); -@@ -277,9 +271,6 @@ void ProfileMenuView::OnSyncErrorButtonC +@@ -331,9 +325,6 @@ void ProfileMenuView::OnSignoutButtonCli void ProfileMenuView::OnSigninButtonClicked() { RecordClick(ActionableItem::kSigninButton); Hide(); - browser()->signin_view_controller()->ShowSignin( -- profiles::BUBBLE_VIEW_MODE_GAIA_SIGNIN, browser(), +- profiles::BUBBLE_VIEW_MODE_GAIA_SIGNIN, - signin_metrics::AccessPoint::ACCESS_POINT_AVATAR_BUBBLE_SIGN_IN); } - void ProfileMenuView::OnSigninAccountButtonClicked(AccountInfo account) { + void ProfileMenuView::OnOtherProfileSelected( --- a/components/feature_engagement/public/event_constants.h +++ b/components/feature_engagement/public/event_constants.h @@ -23,7 +23,7 @@ extern const char kNewTabOpened[]; @@ -5163,28 +4927,6 @@ + +void DropdownBarHost::SetHostViewNative(views::View* host_view) { +} ---- a/chrome/browser/ui/views/frame/browser_frame.cc -+++ b/chrome/browser/ui/views/frame/browser_frame.cc -@@ -31,7 +31,6 @@ - #include "ui/base/material_design/material_design_controller.h" - #include "ui/events/event_handler.h" - #include "ui/gfx/font_list.h" --#include "ui/native_theme/native_theme_dark_aura.h" - #include "ui/views/controls/menu/menu_runner.h" - #include "ui/views/widget/native_widget.h" - -@@ -207,11 +206,6 @@ const ui::ThemeProvider* BrowserFrame::G - } - - const ui::NativeTheme* BrowserFrame::GetNativeTheme() const { -- if (browser_view_->browser()->profile()->IsIncognitoProfile() && -- ThemeServiceFactory::GetForProfile(browser_view_->browser()->profile()) -- ->UsingDefaultTheme()) { -- return ui::NativeThemeDarkAura::instance(); -- } - return views::Widget::GetNativeTheme(); - } - --- a/chrome/browser/ui/webui/welcome/welcome_handler.cc +++ b/chrome/browser/ui/webui/welcome/welcome_handler.cc @@ -91,9 +91,6 @@ void WelcomeHandler::HandleActivateSignI @@ -5192,14 +4934,14 @@ Browser* browser = GetBrowser(); - browser->signin_view_controller()->ShowSignin( -- profiles::BubbleViewMode::BUBBLE_VIEW_MODE_GAIA_SIGNIN, browser, +- profiles::BubbleViewMode::BUBBLE_VIEW_MODE_GAIA_SIGNIN, - signin_metrics::AccessPoint::ACCESS_POINT_START_PAGE, redirect_url); } } --- /dev/null +++ b/ui/views/widget/native_widget_android.cc -@@ -0,0 +1,445 @@ +@@ -0,0 +1,496 @@ +// Copyright (c) 2012 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. @@ -5248,6 +4990,22 @@ + +namespace views { + ++namespace { ++ ++DEFINE_UI_CLASS_PROPERTY_KEY(internal::NativeWidgetPrivate*, ++ kNativeWidgetPrivateKey, ++ nullptr) ++ ++void SetRestoreBounds(gfx::NativeWindow window, const gfx::Rect& bounds) { ++} ++ ++void SetIcon(gfx::NativeWindow window, ++ const aura::WindowProperty* key, ++ const gfx::ImageSkia& value) { ++} ++ ++} // namespace ++ +//////////////////////////////////////////////////////////////////////////////// +// NativeWidgetAndroid, public: + @@ -5284,7 +5042,38 @@ +// NativeWidgetAndroid, internal::NativeWidgetPrivate implementation: + +void NativeWidgetAndroid::InitNativeWidget(Widget::InitParams params) { ++ // See Widget::InitParams::context for details. ++ DCHECK(params.parent || params.context); ++ ++ ownership_ = params.ownership; ++ ++ RegisterNativeWidgetForWindow(this, window_); ++ // Check for ShadowType::kNone before aura::Window::Init() to ensure observers ++ // do not add useless shadow layers by deriving one from the window type. ++ SetShadowElevationFromInitParams(window_, params); ++ + delegate_->OnNativeWidgetCreated(); ++ ++ gfx::Rect window_bounds = params.bounds; ++ gfx::NativeView parent = params.parent; ++ gfx::NativeView context = params.context; ++ if (!params.child) { ++ // SetZOrderLevel before SetParent so that always-on-top container is used. ++ SetZOrderLevel(params.EffectiveZOrderLevel()); ++ } ++ ++ // Set properties before adding to the parent so that its layout manager sees ++ // the correct values. ++ OnSizeConstraintsChanged(); ++ ++ // Wait to set the bounds until we have a parent. That way we can know our ++ // true state/bounds (the LayoutManager may enforce a particular ++ // state/bounds). ++ if (IsMaximized()) ++ SetRestoreBounds(window_, window_bounds); ++ else ++ SetBounds(window_bounds); ++ DCHECK(GetWidget()->GetRootView()); +} + +void NativeWidgetAndroid::OnWidgetInitDone() {} @@ -5309,6 +5098,14 @@ + GetWidget()->GetRootView()->SchedulePaint(); +} + ++Widget* NativeWidgetAndroid::GetWidget() { ++ return delegate_->AsWidget(); ++} ++ ++const Widget* NativeWidgetAndroid::GetWidget() const { ++ return delegate_->AsWidget(); ++} ++ +gfx::NativeView NativeWidgetAndroid::GetNativeView() const { + return window_; +} @@ -5582,10 +5379,6 @@ +void NativeWidgetAndroid::SetInitialFocus(ui::WindowShowState show_state) { +} + -+const Widget* NativeWidgetAndroid::GetWidgetImpl() const { -+ return delegate_->AsWidget(); -+} -+ +//////////////////////////////////////////////////////////////////////////////// +// Widget, public: + @@ -5655,6 +5448,7 @@ +#ifndef UI_VIEWS_WIDGET_NATIVE_WIDGET_ANDROID_H_ +#define UI_VIEWS_WIDGET_NATIVE_WIDGET_ANDROID_H_ + ++#include +#include + +#include "base/macros.h" @@ -5710,6 +5504,8 @@ + bool ShouldUseNativeFrame() const override; + bool ShouldWindowContentsBeTransparent() const override; + void FrameTypeChanged() override; ++ Widget* GetWidget() override; ++ const Widget* GetWidget() const override; + gfx::NativeView GetNativeView() const override; + gfx::NativeWindow GetNativeWindow() const override; + Widget* GetTopLevelWidget() override; @@ -5802,9 +5598,6 @@ + private: + void SetInitialFocus(ui::WindowShowState show_state); + -+ // internal::NativeWidgetPrivate: -+ const Widget* GetWidgetImpl() const override; -+ + internal::NativeWidgetDelegate* delegate_; + + // WARNING: set to NULL when destroyed. As the Widget is not necessarily @@ -6145,7 +5938,7 @@ void WindowAndroid::AddObserver(WindowAndroidObserver* observer) { if (!observer_list_.HasObserver(observer)) observer_list_.AddObserver(observer); -@@ -273,6 +285,22 @@ WindowAndroid* WindowAndroid::GetWindowA +@@ -279,6 +291,22 @@ WindowAndroid* WindowAndroid::GetWindowA return const_cast(this); } @@ -6414,7 +6207,7 @@ case PageActionIconType::kCookieControls: cookie_controls_icon_ = new CookieControlsIconView(params.icon_label_bubble_delegate, -@@ -131,17 +120,6 @@ void PageActionIconController::Init(cons +@@ -132,17 +121,6 @@ void PageActionIconController::Init(cons params.page_action_icon_delegate); page_action_icons_.push_back(send_tab_to_self_icon_); break; @@ -6557,7 +6350,7 @@ +#endif // UI_VIEWS_EVENT_MONITOR_ANDROID_H_ --- a/chrome/browser/sharing/shared_clipboard/feature_flags.cc +++ b/chrome/browser/sharing/shared_clipboard/feature_flags.cc -@@ -11,7 +11,7 @@ const base::Feature kSharedClipboardUI{" +@@ -8,7 +8,7 @@ const base::Feature kSharedClipboardUI{" base::FEATURE_DISABLED_BY_DEFAULT}; #if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || \ @@ -6568,7 +6361,7 @@ --- a/chrome/browser/sharing/shared_clipboard/feature_flags.h +++ b/chrome/browser/sharing/shared_clipboard/feature_flags.h -@@ -18,7 +18,7 @@ extern const base::Feature kSharedClipbo +@@ -15,7 +15,7 @@ extern const base::Feature kSharedClipboardUI; #if defined(OS_WIN) || defined(OS_MACOSX) || defined(OS_LINUX) || \ @@ -6600,7 +6393,7 @@ +} // namespace views --- a/chrome/browser/ui/views/extensions/extension_installed_bubble_view.cc +++ b/chrome/browser/ui/views/extensions/extension_installed_bubble_view.cc -@@ -146,11 +146,7 @@ std::unique_ptr CreateSigni +@@ -95,11 +95,7 @@ std::unique_ptr CreateSigni // ChromeOS does not show the signin promo. return nullptr; #else @@ -6866,7 +6659,7 @@ error = '''Asserted file list does not match. --- a/android_webview/browser/aw_browser_context.cc +++ b/android_webview/browser/aw_browser_context.cc -@@ -225,6 +225,12 @@ base::FilePath AwBrowserContext::GetCont +@@ -234,6 +234,12 @@ base::FilePath AwBrowserContext::GetCont return user_data_dir; } @@ -6881,7 +6674,7 @@ // safe_browsing::RegisterProfilePrefs(registry); --- a/android_webview/browser/aw_browser_context.h +++ b/android_webview/browser/aw_browser_context.h -@@ -84,6 +84,8 @@ class AwBrowserContext : public content: +@@ -85,6 +85,8 @@ class AwBrowserContext : public content: bool IsDefaultBrowserContext() { return true; } // content::BrowserContext implementation. @@ -6979,7 +6772,7 @@ +} // namespace views --- a/ui/views/touchui/touch_selection_controller_impl.cc +++ b/ui/views/touchui/touch_selection_controller_impl.cc -@@ -219,10 +219,6 @@ class TouchSelectionControllerImpl::Edit +@@ -220,10 +220,6 @@ class TouchSelectionControllerImpl::Edit draw_invisible_(false) { widget_.reset(CreateTouchSelectionPopupWidget(parent, this)); @@ -6990,7 +6783,7 @@ // We are owned by the TouchSelectionControllerImpl. set_owned_by_client(); } -@@ -339,18 +335,14 @@ class TouchSelectionControllerImpl::Edit +@@ -337,18 +333,14 @@ class TouchSelectionControllerImpl::Edit widget_->SetBounds(GetSelectionWidgetBounds(selection_bound_)); @@ -7009,7 +6802,7 @@ } void SetDrawInvisible(bool draw_invisible) { -@@ -364,12 +356,6 @@ class TouchSelectionControllerImpl::Edit +@@ -362,12 +354,6 @@ class TouchSelectionControllerImpl::Edit std::unique_ptr widget_; TouchSelectionControllerImpl* controller_; @@ -7022,7 +6815,7 @@ // In local coordinates gfx::SelectionBound selection_bound_; gfx::Image* image_; -@@ -404,24 +390,17 @@ TouchSelectionControllerImpl::TouchSelec +@@ -402,24 +388,17 @@ TouchSelectionControllerImpl::TouchSelec cursor_handle_( new EditingHandleView(this, client_view->GetNativeView(), true)) { selection_start_time_ = base::TimeTicks::Now(); @@ -7048,7 +6841,7 @@ if (client_widget_) client_widget_->RemoveObserver(this); } -@@ -629,19 +608,7 @@ void TouchSelectionControllerImpl::OnWid +@@ -626,19 +605,7 @@ void TouchSelectionControllerImpl::OnWid void TouchSelectionControllerImpl::OnEvent(const ui::Event& event) { if (event.IsMouseEvent()) { @@ -7069,7 +6862,7 @@ } client_view_->DestroyTouchSelection(); -@@ -651,10 +618,6 @@ void TouchSelectionControllerImpl::Quick +@@ -648,10 +615,6 @@ void TouchSelectionControllerImpl::Quick gfx::Rect menu_anchor = GetQuickMenuAnchorRect(); if (menu_anchor == gfx::Rect()) return; @@ -7080,7 +6873,7 @@ } void TouchSelectionControllerImpl::StartQuickMenuTimer() { -@@ -672,8 +635,6 @@ void TouchSelectionControllerImpl::Updat +@@ -669,8 +632,6 @@ void TouchSelectionControllerImpl::Updat } void TouchSelectionControllerImpl::HideQuickMenu() { @@ -7091,7 +6884,17 @@ --- a/chrome/browser/startup_data.cc +++ b/chrome/browser/startup_data.cc -@@ -151,7 +151,7 @@ StartupData::TakeProtoDatabaseProvider() +@@ -33,9 +33,6 @@ + #include "chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.h" + #include "chrome/browser/profiles/pref_service_builder_utils.h" + #include "chrome/browser/profiles/profile_key.h" +-#include "chrome/browser/supervised_user/supervised_user_pref_store.h" +-#include "chrome/browser/supervised_user/supervised_user_settings_service.h" +-#include "chrome/browser/supervised_user/supervised_user_settings_service_factory.h" + #include "chrome/common/chrome_constants.h" + #include "chrome/common/chrome_paths.h" + #include "components/keyed_service/content/browser_context_dependency_manager.h" +@@ -152,7 +149,7 @@ StartupData::TakeProtoDatabaseProvider() void StartupData::PreProfilePrefServiceInit() { pref_registry_ = base::MakeRefCounted(); ChromeBrowserMainExtraPartsProfiles:: @@ -7167,16 +6970,16 @@ HistoryUiFaviconRequestHandlerFactory::GetInstance(); #if BUILDFLAG(ENABLE_LEGACY_DESKTOP_IN_PRODUCT_HELP) feature_engagement::BookmarkTrackerFactory::GetInstance(); -@@ -265,7 +274,7 @@ void ChromeBrowserMainExtraPartsProfiles +@@ -264,7 +273,7 @@ void ChromeBrowserMainExtraPartsProfiles + HostContentSettingsMapFactory::GetInstance(); IdentityManagerFactory::EnsureFactoryAndDependeeFactoriesBuilt(); InMemoryURLIndexFactory::GetInstance(); - invalidation::DeprecatedProfileInvalidationProviderFactory::GetInstance(); -#if !defined(OS_ANDROID) +#if defined(OS_ANDROID) InstantServiceFactory::GetInstance(); #endif #if BUILDFLAG(ENABLE_SERVICE_DISCOVERY) -@@ -273,6 +282,7 @@ void ChromeBrowserMainExtraPartsProfiles +@@ -272,6 +281,7 @@ void ChromeBrowserMainExtraPartsProfiles #endif RendererUpdaterFactory::GetInstance(); #if BUILDFLAG(ENABLE_SUPERVISED_USERS) @@ -7184,7 +6987,7 @@ SupervisedUserServiceFactory::GetInstance(); #endif LanguageModelManagerFactory::GetInstance(); -@@ -280,6 +290,7 @@ void ChromeBrowserMainExtraPartsProfiles +@@ -279,6 +289,7 @@ void ChromeBrowserMainExtraPartsProfiles LoginUIServiceFactory::GetInstance(); #endif if (MediaEngagementService::IsEnabled()) @@ -7203,7 +7006,7 @@ ThemeServiceFactory::GetInstance(); #endif #if BUILDFLAG(ENABLE_PLUGINS) -@@ -314,6 +326,7 @@ void ChromeBrowserMainExtraPartsProfiles +@@ -314,12 +326,14 @@ void ChromeBrowserMainExtraPartsProfiles policy::UserPolicySigninServiceFactory::GetInstance(); #endif policy::UserCloudPolicyInvalidatorFactory::GetInstance(); @@ -7211,15 +7014,14 @@ predictors::AutocompleteActionPredictorFactory::GetInstance(); predictors::PredictorDatabaseFactory::GetInstance(); predictors::LoadingPredictorFactory::GetInstance(); -@@ -321,6 +334,7 @@ void ChromeBrowserMainExtraPartsProfiles + prerender::PrerenderLinkManagerFactory::GetInstance(); prerender::PrerenderManagerFactory::GetInstance(); - prerender::PrerenderMessageFilter::EnsureShutdownNotifierFactoryBuilt(); ProfileSyncServiceFactory::GetInstance(); + } ProtocolHandlerRegistryFactory::GetInstance(); #if !defined(OS_ANDROID) resource_coordinator::LocalSiteCharacteristicsDataStoreFactory::GetInstance(); -@@ -335,11 +349,13 @@ void ChromeBrowserMainExtraPartsProfiles +@@ -334,11 +348,13 @@ void ChromeBrowserMainExtraPartsProfiles #if BUILDFLAG(ENABLE_SESSION_SERVICE) SessionServiceFactory::GetInstance(); #endif @@ -7233,7 +7035,7 @@ SiteEngagementServiceFactory::GetInstance(); #if BUILDFLAG(ENABLE_SPELLCHECK) -@@ -348,10 +364,12 @@ void ChromeBrowserMainExtraPartsProfiles +@@ -347,10 +363,12 @@ void ChromeBrowserMainExtraPartsProfiles #if !defined(OS_ANDROID) StorageNotificationServiceFactory::GetInstance(); #endif @@ -7246,7 +7048,7 @@ TopSitesFactory::GetInstance(); translate::TranslateRankerFactory::GetInstance(); #if defined(OS_WIN) -@@ -363,8 +381,10 @@ void ChromeBrowserMainExtraPartsProfiles +@@ -362,8 +380,10 @@ void ChromeBrowserMainExtraPartsProfiles UsbChooserContextFactory::GetInstance(); #endif #if BUILDFLAG(ENABLE_EXTENSIONS) @@ -7291,16 +7093,16 @@ prefs::kRelaunchNotificationPeriod, --- a/chrome/browser/prefs/browser_prefs.cc +++ b/chrome/browser/prefs/browser_prefs.cc -@@ -218,7 +218,7 @@ +@@ -230,7 +230,7 @@ #if BUILDFLAG(ENABLE_FEED_IN_CHROME) #include "components/feed/core/common/pref_names.h" #endif // BUILDFLAG(ENABLE_FEED_IN_CHROME) -#else // defined(OS_ANDROID) + #include "chrome/browser/apps/app_service/app_service_proxy.h" - #include "chrome/browser/enterprise_reporting/prefs.h" + #include "chrome/browser/enterprise/reporting/prefs.h" #include "chrome/browser/gcm/gcm_product_util.h" -@@ -475,7 +475,7 @@ const char kNtpActivateHideShortcutsFiel +@@ -493,7 +493,7 @@ const char kNtpActivateHideShortcutsFiel "ntp.activate_hide_shortcuts_field_trial"; #endif // !defined(OS_ANDROID) @@ -7309,7 +7111,7 @@ // Deprecated 7/2019 // WebAuthn prefs were being erroneously stored on Android. They are registered // on other platforms. -@@ -590,7 +590,7 @@ void RegisterProfilePrefsForMigration( +@@ -615,7 +615,7 @@ void RegisterProfilePrefsForMigration( registry->RegisterInt64Pref(kSignedInTime, 0); @@ -7318,7 +7120,7 @@ registry->RegisterStringPref(kWebAuthnLastTransportUsedPrefName, std::string()); registry->RegisterListPref(kWebAuthnBlePairedMacAddressesPrefName); -@@ -671,7 +671,7 @@ void RegisterLocalState(PrefRegistrySimp +@@ -703,7 +703,7 @@ void RegisterLocalState(PrefRegistrySimp #if defined(OS_ANDROID) ::android::RegisterPrefs(registry); @@ -7327,7 +7129,7 @@ enterprise_reporting::RegisterLocalStatePrefs(registry); gcm::RegisterPrefs(registry); media_router::RegisterLocalStatePrefs(registry); -@@ -932,7 +932,7 @@ void RegisterProfilePrefs(user_prefs::Pr +@@ -983,7 +983,7 @@ void RegisterProfilePrefs(user_prefs::Pr #if BUILDFLAG(ENABLE_FEED_IN_CHROME) feed::RegisterProfilePrefs(registry); #endif // BUILDFLAG(ENABLE_FEED_IN_CHROME) @@ -7336,7 +7138,7 @@ apps::AppServiceProxy::RegisterProfilePrefs(registry); AppShortcutManager::RegisterProfilePrefs(registry); browser_sync::ForeignSessionHandler::RegisterProfilePrefs(registry); -@@ -943,7 +943,6 @@ void RegisterProfilePrefs(user_prefs::Pr +@@ -994,7 +994,6 @@ void RegisterProfilePrefs(user_prefs::Pr extensions::TabsCaptureVisibleTabFunction::RegisterProfilePrefs(registry); first_run::RegisterProfilePrefs(registry); gcm::RegisterProfilePrefs(registry); @@ -7344,7 +7146,7 @@ HistoryUI::RegisterProfilePrefs(registry); InstantService::RegisterProfilePrefs(registry); media_router::RegisterProfilePrefs(registry); -@@ -1023,7 +1022,7 @@ void RegisterProfilePrefs(user_prefs::Pr +@@ -1079,7 +1078,7 @@ void RegisterProfilePrefs(user_prefs::Pr browser_switcher::BrowserSwitcherPrefs::RegisterProfilePrefs(registry); #endif @@ -7353,7 +7155,7 @@ default_apps::RegisterProfilePrefs(registry); #endif -@@ -1220,7 +1219,7 @@ void MigrateObsoleteProfilePrefs(Profile +@@ -1281,7 +1280,7 @@ void MigrateObsoleteProfilePrefs(Profile profile_prefs->ClearPref(kLastKnownGoogleURL); profile_prefs->ClearPref(kLastPromptedGoogleURL); @@ -7374,7 +7176,7 @@ // static --- a/chrome/browser/content_settings/host_content_settings_map_factory.cc +++ b/chrome/browser/content_settings/host_content_settings_map_factory.cc -@@ -45,6 +45,7 @@ HostContentSettingsMapFactory::HostConte +@@ -47,6 +47,7 @@ HostContentSettingsMapFactory::HostConte DependsOn(SupervisedUserSettingsServiceFactory::GetInstance()); #endif #if BUILDFLAG(ENABLE_EXTENSIONS) @@ -7384,7 +7186,7 @@ #endif --- a/chrome/browser/supervised_user/supervised_user_service_factory.cc +++ b/chrome/browser/supervised_user/supervised_user_service_factory.cc -@@ -45,6 +45,7 @@ SupervisedUserServiceFactory::Supervised +@@ -51,6 +51,7 @@ SupervisedUserServiceFactory::Supervised "SupervisedUserService", BrowserContextDependencyManager::GetInstance()) { #if BUILDFLAG(ENABLE_EXTENSIONS) @@ -7394,7 +7196,7 @@ #endif --- a/chrome/browser/sync/profile_sync_service_factory.cc +++ b/chrome/browser/sync/profile_sync_service_factory.cc -@@ -171,9 +171,11 @@ ProfileSyncServiceFactory::ProfileSyncSe +@@ -168,9 +168,11 @@ ProfileSyncServiceFactory::ProfileSyncSe #endif // !defined(OS_ANDROID) DependsOn(WebDataServiceFactory::GetInstance()); #if BUILDFLAG(ENABLE_EXTENSIONS) @@ -7441,7 +7243,7 @@ return true; --- a/third_party/skia/src/gpu/ops/GrSimpleMeshDrawOpHelper.cpp +++ b/third_party/skia/src/gpu/ops/GrSimpleMeshDrawOpHelper.cpp -@@ -40,6 +40,7 @@ GrDrawOp::FixedFunctionFlags GrSimpleMes +@@ -42,6 +42,7 @@ GrDrawOp::FixedFunctionFlags GrSimpleMes bool GrSimpleMeshDrawOpHelper::isCompatible(const GrSimpleMeshDrawOpHelper& that, const GrCaps& caps, const SkRect& thisBounds, const SkRect& thatBounds, bool ignoreAAType) const { @@ -7451,7 +7253,7 @@ } --- a/components/policy/resources/policy_templates.json +++ b/components/policy/resources/policy_templates.json -@@ -3976,7 +3976,7 @@ +@@ -4082,7 +4082,7 @@ 'items': { 'type': 'string' }, 'id': 'ExtensionInstallSources', }, @@ -7460,7 +7262,7 @@ 'features': { 'dynamic_refresh': True, 'per_profile': True, -@@ -4035,7 +4035,7 @@ +@@ -4141,7 +4141,7 @@ }, 'id': 'ExtensionAllowedTypes', }, @@ -7469,7 +7271,7 @@ 'features': { 'dynamic_refresh': True, 'per_profile': True, -@@ -4150,7 +4150,7 @@ +@@ -4256,7 +4256,7 @@ }, }, 'url_schema': 'https://www.ch40m1um.qjz9zk/administrators/policy-list-3/extension-settings-full', @@ -7478,7 +7280,7 @@ 'features': { 'dynamic_refresh': True, 'per_profile': True, -@@ -4327,7 +4327,7 @@ +@@ -4433,7 +4433,7 @@ 'caption': '''Disallow usage of the Developer Tools''', }, ], @@ -7489,7 +7291,7 @@ 'per_profile': True, --- a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc +++ b/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc -@@ -113,7 +113,7 @@ +@@ -117,7 +117,7 @@ #include "chrome/browser/ui/webui/tab_strip/tab_strip_ui.h" #endif @@ -7498,7 +7300,7 @@ #include "chrome/browser/media/router/media_router_feature.h" #include "chrome/browser/ui/webui/management_ui.h" #include "chrome/browser/ui/webui/media_router/media_router_internals_ui.h" -@@ -133,7 +133,7 @@ +@@ -137,7 +137,7 @@ #if BUILDFLAG(ENABLE_FEED_IN_CHROME) #include "chrome/browser/ui/webui/feed_internals/feed_internals_ui.h" #endif // BUILDFLAG(ENABLE_FEED_IN_CHROME) @@ -7507,7 +7309,7 @@ #include "chrome/browser/ui/webui/bookmarks/bookmarks_ui.h" #include "chrome/browser/ui/webui/devtools_ui.h" #include "chrome/browser/ui/webui/downloads/downloads_ui.h" -@@ -207,7 +207,7 @@ +@@ -215,7 +215,7 @@ #include "chrome/browser/ui/webui/app_launcher_page_ui.h" #endif @@ -7516,7 +7318,7 @@ #include "chrome/browser/ui/sync/sync_promo_ui.h" #include "chrome/browser/ui/webui/browser_switch/browser_switch_ui.h" #include "chrome/browser/ui/webui/signin/inline_login_ui.h" -@@ -275,7 +275,7 @@ WebUIController* NewWebUI(WebUI* web_ui, +@@ -283,7 +283,7 @@ WebUIController* NewWebUI(WebUI* web_ui, return new T(web_ui); } @@ -7525,7 +7327,7 @@ template <> WebUIController* NewWebUI(WebUI* web_ui, const GURL& url) { -@@ -322,7 +322,7 @@ WebUIController* NewWebUI WebUIController* NewWebUI(WebUI* web_ui, const GURL& url) { return new WelcomeUI(web_ui, url); -@@ -440,7 +440,7 @@ WebUIFactoryFunction GetWebUIFactoryFunc +@@ -461,7 +461,7 @@ WebUIFactoryFunction GetWebUIFactoryFunc if (url.host_piece() == chrome::kChromeUIVersionHost) return &NewWebUI; @@ -7543,7 +7345,7 @@ #if !defined(OS_CHROMEOS) // AppLauncherPage is not needed on Android or ChromeOS. if (url.host_piece() == chrome::kChromeUIAppLauncherPageHost && profile && -@@ -630,7 +630,7 @@ WebUIFactoryFunction GetWebUIFactoryFunc +@@ -655,7 +655,7 @@ WebUIFactoryFunction GetWebUIFactoryFunc } if (url.host_piece() == chrome::kChromeUIWebApksHost) return &NewWebUI; @@ -7552,7 +7354,7 @@ if (url.SchemeIs(content::kChromeDevToolsScheme)) { if (!DevToolsUIBindings::IsValidFrontendURL(url)) return nullptr; -@@ -646,7 +646,7 @@ WebUIFactoryFunction GetWebUIFactoryFunc +@@ -671,7 +671,7 @@ WebUIFactoryFunction GetWebUIFactoryFunc return &NewWebUI; } #endif // defined(OS_ANDROID) @@ -7561,7 +7363,7 @@ if (url.host_piece() == chrome::kChromeUIMdUserManagerHost) return &NewWebUI; if (url.host_piece() == chrome::kChromeUISigninErrorHost && -@@ -930,7 +930,7 @@ base::RefCountedMemory* ChromeWebUIContr +@@ -967,7 +967,7 @@ base::RefCountedMemory* ChromeWebUIContr .LoadDataResourceBytesForScale(IDR_HISTORY_FAVICON, scale_factor); } @@ -7581,10 +7383,10 @@ return path; } -@@ -97,7 +97,7 @@ base::FilePath GetLegacyDefaultProfilePa - } // namespace +@@ -54,7 +54,7 @@ base::FilePath GetProfilePath(const base - base::FilePath GetFirefoxProfilePath(const std::string& firefox_install_id) { + std::vector GetFirefoxDetails( + const std::string& firefox_install_id) { - base::FilePath ini_file = GetProfilesINI(); + base::FilePath ini_file = base::FilePath(); std::string content; @@ -7592,7 +7394,7 @@ DictionaryValueINIParser ini_parser; --- a/content/public/browser/content_browser_client.cc +++ b/content/public/browser/content_browser_client.cc -@@ -850,7 +850,7 @@ void ContentBrowserClient::CreateWebUsbS +@@ -857,7 +857,7 @@ void ContentBrowserClient::CreateWebUsbS RenderFrameHost* render_frame_host, mojo::PendingReceiver receiver) {} @@ -7603,7 +7405,7 @@ } --- a/content/public/browser/content_browser_client.h +++ b/content/public/browser/content_browser_client.h -@@ -1525,7 +1525,7 @@ class CONTENT_EXPORT ContentBrowserClien +@@ -1527,7 +1527,7 @@ class CONTENT_EXPORT ContentBrowserClien RenderFrameHost* render_frame_host, mojo::PendingReceiver receiver); @@ -7685,7 +7487,7 @@ } // namespace settings --- a/services/network/network_context.cc +++ b/services/network/network_context.cc -@@ -825,7 +825,6 @@ void NetworkContext::QueueReport(const s +@@ -850,7 +850,6 @@ void NetworkContext::QueueReport(const s void NetworkContext::QueueSignedExchangeReport( mojom::SignedExchangeReportPtr report) { @@ -7709,7 +7511,7 @@ import androidx.annotation.VisibleForTesting; import org.chromium.base.ContentUriUtils; -@@ -39,6 +42,8 @@ import org.chromium.ui.UiUtils; +@@ -40,6 +43,8 @@ import org.chromium.ui.UiUtils; import java.io.File; import java.io.IOException; @@ -7718,7 +7520,7 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.List; -@@ -95,6 +100,7 @@ public class SelectFileDialog implements +@@ -96,6 +101,7 @@ public class SelectFileDialog implements private final long mNativeSelectFileDialog; private List mFileTypes; @@ -7726,7 +7528,7 @@ private boolean mCapture; private boolean mAllowMultiple; private Uri mCameraOutputUri; -@@ -142,9 +148,10 @@ public class SelectFileDialog implements +@@ -143,9 +149,10 @@ public class SelectFileDialog implements @TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR2) @CalledByNative private void selectFile( @@ -7738,7 +7540,7 @@ mAllowMultiple = multiple; mWindowAndroid = (sOverrideWindowAndroid == null) ? window : sOverrideWindowAndroid; -@@ -236,6 +243,12 @@ public class SelectFileDialog implements +@@ -237,6 +244,12 @@ public class SelectFileDialog implements RecordHistogram.recordEnumeratedHistogram("Android.SelectFileDialogScope", determineSelectFileDialogScope(), SELECT_FILE_DIALOG_SCOPE_COUNT); @@ -7751,7 +7553,7 @@ boolean hasCameraPermission = mWindowAndroid.hasPermission(Manifest.permission.CAMERA); Intent camcorder = null; if (mSupportsVideoCapture && hasCameraPermission) { -@@ -289,6 +302,9 @@ public class SelectFileDialog implements +@@ -290,6 +303,9 @@ public class SelectFileDialog implements } else if (shouldShowAudioTypes()) { if (soundRecorder != null) extraIntents.add(soundRecorder); getContentIntent.setType(ALL_AUDIO_TYPES); @@ -7761,7 +7563,7 @@ } // If any types are specified, then only accept openable files, as coercing -@@ -302,6 +318,7 @@ public class SelectFileDialog implements +@@ -303,6 +319,7 @@ public class SelectFileDialog implements if (camera != null) extraIntents.add(camera); if (camcorder != null) extraIntents.add(camcorder); if (soundRecorder != null) extraIntents.add(soundRecorder); @@ -7769,7 +7571,7 @@ } Intent chooser = new Intent(Intent.ACTION_CHOOSER); -@@ -697,6 +714,14 @@ public class SelectFileDialog implements +@@ -701,6 +718,14 @@ public class SelectFileDialog implements String[] displayNames = new String[mUris.length]; try { for (int i = 0; i < mUris.length; i++) { @@ -7784,7 +7586,7 @@ // The selected files must be returned as a list of absolute paths. A MIUI 8.5 // device was observed to return a file:// URI instead, so convert if necessary. // See https://crbug.com/752834 for context. -@@ -705,8 +730,13 @@ public class SelectFileDialog implements +@@ -709,8 +734,13 @@ public class SelectFileDialog implements } else { mFilePaths[i] = mUris[i].toString(); } @@ -7800,7 +7602,7 @@ } } catch (SecurityException e) { // Some third party apps will present themselves as being able -@@ -803,4 +833,82 @@ public class SelectFileDialog implements +@@ -807,4 +837,82 @@ public class SelectFileDialog implements void onContactsSelected( long nativeSelectFileDialogImpl, SelectFileDialog caller, String contacts); } @@ -7910,3 +7712,349 @@ #else NOTREACHED(); return std::string(); +--- a/chrome/browser/ui/webui/settings/settings_ui.cc ++++ b/chrome/browser/ui/webui/settings/settings_ui.cc +@@ -192,7 +192,6 @@ SettingsUI::SettingsUI(content::WebUI* w + AddSettingsPageUIHandler(std::make_unique()); + AddSettingsPageUIHandler(std::make_unique(web_ui)); + AddSettingsPageUIHandler(std::make_unique()); +- AddSettingsPageUIHandler(std::make_unique()); + + #if defined(OS_WIN) || defined(OS_CHROMEOS) + AddSettingsPageUIHandler(std::make_unique(web_ui)); +@@ -438,13 +437,6 @@ void SettingsUI::AddSettingsPageUIHandle + } + + void SettingsUI::TryShowHatsSurveyWithTimeout() { +- HatsService* hats_service = +- HatsServiceFactory::GetForProfile(Profile::FromWebUI(web_ui()), +- /* create_if_necessary = */ true); +- if (hats_service) { +- hats_service->LaunchDelayedSurveyForWebContents( +- kHatsSurveyTriggerSettings, web_ui()->GetWebContents(), 20000); +- } + } + + } // namespace settings +--- a/components/page_info/page_info_ui.cc ++++ b/components/page_info/page_info_ui.cc +@@ -28,7 +28,6 @@ + #include "url/gurl.h" + #if defined(OS_ANDROID) + #include "components/resources/android/theme_resources.h" +-#else + #include "media/base/media_switches.h" + #include "ui/gfx/color_palette.h" + #include "ui/gfx/color_utils.h" +@@ -43,7 +42,7 @@ namespace { + + const int kInvalidResourceID = -1; + +-#if !defined(OS_ANDROID) ++#if defined(OS_ANDROID) + // The icon size is actually 16, but the vector icons being used generally all + // have additional internal padding. Account for this difference by asking for + // the vectors in 18x18dip sizes. +@@ -103,7 +102,7 @@ static_assert(base::size(kPermissionButt + CONTENT_SETTING_NUM_SETTINGS, + "kPermissionButtonTextIDDefaultSetting array size is incorrect"); + +-#if !defined(OS_ANDROID) ++#if defined(OS_ANDROID) + // The resource IDs for the strings that are displayed on the sound permission + // button if the sound permission setting is managed by the user. + const int kSoundPermissionButtonTextIDUserManaged[] = { +@@ -169,7 +168,7 @@ base::span GetC + ? IDS_PAGE_INFO_TYPE_SENSORS + : IDS_PAGE_INFO_TYPE_MOTION_SENSORS}, + {ContentSettingsType::USB_GUARD, IDS_PAGE_INFO_TYPE_USB}, +-#if !defined(OS_ANDROID) ++#if defined(OS_ANDROID) + {ContentSettingsType::SERIAL_GUARD, IDS_PAGE_INFO_TYPE_SERIAL}, + #endif + {ContentSettingsType::BLUETOOTH_GUARD, IDS_PAGE_INFO_TYPE_BLUETOOTH}, +@@ -541,7 +540,6 @@ int PageInfoUI::GetConnectionIconID(Page + } + return resource_id; + } +-#else // !defined(OS_ANDROID) + // static + const gfx::ImageSkia PageInfoUI::GetPermissionIcon(const PermissionInfo& info, + SkColor related_text_color) { +--- a/components/page_info/page_info_ui.h ++++ b/components/page_info/page_info_ui.h +@@ -18,7 +18,7 @@ + #include "components/safe_browsing/buildflags.h" + #include "ui/gfx/native_widget_types.h" + +-#if !defined(OS_ANDROID) ++#if defined(OS_ANDROID) + #include "ui/gfx/image/image_skia.h" + #endif + +@@ -201,7 +201,6 @@ class PageInfoUI { + + // Returns the connection icon ID for the given connection |status|. + static int GetConnectionIconID(PageInfo::SiteConnectionStatus status); +-#else // !defined(OS_ANDROID) + // Returns icons for the given PermissionInfo |info|. If |info|'s current + // setting is CONTENT_SETTING_DEFAULT, it will return the icon for |info|'s + // default setting. +--- a/chrome/browser/ui/passwords/settings/password_manager_presenter.h ++++ b/chrome/browser/ui/passwords/settings/password_manager_presenter.h +@@ -92,7 +92,7 @@ class PasswordManagerPresenter + // Undoes the last saved password or exception removal. + void UndoRemoveSavedPasswordOrException(); + +-#if !defined(OS_ANDROID) ++#if defined(OS_ANDROID) + // Requests to reveal the plain text password corresponding to |sort_key|. If + // |sort_key| is a valid key into |password_map_|, runs |callback| with the + // corresponding value, or nullopt otherwise. +--- a/chrome/browser/ui/webui/omnibox/omnibox_ui.cc ++++ b/chrome/browser/ui/webui/omnibox/omnibox_ui.cc +@@ -19,7 +19,7 @@ + #include "content/public/browser/web_ui_controller.h" + #include "content/public/browser/web_ui_data_source.h" + +-#if !defined(OS_ANDROID) ++#if defined(OS_ANDROID) + #include "chrome/browser/ui/webui/omnibox/omnibox_popup_handler.h" + #endif + +@@ -48,7 +48,7 @@ OmniboxUI::OmniboxUI(content::WebUI* web + IDR_OMNIBOX_MOJO_JS); + source->SetDefaultResource(IDR_OMNIBOX_HTML); + +-#if !defined(OS_ANDROID) ++#if defined(OS_ANDROID) + if (base::FeatureList::IsEnabled(omnibox::kWebUIOmniboxPopup)) { + source->AddResourcePath("omnibox_popup.js", IDR_OMNIBOX_POPUP_JS); + source->AddResourcePath("omnibox_popup.html", IDR_OMNIBOX_POPUP_HTML); +--- a/chrome/browser/ui/webui/omnibox/omnibox_ui.h ++++ b/chrome/browser/ui/webui/omnibox/omnibox_ui.h +@@ -13,7 +13,7 @@ + + class OmniboxPageHandler; + +-#if !defined(OS_ANDROID) ++#if defined(OS_ANDROID) + class OmniboxPopupHandler; + #endif + +@@ -27,7 +27,7 @@ class OmniboxUI : public ui::MojoWebUICo + // interface passing the pending receiver that will be internally bound. + void BindInterface(mojo::PendingReceiver receiver); + +-#if !defined(OS_ANDROID) ++#if defined(OS_ANDROID) + // This is needed for the Views native UI to call into the WebUI code. + OmniboxPopupHandler* popup_handler() { return popup_handler_.get(); } + #endif +@@ -35,7 +35,7 @@ class OmniboxUI : public ui::MojoWebUICo + private: + std::unique_ptr omnibox_handler_; + +-#if !defined(OS_ANDROID) ++#if defined(OS_ANDROID) + std::unique_ptr popup_handler_; + #endif + +--- a/chrome/browser/ui/native_file_system_dialogs.cc ++++ b/chrome/browser/ui/native_file_system_dialogs.cc +@@ -6,7 +6,7 @@ + + #include "components/permissions/permission_util.h" + +-#if !defined(TOOLKIT_VIEWS) ++#if defined(TOOLKIT_VIEWS) + void ShowNativeFileSystemPermissionDialog( + const NativeFileSystemPermissionRequestManager::RequestData& request, + base::OnceCallback callback, +--- a/chrome/browser/ui/views/frame/browser_frame.cc ++++ b/chrome/browser/ui/views/frame/browser_frame.cc +@@ -208,11 +208,6 @@ const ui::ThemeProvider* BrowserFrame::G + } + + const ui::NativeTheme* BrowserFrame::GetNativeTheme() const { +- if (browser_view_->browser()->profile()->IsIncognitoProfile() && +- ThemeServiceFactory::GetForProfile(browser_view_->browser()->profile()) +- ->UsingDefaultTheme()) { +- return ui::NativeTheme::GetInstanceForDarkUI(); +- } + return views::Widget::GetNativeTheme(); + } + +--- a/chrome/browser/devtools/devtools_window.cc ++++ b/chrome/browser/devtools/devtools_window.cc +@@ -1479,7 +1479,6 @@ void DevToolsWindow::ShowCertificateView + if (!FindInspectedBrowserAndTabIndex(inspected_contents, &browser, &tab)) + return; + gfx::NativeWindow parent = browser->window()->GetNativeWindow(); +- ::ShowCertificateViewer(inspected_contents, parent, cert.get()); + } + + void DevToolsWindow::OnLoadCompleted() { +--- a/chrome/browser/ui/views/page_info/page_info_bubble_view.cc ++++ b/chrome/browser/ui/views/page_info/page_info_bubble_view.cc +@@ -1009,7 +1009,6 @@ void PageInfoBubbleView::HandleMoreInfoR + if (certificate_ && top_window) { + presenter_->RecordPageInfoAction( + PageInfo::PAGE_INFO_CERTIFICATE_DIALOG_OPENED); +- ShowCertificateViewer(web_contents(), top_window, certificate_.get()); + } + break; + } +--- a/chrome/browser/web_applications/components/web_app_file_handler_registration.cc ++++ b/chrome/browser/web_applications/components/web_app_file_handler_registration.cc +@@ -12,7 +12,7 @@ namespace web_app { + // This block defines stub implementations of OS specific methods for + // FileHandling. Currently, Windows, MacOSX and Desktop Linux (but not Chrome + // OS) have their own implementations. +-#if defined(OS_CHROMEOS) ++#if defined(OS_ANDROID) + bool ShouldRegisterFileHandlersWithOs() { + return false; + } +--- /dev/null ++++ b/chrome/browser/upgrade_detector/get_installed_version_android.cc +@@ -0,0 +1,33 @@ ++// Copyright 2020 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. ++ ++#include "chrome/browser/upgrade_detector/get_installed_version.h" ++ ++#include ++#include ++ ++#include "base/command_line.h" ++#include "base/logging.h" ++#include "base/process/launch.h" ++#include "base/strings/string_util.h" ++#include "chrome/common/chrome_switches.h" ++ ++// On Android, the Chrome binary may have been replaced by an update. Ask it to ++// report its version. ++InstalledAndCriticalVersion GetInstalledVersion() { ++ base::CommandLine command_line(*base::CommandLine::ForCurrentProcess()); ++ command_line.AppendSwitch(switches::kProductVersion); ++ base::Version installed_version; ++ std::string reply; ++ if (base::GetAppOutput(command_line, &reply)) { ++ installed_version = ++ base::Version(base::TrimWhitespaceASCII(reply, base::TRIM_ALL)); ++ } ++ // Failure may be a result of invoking a Chrome that predates the introduction ++ // of the --product-version switch in https://crrev.com/48795 (6.0.424.0). ++ DLOG_IF(ERROR, !installed_version.IsValid()) ++ << "Failed to get current file version"; ++ ++ return InstalledAndCriticalVersion(std::move(installed_version)); ++} +--- a/chrome/browser/extensions/api/developer_private/developer_private_api.cc ++++ b/chrome/browser/extensions/api/developer_private/developer_private_api.cc +@@ -1908,12 +1908,14 @@ ExtensionFunction::ResponseAction Develo + return RespondNow(Error(kNoOptionsPageForExtensionError)); + + content::WebContents* web_contents = GetSenderWebContents(); ++ + if (!web_contents) + return RespondNow(Error(kCouldNotFindWebContentsError)); + + ExtensionTabUtil::OpenOptionsPage( + extension, +- chrome::FindBrowserWithWebContents(web_contents)); ++ web_contents); ++ + return RespondNow(NoArguments()); + } + +--- a/chrome/browser/extensions/extension_tab_util.cc ++++ b/chrome/browser/extensions/extension_tab_util.cc +@@ -864,30 +864,28 @@ bool ExtensionTabUtil::OpenOptionsPageFr + // that's the only place it's running. + DCHECK(!profile->IsOffTheRecord() || IncognitoInfo::IsSplitMode(extension)); + Browser* browser = chrome::FindBrowserWithProfile(profile); ++ LOG(ERROR) << "Cannot open new tab here"; + if (!browser) + browser = Browser::Create(Browser::CreateParams(profile, true)); + if (!browser) + return false; +- return extensions::ExtensionTabUtil::OpenOptionsPage(extension, browser); ++ return false; + } + + bool ExtensionTabUtil::OpenOptionsPage(const Extension* extension, +- Browser* browser) { ++ content::WebContents* web_contents) { + if (!OptionsPageInfo::HasOptionsPage(extension)) + return false; + ++ LOG(WARNING) << "extension_tab_util.cc: OpenOptionsPage() entry"; ++ + // Force the options page to open in non-OTR window if the extension is not + // running in split mode, because it won't be able to save settings from OTR. + // This version of OpenOptionsPage() can be called from an OTR window via e.g. + // the action menu, since that's not initiated by the extension. +- std::unique_ptr displayer; +- if (browser->profile()->IsOffTheRecord() && +- !IncognitoInfo::IsSplitMode(extension)) { +- displayer.reset(new chrome::ScopedTabbedBrowserDisplayer( +- browser->profile()->GetOriginalProfile())); +- browser = displayer->browser(); +- } + ++ // Instead open in native browser, open a new tab through JNI bridge ++ // Incognito Mode not handled yet + GURL url_to_navigate; + bool open_in_tab = OptionsPageInfo::ShouldOpenInTab(extension); + if (open_in_tab) { +@@ -904,17 +902,14 @@ bool ExtensionTabUtil::OpenOptionsPage(c + url_to_navigate = url_to_navigate.ReplaceComponents(replacements); + } + +- NavigateParams params( +- GetSingletonTabNavigateParams(browser, url_to_navigate)); +- // We need to respect path differences because we don't want opening the +- // options page to close a page that might be open to extension content. +- // However, if the options page opens inside the chrome://extensions page, we +- // can override an existing page. +- // Note: ref behavior is to ignore. +- params.path_behavior = open_in_tab ? NavigateParams::RESPECT +- : NavigateParams::IGNORE_AND_NAVIGATE; +- params.url = url_to_navigate; +- ShowSingletonTabOverwritingNTP(browser, std::move(params)); ++ web_contents->OpenURL( ++ content::OpenURLParams( ++ url_to_navigate, content::Referrer(), ++ WindowOpenDisposition::NEW_FOREGROUND_TAB, ++ ui::PAGE_TRANSITION_LINK, false ++ )); ++ ++ LOG(WARNING) << "extension_tab_util.cc: return"; + return true; + } + +--- a/chrome/browser/extensions/extension_tab_util.h ++++ b/chrome/browser/extensions/extension_tab_util.h +@@ -236,7 +236,7 @@ class ExtensionTabUtil { + // Open the extension's options page. Returns true if an options page was + // successfully opened (though it may not necessarily *load*, e.g. if the + // URL does not exist). +- static bool OpenOptionsPage(const Extension* extension, Browser* browser); ++ static bool OpenOptionsPage(const Extension* extension, content::WebContents* web_contents); + + // Returns true if the given Browser can report tabs to extensions. + // Example of Browsers which don't support tabs include apps and devtools. +--- a/chrome/browser/extensions/extension_context_menu_model.cc ++++ b/chrome/browser/extensions/extension_context_menu_model.cc +@@ -327,7 +327,7 @@ void ExtensionContextMenuModel::ExecuteC + } + case OPTIONS: + DCHECK(OptionsPageInfo::HasOptionsPage(extension)); +- ExtensionTabUtil::OpenOptionsPage(extension, browser_); ++ ExtensionTabUtil::OpenOptionsPage(extension, GetActiveWebContents()); + break; + case TOGGLE_VISIBILITY: { + bool currently_visible = button_visibility_ == VISIBLE; diff --git a/patches/Unobtainium/kill-Auth.patch b/patches/Unobtainium/kill-Auth.patch index d91c983..49e1744 100644 --- a/patches/Unobtainium/kill-Auth.patch +++ b/patches/Unobtainium/kill-Auth.patch @@ -3,10 +3,9 @@ Date: Fri, 22 Jun 2018 17:06:15 +0200 Subject: kill Auth --- - chrome/android/java/src/org/chromium/chrome/browser/signin/SigninHelper.java | 22 ---- - components/signin/core/browser/android/java/src/org/chromium/components/signin/AccountIdProvider.java | 9 - - components/signin/core/browser/android/java/src/org/chromium/components/signin/SystemAccountManagerDelegate.java | 50 ---------- - 3 files changed, 5 insertions(+), 76 deletions(-) + chrome/android/java/src/org/chromium/chrome/browser/signin/SigninHelper.java | 22 ----- + components/signin/core/browser/android/java/src/org/chromium/components/signin/SystemAccountManagerDelegate.java | 42 ---------- + 2 files changed, 4 insertions(+), 60 deletions(-) --- a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninHelper.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninHelper.java @@ -21,7 +20,7 @@ Subject: kill Auth import org.chromium.base.ContextUtils; import org.chromium.base.Log; import org.chromium.base.task.AsyncTask; -@@ -60,23 +56,7 @@ public class SigninHelper { +@@ -61,23 +57,7 @@ public class SigninHelper { @Override public List getAccountChangeEvents( Context context, int index, String accountName) { @@ -46,44 +45,21 @@ Subject: kill Auth return new ArrayList<>(0); } } ---- a/components/signin/core/browser/android/java/src/org/chromium/components/signin/AccountIdProvider.java -+++ b/components/signin/core/browser/android/java/src/org/chromium/components/signin/AccountIdProvider.java -@@ -6,8 +6,6 @@ package org.chromium.components.signin; - - import androidx.annotation.VisibleForTesting; - --import com.google.android.gms.auth.GoogleAuthException; --import com.google.android.gms.auth.GoogleAuthUtil; - import com.google.android.gms.common.ConnectionResult; - import com.google.android.gms.common.GoogleApiAvailability; - -@@ -41,12 +39,7 @@ public class AccountIdProvider { - * @param accountName The email address of a Google account. - */ - public String getAccountId(String accountName) { -- try { -- return GoogleAuthUtil.getAccountId(ContextUtils.getApplicationContext(), accountName); -- } catch (IOException | GoogleAuthException ex) { -- Log.e("cr.AccountIdProvider", "AccountIdProvider.getAccountId", ex); -- return null; -- } -+ return null; - } - - /** --- a/components/signin/core/browser/android/java/src/org/chromium/components/signin/SystemAccountManagerDelegate.java +++ b/components/signin/core/browser/android/java/src/org/chromium/components/signin/SystemAccountManagerDelegate.java -@@ -24,9 +24,6 @@ import android.os.PatternMatcher; - import android.os.Process; - import android.os.SystemClock; +@@ -26,11 +26,6 @@ import android.os.SystemClock; + + import androidx.annotation.Nullable; -import com.google.android.gms.auth.GoogleAuthException; -import com.google.android.gms.auth.GoogleAuthUtil; -import com.google.android.gms.auth.GooglePlayServicesAvailabilityException; - import com.google.android.gms.common.ConnectionResult; - import com.google.android.gms.common.GoogleApiAvailability; +-import com.google.android.gms.common.ConnectionResult; +-import com.google.android.gms.common.GoogleApiAvailability; -@@ -116,48 +113,18 @@ public class SystemAccountManagerDelegat + import org.chromium.base.ApiCompatibilityUtils; + import org.chromium.base.Callback; +@@ -119,35 +114,15 @@ public class SystemAccountManagerDelegat // so don't report any accounts if Google Play Services are out of date. checkCanUseGooglePlayServices(); @@ -105,7 +81,7 @@ Subject: kill Auth @Override public String getAuthToken(Account account, String authTokenScope) throws AuthException { assert !ThreadUtils.runningOnUiThread(); - assert AccountManagerFacade.GOOGLE_ACCOUNT_TYPE.equals(account.type); + assert AccountUtils.GOOGLE_ACCOUNT_TYPE.equals(account.type); - try { - return GoogleAuthUtil.getTokenWithNotification( - ContextUtils.getApplicationContext(), account, authTokenScope, null); @@ -117,25 +93,12 @@ Subject: kill Auth - } catch (IOException ex) { - throw new AuthException(AuthException.TRANSIENT, ex); - } -+ return null; - } - - @Override -- public void invalidateAuthToken(String authToken) throws AuthException { -- try { -- GoogleAuthUtil.clearToken(ContextUtils.getApplicationContext(), authToken); -- } catch (GooglePlayServicesAvailabilityException ex) { -- throw new AuthException(AuthException.NONTRANSIENT, ex); -- } catch (GoogleAuthException ex) { -- throw new AuthException(AuthException.NONTRANSIENT, ex); -- } catch (IOException ex) { -- throw new AuthException(AuthException.TRANSIENT, ex); -- } -+ public void invalidateAuthToken(String authToken) { ++ throw new AuthException(AuthException.NONTRANSIENT, ++ "Error while getting token for scope '" + authTokenScope); } @Override -@@ -197,17 +164,6 @@ public class SystemAccountManagerDelegat +@@ -200,17 +175,6 @@ public class SystemAccountManagerDelegat @SuppressLint("MissingPermission") @Override public void createAddAccountIntent(Callback callback) { diff --git a/patches/Unobtainium/kill-GCM.patch b/patches/Unobtainium/kill-GCM.patch index 6a96bbc..bc281b3 100644 --- a/patches/Unobtainium/kill-GCM.patch +++ b/patches/Unobtainium/kill-GCM.patch @@ -3,28 +3,28 @@ Date: Fri, 22 Jun 2018 17:11:38 +0200 Subject: kill GCM --- - chrome/android/BUILD.gn | 1 - chrome/android/chrome_java_sources.gni | 6 - chrome/android/java/AndroidManifest.xml | 64 --- - chrome/android/java/src/org/chromium/chrome/browser/background_task_scheduler/ChromeBackgroundTaskFactory.java | 3 - chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetsLauncher.java | 56 -- - chrome/android/java/src/org/chromium/chrome/browser/services/gcm/GCMBackgroundTask.java | 1 - chrome/android/java/src/org/chromium/chrome/browser/services/gcm/InvalidationGcmUpstreamSender.java | 18 - components/background_task_scheduler/BUILD.gn | 1 - components/background_task_scheduler/android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskSchedulerGcmNetworkManager.java | 206 ---------- - components/gcm_driver/android/BUILD.gn | 1 - components/gcm_driver/instance_id/android/BUILD.gn | 1 - components/gcm_driver/instance_id/android/java/src/org/chromium/components/gcm_driver/instance_id/InstanceIDBridge.java | 52 -- - components/sync/android/BUILD.gn | 1 - third_party/cacheinvalidation/BUILD.gn | 6 - third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/external/client/contrib/MultiplexingGcmListener.java | 91 ---- - third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidNetworkChannel.java | 6 - 16 files changed, 15 insertions(+), 499 deletions(-) + chrome/android/BUILD.gn | 1 + chrome/android/chrome_java_sources.gni | 6 + chrome/android/java/AndroidManifest.xml | 64 --- + chrome/android/java/src/org/chromium/chrome/browser/background_task_scheduler/ChromeBackgroundTaskFactory.java | 3 + chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetsLauncher.java | 56 --- + chrome/android/java/src/org/chromium/chrome/browser/services/gcm/GCMBackgroundTask.java | 1 + chrome/android/java/src/org/chromium/chrome/browser/services/gcm/InvalidationGcmUpstreamSender.java | 18 + components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskGcmTaskService.java | 65 --- + components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskSchedulerGcmNetworkManager.java | 183 ---------- + components/gcm_driver/android/BUILD.gn | 1 + components/gcm_driver/instance_id/android/BUILD.gn | 1 + components/gcm_driver/instance_id/android/java/src/org/chromium/components/gcm_driver/instance_id/InstanceIDBridge.java | 52 -- + components/sync/android/BUILD.gn | 1 + third_party/cacheinvalidation/BUILD.gn | 6 + third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/external/client/contrib/MultiplexingGcmListener.java | 91 ---- + third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidNetworkChannel.java | 6 + 16 files changed, 20 insertions(+), 535 deletions(-) --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -358,7 +358,6 @@ android_library("chrome_java") { - "//third_party/android_deps:com_google_protobuf_protobuf_lite_java", +@@ -428,7 +428,6 @@ android_library("chrome_java") { + "//third_party/android_deps:com_google_protobuf_protobuf_javalite_java", "//third_party/android_deps:javax_inject_javax_inject_java", "//third_party/android_media:android_media_java", - "//third_party/android_sdk:android_gcm_java", @@ -41,8 +41,8 @@ Subject: kill GCM "java/src/org/chromium/chrome/browser/ChromeBackupAgent.java", "java/src/org/chromium/chrome/browser/ChromeBackupWatcher.java", "java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java", -@@ -1360,11 +1359,6 @@ chrome_java_sources = [ - "java/src/org/chromium/chrome/browser/services/AndroidEduAndChildAccountHelper.java", +@@ -1414,11 +1413,6 @@ chrome_java_sources = [ + "java/src/org/chromium/chrome/browser/services/AndroidChildAccountHelper.java", "java/src/org/chromium/chrome/browser/services/AndroidEduOwnerCheckCallback.java", "java/src/org/chromium/chrome/browser/services/GoogleServicesManager.java", - "java/src/org/chromium/chrome/browser/services/gcm/ChromeGcmListenerService.java", @@ -55,7 +55,7 @@ Subject: kill GCM "java/src/org/chromium/chrome/browser/settings/MainSettings.java", --- a/chrome/android/java/AndroidManifest.xml +++ b/chrome/android/java/AndroidManifest.xml -@@ -81,22 +81,17 @@ by a child template that "extends" this +@@ -82,22 +82,17 @@ by a child template that "extends" this @@ -78,7 +78,7 @@ Subject: kill GCM -@@ -1039,50 +1034,9 @@ by a child template that "extends" this +@@ -1040,50 +1035,9 @@ by a child template that "extends" this android:configChanges="orientation|keyboardHidden|keyboard|screenSize|mcc|mnc|screenLayout|smallestScreenSize" android:hardwareAccelerated="false" /> @@ -129,12 +129,12 @@ Subject: kill GCM - -- - @@ -143,7 +143,7 @@ Subject: kill GCM - - - - @@ -168,7 +168,7 @@ Subject: kill GCM import org.chromium.chrome.browser.webapps.WebApkUpdateTask; import org.chromium.components.background_task_scheduler.BackgroundTask; import org.chromium.components.background_task_scheduler.BackgroundTaskFactory; -@@ -48,8 +47,6 @@ public class ChromeBackgroundTaskFactory +@@ -59,8 +58,6 @@ public class ChromeBackgroundTaskFactory switch (taskId) { case TaskIds.OMAHA_JOB_ID: return new OmahaService(); @@ -326,247 +326,6 @@ Subject: kill GCM } private boolean isMessageWithinLimit(Bundle data) { ---- a/components/background_task_scheduler/BUILD.gn -+++ b/components/background_task_scheduler/BUILD.gn -@@ -32,7 +32,6 @@ if (is_android) { - "android/java/src/org/chromium/components/background_task_scheduler/BackgroundTask.java", - "android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskBroadcastReceiver.java", - "android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskFactory.java", -- "android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskGcmTaskService.java", - "android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskJobService.java", - "android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskScheduler.java", - "android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskSchedulerAlarmManager.java", ---- a/components/background_task_scheduler/android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskSchedulerGcmNetworkManager.java -+++ b/components/background_task_scheduler/android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskSchedulerGcmNetworkManager.java -@@ -10,14 +10,6 @@ import android.os.Bundle; - import androidx.annotation.NonNull; - import androidx.annotation.VisibleForTesting; - --import com.google.android.gms.common.ConnectionResult; --import com.google.android.gms.common.GoogleApiAvailability; --import com.google.android.gms.gcm.GcmNetworkManager; --import com.google.android.gms.gcm.OneoffTask; --import com.google.android.gms.gcm.PeriodicTask; --import com.google.android.gms.gcm.Task; --import com.google.android.gms.gcm.TaskParams; -- - import org.chromium.base.Log; - import org.chromium.base.ThreadUtils; - -@@ -43,212 +35,16 @@ class BackgroundTaskSchedulerGcmNetworkM - sClock = clock; - } - -- /** -- * Checks if a task expired, based on the current time of the service. -- * -- * @param taskParams parameters sent to the service, which contain the scheduling information -- * regarding expiration. -- * @param currentTimeMs the current time of the service. -- * @return true if the task expired and false otherwise. -- */ -- static boolean didTaskExpire(TaskParams taskParams, long currentTimeMs) { -- Bundle extras = taskParams.getExtras(); -- if (extras == null || !extras.containsKey(BACKGROUND_TASK_SCHEDULE_TIME_KEY)) { -- return false; -- } -- -- long scheduleTimeMs = extras.getLong(BACKGROUND_TASK_SCHEDULE_TIME_KEY); -- if (extras.containsKey(BACKGROUND_TASK_END_TIME_KEY)) { -- long endTimeMs = -- extras.getLong(BackgroundTaskSchedulerDelegate.BACKGROUND_TASK_END_TIME_KEY); -- return TaskInfo.OneOffInfo.getExpirationStatus( -- scheduleTimeMs, endTimeMs, currentTimeMs); -- } else { -- long intervalTimeMs = extras.getLong(BACKGROUND_TASK_INTERVAL_TIME_KEY); -- -- // If flex is never set, it is given a default value of 10% of the period time, as -- // per the GcmNetworkManager behaviour. This default value is set in -- // https://developers.google.com/android/reference/com/google/android/gms/gcm/PeriodicTask. -- double defaultFlexAsFractionOfInterval = 0.1f; -- -- long flexTimeMs = extras.getLong(BACKGROUND_TASK_FLEX_TIME_KEY, -- /*defaultValue=*/(long) (defaultFlexAsFractionOfInterval * intervalTimeMs)); -- -- return TaskInfo.PeriodicInfo.getExpirationStatus( -- scheduleTimeMs, intervalTimeMs, flexTimeMs, currentTimeMs); -- } -- } -- -- /** -- * Retrieves the {@link TaskParameters} from the {@link TaskParams}, which are passed as -- * one of the keys. Only values valid for {@link android.os.BaseBundle} are supported, and other -- * values are stripped at the time when the task is scheduled. -- * -- * @param taskParams the {@link TaskParams} to extract the {@link TaskParameters} from. -- * @return the {@link TaskParameters} for the current job. -- */ -- static TaskParameters getTaskParametersFromTaskParams(@NonNull TaskParams taskParams) { -- int taskId; -- try { -- taskId = Integer.parseInt(taskParams.getTag()); -- } catch (NumberFormatException e) { -- Log.e(TAG, "Cound not parse task ID from task tag: " + taskParams.getTag()); -- return null; -- } -- -- TaskParameters.Builder builder = TaskParameters.create(taskId); -- -- Bundle extras = taskParams.getExtras(); -- Bundle taskExtras = extras.getBundle(BACKGROUND_TASK_EXTRAS_KEY); -- builder.addExtras(taskExtras); -- -- return builder.build(); -- } -- -- @VisibleForTesting -- static Task createTaskFromTaskInfo(@NonNull TaskInfo taskInfo) { -- Bundle taskExtras = new Bundle(); -- taskExtras.putBundle(BACKGROUND_TASK_EXTRAS_KEY, taskInfo.getExtras()); -- -- TaskBuilderVisitor taskBuilderVisitor = new TaskBuilderVisitor(taskExtras); -- taskInfo.getTimingInfo().accept(taskBuilderVisitor); -- Task.Builder builder = taskBuilderVisitor.getBuilder(); -- -- builder.setPersisted(taskInfo.isPersisted()) -- .setRequiredNetwork(getGcmNetworkManagerNetworkTypeFromTypeFromTaskNetworkType( -- taskInfo.getRequiredNetworkType())) -- .setRequiresCharging(taskInfo.requiresCharging()) -- .setService(BackgroundTaskGcmTaskService.class) -- .setTag(taskIdToTaskTag(taskInfo.getTaskId())) -- .setUpdateCurrent(taskInfo.shouldUpdateCurrent()); -- -- return builder.build(); -- } -- -- private static class TaskBuilderVisitor implements TaskInfo.TimingInfoVisitor { -- private Task.Builder mBuilder; -- private final Bundle mTaskExtras; -- -- TaskBuilderVisitor(Bundle taskExtras) { -- mTaskExtras = taskExtras; -- } -- -- // Only valid after a TimingInfo object was visited. -- Task.Builder getBuilder() { -- return mBuilder; -- } -- -- @Override -- public void visit(TaskInfo.OneOffInfo oneOffInfo) { -- if (oneOffInfo.expiresAfterWindowEndTime()) { -- mTaskExtras.putLong(BACKGROUND_TASK_SCHEDULE_TIME_KEY, sClock.currentTimeMillis()); -- mTaskExtras.putLong(BACKGROUND_TASK_END_TIME_KEY, oneOffInfo.getWindowEndTimeMs()); -- } -- -- OneoffTask.Builder builder = new OneoffTask.Builder(); -- long windowStartSeconds = oneOffInfo.hasWindowStartTimeConstraint() -- ? TimeUnit.MILLISECONDS.toSeconds(oneOffInfo.getWindowStartTimeMs()) -- : 0; -- long windowEndTimeMs = oneOffInfo.getWindowEndTimeMs(); -- if (oneOffInfo.expiresAfterWindowEndTime()) { -- windowEndTimeMs += DEADLINE_DELTA_MS; -- } -- builder.setExecutionWindow( -- windowStartSeconds, TimeUnit.MILLISECONDS.toSeconds(windowEndTimeMs)); -- builder.setExtras(mTaskExtras); -- mBuilder = builder; -- } -- -- @Override -- public void visit(TaskInfo.PeriodicInfo periodicInfo) { -- if (periodicInfo.expiresAfterWindowEndTime()) { -- mTaskExtras.putLong(BACKGROUND_TASK_SCHEDULE_TIME_KEY, sClock.currentTimeMillis()); -- mTaskExtras.putLong( -- BACKGROUND_TASK_INTERVAL_TIME_KEY, periodicInfo.getIntervalMs()); -- if (periodicInfo.hasFlex()) { -- mTaskExtras.putLong(BACKGROUND_TASK_FLEX_TIME_KEY, periodicInfo.getFlexMs()); -- } -- } -- -- PeriodicTask.Builder builder = new PeriodicTask.Builder(); -- builder.setPeriod(TimeUnit.MILLISECONDS.toSeconds(periodicInfo.getIntervalMs())); -- if (periodicInfo.hasFlex()) { -- builder.setFlex(TimeUnit.MILLISECONDS.toSeconds(periodicInfo.getFlexMs())); -- } -- builder.setExtras(mTaskExtras); -- mBuilder = builder; -- } -- -- @Override -- public void visit(TaskInfo.ExactInfo exactInfo) { -- throw new RuntimeException("Exact tasks should not be scheduled with " -- + "GcmNetworkManager."); -- } -- } -- -- private static int getGcmNetworkManagerNetworkTypeFromTypeFromTaskNetworkType( -- @TaskInfo.NetworkType int networkType) { -- switch (networkType) { -- // This is correct: GcmNM ANY means no network is guaranteed. -- case TaskInfo.NetworkType.NONE: -- return Task.NETWORK_STATE_ANY; -- case TaskInfo.NetworkType.ANY: -- return Task.NETWORK_STATE_CONNECTED; -- case TaskInfo.NetworkType.UNMETERED: -- return Task.NETWORK_STATE_UNMETERED; -- default: -- assert false; -- } -- return Task.NETWORK_STATE_ANY; -- } -- - @Override - public boolean schedule(Context context, @NonNull TaskInfo taskInfo) { - ThreadUtils.assertOnUiThread(); - -- GcmNetworkManager gcmNetworkManager = getGcmNetworkManager(context); -- if (gcmNetworkManager == null) { -- Log.e(TAG, "GcmNetworkManager is not available."); -- return false; -- } -- -- try { -- Task task = createTaskFromTaskInfo(taskInfo); -- gcmNetworkManager.schedule(task); -- } catch (IllegalArgumentException e) { -- String gcmErrorMessage = e.getMessage() == null ? "null." : e.getMessage(); -- Log.e(TAG, -- "GcmNetworkManager failed to schedule task, gcm message: " + gcmErrorMessage); -- return false; -- } -- -- return true; -+ return false; - } - - @Override - public void cancel(Context context, int taskId) { - ThreadUtils.assertOnUiThread(); -- -- GcmNetworkManager gcmNetworkManager = getGcmNetworkManager(context); -- if (gcmNetworkManager == null) { -- Log.e(TAG, "GcmNetworkManager is not available."); -- return; -- } -- -- try { -- gcmNetworkManager.cancelTask( -- taskIdToTaskTag(taskId), BackgroundTaskGcmTaskService.class); -- } catch (IllegalArgumentException e) { -- Log.e(TAG, "GcmNetworkManager failed to cancel task."); -- } -- } -- -- private GcmNetworkManager getGcmNetworkManager(Context context) { -- if (GoogleApiAvailability.getInstance().isGooglePlayServicesAvailable(context) -- == ConnectionResult.SUCCESS) { -- return GcmNetworkManager.getInstance(context); -- } -- return null; - } - - private static String taskIdToTaskTag(int taskId) { --- a/components/gcm_driver/android/BUILD.gn +++ b/components/gcm_driver/android/BUILD.gn @@ -13,7 +13,6 @@ android_library("gcm_driver_java") { @@ -872,3 +631,322 @@ Subject: kill GCM + return null; } } +--- a/components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskGcmTaskService.java ++++ b/components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskGcmTaskService.java +@@ -8,10 +8,6 @@ import android.os.Build; + + import androidx.annotation.VisibleForTesting; + +-import com.google.android.gms.gcm.GcmNetworkManager; +-import com.google.android.gms.gcm.GcmTaskService; +-import com.google.android.gms.gcm.TaskParams; +- + import org.chromium.base.ContextUtils; + import org.chromium.base.Log; + import org.chromium.base.ThreadUtils; +@@ -23,7 +19,7 @@ import java.util.concurrent.TimeUnit; + import java.util.concurrent.atomic.AtomicBoolean; + + /** Delegates calls out to various tasks that need to run in the background. */ +-public class BackgroundTaskGcmTaskService extends GcmTaskService { ++public class BackgroundTaskGcmTaskService { + private static final String TAG = "BkgrdTaskGcmTS"; + + private BackgroundTaskSchedulerGcmNetworkManager.Clock mClock = System::currentTimeMillis; +@@ -92,65 +88,6 @@ public class BackgroundTaskGcmTaskServic + } + } + +- @Override +- public int onRunTask(TaskParams params) { +- final TaskParameters taskParams = +- BackgroundTaskSchedulerGcmNetworkManager.getTaskParametersFromTaskParams(params); +- +- final BackgroundTask backgroundTask = +- BackgroundTaskSchedulerFactoryInternal.getBackgroundTaskFromTaskId( +- taskParams.getTaskId()); +- if (backgroundTask == null) { +- Log.w(TAG, "Failed to start task. Could not instantiate BackgroundTask class."); +- // Cancel task if the BackgroundTask class is not found anymore. We assume this means +- // that the task has been deprecated. +- BackgroundTaskSchedulerFactoryInternal.getScheduler().cancel( +- ContextUtils.getApplicationContext(), taskParams.getTaskId()); +- return GcmNetworkManager.RESULT_FAILURE; +- } +- +- if (BackgroundTaskSchedulerGcmNetworkManager.didTaskExpire( +- params, mClock.currentTimeMillis())) { +- BackgroundTaskSchedulerUma.getInstance().reportTaskExpired(taskParams.getTaskId()); +- return GcmNetworkManager.RESULT_FAILURE; +- } +- +- final Waiter waiter = new Waiter(Waiter.MAX_TIMEOUT_SECONDS); +- +- final AtomicBoolean taskNeedsBackgroundProcessing = new AtomicBoolean(); +- ThreadUtils.runOnUiThreadBlocking(new Runnable() { +- @Override +- public void run() { +- BackgroundTaskSchedulerUma.getInstance().reportTaskStarted(taskParams.getTaskId()); +- taskNeedsBackgroundProcessing.set( +- backgroundTask.onStartTask(ContextUtils.getApplicationContext(), taskParams, +- new TaskFinishedCallbackGcmTaskService(waiter))); +- } +- }); +- +- if (!taskNeedsBackgroundProcessing.get()) return GcmNetworkManager.RESULT_SUCCESS; +- +- waiter.startWaiting(); +- +- if (waiter.isRescheduleNeeded()) return GcmNetworkManager.RESULT_RESCHEDULE; +- if (!waiter.hasTaskTimedOut()) return GcmNetworkManager.RESULT_SUCCESS; +- +- final AtomicBoolean taskNeedsRescheduling = new AtomicBoolean(); +- ThreadUtils.runOnUiThreadBlocking(new Runnable() { +- @Override +- public void run() { +- BackgroundTaskSchedulerUma.getInstance().reportTaskStopped(taskParams.getTaskId()); +- taskNeedsRescheduling.set(backgroundTask.onStopTask( +- ContextUtils.getApplicationContext(), taskParams)); +- } +- }); +- +- if (taskNeedsRescheduling.get()) return GcmNetworkManager.RESULT_RESCHEDULE; +- +- return GcmNetworkManager.RESULT_SUCCESS; +- } +- +- @Override + public void onInitializeTasks() { + // Ignore the event on OSs supporting JobScheduler. + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) return; +--- a/components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskSchedulerGcmNetworkManager.java ++++ b/components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskSchedulerGcmNetworkManager.java +@@ -10,14 +10,6 @@ import android.os.Bundle; + import androidx.annotation.NonNull; + import androidx.annotation.VisibleForTesting; + +-import com.google.android.gms.common.ConnectionResult; +-import com.google.android.gms.common.GoogleApiAvailability; +-import com.google.android.gms.gcm.GcmNetworkManager; +-import com.google.android.gms.gcm.OneoffTask; +-import com.google.android.gms.gcm.PeriodicTask; +-import com.google.android.gms.gcm.Task; +-import com.google.android.gms.gcm.TaskParams; +- + import org.chromium.base.Log; + import org.chromium.base.ThreadUtils; + import org.chromium.components.background_task_scheduler.TaskInfo; +@@ -45,140 +37,19 @@ class BackgroundTaskSchedulerGcmNetworkM + sClock = clock; + } + +- /** +- * Checks if a task expired, based on the current time of the service. +- * +- * @param taskParams parameters sent to the service, which contain the scheduling information +- * regarding expiration. +- * @param currentTimeMs the current time of the service. +- * @return true if the task expired and false otherwise. +- */ +- static boolean didTaskExpire(TaskParams taskParams, long currentTimeMs) { +- Bundle extras = taskParams.getExtras(); +- if (extras == null || !extras.containsKey(BACKGROUND_TASK_SCHEDULE_TIME_KEY)) { +- return false; +- } +- +- long scheduleTimeMs = extras.getLong(BACKGROUND_TASK_SCHEDULE_TIME_KEY); +- if (extras.containsKey(BACKGROUND_TASK_END_TIME_KEY)) { +- long endTimeMs = +- extras.getLong(BackgroundTaskSchedulerDelegate.BACKGROUND_TASK_END_TIME_KEY); +- return TaskInfo.OneOffInfo.getExpirationStatus( +- scheduleTimeMs, endTimeMs, currentTimeMs); +- } else { +- long intervalTimeMs = extras.getLong(BACKGROUND_TASK_INTERVAL_TIME_KEY); +- +- // If flex is never set, it is given a default value of 10% of the period time, as +- // per the GcmNetworkManager behaviour. This default value is set in +- // https://developers.google.com/android/reference/com/google/android/gms/gcm/PeriodicTask. +- double defaultFlexAsFractionOfInterval = 0.1f; +- +- long flexTimeMs = extras.getLong(BACKGROUND_TASK_FLEX_TIME_KEY, +- /*defaultValue=*/(long) (defaultFlexAsFractionOfInterval * intervalTimeMs)); +- +- return TaskInfo.PeriodicInfo.getExpirationStatus( +- scheduleTimeMs, intervalTimeMs, flexTimeMs, currentTimeMs); +- } +- } +- +- /** +- * Retrieves the {@link TaskParameters} from the {@link TaskParams}, which are passed as +- * one of the keys. Only values valid for {@link android.os.BaseBundle} are supported, and other +- * values are stripped at the time when the task is scheduled. +- * +- * @param taskParams the {@link TaskParams} to extract the {@link TaskParameters} from. +- * @return the {@link TaskParameters} for the current job. +- */ +- static TaskParameters getTaskParametersFromTaskParams(@NonNull TaskParams taskParams) { +- int taskId; +- try { +- taskId = Integer.parseInt(taskParams.getTag()); +- } catch (NumberFormatException e) { +- Log.e(TAG, "Cound not parse task ID from task tag: " + taskParams.getTag()); +- return null; +- } +- +- TaskParameters.Builder builder = TaskParameters.create(taskId); +- +- Bundle extras = taskParams.getExtras(); +- Bundle taskExtras = extras.getBundle(BACKGROUND_TASK_EXTRAS_KEY); +- builder.addExtras(taskExtras); +- +- return builder.build(); +- } +- +- @VisibleForTesting +- static Task createTaskFromTaskInfo(@NonNull TaskInfo taskInfo) { +- Bundle taskExtras = new Bundle(); +- taskExtras.putBundle(BACKGROUND_TASK_EXTRAS_KEY, taskInfo.getExtras()); +- +- TaskBuilderVisitor taskBuilderVisitor = new TaskBuilderVisitor(taskExtras); +- taskInfo.getTimingInfo().accept(taskBuilderVisitor); +- Task.Builder builder = taskBuilderVisitor.getBuilder(); +- +- builder.setPersisted(taskInfo.isPersisted()) +- .setRequiredNetwork(getGcmNetworkManagerNetworkTypeFromTypeFromTaskNetworkType( +- taskInfo.getRequiredNetworkType())) +- .setRequiresCharging(taskInfo.requiresCharging()) +- .setService(BackgroundTaskGcmTaskService.class) +- .setTag(taskIdToTaskTag(taskInfo.getTaskId())) +- .setUpdateCurrent(taskInfo.shouldUpdateCurrent()); +- +- return builder.build(); +- } +- + private static class TaskBuilderVisitor implements TaskInfo.TimingInfoVisitor { +- private Task.Builder mBuilder; + private final Bundle mTaskExtras; + + TaskBuilderVisitor(Bundle taskExtras) { + mTaskExtras = taskExtras; + } + +- // Only valid after a TimingInfo object was visited. +- Task.Builder getBuilder() { +- return mBuilder; +- } +- + @Override + public void visit(TaskInfo.OneOffInfo oneOffInfo) { +- if (oneOffInfo.expiresAfterWindowEndTime()) { +- mTaskExtras.putLong(BACKGROUND_TASK_SCHEDULE_TIME_KEY, sClock.currentTimeMillis()); +- mTaskExtras.putLong(BACKGROUND_TASK_END_TIME_KEY, oneOffInfo.getWindowEndTimeMs()); +- } +- +- OneoffTask.Builder builder = new OneoffTask.Builder(); +- long windowStartSeconds = oneOffInfo.hasWindowStartTimeConstraint() +- ? TimeUnit.MILLISECONDS.toSeconds(oneOffInfo.getWindowStartTimeMs()) +- : 0; +- long windowEndTimeMs = oneOffInfo.getWindowEndTimeMs(); +- if (oneOffInfo.expiresAfterWindowEndTime()) { +- windowEndTimeMs += DEADLINE_DELTA_MS; +- } +- builder.setExecutionWindow( +- windowStartSeconds, TimeUnit.MILLISECONDS.toSeconds(windowEndTimeMs)); +- builder.setExtras(mTaskExtras); +- mBuilder = builder; + } + + @Override + public void visit(TaskInfo.PeriodicInfo periodicInfo) { +- if (periodicInfo.expiresAfterWindowEndTime()) { +- mTaskExtras.putLong(BACKGROUND_TASK_SCHEDULE_TIME_KEY, sClock.currentTimeMillis()); +- mTaskExtras.putLong( +- BACKGROUND_TASK_INTERVAL_TIME_KEY, periodicInfo.getIntervalMs()); +- if (periodicInfo.hasFlex()) { +- mTaskExtras.putLong(BACKGROUND_TASK_FLEX_TIME_KEY, periodicInfo.getFlexMs()); +- } +- } +- +- PeriodicTask.Builder builder = new PeriodicTask.Builder(); +- builder.setPeriod(TimeUnit.MILLISECONDS.toSeconds(periodicInfo.getIntervalMs())); +- if (periodicInfo.hasFlex()) { +- builder.setFlex(TimeUnit.MILLISECONDS.toSeconds(periodicInfo.getFlexMs())); +- } +- builder.setExtras(mTaskExtras); +- mBuilder = builder; + } + + @Override +@@ -190,67 +61,23 @@ class BackgroundTaskSchedulerGcmNetworkM + + private static int getGcmNetworkManagerNetworkTypeFromTypeFromTaskNetworkType( + @TaskInfo.NetworkType int networkType) { +- switch (networkType) { +- // This is correct: GcmNM ANY means no network is guaranteed. +- case TaskInfo.NetworkType.NONE: +- return Task.NETWORK_STATE_ANY; +- case TaskInfo.NetworkType.ANY: +- return Task.NETWORK_STATE_CONNECTED; +- case TaskInfo.NetworkType.UNMETERED: +- return Task.NETWORK_STATE_UNMETERED; +- default: +- assert false; +- } +- return Task.NETWORK_STATE_ANY; ++ return 2; //Task.NETWORK_STATE_ANY + } + + @Override + public boolean schedule(Context context, @NonNull TaskInfo taskInfo) { + ThreadUtils.assertOnUiThread(); + +- GcmNetworkManager gcmNetworkManager = getGcmNetworkManager(context); +- if (gcmNetworkManager == null) { +- Log.e(TAG, "GcmNetworkManager is not available."); +- return false; +- } +- +- try { +- Task task = createTaskFromTaskInfo(taskInfo); +- gcmNetworkManager.schedule(task); +- } catch (IllegalArgumentException e) { +- String gcmErrorMessage = e.getMessage() == null ? "null." : e.getMessage(); +- Log.e(TAG, +- "GcmNetworkManager failed to schedule task, gcm message: " + gcmErrorMessage); +- return false; +- } +- +- return true; ++ Log.e(TAG, "GcmNetworkManager is not available."); ++ return false; + } + + @Override + public void cancel(Context context, int taskId) { + ThreadUtils.assertOnUiThread(); + +- GcmNetworkManager gcmNetworkManager = getGcmNetworkManager(context); +- if (gcmNetworkManager == null) { +- Log.e(TAG, "GcmNetworkManager is not available."); +- return; +- } +- +- try { +- gcmNetworkManager.cancelTask( +- taskIdToTaskTag(taskId), BackgroundTaskGcmTaskService.class); +- } catch (IllegalArgumentException e) { +- Log.e(TAG, "GcmNetworkManager failed to cancel task."); +- } +- } +- +- private GcmNetworkManager getGcmNetworkManager(Context context) { +- if (GoogleApiAvailability.getInstance().isGooglePlayServicesAvailable(context) +- == ConnectionResult.SUCCESS) { +- return GcmNetworkManager.getInstance(context); +- } +- return null; ++ Log.e(TAG, "GcmNetworkManager is not available."); ++ return; + } + + private static String taskIdToTaskTag(int taskId) { diff --git a/patches/Unobtainium/kill-TOS-and-metrics-opt-out.patch b/patches/Unobtainium/kill-TOS-and-metrics-opt-out.patch index 8d3a7f4..5805e69 100644 --- a/patches/Unobtainium/kill-TOS-and-metrics-opt-out.patch +++ b/patches/Unobtainium/kill-TOS-and-metrics-opt-out.patch @@ -20,7 +20,7 @@ Subject: kill TOS and metrics opt-out android:id="@+id/send_report_checkbox" --- a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivityBase.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivityBase.java -@@ -38,7 +38,7 @@ public abstract class FirstRunActivityBa +@@ -36,7 +36,7 @@ public abstract class FirstRunActivityBa static final String SHOW_SEARCH_ENGINE_PAGE = "ShowSearchEnginePage"; static final String SHOW_SIGNIN_PAGE = "ShowSignIn"; diff --git a/patches/Unobtainium/kill-Translate.patch b/patches/Unobtainium/kill-Translate.patch index 1ba6588..9e1bad3 100644 --- a/patches/Unobtainium/kill-Translate.patch +++ b/patches/Unobtainium/kill-Translate.patch @@ -3,13 +3,12 @@ Date: Fri, 22 Jun 2018 17:16:43 +0200 Subject: kill Translate --- - .../src/org/chromium/chrome/browser/firstrun/FirstRunActivity.java | 4 ++++ + chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivity.java | 4 ++++ 1 file changed, 4 insertions(+) -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivity.java -@@ -25,6 +25,8 @@ import org.chromium.chrome.browser.datareduction.DataReductionProxyUma; +@@ -25,6 +25,8 @@ import org.chromium.chrome.browser.datar import org.chromium.chrome.browser.metrics.UmaUtils; import org.chromium.chrome.browser.net.spdyproxy.DataReductionProxySettings; import org.chromium.chrome.browser.search_engines.TemplateUrlServiceFactory; @@ -18,7 +17,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR import org.chromium.chrome.browser.searchwidget.SearchWidgetProvider; import org.chromium.ui.base.LocalizationUtils; -@@ -138,6 +140,8 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa +@@ -126,6 +128,8 @@ public class FirstRunActivity extends Fi if (mPostNativePageSequenceCreated) return; mFirstRunFlowSequencer.onNativeInitialized(mFreProperties); diff --git a/patches/Unobtainium/kill-Vision.patch b/patches/Unobtainium/kill-Vision.patch index 80a2116..f8e26cb 100644 --- a/patches/Unobtainium/kill-Vision.patch +++ b/patches/Unobtainium/kill-Vision.patch @@ -4,11 +4,11 @@ Subject: kill Vision Barcode, face and text detection APIs --- - services/shape_detection/BUILD.gn | 6 ---- - services/shape_detection/android/java/src/org/chromium/shape_detection/BitmapUtils.java | 12 -------- - services/shape_detection/android/java/src/org/chromium/shape_detection/FaceDetectionProviderImpl.java | 15 +--------- - services/shape_detection/android/java/src/org/chromium/shape_detection/InterfaceRegistrar.java | 13 -------- - 4 files changed, 2 insertions(+), 44 deletions(-) + services/shape_detection/BUILD.gn | 6 -- + services/shape_detection/android/java/src/org/chromium/shape_detection/BitmapUtils.java | 12 ---- + services/shape_detection/android/java/src/org/chromium/shape_detection/FaceDetectionProviderImpl.java | 15 ------ + services/shape_detection/android/java/src/org/chromium/shape_detection/InterfaceRegistrar.java | 25 ---------- + 4 files changed, 2 insertions(+), 56 deletions(-) --- a/services/shape_detection/BUILD.gn +++ b/services/shape_detection/BUILD.gn @@ -96,14 +96,20 @@ Barcode, face and text detection APIs @JNINamespace("shape_detection") class InterfaceRegistrar { -@@ -20,23 +17,13 @@ class InterfaceRegistrar { +@@ -20,35 +17,13 @@ class InterfaceRegistrar { @CalledByNative static void bindBarcodeDetectionProvider(int nativeHandle) { +- // Immediately wrap |nativeHandle| as it cannot be allowed to leak. +- MessagePipeHandle handle = messagePipeHandleFromNative(nativeHandle); +- - BarcodeDetectionProvider impl = BarcodeDetectionProviderImpl.create(); -- if (impl != null) { -- BarcodeDetectionProvider.MANAGER.bind(impl, messagePipeHandleFromNative(nativeHandle)); +- if (impl == null) { +- handle.close(); +- return; - } +- +- BarcodeDetectionProvider.MANAGER.bind(impl, handle); } @CalledByNative @@ -114,9 +120,15 @@ Barcode, face and text detection APIs @CalledByNative static void bindTextDetection(int nativeHandle) { +- // Immediately wrap |nativeHandle| as it cannot be allowed to leak. +- MessagePipeHandle handle = messagePipeHandleFromNative(nativeHandle); +- - TextDetection impl = TextDetectionImpl.create(); -- if (impl != null) { -- TextDetection.MANAGER.bind(impl, messagePipeHandleFromNative(nativeHandle)); +- if (impl == null) { +- handle.close(); +- return; - } +- +- TextDetection.MANAGER.bind(impl, handle); } } diff --git a/patches/Vanadium/0020-disable-media-router-media-remoting-by-default.patch b/patches/Vanadium/0020-disable-media-router-media-remoting-by-default.patch index 2eca7a2..75aa8c5 100644 --- a/patches/Vanadium/0020-disable-media-router-media-remoting-by-default.patch +++ b/patches/Vanadium/0020-disable-media-router-media-remoting-by-default.patch @@ -9,7 +9,7 @@ Subject: [PATCH 20/30] disable media router media remoting by default --- a/chrome/browser/profiles/profile.cc +++ b/chrome/browser/profiles/profile.cc -@@ -233,7 +233,7 @@ void Profile::RegisterProfilePrefs(user_ +@@ -268,7 +268,7 @@ void Profile::RegisterProfilePrefs(user_ prefs::kMediaRouterFirstRunFlowAcknowledged, false, user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); diff --git a/patches/Vanadium/0021-disable-media-router-by-default.patch b/patches/Vanadium/0021-disable-media-router-by-default.patch index 31e0fa9..fecf370 100644 --- a/patches/Vanadium/0021-disable-media-router-by-default.patch +++ b/patches/Vanadium/0021-disable-media-router-by-default.patch @@ -10,7 +10,7 @@ Subject: [PATCH 21/30] disable media router by default --- a/chrome/browser/media/router/media_router_feature.cc +++ b/chrome/browser/media/router/media_router_feature.cc -@@ -51,17 +51,16 @@ const PrefService::Preference* GetMediaR +@@ -50,17 +50,16 @@ const PrefService::Preference* GetMediaR bool MediaRouterEnabled(content::BrowserContext* context) { #if defined(OS_ANDROID) || BUILDFLAG(ENABLE_EXTENSIONS) @@ -38,7 +38,7 @@ Subject: [PATCH 21/30] disable media router by default #endif // defined(OS_ANDROID) || BUILDFLAG(ENABLE_EXTENSIONS) --- a/chrome/browser/profiles/profile_impl.cc +++ b/chrome/browser/profiles/profile_impl.cc -@@ -402,7 +402,7 @@ void ProfileImpl::RegisterProfilePrefs( +@@ -403,7 +403,7 @@ void ProfileImpl::RegisterProfilePrefs( registry->RegisterStringPref( prefs::kPrintPreviewDefaultDestinationSelectionRules, std::string()); registry->RegisterBooleanPref(prefs::kForceEphemeralProfiles, false); diff --git a/patches/debug-fix.patch b/patches/debug-fix.patch index 1d08357..1b3bdd6 100644 --- a/patches/debug-fix.patch +++ b/patches/debug-fix.patch @@ -1,48 +1,26 @@ +From: Wengling Chen +Date: Tue, 26 May 2020 22:31:34 -0400 +Subject: Remove DCHECK and other lines causing Debug builds to fail + --- build/android/gyp/compile_java.py | 2 - build/config/compiler/BUILD.gn | 7 + build/config/compiler/BUILD.gn | 7 -- cc/trees/layer_tree_host_impl.cc | 3 - chrome/browser/BUILD.gn | 2 - chrome/browser/content_settings/host_content_settings_map_factory.cc | 1 - chrome/browser/extensions/extension_system_factory.cc | 3 - chrome/browser/prefs/browser_prefs.cc | 15 - - chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc | 9 - chrome/browser/profiles/profile.cc | 4 - chrome/browser/profiles/profile.h | 2 - chrome/browser/resource_coordinator/resource_coordinator_parts.h | 4 - chrome/browser/supervised_user/supervised_user_service_factory.cc | 1 - chrome/browser/sync/profile_sync_service_factory.cc | 2 - chrome/browser/ui/BUILD.gn | 12 - - chrome/browser/ui/browser_ui_prefs.cc | 2 - chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc | 18 - - chrome/browser/ui/webui/history/foreign_session_handler.cc | 1 + chrome/browser/extensions/api/developer_private/developer_private_api.cc | 4 - + chrome/browser/extensions/extension_context_menu_model.cc | 2 + chrome/browser/extensions/extension_tab_util.cc | 35 ++++------ + chrome/browser/extensions/extension_tab_util.h | 2 chrome/browser/ui/webui/settings/people_handler.cc | 1 - chrome/browser/ui/webui/settings/printing_handler.cc | 2 - chrome/browser/ui/webui/settings/system_handler.cc | 1 - chrome/browser/ui/webui/signin/inline_login_handler_impl.cc | 34 -- - chrome/browser/web_applications/web_app_provider_factory.cc | 1 - chrome/common/importer/firefox_importer_utils.cc | 4 components/omnibox/browser/autocomplete_controller.cc | 3 - components/omnibox/browser/autocomplete_match.cc | 7 - components/omnibox/browser/autocomplete_result.cc | 7 + components/omnibox/browser/autocomplete_match.cc | 10 -- + components/omnibox/browser/autocomplete_result.cc | 7 -- components/omnibox/browser/shortcuts_backend.cc | 3 components/policy/core/browser/configuration_policy_handler.cc | 1 - components/policy/resources/policy_templates.json | 8 - components/search/search.cc | 2 - components/signin/internal/identity_manager/primary_account_manager.cc | 12 - + components/signin/internal/identity_manager/primary_account_manager.cc | 12 --- components/signin/internal/identity_manager/profile_oauth2_token_service_builder.cc | 1 - content/browser/BUILD.gn | 6 content/common/input/input_event_stream_validator.cc | 3 - content/public/browser/content_browser_client.cc | 2 - content/public/browser/content_browser_client.h | 2 - extensions/renderer/bindings/api_binding_util.cc | 2 services/network/network_context.cc | 1 - third_party/skia/src/gpu/ops/GrSimpleMeshDrawOpHelper.cpp | 1 - ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java | 116 +++++++++- - ui/shell_dialogs/select_file_dialog_android.cc | 8 - ui/views/painter.cc | 1 - ui/webui/resources/webui_resources.grd | 6 - 43 files changed, 179 insertions(+), 144 deletions(-) + 17 files changed, 23 insertions(+), 74 deletions(-) --- a/components/signin/internal/identity_manager/primary_account_manager.cc +++ b/components/signin/internal/identity_manager/primary_account_manager.cc @@ -67,7 +45,7 @@ --- a/build/config/compiler/BUILD.gn +++ b/build/config/compiler/BUILD.gn -@@ -230,7 +230,7 @@ config("compiler") { +@@ -231,7 +231,7 @@ config("compiler") { cflags_cc = [] cflags_objc = [] cflags_objcc = [] @@ -76,7 +54,7 @@ defines = [] configs = [] -@@ -1955,8 +1955,6 @@ if (is_win) { +@@ -1934,8 +1934,6 @@ if (is_win) { # Put data and code in their own sections, so that unused symbols # can be removed at link time with --gc-sections. @@ -85,7 +63,7 @@ ] common_optimize_on_ldflags += [ -@@ -1964,7 +1962,6 @@ if (is_win) { +@@ -1943,7 +1941,6 @@ if (is_win) { # See http://lwn.net/Articles/192624/ . # -O2 enables string tail merge optimization in gold and lld. "-Wl,-O2", @@ -93,7 +71,7 @@ ] } } -@@ -2366,7 +2363,7 @@ config("symbols") { +@@ -2301,7 +2298,7 @@ config("symbols") { # sections (llvm.org/PR34820). cflags += [ "-ggnu-pubnames" ] } @@ -104,7 +82,7 @@ } --- a/components/policy/core/browser/configuration_policy_handler.cc +++ b/components/policy/core/browser/configuration_policy_handler.cc -@@ -364,7 +364,6 @@ SchemaValidatingPolicyHandler::SchemaVal +@@ -352,7 +352,6 @@ SchemaValidatingPolicyHandler::SchemaVal Schema schema, SchemaOnErrorStrategy strategy) : policy_name_(policy_name), schema_(schema), strategy_(strategy) { @@ -114,7 +92,7 @@ SchemaValidatingPolicyHandler::~SchemaValidatingPolicyHandler() {} --- a/build/android/gyp/compile_java.py +++ b/build/android/gyp/compile_java.py -@@ -145,7 +145,7 @@ ERRORPRONE_WARNINGS_TO_ERROR = [ +@@ -150,7 +150,7 @@ ERRORPRONE_WARNINGS_TO_ERROR = [ 'LongLiteralLowerCaseSuffix', 'MultiVariableDeclaration', 'RedundantOverride', @@ -135,7 +113,7 @@ return std::make_unique( --- a/chrome/browser/ui/webui/settings/people_handler.cc +++ b/chrome/browser/ui/webui/settings/people_handler.cc -@@ -778,7 +778,6 @@ void PeopleHandler::HandleSignout(const +@@ -711,7 +711,6 @@ void PeopleHandler::HandleSignout(const } void PeopleHandler::HandlePauseSync(const base::ListValue* args) { @@ -145,7 +123,7 @@ --- a/components/omnibox/browser/autocomplete_match.cc +++ b/components/omnibox/browser/autocomplete_match.cc -@@ -1199,13 +1199,6 @@ void AutocompleteMatch::TryAutocompleteW +@@ -1213,16 +1213,6 @@ void AutocompleteMatch::TryAutocompleteW is_navigational_title_match = true; } @@ -154,14 +132,17 @@ - std::string provider_name = provider ? provider->GetName() : "None"; - ValidateClassifications(contents, contents_class, provider_name); - ValidateClassifications(description, description_class, provider_name); +- ValidateClassifications(description_for_shortcuts, +- description_class_for_shortcuts, provider_name); -} -#endif // DCHECK_IS_ON() - +- // static void AutocompleteMatch::ValidateClassifications( + const base::string16& text, --- a/components/omnibox/browser/autocomplete_result.cc +++ b/components/omnibox/browser/autocomplete_result.cc -@@ -609,13 +609,6 @@ void AutocompleteResult::CopyFrom(const +@@ -617,13 +617,6 @@ void AutocompleteResult::CopyFrom(const matches_ = other.matches_; } @@ -189,7 +170,7 @@ for (ShortcutMap::const_iterator it( --- a/components/omnibox/browser/autocomplete_controller.cc +++ b/components/omnibox/browser/autocomplete_controller.cc -@@ -602,9 +602,6 @@ void AutocompleteController::UpdateResul +@@ -647,9 +647,6 @@ void AutocompleteController::UpdateResul // Need to validate before invoking CopyOldMatches as the old matches are not // valid against the current input. @@ -201,16 +182,16 @@ // This conditional needs to match the conditional in Start that invokes --- a/cc/trees/layer_tree_host_impl.cc +++ b/cc/trees/layer_tree_host_impl.cc -@@ -4422,9 +4422,6 @@ gfx::Vector2dF LayerTreeHostImpl::Scroll - } +@@ -4305,9 +4305,6 @@ gfx::Vector2dF LayerTreeHostImpl::Scroll - void LayerTreeHostImpl::ScrollLatchedScroller(ScrollState* scroll_state) { + void LayerTreeHostImpl::ScrollLatchedScroller(ScrollState* scroll_state, + base::TimeDelta delayed_by) { - DCHECK(CurrentlyScrollingNode()); - DCHECK(scroll_state); - DCHECK(latched_scroll_type_.has_value()); - ScrollNode* scroll_node = CurrentlyScrollingNode(); - gfx::Point viewport_point(scroll_state->position_x(), + ScrollNode& scroll_node = *CurrentlyScrollingNode(); + const gfx::Vector2dF delta(scroll_state->delta_x(), scroll_state->delta_y()); --- a/content/common/input/input_event_stream_validator.cc +++ b/content/common/input/input_event_stream_validator.cc @@ -29,9 +29,6 @@ void InputEventStreamValidator::Validate @@ -223,3 +204,13 @@ } bool InputEventStreamValidator::ValidateImpl( +--- a/services/network/network_context.cc ++++ b/services/network/network_context.cc +@@ -845,7 +845,6 @@ void NetworkContext::QueueReport(const s + const GURL& url, + const base::Optional& user_agent, + base::Value body) { +- NOTREACHED(); + } + + void NetworkContext::QueueSignedExchangeReport( diff --git a/patches/series b/patches/series index 42c325f..dd9e219 100644 --- a/patches/series +++ b/patches/series @@ -1,4 +1,3 @@ -src-fix/fix-manifest-merger-path.patch src-fix/android-rlz-fix-missing-variable.patch src-fix/fix-null-mInstanceID.patch src-fix/fix-unkown-warning-clang-9.patch @@ -29,15 +28,15 @@ ungoogled-chromium-android/Remove-dependency-on-com.google.android.play.core.spl ungoogled-chromium-android/Disable-contextual-search.patch ungoogled-chromium-android/Disable-lite-mode-prompt.patch ungoogled-chromium-android/Disable-prefetch.patch -ungoogled-chromium-android/Add-Starpage-search-engine.patch +ungoogled-chromium-android/Add-more-search-engines.patch ungoogled-chromium-android/Add-folder-button-bookmark.patch +ungoogled-chromium-android/Mark-http-as-dangerous-mixed-content-warning.patch Bromite/Add-exit-menu-item.patch Bromite/Add-flag-to-disable-WebGL.patch Bromite/Add-flags-to-disable-device-motion-and-orientation-APIs.patch Bromite/Add-option-to-not-persist-tabs-across-sessions.patch Bromite/Add-user-setting-for-DNS-over-HTTPS-DoH-custom-URL.patch +Bromite/Change-default-webRTC-policy-to-not-use-any-address.patch +Bromite/Remove-account-permissions-from-manifest.patch Bromite/Revert-flags-remove-disable-pull-to-refresh-effect.patch Bromite/updater-disable-updater-pings.patch -Bromite/Use-a-minimum-DoH-timeout-of-400ms.patch -Bromite/Disable-AImageReader-for-ARM64-P-and-ARM64-Q.patch -Bromite/Download-on-Android-Q-Remove-a-DCHECK-in-CreateReservation.patch diff --git a/patches/src-fix/fix-manifest-merger-path.patch b/patches/src-fix/fix-manifest-merger-path.patch index 5eb60ee..b1161a0 100644 --- a/patches/src-fix/fix-manifest-merger-path.patch +++ b/patches/src-fix/fix-manifest-merger-path.patch @@ -8,7 +8,7 @@ Subject: fix gn ignoring manifest merger sdk --- a/build/config/android/config.gni +++ b/build/config/android/config.gni -@@ -142,6 +142,9 @@ if (is_android || is_chromeos) { +@@ -140,6 +140,9 @@ if (is_android || is_chromeos) { lint_android_sdk_root = default_lint_android_sdk_root lint_android_sdk_version = default_lint_android_sdk_version diff --git a/patches/src-fix/fix-prefs.patch b/patches/src-fix/fix-prefs.patch index 4bb945e..149f80b 100644 --- a/patches/src-fix/fix-prefs.patch +++ b/patches/src-fix/fix-prefs.patch @@ -10,7 +10,7 @@ Subject: fix build error with prefs.h --- a/chrome/browser/android/preferences/prefs.h +++ b/chrome/browser/android/preferences/prefs.h -@@ -21,7 +21,6 @@ +@@ -18,7 +18,6 @@ #include "components/offline_pages/core/prefetch/prefetch_prefs.h" #include "components/password_manager/core/common/password_manager_pref_names.h" #include "components/payments/core/payment_prefs.h" @@ -18,7 +18,7 @@ Subject: fix build error with prefs.h #include "components/translate/core/browser/translate_pref_names.h" // A preference exposed to Java. -@@ -61,7 +60,6 @@ enum Pref { +@@ -58,7 +57,6 @@ enum Pref { OFFER_TRANSLATE_ENABLED, NOTIFICATIONS_VIBRATE_ENABLED, ALTERNATE_ERROR_PAGES_ENABLED, @@ -26,7 +26,7 @@ Subject: fix build error with prefs.h WEBKIT_PASSWORD_ECHO_ENABLED, WEBKIT_FORCE_DARK_MODE_ENABLED, HOME_PAGE, -@@ -112,7 +110,6 @@ const char* const kPrefsExposedToJava[] +@@ -104,7 +102,6 @@ const char* const kPrefsExposedToJava[] prefs::kOfferTranslateEnabled, prefs::kNotificationsVibrateEnabled, embedder_support::kAlternateErrorPagesEnabled, @@ -36,7 +36,7 @@ Subject: fix build error with prefs.h prefs::kHomePage, --- a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninFragmentBase.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninFragmentBase.java -@@ -438,7 +438,7 @@ public abstract class SigninFragmentBase +@@ -437,7 +437,7 @@ public abstract class SigninFragmentBase private void runStateMachineAndSignin(boolean settingsClicked) { mConfirmSyncDataStateMachine = new ConfirmSyncDataStateMachine( new ConfirmSyncDataStateMachineDelegate(getChildFragmentManager()), @@ -47,7 +47,7 @@ Subject: fix build error with prefs.h public void onConfirm(boolean wipeData) { --- a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninPromoUtil.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninPromoUtil.java -@@ -39,8 +39,7 @@ public class SigninPromoUtil { +@@ -38,8 +38,7 @@ public class SigninPromoUtil { public static boolean launchSigninPromoIfNeeded(final Activity activity) { SigninPreferencesManager preferencesManager = SigninPreferencesManager.getInstance(); int currentMajorVersion = ChromeVersionInfo.getProductMajorVersion(); @@ -55,5 +55,5 @@ Subject: fix build error with prefs.h - PrefServiceBridge.getInstance().getString(Pref.SYNC_LAST_ACCOUNT_NAME)); + boolean wasSignedIn = TextUtils.isEmpty(""); - Supplier> accountNamesSupplier = - () -> new ArraySet<>(AccountManagerFacade.get().tryGetGoogleAccountNames()); + Supplier> accountNamesSupplier = () + -> new ArraySet<>( diff --git a/patches/src-fix/fix-safe-browsing-prefs.patch b/patches/src-fix/fix-safe-browsing-prefs.patch index 10c035e..c3aae3b 100644 --- a/patches/src-fix/fix-safe-browsing-prefs.patch +++ b/patches/src-fix/fix-safe-browsing-prefs.patch @@ -4,57 +4,37 @@ Subject: Fix build error caused by the removal of safe_browsing_prefs.h --- android_webview/browser/aw_browser_context.cc | 2 - - android_webview/browser/safe_browsing/aw_safe_browsing_blocking_page.cc | 8 ++-- + android_webview/browser/safe_browsing/aw_safe_browsing_blocking_page.cc | 10 ++--- chrome/android/BUILD.gn | 1 chrome/android/chrome_java_sources.gni | 1 - chrome/android/java/src/org/chromium/chrome/browser/settings/sync/SyncAndServicesSettings.java | 19 ++-------- - chrome/android/java/src/org/chromium/chrome/browser/webshare/ShareServiceImpl.java | 3 - + chrome/android/java/src/org/chromium/chrome/browser/sync/settings/SyncAndServicesSettings.java | 19 ++-------- chrome/browser/android/preferences/prefs.h | 2 - - weblayer/browser/browser_context_impl.cc | 3 - - 8 files changed, 10 insertions(+), 29 deletions(-) + weblayer/browser/browser_context_impl.cc | 2 - + 7 files changed, 10 insertions(+), 27 deletions(-) --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -2762,7 +2762,6 @@ generate_jni("chrome_jni_headers") { - "java/src/org/chromium/chrome/browser/rappor/RapporServiceBridge.java", +@@ -2906,7 +2906,6 @@ generate_jni("chrome_jni_headers") { + "java/src/org/chromium/chrome/browser/resources/ResourceMapper.java", "java/src/org/chromium/chrome/browser/rlz/RevenueStats.java", "java/src/org/chromium/chrome/browser/rlz/RlzPingHandler.java", - "java/src/org/chromium/chrome/browser/safe_browsing/SafeBrowsingBridge.java", "java/src/org/chromium/chrome/browser/safe_browsing/SafeBrowsingPasswordReuseDialogBridge.java", + "java/src/org/chromium/chrome/browser/screenshot/EditorScreenshotTask.java", "java/src/org/chromium/chrome/browser/search_engines/TemplateUrlServiceFactory.java", - "java/src/org/chromium/chrome/browser/send_tab_to_self/NotificationManager.java", --- a/chrome/android/chrome_java_sources.gni +++ b/chrome/android/chrome_java_sources.gni -@@ -1336,7 +1336,6 @@ chrome_java_sources = [ - "java/src/org/chromium/chrome/browser/rappor/RapporServiceBridge.java", +@@ -1386,7 +1386,6 @@ chrome_java_sources = [ + "java/src/org/chromium/chrome/browser/resources/ResourceMapper.java", "java/src/org/chromium/chrome/browser/rlz/RevenueStats.java", "java/src/org/chromium/chrome/browser/rlz/RlzPingHandler.java", - "java/src/org/chromium/chrome/browser/safe_browsing/SafeBrowsingBridge.java", "java/src/org/chromium/chrome/browser/safe_browsing/SafeBrowsingPasswordReuseDialogBridge.java", - "java/src/org/chromium/chrome/browser/search_engines/SearchEngineChoiceMetrics.java", - "java/src/org/chromium/chrome/browser/search_engines/SearchEngineChoiceNotification.java", ---- a/chrome/android/java/src/org/chromium/chrome/browser/webshare/ShareServiceImpl.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/webshare/ShareServiceImpl.java -@@ -20,7 +20,6 @@ import org.chromium.base.task.PostTask; - import org.chromium.base.task.TaskRunner; - import org.chromium.base.task.TaskTraits; - import org.chromium.chrome.browser.ChromeActivity; --import org.chromium.chrome.browser.safe_browsing.SafeBrowsingBridge; - import org.chromium.chrome.browser.share.ShareHelper; - import org.chromium.chrome.browser.share.ShareParams; - import org.chromium.content_public.browser.WebContents; -@@ -198,7 +197,7 @@ public class ShareServiceImpl implements - - for (SharedFile file : files) { - RecordHistogram.recordSparseHistogram( -- "WebShare.Unverified", SafeBrowsingBridge.umaValueForFile(file.name)); -+ "WebShare.Unverified", 1); - } - - for (SharedFile file : files) { + "java/src/org/chromium/chrome/browser/screenshot/EditorScreenshotSource.java", + "java/src/org/chromium/chrome/browser/screenshot/EditorScreenshotTask.java", --- a/android_webview/browser/aw_browser_context.cc +++ b/android_webview/browser/aw_browser_context.cc -@@ -227,7 +227,7 @@ base::FilePath AwBrowserContext::GetCont +@@ -236,7 +236,7 @@ base::FilePath AwBrowserContext::GetCont // static void AwBrowserContext::RegisterPrefs(PrefRegistrySimple* registry) { @@ -65,7 +45,7 @@ Subject: Fix build error caused by the removal of safe_browsing_prefs.h // The default value '0' represents the latest Chrome major version on which --- a/android_webview/browser/safe_browsing/aw_safe_browsing_blocking_page.cc +++ b/android_webview/browser/safe_browsing/aw_safe_browsing_blocking_page.cc -@@ -123,11 +123,11 @@ AwSafeBrowsingBlockingPage* AwSafeBrowsi +@@ -123,12 +123,12 @@ AwSafeBrowsingBlockingPage* AwSafeBrowsi BaseSafeBrowsingErrorUI::SBErrorDisplayOptions display_options = BaseSafeBrowsingErrorUI::SBErrorDisplayOptions( IsMainPageLoadBlocked(unsafe_resources), @@ -74,16 +54,18 @@ Subject: Fix build error caused by the removal of safe_browsing_prefs.h browser_context->IsOffTheRecord(), - safe_browsing::IsExtendedReportingEnabled(*pref_service), - safe_browsing::IsExtendedReportingPolicyManaged(*pref_service), +- safe_browsing::IsEnhancedProtectionEnabled(*pref_service), - pref_service->GetBoolean(::prefs::kSafeBrowsingProceedAnywayDisabled), + false, + false, ++ false, + false, false, // should_open_links_in_new_tab false, // always_show_back_to_safety "cpn_safe_browsing_wv"); // help_center_article_link --- a/chrome/browser/android/preferences/prefs.h +++ b/chrome/browser/android/preferences/prefs.h -@@ -41,8 +41,6 @@ enum Pref { +@@ -38,8 +38,6 @@ enum Pref { AUTOFILL_CREDIT_CARD_ENABLED, USAGE_STATS_ENABLED, OFFLINE_PREFETCH_USER_SETTING_ENABLED, @@ -92,17 +74,17 @@ Subject: Fix build error caused by the removal of safe_browsing_prefs.h PASSWORD_MANAGER_ONBOARDING_STATE, SEARCH_SUGGEST_ENABLED, REMEMBER_PASSWORDS_ENABLED, ---- a/chrome/android/java/src/org/chromium/chrome/browser/settings/sync/SyncAndServicesSettings.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/sync/SyncAndServicesSettings.java -@@ -45,7 +45,6 @@ import org.chromium.chrome.browser.prefe - import org.chromium.chrome.browser.preferences.PrefServiceBridge; +--- a/chrome/android/java/src/org/chromium/chrome/browser/sync/settings/SyncAndServicesSettings.java ++++ b/chrome/android/java/src/org/chromium/chrome/browser/sync/settings/SyncAndServicesSettings.java +@@ -48,7 +48,6 @@ import org.chromium.chrome.browser.prefe import org.chromium.chrome.browser.preferences.SharedPreferencesManager; + import org.chromium.chrome.browser.privacy.settings.PrivacyPreferencesManager; import org.chromium.chrome.browser.profiles.Profile; -import org.chromium.chrome.browser.safe_browsing.SafeBrowsingBridge; - import org.chromium.chrome.browser.settings.ChromeBasePreference; - import org.chromium.chrome.browser.settings.ChromeSwitchPreference; - import org.chromium.chrome.browser.settings.ManagedPreferenceDelegate; -@@ -356,17 +355,9 @@ public class SyncAndServicesSettings ext + import org.chromium.chrome.browser.settings.ChromeManagedPreferenceDelegate; + import org.chromium.chrome.browser.settings.SettingsActivity; + import org.chromium.chrome.browser.signin.IdentityServicesProvider; +@@ -357,17 +356,9 @@ public class SyncAndServicesSettings ext PostTask.postTask(UiThreadTaskTraits.DEFAULT, this::updatePreferences); } else if (PREF_SEARCH_SUGGESTIONS.equals(key)) { mPrefServiceBridge.setBoolean(Pref.SEARCH_SUGGEST_ENABLED, (boolean) newValue); @@ -120,7 +102,7 @@ Subject: Fix build error caused by the removal of safe_browsing_prefs.h } else if (PREF_NAVIGATION_ERROR.equals(key)) { mPrefServiceBridge.setBoolean(Pref.ALTERNATE_ERROR_PAGES_ENABLED, (boolean) newValue); } else if (PREF_USAGE_AND_CRASH_REPORTING.equals(key)) { -@@ -539,7 +530,6 @@ public class SyncAndServicesSettings ext +@@ -540,7 +531,6 @@ public class SyncAndServicesSettings ext mSearchSuggestions.setChecked(mPrefServiceBridge.getBoolean(Pref.SEARCH_SUGGEST_ENABLED)); mNavigationError.setChecked( mPrefServiceBridge.getBoolean(Pref.ALTERNATE_ERROR_PAGES_ENABLED)); @@ -128,7 +110,7 @@ Subject: Fix build error caused by the removal of safe_browsing_prefs.h updateLeakDetectionAndSafeBrowsingReportingPreferences(); -@@ -610,10 +600,9 @@ public class SyncAndServicesSettings ext +@@ -609,10 +599,9 @@ public class SyncAndServicesSettings ext * its appearance needs to be updated. The same goes for safe browsing reporting. */ private void updateLeakDetectionAndSafeBrowsingReportingPreferences() { @@ -141,7 +123,7 @@ Subject: Fix build error caused by the removal of safe_browsing_prefs.h boolean has_token_for_leak_check = PasswordUIView.hasAccountForLeakCheckRequest(); boolean leak_detection_enabled = -@@ -641,10 +630,10 @@ public class SyncAndServicesSettings ext +@@ -640,10 +629,10 @@ public class SyncAndServicesSettings ext return mPrefServiceBridge.isManagedPreference(Pref.SEARCH_SUGGEST_ENABLED); } if (PREF_SAFE_BROWSING_SCOUT_REPORTING.equals(key)) { @@ -156,20 +138,19 @@ Subject: Fix build error caused by the removal of safe_browsing_prefs.h return mPrefServiceBridge.isManagedPreference( --- a/weblayer/browser/browser_context_impl.cc +++ b/weblayer/browser/browser_context_impl.cc -@@ -11,7 +11,6 @@ - #include "components/prefs/pref_registry_simple.h" +@@ -15,7 +15,6 @@ + #include "components/prefs/json_pref_store.h" #include "components/prefs/pref_service.h" #include "components/prefs/pref_service_factory.h" -#include "components/safe_browsing/core/common/safe_browsing_prefs.h" + #include "components/security_interstitials/content/stateful_ssl_host_state_delegate.h" #include "components/user_prefs/user_prefs.h" - #include "content/public/browser/device_service.h" - #include "content/public/browser/download_request_utils.h" -@@ -212,8 +211,6 @@ void BrowserContextImpl::RegisterPrefs(P - // cases in the future, as it is used for various purposes through //chrome). - pref_registry->RegisterBooleanPref( - embedder_support::kAlternateErrorPagesEnabled, true); -- -- safe_browsing::RegisterProfilePrefs(pref_registry); - } + #include "components/variations/variations_client.h" +@@ -233,7 +232,6 @@ void BrowserContextImpl::RegisterPrefs( - } // namespace weblayer + StatefulSSLHostStateDelegate::RegisterProfilePrefs(pref_registry); + HostContentSettingsMap::RegisterProfilePrefs(pref_registry); +- safe_browsing::RegisterProfilePrefs(pref_registry); + #if defined(OS_ANDROID) + cdm::MediaDrmStorageImpl::RegisterProfilePrefs(pref_registry); + permissions::GeolocationPermissionContextAndroid::RegisterProfilePrefs( diff --git a/patches/src-fix/fix-unkown-warning-clang-9.patch b/patches/src-fix/fix-unkown-warning-clang-9.patch index ed1940e..2eaa92f 100644 --- a/patches/src-fix/fix-unkown-warning-clang-9.patch +++ b/patches/src-fix/fix-unkown-warning-clang-9.patch @@ -7,7 +7,7 @@ author: Wengling Chen --- a/build/config/compiler/BUILD.gn +++ b/build/config/compiler/BUILD.gn -@@ -1511,6 +1511,9 @@ config("default_warnings") { +@@ -1492,6 +1492,9 @@ config("default_warnings") { # Flags NaCl (Clang 3.7) and Xcode 9.2 (Clang clang-900.0.39.2) do not # recognize. cflags += [ diff --git a/patches/ungoogled-chromium-android/Add-folder-button-bookmark.patch b/patches/ungoogled-chromium-android/Add-folder-button-bookmark.patch index 26eccce..84b4dd1 100644 --- a/patches/ungoogled-chromium-android/Add-folder-button-bookmark.patch +++ b/patches/ungoogled-chromium-android/Add-folder-button-bookmark.patch @@ -5,29 +5,30 @@ Subject: Add new folder button to bookmark activity --- chrome/android/java/res/menu/bookmark_action_bar_menu.xml | 7 +++ chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkActionBar.java | 6 ++ - chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkAddEditFolderActivity.java | 21 +++++++++- - chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkFolderSelectActivity.java | 15 +++++++ + chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkAddEditFolderActivity.java | 21 ++++++++- + chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkBridge.java | 5 +- + chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkFolderSelectActivity.java | 22 +++++++++- chrome/browser/ui/android/strings/android_chrome_strings.grd | 3 + - 5 files changed, 50 insertions(+), 2 deletions(-) + 6 files changed, 59 insertions(+), 5 deletions(-) --- a/chrome/android/java/res/menu/bookmark_action_bar_menu.xml +++ b/chrome/android/java/res/menu/bookmark_action_bar_menu.xml @@ -15,6 +15,13 @@ app:showAsAction="ifRoom" - app:iconTint="@color/standard_mode_tint" /> + app:iconTint="@color/default_icon_color_tint_list" /> ++ app:iconTint="@color/default_icon_color_tint_list" /> + stringList = getIntent().getStringArrayListExtra( BookmarkFolderSelectActivity.INTENT_BOOKMARKS_TO_MOVE); mBookmarksToMove = new ArrayList<>(stringList.size()); -@@ -171,7 +186,9 @@ public class BookmarkAddEditFolderActivi +@@ -172,7 +187,9 @@ public class BookmarkAddEditFolderActivi public void onClick(View v) { assert v == mParentTextView; @@ -120,7 +121,22 @@ Subject: Add new folder button to bookmark activity } else { --- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkFolderSelectActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkFolderSelectActivity.java -@@ -97,6 +97,21 @@ public class BookmarkFolderSelectActivit +@@ -52,11 +52,14 @@ public class BookmarkFolderSelectActivit + static final String + INTENT_IS_CREATING_FOLDER = "BookmarkFolderSelectActivity.isCreatingFolder"; + static final String ++ INTENT_IS_SIMPLE_CREATING_FOLDER = "BookmarkFolderSelectActivity.isSimpleCreatingFolder"; ++ static final String + INTENT_BOOKMARKS_TO_MOVE = "BookmarkFolderSelectActivity.bookmarksToMove"; + static final int CREATE_FOLDER_REQUEST_CODE = 13; + + private BookmarkModel mModel; + private boolean mIsCreatingFolder; ++ private boolean mIsSimpleCreatingFolder; + private List mBookmarksToMove; + private BookmarkId mParentId; + private FolderListAdapter mBookmarkIdsAdapter; +@@ -99,6 +102,22 @@ public class BookmarkFolderSelectActivit } /** @@ -131,6 +147,7 @@ Subject: Add new folder button to bookmark activity + BookmarkAddEditFolderActivity activity, BookmarkId folderId) { + Intent intent = new Intent(activity, BookmarkFolderSelectActivity.class); + intent.putExtra(INTENT_IS_CREATING_FOLDER, true); ++ intent.putExtra(INTENT_IS_SIMPLE_CREATING_FOLDER, true); + ArrayList bookmarkStrings = new ArrayList<>(1); + bookmarkStrings.add(folderId.toString()); + intent.putStringArrayListExtra(INTENT_BOOKMARKS_TO_MOVE, bookmarkStrings); @@ -142,9 +159,26 @@ Subject: Add new folder button to bookmark activity * Starts a select folder activity for the new folder that is about to be created. This method * is only supposed to be called by {@link BookmarkAddEditFolderActivity} */ +@@ -149,6 +168,7 @@ public class BookmarkFolderSelectActivit + } + + mIsCreatingFolder = getIntent().getBooleanExtra(INTENT_IS_CREATING_FOLDER, false); ++ mIsSimpleCreatingFolder = getIntent().getBooleanExtra(INTENT_IS_SIMPLE_CREATING_FOLDER, false); + if (mIsCreatingFolder) { + mParentId = mModel.getMobileFolderId(); + } else { +@@ -183,7 +203,7 @@ public class BookmarkFolderSelectActivit + private void updateFolderList() { + List folderList = new ArrayList<>(); + List depthList = new ArrayList<>(); +- mModel.getMoveDestinations(folderList, depthList, mBookmarksToMove); ++ mModel.getMoveDestinations(folderList, depthList, mBookmarksToMove, mIsSimpleCreatingFolder); + List entryList = new ArrayList<>(folderList.size() + 3); + + if (!mIsCreatingFolder) { --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd -@@ -2918,6 +2918,9 @@ To change this setting, Edit folder @@ -154,3 +188,24 @@ Subject: Add new folder button to bookmark activity Move bookmarks +--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkBridge.java ++++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkBridge.java +@@ -435,7 +435,8 @@ public class BookmarkBridge { + * moving some folders (a folder cannot be moved to its own children). + */ + public void getMoveDestinations(List folderList, +- List depthList, List bookmarksToMove) { ++ List depthList, List bookmarksToMove, ++ boolean isSimpleCreatingFolder) { + ThreadUtils.assertOnUiThread(); + assert mIsNativeBookmarkModelLoaded; + BookmarkBridgeJni.get().getAllFoldersWithDepths( +@@ -460,7 +461,7 @@ public class BookmarkBridge { + // statement. + if (!shouldTrim) { + BookmarkId folder = folderList.get(i); +- if (bookmarksToMove.contains(folder)) { ++ if (!isSimpleCreatingFolder && bookmarksToMove.contains(folder)) { + shouldTrim = true; + trimThreshold = depth; + folderList.remove(i); diff --git a/patches/ungoogled-chromium-android/Add-Starpage-search-engine.patch b/patches/ungoogled-chromium-android/Add-more-search-engines.patch similarity index 65% rename from patches/ungoogled-chromium-android/Add-Starpage-search-engine.patch rename to patches/ungoogled-chromium-android/Add-more-search-engines.patch index d120bbb..b0b61a3 100644 --- a/patches/ungoogled-chromium-android/Add-Starpage-search-engine.patch +++ b/patches/ungoogled-chromium-android/Add-more-search-engines.patch @@ -1,12 +1,12 @@ From: Wengling Chen Mon, 20 Apr 2020 22:31:08 -0400 -Subject: Add Startpage.com search engine +Subject: Add Startpage.com and Qwant.com search engines --- - components/search_engines/prepopulated_engines.json | 11 + + components/search_engines/prepopulated_engines.json | 12 components/search_engines/search_engine_type.h | 1 - components/search_engines/template_url_prepopulate_data.cc | 110 +++++++++++++ - 3 files changed, 122 insertions(+) + components/search_engines/template_url_prepopulate_data.cc | 217 ++++++++++++- + 3 files changed, 229 insertions(+), 1 deletion(-) --- a/components/search_engines/prepopulated_engines.json +++ b/components/search_engines/prepopulated_engines.json @@ -28,6 +28,14 @@ Subject: Add Startpage.com search engine "searx": { "name": "Searx", "keyword": "searx.me", +@@ -162,6 +173,7 @@ + "favicon_url": "https://www.qwant.com/favicon.ico", + "search_url": "https://www.qwant.com/?q={searchTerms}&client=opensearch", + "suggest_url": "https://api.qwant.com/api/suggest/?q={searchTerms}&client=opensearch", ++ "image_url": "https://www.qwant.com/?t=images&q={searchTerms}", + "type": "SEARCH_ENGINE_QWANT", + "id": 94 + }, --- a/components/search_engines/template_url_prepopulate_data.cc +++ b/components/search_engines/template_url_prepopulate_data.cc @@ -33,6 +33,8 @@ namespace { @@ -35,7 +43,7 @@ Subject: Add Startpage.com search engine const PrepopulatedEngine* const engines_default[] = { &searx, + &startpage, -+ &startpage, ++ &qwant, &duckduckgo, &google, &bing, @@ -44,855 +52,965 @@ Subject: Add Startpage.com search engine const PrepopulatedEngine* const engines_AE[] = { &searx, + &startpage, -+ &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -54,6 +58,7 @@ const PrepopulatedEngine* const engines_ +@@ -54,6 +58,8 @@ const PrepopulatedEngine* const engines_ // Albania const PrepopulatedEngine* const engines_AL[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &yahoo, -@@ -64,6 +69,7 @@ const PrepopulatedEngine* const engines_ +@@ -64,6 +70,8 @@ const PrepopulatedEngine* const engines_ // Argentina const PrepopulatedEngine* const engines_AR[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -74,6 +80,7 @@ const PrepopulatedEngine* const engines_ +@@ -74,6 +82,8 @@ const PrepopulatedEngine* const engines_ // Austria const PrepopulatedEngine* const engines_AT[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -84,6 +91,7 @@ const PrepopulatedEngine* const engines_ +@@ -84,6 +94,8 @@ const PrepopulatedEngine* const engines_ // Australia const PrepopulatedEngine* const engines_AU[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -94,6 +102,7 @@ const PrepopulatedEngine* const engines_ +@@ -94,6 +106,8 @@ const PrepopulatedEngine* const engines_ // Bosnia and Herzegovina const PrepopulatedEngine* const engines_BA[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -104,6 +113,7 @@ const PrepopulatedEngine* const engines_ +@@ -104,6 +118,8 @@ const PrepopulatedEngine* const engines_ // Belgium const PrepopulatedEngine* const engines_BE[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -114,6 +124,7 @@ const PrepopulatedEngine* const engines_ +@@ -114,6 +130,8 @@ const PrepopulatedEngine* const engines_ // Bulgaria const PrepopulatedEngine* const engines_BG[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -124,6 +135,7 @@ const PrepopulatedEngine* const engines_ +@@ -124,6 +142,8 @@ const PrepopulatedEngine* const engines_ // Bahrain const PrepopulatedEngine* const engines_BH[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -135,6 +147,7 @@ const PrepopulatedEngine* const engines_ +@@ -135,6 +155,8 @@ const PrepopulatedEngine* const engines_ // Burundi const PrepopulatedEngine* const engines_BI[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -146,6 +159,7 @@ const PrepopulatedEngine* const engines_ +@@ -146,6 +168,8 @@ const PrepopulatedEngine* const engines_ // Brunei const PrepopulatedEngine* const engines_BN[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -156,6 +170,7 @@ const PrepopulatedEngine* const engines_ +@@ -156,6 +180,8 @@ const PrepopulatedEngine* const engines_ // Bolivia const PrepopulatedEngine* const engines_BO[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -166,6 +181,7 @@ const PrepopulatedEngine* const engines_ +@@ -166,6 +192,8 @@ const PrepopulatedEngine* const engines_ // Brazil const PrepopulatedEngine* const engines_BR[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -176,6 +192,7 @@ const PrepopulatedEngine* const engines_ +@@ -176,6 +204,8 @@ const PrepopulatedEngine* const engines_ // Belarus const PrepopulatedEngine* const engines_BY[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &yandex_by, -@@ -187,6 +204,7 @@ const PrepopulatedEngine* const engines_ +@@ -187,6 +217,8 @@ const PrepopulatedEngine* const engines_ // Belize const PrepopulatedEngine* const engines_BZ[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -197,6 +215,7 @@ const PrepopulatedEngine* const engines_ +@@ -197,6 +229,8 @@ const PrepopulatedEngine* const engines_ // Canada const PrepopulatedEngine* const engines_CA[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -207,6 +226,7 @@ const PrepopulatedEngine* const engines_ +@@ -207,6 +241,8 @@ const PrepopulatedEngine* const engines_ // Switzerland const PrepopulatedEngine* const engines_CH[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -217,6 +237,7 @@ const PrepopulatedEngine* const engines_ +@@ -217,6 +253,8 @@ const PrepopulatedEngine* const engines_ // Chile const PrepopulatedEngine* const engines_CL[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -227,6 +248,7 @@ const PrepopulatedEngine* const engines_ +@@ -227,6 +265,8 @@ const PrepopulatedEngine* const engines_ // China const PrepopulatedEngine* const engines_CN[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &baidu, &sogou, -@@ -238,6 +260,7 @@ const PrepopulatedEngine* const engines_ +@@ -238,6 +278,8 @@ const PrepopulatedEngine* const engines_ // Colombia const PrepopulatedEngine* const engines_CO[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -248,6 +271,7 @@ const PrepopulatedEngine* const engines_ +@@ -248,6 +290,8 @@ const PrepopulatedEngine* const engines_ // Costa Rica const PrepopulatedEngine* const engines_CR[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -258,6 +282,7 @@ const PrepopulatedEngine* const engines_ +@@ -258,6 +302,8 @@ const PrepopulatedEngine* const engines_ // Czech Republic const PrepopulatedEngine* const engines_CZ[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &seznam_cz, -@@ -268,6 +293,7 @@ const PrepopulatedEngine* const engines_ +@@ -268,6 +314,8 @@ const PrepopulatedEngine* const engines_ // Germany const PrepopulatedEngine* const engines_DE[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -278,6 +304,7 @@ const PrepopulatedEngine* const engines_ +@@ -278,6 +326,8 @@ const PrepopulatedEngine* const engines_ // Denmark const PrepopulatedEngine* const engines_DK[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -288,6 +315,7 @@ const PrepopulatedEngine* const engines_ +@@ -288,6 +338,8 @@ const PrepopulatedEngine* const engines_ // Dominican Republic const PrepopulatedEngine* const engines_DO[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -298,6 +326,7 @@ const PrepopulatedEngine* const engines_ +@@ -298,6 +350,8 @@ const PrepopulatedEngine* const engines_ // Algeria const PrepopulatedEngine* const engines_DZ[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &yahoo, -@@ -308,6 +337,7 @@ const PrepopulatedEngine* const engines_ +@@ -308,6 +362,8 @@ const PrepopulatedEngine* const engines_ // Ecuador const PrepopulatedEngine* const engines_EC[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -318,6 +348,7 @@ const PrepopulatedEngine* const engines_ +@@ -318,6 +374,8 @@ const PrepopulatedEngine* const engines_ // Estonia const PrepopulatedEngine* const engines_EE[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -329,6 +360,7 @@ const PrepopulatedEngine* const engines_ +@@ -329,6 +387,8 @@ const PrepopulatedEngine* const engines_ // Egypt const PrepopulatedEngine* const engines_EG[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &yahoo, -@@ -339,6 +371,7 @@ const PrepopulatedEngine* const engines_ +@@ -339,6 +399,8 @@ const PrepopulatedEngine* const engines_ // Spain const PrepopulatedEngine* const engines_ES[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -349,6 +382,7 @@ const PrepopulatedEngine* const engines_ +@@ -349,6 +411,8 @@ const PrepopulatedEngine* const engines_ // Finland const PrepopulatedEngine* const engines_FI[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -359,6 +393,7 @@ const PrepopulatedEngine* const engines_ +@@ -359,6 +423,8 @@ const PrepopulatedEngine* const engines_ // Faroe Islands const PrepopulatedEngine* const engines_FO[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -369,6 +404,7 @@ const PrepopulatedEngine* const engines_ +@@ -369,6 +435,8 @@ const PrepopulatedEngine* const engines_ // France const PrepopulatedEngine* const engines_FR[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -380,6 +416,7 @@ const PrepopulatedEngine* const engines_ +@@ -380,6 +448,8 @@ const PrepopulatedEngine* const engines_ // United Kingdom const PrepopulatedEngine* const engines_GB[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -390,6 +427,7 @@ const PrepopulatedEngine* const engines_ +@@ -390,6 +460,8 @@ const PrepopulatedEngine* const engines_ // Greece const PrepopulatedEngine* const engines_GR[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -400,6 +438,7 @@ const PrepopulatedEngine* const engines_ +@@ -400,6 +472,8 @@ const PrepopulatedEngine* const engines_ // Guatemala const PrepopulatedEngine* const engines_GT[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -410,6 +449,7 @@ const PrepopulatedEngine* const engines_ +@@ -410,6 +484,8 @@ const PrepopulatedEngine* const engines_ // Hong Kong const PrepopulatedEngine* const engines_HK[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &yahoo_hk, -@@ -421,6 +461,7 @@ const PrepopulatedEngine* const engines_ +@@ -421,6 +497,8 @@ const PrepopulatedEngine* const engines_ // Honduras const PrepopulatedEngine* const engines_HN[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -431,6 +472,7 @@ const PrepopulatedEngine* const engines_ +@@ -431,6 +509,8 @@ const PrepopulatedEngine* const engines_ // Croatia const PrepopulatedEngine* const engines_HR[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -441,6 +483,7 @@ const PrepopulatedEngine* const engines_ +@@ -441,6 +521,8 @@ const PrepopulatedEngine* const engines_ // Hungary const PrepopulatedEngine* const engines_HU[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -451,6 +494,7 @@ const PrepopulatedEngine* const engines_ +@@ -451,6 +533,8 @@ const PrepopulatedEngine* const engines_ // Indonesia const PrepopulatedEngine* const engines_ID[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &yahoo_id, -@@ -461,6 +505,7 @@ const PrepopulatedEngine* const engines_ +@@ -461,6 +545,8 @@ const PrepopulatedEngine* const engines_ // Ireland const PrepopulatedEngine* const engines_IE[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -471,6 +516,7 @@ const PrepopulatedEngine* const engines_ +@@ -471,6 +557,8 @@ const PrepopulatedEngine* const engines_ // Israel const PrepopulatedEngine* const engines_IL[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -481,6 +527,7 @@ const PrepopulatedEngine* const engines_ +@@ -481,6 +569,8 @@ const PrepopulatedEngine* const engines_ // India const PrepopulatedEngine* const engines_IN[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &yahoo_in, -@@ -491,6 +538,7 @@ const PrepopulatedEngine* const engines_ +@@ -491,6 +581,8 @@ const PrepopulatedEngine* const engines_ // Iraq const PrepopulatedEngine* const engines_IQ[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &yahoo, -@@ -501,6 +549,7 @@ const PrepopulatedEngine* const engines_ +@@ -501,6 +593,8 @@ const PrepopulatedEngine* const engines_ // Iran const PrepopulatedEngine* const engines_IR[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -512,6 +561,7 @@ const PrepopulatedEngine* const engines_ +@@ -512,6 +606,8 @@ const PrepopulatedEngine* const engines_ // Iceland const PrepopulatedEngine* const engines_IS[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -522,6 +572,7 @@ const PrepopulatedEngine* const engines_ +@@ -522,6 +618,8 @@ const PrepopulatedEngine* const engines_ // Italy const PrepopulatedEngine* const engines_IT[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -532,6 +583,7 @@ const PrepopulatedEngine* const engines_ +@@ -532,6 +630,8 @@ const PrepopulatedEngine* const engines_ // Jamaica const PrepopulatedEngine* const engines_JM[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -542,6 +594,7 @@ const PrepopulatedEngine* const engines_ +@@ -542,6 +642,8 @@ const PrepopulatedEngine* const engines_ // Jordan const PrepopulatedEngine* const engines_JO[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -552,6 +605,7 @@ const PrepopulatedEngine* const engines_ +@@ -552,17 +654,20 @@ const PrepopulatedEngine* const engines_ // Japan const PrepopulatedEngine* const engines_JP[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &yahoo_jp, -@@ -563,6 +617,7 @@ const PrepopulatedEngine* const engines_ + &bing, + &baidu, +- &duckduckgo, + }; + // Kenya const PrepopulatedEngine* const engines_KE[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -573,6 +628,7 @@ const PrepopulatedEngine* const engines_ +@@ -573,6 +678,8 @@ const PrepopulatedEngine* const engines_ // South Korea const PrepopulatedEngine* const engines_KR[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &naver, -@@ -584,6 +640,7 @@ const PrepopulatedEngine* const engines_ +@@ -584,6 +691,8 @@ const PrepopulatedEngine* const engines_ // Kuwait const PrepopulatedEngine* const engines_KW[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -594,6 +651,7 @@ const PrepopulatedEngine* const engines_ +@@ -594,6 +703,8 @@ const PrepopulatedEngine* const engines_ // Kazakhstan const PrepopulatedEngine* const engines_KZ[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &yandex_kz, -@@ -605,6 +663,7 @@ const PrepopulatedEngine* const engines_ +@@ -605,6 +716,8 @@ const PrepopulatedEngine* const engines_ // Lebanon const PrepopulatedEngine* const engines_LB[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -615,6 +674,7 @@ const PrepopulatedEngine* const engines_ +@@ -615,6 +728,8 @@ const PrepopulatedEngine* const engines_ // Liechtenstein const PrepopulatedEngine* const engines_LI[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -625,6 +685,7 @@ const PrepopulatedEngine* const engines_ +@@ -625,6 +740,8 @@ const PrepopulatedEngine* const engines_ // Lithuania const PrepopulatedEngine* const engines_LT[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -635,6 +696,7 @@ const PrepopulatedEngine* const engines_ +@@ -635,6 +752,8 @@ const PrepopulatedEngine* const engines_ // Luxembourg const PrepopulatedEngine* const engines_LU[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -645,6 +707,7 @@ const PrepopulatedEngine* const engines_ +@@ -645,6 +764,8 @@ const PrepopulatedEngine* const engines_ // Latvia const PrepopulatedEngine* const engines_LV[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &yandex_ru, -@@ -655,6 +718,7 @@ const PrepopulatedEngine* const engines_ +@@ -655,6 +776,8 @@ const PrepopulatedEngine* const engines_ // Libya const PrepopulatedEngine* const engines_LY[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &yahoo, -@@ -665,6 +729,7 @@ const PrepopulatedEngine* const engines_ +@@ -665,6 +788,8 @@ const PrepopulatedEngine* const engines_ // Morocco const PrepopulatedEngine* const engines_MA[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &yahoo, -@@ -675,6 +740,7 @@ const PrepopulatedEngine* const engines_ +@@ -675,6 +800,8 @@ const PrepopulatedEngine* const engines_ // Monaco const PrepopulatedEngine* const engines_MC[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -685,6 +751,7 @@ const PrepopulatedEngine* const engines_ +@@ -685,6 +812,8 @@ const PrepopulatedEngine* const engines_ // Moldova const PrepopulatedEngine* const engines_MD[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &yandex_ru, -@@ -695,6 +762,7 @@ const PrepopulatedEngine* const engines_ +@@ -695,6 +824,8 @@ const PrepopulatedEngine* const engines_ // Montenegro const PrepopulatedEngine* const engines_ME[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -705,6 +773,7 @@ const PrepopulatedEngine* const engines_ +@@ -705,6 +836,8 @@ const PrepopulatedEngine* const engines_ // Macedonia const PrepopulatedEngine* const engines_MK[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -715,6 +784,7 @@ const PrepopulatedEngine* const engines_ +@@ -715,6 +848,8 @@ const PrepopulatedEngine* const engines_ // Mexico const PrepopulatedEngine* const engines_MX[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -725,6 +795,7 @@ const PrepopulatedEngine* const engines_ +@@ -725,6 +860,8 @@ const PrepopulatedEngine* const engines_ // Malaysia const PrepopulatedEngine* const engines_MY[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -735,6 +806,7 @@ const PrepopulatedEngine* const engines_ +@@ -735,6 +872,8 @@ const PrepopulatedEngine* const engines_ // Nicaragua const PrepopulatedEngine* const engines_NI[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -745,6 +817,7 @@ const PrepopulatedEngine* const engines_ +@@ -745,6 +884,8 @@ const PrepopulatedEngine* const engines_ // Netherlands const PrepopulatedEngine* const engines_NL[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -755,6 +828,7 @@ const PrepopulatedEngine* const engines_ +@@ -755,6 +896,8 @@ const PrepopulatedEngine* const engines_ // Norway const PrepopulatedEngine* const engines_NO[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -765,6 +839,7 @@ const PrepopulatedEngine* const engines_ +@@ -765,6 +908,8 @@ const PrepopulatedEngine* const engines_ // New Zealand const PrepopulatedEngine* const engines_NZ[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -775,6 +850,7 @@ const PrepopulatedEngine* const engines_ +@@ -775,6 +920,8 @@ const PrepopulatedEngine* const engines_ // Oman const PrepopulatedEngine* const engines_OM[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -785,6 +861,7 @@ const PrepopulatedEngine* const engines_ +@@ -785,6 +932,8 @@ const PrepopulatedEngine* const engines_ // Panama const PrepopulatedEngine* const engines_PA[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -795,6 +872,7 @@ const PrepopulatedEngine* const engines_ +@@ -795,6 +944,8 @@ const PrepopulatedEngine* const engines_ // Peru const PrepopulatedEngine* const engines_PE[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -805,6 +883,7 @@ const PrepopulatedEngine* const engines_ +@@ -805,6 +956,8 @@ const PrepopulatedEngine* const engines_ // Philippines const PrepopulatedEngine* const engines_PH[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &yahoo_ph, -@@ -815,6 +894,7 @@ const PrepopulatedEngine* const engines_ +@@ -815,6 +968,8 @@ const PrepopulatedEngine* const engines_ // Pakistan const PrepopulatedEngine* const engines_PK[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &yahoo, -@@ -825,6 +905,7 @@ const PrepopulatedEngine* const engines_ +@@ -825,6 +980,8 @@ const PrepopulatedEngine* const engines_ // Poland const PrepopulatedEngine* const engines_PL[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -835,6 +916,7 @@ const PrepopulatedEngine* const engines_ +@@ -835,6 +992,8 @@ const PrepopulatedEngine* const engines_ // Puerto Rico const PrepopulatedEngine* const engines_PR[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -845,6 +927,7 @@ const PrepopulatedEngine* const engines_ +@@ -845,6 +1004,8 @@ const PrepopulatedEngine* const engines_ // Portugal const PrepopulatedEngine* const engines_PT[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -855,6 +938,7 @@ const PrepopulatedEngine* const engines_ +@@ -855,6 +1016,8 @@ const PrepopulatedEngine* const engines_ // Paraguay const PrepopulatedEngine* const engines_PY[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -865,6 +949,7 @@ const PrepopulatedEngine* const engines_ +@@ -865,6 +1028,8 @@ const PrepopulatedEngine* const engines_ // Qatar const PrepopulatedEngine* const engines_QA[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -875,6 +960,7 @@ const PrepopulatedEngine* const engines_ +@@ -875,6 +1040,8 @@ const PrepopulatedEngine* const engines_ // Romania const PrepopulatedEngine* const engines_RO[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -885,6 +971,7 @@ const PrepopulatedEngine* const engines_ +@@ -885,6 +1052,8 @@ const PrepopulatedEngine* const engines_ // Serbia const PrepopulatedEngine* const engines_RS[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &yahoo, -@@ -895,6 +982,7 @@ const PrepopulatedEngine* const engines_ +@@ -895,6 +1064,8 @@ const PrepopulatedEngine* const engines_ // Russia const PrepopulatedEngine* const engines_RU[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &yandex_ru, -@@ -906,6 +994,7 @@ const PrepopulatedEngine* const engines_ +@@ -906,6 +1077,8 @@ const PrepopulatedEngine* const engines_ // Rwanda const PrepopulatedEngine* const engines_RW[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -916,6 +1005,7 @@ const PrepopulatedEngine* const engines_ +@@ -916,6 +1089,8 @@ const PrepopulatedEngine* const engines_ // Saudi Arabia const PrepopulatedEngine* const engines_SA[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -926,6 +1016,7 @@ const PrepopulatedEngine* const engines_ +@@ -926,6 +1101,8 @@ const PrepopulatedEngine* const engines_ // Sweden const PrepopulatedEngine* const engines_SE[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -936,6 +1027,7 @@ const PrepopulatedEngine* const engines_ +@@ -936,6 +1113,8 @@ const PrepopulatedEngine* const engines_ // Singapore const PrepopulatedEngine* const engines_SG[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -947,6 +1039,7 @@ const PrepopulatedEngine* const engines_ +@@ -947,6 +1126,8 @@ const PrepopulatedEngine* const engines_ // Slovenia const PrepopulatedEngine* const engines_SI[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -957,6 +1050,7 @@ const PrepopulatedEngine* const engines_ +@@ -957,6 +1138,8 @@ const PrepopulatedEngine* const engines_ // Slovakia const PrepopulatedEngine* const engines_SK[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -967,6 +1061,7 @@ const PrepopulatedEngine* const engines_ +@@ -967,6 +1150,8 @@ const PrepopulatedEngine* const engines_ // El Salvador const PrepopulatedEngine* const engines_SV[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -977,6 +1072,7 @@ const PrepopulatedEngine* const engines_ +@@ -977,6 +1162,8 @@ const PrepopulatedEngine* const engines_ // Syria const PrepopulatedEngine* const engines_SY[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -987,6 +1083,7 @@ const PrepopulatedEngine* const engines_ +@@ -987,6 +1174,8 @@ const PrepopulatedEngine* const engines_ // Thailand const PrepopulatedEngine* const engines_TH[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &yahoo_th, -@@ -997,6 +1094,7 @@ const PrepopulatedEngine* const engines_ +@@ -997,6 +1186,8 @@ const PrepopulatedEngine* const engines_ // Tunisia const PrepopulatedEngine* const engines_TN[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &yahoo, -@@ -1007,6 +1105,7 @@ const PrepopulatedEngine* const engines_ +@@ -1007,6 +1198,8 @@ const PrepopulatedEngine* const engines_ // Turkey const PrepopulatedEngine* const engines_TR[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &yandex_tr, -@@ -1017,6 +1116,7 @@ const PrepopulatedEngine* const engines_ +@@ -1017,6 +1210,8 @@ const PrepopulatedEngine* const engines_ // Trinidad and Tobago const PrepopulatedEngine* const engines_TT[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -1027,6 +1127,7 @@ const PrepopulatedEngine* const engines_ +@@ -1027,6 +1222,8 @@ const PrepopulatedEngine* const engines_ // Taiwan const PrepopulatedEngine* const engines_TW[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &yahoo_tw, -@@ -1038,6 +1139,7 @@ const PrepopulatedEngine* const engines_ +@@ -1038,6 +1235,8 @@ const PrepopulatedEngine* const engines_ // Tanzania const PrepopulatedEngine* const engines_TZ[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -1048,6 +1150,7 @@ const PrepopulatedEngine* const engines_ +@@ -1048,6 +1247,8 @@ const PrepopulatedEngine* const engines_ // Ukraine const PrepopulatedEngine* const engines_UA[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &yandex_ua, -@@ -1059,6 +1162,7 @@ const PrepopulatedEngine* const engines_ +@@ -1059,6 +1260,8 @@ const PrepopulatedEngine* const engines_ // United States const PrepopulatedEngine* const engines_US[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -1069,6 +1173,7 @@ const PrepopulatedEngine* const engines_ +@@ -1069,6 +1272,8 @@ const PrepopulatedEngine* const engines_ // Uruguay const PrepopulatedEngine* const engines_UY[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -1079,6 +1184,7 @@ const PrepopulatedEngine* const engines_ +@@ -1079,6 +1284,8 @@ const PrepopulatedEngine* const engines_ // Venezuela const PrepopulatedEngine* const engines_VE[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &yahoo_ve, -@@ -1089,6 +1195,7 @@ const PrepopulatedEngine* const engines_ +@@ -1089,6 +1296,8 @@ const PrepopulatedEngine* const engines_ // Vietnam const PrepopulatedEngine* const engines_VN[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &coccoc, -@@ -1100,6 +1207,7 @@ const PrepopulatedEngine* const engines_ +@@ -1100,6 +1309,8 @@ const PrepopulatedEngine* const engines_ // Yemen const PrepopulatedEngine* const engines_YE[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -1110,6 +1218,7 @@ const PrepopulatedEngine* const engines_ +@@ -1110,6 +1321,8 @@ const PrepopulatedEngine* const engines_ // South Africa const PrepopulatedEngine* const engines_ZA[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, -@@ -1120,6 +1229,7 @@ const PrepopulatedEngine* const engines_ +@@ -1120,6 +1333,8 @@ const PrepopulatedEngine* const engines_ // Zimbabwe const PrepopulatedEngine* const engines_ZW[] = { &searx, + &startpage, ++ &qwant, &duckduckgo, &google, &bing, diff --git a/patches/ungoogled-chromium-android/Disable-contextual-search.patch b/patches/ungoogled-chromium-android/Disable-contextual-search.patch index 4b59d31..1d2d969 100644 --- a/patches/ungoogled-chromium-android/Disable-contextual-search.patch +++ b/patches/ungoogled-chromium-android/Disable-contextual-search.patch @@ -8,7 +8,7 @@ Subject: Disable contextual search by default --- a/chrome/browser/profiles/profile.cc +++ b/chrome/browser/profiles/profile.cc -@@ -153,7 +153,7 @@ void Profile::RegisterProfilePrefs(user_ +@@ -188,7 +188,7 @@ void Profile::RegisterProfilePrefs(user_ #if defined(OS_ANDROID) registry->RegisterStringPref( prefs::kContextualSearchEnabled, diff --git a/patches/ungoogled-chromium-android/Mark-http-as-dangerous-mixed-content-warning.patch b/patches/ungoogled-chromium-android/Mark-http-as-dangerous-mixed-content-warning.patch new file mode 100644 index 0000000..7976a76 --- /dev/null +++ b/patches/ungoogled-chromium-android/Mark-http-as-dangerous-mixed-content-warning.patch @@ -0,0 +1,31 @@ +From: Wengling Chen +Date: Thu, 28 May 2020 01:13:08 -0400 +Subject: Enable legacy TLS warnings and mark-http-as-dangerous by default + +--- + components/security_state/core/features.cc | 2 +- + components/security_state/core/security_state.cc | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +--- a/components/security_state/core/features.cc ++++ b/components/security_state/core/features.cc +@@ -16,7 +16,7 @@ const char kMarkHttpAsParameterWarningAn + const char kMarkHttpAsParameterDangerWarning[] = "danger-warning"; + + const base::Feature kLegacyTLSWarnings{"LegacyTLSWarnings", +- base::FEATURE_DISABLED_BY_DEFAULT}; ++ base::FEATURE_ENABLED_BY_DEFAULT}; + + const base::Feature kSafetyTipUI{"SafetyTip", + base::FEATURE_DISABLED_BY_DEFAULT}; +--- a/components/security_state/core/security_state.cc ++++ b/components/security_state/core/security_state.cc +@@ -42,7 +42,7 @@ SecurityLevel GetSecurityLevelForNonSecu + + // Default to dangerous on editing form fields and otherwise + // warning. +- return input_events.insecure_field_edited ? DANGEROUS : WARNING; ++ return DANGEROUS; + } + + SecurityLevel GetSecurityLevelForDisplayedMixedContent(bool suppress_warning) { diff --git a/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gcm.patch b/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gcm.patch index 398ab0e..439d171 100644 --- a/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gcm.patch +++ b/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gcm.patch @@ -3,19 +3,20 @@ Date: Sat, 2 Nov 2019 09:29:52 +0100 Subject: Remove dependency on com.google.android.gcm --- - third_party/android_sdk/BUILD.gn | 3 + third_party/android_sdk/BUILD.gn | 4 - third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/external/client/android2/AndroidManifest.xml | 35 ---------- third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidMessageReceiverService.java | 17 ---- third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidMessageSenderService.java | 3 - 4 files changed, 1 insertion(+), 57 deletions(-) + 4 files changed, 1 insertion(+), 58 deletions(-) --- a/third_party/android_sdk/BUILD.gn +++ b/third_party/android_sdk/BUILD.gn -@@ -63,7 +63,4 @@ if (enable_java_templates) { +@@ -64,8 +64,4 @@ if (enable_java_templates) { testonly = true sources = [ "//third_party/android_sdk/public/extras/chromium/support/src/org/chromium/android/support/PackageManagerWrapper.java" ] } - android_java_prebuilt("android_gcm_java") { +- skip_jetify = true - jar_path = "//third_party/android_sdk/public/extras/google/gcm/gcm-client/dist/gcm.jar" - } } diff --git a/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.auth.patch b/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.auth.patch index bc0eb51..2e2c031 100644 --- a/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.auth.patch +++ b/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.auth.patch @@ -4,19 +4,21 @@ Subject: Remove dependency on com.google.android.gms.auth --- chrome/android/BUILD.gn | 1 + components/background_task_scheduler/BUILD.gn | 1 components/signin/core/browser/android/BUILD.gn | 1 - components/signin/core/browser/android/java/src/org/chromium/components/signin/AccountIdProvider.java | 7 - - components/signin/core/browser/android/java/src/org/chromium/components/signin/SystemAccountManagerDelegate.java | 12 -- + components/signin/core/browser/android/java/src/org/chromium/components/signin/SystemAccountManagerDelegate.java | 34 ------- content/public/android/BUILD.gn | 1 - content/public/android/java/src/org/chromium/content/browser/sms/SmsReceiver.java | 38 -------- - content/public/android/java/src/org/chromium/content/browser/sms/Wrappers.java | 10 -- - third_party/android_deps/BUILD.gn | 44 ---------- + content/public/android/java/src/org/chromium/content/browser/sms/SmsUserConsentReceiver.java | 45 --------- + content/public/android/java/src/org/chromium/content/browser/sms/SmsVerificationReceiver.java | 34 ------- + content/public/android/java/src/org/chromium/content/browser/sms/Wrappers.java | 14 -- + content/test/BUILD.gn | 1 + third_party/android_deps/BUILD.gn | 47 ---------- third_party/robolectric/BUILD.gn | 1 - 9 files changed, 4 insertions(+), 111 deletions(-) + 11 files changed, 6 insertions(+), 174 deletions(-) --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -222,7 +222,6 @@ android_library("chrome_java") { +@@ -262,7 +262,6 @@ android_library("chrome_java") { ":partner_location_descriptor_proto_java", ":update_proto_java", ":usage_stats_proto_java", @@ -34,25 +36,9 @@ Subject: Remove dependency on com.google.android.gms.auth "$google_play_services_package:google_play_services_base_java", "$google_play_services_package:google_play_services_basement_java", "//base:base_java", ---- a/components/signin/core/browser/android/java/src/org/chromium/components/signin/AccountIdProvider.java -+++ b/components/signin/core/browser/android/java/src/org/chromium/components/signin/AccountIdProvider.java -@@ -48,12 +48,7 @@ public class AccountIdProvider { - * Google Play services is available. - */ - public boolean canBeUsed() { -- // TODO(http://crbug.com/577190): Remove StrictMode override. -- try (StrictModeContext ignored = StrictModeContext.allowDiskWrites()) { -- int resultCode = GoogleApiAvailability.getInstance().isGooglePlayServicesAvailable( -- ContextUtils.getApplicationContext()); -- return resultCode == ConnectionResult.SUCCESS; -- } -+ return false; - } - - /** --- a/components/signin/core/browser/android/java/src/org/chromium/components/signin/SystemAccountManagerDelegate.java +++ b/components/signin/core/browser/android/java/src/org/chromium/components/signin/SystemAccountManagerDelegate.java -@@ -82,17 +82,7 @@ public class SystemAccountManagerDelegat +@@ -83,17 +83,7 @@ public class SystemAccountManagerDelegat } protected void checkCanUseGooglePlayServices() throws AccountManagerDelegateException { @@ -71,99 +57,69 @@ Subject: Remove dependency on com.google.android.gms.auth } @Override ---- a/content/public/android/BUILD.gn -+++ b/content/public/android/BUILD.gn -@@ -49,7 +49,6 @@ action("generate_sandboxed_service_srcja - android_library("content_java") { - deps = [ - ":content_java_resources", -- "$google_play_services_package:google_play_services_auth_api_phone_java", - "$google_play_services_package:google_play_services_base_java", - "$google_play_services_package:google_play_services_basement_java", - "$google_play_services_package:google_play_services_tasks_java", ---- a/content/public/android/java/src/org/chromium/content/browser/sms/SmsReceiver.java -+++ b/content/public/android/java/src/org/chromium/content/browser/sms/SmsReceiver.java -@@ -11,11 +11,6 @@ import android.content.IntentFilter; +@@ -127,15 +117,6 @@ public class SystemAccountManagerDelegat - import androidx.annotation.VisibleForTesting; - --import com.google.android.gms.auth.api.phone.SmsRetriever; --import com.google.android.gms.common.api.CommonStatusCodes; --import com.google.android.gms.common.api.Status; --import com.google.android.gms.tasks.Task; -- - import org.chromium.base.ContextUtils; - import org.chromium.base.Log; - import org.chromium.base.annotations.CalledByNative; -@@ -52,7 +47,6 @@ public class SmsReceiver extends Broadca - // this registration expire after the SMS message is received. - if (DEBUG) Log.d(TAG, "Registering intent filters."); - IntentFilter filter = new IntentFilter(); -- filter.addAction(SmsRetriever.SMS_RETRIEVED_ACTION); - mContext.registerReceiver(this, filter); - } - -@@ -77,49 +71,19 @@ public class SmsReceiver extends Broadca - return; - } - -- if (!SmsRetriever.SMS_RETRIEVED_ACTION.equals(intent.getAction())) { -- return; -- } -- - if (intent.getExtras() == null) { - return; - } - -- final Status status; -- + @Override + public void invalidateAuthToken(String authToken) throws AuthException { - try { -- status = (Status) intent.getParcelableExtra(SmsRetriever.EXTRA_STATUS); -- } catch (Throwable e) { -- if (DEBUG) Log.d(TAG, "Error getting parceable"); -- return; -- } -- -- switch (status.getStatusCode()) { -- case CommonStatusCodes.SUCCESS: -- String message = intent.getExtras().getString(SmsRetriever.EXTRA_SMS_MESSAGE); -- if (DEBUG) Log.d(TAG, "Got message: %s!", message); -- SmsReceiverJni.get().onReceive(mSmsProviderAndroid, message); -- break; -- case CommonStatusCodes.TIMEOUT: -- if (DEBUG) Log.d(TAG, "Timeout"); -- SmsReceiverJni.get().onTimeout(mSmsProviderAndroid); -- break; +- GoogleAuthUtil.clearToken(ContextUtils.getApplicationContext(), authToken); +- } catch (GooglePlayServicesAvailabilityException ex) { +- throw new AuthException(AuthException.NONTRANSIENT, ex); +- } catch (GoogleAuthException ex) { +- throw new AuthException(AuthException.NONTRANSIENT, ex); +- } catch (IOException ex) { +- throw new AuthException(AuthException.TRANSIENT, ex); - } -+ if (DEBUG) Log.d(TAG, "Error getting parceable"); } - @CalledByNative - private void listen() { -- Wrappers.SmsRetrieverClientWrapper client = getClient(); -- Task task = client.startSmsRetriever(); -- - if (DEBUG) Log.d(TAG, "Installed task"); + @Override +@@ -214,22 +195,13 @@ public class SystemAccountManagerDelegat + @Nullable + @Override + public String getAccountGaiaId(String accountEmail) { +- try { +- return GoogleAuthUtil.getAccountId(ContextUtils.getApplicationContext(), accountEmail); +- } catch (IOException | GoogleAuthException ex) { +- Log.e(TAG, "SystemAccountManagerDelegate.getAccountGaiaId", ex); +- return null; +- } ++ return null; } - private Wrappers.SmsRetrieverClientWrapper getClient() { -- if (mClient != null) { -- return mClient; + @Override + public boolean isGooglePlayServicesAvailable() { + // TODO(http://crbug.com/577190): Remove StrictMode override. +- try (StrictModeContext ignored = StrictModeContext.allowDiskWrites()) { +- int resultCode = GoogleApiAvailability.getInstance().isGooglePlayServicesAvailable( +- ContextUtils.getApplicationContext()); +- return resultCode == ConnectionResult.SUCCESS; - } -- mClient = new Wrappers.SmsRetrieverClientWrapper(SmsRetriever.getClient(mContext)); - return mClient; ++ return false; } + protected boolean hasGetAccountsPermission() { +--- a/content/public/android/BUILD.gn ++++ b/content/public/android/BUILD.gn +@@ -75,7 +75,6 @@ action("generate_sandboxed_service_srcja + android_library("content_java") { + deps = [ + ":content_java_resources", +- "$google_play_services_package:google_play_services_auth_api_phone_java", + "$google_play_services_package:google_play_services_base_java", + "$google_play_services_package:google_play_services_basement_java", + "$google_play_services_package:google_play_services_tasks_java", --- a/third_party/android_deps/BUILD.gn +++ b/third_party/android_deps/BUILD.gn -@@ -851,50 +851,6 @@ java_prebuilt("com_android_tools_build_j +@@ -1134,53 +1134,6 @@ java_prebuilt("com_android_tools_build_j } # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. -android_aar_prebuilt("google_play_services_auth_java") { -- aar_path = "libs/com_google_android_gms_play_services_auth/play-services-auth-15.0.1.aar" +- aar_path = "libs/com_google_android_gms_play_services_auth/play-services-auth-17.0.0.aar" - info_path = "libs/com_google_android_gms_play_services_auth/com_google_android_gms_play_services_auth.info" - deps = [ +- ":androidx_fragment_fragment_java", +- ":androidx_loader_loader_java", - ":google_play_services_auth_api_phone_java", - ":google_play_services_auth_base_java", - ":google_play_services_base_java", @@ -177,7 +133,7 @@ Subject: Remove dependency on com.google.android.gms.auth - -# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. -android_aar_prebuilt("google_play_services_auth_api_phone_java") { -- aar_path = "libs/com_google_android_gms_play_services_auth_api_phone/play-services-auth-api-phone-15.0.1.aar" +- aar_path = "libs/com_google_android_gms_play_services_auth_api_phone/play-services-auth-api-phone-17.1.0.aar" - info_path = "libs/com_google_android_gms_play_services_auth_api_phone/com_google_android_gms_play_services_auth_api_phone.info" - deps = [ - ":google_play_services_base_java", @@ -191,9 +147,10 @@ Subject: Remove dependency on com.google.android.gms.auth - -# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. -android_aar_prebuilt("google_play_services_auth_base_java") { -- aar_path = "libs/com_google_android_gms_play_services_auth_base/play-services-auth-base-15.0.1.aar" +- aar_path = "libs/com_google_android_gms_play_services_auth_base/play-services-auth-base-17.0.0.aar" - info_path = "libs/com_google_android_gms_play_services_auth_base/com_google_android_gms_play_services_auth_base.info" - deps = [ +- ":androidx_collection_collection_java", - ":google_play_services_base_java", - ":google_play_services_basement_java", - ":google_play_services_tasks_java", @@ -205,11 +162,11 @@ Subject: Remove dependency on com.google.android.gms.auth - -# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. android_aar_prebuilt("google_play_services_base_java") { - aar_path = "libs/com_google_android_gms_play_services_base/play-services-base-15.0.1.aar" + aar_path = "libs/com_google_android_gms_play_services_base/play-services-base-17.0.0.aar" info_path = "libs/com_google_android_gms_play_services_base/com_google_android_gms_play_services_base.info" --- a/third_party/robolectric/BUILD.gn +++ b/third_party/robolectric/BUILD.gn -@@ -939,7 +939,6 @@ java_library("shadows_play_services_java +@@ -1162,7 +1162,6 @@ java_library("shadows_play_services_java ":robolectric_shadowapi_java", ":robolectric_utils_java", ":shadows_core_java", @@ -241,14 +198,196 @@ Subject: Remove dependency on com.google.android.gms.auth } public void setContext(SmsReceiverContext context) { -@@ -35,10 +31,6 @@ class Wrappers { +@@ -35,14 +31,6 @@ class Wrappers { public SmsReceiverContext getContext() { return mContext; } - - public Task startSmsRetriever() { - return mSmsRetrieverClient.startSmsRetriever(); +- } +- +- public Task startSmsUserConsent(String senderAddress) { +- return mSmsRetrieverClient.startSmsUserConsent(senderAddress); - } } /** +--- a/components/background_task_scheduler/BUILD.gn ++++ b/components/background_task_scheduler/BUILD.gn +@@ -117,7 +117,6 @@ if (is_android) { + ] + + deps = [ +- "$google_play_services_package:google_play_services_auth_base_java", + "$google_play_services_package:google_play_services_base_java", + "$google_play_services_package:google_play_services_basement_java", + "$google_play_services_package:google_play_services_tasks_java", +--- a/content/public/android/java/src/org/chromium/content/browser/sms/SmsUserConsentReceiver.java ++++ b/content/public/android/java/src/org/chromium/content/browser/sms/SmsUserConsentReceiver.java +@@ -12,11 +12,6 @@ import android.content.IntentFilter; + + import androidx.annotation.VisibleForTesting; + +-import com.google.android.gms.auth.api.phone.SmsRetriever; +-import com.google.android.gms.common.api.CommonStatusCodes; +-import com.google.android.gms.common.api.Status; +-import com.google.android.gms.tasks.Task; +- + import org.chromium.base.ContextUtils; + import org.chromium.base.Log; + import org.chromium.base.annotations.CalledByNative; +@@ -55,7 +50,6 @@ public class SmsUserConsentReceiver exte + // this registration expire after the SMS message is received. + if (DEBUG) Log.d(TAG, "Registering intent filters."); + IntentFilter filter = new IntentFilter(); +- filter.addAction(SmsRetriever.SMS_RETRIEVED_ACTION); + mContext.registerReceiver(this, filter); + } + +@@ -82,61 +76,24 @@ public class SmsUserConsentReceiver exte + return; + } + +- if (!SmsRetriever.SMS_RETRIEVED_ACTION.equals(intent.getAction())) { +- return; +- } +- + if (intent.getExtras() == null) { + return; + } + +- final Status status; +- +- try { +- status = (Status) intent.getParcelableExtra(SmsRetriever.EXTRA_STATUS); +- } catch (Throwable e) { +- if (DEBUG) Log.d(TAG, "Error getting parceable."); +- return; +- } +- +- switch (status.getStatusCode()) { +- case CommonStatusCodes.SUCCESS: +- Intent consentIntent = +- intent.getExtras().getParcelable(SmsRetriever.EXTRA_CONSENT_INTENT); +- try { +- mWindowAndroid.showIntent(consentIntent, +- (window, resultCode, data) -> onConsentResult(resultCode, data), null); +- } catch (android.content.ActivityNotFoundException e) { +- if (DEBUG) Log.d(TAG, "Error starting activity for result."); +- } +- break; +- case CommonStatusCodes.TIMEOUT: +- if (DEBUG) Log.d(TAG, "Timeout"); +- SmsUserConsentReceiverJni.get().onTimeout(mSmsProviderAndroid); +- break; +- } + } + + void onConsentResult(int resultCode, Intent data) { +- if (resultCode == Activity.RESULT_OK) { +- String message = data.getStringExtra(SmsRetriever.EXTRA_SMS_MESSAGE); +- SmsUserConsentReceiverJni.get().onReceive(mSmsProviderAndroid, message); +- } else if (resultCode == Activity.RESULT_CANCELED) { + if (DEBUG) Log.d(TAG, "Activity result cancelled."); +- } + } + + @CalledByNative + private void listen(WindowAndroid windowAndroid) { + mWindowAndroid = windowAndroid; +- Task task = getClient().startSmsUserConsent(null); + if (DEBUG) Log.d(TAG, "Installed task"); + } + + private Wrappers.SmsRetrieverClientWrapper getClient() { +- if (mClient != null) return mClient; +- mClient = new Wrappers.SmsRetrieverClientWrapper(SmsRetriever.getClient(mContext)); +- return mClient; ++ return null; + } + + @VisibleForTesting +--- a/content/public/android/java/src/org/chromium/content/browser/sms/SmsVerificationReceiver.java ++++ b/content/public/android/java/src/org/chromium/content/browser/sms/SmsVerificationReceiver.java +@@ -11,11 +11,6 @@ import android.content.IntentFilter; + + import androidx.annotation.VisibleForTesting; + +-import com.google.android.gms.auth.api.phone.SmsRetriever; +-import com.google.android.gms.common.api.CommonStatusCodes; +-import com.google.android.gms.common.api.Status; +-import com.google.android.gms.tasks.Task; +- + import org.chromium.base.ContextUtils; + import org.chromium.base.Log; + import org.chromium.base.annotations.CalledByNative; +@@ -52,7 +47,6 @@ public class SmsVerificationReceiver ext + // this registration expire after the SMS message is received. + if (DEBUG) Log.d(TAG, "Registering intent filters."); + IntentFilter filter = new IntentFilter(); +- filter.addAction(SmsRetriever.SMS_RETRIEVED_ACTION); + mContext.registerReceiver(this, filter); + } + +@@ -77,40 +71,15 @@ public class SmsVerificationReceiver ext + return; + } + +- if (!SmsRetriever.SMS_RETRIEVED_ACTION.equals(intent.getAction())) { +- return; +- } +- + if (intent.getExtras() == null) { + return; + } + +- final Status status; +- +- try { +- status = (Status) intent.getParcelableExtra(SmsRetriever.EXTRA_STATUS); +- } catch (Throwable e) { +- if (DEBUG) Log.d(TAG, "Error getting parceable"); +- return; +- } +- +- switch (status.getStatusCode()) { +- case CommonStatusCodes.SUCCESS: +- String message = intent.getExtras().getString(SmsRetriever.EXTRA_SMS_MESSAGE); +- if (DEBUG) Log.d(TAG, "Got message: %s!", message); +- SmsVerificationReceiverJni.get().onReceive(mSmsProviderAndroid, message); +- break; +- case CommonStatusCodes.TIMEOUT: +- if (DEBUG) Log.d(TAG, "Timeout"); +- SmsVerificationReceiverJni.get().onTimeout(mSmsProviderAndroid); +- break; +- } + } + + @CalledByNative + private void listen() { + Wrappers.SmsRetrieverClientWrapper client = getClient(); +- Task task = client.startSmsRetriever(); + + if (DEBUG) Log.d(TAG, "Installed task"); + } +@@ -119,8 +88,7 @@ public class SmsVerificationReceiver ext + if (mClient != null) { + return mClient; + } +- mClient = new Wrappers.SmsRetrieverClientWrapper(SmsRetriever.getClient(mContext)); +- return mClient; ++ return null; + } + + @VisibleForTesting +--- a/content/test/BUILD.gn ++++ b/content/test/BUILD.gn +@@ -2418,7 +2418,6 @@ if (is_android) { + testonly = true + sources = content_java_sources_needing_jni + deps = [ +- "$google_play_services_package:google_play_services_auth_api_phone_java", + "$google_play_services_package:google_play_services_base_java", + "$google_play_services_package:google_play_services_basement_java", + "$google_play_services_package:google_play_services_tasks_java", diff --git a/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.cast.patch b/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.cast.patch index 34a9bdc..052941a 100644 --- a/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.cast.patch +++ b/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.cast.patch @@ -23,12 +23,12 @@ Subject: Remove dependency on com.google.android.gms.cast chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/caf/remoting/RemotingSessionController.java | 21 - chrome/android/java/AndroidManifest.xml | 28 -- chrome/test/android/cast_emulator/BUILD.gn | 1 - third_party/android_deps/BUILD.gn | 33 -- - 21 files changed, 26 insertions(+), 786 deletions(-) + third_party/android_deps/BUILD.gn | 39 --- + 21 files changed, 26 insertions(+), 792 deletions(-) --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -224,8 +224,6 @@ android_library("chrome_java") { +@@ -264,8 +264,6 @@ android_library("chrome_java") { ":usage_stats_proto_java", "$google_play_services_package:google_play_services_base_java", "$google_play_services_package:google_play_services_basement_java", @@ -37,7 +37,7 @@ Subject: Remove dependency on com.google.android.gms.cast "$google_play_services_package:google_play_services_fido_java", "$google_play_services_package:google_play_services_iid_java", "$google_play_services_package:google_play_services_tasks_java", -@@ -631,8 +629,6 @@ junit_binary("chrome_junit_tests") { +@@ -703,8 +701,6 @@ junit_binary("chrome_junit_tests") { ":partner_location_descriptor_proto_java", "$google_play_services_package:google_play_services_base_java", "$google_play_services_package:google_play_services_basement_java", @@ -46,7 +46,7 @@ Subject: Remove dependency on com.google.android.gms.cast "$google_play_services_package:google_play_services_fido_java", "//base:base_java", "//base:base_java_test_support", -@@ -742,8 +738,6 @@ android_library("chrome_test_java") { +@@ -818,8 +814,6 @@ android_library("chrome_test_java") { ":partner_location_descriptor_proto_java", "$google_play_services_package:google_play_services_base_java", "$google_play_services_package:google_play_services_basement_java", @@ -117,9 +117,9 @@ Subject: Remove dependency on com.google.android.gms.cast } --- a/chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/MediaSink.java +++ b/chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/MediaSink.java -@@ -9,41 +9,24 @@ import android.support.v7.media.MediaRou - - import androidx.annotation.Nullable; +@@ -8,41 +8,24 @@ import androidx.annotation.Nullable; + import androidx.mediarouter.media.MediaRouter; + import androidx.mediarouter.media.MediaRouter.RouteInfo; -import com.google.android.gms.cast.CastDevice; - @@ -161,7 +161,7 @@ Subject: Remove dependency on com.google.android.gms.cast } /** -@@ -53,17 +36,8 @@ public class MediaSink { +@@ -52,17 +35,8 @@ public class MediaSink { return CAST_SINK_URN_PREFIX + getId(); } @@ -179,7 +179,7 @@ Subject: Remove dependency on com.google.android.gms.cast return false; } -@@ -71,23 +45,15 @@ public class MediaSink { +@@ -70,23 +44,15 @@ public class MediaSink { public int hashCode() { final int prime = 31; int result = 1; @@ -204,7 +204,7 @@ Subject: Remove dependency on com.google.android.gms.cast } /** -@@ -98,10 +64,6 @@ public class MediaSink { +@@ -97,10 +63,6 @@ public class MediaSink { */ @Nullable public static MediaSink fromSinkId(String sinkId, MediaRouter router) { @@ -614,9 +614,9 @@ Subject: Remove dependency on com.google.android.gms.cast private void notifyCallback(NotifyCallbackAction action) { --- a/chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/caf/CafBaseMediaRouteProvider.java +++ b/chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/caf/CafBaseMediaRouteProvider.java -@@ -12,9 +12,6 @@ import androidx.annotation.NonNull; - import androidx.annotation.Nullable; - import androidx.annotation.VisibleForTesting; +@@ -12,9 +12,6 @@ import androidx.mediarouter.media.MediaR + import androidx.mediarouter.media.MediaRouter; + import androidx.mediarouter.media.MediaRouter.RouteInfo; -import com.google.android.gms.cast.framework.CastSession; -import com.google.android.gms.cast.framework.SessionManagerListener; @@ -754,16 +754,16 @@ Subject: Remove dependency on com.google.android.gms.cast --- a/chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/caf/CafMediaRouteProvider.java +++ b/chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/caf/CafMediaRouteProvider.java -@@ -12,8 +12,6 @@ import androidx.annotation.NonNull; - import androidx.annotation.Nullable; +@@ -11,8 +11,6 @@ import androidx.annotation.Nullable; import androidx.annotation.VisibleForTesting; + import androidx.mediarouter.media.MediaRouter; -import com.google.android.gms.cast.framework.CastSession; - import org.chromium.base.Log; import org.chromium.chrome.browser.media.router.ChromeMediaRouter; import org.chromium.chrome.browser.media.router.ClientRecord; -@@ -149,20 +147,6 @@ public class CafMediaRouteProvider exten +@@ -148,20 +146,6 @@ public class CafMediaRouteProvider exten } @Override @@ -787,8 +787,8 @@ Subject: Remove dependency on com.google.android.gms.cast --- a/chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/caf/CafMessageHandler.java +++ b/chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/caf/CafMessageHandler.java @@ -13,10 +13,6 @@ import android.util.SparseArray; - import androidx.annotation.VisibleForTesting; + import androidx.collection.ArrayMap; -import com.google.android.gms.cast.ApplicationMetadata; -import com.google.android.gms.common.api.PendingResult; @@ -930,9 +930,9 @@ Subject: Remove dependency on com.google.android.gms.cast } --- a/chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/caf/CastMediaSource.java +++ b/chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/caf/CastMediaSource.java -@@ -9,8 +9,6 @@ import android.support.v7.media.MediaRou - +@@ -9,8 +9,6 @@ import android.net.Uri; import androidx.annotation.Nullable; + import androidx.mediarouter.media.MediaRouteSelector; -import com.google.android.gms.cast.CastMediaControlIntent; - @@ -1144,7 +1144,7 @@ Subject: Remove dependency on com.google.android.gms.cast * Compares two origins. Empty origin strings correspond to unique origins in --- a/chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/caf/remoting/CafExpandedControllerActivity.java +++ b/chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/caf/remoting/CafExpandedControllerActivity.java -@@ -44,15 +44,11 @@ public class CafExpandedControllerActivi +@@ -45,15 +45,11 @@ public class CafExpandedControllerActivi @Override public void play() { if (!mSessionController.isConnected()) return; @@ -1160,7 +1160,7 @@ Subject: Remove dependency on com.google.android.gms.cast } @Override -@@ -70,27 +66,19 @@ public class CafExpandedControllerActivi +@@ -71,27 +67,19 @@ public class CafExpandedControllerActivi @Override public void seekTo(long pos) { if (!mSessionController.isConnected()) return; @@ -1189,7 +1189,7 @@ Subject: Remove dependency on com.google.android.gms.cast return flags; } }; -@@ -179,20 +167,10 @@ public class CafExpandedControllerActivi +@@ -180,20 +168,10 @@ public class CafExpandedControllerActivi private void updateUi() { if (!mSessionController.isConnected()) return; @@ -1328,8 +1328,8 @@ Subject: Remove dependency on com.google.android.gms.cast --- a/chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/caf/remoting/RemotingMediaSource.java +++ b/chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/caf/remoting/RemotingMediaSource.java @@ -12,8 +12,6 @@ import android.util.Base64; - import androidx.annotation.Nullable; + import androidx.mediarouter.media.MediaRouteSelector; -import com.google.android.gms.cast.CastMediaControlIntent; - @@ -1402,7 +1402,7 @@ Subject: Remove dependency on com.google.android.gms.cast } --- a/chrome/android/java/AndroidManifest.xml +++ b/chrome/android/java/AndroidManifest.xml -@@ -172,12 +172,6 @@ by a child template that "extends" this +@@ -173,12 +173,6 @@ by a child template that "extends" this {% endif %} @@ -1415,7 +1415,7 @@ Subject: Remove dependency on com.google.android.gms.cast +@@ -1232,18 +1216,6 @@ android:value="true" /> {% endif %} {% block extra_application_definitions %} @@ -1460,18 +1460,19 @@ Subject: Remove dependency on com.google.android.gms.cast - "$google_play_services_package:google_play_services_cast_java", "//base:base_java", "//third_party/android_deps:android_support_v7_appcompat_java", - "//third_party/android_deps:com_android_support_mediarouter_v7_java", + "//third_party/android_deps:androidx_mediarouter_mediarouter_java", --- a/third_party/android_deps/BUILD.gn +++ b/third_party/android_deps/BUILD.gn -@@ -875,39 +875,6 @@ android_aar_prebuilt("google_play_servic +@@ -1165,45 +1165,6 @@ android_aar_prebuilt("google_play_servic } # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. -android_aar_prebuilt("google_play_services_cast_java") { -- aar_path = "libs/com_google_android_gms_play_services_cast/play-services-cast-16.0.1.aar" +- aar_path = "libs/com_google_android_gms_play_services_cast/play-services-cast-17.0.0.aar" - info_path = "libs/com_google_android_gms_play_services_cast/com_google_android_gms_play_services_cast.info" - deps = [ -- ":com_android_support_mediarouter_v7_java", +- ":androidx_core_core_java", +- ":androidx_mediarouter_mediarouter_java", - ":google_play_services_base_java", - ":google_play_services_basement_java", - ":google_play_services_flags_java", @@ -1484,11 +1485,16 @@ Subject: Remove dependency on com.google.android.gms.cast - -# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. -android_aar_prebuilt("google_play_services_cast_framework_java") { -- aar_path = "libs/com_google_android_gms_play_services_cast_framework/play-services-cast-framework-16.0.1.aar" +- aar_path = "libs/com_google_android_gms_play_services_cast_framework/play-services-cast-framework-17.0.0.aar" - info_path = "libs/com_google_android_gms_play_services_cast_framework/com_google_android_gms_play_services_cast_framework.info" - deps = [ -- ":com_android_support_mediarouter_v7_java", -- ":com_android_support_recyclerview_v7_java", +- ":androidx_appcompat_appcompat_java", +- ":androidx_collection_collection_java", +- ":androidx_core_core_java", +- ":androidx_fragment_fragment_java", +- ":androidx_media_media_java", +- ":androidx_mediarouter_mediarouter_java", +- ":androidx_recyclerview_recyclerview_java", - ":google_play_services_base_java", - ":google_play_services_basement_java", - ":google_play_services_cast_java", @@ -1501,5 +1507,5 @@ Subject: Remove dependency on com.google.android.gms.cast - -# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. android_aar_prebuilt("google_play_services_fido_java") { - aar_path = "libs/com_google_android_gms_play_services_fido/play-services-fido-15.0.1.aar" + aar_path = "libs/com_google_android_gms_play_services_fido/play-services-fido-18.1.0.aar" info_path = "libs/com_google_android_gms_play_services_fido/com_google_android_gms_play_services_fido.info" diff --git a/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.common-auth-signin-dynamic-com.google.android.gms.tasks.patch b/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.common-auth-signin-dynamic-com.google.android.gms.tasks.patch index b20274c..706c598 100644 --- a/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.common-auth-signin-dynamic-com.google.android.gms.tasks.patch +++ b/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.common-auth-signin-dynamic-com.google.android.gms.tasks.patch @@ -5,7 +5,8 @@ Subject: Remove dependency on com.google.android.gms.tasks --- - chrome/android/BUILD.gn | 5 + chrome/android/BUILD.gn | 8 + chrome/android/features/cablev2_authenticator/internal/BUILD.gn | 2 chrome/android/features/media_router/BUILD.gn | 2 chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/ChromeMediaRouter.java | 7 chrome/android/java/AndroidManifest.xml | 9 - @@ -19,26 +20,35 @@ Subject: Remove dependency on chrome/android/java/src/org/chromium/chrome/browser/omaha/UpdateStatusProvider.java | 10 - chrome/android/java/src/org/chromium/chrome/browser/password_manager/PasswordManagerLauncher.java | 4 chrome/test/android/BUILD.gn | 2 - components/background_task_scheduler/BUILD.gn | 10 - + components/background_task_scheduler/BUILD.gn | 3 + components/background_task_scheduler/internal/BUILD.gn | 6 components/signin/core/browser/android/BUILD.gn | 2 - components/signin/core/browser/android/java/src/org/chromium/components/signin/AccountIdProvider.java | 3 components/signin/core/browser/android/java/src/org/chromium/components/signin/GmsAvailabilityException.java | 4 components/signin/core/browser/android/java/src/org/chromium/components/signin/SystemAccountManagerDelegate.java | 3 content/public/android/BUILD.gn | 3 - content/test/BUILD.gn | 4 + content/test/BUILD.gn | 3 device/BUILD.gn | 2 remoting/android/client_java_tmpl.gni | 3 services/BUILD.gn | 4 services/device/geolocation/BUILD.gn | 2 services/shape_detection/BUILD.gn | 2 - third_party/android_deps/BUILD.gn | 34 ---- third_party/cacheinvalidation/BUILD.gn | 1 third_party/robolectric/BUILD.gn | 2 - 29 files changed, 17 insertions(+), 263 deletions(-) + 29 files changed, 17 insertions(+), 229 deletions(-) --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -625,8 +625,6 @@ junit_binary("chrome_junit_tests") { +@@ -262,9 +262,6 @@ android_library("chrome_java") { + ":partner_location_descriptor_proto_java", + ":update_proto_java", + ":usage_stats_proto_java", +- "$google_play_services_package:google_play_services_base_java", +- "$google_play_services_package:google_play_services_basement_java", +- "$google_play_services_package:google_play_services_tasks_java", + "//base:base_java", + "//base:jni_java", + "//chrome/android/features/cablev2_authenticator:public_java", +@@ -695,8 +692,6 @@ junit_binary("chrome_junit_tests") { ":chrome_app_java_resources", ":chrome_java", ":partner_location_descriptor_proto_java", @@ -47,7 +57,7 @@ Subject: Remove dependency on "//base:base_java", "//base:base_java_test_support", "//base:base_junit_test_support", -@@ -733,9 +731,6 @@ android_library("chrome_test_java") { +@@ -807,9 +802,6 @@ android_library("chrome_test_java") { ":chrome_app_java_resources", ":chrome_test_util_java", ":partner_location_descriptor_proto_java", @@ -70,9 +80,9 @@ Subject: Remove dependency on "//chrome/android:chrome_java", --- a/chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/ChromeMediaRouter.java +++ b/chrome/android/features/media_router/java/src/org/chromium/chrome/browser/media/router/ChromeMediaRouter.java -@@ -9,9 +9,6 @@ import android.support.v7.media.MediaRou - import androidx.annotation.Nullable; +@@ -8,9 +8,6 @@ import androidx.annotation.Nullable; import androidx.annotation.VisibleForTesting; + import androidx.mediarouter.media.MediaRouter; -import com.google.android.gms.common.ConnectionResult; -import com.google.android.gms.common.GoogleApiAvailability; @@ -80,7 +90,7 @@ Subject: Remove dependency on import org.chromium.base.ContextUtils; import org.chromium.base.Log; import org.chromium.base.StrictModeContext; -@@ -44,9 +41,7 @@ public class ChromeMediaRouter implement +@@ -43,9 +40,7 @@ public class ChromeMediaRouter implement int googleApiAvailabilityResult = AppHooks.get().isGoogleApiAvailableWithMinApkVersion( MIN_GOOGLE_PLAY_SERVICES_APK_VERSION); @@ -93,7 +103,7 @@ Subject: Remove dependency on MediaRouteProvider cafProvider = CafMediaRouteProvider.create(manager); --- a/chrome/android/java/AndroidManifest.xml +++ b/chrome/android/java/AndroidManifest.xml -@@ -850,15 +850,6 @@ by a child template that "extends" this +@@ -851,15 +851,6 @@ by a child template that "extends" this @@ -111,7 +121,7 @@ Subject: Remove dependency on android:exported="false" --- a/chrome/android/java/src/org/chromium/chrome/browser/AppHooks.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/AppHooks.java -@@ -14,9 +14,6 @@ import android.view.View; +@@ -11,9 +11,6 @@ import android.view.View; import androidx.annotation.Nullable; import androidx.annotation.VisibleForTesting; @@ -121,7 +131,7 @@ Subject: Remove dependency on import org.chromium.base.Callback; import org.chromium.base.ContextUtils; import org.chromium.base.annotations.CalledByNative; -@@ -370,16 +367,7 @@ public abstract class AppHooks { +@@ -335,16 +332,7 @@ public abstract class AppHooks { * same as {@link GoogleApiAvailability#isGooglePlayServicesAvailable()}. */ public int isGoogleApiAvailableWithMinApkVersion(int minApkVersion) { @@ -263,9 +273,9 @@ Subject: Remove dependency on -import com.google.android.gms.common.GoogleApiAvailability; - import org.chromium.base.ThreadUtils; - import org.chromium.base.metrics.CachedMetrics.ActionEvent; + import org.chromium.base.metrics.RecordUserAction; -@@ -97,7 +95,6 @@ public abstract class UserRecoverableErr +@@ -90,7 +88,6 @@ public abstract class UserRecoverableErr if (!sNotificationShown.getAndSet(true)) { return; } @@ -273,7 +283,7 @@ Subject: Remove dependency on } } -@@ -190,11 +187,7 @@ public abstract class UserRecoverableErr +@@ -183,11 +180,7 @@ public abstract class UserRecoverableErr cancelDialog(); } if (mDialog == null) { @@ -520,7 +530,7 @@ Subject: Remove dependency on @TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR2) --- a/chrome/test/android/BUILD.gn +++ b/chrome/test/android/BUILD.gn -@@ -177,8 +177,6 @@ android_library("chrome_java_test_suppor +@@ -200,8 +200,6 @@ android_library("chrome_java_test_suppor "javatests/src/org/chromium/chrome/test/util/browser/webapps/WebappTestPage.java", ] deps = [ @@ -531,37 +541,16 @@ Subject: Remove dependency on "//chrome/android:chrome_java", --- a/components/background_task_scheduler/BUILD.gn +++ b/components/background_task_scheduler/BUILD.gn -@@ -52,9 +52,6 @@ if (is_android) { - deps = [ - ":background_task_scheduler_task_ids_java", - ":scheduled_task_java", -- "$google_play_services_package:google_play_services_base_java", -- "$google_play_services_package:google_play_services_basement_java", -- "$google_play_services_package:google_play_services_tasks_java", - "//base:base_java", - "//content/public/android:content_java", - "//third_party/android_deps:androidx_annotation_annotation_java", -@@ -75,9 +72,6 @@ if (is_android) { - deps = [ - ":background_task_scheduler_java", - ":background_task_scheduler_task_ids_java", -- "$google_play_services_package:google_play_services_base_java", -- "$google_play_services_package:google_play_services_basement_java", -- "$google_play_services_package:google_play_services_tasks_java", - "//base:base_java", - "//base:base_java_test_support", - "//content/public/test/android:content_java_test_support", -@@ -105,10 +99,6 @@ if (is_android) { +@@ -117,9 +117,6 @@ if (is_android) { + ] deps = [ - ":background_task_scheduler_java", -- "$google_play_services_package:google_play_services_auth_base_java", - "$google_play_services_package:google_play_services_base_java", - "$google_play_services_package:google_play_services_basement_java", - "$google_play_services_package:google_play_services_tasks_java", + "internal:internal_java", + "internal:proto_java", "//base:base_java", - "//base:base_java_test_support", - "//base:base_junit_test_support", --- a/components/signin/core/browser/android/BUILD.gn +++ b/components/signin/core/browser/android/BUILD.gn @@ -14,8 +14,6 @@ generate_jni("jni_headers") { @@ -573,18 +562,6 @@ Subject: Remove dependency on "//base:base_java", "//base:jni_java", "//net/android:net_java", ---- a/components/signin/core/browser/android/java/src/org/chromium/components/signin/AccountIdProvider.java -+++ b/components/signin/core/browser/android/java/src/org/chromium/components/signin/AccountIdProvider.java -@@ -6,9 +6,6 @@ package org.chromium.components.signin; - - import androidx.annotation.VisibleForTesting; - --import com.google.android.gms.common.ConnectionResult; --import com.google.android.gms.common.GoogleApiAvailability; -- - import org.chromium.base.ContextUtils; - import org.chromium.base.Log; - import org.chromium.base.StrictModeContext; --- a/components/signin/core/browser/android/java/src/org/chromium/components/signin/GmsAvailabilityException.java +++ b/components/signin/core/browser/android/java/src/org/chromium/components/signin/GmsAvailabilityException.java @@ -4,8 +4,6 @@ @@ -604,21 +581,9 @@ Subject: Remove dependency on + return false; } } ---- a/components/signin/core/browser/android/java/src/org/chromium/components/signin/SystemAccountManagerDelegate.java -+++ b/components/signin/core/browser/android/java/src/org/chromium/components/signin/SystemAccountManagerDelegate.java -@@ -24,9 +24,6 @@ import android.os.PatternMatcher; - import android.os.Process; - import android.os.SystemClock; - --import com.google.android.gms.common.ConnectionResult; --import com.google.android.gms.common.GoogleApiAvailability; -- - import org.chromium.base.ApiCompatibilityUtils; - import org.chromium.base.Callback; - import org.chromium.base.ContextUtils; --- a/content/public/android/BUILD.gn +++ b/content/public/android/BUILD.gn -@@ -49,9 +49,6 @@ action("generate_sandboxed_service_srcja +@@ -75,9 +75,6 @@ action("generate_sandboxed_service_srcja android_library("content_java") { deps = [ ":content_java_resources", @@ -630,11 +595,10 @@ Subject: Remove dependency on "//components/download/public/common:public_java", --- a/content/test/BUILD.gn +++ b/content/test/BUILD.gn -@@ -2340,10 +2340,6 @@ if (is_android) { +@@ -2418,9 +2418,6 @@ if (is_android) { testonly = true sources = content_java_sources_needing_jni deps = [ -- "$google_play_services_package:google_play_services_auth_api_phone_java", - "$google_play_services_package:google_play_services_base_java", - "$google_play_services_package:google_play_services_basement_java", - "$google_play_services_package:google_play_services_tasks_java", @@ -643,7 +607,7 @@ Subject: Remove dependency on "//ui/android:ui_full_java", --- a/device/BUILD.gn +++ b/device/BUILD.gn -@@ -388,8 +388,6 @@ if (is_android) { +@@ -385,8 +385,6 @@ if (is_android) { junit_binary("device_junit_tests") { sources = [ "gamepad/android/junit/src/org/chromium/device/gamepad/GamepadMappingsTest.java" ] deps = [ @@ -666,7 +630,7 @@ Subject: Remove dependency on --- a/services/BUILD.gn +++ b/services/BUILD.gn -@@ -103,8 +103,6 @@ if (is_android) { +@@ -102,8 +102,6 @@ if (is_android) { "shape_detection/android/junit/src/org/chromium/shape_detection/BitmapUtilsTest.java", ] deps = [ @@ -675,7 +639,7 @@ Subject: Remove dependency on "//base:base_java", "//base:base_java_test_support", "//base:base_junit_test_support", -@@ -132,8 +130,6 @@ if (is_android) { +@@ -131,8 +129,6 @@ if (is_android) { "shape_detection/android/javatests/src/org/chromium/shape_detection/TextDetectionImplTest.java", ] deps = [ @@ -706,49 +670,6 @@ Subject: Remove dependency on "//base:base_java", "//mojo/public/java:base_java", "//mojo/public/java:bindings_java", ---- a/third_party/android_deps/BUILD.gn -+++ b/third_party/android_deps/BUILD.gn -@@ -851,40 +851,6 @@ java_prebuilt("com_android_tools_build_j - } - - # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_play_services_base_java") { -- aar_path = "libs/com_google_android_gms_play_services_base/play-services-base-15.0.1.aar" -- info_path = "libs/com_google_android_gms_play_services_base/com_google_android_gms_play_services_base.info" -- deps = [ -- ":google_play_services_basement_java", -- ":google_play_services_tasks_java", -- ] -- -- # Removing drawables from GMS .aars as they are unused bloat. -- strip_drawables = true --} -- --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_play_services_basement_java") { -- aar_path = "libs/com_google_android_gms_play_services_basement/play-services-basement-15.0.1.aar" -- info_path = "libs/com_google_android_gms_play_services_basement/com_google_android_gms_play_services_basement.info" -- deps = [ ":com_android_support_support_v4_java" ] -- -- # Removing drawables from GMS .aars as they are unused bloat. -- strip_drawables = true -- input_jars_paths = [ "$android_sdk/optional/org.apache.http.legacy.jar" ] --} -- --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_play_services_tasks_java") { -- aar_path = "libs/com_google_android_gms_play_services_tasks/play-services-tasks-15.0.1.aar" -- info_path = "libs/com_google_android_gms_play_services_tasks/com_google_android_gms_play_services_tasks.info" -- deps = [ ":google_play_services_basement_java" ] -- -- # Removing drawables from GMS .aars as they are unused bloat. -- strip_drawables = true --} -- --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. - android_aar_prebuilt("com_google_android_material_material_java") { - aar_path = "libs/com_google_android_material_material/material-1.0.0-rc02.aar" - info_path = "libs/com_google_android_material_material/com_google_android_material_material.info" --- a/third_party/cacheinvalidation/BUILD.gn +++ b/third_party/cacheinvalidation/BUILD.gn @@ -133,7 +133,6 @@ if (is_android) { @@ -761,15 +682,15 @@ Subject: Remove dependency on ] --- a/third_party/robolectric/BUILD.gn +++ b/third_party/robolectric/BUILD.gn -@@ -939,8 +939,6 @@ java_library("shadows_play_services_java +@@ -1162,8 +1162,6 @@ java_library("shadows_play_services_java ":robolectric_shadowapi_java", ":robolectric_utils_java", ":shadows_core_java", - "$google_play_services_package:google_play_services_base_java", - "$google_play_services_package:google_play_services_basement_java", "//third_party/android_deps:android_support_v4_java", - "//third_party/android_deps:com_google_guava_guava_java", - "//third_party/gson:gson_java", + "//third_party/android_deps:com_android_support_support_annotations_java", + "//third_party/android_deps:com_google_code_gson_gson_java", --- a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/PasswordManagerLauncher.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/PasswordManagerLauncher.java @@ -7,8 +7,6 @@ package org.chromium.chrome.browser.pass @@ -781,7 +702,7 @@ Subject: Remove dependency on import org.chromium.base.annotations.CalledByNative; import org.chromium.base.metrics.RecordHistogram; import org.chromium.chrome.browser.AppHooks; -@@ -99,7 +97,7 @@ public class PasswordManagerLauncher { +@@ -98,7 +96,7 @@ public class PasswordManagerLauncher { GOOGLE_ACCOUNT_PWM_UI, MIN_GOOGLE_PLAY_SERVICES_VERSION_PARAM, DEFAULT_MIN_GOOGLE_PLAY_SERVICES_APK_VERSION); if (AppHooks.get().isGoogleApiAvailableWithMinApkVersion(minGooglePlayServicesVersion) @@ -790,3 +711,36 @@ Subject: Remove dependency on return false; } +--- a/chrome/android/features/cablev2_authenticator/internal/BUILD.gn ++++ b/chrome/android/features/cablev2_authenticator/internal/BUILD.gn +@@ -16,8 +16,6 @@ if (enable_android_cablev2_authenticator + ] + + deps = [ +- "$google_play_services_package:google_play_services_base_java", +- "$google_play_services_package:google_play_services_tasks_java", + "//base:base_java", + "//base:jni_java", + "//chrome/android:chrome_java", +--- a/components/background_task_scheduler/internal/BUILD.gn ++++ b/components/background_task_scheduler/internal/BUILD.gn +@@ -27,9 +27,6 @@ if (is_android) { + + deps = [ + ":proto_java", +- "$google_play_services_package:google_play_services_base_java", +- "$google_play_services_package:google_play_services_basement_java", +- "$google_play_services_package:google_play_services_tasks_java", + "//base:base_java", + "//components/background_task_scheduler:background_task_scheduler_task_ids_java", + "//components/background_task_scheduler:public_java", +@@ -97,9 +94,6 @@ if (is_android) { + + deps = [ + ":internal_java", +- "$google_play_services_package:google_play_services_base_java", +- "$google_play_services_package:google_play_services_basement_java", +- "$google_play_services_package:google_play_services_tasks_java", + "//base:base_java", + "//base:base_java_test_support", + "//components/background_task_scheduler:background_task_scheduler_task_ids_java", diff --git a/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.fido-com.google.android.gms.iid-com.google.android.gms.instantapps-com.google.android.gms.location.patch b/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.fido-com.google.android.gms.iid-com.google.android.gms.instantapps-com.google.android.gms.location.patch index a15f6fd..2d6c549 100644 --- a/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.fido-com.google.android.gms.iid-com.google.android.gms.instantapps-com.google.android.gms.location.patch +++ b/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.fido-com.google.android.gms.iid-com.google.android.gms.instantapps-com.google.android.gms.location.patch @@ -6,21 +6,24 @@ Subject: Remove dependency on com.google.android.gms.fido, --- chrome/android/BUILD.gn | 5 - chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationHandler.java | 4 - chrome/android/java/src/org/chromium/chrome/browser/instantapps/InstantAppsHandler.java | 57 ----- + chrome/android/features/cablev2_authenticator/internal/BUILD.gn | 1 + chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java | 6 + chrome/android/java/src/org/chromium/chrome/browser/instantapps/InstantAppsHandler.java | 58 - + chrome/android/java/src/org/chromium/chrome/browser/webauth/Fido2CredentialRequest.java | 153 ---- + chrome/android/java/src/org/chromium/chrome/browser/webauth/Fido2Helper.java | 324 ---------- components/gcm_driver/instance_id/android/BUILD.gn | 2 - components/gcm_driver/instance_id/android/java/src/org/chromium/components/gcm_driver/instance_id/InstanceIDWithSubtype.java | 28 -- + components/gcm_driver/instance_id/android/java/src/org/chromium/components/gcm_driver/instance_id/InstanceIDWithSubtype.java | 28 device/BUILD.gn | 1 services/device/geolocation/BUILD.gn | 1 - services/device/geolocation/android/java/src/org/chromium/device/geolocation/LocationProviderGmsCore.java | 103 ---------- - third_party/android_deps/BUILD.gn | 58 ----- + services/device/geolocation/android/java/src/org/chromium/device/geolocation/LocationProviderGmsCore.java | 103 --- + third_party/android_deps/BUILD.gn | 60 - third_party/cacheinvalidation/BUILD.gn | 1 third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/external/client/android2/AndroidManifestUpdatedGcm.xml | 3 - 11 files changed, 12 insertions(+), 251 deletions(-) + 14 files changed, 13 insertions(+), 733 deletions(-) --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -224,8 +224,6 @@ android_library("chrome_java") { +@@ -264,8 +264,6 @@ android_library("chrome_java") { ":usage_stats_proto_java", "$google_play_services_package:google_play_services_base_java", "$google_play_services_package:google_play_services_basement_java", @@ -29,7 +32,7 @@ Subject: Remove dependency on com.google.android.gms.fido, "$google_play_services_package:google_play_services_tasks_java", "$google_play_services_package:google_play_services_vision_common_java", "$google_play_services_package:google_play_services_vision_java", -@@ -629,7 +627,6 @@ junit_binary("chrome_junit_tests") { +@@ -701,7 +699,6 @@ junit_binary("chrome_junit_tests") { ":partner_location_descriptor_proto_java", "$google_play_services_package:google_play_services_base_java", "$google_play_services_package:google_play_services_basement_java", @@ -37,7 +40,7 @@ Subject: Remove dependency on com.google.android.gms.fido, "//base:base_java", "//base:base_java_test_support", "//base:base_junit_test_support", -@@ -738,8 +735,6 @@ android_library("chrome_test_java") { +@@ -814,8 +811,6 @@ android_library("chrome_test_java") { ":partner_location_descriptor_proto_java", "$google_play_services_package:google_play_services_base_java", "$google_play_services_package:google_play_services_basement_java", @@ -46,22 +49,9 @@ Subject: Remove dependency on com.google.android.gms.fido, "$google_play_services_package:google_play_services_tasks_java", "//base:base_java", "//base:base_java_test_support", ---- a/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationHandler.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationHandler.java -@@ -678,10 +678,6 @@ public class ExternalNavigationHandler { - if (shouldProxyForInstantApps) { - RecordHistogram.recordEnumeratedHistogram("Android.InstantApps.DirectInstantAppsIntent", - AiaIntent.SERP, AiaIntent.NUM_ENTRIES); -- targetIntent.putExtra(InstantAppsHandler.IS_GOOGLE_SEARCH_REFERRER, true); -- } else { -- // Make sure this extra is not sent unless we've done the verification. -- targetIntent.removeExtra(InstantAppsHandler.IS_GOOGLE_SEARCH_REFERRER); - } - - // The intent can be used to launch Chrome itself, record the user --- a/chrome/android/java/src/org/chromium/chrome/browser/instantapps/InstantAppsHandler.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/instantapps/InstantAppsHandler.java -@@ -44,36 +44,6 @@ public class InstantAppsHandler { +@@ -43,36 +43,6 @@ public class InstantAppsHandler { // TODO(mariakhomenko): Use system once we roll to O SDK. private static final int FLAG_DO_NOT_LAUNCH = 0x00000200; @@ -98,7 +88,7 @@ Subject: Remove dependency on com.google.android.gms.fido, /** Finch experiment name. */ private static final String INSTANT_APPS_EXPERIMENT_NAME = "InstantApps"; -@@ -125,14 +95,6 @@ public class InstantAppsHandler { +@@ -101,14 +71,6 @@ public class InstantAppsHandler { * @return Whether the given intent is going to open an Instant App. */ public static boolean isIntentToInstantApp(Intent intent) { @@ -113,13 +103,14 @@ Subject: Remove dependency on com.google.android.gms.fido, return false; } -@@ -169,13 +131,7 @@ public class InstantAppsHandler { - sFallbackIntentTimes.record(SystemClock.elapsedRealtime() - startTime); +@@ -149,14 +111,7 @@ public class InstantAppsHandler { + SystemClock.elapsedRealtime() - startTime); intent.removeExtra(INSTANT_APP_START_TIME_EXTRA); } - int callSource = IntentUtils.safeGetIntExtra(intent, BROWSER_LAUNCH_REASON, 0); - if (callSource > 0 && callSource < SOURCE_BOUNDARY) { -- sFallbackCallSource.record(callSource); +- RecordHistogram.recordEnumeratedHistogram( +- "Android.InstantApps.CallSource", callSource, SOURCE_BOUNDARY); - intent.removeExtra(BROWSER_LAUNCH_REASON); - } else if (callSource >= SOURCE_BOUNDARY) { - Log.e(TAG, "Unexpected call source constant for Instant Apps: " + callSource); @@ -128,7 +119,7 @@ Subject: Remove dependency on com.google.android.gms.fido, } /** -@@ -210,9 +166,8 @@ public class InstantAppsHandler { +@@ -191,9 +146,8 @@ public class InstantAppsHandler { return false; } @@ -140,7 +131,7 @@ Subject: Remove dependency on com.google.android.gms.fido, maybeRecordFallbackStats(intent); Log.i(TAG, "Not handling with Instant Apps (DO_NOT_LAUNCH_EXTRA)"); return false; -@@ -242,7 +197,6 @@ public class InstantAppsHandler { +@@ -223,7 +177,6 @@ public class InstantAppsHandler { } Intent callbackIntent = new Intent(intent); @@ -148,7 +139,7 @@ Subject: Remove dependency on com.google.android.gms.fido, callbackIntent.putExtra(INSTANT_APP_START_TIME_EXTRA, startTime); return tryLaunchingInstantApp(context, intent, isCustomTabsIntent, callbackIntent); -@@ -345,12 +299,9 @@ public class InstantAppsHandler { +@@ -326,12 +279,9 @@ public class InstantAppsHandler { Intent iaIntent = data.getIntent(); if (data.getReferrer() != null) { iaIntent.putExtra(Intent.EXTRA_REFERRER, data.getReferrer()); @@ -161,7 +152,7 @@ Subject: Remove dependency on com.google.android.gms.fido, try { appContext.startActivity(iaIntent); -@@ -396,7 +347,7 @@ public class InstantAppsHandler { +@@ -377,7 +327,7 @@ public class InstantAppsHandler { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { return info.isInstantAppAvailable; } else if (info.activityInfo != null) { @@ -274,7 +265,7 @@ Subject: Remove dependency on com.google.android.gms.fido, /** Fake subclasses can set {@link #sFakeFactoryForTesting} to an implementation of this. */ --- a/device/BUILD.gn +++ b/device/BUILD.gn -@@ -390,7 +390,6 @@ if (is_android) { +@@ -387,7 +387,6 @@ if (is_android) { deps = [ "$google_play_services_package:google_play_services_base_java", "$google_play_services_package:google_play_services_basement_java", @@ -443,12 +434,12 @@ Subject: Remove dependency on com.google.android.gms.fido, } --- a/third_party/android_deps/BUILD.gn +++ b/third_party/android_deps/BUILD.gn -@@ -875,64 +875,6 @@ android_aar_prebuilt("google_play_servic +@@ -1165,66 +1165,6 @@ android_aar_prebuilt("google_play_servic } # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. -android_aar_prebuilt("google_play_services_fido_java") { -- aar_path = "libs/com_google_android_gms_play_services_fido/play-services-fido-15.0.1.aar" +- aar_path = "libs/com_google_android_gms_play_services_fido/play-services-fido-18.1.0.aar" - info_path = "libs/com_google_android_gms_play_services_fido/com_google_android_gms_play_services_fido.info" - deps = [ - ":google_play_services_base_java", @@ -462,9 +453,11 @@ Subject: Remove dependency on com.google.android.gms.fido, - -# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. -android_aar_prebuilt("google_play_services_iid_java") { -- aar_path = "libs/com_google_android_gms_play_services_iid/play-services-iid-15.0.1.aar" +- aar_path = "libs/com_google_android_gms_play_services_iid/play-services-iid-17.0.0.aar" - info_path = "libs/com_google_android_gms_play_services_iid/com_google_android_gms_play_services_iid.info" - deps = [ +- ":androidx_collection_collection_java", +- ":androidx_core_core_java", - ":google_play_services_base_java", - ":google_play_services_basement_java", - ":google_play_services_stats_java", @@ -477,7 +470,7 @@ Subject: Remove dependency on com.google.android.gms.fido, - -# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. -android_aar_prebuilt("google_play_services_instantapps_java") { -- aar_path = "libs/com_google_android_gms_play_services_instantapps/play-services-instantapps-16.0.0.aar" +- aar_path = "libs/com_google_android_gms_play_services_instantapps/play-services-instantapps-17.0.0.aar" - info_path = "libs/com_google_android_gms_play_services_instantapps/com_google_android_gms_play_services_instantapps.info" - deps = [ - ":google_play_services_base_java", @@ -491,7 +484,7 @@ Subject: Remove dependency on com.google.android.gms.fido, - -# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. -android_aar_prebuilt("google_play_services_location_java") { -- aar_path = "libs/com_google_android_gms_play_services_location/play-services-location-15.0.1.aar" +- aar_path = "libs/com_google_android_gms_play_services_location/play-services-location-17.0.0.aar" - info_path = "libs/com_google_android_gms_play_services_location/com_google_android_gms_play_services_location.info" - deps = [ - ":google_play_services_base_java", @@ -506,7 +499,7 @@ Subject: Remove dependency on com.google.android.gms.fido, - -# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. android_aar_prebuilt("google_play_services_tasks_java") { - aar_path = "libs/com_google_android_gms_play_services_tasks/play-services-tasks-15.0.1.aar" + aar_path = "libs/com_google_android_gms_play_services_tasks/play-services-tasks-17.0.0.aar" info_path = "libs/com_google_android_gms_play_services_tasks/com_google_android_gms_play_services_tasks.info" --- a/third_party/cacheinvalidation/BUILD.gn +++ b/third_party/cacheinvalidation/BUILD.gn @@ -530,3 +523,604 @@ Subject: Remove dependency on com.google.android.gms.fido, +--- a/chrome/android/features/cablev2_authenticator/internal/BUILD.gn ++++ b/chrome/android/features/cablev2_authenticator/internal/BUILD.gn +@@ -17,7 +17,6 @@ if (enable_android_cablev2_authenticator + + deps = [ + "$google_play_services_package:google_play_services_base_java", +- "$google_play_services_package:google_play_services_fido_java", + "$google_play_services_package:google_play_services_tasks_java", + "$google_play_services_package:google_play_services_vision_common_java", + "$google_play_services_package:google_play_services_vision_java", +--- a/chrome/android/java/src/org/chromium/chrome/browser/webauth/Fido2CredentialRequest.java ++++ b/chrome/android/java/src/org/chromium/chrome/browser/webauth/Fido2CredentialRequest.java +@@ -13,20 +13,6 @@ import android.os.SystemClock; + import androidx.annotation.IntDef; + import androidx.annotation.VisibleForTesting; + +-import com.google.android.gms.fido.Fido; +-import com.google.android.gms.fido.fido2.Fido2PendingIntent; +-import com.google.android.gms.fido.fido2.Fido2PrivilegedApiClient; +-import com.google.android.gms.fido.fido2.api.common.AuthenticatorAssertionResponse; +-import com.google.android.gms.fido.fido2.api.common.AuthenticatorAttestationResponse; +-import com.google.android.gms.fido.fido2.api.common.AuthenticatorErrorResponse; +-import com.google.android.gms.fido.fido2.api.common.AuthenticatorResponse; +-import com.google.android.gms.fido.fido2.api.common.BrowserPublicKeyCredentialCreationOptions; +-import com.google.android.gms.fido.fido2.api.common.BrowserPublicKeyCredentialRequestOptions; +-import com.google.android.gms.fido.fido2.api.common.PublicKeyCredential; +-import com.google.android.gms.fido.fido2.api.common.PublicKeyCredentialCreationOptions; +-import com.google.android.gms.tasks.OnSuccessListener; +-import com.google.android.gms.tasks.Task; +- + import org.chromium.base.Callback; + import org.chromium.base.ContextUtils; + import org.chromium.base.Log; +@@ -54,7 +40,6 @@ public class Fido2CredentialRequest impl + private static final String TAG = "Fido2Request"; + private HandlerResponseCallback mCallback; + private HandlerResponseCallback mIsUserVerifyingPlatformAuthenticatorAvailableCallback; +- private Fido2PrivilegedApiClient mFido2ApiClient; + private WebContents mWebContents; + private ActivityWindowAndroid mWindow; + private @RequestStatus int mRequestStatus; +@@ -84,58 +69,6 @@ public class Fido2CredentialRequest impl + mCallback = null; + } + +- // Listens for a Fido2PendingIntent. +- private OnSuccessListener mIntentListener = new OnSuccessListener< +- Fido2PendingIntent>() { +- @Override +- public void onSuccess(Fido2PendingIntent fido2PendingIntent) { +- if (!fido2PendingIntent.hasPendingIntent()) { +- Log.e(TAG, "Didn't receive a pending intent."); +- returnErrorAndResetCallback(AuthenticatorStatus.UNKNOWN_ERROR); +- return; +- } +- +- if (mWindow == null) { +- mWindow = ChromeActivity.fromWebContents(mWebContents).getWindowAndroid(); +- if (mWindow == null) { +- Log.e(TAG, "Couldn't get ActivityWindowAndroid."); +- returnErrorAndResetCallback(AuthenticatorStatus.UNKNOWN_ERROR); +- return; +- } +- } +- +- final Activity activity = mWindow.getActivity().get(); +- if (activity == null) { +- Log.e(TAG, "Null activity."); +- returnErrorAndResetCallback(AuthenticatorStatus.UNKNOWN_ERROR); +- return; +- } +- +- Callback mIntentTrigger = (Integer result) -> { +- try { +- fido2PendingIntent.launchPendingIntent(activity, result); +- } catch (IntentSender.SendIntentException e) { +- Log.e(TAG, "Failed to send Fido2 register request to Google Play Services."); +- returnErrorAndResetCallback(AuthenticatorStatus.UNKNOWN_ERROR); +- } +- }; +- +- // Record starting time that will be used to establish a timeout that will +- // be activated when we receive a response that cannot be returned to the +- // relying party prior to timeout. +- mStartTimeMs = SystemClock.elapsedRealtime(); +- int requestCode = +- mWindow.showCancelableIntent(mIntentTrigger, Fido2CredentialRequest.this, null); +- +- if (requestCode == WindowAndroid.START_INTENT_FAILURE) { +- Log.e(TAG, "Failed to send Fido2 request to Google Play Services."); +- returnErrorAndResetCallback(AuthenticatorStatus.UNKNOWN_ERROR); +- } else { +- Log.e(TAG, "Sent a Fido2 request to Google Play Services."); +- } +- } +- }; +- + public void handleMakeCredentialRequest( + org.chromium.blink.mojom.PublicKeyCredentialCreationOptions options, + RenderFrameHost frameHost, HandlerResponseCallback callback) { +@@ -159,23 +92,6 @@ public class Fido2CredentialRequest impl + returnErrorAndResetCallback(securityCheck); + return; + } +- +- PublicKeyCredentialCreationOptions credentialCreationOptions; +- try { +- credentialCreationOptions = Fido2Helper.toMakeCredentialOptions(options); +- } catch (NoSuchAlgorithmException e) { +- returnErrorAndResetCallback(AuthenticatorStatus.ALGORITHM_UNSUPPORTED); +- return; +- } +- +- BrowserPublicKeyCredentialCreationOptions browserRequestOptions = +- new BrowserPublicKeyCredentialCreationOptions.Builder() +- .setPublicKeyCredentialCreationOptions(credentialCreationOptions) +- .setOrigin(Uri.parse(GURLUtils.getOrigin(frameHost.getLastCommittedURL()))) +- .build(); +- +- Task result = mFido2ApiClient.getRegisterIntent(browserRequestOptions); +- result.addOnSuccessListener(mIntentListener); + } + + public void handleGetAssertionRequest(PublicKeyCredentialRequestOptions options, +@@ -204,19 +120,6 @@ public class Fido2CredentialRequest impl + if (options.appid != null) { + mAppIdExtensionUsed = true; + } +- +- com.google.android.gms.fido.fido2.api.common +- .PublicKeyCredentialRequestOptions getAssertionOptions; +- getAssertionOptions = Fido2Helper.toGetAssertionOptions(options); +- +- BrowserPublicKeyCredentialRequestOptions browserRequestOptions = +- new BrowserPublicKeyCredentialRequestOptions.Builder() +- .setPublicKeyCredentialRequestOptions(getAssertionOptions) +- .setOrigin(Uri.parse(GURLUtils.getOrigin(frameHost.getLastCommittedURL()))) +- .build(); +- +- Task result = mFido2ApiClient.getSignIntent(browserRequestOptions); +- result.addOnSuccessListener(mIntentListener); + } + + public void handleIsUserVerifyingPlatformAuthenticatorAvailableRequest( +@@ -236,33 +139,16 @@ public class Fido2CredentialRequest impl + mIsUserVerifyingPlatformAuthenticatorAvailableCallback = null; + return; + } +- +- Task result = +- mFido2ApiClient.isUserVerifyingPlatformAuthenticatorAvailable() +- .addOnSuccessListener((isUVPAA) -> { +- mIsUserVerifyingPlatformAuthenticatorAvailableCallback +- .onIsUserVerifyingPlatformAuthenticatorAvailableResponse( +- isUVPAA); +- mIsUserVerifyingPlatformAuthenticatorAvailableCallback = null; +- }); + } + + /* Initialize the FIDO2 browser API client. */ + private boolean initFido2ApiClient() { +- if (mFido2ApiClient != null) { +- return true; +- } +- + if (!ExternalAuthUtils.getInstance().canUseGooglePlayServices( + new UserRecoverableErrorHandler.Silent())) { + return false; + } + +- mFido2ApiClient = Fido.getFido2PrivilegedApiClient(ContextUtils.getApplicationContext()); +- if (mFido2ApiClient == null) { +- return false; +- } +- return true; ++ return false; + } + + @VisibleForTesting +@@ -301,47 +187,15 @@ public class Fido2CredentialRequest impl + } + + private void processPublicKeyCredential(Intent data) { +- PublicKeyCredential publicKeyCredential = PublicKeyCredential.deserializeFromBytes( +- data.getByteArrayExtra(FIDO2_KEY_CREDENTIAL_EXTRA)); +- AuthenticatorResponse response = publicKeyCredential.getResponse(); +- if (response instanceof AuthenticatorErrorResponse) { +- processErrorResponse((AuthenticatorErrorResponse) response); +- } else if (response instanceof AuthenticatorAttestationResponse) { +- mCallback.onRegisterResponse(AuthenticatorStatus.SUCCESS, +- Fido2Helper.toMakeCredentialResponse(publicKeyCredential)); +- mCallback = null; +- } else if (response instanceof AuthenticatorAssertionResponse) { +- mCallback.onSignResponse(AuthenticatorStatus.SUCCESS, +- Fido2Helper.toGetAssertionResponse(publicKeyCredential, mAppIdExtensionUsed)); +- mCallback = null; +- } +- } +- +- private void processErrorResponse(AuthenticatorErrorResponse errorResponse) { +- Log.e(TAG, +- "Google Play Services FIDO2 API returned an error: " +- + errorResponse.getErrorMessage()); +- int authenticatorStatus = Fido2Helper.convertError( +- errorResponse.getErrorCode(), errorResponse.getErrorMessage()); +- returnErrorAndResetCallback(authenticatorStatus); + } + + private void processKeyResponse(Intent data) { + switch (mRequestStatus) { + case REGISTER_REQUEST: + Log.e(TAG, "Received a register response from Google Play Services FIDO2 API"); +- mCallback.onRegisterResponse(AuthenticatorStatus.SUCCESS, +- Fido2Helper.toMakeCredentialResponse( +- AuthenticatorAttestationResponse.deserializeFromBytes( +- data.getByteArrayExtra(Fido.FIDO2_KEY_RESPONSE_EXTRA)))); + break; + case SIGN_REQUEST: + Log.e(TAG, "Received a sign response from Google Play Services FIDO2 API"); +- mCallback.onSignResponse(AuthenticatorStatus.SUCCESS, +- Fido2Helper.toGetAssertionResponse( +- AuthenticatorAssertionResponse.deserializeFromBytes( +- data.getByteArrayExtra(Fido.FIDO2_KEY_RESPONSE_EXTRA)), +- mAppIdExtensionUsed)); + break; + } + mCallback = null; +@@ -353,11 +207,6 @@ public class Fido2CredentialRequest impl + // [Attestation/Assertion/Error] Response. + if (data.hasExtra(FIDO2_KEY_CREDENTIAL_EXTRA)) { + processPublicKeyCredential(data); +- } else if (data.hasExtra(Fido.FIDO2_KEY_ERROR_EXTRA)) { +- processErrorResponse(AuthenticatorErrorResponse.deserializeFromBytes( +- data.getByteArrayExtra(Fido.FIDO2_KEY_ERROR_EXTRA))); +- } else if (data.hasExtra(Fido.FIDO2_KEY_RESPONSE_EXTRA)) { +- processKeyResponse(data); + } else { + // Something went wrong. + Log.e(TAG, +--- a/chrome/android/java/src/org/chromium/chrome/browser/webauth/Fido2Helper.java ++++ b/chrome/android/java/src/org/chromium/chrome/browser/webauth/Fido2Helper.java +@@ -6,26 +6,6 @@ package org.chromium.chrome.browser.weba + + import android.util.Base64; + +-import com.google.android.gms.fido.common.Transport; +-import com.google.android.gms.fido.fido2.api.common.Attachment; +-import com.google.android.gms.fido.fido2.api.common.AttestationConveyancePreference; +-import com.google.android.gms.fido.fido2.api.common.AuthenticationExtensions; +-import com.google.android.gms.fido.fido2.api.common.AuthenticationExtensionsClientOutputs; +-import com.google.android.gms.fido.fido2.api.common.AuthenticatorAssertionResponse; +-import com.google.android.gms.fido.fido2.api.common.AuthenticatorAttestationResponse; +-import com.google.android.gms.fido.fido2.api.common.AuthenticatorSelectionCriteria; +-import com.google.android.gms.fido.fido2.api.common.ErrorCode; +-import com.google.android.gms.fido.fido2.api.common.FidoAppIdExtension; +-import com.google.android.gms.fido.fido2.api.common.PublicKeyCredential; +-import com.google.android.gms.fido.fido2.api.common.PublicKeyCredentialCreationOptions; +-import com.google.android.gms.fido.fido2.api.common.PublicKeyCredentialDescriptor; +-import com.google.android.gms.fido.fido2.api.common.PublicKeyCredentialParameters; +-import com.google.android.gms.fido.fido2.api.common.PublicKeyCredentialRpEntity; +-import com.google.android.gms.fido.fido2.api.common.PublicKeyCredentialType; +-import com.google.android.gms.fido.fido2.api.common.PublicKeyCredentialUserEntity; +-import com.google.android.gms.fido.fido2.api.common.UserVerificationMethodExtension; +-import com.google.android.gms.fido.fido2.api.common.UvmEntries; +- + import org.chromium.base.Log; + import org.chromium.blink.mojom.AuthenticatorAttachment; + import org.chromium.blink.mojom.AuthenticatorStatus; +@@ -62,214 +42,6 @@ public final class Fido2Helper { + static final double MAX_TIMEOUT_SECONDS = 600; + + /** +- * Converts mojo options to gmscore options. +- * @param options Options passed in from the renderer. +- * @return Options to be passed to Fido2 API. +- * @throws NoSuchAlgorithmException +- */ +- public static PublicKeyCredentialCreationOptions toMakeCredentialOptions( +- org.chromium.blink.mojom.PublicKeyCredentialCreationOptions options) +- throws NoSuchAlgorithmException { +- // Pack incoming options as Fido2's BrowserMakeCredentialOptions. +- String rpIcon = options.relyingParty.icon != null ? options.relyingParty.icon.url : null; +- PublicKeyCredentialRpEntity rp = new PublicKeyCredentialRpEntity( +- options.relyingParty.id, options.relyingParty.name, rpIcon); +- +- String userIcon = options.user.icon != null ? options.user.icon.url : null; +- PublicKeyCredentialUserEntity user = new PublicKeyCredentialUserEntity( +- options.user.id, options.user.name, userIcon, options.user.displayName); +- +- List parameters = new ArrayList<>(); +- for (org.chromium.blink.mojom.PublicKeyCredentialParameters param : +- options.publicKeyParameters) { +- if (param.algorithmIdentifier == ECDSA_COSE_IDENTIFIER +- && param.type == org.chromium.blink.mojom.PublicKeyCredentialType.PUBLIC_KEY) { +- parameters.add(new PublicKeyCredentialParameters( +- PublicKeyCredentialType.PUBLIC_KEY.toString(), param.algorithmIdentifier)); +- } +- } +- +- // Check that at least one incoming param is supported by the FIDO2 API. +- if (parameters.size() == 0 && options.publicKeyParameters.length != 0) { +- Log.e(TAG, "None of the requested parameters are supported."); +- throw new NoSuchAlgorithmException(); +- } +- +- List excludeCredentials = +- convertCredentialDescriptor(options.excludeCredentials); +- +- AuthenticatorSelectionCriteria selection = +- convertSelectionCriteria(options.authenticatorSelection); +- +- AttestationConveyancePreference attestationPreference = +- convertAttestationPreference(options.attestation); +- +- PublicKeyCredentialCreationOptions credentialCreationOptions = +- new PublicKeyCredentialCreationOptions.Builder() +- .setRp(rp) +- .setUser(user) +- .setChallenge(options.challenge) +- .setParameters(parameters) +- .setTimeoutSeconds(adjustTimeout(options.timeout)) +- .setExcludeList(excludeCredentials) +- .setAuthenticatorSelection(selection) +- .setAttestationConveyancePreference(attestationPreference) +- .build(); +- return credentialCreationOptions; +- } +- +- /** +- * Converts gmscore AuthenticatorAttestationResponse to mojo MakeCredentialAuthenticatorResponse +- * @param data Response from the Fido2 API. +- * @return Response to be passed to the renderer. +- */ +- public static MakeCredentialAuthenticatorResponse toMakeCredentialResponse( +- AuthenticatorAttestationResponse data) { +- MakeCredentialAuthenticatorResponse response = new MakeCredentialAuthenticatorResponse(); +- CommonCredentialInfo info = new CommonCredentialInfo(); +- +- response.attestationObject = data.getAttestationObject(); +- // An empty transports array indicates that we don't have any +- // information about the available transports. +- response.transports = new int[] {}; +- info.id = encodeId(data.getKeyHandle()); +- info.rawId = data.getKeyHandle(); +- info.clientDataJson = data.getClientDataJSON(); +- response.info = info; +- return response; +- } +- +- public static MakeCredentialAuthenticatorResponse toMakeCredentialResponse( +- PublicKeyCredential data) { +- MakeCredentialAuthenticatorResponse response = +- toMakeCredentialResponse((AuthenticatorAttestationResponse) data.getResponse()); +- return response; +- } +- +- /** +- * Converts mojo options to gmscore options. +- * @param options Options passed in from the renderer. +- * @return Options to be passed to Fido2 API. +- */ +- public static com.google.android.gms.fido.fido2.api.common.PublicKeyCredentialRequestOptions +- toGetAssertionOptions(PublicKeyCredentialRequestOptions options) { +- List allowCredentials = +- convertCredentialDescriptor(options.allowCredentials); +- +- FidoAppIdExtension fidoAppIdExtension = +- (options.appid != null) ? new FidoAppIdExtension(options.appid) : null; +- UserVerificationMethodExtension userVerificationMethodExtension = +- new UserVerificationMethodExtension(options.userVerificationMethods); +- AuthenticationExtensions authenticationExtensions = +- new AuthenticationExtensions.Builder() +- .setFido2Extension(fidoAppIdExtension) +- .setUserVerificationMethodExtension(userVerificationMethodExtension) +- .build(); +- +- // Pack options as Fido2's BrowserPublicKeyCredentialRequestOptions. +- com.google.android.gms.fido.fido2.api.common +- .PublicKeyCredentialRequestOptions credentialRequestOptions = +- new com.google.android.gms.fido.fido2.api.common.PublicKeyCredentialRequestOptions +- .Builder() +- .setChallenge(options.challenge) +- .setTimeoutSeconds(adjustTimeout(options.timeout)) +- .setRpId(options.relyingPartyId) +- .setAllowList(allowCredentials) +- /* TODO add back UserVerificationRequirement when the FIDO2 API supports it +- */ +- .setAuthenticationExtensions(authenticationExtensions) +- .build(); +- return credentialRequestOptions; +- } +- +- /** +- * Helper method that creates GetAssertionAuthenticatorResponse objects. +- */ +- public static GetAssertionAuthenticatorResponse toGetAssertionResponse( +- AuthenticatorAssertionResponse data, boolean appIdExtensionUsed) { +- GetAssertionAuthenticatorResponse response = new GetAssertionAuthenticatorResponse(); +- CommonCredentialInfo info = new CommonCredentialInfo(); +- response.authenticatorData = data.getAuthenticatorData(); +- response.signature = data.getSignature(); +- response.echoAppidExtension = appIdExtensionUsed; +- info.id = encodeId(data.getKeyHandle()); +- info.rawId = data.getKeyHandle(); +- info.clientDataJson = data.getClientDataJSON(); +- response.info = info; +- return response; +- } +- +- public static GetAssertionAuthenticatorResponse toGetAssertionResponse( +- PublicKeyCredential data, boolean appIdExtensionUsed) { +- GetAssertionAuthenticatorResponse response = toGetAssertionResponse( +- (AuthenticatorAssertionResponse) data.getResponse(), appIdExtensionUsed); +- AuthenticationExtensionsClientOutputs extensionsClientOutputs = +- data.getClientExtensionResults(); +- +- if (extensionsClientOutputs != null && extensionsClientOutputs.getUvmEntries() != null) { +- response.echoUserVerificationMethods = true; +- response.userVerificationMethods = +- getUserVerificationMethods(extensionsClientOutputs.getUvmEntries()); +- } +- return response; +- } +- +- /** +- * Helper method to convert AuthenticatorErrorResponse errors. +- * @param errorCode +- * @return error code corresponding to an AuthenticatorStatus. +- */ +- public static int convertError(ErrorCode errorCode, String errorMsg) { +- // TODO(b/113347251): Use specific error codes instead of strings when GmsCore Fido2 +- // provides them. +- switch (errorCode) { +- case SECURITY_ERR: +- // AppId or rpID fails validation. +- return AuthenticatorStatus.INVALID_DOMAIN; +- case TIMEOUT_ERR: +- return AuthenticatorStatus.NOT_ALLOWED_ERROR; +- case ENCODING_ERR: +- // Error encoding results (after user consent). +- return AuthenticatorStatus.UNKNOWN_ERROR; +- case NOT_ALLOWED_ERR: +- // The implementation doesn't support resident keys. +- if (errorMsg != null +- && (errorMsg.equals(NON_EMPTY_ALLOWLIST_ERROR_MSG) +- || errorMsg.equals(NON_VALID_ALLOWED_CREDENTIALS_ERROR_MSG))) { +- return AuthenticatorStatus.EMPTY_ALLOW_CREDENTIALS; +- } +- // The request is not allowed, possibly because the user denied permission. +- return AuthenticatorStatus.NOT_ALLOWED_ERROR; +- case DATA_ERR: +- // Incoming requests were malformed/inadequate. Fallthrough. +- case NOT_SUPPORTED_ERR: +- // Request parameters were not supported. +- return AuthenticatorStatus.ANDROID_NOT_SUPPORTED_ERROR; +- case CONSTRAINT_ERR: +- if (errorMsg != null && errorMsg.equals(NO_SCREENLOCK_ERROR_MSG)) { +- return AuthenticatorStatus.USER_VERIFICATION_UNSUPPORTED; +- } else { +- // The user attempted to use a credential that was already registered. +- return AuthenticatorStatus.CREDENTIAL_EXCLUDED; +- } +- case INVALID_STATE_ERR: +- if (errorMsg != null && errorMsg.equals(CREDENTIAL_EXISTS_ERROR_MSG)) { +- return AuthenticatorStatus.CREDENTIAL_EXCLUDED; +- } +- // else fallthrough. +- case UNKNOWN_ERR: +- if (errorMsg != null && errorMsg.equals(LOW_LEVEL_ERROR_MSG)) { +- // The error message returned from GmsCore when the user attempted to use a +- // credential that is not registered. +- return AuthenticatorStatus.CREDENTIAL_NOT_RECOGNIZED; +- } +- // fall through +- default: +- return AuthenticatorStatus.UNKNOWN_ERROR; +- } +- } +- +- /** + * Base64 encodes the raw id. + * @param keyHandle the raw id (key handle of the credential). + * @return Base64-encoded id. +@@ -280,102 +52,6 @@ public final class Fido2Helper { + } + + /** +- * Parses uvmEntries into userVerificationMethods +- * @param uvmEntries defined in gmscore. +- * @return userVerificationMethods defined in authenticato.mojom. +- */ +- private static UvmEntry[] getUserVerificationMethods(UvmEntries uvmEntries) { +- List uvmEntryList = +- uvmEntries.getUvmEntryList(); +- UvmEntry[] userVerificationMethods = new UvmEntry[uvmEntryList.size()]; +- for (int i = 0; i < uvmEntryList.size(); i++) { +- UvmEntry uvmEntry = new UvmEntry(); +- uvmEntry.userVerificationMethod = uvmEntryList.get(i).getUserVerificationMethod(); +- uvmEntry.keyProtectionType = uvmEntryList.get(i).getKeyProtectionType(); +- uvmEntry.matcherProtectionType = uvmEntryList.get(i).getMatcherProtectionType(); +- userVerificationMethods[i] = uvmEntry; +- } +- return userVerificationMethods; +- } +- +- private static List convertCredentialDescriptor( +- org.chromium.blink.mojom.PublicKeyCredentialDescriptor[] mojoDescriptors) { +- if (mojoDescriptors == null) { +- return null; +- } +- +- List descriptors = new ArrayList<>(); +- for (org.chromium.blink.mojom.PublicKeyCredentialDescriptor descriptor : mojoDescriptors) { +- descriptors.add( +- new PublicKeyCredentialDescriptor(PublicKeyCredentialType.PUBLIC_KEY.toString(), +- descriptor.id, toTransportList(descriptor.transports))); +- } +- return descriptors; +- } +- +- private static AuthenticatorSelectionCriteria convertSelectionCriteria( +- org.chromium.blink.mojom.AuthenticatorSelectionCriteria mojoSelection) { +- AuthenticatorSelectionCriteria selection = null; +- if (mojoSelection != null) { +- /* Sets UserVerificationRequirement and RequireResidentKey to default until the FIDO2 +- * API supports the other options. */ +- selection = +- new AuthenticatorSelectionCriteria.Builder() +- .setAttachment(convertAttachment(mojoSelection.authenticatorAttachment)) +- .build(); +- } +- return selection; +- } +- +- private static List toTransportList(int[] mojoTransports) { +- List fidoTransports = new ArrayList<>(); +- for (int transport : mojoTransports) { +- fidoTransports.add(convertTransport(transport)); +- } +- return fidoTransports; +- } +- +- private static Transport convertTransport(int transport) { +- switch (transport) { +- case AuthenticatorTransport.USB: +- return Transport.USB; +- case AuthenticatorTransport.NFC: +- return Transport.NFC; +- case AuthenticatorTransport.BLE: +- return Transport.BLUETOOTH_LOW_ENERGY; +- case AuthenticatorTransport.INTERNAL: +- return Transport.INTERNAL; +- default: +- return Transport.USB; +- } +- } +- +- private static Attachment convertAttachment(int attachment) { +- if (attachment == AuthenticatorAttachment.NO_PREFERENCE) { +- return null; +- } else if (attachment == AuthenticatorAttachment.CROSS_PLATFORM) { +- return Attachment.CROSS_PLATFORM; +- } else { +- return Attachment.PLATFORM; +- } +- } +- +- private static AttestationConveyancePreference convertAttestationPreference(int preference) { +- switch (preference) { +- case org.chromium.blink.mojom.AttestationConveyancePreference.NONE: +- return AttestationConveyancePreference.NONE; +- case org.chromium.blink.mojom.AttestationConveyancePreference.INDIRECT: +- return AttestationConveyancePreference.INDIRECT; +- case org.chromium.blink.mojom.AttestationConveyancePreference.DIRECT: +- return AttestationConveyancePreference.DIRECT; +- case org.chromium.blink.mojom.AttestationConveyancePreference.ENTERPRISE: +- return AttestationConveyancePreference.NONE; +- default: +- return AttestationConveyancePreference.NONE; +- } +- } +- +- /** + * Adjusts a timeout between a reasonable minimum and maximum. + * + * @param timeout The unadjusted timeout as specified by the website. May be null. +--- a/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java ++++ b/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java +@@ -572,12 +572,6 @@ public class ExternalNavigationDelegateI + + @Override + public void maybeAdjustInstantAppExtras(Intent intent, boolean isIntentToInstantApp) { +- if (isIntentToInstantApp) { +- intent.putExtra(InstantAppsHandler.IS_GOOGLE_SEARCH_REFERRER, true); +- } else { +- // Make sure this extra is not sent unless we've done the verification. +- intent.removeExtra(InstantAppsHandler.IS_GOOGLE_SEARCH_REFERRER); +- } + } + + @Override diff --git a/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.flags-com.google.android.gms.location.places-com.google.android.gms.stats.patch b/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.flags-com.google.android.gms.location.places-com.google.android.gms.stats.patch index 3c7954a..32af8af 100644 --- a/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.flags-com.google.android.gms.location.places-com.google.android.gms.stats.patch +++ b/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.flags-com.google.android.gms.location.places-com.google.android.gms.stats.patch @@ -4,17 +4,17 @@ Subject: Remove dependency on com.google.android.gms.flags, com.google.android.gms.location.places, com.google.android.gms.stats --- - third_party/android_deps/BUILD.gn | 45 -------------------------------------- - 1 file changed, 45 deletions(-) + third_party/android_deps/BUILD.gn | 48 -------------------------------------- + 1 file changed, 48 deletions(-) --- a/third_party/android_deps/BUILD.gn +++ b/third_party/android_deps/BUILD.gn -@@ -1619,51 +1619,6 @@ java_prebuilt("com_github_kevinstern_sof +@@ -1951,54 +1951,6 @@ java_prebuilt("com_github_kevinstern_sof } # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. -android_aar_prebuilt("google_play_services_flags_java") { -- aar_path = "libs/com_google_android_gms_play_services_flags/play-services-flags-15.0.1.aar" +- aar_path = "libs/com_google_android_gms_play_services_flags/play-services-flags-17.0.0.aar" - info_path = "libs/com_google_android_gms_play_services_flags/com_google_android_gms_play_services_flags.info" - - # To remove visibility constraint, add this dependency to @@ -31,7 +31,7 @@ Subject: Remove dependency on com.google.android.gms.flags, - -# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. -android_aar_prebuilt("google_play_services_places_placereport_java") { -- aar_path = "libs/com_google_android_gms_play_services_places_placereport/play-services-places-placereport-15.0.1.aar" +- aar_path = "libs/com_google_android_gms_play_services_places_placereport/play-services-places-placereport-17.0.0.aar" - info_path = "libs/com_google_android_gms_play_services_places_placereport/com_google_android_gms_play_services_places_placereport.info" - - # To remove visibility constraint, add this dependency to @@ -45,13 +45,16 @@ Subject: Remove dependency on com.google.android.gms.flags, - -# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. -android_aar_prebuilt("google_play_services_stats_java") { -- aar_path = "libs/com_google_android_gms_play_services_stats/play-services-stats-15.0.1.aar" +- aar_path = "libs/com_google_android_gms_play_services_stats/play-services-stats-17.0.0.aar" - info_path = "libs/com_google_android_gms_play_services_stats/com_google_android_gms_play_services_stats.info" - - # To remove visibility constraint, add this dependency to - # //third_party/android_deps/build.gradle. - visibility = [ ":*" ] -- deps = [ ":google_play_services_basement_java" ] +- deps = [ +- ":androidx_legacy_legacy_support_core_utils_java", +- ":google_play_services_basement_java", +- ] - - # Removing drawables from GMS .aars as they are unused bloat. - strip_drawables = true diff --git a/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.gcm.patch b/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.gcm.patch index 30262c9..39f54ae 100644 --- a/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.gcm.patch +++ b/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.gcm.patch @@ -5,23 +5,23 @@ Subject: Remove dependency on com.google.android.gms.gcm It also disalbes Snippets, auto-update of offline pages and launching browser from background service. The snippets are already disabled in native codes, this will disable it on Java level. --- - chrome/android/BUILD.gn | 3 - chrome/android/java/src/org/chromium/chrome/browser/ChromeBackgroundService.java | 60 ------ - chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetsLauncher.java | 2 - chrome/android/java/src/org/chromium/chrome/browser/services/gcm/ChromeGcmListenerService.java | 57 ------ - components/background_task_scheduler/BUILD.gn | 3 - components/background_task_scheduler/android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskGcmTaskService.java | 63 ------- - third_party/android_deps/BUILD.gn | 15 - - third_party/cacheinvalidation/BUILD.gn | 1 - third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/external/client/android2/AndroidManifestUpdatedGcm.xml | 20 -- - third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidGcmController.java | 42 ---- - third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidInstanceIDListenerService.java | 13 - - third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/GcmRegistrationTaskService.java | 89 ---------- - 12 files changed, 9 insertions(+), 359 deletions(-) + chrome/android/BUILD.gn | 3 + chrome/android/java/src/org/chromium/chrome/browser/ChromeBackgroundService.java | 60 ------ + chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetsLauncher.java | 2 + chrome/android/java/src/org/chromium/chrome/browser/services/gcm/ChromeGcmListenerService.java | 57 ------ + components/background_task_scheduler/BUILD.gn | 1 + components/background_task_scheduler/internal/BUILD.gn | 2 + third_party/android_deps/BUILD.gn | 18 -- + third_party/cacheinvalidation/BUILD.gn | 1 + third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/external/client/android2/AndroidManifestUpdatedGcm.xml | 20 -- + third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidGcmController.java | 42 ---- + third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/AndroidInstanceIDListenerService.java | 13 - + third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android2/channel/GcmRegistrationTaskService.java | 89 ---------- + 12 files changed, 8 insertions(+), 300 deletions(-) --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -228,7 +228,6 @@ android_library("chrome_java") { +@@ -268,7 +268,6 @@ android_library("chrome_java") { "$google_play_services_package:google_play_services_cast_framework_java", "$google_play_services_package:google_play_services_cast_java", "$google_play_services_package:google_play_services_fido_java", @@ -29,7 +29,7 @@ The snippets are already disabled in native codes, this will disable it on Java "$google_play_services_package:google_play_services_iid_java", "$google_play_services_package:google_play_services_tasks_java", "$google_play_services_package:google_play_services_vision_common_java", -@@ -747,7 +746,6 @@ android_library("chrome_test_java") { +@@ -823,7 +822,6 @@ android_library("chrome_test_java") { "$google_play_services_package:google_play_services_cast_framework_java", "$google_play_services_package:google_play_services_cast_java", "$google_play_services_package:google_play_services_fido_java", @@ -37,14 +37,14 @@ The snippets are already disabled in native codes, this will disable it on Java "$google_play_services_package:google_play_services_iid_java", "$google_play_services_package:google_play_services_tasks_java", "//base:base_java", -@@ -1530,7 +1528,6 @@ android_library("browser_java_test_suppo +@@ -1663,7 +1661,6 @@ android_library("browser_java_test_suppo ] deps = [ ":chrome_java", - "$google_play_services_package:google_play_services_gcm_java", "//base:base_java", "//base:base_java_test_support", - "//chrome/android/public/profiles:java", + "//chrome/browser/profiles/android:java", --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeBackgroundService.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeBackgroundService.java @@ -8,10 +8,6 @@ import android.content.Context; @@ -230,126 +230,27 @@ The snippets are already disabled in native codes, this will disable it on Java private static boolean isFullBrowserLoaded() { --- a/components/background_task_scheduler/BUILD.gn +++ b/components/background_task_scheduler/BUILD.gn -@@ -54,7 +54,6 @@ if (is_android) { - ":scheduled_task_java", - "$google_play_services_package:google_play_services_base_java", - "$google_play_services_package:google_play_services_basement_java", -- "$google_play_services_package:google_play_services_gcm_java", - "$google_play_services_package:google_play_services_tasks_java", - "//base:base_java", - "//content/public/android:content_java", -@@ -78,7 +77,6 @@ if (is_android) { - ":background_task_scheduler_task_ids_java", - "$google_play_services_package:google_play_services_base_java", - "$google_play_services_package:google_play_services_basement_java", -- "$google_play_services_package:google_play_services_gcm_java", - "$google_play_services_package:google_play_services_tasks_java", - "//base:base_java", - "//base:base_java_test_support", -@@ -110,7 +108,6 @@ if (is_android) { +@@ -120,7 +120,6 @@ if (is_android) { "$google_play_services_package:google_play_services_auth_base_java", "$google_play_services_package:google_play_services_base_java", "$google_play_services_package:google_play_services_basement_java", - "$google_play_services_package:google_play_services_gcm_java", "$google_play_services_package:google_play_services_tasks_java", - "//base:base_java", - "//base:base_java_test_support", ---- a/components/background_task_scheduler/android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskGcmTaskService.java -+++ b/components/background_task_scheduler/android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskGcmTaskService.java -@@ -8,10 +8,6 @@ import android.os.Build; - - import androidx.annotation.VisibleForTesting; - --import com.google.android.gms.gcm.GcmNetworkManager; --import com.google.android.gms.gcm.GcmTaskService; --import com.google.android.gms.gcm.TaskParams; -- - import org.chromium.base.ContextUtils; - import org.chromium.base.Log; - import org.chromium.base.ThreadUtils; -@@ -21,7 +17,7 @@ import java.util.concurrent.TimeUnit; - import java.util.concurrent.atomic.AtomicBoolean; - - /** Delegates calls out to various tasks that need to run in the background. */ --public class BackgroundTaskGcmTaskService extends GcmTaskService { -+public class BackgroundTaskGcmTaskService { - private static final String TAG = "BkgrdTaskGcmTS"; - - private BackgroundTaskSchedulerGcmNetworkManager.Clock mClock = System::currentTimeMillis; -@@ -91,63 +87,6 @@ public class BackgroundTaskGcmTaskServic - } - - @Override -- public int onRunTask(TaskParams params) { -- final TaskParameters taskParams = -- BackgroundTaskSchedulerGcmNetworkManager.getTaskParametersFromTaskParams(params); -- -- final BackgroundTask backgroundTask = -- BackgroundTaskSchedulerFactory.getBackgroundTaskFromTaskId(taskParams.getTaskId()); -- if (backgroundTask == null) { -- Log.w(TAG, "Failed to start task. Could not instantiate BackgroundTask class."); -- // Cancel task if the BackgroundTask class is not found anymore. We assume this means -- // that the task has been deprecated. -- BackgroundTaskSchedulerFactory.getScheduler().cancel( -- ContextUtils.getApplicationContext(), taskParams.getTaskId()); -- return GcmNetworkManager.RESULT_FAILURE; -- } -- -- if (BackgroundTaskSchedulerGcmNetworkManager.didTaskExpire( -- params, mClock.currentTimeMillis())) { -- BackgroundTaskSchedulerUma.getInstance().reportTaskExpired(taskParams.getTaskId()); -- return GcmNetworkManager.RESULT_FAILURE; -- } -- -- final Waiter waiter = new Waiter(Waiter.MAX_TIMEOUT_SECONDS); -- -- final AtomicBoolean taskNeedsBackgroundProcessing = new AtomicBoolean(); -- ThreadUtils.runOnUiThreadBlocking(new Runnable() { -- @Override -- public void run() { -- BackgroundTaskSchedulerUma.getInstance().reportTaskStarted(taskParams.getTaskId()); -- taskNeedsBackgroundProcessing.set( -- backgroundTask.onStartTask(ContextUtils.getApplicationContext(), taskParams, -- new TaskFinishedCallbackGcmTaskService(waiter))); -- } -- }); -- -- if (!taskNeedsBackgroundProcessing.get()) return GcmNetworkManager.RESULT_SUCCESS; -- -- waiter.startWaiting(); -- -- if (waiter.isRescheduleNeeded()) return GcmNetworkManager.RESULT_RESCHEDULE; -- if (!waiter.hasTaskTimedOut()) return GcmNetworkManager.RESULT_SUCCESS; -- -- final AtomicBoolean taskNeedsRescheduling = new AtomicBoolean(); -- ThreadUtils.runOnUiThreadBlocking(new Runnable() { -- @Override -- public void run() { -- BackgroundTaskSchedulerUma.getInstance().reportTaskStopped(taskParams.getTaskId()); -- taskNeedsRescheduling.set(backgroundTask.onStopTask( -- ContextUtils.getApplicationContext(), taskParams)); -- } -- }); -- -- if (taskNeedsRescheduling.get()) return GcmNetworkManager.RESULT_RESCHEDULE; -- -- return GcmNetworkManager.RESULT_SUCCESS; -- } -- -- @Override - public void onInitializeTasks() { - // Ignore the event on OSs supporting JobScheduler. - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) return; + "internal:internal_java", + "internal:proto_java", --- a/third_party/android_deps/BUILD.gn +++ b/third_party/android_deps/BUILD.gn -@@ -966,21 +966,6 @@ android_aar_prebuilt("google_play_servic +@@ -1265,24 +1265,6 @@ android_aar_prebuilt("google_play_servic } # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. -android_aar_prebuilt("google_play_services_gcm_java") { -- aar_path = "libs/com_google_android_gms_play_services_gcm/play-services-gcm-15.0.1.aar" +- aar_path = "libs/com_google_android_gms_play_services_gcm/play-services-gcm-17.0.0.aar" - info_path = "libs/com_google_android_gms_play_services_gcm/com_google_android_gms_play_services_gcm.info" - deps = [ +- ":androidx_collection_collection_java", +- ":androidx_core_core_java", +- ":androidx_legacy_legacy_support_core_utils_java", - ":google_play_services_base_java", - ":google_play_services_basement_java", - ":google_play_services_iid_java", @@ -362,7 +263,7 @@ The snippets are already disabled in native codes, this will disable it on Java - -# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. android_aar_prebuilt("google_play_services_iid_java") { - aar_path = "libs/com_google_android_gms_play_services_iid/play-services-iid-15.0.1.aar" + aar_path = "libs/com_google_android_gms_play_services_iid/play-services-iid-17.0.0.aar" info_path = "libs/com_google_android_gms_play_services_iid/com_google_android_gms_play_services_iid.info" --- a/third_party/cacheinvalidation/BUILD.gn +++ b/third_party/cacheinvalidation/BUILD.gn @@ -619,3 +520,21 @@ The snippets are already disabled in native codes, this will disable it on Java - } - } } +--- a/components/background_task_scheduler/internal/BUILD.gn ++++ b/components/background_task_scheduler/internal/BUILD.gn +@@ -29,7 +29,6 @@ if (is_android) { + ":proto_java", + "$google_play_services_package:google_play_services_base_java", + "$google_play_services_package:google_play_services_basement_java", +- "$google_play_services_package:google_play_services_gcm_java", + "$google_play_services_package:google_play_services_tasks_java", + "//base:base_java", + "//components/background_task_scheduler:background_task_scheduler_task_ids_java", +@@ -100,7 +99,6 @@ if (is_android) { + ":internal_java", + "$google_play_services_package:google_play_services_base_java", + "$google_play_services_package:google_play_services_basement_java", +- "$google_play_services_package:google_play_services_gcm_java", + "$google_play_services_package:google_play_services_tasks_java", + "//base:base_java", + "//base:base_java_test_support", diff --git a/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.vision-com.google.android.gms.clearcut-com.google.android.gms.phenotype.patch b/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.vision-com.google.android.gms.clearcut-com.google.android.gms.phenotype.patch index 10a40a4..e3ac98f 100644 --- a/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.vision-com.google.android.gms.clearcut-com.google.android.gms.phenotype.patch +++ b/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.gms.vision-com.google.android.gms.clearcut-com.google.android.gms.phenotype.patch @@ -4,19 +4,21 @@ Subject: Remove dependency on com.google.android.gms.vision, com.google.android.gms.clearcut, com.google.android.gms.phenotype --- - chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/qrcode/scan_tab/QrCodeScanMediator.java | 29 -- + chrome/android/BUILD.gn | 2 + chrome/android/features/cablev2_authenticator/internal/BUILD.gn | 2 + chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/qrcode/scan_tab/QrCodeScanMediator.java | 49 ---- services/BUILD.gn | 4 services/shape_detection/BUILD.gn | 2 services/shape_detection/android/java/src/org/chromium/shape_detection/BarcodeDetectionImpl.java | 114 --------- - services/shape_detection/android/java/src/org/chromium/shape_detection/BarcodeDetectionProviderImpl.java | 18 - + services/shape_detection/android/java/src/org/chromium/shape_detection/BarcodeDetectionProviderImpl.java | 29 -- services/shape_detection/android/java/src/org/chromium/shape_detection/FaceDetectionImplGmsCore.java | 122 ---------- services/shape_detection/android/java/src/org/chromium/shape_detection/TextDetectionImpl.java | 60 ---- - third_party/android_deps/BUILD.gn | 66 ----- - 8 files changed, 10 insertions(+), 405 deletions(-) + third_party/android_deps/BUILD.gn | 69 ----- + 10 files changed, 11 insertions(+), 442 deletions(-) --- a/services/BUILD.gn +++ b/services/BUILD.gn -@@ -105,8 +105,6 @@ if (is_android) { +@@ -104,8 +104,6 @@ if (is_android) { deps = [ "$google_play_services_package:google_play_services_base_java", "$google_play_services_package:google_play_services_basement_java", @@ -25,7 +27,7 @@ Subject: Remove dependency on com.google.android.gms.vision, "//base:base_java", "//base:base_java_test_support", "//base:base_junit_test_support", -@@ -136,8 +134,6 @@ if (is_android) { +@@ -135,8 +133,6 @@ if (is_android) { deps = [ "$google_play_services_package:google_play_services_base_java", "$google_play_services_package:google_play_services_basement_java", @@ -196,9 +198,9 @@ Subject: Remove dependency on com.google.android.gms.vision, } --- a/services/shape_detection/android/java/src/org/chromium/shape_detection/BarcodeDetectionProviderImpl.java +++ b/services/shape_detection/android/java/src/org/chromium/shape_detection/BarcodeDetectionProviderImpl.java -@@ -4,9 +4,6 @@ - - package org.chromium.shape_detection; +@@ -8,9 +8,6 @@ import android.content.Context; + import android.content.pm.PackageInfo; + import android.content.pm.PackageManager.NameNotFoundException; -import com.google.android.gms.common.ConnectionResult; -import com.google.android.gms.common.GoogleApiAvailability; @@ -206,7 +208,7 @@ Subject: Remove dependency on com.google.android.gms.vision, import org.chromium.base.ContextUtils; import org.chromium.base.Log; import org.chromium.mojo.bindings.InterfaceRequest; -@@ -35,12 +32,6 @@ public class BarcodeDetectionProviderImp +@@ -39,12 +36,6 @@ public class BarcodeDetectionProviderImp // Keep this list in sync with the constants defined in // com.google.android.gms.vision.barcode.Barcode and the format hints // supported by BarcodeDetectionImpl. @@ -219,18 +221,29 @@ Subject: Remove dependency on com.google.android.gms.vision, } @Override -@@ -50,12 +41,7 @@ public class BarcodeDetectionProviderImp - public void onConnectionError(MojoException e) {} +@@ -55,23 +46,7 @@ public class BarcodeDetectionProviderImp public static BarcodeDetectionProvider create() { -- if (GoogleApiAvailability.getInstance().isGooglePlayServicesAvailable( -- ContextUtils.getApplicationContext()) + Context ctx = ContextUtils.getApplicationContext(); +- if (GoogleApiAvailability.getInstance().isGooglePlayServicesAvailable(ctx) - != ConnectionResult.SUCCESS) { -- Log.e(TAG, "Google Play Services not available"); +- Log.w(TAG, "Google Play Services not available"); +- return null; +- } +- try { +- PackageInfo playServicesPackage = ctx.getPackageManager().getPackageInfo( +- GoogleApiAvailability.GOOGLE_PLAY_SERVICES_PACKAGE, 0); +- if (playServicesPackage.versionCode < 19742000) { +- // https://crbug.com/1020746 +- Log.w(TAG, "Detection disabled (%s < 19.7.42)", playServicesPackage.versionName); +- return null; +- } +- } catch (NameNotFoundException e) { +- Log.w(TAG, "Google Play Services not available"); - return null; - } - return new BarcodeDetectionProviderImpl(); -+ Log.e(TAG, "Google Play Services not available"); ++ Log.w(TAG, "Google Play Services not available"); + return null; } } @@ -477,12 +490,12 @@ Subject: Remove dependency on com.google.android.gms.vision, } --- a/third_party/android_deps/BUILD.gn +++ b/third_party/android_deps/BUILD.gn -@@ -885,35 +885,6 @@ android_aar_prebuilt("google_play_servic +@@ -1175,36 +1175,6 @@ android_aar_prebuilt("google_play_servic } # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. -android_aar_prebuilt("google_play_services_vision_java") { -- aar_path = "libs/com_google_android_gms_play_services_vision/play-services-vision-15.0.1.aar" +- aar_path = "libs/com_google_android_gms_play_services_vision/play-services-vision-18.0.0.aar" - info_path = "libs/com_google_android_gms_play_services_vision/com_google_android_gms_play_services_vision.info" - deps = [ - ":google_play_services_base_java", @@ -496,13 +509,14 @@ Subject: Remove dependency on com.google.android.gms.vision, - -# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. -android_aar_prebuilt("google_play_services_vision_common_java") { -- aar_path = "libs/com_google_android_gms_play_services_vision_common/play-services-vision-common-15.0.1.aar" +- aar_path = "libs/com_google_android_gms_play_services_vision_common/play-services-vision-common-18.0.0.aar" - info_path = "libs/com_google_android_gms_play_services_vision_common/com_google_android_gms_play_services_vision_common.info" - deps = [ - ":google_play_services_base_java", - ":google_play_services_basement_java", - ":google_play_services_clearcut_java", - ":google_play_services_flags_java", +- ":google_play_services_phenotype_java", - ] - - # Removing drawables from GMS .aars as they are unused bloat. @@ -513,18 +527,19 @@ Subject: Remove dependency on com.google.android.gms.vision, android_aar_prebuilt("com_google_android_material_material_java") { aar_path = "libs/com_google_android_material_material/material-1.0.0-rc02.aar" info_path = "libs/com_google_android_material_material/com_google_android_material_material.info" -@@ -1648,25 +1619,6 @@ java_prebuilt("com_github_kevinstern_sof +@@ -1981,26 +1951,6 @@ java_prebuilt("com_github_kevinstern_sof } # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. -android_aar_prebuilt("google_play_services_clearcut_java") { -- aar_path = "libs/com_google_android_gms_play_services_clearcut/play-services-clearcut-15.0.1.aar" +- aar_path = "libs/com_google_android_gms_play_services_clearcut/play-services-clearcut-17.0.0.aar" - info_path = "libs/com_google_android_gms_play_services_clearcut/com_google_android_gms_play_services_clearcut.info" - - # To remove visibility constraint, add this dependency to - # //third_party/android_deps/build.gradle. - visibility = [ ":*" ] - deps = [ +- ":androidx_core_core_java", - ":google_play_services_base_java", - ":google_play_services_basement_java", - ":google_play_services_phenotype_java", @@ -537,9 +552,9 @@ Subject: Remove dependency on com.google.android.gms.vision, - -# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. android_aar_prebuilt("google_play_services_flags_java") { - aar_path = "libs/com_google_android_gms_play_services_flags/play-services-flags-15.0.1.aar" + aar_path = "libs/com_google_android_gms_play_services_flags/play-services-flags-17.0.0.aar" info_path = "libs/com_google_android_gms_play_services_flags/com_google_android_gms_play_services_flags.info" -@@ -1680,24 +1632,6 @@ android_aar_prebuilt("google_play_servic +@@ -2014,25 +1964,6 @@ android_aar_prebuilt("google_play_servic ] # Removing drawables from GMS .aars as they are unused bloat. @@ -548,13 +563,14 @@ Subject: Remove dependency on com.google.android.gms.vision, - -# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. -android_aar_prebuilt("google_play_services_phenotype_java") { -- aar_path = "libs/com_google_android_gms_play_services_phenotype/play-services-phenotype-15.0.1.aar" +- aar_path = "libs/com_google_android_gms_play_services_phenotype/play-services-phenotype-17.0.0.aar" - info_path = "libs/com_google_android_gms_play_services_phenotype/com_google_android_gms_play_services_phenotype.info" - - # To remove visibility constraint, add this dependency to - # //third_party/android_deps/build.gradle. - visibility = [ ":*" ] - deps = [ +- ":androidx_core_core_java", - ":google_play_services_base_java", - ":google_play_services_basement_java", - ":google_play_services_tasks_java", @@ -566,7 +582,7 @@ Subject: Remove dependency on com.google.android.gms.vision, --- a/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/qrcode/scan_tab/QrCodeScanMediator.java +++ b/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/qrcode/scan_tab/QrCodeScanMediator.java -@@ -16,10 +16,6 @@ import android.os.Process; +@@ -17,10 +17,6 @@ import android.provider.Browser; import android.util.SparseArray; import android.webkit.URLUtil; @@ -574,29 +590,36 @@ Subject: Remove dependency on com.google.android.gms.vision, -import com.google.android.gms.vision.barcode.Barcode; -import com.google.android.gms.vision.barcode.BarcodeDetector; - - import org.chromium.ui.base.ActivityAndroidPermissionDelegate; - import org.chromium.ui.base.AndroidPermissionDelegate; - import org.chromium.ui.base.PermissionCallback; -@@ -41,7 +37,6 @@ public class QrCodeScanMediator implemen - - private final Context mContext; - private final PropertyModel mPropertyModel; -- private final BarcodeDetector mDetector; + import org.chromium.base.metrics.RecordUserAction; + import org.chromium.base.task.AsyncTask; + import org.chromium.chrome.R; +@@ -48,8 +44,6 @@ public class QrCodeScanMediator implemen private final NavigationObserver mNavigationObserver; - private final TabCreator mTabCreator; - private final Handler mMainThreadHandler; -@@ -63,7 +58,6 @@ public class QrCodeScanMediator implemen - mPropertyModel.set(QrCodeScanViewProperties.HAS_CAMERA_PERMISSION, hasCameraPermission()); - mPropertyModel.set( - QrCodeScanViewProperties.CAN_PROMPT_FOR_PERMISSION, canPromptForPermission()); -- mDetector = new BarcodeDetector.Builder(context).build(); + private final AndroidPermissionDelegate mPermissionDelegate; + +- private BarcodeDetector mDetector; +- + /** + * The QrCodeScanMediator constructor. + * +@@ -66,7 +60,6 @@ public class QrCodeScanMediator implemen mNavigationObserver = observer; - mTabCreator = tabCreator; - mMainThreadHandler = new Handler(Looper.getMainLooper()); -@@ -125,28 +119,5 @@ public class QrCodeScanMediator implemen + + // Set detector to null until it gets initialized asynchronously. +- mDetector = null; + initBarcodeDetectorAsync(); + } + +@@ -141,36 +134,7 @@ public class QrCodeScanMediator implemen + */ + @Override public void onPreviewFrame(byte[] data, Camera camera) { - ByteBuffer buffer = ByteBuffer.allocate(data.length); - buffer.put(data); +- if (mDetector == null) { +- return; +- } +- +- ByteBuffer buffer = ByteBuffer.allocate(data.length); +- buffer.put(data); - Frame frame = - new Frame.Builder() - .setImageData(buffer, camera.getParameters().getPreviewSize().width, @@ -609,16 +632,58 @@ Subject: Remove dependency on com.google.android.gms.vision, - } - - Barcode firstCode = barcodes.valueAt(0); -- Toast.makeText(mContext, firstCode.rawValue, Toast.LENGTH_LONG).show(); - if (!URLUtil.isValidUrl(firstCode.rawValue)) { +- String toastMessage = +- mContext.getString(R.string.qr_code_not_a_url_label, firstCode.rawValue); +- Toast.makeText(mContext, toastMessage, Toast.LENGTH_LONG).show(); +- RecordUserAction.record("SharingQRCode.ScannedNonURL"); - camera.setOneShotPreviewCallback(this); - return; - } - -- /** Tab creation should happen on the main thread. */ -- mMainThreadHandler.post(() -> { -- mTabCreator.createNewTab(firstCode.rawValue); -- mNavigationObserver.onNavigation(); -- }); +- openUrl(firstCode.rawValue); +- mNavigationObserver.onNavigation(); +- RecordUserAction.record("SharingQRCode.ScannedURL"); ++ return; + } + + private void openUrl(String url) { +@@ -187,16 +151,5 @@ public class QrCodeScanMediator implemen + } + + private void initBarcodeDetectorAsync() { +- new AsyncTask() { +- @Override +- protected BarcodeDetector doInBackground() { +- return new BarcodeDetector.Builder(mContext).build(); +- } +- +- @Override +- protected void onPostExecute(BarcodeDetector detector) { +- mDetector = detector; +- } +- }.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); } } +--- a/chrome/android/BUILD.gn ++++ b/chrome/android/BUILD.gn +@@ -265,8 +265,6 @@ android_library("chrome_java") { + "$google_play_services_package:google_play_services_base_java", + "$google_play_services_package:google_play_services_basement_java", + "$google_play_services_package:google_play_services_tasks_java", +- "$google_play_services_package:google_play_services_vision_common_java", +- "$google_play_services_package:google_play_services_vision_java", + "//base:base_java", + "//base:jni_java", + "//chrome/android/features/cablev2_authenticator:public_java", +--- a/chrome/android/features/cablev2_authenticator/internal/BUILD.gn ++++ b/chrome/android/features/cablev2_authenticator/internal/BUILD.gn +@@ -18,8 +18,6 @@ if (enable_android_cablev2_authenticator + deps = [ + "$google_play_services_package:google_play_services_base_java", + "$google_play_services_package:google_play_services_tasks_java", +- "$google_play_services_package:google_play_services_vision_common_java", +- "$google_play_services_package:google_play_services_vision_java", + "//base:base_java", + "//base:jni_java", + "//chrome/android:chrome_java", diff --git a/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.play.core.splitcompat-com.google.android.play.core.splitinstall.patch b/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.play.core.splitcompat-com.google.android.play.core.splitinstall.patch index ea0270f..3220366 100644 --- a/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.play.core.splitcompat-com.google.android.play.core.splitinstall.patch +++ b/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.play.core.splitcompat-com.google.android.play.core.splitinstall.patch @@ -301,9 +301,9 @@ Subject: Remove dependency on com.google.android.play.core.splitcompat, com.goog -import com.google.android.play.core.splitinstall.model.SplitInstallSessionStatus; - import org.chromium.base.ContextUtils; - import org.chromium.base.metrics.CachedMetrics.EnumeratedHistogramSample; import org.chromium.base.metrics.RecordHistogram; -@@ -55,19 +51,6 @@ public class SplitAvailabilityLogger { + +@@ -54,19 +50,6 @@ public class SplitAvailabilityLogger { requestedModules.addAll(prefs.getStringSet(DEFERRED_REQ_PREV, new HashSet<>())); Context context = ContextUtils.getApplicationContext(); @@ -323,7 +323,7 @@ Subject: Remove dependency on com.google.android.play.core.splitcompat, com.goog } private static void recordAvailabilityStatus(String moduleName, int status) { -@@ -82,14 +65,6 @@ public class SplitAvailabilityLogger { +@@ -80,14 +63,6 @@ public class SplitAvailabilityLogger { * @param moduleName The module name. */ public void logInstallTimes(String moduleName) { @@ -338,7 +338,7 @@ Subject: Remove dependency on com.google.android.play.core.splitcompat, com.goog } /** -@@ -169,7 +144,7 @@ public class SplitAvailabilityLogger { +@@ -167,7 +142,7 @@ public class SplitAvailabilityLogger { public InstallTimes(boolean isCached) { mIsCached = isCached; @@ -355,7 +355,7 @@ Subject: Remove dependency on com.google.android.play.core.splitcompat, com.goog -import com.google.android.play.core.splitinstall.model.SplitInstallErrorCode; - - import org.chromium.base.metrics.CachedMetrics.EnumeratedHistogramSample; + import org.chromium.base.metrics.RecordHistogram; class SplitInstallFailureLogger { @@ -38,40 +36,7 @@ class SplitInstallFailureLogger { @@ -423,7 +423,7 @@ Subject: Remove dependency on com.google.android.play.core.splitcompat, com.goog -import com.google.android.play.core.splitinstall.model.SplitInstallSessionStatus; - - import org.chromium.base.metrics.CachedMetrics.EnumeratedHistogramSample; + import org.chromium.base.metrics.RecordHistogram; class SplitInstallStatusLogger { @@ -28,32 +26,11 @@ class SplitInstallStatusLogger { diff --git a/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.play.patch b/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.play.patch index 8e93ad3..d1caecd 100644 --- a/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.play.patch +++ b/patches/ungoogled-chromium-android/Remove-dependency-on-com.google.android.play.patch @@ -3,31 +3,19 @@ Date: Fri, 1 Nov 2019 23:01:41 +0100 Subject: Remove dependency on com.google.android.play --- - chrome/android/BUILD.gn | 6 + chrome/android/BUILD.gn | 1 chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/FakeAppUpdateManagerWrapper.java | 60 -- chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/InlineUpdateControllerFactory.java | 16 chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/PlayInlineUpdateController.java | 226 ---------- components/module_installer/android/BUILD.gn | 1 third_party/google_android_play_core/BUILD.gn | 5 - 6 files changed, 3 insertions(+), 311 deletions(-) + 6 files changed, 3 insertions(+), 306 deletions(-) --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -222,11 +222,6 @@ android_library("chrome_java") { - ":partner_location_descriptor_proto_java", - ":update_proto_java", - ":usage_stats_proto_java", -- "$google_play_services_package:google_play_services_base_java", -- "$google_play_services_package:google_play_services_basement_java", -- "$google_play_services_package:google_play_services_tasks_java", -- "$google_play_services_package:google_play_services_vision_common_java", -- "$google_play_services_package:google_play_services_vision_java", - "//base:base_java", - "//base:jni_java", - "//chrome/android/features/keyboard_accessory:public_java", -@@ -361,7 +356,6 @@ android_library("chrome_java") { +@@ -425,7 +425,6 @@ android_library("chrome_java") { + "//third_party/cacheinvalidation:cacheinvalidation_javalib", "//third_party/cacheinvalidation:cacheinvalidation_proto_java", - "//third_party/cct_dynamic_module:cct_dynamic_module_java", "//third_party/gif_player:gif_player_java", - "//third_party/google_android_play_core:com_google_android_play_core_java", "//third_party/jsr-305:jsr_305_javalib", diff --git a/patches/ungoogled-chromium-android/change-package-name-chromium.patch b/patches/ungoogled-chromium-android/change-package-name-chromium.patch index 1baef51..97770ad 100644 --- a/patches/ungoogled-chromium-android/change-package-name-chromium.patch +++ b/patches/ungoogled-chromium-android/change-package-name-chromium.patch @@ -8,13 +8,14 @@ author: Wengling Chen --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -35,8 +35,8 @@ import("java_sources.gni") - import("static_initializers.gni") - import("trichrome.gni") - --chrome_public_manifest_package = "org.chromium.chrome" +@@ -43,9 +43,9 @@ declare_args() { + # WebView providers which declare one of a handful of package names. See + # https://chromium.9oo91esource.qjz9zk/chromium/src/+/HEAD/android_webview/docs/build-instructions.md#Changing-package-name + # for details. +- chrome_public_manifest_package = "org.chromium.chrome" ++ chrome_public_manifest_package = "org.ungoogled.chromium" + } -chrome_public_test_manifest_package = "org.chromium.chrome.tests" -+chrome_public_manifest_package = "org.ungoogled.chromium" +chrome_public_test_manifest_package = "org.ungoogled.chromium.tests" chrome_public_jinja_variables = diff --git a/patches/ungoogled-main-repo-fix.patch b/patches/ungoogled-main-repo-fix.patch index 2a63d25..0b6937f 100644 --- a/patches/ungoogled-main-repo-fix.patch +++ b/patches/ungoogled-main-repo-fix.patch @@ -4,14 +4,14 @@ author: Wengling Chen --- a/ungoogled-chromium/pruning.list +++ b/ungoogled-chromium/pruning.list -@@ -14,7 +14,6 @@ base/test/data/pe_image/pe_image_test_32.dll - base/test/data/pe_image/pe_image_test_64.dll - base/test/data/pe_image/pe_image_test_arm64.dll +@@ -17,7 +17,6 @@ base/test/data/pe_image/pe_image_test_32.dll + base/test/data/tzdata/2019a/44/le/timezoneTypes.res + base/test/data/tzdata/2019a/44/le/zoneinfo64.res build/android/CheckInstallApk-debug.apk -build/android/chromium-debug.keystore + build/android/stacktrace/java_deobfuscate.jar build/android/tests/symbolize/liba.so build/android/tests/symbolize/libb.so - build/linux/sysroot_scripts/debian_archive_unstable.gpg @@ -14727,12 +14725,9 @@ third_party/hunspell/fuzz/bdict_corpus/en-US-7-1.bdic third_party/hunspell/fuzz/bdict_corpus/en-US-8-0.bdic third_party/hunspell/fuzz/bdict_corpus/f95048cdc0fc231dd712bad106578a9eeecd869b @@ -25,6 +25,14 @@ author: Wengling Chen third_party/icu/flutter/icudtl.dat third_party/icu/ios/icudtl.dat third_party/icu/source/data/in/coll/ucadata-implicithan.icu +@@ -15178,7 +15178,6 @@ base/test/data/pe_image/pe_image_test_32.dll + third_party/icu/tzres/metaZones.res + third_party/icu/tzres/timezoneTypes.res + third_party/icu/tzres/zoneinfo64.res +-third_party/jetifier_standalone/lib/jetifier-standalone.jar + third_party/libdrm/src/intel/tests/gen4-3d.batch + third_party/libdrm/src/intel/tests/gen5-3d.batch + third_party/libdrm/src/intel/tests/gen6-3d.batch --- a/ungoogled-chromium/flags.gn +++ b/ungoogled-chromium/flags.gn @@ -11,7 +11,6 @@ diff --git a/pruning_2.list b/pruning_2.list index befd684..ee244b3 100644 --- a/pruning_2.list +++ b/pruning_2.list @@ -1,6 +1,6 @@ ./third_party/junit/src/lib/hamcrest-core-1.3.jar ./third_party/junit/src/lib/hamcrest-core-1.3-sources.jar -./third_party/android_build_tools/bundletool/bundletool-all-0.12.0.jar +./third_party/android_build_tools/bundletool/bundletool-all-0.13.3.jar ./third_party/byte_buddy/android_sdk_build_tools_25_0_2/build-tools/25.0.2/lib/dx.jar ./third_party/android_protobuf/src/benchmarks/google_message2.dat ./third_party/sqlite4java/lib/windows-x86/sqlite4java.dll @@ -9,6 +9,8 @@ ./third_party/sqlite4java/lib/windows-x86_64/sqlite4java.dll ./third_party/sqlite4java/lib/linux-x86_64/libsqlite4java.so ./third_party/sqlite4java/lib/mac-x86_64/libsqlite4java.jnilib +./third_party/proguard/lib/proguard603.jar +./third_party/proguard/lib/retrace603.jar ./chrome/browser/resource_coordinator/tab_ranker/example_preprocessor_config.pb ./chrome/browser/resource_coordinator/tab_ranker/pairwise_preprocessor_config.pb ./chrome/common/win/eventlog_messages.mc