From 813f5e752cb24581dd874e04ce460f29d8af2ac2 Mon Sep 17 00:00:00 2001 From: Nishith Khanna Date: Mon, 30 Jun 2025 07:04:11 +0000 Subject: [PATCH 01/11] Dockerfile: update chromium version to 138.0.7204.50 --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 604c8906..561e9b6e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,7 @@ FROM ubuntu:20.04 ENV CHROMIUM_DIR "/srv/chromium" -ENV CHROMIUM_VER "135.0.7049.100" +ENV CHROMIUM_VER "138.0.7204.50" RUN apt-get update && \ DEBIAN_FRONTEND=noninteractive \ -- GitLab From 78dfda1fc57e42bbc86514c82784c3cc706e66cc Mon Sep 17 00:00:00 2001 From: Nishith Khanna Date: Mon, 30 Jun 2025 07:04:15 +0000 Subject: [PATCH 02/11] Update cromite patches --- .../AImageReader-CFI-crash-mitigations.patch | 53 +- .../Add-AllowUserCertificates-flag.patch | 34 +- ...dd-Alt-D-hotkey-to-focus-address-bar.patch | 23 +- .../Add-a-proxy-configuration-page.patch | 61 +- .../Add-an-always-incognito-mode.patch | 380 +-- .../Add-autoplay-site-setting.patch | 6 +- .../Add-bookmark-import-export-actions.patch | 276 +- .../Add-cromite-flags-support.patch | 222 +- ...dd-custom-tab-intents-privacy-option.patch | 71 +- .../cromite_patches/Add-exit-menu-item.patch | 20 +- ...g-for-omnibox-autocomplete-filtering.patch | 6 +- .../Add-flag-to-disable-IPv6-probes.patch | 6 +- ...-to-disable-external-intent-requests.patch | 36 +- .../Add-flag-to-disable-vibration.patch | 2 +- ...Add-lifetime-options-for-permissions.patch | 434 ++- .../Add-menu-item-to-bookmark-all-tabs.patch | 199 +- .../Add-menu-item-to-view-source.patch | 76 +- .../Add-option-to-force-tablet-UI.patch | 145 +- ...-to-not-persist-tabs-across-sessions.patch | 45 +- .../Add-option-to-use-home-page-as-NTP.patch | 50 +- build/cromite_patches/Add-search-engine.patch | 131 +- .../Add-site-engagement-flag.patch | 8 +- ...-support-for-ISupportHelpAndFeedback.patch | 20 +- .../Add-support-for-writing-URIs.patch | 26 +- .../Add-webGL-site-setting.patch | 10 +- .../Add-webRTC-site-settings.patch | 8 +- ...ow-building-without-enable_reporting.patch | 78 +- ...ow-building-without-supervised-users.patch | 102 +- .../Allow-playing-audio-in-background.patch | 8 +- ...e-new-tab-page-for-default-home-page.patch | 29 +- ...ioBuffer-AnalyserNode-fp-mitigations.patch | 12 +- .../Block-qjz9zk-or-trk-requests.patch | 18 +- .../Bookmarks-select-all-menu-entry.patch | 12 +- .../Bromite-package-name.patch | 2 +- .../Bromite-subresource-adblocker.patch | 155 +- .../Client-hints-overrides.patch | 26 +- .../Content-settings-infrastructure.patch | 424 +-- ...ctionary-suggestions-for-the-Omnibox.patch | 8 +- ...ble-Accessibility-service-by-default.patch | 2 +- .../Disable-Android-Tab-Declutter.patch | 60 +- .../Disable-PrivacyGuide.patch | 2 +- .../Disable-TLS-resumption.patch | 18 +- .../Disable-all-predictors-code.patch | 188 +- .../Disable-all-promo-dialogs.patch | 34 +- .../Disable-conversion-measurement-api.patch | 108 +- .../Disable-crash-reporting.patch | 10 +- .../Disable-feeds-support-by-default.patch | 2 +- ...Disable-fetching-of-all-field-trials.patch | 52 +- .../Disable-idle-detection.patch | 4 +- ...media-router-and-remoting-by-default.patch | 6 +- .../Disable-minidump-upload-scheduling.patch | 2 +- .../Disable-omission-of-URL-elements.patch | 40 +- .../Disable-plugins-enumeration.patch | 2 +- ...e-privacy-issues-in-password-manager.patch | 38 +- .../Disable-privacy-sandbox.patch | 250 +- ...e-references-to-fonts.googleapis.com.patch | 4 +- .../Disable-safety-check.patch | 189 +- .../Disable-smart-selection-by-default.patch | 18 +- ...isable-some-signed-exchange-features.patch | 2 +- .../Disable-text-fragments-by-default.patch | 10 +- .../Disable-third-party-origin-trials.patch | 16 +- .../Disable-various-metrics.patch | 96 +- .../Do-not-build-API-keys-infobar.patch | 20 +- .../Do-not-compile-QR-code-sharing.patch | 28 +- ...ore-download-location-prompt-setting.patch | 8 +- .../Do-not-link-with-libatomic.patch | 2 +- .../Do-not-store-passwords-by-default.patch | 6 +- build/cromite_patches/DoH-improvements.patch | 14 +- .../Enable-Certificate-Transparency.patch | 6 +- .../Enable-HEVC-by-default.patch | 4 +- .../Enable-ImprovedBookmarks-by-default.patch | 10 +- ...ctOriginIsolation-and-SitePerProcess.patch | 8 +- ...e-darken-websites-checkbox-in-themes.patch | 2 +- ...fwrapv-in-Clang-for-non-UBSan-builds.patch | 2 +- .../Enable-native-Android-autofill.patch | 210 +- .../Enable-network-isolation-features.patch | 21 +- .../cromite_patches/Enable-share-intent.patch | 52 +- .../Experimental-user-scripts-support.patch | 117 +- .../Eyeo-Adblock-for-Cromite.patch | 221 +- .../Fix-chromium-build-bugs.patch | 14 +- .../Fix-chromium-vanilla.patch | 2 +- .../Follow-only-system-dark-mode.patch | 2 +- ...ing-against-incognito-mode-detection.patch | 10 +- ...story-number-of-days-privacy-setting.patch | 92 +- ...e-enterprise-policies-for-secure-DNS.patch | 28 +- ...number-of-autocomplete-matches-to-10.patch | 2 +- build/cromite_patches/JIT-site-settings.patch | 22 +- .../Keep-empty-tabs-between-sessions.patch | 4 +- ...-allow-screenshots-in-Incognito-mode.patch | 4 +- .../Logcat-crash-reports-UI.patch | 6 +- .../Modify-default-preferences.patch | 22 +- .../Move-navigation-bar-to-bottom.patch | 714 +++-- ...nt-settings-back-to-privacy-settings.patch | 39 +- .../OpenSearch-miscellaneous.patch | 20 +- .../Override-Navigator-Language.patch | 2 +- .../Partition-Blink-memory-cache.patch | 49 +- .../Partition-blobs-by-top-frame-URL.patch | 178 +- ...-modal-dialog-flag-to-close-all-tabs.patch | 22 +- ...e-introduce-override_build_timestamp.patch | 31 +- ...ders-in-DoH-requests-to-bare-minimum.patch | 6 +- ...referrals-in-cross-origin-navigation.patch | 98 +- .../Remove-SMS-integration.patch | 11 +- .../Remove-binary-blob-integrations.patch | 2734 +++++++++-------- ...cklisted-URLs-upon-bookmark-creation.patch | 14 +- .../Remove-help-menu-item.patch | 56 +- ...load-of-com.google.android.gms.fonts.patch | 2 +- .../Remove-segmentation-platform.patch | 2 +- ...Remove-voice-recognition-integration.patch | 146 +- ...ndow-name-on-cross-origin-navigation.patch | 4 +- ...ore-BookmarkToolbar-setCurrentFolder.patch | 59 +- .../Restore-LastTabStandingTracker.patch | 16 +- .../Restore-Search-Ready-Omnibox-flag.patch | 30 +- .../Restore-Simplified-NTP-launch.patch | 366 ++- ...-button-in-top-toolbar-customization.patch | 198 +- .../Restore-chrome-password-store.patch | 32 +- .../Restore-offline-indicator-v2-flag.patch | 10 +- ...evert-Permit-blocking-of-view-source.patch | 4 +- ...emove-disable-pull-to-refresh-effect.patch | 103 +- ...l-of-execution-context-address-space.patch | 112 +- ...script-content-setting-secondary-url.patch | 26 +- ...-Note-9-SDK27-crazylinker-workaround.patch | 2 +- ...tings-for-cookies-javascript-and-ads.patch | 12 +- .../Site-setting-for-images.patch | 37 +- .../Switch-to-fstack-protector-strong.patch | 2 +- .../Timezone-customization.patch | 32 +- .../Use-browser-navigation-handler.patch | 36 +- .../User-agent-customization.patch | 145 +- build/cromite_patches/Welcome-screen.patch | 92 +- .../autofill-miscellaneous.patch | 83 +- .../cromite_patches/bromite-build-utils.patch | 57 +- .../disable-AdsBlockedInfoBar.patch | 4 +- .../disable-WebView-variations-support.patch | 35 +- .../do-not-add-suffix-to-package-name.patch | 2 +- .../enable-ftrivial-auto-var-init-zero.patch | 2 +- .../exit-on-failure-of-inclusion.patch | 2 +- .../eyeo-133.0.6943.49-android_api.patch | 68 +- .../eyeo-133.0.6943.49-android_settings.patch | 6 +- .../eyeo-133.0.6943.49-base.patch | 129 +- ...yeo-133.0.6943.49-chrome_integration.patch | 125 +- .../eyeo-133.0.6943.49-extension_api.patch | 61 +- build/cromite_patches/kill-Auth.patch | 39 +- .../kill-Location-fall-back-to-system.patch | 8 +- build/cromite_patches/kill-Vision.patch | 4 +- .../sharing-hub-always-use-visible-URL.patch | 2 +- ...hromium-Disable-Network-Time-Tracker.patch | 2 +- ...d-chromium-Disable-intranet-detector.patch | 2 +- ...gled-chromium-Disable-profile-avatar.patch | 6 +- ...romium-Disable-translate-integration.patch | 16 +- ...ed-chromium-Disable-untraceable-URLs.patch | 2 +- ...chromium-Disable-webRTC-log-uploader.patch | 2 +- ...ed-chromium-no-special-hosts-domains.patch | 198 +- ...RTC-do-not-expose-local-IP-addresses.patch | 2 +- ...iew-Hard-no-to-persistent-histograms.patch | 2 +- update_cromite_patches.sh | 2 +- 154 files changed, 6509 insertions(+), 5108 deletions(-) diff --git a/build/cromite_patches/AImageReader-CFI-crash-mitigations.patch b/build/cromite_patches/AImageReader-CFI-crash-mitigations.patch index 438fb642..4d7bbc8a 100644 --- a/build/cromite_patches/AImageReader-CFI-crash-mitigations.patch +++ b/build/cromite_patches/AImageReader-CFI-crash-mitigations.patch @@ -31,8 +31,8 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html gpu/config/gpu_util.cc | 8 ++++++++ gpu/config/gpu_workaround_list.txt | 1 + gpu/ipc/service/gpu_init.cc | 8 ++++++++ - gpu/ipc/service/stream_texture_android.cc | 10 +++++++++- - 12 files changed, 87 insertions(+), 1 deletion(-) + media/gpu/android/video_frame_factory_impl.cc | 4 +++- + 12 files changed, 81 insertions(+), 1 deletion(-) create mode 100644 cromite_flags/media/base/media_switches_cc/AImageReader-CFI-crash-mitigations.inc create mode 100644 cromite_flags/media/base/media_switches_h/AImageReader-CFI-crash-mitigations.inc @@ -90,10 +90,10 @@ diff --git a/base/android/android_image_reader_compat.h b/base/android/android_i diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json --- a/chrome/browser/flag-metadata.json +++ b/chrome/browser/flag-metadata.json -@@ -3268,6 +3268,10 @@ - "name": "enable-identity-in-auth-error", - "owners": [ "jlebel@chromium.org", "chrome-signin-team@google.com" ], - "expiry_milestone": 135 +@@ -3509,6 +3509,10 @@ + "chrome-signin-team@google.com" + ], + "expiry_milestone": 138 + },{ + "name": "enable-image-reader", // Bromite: do not expire + "owners": [ "vikassoni@chromium.org", "liberato@chromium.org" ], // flag @@ -119,7 +119,7 @@ new file mode 100644 diff --git a/gpu/config/gpu_driver_bug_list.json b/gpu/config/gpu_driver_bug_list.json --- a/gpu/config/gpu_driver_bug_list.json +++ b/gpu/config/gpu_driver_bug_list.json -@@ -2593,6 +2593,22 @@ +@@ -2613,6 +2613,22 @@ "no_downscaled_overlay_promotion" ] }, @@ -171,7 +171,7 @@ diff --git a/gpu/config/gpu_finch_features.h b/gpu/config/gpu_finch_features.h diff --git a/gpu/config/gpu_util.cc b/gpu/config/gpu_util.cc --- a/gpu/config/gpu_util.cc +++ b/gpu/config/gpu_util.cc -@@ -126,6 +126,9 @@ GpuFeatureStatus GetAndroidSurfaceControlFeatureStatus( +@@ -127,6 +127,9 @@ GpuFeatureStatus GetAndroidSurfaceControlFeatureStatus( #if !BUILDFLAG(IS_ANDROID) return kGpuFeatureStatusDisabled; #else @@ -215,7 +215,7 @@ diff --git a/gpu/ipc/service/gpu_init.cc b/gpu/ipc/service/gpu_init.cc #endif #if BUILDFLAG(ENABLE_VULKAN) -@@ -692,6 +693,13 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandLine* command_line, +@@ -687,6 +688,13 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandLine* command_line, } #endif // BUILDFLAG(IS_WIN) @@ -229,24 +229,21 @@ diff --git a/gpu/ipc/service/gpu_init.cc b/gpu/ipc/service/gpu_init.cc if (gpu_feature_info_.status_values[GPU_FEATURE_TYPE_VULKAN] != kGpuFeatureStatusEnabled || !InitializeVulkan()) { -diff --git a/gpu/ipc/service/stream_texture_android.cc b/gpu/ipc/service/stream_texture_android.cc ---- a/gpu/ipc/service/stream_texture_android.cc -+++ b/gpu/ipc/service/stream_texture_android.cc -@@ -50,7 +50,15 @@ std::unique_ptr MakeCurrent( - } +diff --git a/media/gpu/android/video_frame_factory_impl.cc b/media/gpu/android/video_frame_factory_impl.cc +--- a/media/gpu/android/video_frame_factory_impl.cc ++++ b/media/gpu/android/video_frame_factory_impl.cc +@@ -35,10 +35,12 @@ namespace { - TextureOwner::Mode GetTextureOwnerMode() { -- return base::android::EnableAndroidImageReader() -+ const bool a_image_reader_supported = -+ base::android::AndroidImageReader::GetInstance().IsSupported(); -+ -+ // TODO(vikassoni) : Currently we have 2 different flags to enable/disable -+ // AImageReader - one for MCVD and other for MediaPlayer here. Merge those 2 -+ // flags into a single flag. Keeping the 2 flags separate for now since finch -+ // experiment using this flag is in progress. -+ return a_image_reader_supported && base::android::EnableAndroidImageReader() && -+ base::FeatureList::IsEnabled(features::kAImageReaderMediaPlayer) - ? TextureOwner::Mode::kAImageReaderInsecure - : TextureOwner::Mode::kSurfaceTextureInsecure; - } + gpu::TextureOwner::Mode GetTextureOwnerMode( + VideoFrameFactory::OverlayMode overlay_mode) { ++ const bool enabled = base::android::EnableAndroidImageReader() && ++ base::FeatureList::IsEnabled(features::kAImageReaderMediaPlayer); + switch (overlay_mode) { + case VideoFrameFactory::OverlayMode::kDontRequestPromotionHints: + case VideoFrameFactory::OverlayMode::kRequestPromotionHints: +- return base::android::EnableAndroidImageReader() ++ return enabled + ? gpu::TextureOwner::Mode::kAImageReaderInsecure + : gpu::TextureOwner::Mode::kSurfaceTextureInsecure; + case VideoFrameFactory::OverlayMode::kSurfaceControlSecure: -- diff --git a/build/cromite_patches/Add-AllowUserCertificates-flag.patch b/build/cromite_patches/Add-AllowUserCertificates-flag.patch index a985da37..a4e93a06 100644 --- a/build/cromite_patches/Add-AllowUserCertificates-flag.patch +++ b/build/cromite_patches/Add-AllowUserCertificates-flag.patch @@ -20,7 +20,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java -@@ -227,6 +227,7 @@ import org.chromium.content_public.browser.LoadUrlParams; +@@ -233,6 +233,7 @@ import org.chromium.content_public.browser.LoadUrlParams; import org.chromium.content_public.browser.SelectionPopupController; import org.chromium.content_public.browser.WebContents; import org.chromium.content_public.common.ContentSwitches; @@ -28,7 +28,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv import org.chromium.printing.PrintManagerDelegateImpl; import org.chromium.printing.PrintingController; import org.chromium.printing.PrintingControllerImpl; -@@ -969,6 +970,8 @@ public abstract class ChromeActivity extends AsyncInitializationActivity +@@ -981,6 +982,8 @@ public abstract class ChromeActivity extends AsyncInitializationActivity super.onStartWithNative(); ChromeActivitySessionTracker.getInstance().onStartWithNative(getProfileProviderSupplier()); @@ -40,7 +40,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc --- a/chrome/browser/flags/android/chrome_feature_list.cc +++ b/chrome/browser/flags/android/chrome_feature_list.cc -@@ -160,6 +160,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { +@@ -169,6 +169,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { &feed::kFeedPerformanceStudy, &feed::kFeedShowSignInCommand, &feed::kFeedSignedOutViewDemotion, @@ -51,31 +51,31 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java --- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java +++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java -@@ -158,6 +158,7 @@ public abstract class ChromeFeatureList { - // Feature names. - /* Alphabetical: */ - public static final String ACT_USER_BYPASS_UX = "ActUserBypassUx"; +@@ -162,6 +162,7 @@ public abstract class ChromeFeatureList { + "AccountForSuppressedKeyboardInsets"; + public static final String ADAPTIVE_BUTTON_IN_TOP_TOOLBAR_CUSTOMIZATION_V2 = + "AdaptiveButtonInTopToolbarCustomizationV2"; + public static final String ALLOW_USER_CERTIFICATES = "AllowUserCertificates"; public static final String ADAPTIVE_BUTTON_IN_TOP_TOOLBAR_PAGE_SUMMARY = "AdaptiveButtonInTopToolbarPageSummary"; - public static final String ADAPTIVE_BUTTON_IN_TOP_TOOLBAR_CUSTOMIZATION_V2 = -@@ -643,6 +644,8 @@ public abstract class ChromeFeatureList { - public static final CachedFlag sAndroidMinimalUiLargeScreen = - newCachedFlag(ANDROID_MINIMAL_UI_LARGE_SCREEN, false); + public static final String ALLOW_TAB_CLOSING_UPON_MINIMIZATION = +@@ -679,6 +680,8 @@ public abstract class ChromeFeatureList { + public static final CachedFlag sAndroidWindowPopupLargeScreen = + newCachedFlag(ANDROID_WINDOW_POPUP_LARGE_SCREEN, false); public static final CachedFlag sAppSpecificHistory = newCachedFlag(APP_SPECIFIC_HISTORY, true); + public static final CachedFlag sAllowUserCertificates = + newCachedFlag(ALLOW_USER_CERTIFICATES, false); public static final CachedFlag sAsyncNotificationManager = newCachedFlag(ASYNC_NOTIFICATION_MANAGER, false, true); public static final CachedFlag sAsyncNotificationManagerForDownload = -@@ -878,6 +881,7 @@ public abstract class ChromeFeatureList { - public static final List sFlagsCachedFullBrowserChromium = - List.of( +@@ -940,6 +943,7 @@ public abstract class ChromeFeatureList { + sAccountForSuppressedKeyboardInsets, + sAllowTabClosingUponMinimization, sAndroidAppIntegration, + sAllowUserCertificates, sAndroidAppIntegrationModule, + sAndroidAppIntegrationMultiDataSource, sAndroidAppIntegrationV2, - sAndroidAppIntegrationWithFavicon, diff --git a/cromite_flags/chrome/browser/about_flags_cc/Add-AllowUserCertificates-flag.inc b/cromite_flags/chrome/browser/about_flags_cc/Add-AllowUserCertificates-flag.inc new file mode 100644 --- /dev/null @@ -111,7 +111,7 @@ new file mode 100644 diff --git a/net/android/java/src/org/chromium/net/X509Util.java b/net/android/java/src/org/chromium/net/X509Util.java --- a/net/android/java/src/org/chromium/net/X509Util.java +++ b/net/android/java/src/org/chromium/net/X509Util.java -@@ -542,6 +542,8 @@ public class X509Util { +@@ -537,6 +537,8 @@ public class X509Util { return userRootBytes.toArray(new byte[0][]); } @@ -120,7 +120,7 @@ diff --git a/net/android/java/src/org/chromium/net/X509Util.java b/net/android/j public static AndroidCertVerifyResult verifyServerCertificates( byte[][] certChain, String authType, -@@ -642,6 +644,9 @@ public class X509Util { +@@ -637,6 +639,9 @@ public class X509Util { X509Certificate root = verifiedChain.get(verifiedChain.size() - 1); isIssuedByKnownRoot = isKnownRoot(root); } diff --git a/build/cromite_patches/Add-Alt-D-hotkey-to-focus-address-bar.patch b/build/cromite_patches/Add-Alt-D-hotkey-to-focus-address-bar.patch index a06517b9..4ae4cb70 100644 --- a/build/cromite_patches/Add-Alt-D-hotkey-to-focus-address-bar.patch +++ b/build/cromite_patches/Add-Alt-D-hotkey-to-focus-address-bar.patch @@ -4,19 +4,22 @@ Subject: Add Alt+D hotkey to focus address bar License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html --- - .../java/src/org/chromium/chrome/browser/KeyboardShortcuts.java | 2 ++ - 1 file changed, 2 insertions(+) + .../src/org/chromium/chrome/browser/KeyboardShortcuts.java | 5 +++++ + 1 file changed, 5 insertions(+) diff --git a/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java b/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java --- a/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java -@@ -472,6 +472,8 @@ public class KeyboardShortcuts { - R.string.keyboard_shortcut_address_bar, - KeyEvent.KEYCODE_L, - KeyEvent.META_CTRL_ON); -+ addShortcut(context, chromeFeatureShortcutGroup, R.string.keyboard_shortcut_address_bar, -+ KeyEvent.KEYCODE_D, KeyEvent.META_ALT_ON); - shortcutGroups.add(chromeFeatureShortcutGroup); +@@ -839,6 +839,11 @@ public class KeyboardShortcuts { + KeyEvent.KEYCODE_B, + (KeyEvent.META_CTRL_ON | KeyEvent.META_SHIFT_ON)); + } ++ addShortcut(context, ++ shortcutGroupsById.get(R.string.keyboard_shortcut_chrome_feature_group_header), ++ R.string.keyboard_shortcut_address_bar, ++ KeyEvent.KEYCODE_D, ++ KeyEvent.META_ALT_ON); + return new ArrayList<>(shortcutGroupsById.values()); + } - KeyboardShortcutGroup webpageShortcutGroup = -- diff --git a/build/cromite_patches/Add-a-proxy-configuration-page.patch b/build/cromite_patches/Add-a-proxy-configuration-page.patch index e4e40be5..98224260 100644 --- a/build/cromite_patches/Add-a-proxy-configuration-page.patch +++ b/build/cromite_patches/Add-a-proxy-configuration-page.patch @@ -38,9 +38,10 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../proxy_config/proxy_config_dictionary.cc | 30 +- .../proxy_config/proxy_config_dictionary.h | 7 +- .../proxy_config/proxy_policy_handler.cc | 2 +- - net/proxy_resolution/proxy_config.cc | 51 ++- + net/proxy_resolution/pac_file_fetcher_impl.cc | 8 - + net/proxy_resolution/proxy_config.cc | 53 ++- net/proxy_resolution/proxy_config.h | 3 + - 25 files changed, 984 insertions(+), 18 deletions(-) + 26 files changed, 986 insertions(+), 26 deletions(-) create mode 100644 chrome/browser/resources/proxy_config.css create mode 100644 chrome/browser/resources/proxy_config.html create mode 100644 chrome/browser/resources/proxy_config.js @@ -77,7 +78,7 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java -@@ -81,6 +81,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment +@@ -101,6 +101,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment private static final String PREF_PASSWORD_LEAK_DETECTION = "password_leak_detection"; private static final String PREF_SYNC_AND_SERVICES_LINK = "sync_and_services_link"; private static final String PREF_PRIVACY_SANDBOX = "privacy_sandbox"; @@ -88,7 +89,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc --- a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc +++ b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc -@@ -333,6 +333,7 @@ ChromeAutocompleteProviderClient::GetBuiltinsToProvideAsUserTypes() { +@@ -372,6 +372,7 @@ ChromeAutocompleteProviderClient::GetBuiltinsToProvideAsUserTypes() { builtins_to_provide.push_back(chrome::kChromeUISettingsURL16); #endif builtins_to_provide.push_back(chrome::kChromeUIVersionURL16); @@ -196,7 +197,7 @@ diff --git a/chrome/browser/net/proxy_service_factory.h b/chrome/browser/net/pro diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc --- a/chrome/browser/prefs/browser_prefs.cc +++ b/chrome/browser/prefs/browser_prefs.cc -@@ -196,6 +196,8 @@ +@@ -204,6 +204,8 @@ #include "printing/buildflags/buildflags.h" #include "rlz/buildflags/buildflags.h" @@ -205,7 +206,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse #if BUILDFLAG(ENABLE_BACKGROUND_MODE) #include "chrome/browser/background/extensions/background_mode_manager.h" #endif -@@ -1561,6 +1563,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) { +@@ -1613,6 +1615,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) { component_updater::RegisterPrefs(registry); domain_reliability::RegisterPrefs(registry); embedder_support::OriginTrialPrefs::RegisterPrefs(registry); @@ -217,7 +218,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse diff --git a/chrome/browser/prefs/chrome_command_line_pref_store.cc b/chrome/browser/prefs/chrome_command_line_pref_store.cc --- a/chrome/browser/prefs/chrome_command_line_pref_store.cc +++ b/chrome/browser/prefs/chrome_command_line_pref_store.cc -@@ -156,7 +156,7 @@ void ChromeCommandLinePrefStore::ApplyProxyMode() { +@@ -160,7 +160,7 @@ void ChromeCommandLinePrefStore::ApplyProxyMode() { command_line()->GetSwitchValueASCII(switches::kProxyBypassList); SetValue(proxy_config::prefs::kProxy, base::Value(ProxyConfigDictionary::CreateFixedServers( @@ -660,7 +661,7 @@ new file mode 100644 diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn --- a/chrome/browser/ui/BUILD.gn +++ b/chrome/browser/ui/BUILD.gn -@@ -224,6 +224,8 @@ static_library("ui") { +@@ -204,6 +204,8 @@ static_library("ui") { "webui/metrics_internals/metrics_internals_ui.h", "webui/net_export_ui.cc", "webui/net_export_ui.h", @@ -672,7 +673,7 @@ diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn diff --git a/chrome/browser/ui/webui/chrome_web_ui_configs.cc b/chrome/browser/ui/webui/chrome_web_ui_configs.cc --- a/chrome/browser/ui/webui/chrome_web_ui_configs.cc +++ b/chrome/browser/ui/webui/chrome_web_ui_configs.cc -@@ -54,6 +54,9 @@ +@@ -57,6 +57,9 @@ #include "extensions/buildflags/buildflags.h" #include "printing/buildflags/buildflags.h" @@ -682,7 +683,7 @@ diff --git a/chrome/browser/ui/webui/chrome_web_ui_configs.cc b/chrome/browser/u #if BUILDFLAG(ENABLE_NACL) #include "chrome/browser/ui/webui/nacl_ui.h" #endif -@@ -391,7 +394,7 @@ void RegisterChromeWebUIConfigs() { +@@ -422,7 +425,7 @@ void RegisterChromeWebUIConfigs() { map.AddWebUIConfig(std::make_unique()); map.AddWebUIConfig(std::make_unique()); #endif @@ -1134,7 +1135,7 @@ new file mode 100644 diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_constants.cc --- a/chrome/common/webui_url_constants.cc +++ b/chrome/common/webui_url_constants.cc -@@ -50,6 +50,7 @@ bool IsSystemWebUIHost(std::string_view host) { +@@ -51,6 +51,7 @@ bool IsSystemWebUIHost(std::string_view host) { kChromeUILockScreenNetworkHost, kChromeUILockScreenStartReauthHost, kChromeUIMobileSetupHost, @@ -1142,7 +1143,7 @@ diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_cons kChromeUIMultiDeviceSetupHost, kChromeUINetworkHost, kChromeUINotificationTesterHost, -@@ -71,6 +72,7 @@ bool IsSystemWebUIHost(std::string_view host) { +@@ -72,6 +73,7 @@ bool IsSystemWebUIHost(std::string_view host) { // These hosts will also be suggested by BuiltinProvider. base::span ChromeURLHosts() { static constexpr auto kChromeURLHosts = std::to_array({ @@ -1153,10 +1154,10 @@ diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_cons diff --git a/chrome/common/webui_url_constants.h b/chrome/common/webui_url_constants.h --- a/chrome/common/webui_url_constants.h +++ b/chrome/common/webui_url_constants.h -@@ -161,6 +161,8 @@ inline constexpr char kChromeUINetExportHost[] = "net-export"; - inline constexpr char kChromeUINetInternalsHost[] = "net-internals"; +@@ -179,6 +179,8 @@ inline constexpr char kChromeUINetInternalsHost[] = "net-internals"; inline constexpr char kChromeUINetInternalsURL[] = "chrome://net-internals/"; inline constexpr char kChromeUINewTabHost[] = "newtab"; + inline constexpr char kChromeUINewTabFooterHost[] = "newtab-footer"; +inline constexpr char16_t kChromeUIProxyConfigURL16[] = u"chrome://proxy/"; +inline constexpr char kChromeUIProxyConfigHost[] = "proxy"; inline constexpr char kChromeUINewTabPageHost[] = "new-tab-page"; @@ -1328,11 +1329,29 @@ diff --git a/components/proxy_config/proxy_policy_handler.cc b/components/proxy_ } break; } +diff --git a/net/proxy_resolution/pac_file_fetcher_impl.cc b/net/proxy_resolution/pac_file_fetcher_impl.cc +--- a/net/proxy_resolution/pac_file_fetcher_impl.cc ++++ b/net/proxy_resolution/pac_file_fetcher_impl.cc +@@ -359,14 +359,6 @@ bool PacFileFetcherImpl::ConsumeBytesRead(URLRequest* request, int num_bytes) { + return false; + } + +- // Enforce maximum size bound. +- if (num_bytes + bytes_read_so_far_.size() > +- static_cast(max_response_bytes_)) { +- result_code_ = ERR_FILE_TOO_BIG; +- request->Cancel(); +- return false; +- } +- + bytes_read_so_far_.append(buf_->data(), num_bytes); + return true; + } diff --git a/net/proxy_resolution/proxy_config.cc b/net/proxy_resolution/proxy_config.cc --- a/net/proxy_resolution/proxy_config.cc +++ b/net/proxy_resolution/proxy_config.cc -@@ -129,7 +129,7 @@ void ProxyConfig::ProxyRules::ParseFromString(const std::string& proxy_rules, - std::move(url_scheme), &single_proxies, ProxyServer::SCHEME_HTTP, +@@ -133,7 +133,7 @@ void ProxyConfig::ProxyRules::ParseFromString(std::string_view proxy_rules, + url_scheme, &single_proxies, ProxyServer::SCHEME_HTTP, allow_bracketed_proxy_chains, is_quic_allowed); type = Type::PROXY_LIST; - return; @@ -1340,7 +1359,7 @@ diff --git a/net/proxy_resolution/proxy_config.cc b/net/proxy_resolution/proxy_c } // Trim whitespace off the url scheme. -@@ -160,6 +160,55 @@ void ProxyConfig::ProxyRules::ParseFromString(const std::string& proxy_rules, +@@ -164,6 +164,57 @@ void ProxyConfig::ProxyRules::ParseFromString(std::string_view proxy_rules, } } @@ -1348,8 +1367,10 @@ diff --git a/net/proxy_resolution/proxy_config.cc b/net/proxy_resolution/proxy_c + if (type == Type::PROXY_LIST) { + std::string proxy_list; + for (const auto& proxy_chain : single_proxies.AllChains()) { -+ net::ProxyServer proxy_server = proxy_chain.GetProxyServer(/*chain_index=*/0); -+ proxy_list += ProxyServerToProxyUri(proxy_server) + ";"; ++ if (proxy_chain.length()) { ++ net::ProxyServer proxy_server = proxy_chain.GetProxyServer(/*chain_index=*/0); ++ proxy_list += ProxyServerToProxyUri(proxy_server) + ";"; ++ } + } + // remove last semicolon + if (proxy_list.length() != 0 ) { @@ -1400,7 +1421,7 @@ diff --git a/net/proxy_resolution/proxy_config.h b/net/proxy_resolution/proxy_co --- a/net/proxy_resolution/proxy_config.h +++ b/net/proxy_resolution/proxy_config.h @@ -107,6 +107,9 @@ class NET_EXPORT ProxyConfig { - void ParseFromString(const std::string& proxy_rules, + void ParseFromString(std::string_view proxy_rules, bool allow_bracketed_proxy_chains = false, bool is_quic_allowed = false); + // Returns the proxy rules in a format that can be parsed by ParseFromString; diff --git a/build/cromite_patches/Add-an-always-incognito-mode.patch b/build/cromite_patches/Add-an-always-incognito-mode.patch index 3b970c9b..41e4e984 100644 --- a/build/cromite_patches/Add-an-always-incognito-mode.patch +++ b/build/cromite_patches/Add-an-always-incognito-mode.patch @@ -26,12 +26,12 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../AlwaysIncognitoLinkInterceptor.java | 54 ++++++ .../chrome/browser/ChromeTabbedActivity.java | 28 ++- .../chrome/browser/app/ChromeActivity.java | 4 + - .../AppMenuPropertiesDelegateImpl.java | 28 ++- - .../ChromeContextMenuPopulator.java | 7 +- + .../AppMenuPropertiesDelegateImpl.java | 7 +- + .../ChromeContextMenuPopulator.java | 6 +- .../CustomTabActivityLifecycleUmaTracker.java | 39 ----- .../CustomTabAppMenuPropertiesDelegate.java | 4 + .../CustomTabIntentDataProvider.java | 10 ++ - .../browser/download/DownloadUtils.java | 16 +- + .../browser/download/DownloadUtils.java | 13 +- .../history/HistoryContentManager.java | 7 +- .../browser/history/HistoryManager.java | 27 ++- .../chrome/browser/history/HistoryPage.java | 16 ++ @@ -42,6 +42,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../HistoricalTabModelObserver.java | 5 +- .../tab/tab_restore/HistoricalTabSaver.java | 2 +- .../tab_restore/HistoricalTabSaverImpl.java | 17 +- + .../TabbedAppMenuPropertiesDelegate.java | 17 +- .../tabbed_mode/TabbedRootUiCoordinator.java | 4 +- .../browser/tabmodel/ChromeTabCreator.java | 5 +- .../tabmodel/TabModelSelectorImpl.java | 3 + @@ -68,6 +69,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html chrome/browser/profiles/profile_selections.h | 7 +- .../browser/ui/android/native_page/BUILD.gn | 2 + .../browser/ui/native_page/NativePage.java | 22 ++- + .../browser/omnibox/LocationBarMediator.java | 10 +- .../strings/android_chrome_strings.grd | 25 +++ .../browser/toolbar/LocationBarModel.java | 5 +- chrome/browser/ui/messages/android/BUILD.gn | 1 + @@ -86,7 +88,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../add-an-always-incognito-mode.inc | 1 + .../add-an-always-incognito-mode.inc | 3 + .../add-an-always-incognito-mode.inc | 1 + - 67 files changed, 797 insertions(+), 112 deletions(-) + 69 files changed, 798 insertions(+), 113 deletions(-) create mode 100644 chrome/android/java/res/xml/incognito_preferences.xml create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/AlwaysIncognitoLinkInterceptor.java create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/IncognitoSettings.java @@ -99,7 +101,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_java_resources.gni --- a/chrome/android/chrome_java_resources.gni +++ b/chrome/android/chrome_java_resources.gni -@@ -643,6 +643,7 @@ chrome_java_resources = [ +@@ -646,6 +646,7 @@ chrome_java_resources = [ "java/res/xml/main_preferences_legacy.xml", "java/res/xml/manage_sync_preferences.xml", "java/res/xml/personalize_google_services_preferences.xml", @@ -118,7 +120,7 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java "java/src/com/google/android/apps/chrome/appwidget/bookmarks/BookmarkThumbnailWidgetProvider.java", "java/src/org/chromium/chrome/browser/ActivityTabProvider.java", "java/src/org/chromium/chrome/browser/ActivityUtils.java", -@@ -879,6 +880,7 @@ chrome_java_sources = [ +@@ -898,6 +899,7 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/privacy/settings/IncognitoLockSettings.java", "java/src/org/chromium/chrome/browser/privacy/settings/PrivacyPreferencesManagerImpl.java", "java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java", @@ -171,7 +173,7 @@ new file mode 100644 diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml --- a/chrome/android/java/res/xml/privacy_preferences.xml +++ b/chrome/android/java/res/xml/privacy_preferences.xml -@@ -91,6 +91,11 @@ found in the LICENSE file. +@@ -90,6 +90,11 @@ found in the LICENSE file. android:key="secure_dns" android:title="@string/settings_secure_dns_title" android:fragment="org.chromium.chrome.browser.privacy.secure_dns.SecureDnsSettings" /> @@ -245,7 +247,7 @@ new file mode 100644 diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java -@@ -71,6 +71,10 @@ import org.chromium.base.task.TaskTraits; +@@ -74,6 +74,10 @@ import org.chromium.base.task.TaskTraits; import org.chromium.build.annotations.UsedByReflection; import org.chromium.cc.input.BrowserControlsState; import org.chromium.chrome.R; @@ -253,10 +255,10 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct +import org.chromium.components.user_prefs.UserPrefs; +import org.chromium.chrome.browser.preferences.Pref; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; + import org.chromium.chrome.browser.IntentHandler.ExternalAppId; import org.chromium.chrome.browser.IntentHandler.TabOpenType; import org.chromium.chrome.browser.app.ChromeActivity; - import org.chromium.chrome.browser.app.metrics.LaunchCauseMetrics; -@@ -727,14 +731,19 @@ public class ChromeTabbedActivity extends ChromeActivity implements MismatchedIn +@@ -726,14 +730,19 @@ public class ChromeTabbedActivity extends ChromeActivity { Profile profile = mTabModelSelector.getCurrentModel().getProfile(); // For saving non-incognito tab closures for Recent Tabs. @@ -273,17 +275,17 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct + mTabModelSelector .getTabGroupModelFilterProvider() - .getTabGroupModelFilter(false)); -- mHistoricalTabModelObserver.addSecodaryTabModelSupplier( +- mHistoricalTabModelObserver.addSecondaryTabModelSupplier( - ArchivedTabModelOrchestrator.getForProfile(profile)::getTabModel); - + .getTabGroupModelFilter(alwaysIncognito)); -+ mHistoricalTabModelObserver.addSecodaryTabModelSupplier( ++ mHistoricalTabModelObserver.addSecondaryTabModelSupplier( + ArchivedTabModelOrchestrator.getForProfile(profile)::getTabModel); + } // Defer creation of this helper so it triggers after TabGroupModelFilter observers. mUndoRefocusHelper = new UndoRefocusHelper( -@@ -2614,8 +2623,9 @@ public class ChromeTabbedActivity extends ChromeActivity implements MismatchedIn +@@ -2876,8 +2885,9 @@ public class ChromeTabbedActivity extends ChromeActivity { // We determine the model as soon as possible so every systems get initialized coherently. boolean startIncognito = @@ -298,15 +300,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java -@@ -94,6 +94,7 @@ import org.chromium.chrome.browser.compositor.layouts.SceneChangeObserver; - import org.chromium.chrome.browser.compositor.layouts.content.TabContentManagerHandler; +@@ -96,6 +96,7 @@ import org.chromium.chrome.browser.compositor.layouts.content.TabContentManagerH import org.chromium.chrome.browser.contextualsearch.ContextualSearchManager; import org.chromium.chrome.browser.device.DeviceClassManager; + import org.chromium.chrome.browser.devtools.DevToolsWindowAndroid; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; import org.chromium.chrome.browser.dom_distiller.DomDistillerUiUtils; + import org.chromium.chrome.browser.dom_distiller.ReaderModeManager; import org.chromium.chrome.browser.download.DownloadManagerService; - import org.chromium.chrome.browser.download.DownloadUtils; -@@ -1953,6 +1954,9 @@ public abstract class ChromeActivity extends AsyncInitializationActivity +@@ -1980,6 +1981,9 @@ public abstract class ChromeActivity extends AsyncInitializationActivity throw new IllegalStateException( "Attempting to access TabCreator before initialization"); } @@ -319,58 +321,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java --- a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java -@@ -38,6 +38,8 @@ import org.chromium.base.supplier.Supplier; - import org.chromium.build.BuildConfig; - import org.chromium.chrome.R; - import org.chromium.chrome.browser.ActivityTabProvider; -+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; -+import org.chromium.chrome.browser.profiles.ProfileManager; - import org.chromium.chrome.browser.bookmarks.BookmarkModel; - import org.chromium.chrome.browser.bookmarks.PowerBookmarkUtils; - import org.chromium.chrome.browser.commerce.ShoppingServiceFactory; -@@ -102,6 +104,10 @@ import java.util.ArrayList; +@@ -88,6 +88,8 @@ import java.lang.annotation.Retention; + import java.lang.annotation.RetentionPolicy; import java.util.Iterator; - import java.util.List; -+import org.chromium.components.prefs.PrefService; -+import org.chromium.components.user_prefs.UserPrefs; -+import org.chromium.chrome.browser.preferences.Pref; ++import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; + /** * Base implementation of {@link AppMenuPropertiesDelegate} that handles hiding and showing menu * items based on activity state. -@@ -609,6 +615,13 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate - } - - private void prepareCommonMenuItems(Menu menu, @MenuGroup int menuGroup, boolean isIncognito) { -+ boolean always_incognito = AlwaysIncognitoLinkInterceptor.isAlwaysIncognito(); -+ if (always_incognito) { -+ final MenuItem newTabOption = menu.findItem(R.id.new_tab_menu_id); -+ if (newTabOption != null) -+ newTabOption.setVisible(false); -+ } -+ - // We have to iterate all menu items since same menu item ID may be associated with more - // than one menu items. - boolean isOverviewModeMenu = menuGroup == MenuGroup.OVERVIEW_MODE_MENU; -@@ -672,7 +685,15 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate - } - - if (item.getItemId() == R.id.recent_tabs_menu_id) { -- item.setVisible(!isIncognito); -+ if (always_incognito) { -+ PrefService prefService = -+ UserPrefs.get(ProfileManager.getLastUsedRegularProfile()); -+ boolean historyEnabledInIncognito = -+ prefService.getBoolean(Pref.INCOGNITO_TAB_HISTORY_ENABLED); -+ item.setVisible(historyEnabledInIncognito); -+ } -+ else -+ item.setVisible(!isIncognito); - } - if (item.getItemId() == R.id.menu_select_tabs) { - item.setVisible(isMenuSelectTabsVisible); -@@ -877,8 +898,9 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate +@@ -496,8 +498,9 @@ public abstract class AppMenuPropertiesDelegateImpl implements AppMenuProperties && !isNativePage && !isFileScheme && !isContentScheme @@ -385,7 +345,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java --- a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java -@@ -29,6 +29,7 @@ import org.chromium.base.ContextUtils; +@@ -31,6 +31,7 @@ import org.chromium.base.metrics.RecordUserAction; import org.chromium.base.shared_preferences.SharedPreferencesManager; import org.chromium.base.supplier.Supplier; import org.chromium.chrome.R; @@ -393,7 +353,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr import org.chromium.chrome.browser.bookmarks.BookmarkUtils; import org.chromium.chrome.browser.contextmenu.ChromeContextMenuItem.Item; import org.chromium.chrome.browser.contextmenu.ContextMenuCoordinator.ListItemType; -@@ -277,6 +278,9 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator { +@@ -347,6 +348,9 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator { public List> buildContextMenu() { mShowEphemeralTabNewLabel = null; @@ -402,16 +362,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr + List> groupedItems = new ArrayList<>(); - if (mParams.isAnchor()) { -@@ -287,6 +291,7 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator { - if (mMode == ContextMenuMode.NORMAL) { - linkGroup.add(createListItem(Item.OPEN_IN_NEW_TAB_IN_GROUP)); - linkGroup.add(createListItem(Item.OPEN_IN_NEW_TAB)); -+ - if (!mItemDelegate.isIncognito() && mItemDelegate.isIncognitoSupported()) { - linkGroup.add(createListItem(Item.OPEN_IN_INCOGNITO_TAB)); - } -@@ -317,7 +322,7 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator { + if (mParams.isPage() && shouldShowEmptySpaceContextMenu()) { +@@ -415,7 +419,7 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator { } } if (FirstRunStatus.getFirstRunFlowComplete()) { @@ -472,15 +424,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java --- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java -@@ -22,6 +22,7 @@ import org.chromium.base.supplier.ObservableSupplier; +@@ -21,6 +21,7 @@ import org.chromium.base.supplier.ObservableSupplier; import org.chromium.base.supplier.Supplier; import org.chromium.chrome.R; import org.chromium.chrome.browser.ActivityTabProvider; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; import org.chromium.chrome.browser.DefaultBrowserInfo; import org.chromium.chrome.browser.app.appmenu.AppMenuPropertiesDelegateImpl; - import org.chromium.chrome.browser.app.appmenu.DividerLineMenuItemViewBinder; -@@ -218,6 +219,9 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat + import org.chromium.chrome.browser.bookmarks.BookmarkModel; +@@ -200,6 +201,9 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat openInChromeItemVisible = false; tryAddingReadAloud = false; } @@ -493,7 +445,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java --- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java -@@ -86,6 +86,9 @@ import org.chromium.components.embedder_support.util.UrlConstants; +@@ -98,6 +98,9 @@ import org.chromium.components.embedder_support.util.UrlConstants; import org.chromium.device.mojom.ScreenOrientationLockType; import org.chromium.net.NetId; @@ -503,7 +455,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.ArrayList; -@@ -1183,6 +1186,13 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid +@@ -1250,6 +1253,13 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid return getInitialActivityWidth() > 0; } @@ -539,28 +491,25 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/Downlo /** A class containing some utility static methods. */ public class DownloadUtils { private static final String TAG = "download"; -@@ -298,7 +303,16 @@ public class DownloadUtils { - // Offline pages isn't supported in Incognito. This should be checked before calling - // OfflinePageBridge.getForProfile because OfflinePageBridge instance will not be found - // for incognito profile. -- if (tab.isIncognito()) return false; -+ boolean always_incognito = AlwaysIncognitoLinkInterceptor.isAlwaysIncognito(); -+ if (always_incognito) { +@@ -303,7 +308,13 @@ public class DownloadUtils { + public static boolean isAllowedToDownloadPage(Tab tab) { + if (tab == null) return false; + +- if (tab.isIncognito() ++ boolean historyEnabledInIncognito = false; ++ if (AlwaysIncognitoLinkInterceptor.isAlwaysIncognito()) { + PrefService prefService = UserPrefs.get(ProfileManager.getLastUsedRegularProfile()); -+ boolean historyEnabledInIncognito = ++ historyEnabledInIncognito = + prefService.getBoolean(Pref.INCOGNITO_TAB_HISTORY_ENABLED); -+ if (historyEnabledInIncognito == false) -+ return false; -+ } else { -+ if (tab.isIncognito()) return false; + } - - // Check if the page url is supported for saving. Only HTTP and HTTPS pages are allowed. - if (!OfflinePageBridge.canSavePage(tab.getUrl())) return false; ++ if (tab.isIncognito() && !historyEnabledInIncognito + && !ChromeFeatureList.isEnabled( + ChromeFeatureList.ENABLE_SAVE_PACKAGE_FOR_OFF_THE_RECORD)) { + return false; diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryContentManager.java b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryContentManager.java --- a/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryContentManager.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryContentManager.java -@@ -300,7 +300,9 @@ public class HistoryContentManager implements SignInStateObserver, PrefObserver +@@ -302,7 +302,9 @@ public class HistoryContentManager implements SignInStateObserver, PrefObserver mHistoryAdapter.generateFooterItems(); // Listen to changes in sign in state. @@ -571,7 +520,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History // Create PrefChangeRegistrar to receive notifications on preference changes. mPrefChangeRegistrar = PrefServiceUtil.createFor(profile); -@@ -376,7 +378,8 @@ public class HistoryContentManager implements SignInStateObserver, PrefObserver +@@ -378,7 +380,8 @@ public class HistoryContentManager implements SignInStateObserver, PrefObserver mHistoryAdapter.onDestroyed(); mLargeIconBridge.destroy(); mLargeIconBridge = null; @@ -584,7 +533,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryManager.java b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryManager.java --- a/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryManager.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryManager.java -@@ -55,6 +55,14 @@ import org.chromium.ui.base.Clipboard; +@@ -54,6 +54,14 @@ import org.chromium.ui.base.Clipboard; import java.util.List; @@ -599,7 +548,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History /** Combines and manages the different UI components of browsing history. */ public class HistoryManager implements OnMenuItemClickListener, -@@ -157,7 +165,7 @@ public class HistoryManager +@@ -156,7 +164,7 @@ public class HistoryManager mUmaRecorder.recordOpenHistory(); // If incognito placeholder is shown, we don't need to create History UI elements. @@ -608,7 +557,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History mSelectableListLayout = null; mRootView = getIncognitoHistoryPlaceholderView(); return; -@@ -425,9 +433,22 @@ public class HistoryManager +@@ -406,9 +414,22 @@ public class HistoryManager onBackPressStateChanged(); } @@ -632,7 +581,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History // If Incognito placeholder is shown no need to call any destroy method. return; } -@@ -487,7 +508,7 @@ public class HistoryManager +@@ -468,7 +489,7 @@ public class HistoryManager * @return True if manager handles this event, false if it decides to ignore. */ private boolean onBackPressed() { @@ -925,9 +874,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Fragme import org.chromium.components.browser_ui.accessibility.AccessibilitySettings; import org.chromium.components.browser_ui.bottomsheet.BottomSheetController; import org.chromium.components.browser_ui.settings.FragmentSettingsNavigation; -@@ -238,6 +239,9 @@ public class FragmentDependencyProvider extends FragmentManager.FragmentLifecycl - mModalDialogManagerSupplier, - SigninAndHistorySyncActivityLauncherImpl.get())); +@@ -244,6 +245,9 @@ public class FragmentDependencyProvider extends FragmentManager.FragmentLifecycl + SigninAndHistorySyncActivityLauncherImpl.get(), + new SettingsCustomTabLauncherImpl())); } + if (fragment instanceof INeedSnackbarManager) { + ((INeedSnackbarManager)fragment).setSnackbarManagerSupplier(mSnackbarManagerSupplier); @@ -938,16 +887,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Fragme diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabModelObserver.java b/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabModelObserver.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabModelObserver.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabModelObserver.java -@@ -29,6 +29,8 @@ import java.util.HashMap; +@@ -32,6 +32,8 @@ import java.util.HashMap; import java.util.List; import java.util.Set; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; + /** A tab model observer for managing bulk closures. */ + @NullMarked public class HistoricalTabModelObserver implements TabModelObserver { - private final TabGroupModelFilter mTabGroupModelFilter; -@@ -77,9 +79,10 @@ public class HistoricalTabModelObserver implements TabModelObserver { +@@ -81,9 +83,10 @@ public class HistoricalTabModelObserver implements TabModelObserver { if (tabs.isEmpty() || !canRestore) return; if (tabs.size() == 1) { @@ -962,7 +911,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabSaver.java b/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabSaver.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabSaver.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabSaver.java -@@ -32,7 +32,7 @@ public interface HistoricalTabSaver { +@@ -34,7 +34,7 @@ public interface HistoricalTabSaver { * * @param tab The {@link Tab} to create an entry for. */ @@ -974,16 +923,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabSaverImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabSaverImpl.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabSaverImpl.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabSaverImpl.java -@@ -29,6 +29,8 @@ import java.util.Arrays; +@@ -30,6 +30,8 @@ import java.util.Arrays; import java.util.Collections; import java.util.List; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; + /** Creates historical entries in TabRestoreService. */ + @NullMarked @JNINamespace("historical_tab_saver") - public class HistoricalTabSaverImpl implements HistoricalTabSaver { -@@ -85,10 +87,10 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver { +@@ -87,10 +89,10 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver { } @Override @@ -996,7 +945,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore } @Override -@@ -149,7 +151,7 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver { +@@ -151,7 +153,7 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver { // If there is only a single valid tab remaining save it individually. if (validEntries.size() == 1 && validEntries.get(0).isSingleTab()) { @@ -1005,7 +954,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore return; } -@@ -190,14 +192,15 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver { +@@ -191,14 +193,15 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver { CollectionUtil.integerCollectionToIntArray(savedStateVersions)); } @@ -1023,7 +972,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore } /** -@@ -205,7 +208,7 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver { +@@ -206,7 +209,7 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver { * internal Chrome scheme, about:blank, or a native page and it cannot be incognito. */ private boolean shouldSave(Tab tab) { @@ -1032,7 +981,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore // Check the secondary tab model to see if the tab was moved instead of deleted. if (tabIdExistsInSecondaryModel(tab.getId())) return false; -@@ -295,7 +298,7 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver { +@@ -293,7 +296,7 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver { @NativeMethods interface Natives { @@ -1041,10 +990,51 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore void createHistoricalGroup( TabModel model, +diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java +--- a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java ++++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java +@@ -26,6 +26,7 @@ import org.chromium.base.supplier.Supplier; + import org.chromium.build.BuildConfig; + import org.chromium.build.annotations.Nullable; + import org.chromium.chrome.R; ++import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; + import org.chromium.chrome.browser.ActivityTabProvider; + import org.chromium.chrome.browser.ai.AiAssistantService; + import org.chromium.chrome.browser.app.appmenu.AppMenuPropertiesDelegateImpl; +@@ -371,6 +372,13 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm + } + + private void prepareCommonMenuItems(Menu menu, @MenuGroup int menuGroup, boolean isIncognito) { ++ boolean always_incognito = AlwaysIncognitoLinkInterceptor.isAlwaysIncognito(); ++ if (always_incognito) { ++ final MenuItem newTabOption = menu.findItem(R.id.new_tab_menu_id); ++ if (newTabOption != null) ++ newTabOption.setVisible(false); ++ } ++ + // We have to iterate all menu items since same menu item ID may be associated with more + // than one menu items. + boolean isOverviewModeMenu = menuGroup == MenuGroup.OVERVIEW_MODE_MENU; +@@ -430,7 +438,14 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm + } + + if (item.getItemId() == R.id.recent_tabs_menu_id) { +- item.setVisible(!isIncognito); ++ if (always_incognito) { ++ boolean historyEnabledInIncognito = ++ UserPrefs.get(currentTab.getProfile()).getBoolean(Pref.INCOGNITO_TAB_HISTORY_ENABLED); ++ item.setVisible(historyEnabledInIncognito); ++ } ++ else { ++ item.setVisible(!isIncognito); ++ } + } + if (item.getItemId() == R.id.menu_select_tabs) { + item.setVisible(isMenuSelectTabsVisible); diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java -@@ -191,6 +191,8 @@ import org.chromium.ui.InsetObserver; +@@ -214,6 +214,8 @@ import org.chromium.ui.InsetObserver; import org.chromium.ui.UiUtils; import org.chromium.ui.base.ActivityWindowAndroid; import org.chromium.ui.base.DeviceFormFactor; @@ -1052,8 +1042,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; import org.chromium.ui.base.IntentRequestTracker; import org.chromium.ui.base.LocalizationUtils; - import org.chromium.ui.dragdrop.DragDropGlobalState; -@@ -1148,7 +1150,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { + import org.chromium.ui.display.DisplayUtil; +@@ -1212,7 +1214,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { () -> { mTabCreatorManagerSupplier .get() @@ -1065,7 +1055,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java -@@ -46,6 +46,10 @@ import org.chromium.ui.base.PageTransition; +@@ -48,6 +48,10 @@ import org.chromium.ui.base.PageTransition; import org.chromium.ui.base.WindowAndroid; import org.chromium.url.GURL; @@ -1074,9 +1064,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome +import org.chromium.chrome.browser.tab.TabObserver; + /** This class creates various kinds of new tabs and adds them to the right {@link TabModel}. */ - public class ChromeTabCreator extends TabCreator { - private final Activity mActivity; -@@ -502,7 +506,6 @@ public class ChromeTabCreator extends TabCreator { + public class ChromeTabCreator extends TabCreator + implements NeedsTabModel, NeedsTabModelOrderController { +@@ -545,7 +549,6 @@ public class ChromeTabCreator extends TabCreator // TODO(crbug.com/40691614): Clean up the launches from SearchActivity/Chrome. public Tab launchUrlFromExternalApp( LoadUrlParams loadUrlParams, String appId, boolean forceNewTab, Intent intent) { @@ -1093,21 +1083,21 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabMod import org.chromium.base.supplier.Supplier; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; import org.chromium.chrome.browser.flags.ActivityType; + import org.chromium.chrome.browser.flags.ChromeFeatureList; import org.chromium.chrome.browser.ntp.RecentlyClosedBridge; - import org.chromium.chrome.browser.profiles.ProfileProvider; -@@ -118,6 +119,8 @@ public class TabModelSelectorImpl extends TabModelSelectorBase implements TabMod +@@ -119,6 +120,8 @@ public class TabModelSelectorImpl extends TabModelSelectorBase implements TabMod ProfileProvider profileProvider = mProfileProviderSupplier.get(); assert profileProvider != null; + AlwaysIncognitoLinkInterceptor.migrateSettingToNative(); + - ChromeTabCreator regularTabCreator = - (ChromeTabCreator) getTabCreatorManager().getTabCreator(false); - ChromeTabCreator incognitoTabCreator = + TabCreator regularTabCreator = getTabCreatorManager().getTabCreator(false); + TabCreator incognitoTabCreator = getTabCreatorManager().getTabCreator(true); + mRecentlyClosedBridge = diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java -@@ -49,6 +49,8 @@ import org.chromium.chrome.browser.tabpersistence.TabStateFileManager; +@@ -51,6 +51,8 @@ import org.chromium.chrome.browser.tabwindow.TabWindowManager; import org.chromium.components.embedder_support.util.UrlUtilities; import org.chromium.content_public.browser.LoadUrlParams; @@ -1116,7 +1106,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPer import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.ByteArrayInputStream; -@@ -832,6 +834,13 @@ public class TabPersistentStore { +@@ -835,6 +837,13 @@ public class TabPersistentStore { } } } @@ -1133,15 +1123,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPer diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java --- a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java -@@ -44,6 +44,7 @@ import org.chromium.base.supplier.Supplier; +@@ -49,6 +49,7 @@ import org.chromium.base.supplier.Supplier; import org.chromium.cc.input.BrowserControlsState; import org.chromium.chrome.R; import org.chromium.chrome.browser.ActivityTabProvider; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; import org.chromium.chrome.browser.IntentHandler; - import org.chromium.chrome.browser.app.tabmodel.TabWindowManagerSingleton; + import org.chromium.chrome.browser.app.tabwindow.TabWindowManagerSingleton; import org.chromium.chrome.browser.back_press.BackPressManager; -@@ -748,7 +749,7 @@ public class ToolbarManager +@@ -828,7 +829,7 @@ public class ToolbarManager TraceEvent.end("isOfflinePage"); return ret; } @@ -1162,16 +1152,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappI /** Stores info about a web app. */ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider { private final Drawable mCloseButtonIcon; -@@ -45,6 +47,8 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider - private final ColorProviderImpl mColorProvider; +@@ -46,6 +48,8 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider private final ColorProviderImpl mDarkColorProvider; + private @DisplayMode.EnumType int mResolvedDisplayMode = DisplayMode.UNDEFINED; + private boolean mIsIncognito = false; + /** Returns the toolbar color to use if a custom color is not specified by the webapp. */ public static int getDefaultToolbarColor() { return Color.WHITE; -@@ -80,6 +84,10 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider +@@ -81,6 +85,10 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider mWebappExtras = webappExtras; mWebApkExtras = webApkExtras; mActivityType = (webApkExtras != null) ? ActivityType.WEB_APK : ActivityType.WEBAPP; @@ -1182,7 +1172,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappI } @Override -@@ -175,6 +183,13 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider +@@ -176,6 +184,13 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider return mWebApkExtras; } @@ -1211,7 +1201,7 @@ diff --git a/chrome/browser/android/historical_tab_saver.cc b/chrome/browser/and using base::android::JavaParamRef; using base::android::JavaRef; using base::android::ScopedJavaLocalRef; -@@ -107,7 +112,8 @@ std::vector> StringsToUuids( +@@ -104,7 +109,8 @@ std::vector> StringsToUuids( void CreateHistoricalTab( TabAndroid* tab_android, @@ -1221,7 +1211,7 @@ diff --git a/chrome/browser/android/historical_tab_saver.cc b/chrome/browser/and if (!tab_android) { return; } -@@ -118,9 +124,14 @@ void CreateHistoricalTab( +@@ -115,9 +121,14 @@ void CreateHistoricalTab( return; } @@ -1238,16 +1228,16 @@ diff --git a/chrome/browser/android/historical_tab_saver.cc b/chrome/browser/and if (!service) { return; } -@@ -186,7 +197,7 @@ void CreateHistoricalBulkClosure( - std::vector per_tab_root_id, +@@ -181,7 +192,7 @@ void CreateHistoricalBulkClosure( + per_tab_optional_tab_group_ids, std::vector> tabs, std::vector web_contents_state) { - DCHECK(model); + if (!model) return; - DCHECK_EQ(root_ids.size(), group_titles.size()); - DCHECK_EQ(root_ids.size(), group_colors.size()); - DCHECK_EQ(root_ids.size(), optional_tab_group_ids.size()); -@@ -318,11 +329,12 @@ static void JNI_HistoricalTabSaverImpl_CreateHistoricalTab( + DCHECK_EQ(tab_group_ids.size(), group_titles.size()); + DCHECK_EQ(tab_group_ids.size(), group_colors.size()); + DCHECK_EQ(tab_group_ids.size(), tab_group_ids.size()); +@@ -294,11 +305,12 @@ static void JNI_HistoricalTabSaverImpl_CreateHistoricalTab( JNIEnv* env, const JavaParamRef& jtab_android, const JavaParamRef& state, @@ -1265,8 +1255,8 @@ diff --git a/chrome/browser/android/historical_tab_saver.cc b/chrome/browser/and diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc --- a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc +++ b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc -@@ -374,6 +374,15 @@ ChromeAutocompleteProviderClient::GetProviderStateService() const { - return ProviderStateServiceFactory::GetForProfile(profile_); +@@ -418,6 +418,15 @@ ChromeAutocompleteProviderClient::GetTabGroupSyncService() const { + return tab_groups::TabGroupSyncServiceFactory::GetForProfile(profile_); } +bool ChromeAutocompleteProviderClient::IsAlwaysIncognitoEnabled() const { @@ -1284,9 +1274,9 @@ diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.h b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.h --- a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.h +++ b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.h -@@ -89,6 +89,7 @@ class ChromeAutocompleteProviderClient : public AutocompleteProviderClient { - OnDeviceTailModelService* GetOnDeviceTailModelService() const override; +@@ -96,6 +96,7 @@ class ChromeAutocompleteProviderClient : public AutocompleteProviderClient { ProviderStateService* GetProviderStateService() const override; + tab_groups::TabGroupSyncService* GetTabGroupSyncService() const override; bool IsOffTheRecord() const override; + bool IsAlwaysIncognitoEnabled() const override; bool IsIncognitoProfile() const override; @@ -1320,15 +1310,15 @@ diff --git a/chrome/browser/autocomplete/remote_suggestions_service_factory.cc b diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browser/bookmarks/android/bookmark_bridge.cc --- a/chrome/browser/bookmarks/android/bookmark_bridge.cc +++ b/chrome/browser/bookmarks/android/bookmark_bridge.cc -@@ -35,6 +35,7 @@ - #include "base/numerics/safe_conversions.h" +@@ -37,6 +37,7 @@ + #include "base/strings/strcat.h" #include "base/strings/utf_string_conversions.h" #include "base/uuid.h" +#include "chrome/common/pref_names.h" #include "chrome/browser/bookmarks/bookmark_model_factory.h" #include "chrome/browser/bookmarks/managed_bookmark_service_factory.h" #include "chrome/browser/commerce/shopping_service_factory.h" -@@ -215,6 +216,12 @@ ScopedJavaLocalRef JNI_BookmarkBridge_NativeGetForProfile( +@@ -264,6 +265,12 @@ ScopedJavaLocalRef JNI_BookmarkBridge_NativeGetForProfile( if (!profile) return nullptr; @@ -1352,7 +1342,7 @@ diff --git a/chrome/browser/content_settings/host_content_settings_map_factory.c #include "components/content_settings/core/browser/content_settings_pref_provider.h" #include "components/content_settings/core/browser/host_content_settings_map.h" #include "components/permissions/features.h" -@@ -105,9 +106,25 @@ scoped_refptr +@@ -117,9 +118,25 @@ scoped_refptr GetForProfile(original_profile); bool should_record_metrics = profiles::IsRegularUserProfile(profile); @@ -1379,9 +1369,9 @@ diff --git a/chrome/browser/content_settings/host_content_settings_map_factory.c /*store_last_modified=*/true, profile->ShouldRestoreOldSessionCookies(), should_record_metrics)); -@@ -116,6 +133,9 @@ scoped_refptr - settings_map->RegisterProvider(ProviderType::kWebuiAllowlistProvider, - std::move(allowlist_provider)); +@@ -137,6 +154,9 @@ scoped_refptr + std::move(component_extension_provider)); + #endif // BUILDFLAG(IS_CHROMEOS) + if (always_incognito_enabled) + return settings_map; @@ -1402,7 +1392,7 @@ diff --git a/chrome/browser/history/history_tab_helper.cc b/chrome/browser/histo #else #include "chrome/browser/ui/browser.h" #include "chrome/browser/ui/browser_finder.h" -@@ -511,6 +514,13 @@ void HistoryTabHelper::TitleWasSet(NavigationEntry* entry) { +@@ -570,6 +573,13 @@ void HistoryTabHelper::TitleWasSet(NavigationEntry* entry) { history::HistoryService* HistoryTabHelper::GetHistoryService() { Profile* profile = Profile::FromBrowserContext(web_contents()->GetBrowserContext()); @@ -1416,7 +1406,7 @@ diff --git a/chrome/browser/history/history_tab_helper.cc b/chrome/browser/histo if (profile->IsOffTheRecord()) return nullptr; -@@ -518,6 +528,16 @@ history::HistoryService* HistoryTabHelper::GetHistoryService() { +@@ -577,6 +587,16 @@ history::HistoryService* HistoryTabHelper::GetHistoryService() { profile, ServiceAccessType::IMPLICIT_ACCESS); } @@ -1457,7 +1447,7 @@ diff --git a/chrome/browser/history/history_tab_helper.h b/chrome/browser/histor private: explicit HistoryTabHelper(content::WebContents* web_contents); friend class content::WebContentsUserData; -@@ -89,9 +96,6 @@ class HistoryTabHelper +@@ -91,9 +98,6 @@ class HistoryTabHelper void OnLanguageDetermined( const translate::LanguageDetectionDetails& details) override; @@ -1720,7 +1710,7 @@ diff --git a/chrome/browser/offline_pages/recent_tab_helper.cc b/chrome/browser/ diff --git a/chrome/browser/offline_pages/recent_tab_helper.h b/chrome/browser/offline_pages/recent_tab_helper.h --- a/chrome/browser/offline_pages/recent_tab_helper.h +++ b/chrome/browser/offline_pages/recent_tab_helper.h -@@ -106,8 +106,10 @@ class RecentTabHelper +@@ -105,8 +105,10 @@ class RecentTabHelper bool EnsureInitialized(); void ContinueSnapshotWithIdsToPurge(SnapshotProgressInfo* snapshot_info, @@ -1731,7 +1721,7 @@ diff --git a/chrome/browser/offline_pages/recent_tab_helper.h b/chrome/browser/o OfflinePageModel::DeletePageResult result); void SavePageCallback(SnapshotProgressInfo* snapshot_info, OfflinePageModel::SavePageResult result, -@@ -129,6 +131,9 @@ class RecentTabHelper +@@ -128,6 +130,9 @@ class RecentTabHelper // Not page-specific. bool snapshots_enabled_ = false; @@ -1765,7 +1755,7 @@ diff --git a/chrome/browser/offline_pages/request_coordinator_factory.h b/chrome diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc --- a/chrome/browser/prefs/browser_prefs.cc +++ b/chrome/browser/prefs/browser_prefs.cc -@@ -245,6 +245,7 @@ +@@ -254,6 +254,7 @@ #if BUILDFLAG(IS_ANDROID) #include "chrome/browser/accessibility/accessibility_prefs/android/accessibility_prefs_controller.h" @@ -1773,7 +1763,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse #include "chrome/browser/android/ntp/recent_tabs_page_prefs.h" #include "chrome/browser/android/oom_intervention/oom_intervention_decider.h" #include "chrome/browser/android/preferences/browser_prefs_android.h" -@@ -2010,6 +2011,10 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry, +@@ -2068,6 +2069,10 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry, usage_stats::UsageStatsBridge::RegisterProfilePrefs(registry); variations::VariationsService::RegisterProfilePrefs(registry); webapps::InstallPromptPrefs::RegisterProfilePrefs(registry); @@ -1931,10 +1921,40 @@ diff --git a/chrome/browser/ui/android/native_page/java/src/org/chromium/chrome/ return NativePageType.RECENT_TABS; } else if (UrlConstants.EXPLORE_HOST.equals(host)) { return NativePageType.EXPLORE; +diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java +--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java ++++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java +@@ -89,6 +89,11 @@ import org.chromium.ui.base.WindowAndroid; + import org.chromium.ui.interpolators.Interpolators; + import org.chromium.url.GURL; + ++import org.chromium.components.user_prefs.UserPrefs; ++import org.chromium.components.prefs.PrefService; ++import org.chromium.chrome.browser.profiles.ProfileManager; ++import org.chromium.chrome.browser.preferences.Pref; ++ + import java.util.ArrayList; + import java.util.List; + import java.util.function.BooleanSupplier; +@@ -1232,10 +1237,13 @@ class LocationBarMediator + } + Tab tab = mLocationBarDataProvider.getTab(); + if (tab == null) return false; ++ PrefService prefService = UserPrefs.get(ProfileManager.getLastUsedRegularProfile()); ++ boolean historyEnabledInIncognito = ++ prefService.getBoolean(Pref.INCOGNITO_TAB_HISTORY_ENABLED); + // The save offline button should not be shown on native pages. Currently, trying to + // save an offline page in incognito crashes, so don't show it on incognito either. + return shouldShowPageActionButtons() +- && (!tab.isOffTheRecord() ++ && (!tab.isOffTheRecord() || historyEnabledInIncognito + || ChromeFeatureList.isEnabled( + ChromeFeatureList.ENABLE_SAVE_PACKAGE_FOR_OFF_THE_RECORD)); + } diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd -@@ -6528,6 +6528,31 @@ To change this setting, BEGIN_LINKdelete the Chrome d +@@ -6682,6 +6682,31 @@ To change this setting, BEGIN_LINKdelete the Chrome d Cookies, cache, and other site data @@ -1969,7 +1989,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/LocationBarModel.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/LocationBarModel.java --- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/LocationBarModel.java +++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/LocationBarModel.java -@@ -160,6 +160,7 @@ public class LocationBarModel implements ToolbarDataProvider, LocationBarDataPro +@@ -164,6 +164,7 @@ public class LocationBarModel implements ToolbarDataProvider, LocationBarDataPro protected GURL mVisibleGurl = GURL.emptyGURL(); protected String mFormattedFullUrl; protected String mUrlForDisplay; @@ -1977,12 +1997,12 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow // notifyUrlChanged and notifySecurityStateChanged are usually called 3 times across a same // document navigation. The first call is usually necessary, which updates the UrlBar to reflect -@@ -183,7 +184,9 @@ public class LocationBarModel implements ToolbarDataProvider, LocationBarDataPro +@@ -187,7 +188,9 @@ public class LocationBarModel implements ToolbarDataProvider, LocationBarDataPro Context context, NewTabPageDelegate newTabPageDelegate, - @NonNull UrlFormatter urlFormatter, -- @NonNull OfflineStatus offlineStatus) { -+ @NonNull OfflineStatus offlineStatus, + UrlFormatter urlFormatter, +- OfflineStatus offlineStatus) { ++ OfflineStatus offlineStatus, + boolean isAlwaysIncognito) { + mIsAlwaysIncognito = isAlwaysIncognito; // (uazo) to do, check mContext = context; @@ -1991,7 +2011,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow diff --git a/chrome/browser/ui/messages/android/BUILD.gn b/chrome/browser/ui/messages/android/BUILD.gn --- a/chrome/browser/ui/messages/android/BUILD.gn +++ b/chrome/browser/ui/messages/android/BUILD.gn -@@ -28,6 +28,7 @@ android_library("java") { +@@ -27,6 +27,7 @@ android_library("java") { srcjar_deps = [ ":jni_headers" ] sources = [ "java/src/org/chromium/chrome/browser/ui/messages/infobar/SimpleConfirmInfoBarBuilder.java", @@ -2058,7 +2078,7 @@ diff --git a/chrome/browser/ui/search_engines/search_engine_tab_helper.cc b/chro diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h --- a/chrome/common/pref_names.h +++ b/chrome/common/pref_names.h -@@ -4071,6 +4071,12 @@ inline constexpr char kOutOfProcessSystemDnsResolutionEnabled[] = +@@ -4106,6 +4106,12 @@ inline constexpr char kOutOfProcessSystemDnsResolutionEnabled[] = "net.out_of_process_system_dns_resolution_enabled"; #endif // BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) @@ -2074,7 +2094,7 @@ diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h diff --git a/components/content_settings/core/browser/content_settings_pref_provider.cc b/components/content_settings/core/browser/content_settings_pref_provider.cc --- a/components/content_settings/core/browser/content_settings_pref_provider.cc +++ b/components/content_settings/core/browser/content_settings_pref_provider.cc -@@ -114,10 +114,12 @@ void PrefProvider::RegisterProfilePrefs( +@@ -111,10 +111,12 @@ void PrefProvider::RegisterProfilePrefs( PrefProvider::PrefProvider(PrefService* prefs, bool off_the_record, @@ -2087,7 +2107,7 @@ diff --git a/components/content_settings/core/browser/content_settings_pref_prov store_last_modified_(store_last_modified), clock_(base::DefaultClock::GetInstance()) { TRACE_EVENT_BEGIN("startup", "PrefProvider::PrefProvider"); -@@ -140,11 +142,13 @@ PrefProvider::PrefProvider(PrefService* prefs, +@@ -137,11 +139,13 @@ PrefProvider::PrefProvider(PrefService* prefs, WebsiteSettingsRegistry* website_settings = WebsiteSettingsRegistry::GetInstance(); for (const WebsiteSettingsInfo* info : *website_settings) { @@ -2124,7 +2144,7 @@ diff --git a/components/content_settings/core/browser/content_settings_pref_prov diff --git a/components/content_settings/core/browser/host_content_settings_map.cc b/components/content_settings/core/browser/host_content_settings_map.cc --- a/components/content_settings/core/browser/host_content_settings_map.cc +++ b/components/content_settings/core/browser/host_content_settings_map.cc -@@ -247,6 +247,7 @@ struct ContentSettingEntry { +@@ -269,6 +269,7 @@ struct ContentSettingEntry { HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs, bool is_off_the_record, @@ -2132,7 +2152,7 @@ diff --git a/components/content_settings/core/browser/host_content_settings_map. bool store_last_modified, bool restore_session, bool should_record_metrics) -@@ -256,6 +257,7 @@ HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs, +@@ -278,6 +279,7 @@ HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs, #endif prefs_(prefs), is_off_the_record_(is_off_the_record), @@ -2140,7 +2160,7 @@ diff --git a/components/content_settings/core/browser/host_content_settings_map. store_last_modified_(store_last_modified), allow_invalid_secondary_pattern_for_testing_(false), clock_(base::DefaultClock::GetInstance()) { -@@ -269,7 +271,7 @@ HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs, +@@ -291,7 +293,7 @@ HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs, policy_provider->AddObserver(this); auto pref_provider_ptr = std::make_unique( @@ -2160,7 +2180,7 @@ diff --git a/components/content_settings/core/browser/host_content_settings_map. bool store_last_modified, bool restore_session, bool should_record_metrics); -@@ -505,6 +506,8 @@ class HostContentSettingsMap : public content_settings::Observer, +@@ -511,6 +512,8 @@ class HostContentSettingsMap : public content_settings::Observer, // Whether this settings map is for an incognito or guest session. bool is_off_the_record_; @@ -2172,7 +2192,7 @@ diff --git a/components/content_settings/core/browser/host_content_settings_map. diff --git a/components/omnibox/browser/autocomplete_provider_client.cc b/components/omnibox/browser/autocomplete_provider_client.cc --- a/components/omnibox/browser/autocomplete_provider_client.cc +++ b/components/omnibox/browser/autocomplete_provider_client.cc -@@ -51,3 +51,7 @@ base::WeakPtr +@@ -65,3 +65,7 @@ base::WeakPtr AutocompleteProviderClient::GetWeakPtr() { return nullptr; } @@ -2183,7 +2203,7 @@ diff --git a/components/omnibox/browser/autocomplete_provider_client.cc b/compon diff --git a/components/omnibox/browser/autocomplete_provider_client.h b/components/omnibox/browser/autocomplete_provider_client.h --- a/components/omnibox/browser/autocomplete_provider_client.h +++ b/components/omnibox/browser/autocomplete_provider_client.h -@@ -143,6 +143,7 @@ class AutocompleteProviderClient : public OmniboxAction::Client { +@@ -152,6 +152,7 @@ class AutocompleteProviderClient : public OmniboxAction::Client { virtual bool IsOffTheRecord() const = 0; virtual bool IsIncognitoProfile() const = 0; virtual bool IsGuestSession() const = 0; @@ -2194,7 +2214,7 @@ diff --git a/components/omnibox/browser/autocomplete_provider_client.h b/compone diff --git a/components/omnibox/browser/base_search_provider.cc b/components/omnibox/browser/base_search_provider.cc --- a/components/omnibox/browser/base_search_provider.cc +++ b/components/omnibox/browser/base_search_provider.cc -@@ -394,7 +394,7 @@ bool BaseSearchProvider::CanSendSuggestRequest( +@@ -413,7 +413,7 @@ bool BaseSearchProvider::CanSendSuggestRequest( // Don't make a suggest request if in incognito mode; unless for the Lens // searchboxes. @@ -2206,7 +2226,7 @@ diff --git a/components/omnibox/browser/base_search_provider.cc b/components/omn diff --git a/components/omnibox/browser/search_provider.cc b/components/omnibox/browser/search_provider.cc --- a/components/omnibox/browser/search_provider.cc +++ b/components/omnibox/browser/search_provider.cc -@@ -913,7 +913,8 @@ std::unique_ptr SearchProvider::CreateSuggestLoader( +@@ -912,7 +912,8 @@ std::unique_ptr SearchProvider::CreateSuggestLoader( // is required. // Request for suggestions in OTR contexts is not allowed; except for the Lens // searchboxes. diff --git a/build/cromite_patches/Add-autoplay-site-setting.patch b/build/cromite_patches/Add-autoplay-site-setting.patch index 98418797..3c4579ad 100644 --- a/build/cromite_patches/Add-autoplay-site-setting.patch +++ b/build/cromite_patches/Add-autoplay-site-setting.patch @@ -279,7 +279,7 @@ new file mode 100644 diff --git a/components/content_settings/core/browser/content_settings_registry.cc b/components/content_settings/core/browser/content_settings_registry.cc --- a/components/content_settings/core/browser/content_settings_registry.cc +++ b/components/content_settings/core/browser/content_settings_registry.cc -@@ -248,7 +248,7 @@ void ContentSettingsRegistry::Init() { +@@ -249,7 +249,7 @@ void ContentSettingsRegistry::Init() { ContentSettingsInfo::INHERIT_IN_INCOGNITO, ContentSettingsInfo::EXCEPTIONS_ON_SECURE_ORIGINS_ONLY); @@ -299,7 +299,7 @@ diff --git a/third_party/blink/renderer/core/html/media/autoplay_policy.cc b/thi #include "third_party/blink/public/platform/web_media_player.h" #include "third_party/blink/public/web/web_local_frame.h" #include "third_party/blink/public/web/web_local_frame_client.h" -@@ -337,6 +338,8 @@ void AutoplayPolicy::TryUnlockingUserGesture() { +@@ -346,6 +347,8 @@ void AutoplayPolicy::TryUnlockingUserGesture() { } bool AutoplayPolicy::IsGestureNeededForPlayback() const { @@ -308,7 +308,7 @@ diff --git a/third_party/blink/renderer/core/html/media/autoplay_policy.cc b/thi if (!IsLockedPendingUserGesture()) return false; -@@ -449,6 +452,17 @@ void AutoplayPolicy::MaybeSetAutoplayInitiated() { +@@ -458,6 +461,17 @@ void AutoplayPolicy::MaybeSetAutoplayInitiated() { } } diff --git a/build/cromite_patches/Add-bookmark-import-export-actions.patch b/build/cromite_patches/Add-bookmark-import-export-actions.patch index 0313ff4e..c1106313 100644 --- a/build/cromite_patches/Add-bookmark-import-export-actions.patch +++ b/build/cromite_patches/Add-bookmark-import-export-actions.patch @@ -17,7 +17,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../app/bookmarks/BookmarkActivity.java | 31 ++ .../native_page/NativePageFactory.java | 9 +- chrome/browser/BUILD.gn | 11 +- - .../bookmarks/android/bookmark_bridge.cc | 267 +++++++++++++++++ + .../bookmarks/android/bookmark_bridge.cc | 266 ++++++++++++++++ .../bookmarks/android/bookmark_bridge.h | 30 +- .../browser/bookmarks/BookmarkBridge.java | 39 +++ .../browser/bookmarks/BookmarkDelegate.java | 10 + @@ -44,7 +44,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../add-bookmark-import-export-actions.inc | 12 + .../add-bookmark-import-export-actions.inc | 4 + .../add-bookmark-import-export-actions.inc | 1 + - .../chromium/ui/base/SelectFileDialog.java | 18 +- + .../chromium/ui/base/SelectFileDialog.java | 24 +- .../java/strings/android_ui_strings.grd | 3 + ui/shell_dialogs/select_file_dialog.h | 2 + .../select_file_dialog_android.cc | 6 + @@ -52,7 +52,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html ui/shell_dialogs/select_file_dialog_linux.cc | 4 + ui/shell_dialogs/select_file_dialog_linux.h | 2 + ui/shell_dialogs/select_file_dialog_win.cc | 5 + - 41 files changed, 900 insertions(+), 29 deletions(-) + 41 files changed, 905 insertions(+), 29 deletions(-) create mode 100644 cromite_flags/chrome/browser/about_flags_cc/add-bookmark-import-export-actions.inc create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/add-bookmark-import-export-actions.inc create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_h/add-bookmark-import-export-actions.inc @@ -132,7 +132,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/bookmarks/B import org.chromium.base.IntentUtils; import org.chromium.build.annotations.Nullable; -@@ -28,6 +29,9 @@ import org.chromium.components.embedder_support.util.UrlConstants; +@@ -29,6 +30,9 @@ import org.chromium.components.embedder_support.util.UrlConstants; import org.chromium.ui.modaldialog.ModalDialogManager; import org.chromium.ui.modaldialog.ModalDialogManager.ModalDialogType; @@ -142,7 +142,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/bookmarks/B /** * The activity that displays the bookmark UI on the phone. It keeps a {@link * BookmarkManagerCoordinator} inside of it and creates a snackbar manager. This activity should -@@ -41,6 +45,9 @@ public class BookmarkActivity extends SnackbarActivity { +@@ -42,6 +46,9 @@ public class BookmarkActivity extends SnackbarActivity { private @Nullable BookmarkManagerCoordinator mBookmarkManagerCoordinator; private @Nullable BookmarkOpener mBookmarkOpener; @@ -152,10 +152,10 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/bookmarks/B @Override protected void onProfileAvailable(Profile profile) { super.onProfileAvailable(profile); -@@ -70,6 +77,14 @@ public class BookmarkActivity extends SnackbarActivity { - getOnBackPressedDispatcher(), - mBookmarkManagerCoordinator, - SecondaryActivity.BOOKMARK); +@@ -68,6 +75,14 @@ public class BookmarkActivity extends SnackbarActivity { + mBookmarkManagerCoordinator.updateForUrl(url); + setContentView(mBookmarkManagerCoordinator.getView()); + BackPressHelper.create(this, getOnBackPressedDispatcher(), mBookmarkManagerCoordinator); + + final boolean listenToActivityState = true; + mIntentRequestTracker = IntentRequestTracker.createFromActivity(this); @@ -167,7 +167,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/bookmarks/B } @Override -@@ -89,6 +104,7 @@ public class BookmarkActivity extends SnackbarActivity { +@@ -87,6 +102,7 @@ public class BookmarkActivity extends SnackbarActivity { @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); @@ -175,7 +175,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/bookmarks/B if (requestCode == EDIT_BOOKMARK_REQUEST_CODE && resultCode == RESULT_OK) { BookmarkId bookmarkId = BookmarkId.getBookmarkIdFromString( -@@ -97,6 +113,21 @@ public class BookmarkActivity extends SnackbarActivity { +@@ -95,6 +111,21 @@ public class BookmarkActivity extends SnackbarActivity { } } @@ -233,7 +233,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat - private final Activity mActivity; + private final ChromeActivity mActivity; private final BottomSheetController mBottomSheetController; - private final Supplier mUma; + private final Supplier mNewTabPageCreationTracker; private final BrowserControlsManager mBrowserControlsManager; @@ -251,7 +252,7 @@ public class NativePageFactory { mSnackbarManagerSupplier.get(), @@ -247,7 +247,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -221,6 +221,8 @@ static_library("browser") { +@@ -222,6 +222,8 @@ static_library("browser") { "bluetooth/chrome_bluetooth_delegate_impl_client.h", "bookmarks/bookmark_model_factory.cc", "bookmarks/bookmark_model_factory.h", @@ -256,7 +256,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn "bookmarks/chrome_bookmark_client.cc", "bookmarks/chrome_bookmark_client.h", "bookmarks/managed_bookmark_service_factory.cc", -@@ -1713,6 +1715,13 @@ static_library("browser") { +@@ -1731,6 +1733,13 @@ static_library("browser") { ] } @@ -270,7 +270,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn configs += [ "//build/config/compiler:wexit_time_destructors", "//build/config:precompiled_headers", -@@ -3535,8 +3544,6 @@ static_library("browser") { +@@ -3639,8 +3648,6 @@ static_library("browser") { "bookmarks/bookmark_expanded_state_tracker.h", "bookmarks/bookmark_expanded_state_tracker_factory.cc", "bookmarks/bookmark_expanded_state_tracker_factory.h", @@ -282,7 +282,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browser/bookmarks/android/bookmark_bridge.cc --- a/chrome/browser/bookmarks/android/bookmark_bridge.cc +++ b/chrome/browser/bookmarks/android/bookmark_bridge.cc -@@ -66,6 +66,28 @@ +@@ -68,6 +68,27 @@ #include "content/public/browser/web_contents.h" #include "url/gurl.h" @@ -294,8 +294,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse +#include "chrome/browser/importer/profile_writer.h" +#include "chrome/browser/platform_util.h" +#include "chrome/browser/ui/chrome_select_file_policy.h" -+#include "chrome/common/importer/imported_bookmark_entry.h" -+#include "chrome/common/importer/importer_data_types.h" ++#include "components/user_data_importer/common/imported_bookmark_entry.h" +#include "chrome/common/url_constants.h" +#include "components/favicon_base/favicon_usage_data.h" +#include "components/search_engines/template_url.h" @@ -311,7 +310,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse // Must come after all headers that specialize FromJniType() / ToJniType(). #include "chrome/browser/bookmarks/android/jni_headers/BookmarkBridge_jni.h" -@@ -84,6 +106,57 @@ using bookmarks::android::JavaBookmarkIdGetType; +@@ -86,6 +107,57 @@ using bookmarks::android::JavaBookmarkIdGetType; using content::BrowserThread; using power_bookmarks::PowerBookmarkMeta; @@ -369,7 +368,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse namespace { // The key used to connect the instance of the bookmark bridge to the bookmark // model. -@@ -231,6 +304,10 @@ BookmarkBridge::~BookmarkBridge() { +@@ -296,6 +368,10 @@ BookmarkBridge::~BookmarkBridge() { partner_bookmarks_shim_observation_.Reset(); bookmark_model_observation_.Reset(); profile_observation_.Reset(); @@ -380,7 +379,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse } void BookmarkBridge::Destroy(JNIEnv* env) { -@@ -765,6 +842,196 @@ jint BookmarkBridge::GetTotalBookmarkCount( +@@ -847,6 +923,196 @@ jint BookmarkBridge::GetTotalBookmarkCount( return count; } @@ -533,8 +532,8 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse + return; + + // the following import logic comes from BookmarksFileImporter class -+ std::vector bookmarks; -+ std::vector search_engines; ++ std::vector bookmarks; ++ std::vector search_engines; + favicon_base::FaviconUsageDataList favicons; + + bookmark_html_reader::ImportBookmarksFile( @@ -597,8 +596,8 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.h b/chrome/browser + class BookmarkBridgeTest; - // The delegate to fetch bookmarks information for the Android native -@@ -50,7 +54,8 @@ class BookmarkBridge : public ProfileObserver, + // Values for a bitmask used to refer to a collection of bookmark nodes. +@@ -77,7 +81,8 @@ class BookmarkBridge : public ProfileObserver, public ReadingListManager::Observer, public ReadingListModelObserver, public signin::IdentityManager::Observer, @@ -608,7 +607,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.h b/chrome/browser public: // All of the injected pointers must be non-null and must outlive `this`. BookmarkBridge(Profile* profile, -@@ -81,6 +86,11 @@ class BookmarkBridge : public ProfileObserver, +@@ -108,6 +113,11 @@ class BookmarkBridge : public ProfileObserver, bool IsDoingExtensiveChanges(JNIEnv* env); @@ -620,7 +619,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.h b/chrome/browser jboolean IsEditBookmarksEnabled(JNIEnv* env); void LoadEmptyPartnerBookmarkShimForTesting(JNIEnv* env); -@@ -93,6 +103,17 @@ class BookmarkBridge : public ProfileObserver, +@@ -120,6 +130,17 @@ class BookmarkBridge : public ProfileObserver, jlong id, jint type); @@ -638,7 +637,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.h b/chrome/browser void GetAllFoldersWithDepths( JNIEnv* env, const base::android::JavaParamRef& j_folders_obj, -@@ -362,6 +383,8 @@ class BookmarkBridge : public ProfileObserver, +@@ -390,6 +411,8 @@ class BookmarkBridge : public ProfileObserver, void CreateOrDestroyAccountReadingListManagerIfNeeded(); const raw_ptr profile_; // weak @@ -647,7 +646,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.h b/chrome/browser base::android::ScopedJavaGlobalRef java_bookmark_model_; const raw_ptr bookmark_model_; // weak const raw_ptr -@@ -376,6 +399,7 @@ class BookmarkBridge : public ProfileObserver, +@@ -404,6 +427,7 @@ class BookmarkBridge : public ProfileObserver, std::unique_ptr grouped_bookmark_actions_; PrefChangeRegistrar pref_change_registrar_; @@ -655,9 +654,9 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.h b/chrome/browser // Information about the Partner bookmarks (must check for IsLoaded()). // This is owned by profile. -@@ -407,6 +431,10 @@ class BookmarkBridge : public ProfileObserver, - - bool suppress_observer_notifications_ = false; +@@ -437,6 +461,10 @@ class BookmarkBridge : public ProfileObserver, + base::TimeTicks load_start_time_; + bool loading_notification_sent_ = false; + const std::string FileSelectedImpl(const base::FilePath& path); + void FileSelectedImplOnUIThread(const base::FilePath& path, @@ -679,7 +678,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows /** * Provides the communication channel for Android to fetch and manipulate the bookmark model stored * in native. -@@ -52,6 +55,9 @@ class BookmarkBridge { +@@ -53,6 +56,9 @@ class BookmarkBridge { private boolean mIsNativeBookmarkModelLoaded; private boolean mInitializedPartnerBookmarks; @@ -689,7 +688,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows // Lazily set pseudo-constants. These should never change at runtime. Used to avoid crossing // JNI to fetch information. private @Nullable BookmarkId mRootFolderId; -@@ -498,6 +504,35 @@ class BookmarkBridge { +@@ -500,6 +506,35 @@ class BookmarkBridge { .getTotalBookmarkCount(mNativeBookmarkBridge, id.getId(), id.getType()); } @@ -725,7 +724,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows /** * Synchronously gets a list of bookmarks that match the specified search query. * -@@ -1120,6 +1155,10 @@ class BookmarkBridge { +@@ -1124,6 +1159,10 @@ class BookmarkBridge { void getChildIds( long nativeBookmarkBridge, long id, int type, List bookmarksList); @@ -739,7 +738,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkDelegate.java b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkDelegate.java --- a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkDelegate.java +++ b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkDelegate.java -@@ -65,6 +65,16 @@ public interface BookmarkDelegate { +@@ -67,6 +67,16 @@ public interface BookmarkDelegate { /** Shows the search UI. */ void openSearchUi(); @@ -759,7 +758,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManagerCoordinator.java b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManagerCoordinator.java --- a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManagerCoordinator.java +++ b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManagerCoordinator.java -@@ -54,6 +54,8 @@ import org.chromium.components.image_fetcher.ImageFetcher; +@@ -53,6 +53,8 @@ import org.chromium.components.image_fetcher.ImageFetcher; import org.chromium.components.image_fetcher.ImageFetcherConfig; import org.chromium.components.image_fetcher.ImageFetcherFactory; import org.chromium.ui.KeyboardVisibilityDelegate; @@ -768,7 +767,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows import org.chromium.ui.modaldialog.ModalDialogManager; import org.chromium.ui.modaldialog.ModalDialogManager.ModalDialogType; import org.chromium.ui.modelutil.MVCListAdapter.ListItem; -@@ -328,6 +330,13 @@ public class BookmarkManagerCoordinator +@@ -322,6 +324,13 @@ public class BookmarkManagerCoordinator // Public API implementation. @@ -785,7 +784,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManagerMediator.java b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManagerMediator.java --- a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManagerMediator.java +++ b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManagerMediator.java -@@ -57,6 +57,8 @@ import org.chromium.components.commerce.core.SubscriptionsObserver; +@@ -59,6 +59,8 @@ import org.chromium.components.commerce.core.SubscriptionsObserver; import org.chromium.components.embedder_support.util.UrlConstants; import org.chromium.components.power_bookmarks.PowerBookmarkMeta; import org.chromium.components.power_bookmarks.PowerBookmarkType; @@ -794,7 +793,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows import org.chromium.ui.accessibility.AccessibilityState; import org.chromium.ui.listmenu.ListMenu; import org.chromium.ui.listmenu.ListMenuItemProperties; -@@ -75,6 +77,47 @@ import java.util.function.BooleanSupplier; +@@ -77,6 +79,47 @@ import java.util.function.BooleanSupplier; import java.util.function.Consumer; import java.util.function.Predicate; @@ -842,7 +841,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows /** Responsible for BookmarkManager business logic. */ // TODO(crbug.com/40256938): Remove BookmarkDelegate if possible. class BookmarkManagerMediator -@@ -84,6 +127,9 @@ class BookmarkManagerMediator +@@ -86,6 +129,9 @@ class BookmarkManagerMediator private static boolean sPreventLoadingForTesting; @@ -852,7 +851,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows /** Keeps track of whether drag is enabled / active for bookmark lists. */ private class BookmarkDragStateDelegate implements DragStateDelegate { private BookmarkDelegate mBookmarkDelegate; -@@ -573,6 +619,14 @@ class BookmarkManagerMediator +@@ -583,6 +629,14 @@ class BookmarkManagerMediator mNativePage = nativePage; } @@ -867,7 +866,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows /** See BookmarkManager(Coordinator)#updateForUrl */ void updateForUrl(String url) { // Bookmark model is null if the manager has been destroyed. -@@ -748,6 +802,235 @@ class BookmarkManagerMediator +@@ -758,6 +812,235 @@ class BookmarkManagerMediator } } @@ -1106,7 +1105,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPage.java b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPage.java --- a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPage.java +++ b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPage.java -@@ -15,6 +15,9 @@ import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager; +@@ -16,6 +16,9 @@ import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager; import org.chromium.chrome.browser.ui.native_page.BasicNativePage; import org.chromium.chrome.browser.ui.native_page.NativePageHost; import org.chromium.components.embedder_support.util.UrlConstants; @@ -1116,7 +1115,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows /** A native page holding a {@link BookmarkManagerCoordinator} on _tablet_. */ public class BookmarkPage extends BasicNativePage { -@@ -34,7 +37,8 @@ public class BookmarkPage extends BasicNativePage { +@@ -35,7 +38,8 @@ public class BookmarkPage extends BasicNativePage { @NonNull SnackbarManager snackbarManager, @NonNull Profile profile, @NonNull NativePageHost host, @@ -1126,9 +1125,9 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows super(host); mTitle = host.getContext().getString(R.string.bookmarks); -@@ -53,6 +57,9 @@ public class BookmarkPage extends BasicNativePage { - mBookmarkOpener, - componentName); +@@ -55,6 +59,9 @@ public class BookmarkPage extends BasicNativePage { + new BookmarkManagerOpenerImpl(), + PriceDropNotificationManagerFactory.create(profile)); mBookmarkManagerCoordinator.setBasicNativePage(this); + mBookmarkManagerCoordinator.setWindow(activity.getWindowAndroid(), + new ModalDialogManager( @@ -1139,7 +1138,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbar.java b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbar.java --- a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbar.java +++ b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbar.java -@@ -96,6 +96,17 @@ public class BookmarkToolbar extends SelectableListToolbar +@@ -102,6 +102,17 @@ public class BookmarkToolbar extends SelectableListToolbar setOnMenuItemClickListener(dragEnabled ? null : this); } @@ -1157,7 +1156,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows void setEditButtonVisible(boolean visible) { mEditButtonVisible = visible; getMenu().findItem(R.id.edit_menu_id).setVisible(visible); -@@ -172,6 +183,12 @@ public class BookmarkToolbar extends SelectableListToolbar +@@ -178,6 +189,12 @@ public class BookmarkToolbar extends SelectableListToolbar void setCurrentFolder(BookmarkId folder) { mCurrentFolder = mBookmarkModel.getBookmarkById(folder); @@ -1170,7 +1169,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows } void setNavigateBackRunnable(Runnable navigateBackRunnable) { -@@ -191,6 +208,13 @@ public class BookmarkToolbar extends SelectableListToolbar +@@ -202,6 +219,13 @@ public class BookmarkToolbar extends SelectableListToolbar @Override public boolean onMenuItemClick(MenuItem menuItem) { hideOverflowMenu(); @@ -1181,10 +1180,10 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows + mExportBookmarkRunnable.run(); + return true; + } - return mMenuIdClickedFunction.apply(menuItem.getItemId()); + return assumeNonNull(mMenuIdClickedFunction).apply(menuItem.getItemId()); } -@@ -206,6 +230,9 @@ public class BookmarkToolbar extends SelectableListToolbar +@@ -222,6 +246,9 @@ public class BookmarkToolbar extends SelectableListToolbar protected void showNormalView() { super.showNormalView(); @@ -1197,7 +1196,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbarMediator.java b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbarMediator.java --- a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbarMediator.java +++ b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbarMediator.java -@@ -135,6 +135,10 @@ class BookmarkToolbarMediator +@@ -140,6 +140,10 @@ class BookmarkToolbarMediator mBookmarkDelegate = bookmarkDelegate; mModel.set( BookmarkToolbarProperties.NAVIGATE_BACK_RUNNABLE, this::onNavigateBack); @@ -1211,9 +1210,9 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbarProperties.java b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbarProperties.java --- a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbarProperties.java +++ b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbarProperties.java -@@ -79,6 +79,10 @@ class BookmarkToolbarProperties { +@@ -86,6 +86,10 @@ class BookmarkToolbarProperties { - static final WritableObjectPropertyKey NAVIGATE_BACK_RUNNABLE = + static final WritableObjectPropertyKey NEXT_FOCUSABLE_VIEW = new WritableObjectPropertyKey<>(); + static final WritableObjectPropertyKey IMPORT_BOOKMARK_RUNNABLE = + new WritableObjectPropertyKey<>(); @@ -1222,12 +1221,12 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows static final PropertyKey[] ALL_KEYS = { SELECTION_DELEGATE, -@@ -106,6 +110,8 @@ class BookmarkToolbarProperties { - SELECTION_MODE_SHOW_OPEN_IN_INCOGNITO, +@@ -114,6 +118,8 @@ class BookmarkToolbarProperties { SELECTION_MODE_SHOW_MOVE, SELECTION_MODE_SHOW_MARK_READ, -- SELECTION_MODE_SHOW_MARK_UNREAD -+ SELECTION_MODE_SHOW_MARK_UNREAD, + SELECTION_MODE_SHOW_MARK_UNREAD, +- NEXT_FOCUSABLE_VIEW ++ NEXT_FOCUSABLE_VIEW, + IMPORT_BOOKMARK_RUNNABLE, + EXPORT_BOOKMARK_RUNNABLE }; @@ -1235,7 +1234,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbarViewBinder.java b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbarViewBinder.java --- a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbarViewBinder.java +++ b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbarViewBinder.java -@@ -54,6 +54,12 @@ class BookmarkToolbarViewBinder { +@@ -56,6 +56,12 @@ class BookmarkToolbarViewBinder { model.get(BookmarkToolbarProperties.CHECKED_VIEW_MENU_ID)); } else if (key == BookmarkToolbarProperties.CURRENT_FOLDER) { bookmarkToolbar.setCurrentFolder(model.get(BookmarkToolbarProperties.CURRENT_FOLDER)); @@ -1251,7 +1250,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationCustomView.java b/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationCustomView.java --- a/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationCustomView.java +++ b/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationCustomView.java -@@ -47,7 +47,7 @@ public class DownloadLocationCustomView extends ScrollView +@@ -50,7 +50,7 @@ public class DownloadLocationCustomView extends ScrollView private TextView mFileSize; private Spinner mFileLocation; private TextView mLocationAvailableSpace; @@ -1259,8 +1258,8 @@ diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browse + public CheckBox mDontShowAgain; private @DownloadLocationDialogType int mDialogType; private long mTotalBytes; - private Callback mOnClickedCallback; -@@ -72,7 +72,7 @@ public class DownloadLocationCustomView extends ScrollView + private @Nullable Callback mOnClickedCallback; +@@ -75,7 +75,7 @@ public class DownloadLocationCustomView extends ScrollView mDontShowAgain = findViewById(R.id.show_again_checkbox); } @@ -1269,81 +1268,84 @@ diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browse @DownloadLocationDialogType int dialogType, long totalBytes, Callback onClickedCallback, -@@ -130,7 +130,7 @@ public class DownloadLocationCustomView extends ScrollView +@@ -133,7 +133,7 @@ public class DownloadLocationCustomView extends ScrollView + /** * @return The text that the user inputted as the name of the file. */ - @Nullable -- String getFileName() { -+ public String getFileName() { +- @Nullable String getFileName() { ++ @Nullable public String getFileName() { if (mFileName == null || mFileName.getText() == null) return null; return mFileName.getText().toString(); } -@@ -139,7 +139,7 @@ public class DownloadLocationCustomView extends ScrollView +@@ -141,7 +141,7 @@ public class DownloadLocationCustomView extends ScrollView + /** * @return The file path based on what the user selected as the location of the file. */ - @Nullable -- DirectoryOption getDirectoryOption() { -+ public DirectoryOption getDirectoryOption() { +- @Nullable DirectoryOption getDirectoryOption() { ++ @Nullable public DirectoryOption getDirectoryOption() { if (mFileLocation == null) return null; DirectoryOption selected = (DirectoryOption) mFileLocation.getSelectedItem(); return selected; diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationDialogCoordinator.java b/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationDialogCoordinator.java --- a/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationDialogCoordinator.java +++ b/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationDialogCoordinator.java -@@ -38,18 +38,18 @@ import java.util.ArrayList; - */ +@@ -43,13 +43,13 @@ import java.util.ArrayList; + @NullMarked public class DownloadLocationDialogCoordinator implements ModalDialogProperties.Controller { - @NonNull private DownloadLocationDialogController mController; -- private PropertyModel mDialogModel; -+ protected PropertyModel mDialogModel; - private PropertyModel mDownloadLocationDialogModel; - private PropertyModelChangeProcessor + private DownloadLocationDialogController mController; +- private @Nullable PropertyModel mDialogModel; ++ protected @Nullable PropertyModel mDialogModel; + private @Nullable PropertyModel mDownloadLocationDialogModel; + private @Nullable + PropertyModelChangeProcessor mPropertyModelChangeProcessor; -- private DownloadLocationCustomView mCustomView; -- private ModalDialogManager mModalDialogManager; -+ protected DownloadLocationCustomView mCustomView; -+ protected ModalDialogManager mModalDialogManager; +- private @Nullable DownloadLocationCustomView mCustomView; +- private @Nullable ModalDialogManager mModalDialogManager; ++ protected @Nullable DownloadLocationCustomView mCustomView; ++ protected @Nullable ModalDialogManager mModalDialogManager; + private long mTotalBytes; private @DownloadLocationDialogType int mDialogType; - private String mSuggestedPath; - private Context mContext; +@@ -57,7 +57,7 @@ public class DownloadLocationDialogCoordinator implements ModalDialogProperties. + private @Nullable Context mContext; + private boolean mHasMultipleDownloadLocations; -- private Profile mProfile; -+ protected Profile mProfile; +- private @Nullable Profile mProfile; ++ protected @Nullable Profile mProfile; + private boolean mLocationDialogManaged; - /** -@@ -141,7 +141,7 @@ public class DownloadLocationDialogCoordinator implements ModalDialogProperties. +@@ -153,7 +153,7 @@ public class DownloadLocationDialogCoordinator implements ModalDialogProperties. * Called after retrieved the download directory options. * @param dirs An list of available download directories. */ - private void onDirectoryOptionsRetrieved(ArrayList dirs) { + protected void onDirectoryOptionsRetrieved(ArrayList dirs) { - // Already showing the dialog. - if (mDialogModel != null) return; - + assertNonNull(mContext); + assertNonNull(mModalDialogManager); + assertNonNull(mSuggestedPath); diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc --- a/chrome/browser/flags/android/chrome_feature_list.cc +++ b/chrome/browser/flags/android/chrome_feature_list.cc -@@ -213,6 +213,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { - &kCCTAuthTab, - &kCCTAuthTabDisableAllExternalIntents, - &kCCTAuthTabEnableHttpsRedirects, +@@ -223,6 +223,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { + &kBatchTabRestore, + &kBlockIntentsWhileLocked, + &kBookmarkPaneAndroid, + &kBookmarksExportUseSaf, - &kCCTBeforeUnload, - &kCCTBlockTouchesDuringEnterAnimation, - &kCCTClientDataHeader, + &kBottomBrowserControlsRefactor, + &kTabClosureMethodRefactor, + &kBrowserControlsDebugging, diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java --- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java +++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java -@@ -599,6 +599,7 @@ public abstract class ChromeFeatureList { +@@ -624,6 +624,7 @@ public abstract class ChromeFeatureList { public static final String USE_LIBUNWINDSTACK_NATIVE_UNWINDER_ANDROID = "UseLibunwindstackNativeUnwinderAndroid"; public static final String VISITED_URL_RANKING_SERVICE = "VisitedURLRankingService"; + public static final String BOOKMARKS_EXPORT_USESAF = "BookmarksExportUseSaf"; - public static final String VOICE_SEARCH_AUDIO_CAPTURE_POLICY = "VoiceSearchAudioCapturePolicy"; public static final String WEB_APK_BACKUP_AND_RESTORE_BACKEND = "WebApkBackupAndRestoreBackend"; public static final String WEB_APK_INSTALL_FAILURE_NOTIFICATION = + "WebApkInstallFailureNotification"; diff --git a/chrome/browser/importer/profile_writer.cc b/chrome/browser/importer/profile_writer.cc --- a/chrome/browser/importer/profile_writer.cc +++ b/chrome/browser/importer/profile_writer.cc @@ -1356,7 +1358,7 @@ diff --git a/chrome/browser/importer/profile_writer.cc b/chrome/browser/importer + +void ProfileWriter::AddBookmarksWithModel( + BookmarkModel* model, -+ const std::vector& bookmarks, ++ const std::vector& bookmarks, + const std::u16string& top_level_folder_name) { + if (bookmarks.empty()) + return; @@ -1375,13 +1377,13 @@ diff --git a/chrome/browser/importer/profile_writer.h b/chrome/browser/importer/ #include "components/favicon_base/favicon_usage_data.h" #include "components/history/core/browser/history_types.h" #include "components/search_engines/template_url_service.h" -@@ -71,6 +72,11 @@ class ProfileWriter : public base::RefCountedThreadSafe { - virtual void AddBookmarks(const std::vector& bookmarks, - const std::u16string& top_level_folder_name); +@@ -75,6 +76,11 @@ class ProfileWriter : public base::RefCountedThreadSafe { + const std::vector& bookmarks, + const std::u16string& top_level_folder_name); + virtual void AddBookmarksWithModel( + bookmarks::BookmarkModel* model, -+ const std::vector& bookmarks, ++ const std::vector& bookmarks, + const std::u16string& top_level_folder_name); + virtual void AddFavicons(const favicon_base::FaviconUsageDataList& favicons); @@ -1390,7 +1392,7 @@ diff --git a/chrome/browser/importer/profile_writer.h b/chrome/browser/importer/ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java --- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java +++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java -@@ -127,6 +127,8 @@ public final class ChromePreferenceKeys { +@@ -140,6 +140,8 @@ public final class ChromePreferenceKeys { "enhanced_bookmark_last_used_parent_folder"; public static final String BOOKMARKS_SORT_ORDER = "Chrome.Bookmarks.BookmarkRowSortOrder"; public static final String BOOKMARKS_VISUALS_PREF = "Chrome.Bookmarks.BookmarkRowDisplay"; @@ -1399,8 +1401,8 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro /** Whether Chrome is set as the default browser. Default value is false. */ public static final String CHROME_DEFAULT_BROWSER = "applink.chrome_default_browser"; -@@ -957,6 +959,7 @@ public final class ChromePreferenceKeys { - AUXILIARY_SEARCH_IS_SCHEMA_V2_SET, +@@ -999,6 +1001,7 @@ public final class ChromePreferenceKeys { + AUXILIARY_SEARCH_SCHEMA_VERSION, APP_LAUNCH_LAST_KNOWN_ACTIVE_TAB_STATE, APP_LAUNCH_SEARCH_ENGINE_HAD_LOGO, + BOOKMARKS_LAST_EXPORT_URI, @@ -1410,7 +1412,7 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd -@@ -246,6 +246,24 @@ CHAR_LIMIT guidelines: +@@ -249,6 +249,24 @@ CHAR_LIMIT guidelines: Sites @@ -1438,20 +1440,20 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro diff --git a/chrome/common/BUILD.gn b/chrome/common/BUILD.gn --- a/chrome/common/BUILD.gn +++ b/chrome/common/BUILD.gn -@@ -350,6 +350,9 @@ static_library("common_lib") { +@@ -352,6 +352,9 @@ static_library("common_lib") { sources += [ "media/chrome_media_drm_bridge_client.cc", "media/chrome_media_drm_bridge_client.h", + ## Bromite dependencies for bookmark import functionality -+ "importer/imported_bookmark_entry.cc", -+ "importer/imported_bookmark_entry.h", ++ "//components/user_data_importer/common/imported_bookmark_entry.cc", ++ "//components/user_data_importer/common/imported_bookmark_entry.h", ] } else { # Non-Android. diff --git a/chrome/utility/BUILD.gn b/chrome/utility/BUILD.gn --- a/chrome/utility/BUILD.gn +++ b/chrome/utility/BUILD.gn -@@ -89,8 +89,6 @@ static_library("utility") { +@@ -88,8 +88,6 @@ static_library("utility") { if (!is_android) { sources += [ @@ -1460,8 +1462,8 @@ diff --git a/chrome/utility/BUILD.gn b/chrome/utility/BUILD.gn "importer/bookmarks_file_importer.cc", "importer/bookmarks_file_importer.h", "importer/external_process_importer_bridge.cc", -@@ -227,6 +225,11 @@ static_library("utility") { - ] +@@ -222,6 +220,11 @@ static_library("utility") { + deps += [ "//chrome/services/pdf:lib" ] } + sources += [ @@ -1475,16 +1477,16 @@ diff --git a/chrome/utility/BUILD.gn b/chrome/utility/BUILD.gn diff --git a/chrome/utility/importer/bookmark_html_reader.cc b/chrome/utility/importer/bookmark_html_reader.cc --- a/chrome/utility/importer/bookmark_html_reader.cc +++ b/chrome/utility/importer/bookmark_html_reader.cc -@@ -17,7 +17,9 @@ +@@ -16,7 +16,9 @@ + #include "base/strings/string_util.h" #include "base/strings/utf_string_conversions.h" #include "base/time/time.h" - #include "chrome/common/importer/imported_bookmark_entry.h" +#if !BUILDFLAG(IS_ANDROID) #include "chrome/utility/importer/favicon_reencode.h" +#endif #include "components/search_engines/search_terms_data.h" #include "components/search_engines/template_url.h" - #include "net/base/data_url.h" + #include "components/user_data_importer/common/imported_bookmark_entry.h" @@ -55,6 +57,7 @@ bool GetAttribute(const std::string& attribute_list, return true; } @@ -1510,8 +1512,8 @@ diff --git a/chrome/utility/importer/bookmark_html_reader.cc b/chrome/utility/im + const base::RepeatingCallback cancellation_callback, + const base::RepeatingCallback valid_url_callback, const base::FilePath& file_path, - std::vector* bookmarks, - std::vector* search_engines, + std::vector* bookmarks, + std::vector* search_engines, favicon_base::FaviconUsageDataList* favicons) { std::string content; - base::ReadFileToString(file_path, &content); @@ -1528,8 +1530,8 @@ diff --git a/chrome/utility/importer/bookmark_html_reader.cc b/chrome/utility/im + base::RepeatingCallback cancellation_callback, + base::RepeatingCallback valid_url_callback, + const std::string& content, -+ std::vector* bookmarks, -+ std::vector* search_engines, ++ std::vector* bookmarks, ++ std::vector* search_engines, + favicon_base::FaviconUsageDataList* favicons) { std::vector lines = base::SplitString( content, "\n", base::TRIM_WHITESPACE, base::SPLIT_WANT_ALL); @@ -1558,16 +1560,16 @@ diff --git a/chrome/utility/importer/bookmark_html_reader.cc b/chrome/utility/im diff --git a/chrome/utility/importer/bookmark_html_reader.h b/chrome/utility/importer/bookmark_html_reader.h --- a/chrome/utility/importer/bookmark_html_reader.h +++ b/chrome/utility/importer/bookmark_html_reader.h -@@ -50,6 +50,14 @@ void ImportBookmarksFile( - std::vector* search_engines, +@@ -53,6 +53,14 @@ void ImportBookmarksFile( + std::vector* search_engines, favicon_base::FaviconUsageDataList* favicons); +void ImportBookmarksFile( + const base::RepeatingCallback cancellation_callback, + const base::RepeatingCallback valid_url_callback, + const std::string& content, -+ std::vector* bookmarks, -+ std::vector* search_engines, ++ std::vector* bookmarks, ++ std::vector* search_engines, + favicon_base::FaviconUsageDataList* favicons); + // Returns true if |url| should be imported as a search engine, i.e. because it @@ -1638,19 +1640,25 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui private static final String AUDIO_TYPE = "audio"; private static final String ALL_TYPES = "*/*"; private static final String GENERIC_TYPE = "application/octet-stream"; -@@ -323,6 +325,11 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick +@@ -323,6 +325,17 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick mMimeTypes = convertToSupportedMimeTypes(mFileTypes); } + @CalledByNative + private void showToast(String message) { -+ Toast.makeText(ContextUtils.getApplicationContext(), message, Toast.LENGTH_LONG).show(); ++ ThreadUtils.runOnUiThread( ++ new Runnable() { ++ @Override ++ public void run() { ++ Toast.makeText(ContextUtils.getApplicationContext(), message, Toast.LENGTH_LONG).show(); ++ } ++ }); + } + /** * Creates and starts an intent based on the passed fileTypes and capture value. * -@@ -407,7 +414,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick +@@ -407,7 +420,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick List missingPermissions = new ArrayList<>(); String storagePermission = Manifest.permission.READ_EXTERNAL_STORAGE; boolean shouldUsePhotoPicker = shouldUsePhotoPicker(); @@ -1659,7 +1667,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui // The permission scenario for accessing media has evolved a bit over the years: // Early on, READ_EXTERNAL_STORAGE was required to access media, but that permission was // later deprecated. In its place (starting with Android T) READ_MEDIA_IMAGES and -@@ -460,7 +467,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick +@@ -460,7 +473,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick // TODO(finnur): Remove once we figure out the cause of // crbug.com/950024. @@ -1668,7 +1676,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui if (permissions.length != requestPermissions.length) { throw new RuntimeException( String.format( -@@ -477,7 +484,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick +@@ -477,7 +490,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick } } @@ -1677,7 +1685,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui if (permissions[i].equals(storagePermission) || permissions[i].equals( Manifest.permission.READ_MEDIA_IMAGES) -@@ -783,6 +790,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick +@@ -783,6 +796,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick mimeTypes.add(mimeType); } } @@ -1685,7 +1693,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui return mimeTypes; } -@@ -1155,6 +1163,10 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick +@@ -1155,6 +1169,10 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick return countAcceptTypesFor(superType) == mMimeTypes.size(); } diff --git a/build/cromite_patches/Add-cromite-flags-support.patch b/build/cromite_patches/Add-cromite-flags-support.patch index 3eecdcb2..6723bf82 100644 --- a/build/cromite_patches/Add-cromite-flags-support.patch +++ b/build/cromite_patches/Add-cromite-flags-support.patch @@ -41,6 +41,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html .../Add-cromite-flags-support.grdp | 9 + .../placeholder.txt | 1 + chrome/browser/ui/ui_features.cc | 1 + + chrome/browser/unexpire_flags.cc | 15 +- chrome/common/chrome_features.cc | 1 + .../browser_ui/accessibility/android/BUILD.gn | 1 + .../res/xml/accessibility_preferences.xml | 3 +- @@ -106,7 +107,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html third_party/blink/public/common/features.h | 1 + ui/base/ui_base_features.cc | 1 + ui/base/ui_base_features.h | 1 + - 93 files changed, 812 insertions(+), 29 deletions(-) + 94 files changed, 826 insertions(+), 30 deletions(-) create mode 100644 chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/cromite/include_all_directory.java create mode 100644 chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/cromite/java_template/CromiteCachedFlag.java.tmpl create mode 100644 chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Add-cromite-flags-support.grdp @@ -143,7 +144,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html diff --git a/base/BUILD.gn b/base/BUILD.gn --- a/base/BUILD.gn +++ b/base/BUILD.gn -@@ -164,6 +164,8 @@ use_epoll = is_linux || is_chromeos || is_android +@@ -178,6 +178,8 @@ use_epoll = is_linux || is_chromeos || is_android # This does not include test code (test support and anything in the test # directory) which should use source_set as is recommended for GN targets). component("base") { @@ -152,7 +153,7 @@ diff --git a/base/BUILD.gn b/base/BUILD.gn sources = [ "allocator/allocator_check.cc", "allocator/allocator_check.h", -@@ -1019,7 +1021,7 @@ component("base") { +@@ -1036,7 +1038,7 @@ component("base") { "//build/config/compiler:wglobal_constructors", ] @@ -291,7 +292,7 @@ diff --git a/base/feature_list.cc b/base/feature_list.cc diff --git a/base/feature_list.h b/base/feature_list.h --- a/base/feature_list.h +++ b/base/feature_list.h -@@ -167,8 +167,10 @@ enum class FeatureMacroHandshake { kSecret }; +@@ -174,8 +174,10 @@ enum class FeatureMacroHandshake { kSecret }; struct BASE_EXPORT LOGICALLY_CONST Feature { constexpr Feature(const char* name, FeatureState default_state, @@ -304,7 +305,7 @@ diff --git a/base/feature_list.h b/base/feature_list.h #if BUILDFLAG(ENABLE_BANNED_BASE_FEATURE_PREFIX) if (std::string_view(name).find(BUILDFLAG(BANNED_BASE_FEATURE_PREFIX)) == 0) { -@@ -195,6 +197,9 @@ struct BASE_EXPORT LOGICALLY_CONST Feature { +@@ -202,6 +204,9 @@ struct BASE_EXPORT LOGICALLY_CONST Feature { // command line switch. const FeatureState default_state; @@ -314,7 +315,7 @@ diff --git a/base/feature_list.h b/base/feature_list.h private: friend class FeatureList; -@@ -474,6 +479,11 @@ class BASE_EXPORT FeatureList { +@@ -481,6 +486,11 @@ class BASE_EXPORT FeatureList { // instance, which is checked in builds with DCHECKs enabled. static bool IsEnabled(const Feature& feature); @@ -326,7 +327,7 @@ diff --git a/base/feature_list.h b/base/feature_list.h // Some characters are not allowed to appear in feature names or the // associated field trial names, as they are used as special characters for // command-line serialization. This function checks that the strings are ASCII -@@ -743,4 +753,62 @@ class BASE_EXPORT FeatureList { +@@ -750,4 +760,62 @@ class BASE_EXPORT FeatureList { } // namespace base @@ -436,7 +437,7 @@ diff --git a/chrome/android/java/res/values/values.xml b/chrome/android/java/res diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml --- a/chrome/android/java/res/xml/privacy_preferences.xml +++ b/chrome/android/java/res/xml/privacy_preferences.xml -@@ -48,6 +48,10 @@ found in the LICENSE file. +@@ -44,6 +44,10 @@ found in the LICENSE file. android:key="do_not_track" android:title="@string/do_not_track_title" android:fragment="org.chromium.chrome.browser.privacy.settings.DoNotTrackSettings" /> @@ -450,24 +451,24 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/settings/HomepageSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/homepage/settings/HomepageSettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/homepage/settings/HomepageSettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/homepage/settings/HomepageSettings.java -@@ -37,7 +37,7 @@ public class HomepageSettings extends ChromeBaseSettingsFragment { +@@ -38,7 +38,7 @@ public class HomepageSettings extends ChromeBaseSettingsFragment { private final ObservableSupplierImpl mPageTitle = new ObservableSupplierImpl<>(); @Override -- public void onCreatePreferences(Bundle savedInstanceState, String rootKey) { -+ public void onCreatePreferencesCromite(Bundle savedInstanceState, String rootKey) { +- public void onCreatePreferences(@Nullable Bundle savedInstanceState, @Nullable String rootKey) { ++ public void onCreatePreferencesCromite(@Nullable Bundle savedInstanceState, @Nullable String rootKey) { mHomepageManager = HomepageManager.getInstance(); mPageTitle.set(getString(R.string.options_homepage_title)); diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java -@@ -84,7 +84,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment - private final ObservableSupplierImpl mPageTitle = new ObservableSupplierImpl<>(); +@@ -127,7 +127,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment + } @Override -- public void onCreatePreferences(Bundle savedInstanceState, String rootKey) { -+ public void onCreatePreferencesCromite(Bundle savedInstanceState, String rootKey) { +- public void onCreatePreferences(@Nullable Bundle savedInstanceState, @Nullable String rootKey) { ++ public void onCreatePreferencesCromite(@Nullable Bundle savedInstanceState, @Nullable String rootKey) { mPageTitle.set(getString(R.string.prefs_privacy_security)); SettingsUtils.addPreferencesFromResource(this, R.xml.privacy_preferences); @@ -482,7 +483,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Fragme import org.chromium.base.supplier.ObservableSupplier; import org.chromium.base.supplier.OneshotSupplier; import org.chromium.chrome.browser.LaunchIntentDispatcher; -@@ -75,18 +76,21 @@ public class FragmentDependencyProvider extends FragmentManager.FragmentLifecycl +@@ -76,18 +77,21 @@ public class FragmentDependencyProvider extends FragmentManager.FragmentLifecycl private final OneshotSupplier mSnackbarManagerSupplier; private final OneshotSupplier mBottomSheetControllerSupplier; private final ObservableSupplier mModalDialogManagerSupplier; @@ -505,7 +506,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Fragme } @Override -@@ -95,6 +99,10 @@ public class FragmentDependencyProvider extends FragmentManager.FragmentLifecycl +@@ -96,6 +100,10 @@ public class FragmentDependencyProvider extends FragmentManager.FragmentLifecycl @NonNull Fragment fragment, @NonNull Context unusedContext) { // Common dependencies attachments. @@ -527,7 +528,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Settin import android.annotation.SuppressLint; import android.content.Context; import android.content.Intent; -@@ -32,7 +33,9 @@ import org.chromium.base.Callback; +@@ -34,7 +35,9 @@ import org.chromium.base.Callback; import org.chromium.base.CallbackUtils; import org.chromium.base.Log; import org.chromium.base.metrics.RecordHistogram; @@ -537,7 +538,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Settin import org.chromium.base.supplier.OneshotSupplierImpl; import org.chromium.chrome.R; import org.chromium.chrome.browser.ChromeBaseAppCompatActivity; -@@ -41,12 +44,14 @@ import org.chromium.chrome.browser.back_press.SecondaryActivityBackPressUma.Seco +@@ -42,12 +45,14 @@ import org.chromium.chrome.browser.back_press.BackPressHelper; import org.chromium.chrome.browser.feedback.HelpAndFeedbackLauncherImpl; import org.chromium.chrome.browser.flags.ChromeFeatureList; import org.chromium.chrome.browser.init.ChromeBrowserInitializer; @@ -552,10 +553,10 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Settin import org.chromium.components.browser_ui.bottomsheet.BottomSheetController; import org.chromium.components.browser_ui.bottomsheet.BottomSheetControllerFactory; import org.chromium.components.browser_ui.bottomsheet.ManagedBottomSheetController; -@@ -85,6 +90,40 @@ import java.util.Locale; - */ - public class SettingsActivity extends ChromeBaseAppCompatActivity +@@ -89,6 +94,40 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity implements PreferenceFragmentCompat.OnPreferenceStartFragmentCallback, SnackbarManageable { + private static final String TAG = "SettingsActivity"; + + private static class RequestRestartDelegate implements ChromeBaseSettingsFragment.RequireRestartDelegate { + private OneshotSupplier mSnackbarManagerSupplier; + private Activity mActivity; @@ -593,7 +594,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Settin @VisibleForTesting(otherwise = VisibleForTesting.PACKAGE_PRIVATE) public static final String EXTRA_SHOW_FRAGMENT = "show_fragment"; -@@ -151,7 +190,8 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity +@@ -155,7 +194,8 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity mProfile, mSnackbarManagerSupplier, mBottomSheetControllerSupplier, @@ -632,7 +633,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tracing/setting diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -396,6 +396,10 @@ using flags_ui::kOsLinux; +@@ -406,6 +406,10 @@ using flags_ui::kOsLinux; using flags_ui::kOsMac; using flags_ui::kOsWin; @@ -643,9 +644,9 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc namespace about_flags { namespace { -@@ -4428,6 +4432,10 @@ const FeatureEntry::FeatureVariation - std::size(kStandardBoundSessionCredentialsEnabledOriginTrialToken), - nullptr}}; +@@ -4705,6 +4709,10 @@ const FeatureEntry::FeatureVariation kHistorySyncOptinExpansionPillVariations[] + nullptr}}; + #endif // BUILDFLAG(ENABLE_DICE_SUPPORT) +#define FEATURE_PARAM_SECTION +#include "cromite_flags/chrome_browser_about_flags_cc.inc" @@ -654,7 +655,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc // RECORDING USER METRICS FOR FLAGS: // ----------------------------------------------------------------------------- // The first line of the entry is the internal name. -@@ -4454,6 +4462,9 @@ const FeatureEntry::FeatureVariation +@@ -4731,6 +4739,9 @@ const FeatureEntry::FeatureVariation kHistorySyncOptinExpansionPillVariations[] const FeatureEntry kFeatureEntries[] = { // Include generated flags for flag unexpiry; see //docs/flag_expiry.md and // //tools/flags/generate_unexpire_flags.py. @@ -667,7 +668,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc diff --git a/chrome/browser/browser_features.cc b/chrome/browser/browser_features.cc --- a/chrome/browser/browser_features.cc +++ b/chrome/browser/browser_features.cc -@@ -357,4 +357,5 @@ BASE_FEATURE(kRemovalOfIWAsFromTabCapture, +@@ -359,4 +359,5 @@ BASE_FEATURE(kRemovalOfIWAsFromTabCapture, "RemovalOfIWAsFromTabCapture", base::FEATURE_ENABLED_BY_DEFAULT); @@ -676,7 +677,7 @@ diff --git a/chrome/browser/browser_features.cc b/chrome/browser/browser_feature diff --git a/chrome/browser/browser_features.h b/chrome/browser/browser_features.h --- a/chrome/browser/browser_features.h +++ b/chrome/browser/browser_features.h -@@ -134,6 +134,7 @@ BASE_DECLARE_FEATURE(kRemovalOfIWAsFromTabCapture); +@@ -135,6 +135,7 @@ BASE_DECLARE_FEATURE(kRemovalOfIWAsFromTabCapture); // module, e.g. // //chrome/browser//features.h // @@ -726,7 +727,7 @@ diff --git a/chrome/browser/flags/BUILD.gn b/chrome/browser/flags/BUILD.gn diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc --- a/chrome/browser/flags/android/chrome_feature_list.cc +++ b/chrome/browser/flags/android/chrome_feature_list.cc -@@ -1207,5 +1207,6 @@ BASE_FEATURE(kWebOtpCrossDeviceSimpleString, +@@ -1345,5 +1345,6 @@ BASE_FEATURE(kWebOtpCrossDeviceSimpleString, "WebOtpCrossDeviceSimpleString", base::FEATURE_DISABLED_BY_DEFAULT); @@ -736,7 +737,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse diff --git a/chrome/browser/flags/android/chrome_feature_list.h b/chrome/browser/flags/android/chrome_feature_list.h --- a/chrome/browser/flags/android/chrome_feature_list.h +++ b/chrome/browser/flags/android/chrome_feature_list.h -@@ -241,6 +241,7 @@ constexpr base::FeatureParam kQuickDeleteAndroidSurveyTriggerId( +@@ -285,6 +285,7 @@ constexpr base::FeatureParam kQuickDeleteAndroidSurveyTriggerId( "trigger_id", /*default_value=*/""); @@ -758,16 +759,16 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f import java.util.List; import java.util.Map; -@@ -863,7 +867,7 @@ public abstract class ChromeFeatureList { +@@ -923,7 +927,7 @@ public abstract class ChromeFeatureList { public static final CachedFlag sWebApkMinShellApkVersion = newCachedFlag(WEB_APK_MIN_SHELL_APK_VERSION, true); - public static final List sFlagsCachedFullBrowser = + public static final List sFlagsCachedFullBrowserChromium = List.of( - sAndroidAppIntegration, - sAndroidAppIntegrationModule, -@@ -968,6 +972,13 @@ public abstract class ChromeFeatureList { + sAccountForSuppressedKeyboardInsets, + sAllowTabClosingUponMinimization, +@@ -1047,6 +1051,13 @@ public abstract class ChromeFeatureList { sUseLibunwindstackNativeUnwinderAndroid, sWebApkMinShellApkVersion); @@ -855,8 +856,8 @@ diff --git a/chrome/browser/settings/android/java/src/org/chromium/chrome/browse +++ b/chrome/browser/settings/android/java/src/org/chromium/chrome/browser/settings/ChromeBaseSettingsFragment.java @@ -8,12 +8,19 @@ import androidx.preference.PreferenceFragmentCompat; + import org.chromium.build.annotations.Initializer; import org.chromium.build.annotations.NullMarked; - import org.chromium.build.annotations.Nullable; +import org.chromium.base.supplier.Supplier; import org.chromium.chrome.browser.feedback.HelpAndFeedbackLauncher; import org.chromium.chrome.browser.feedback.HelpAndFeedbackLauncherFactory; @@ -874,8 +875,8 @@ diff --git a/chrome/browser/settings/android/java/src/org/chromium/chrome/browse * Base class for settings in Chrome. * @@ -28,6 +35,49 @@ public abstract class ChromeBaseSettingsFragment extends PreferenceFragmentCompa - private @Nullable Profile mProfile; - private @Nullable SettingsCustomTabLauncher mCustomTabLauncher; + private Profile mProfile; + private SettingsCustomTabLauncher mCustomTabLauncher; + private Supplier mRequireRestartDelegateSupplier; + @@ -957,16 +958,48 @@ new file mode 100644 diff --git a/chrome/browser/ui/ui_features.cc b/chrome/browser/ui/ui_features.cc --- a/chrome/browser/ui/ui_features.cc +++ b/chrome/browser/ui/ui_features.cc -@@ -371,4 +371,5 @@ BASE_FEATURE(kByDateHistoryInSidePanel, - "ByDateHistoryInSidePanel", - base::FEATURE_DISABLED_BY_DEFAULT); +@@ -500,4 +500,5 @@ bool HasTabSearchToolbarButton() { + return has_tab_search_toolbar_button; + } +#include "cromite_flags/chrome_browser_ui_ui_features_cc.inc" } // namespace features +diff --git a/chrome/browser/unexpire_flags.cc b/chrome/browser/unexpire_flags.cc +--- a/chrome/browser/unexpire_flags.cc ++++ b/chrome/browser/unexpire_flags.cc +@@ -12,6 +12,7 @@ + #include "base/containers/contains.h" + #include "base/containers/flat_map.h" + #include "base/no_destructor.h" ++#include "chrome/browser/about_flags.h" + #include "chrome/browser/expired_flags_list.h" + #include "chrome/browser/unexpire_flags_gen.h" + #include "chrome/common/chrome_version.h" +@@ -117,7 +118,19 @@ bool IsFlagExpired(const flags_ui::FlagsStorage* storage, + + // Otherwise, the flag is expired if its expiration mstone is less than the + // mstone of this copy of Chromium. +- return mstone < CHROME_VERSION_MAJOR; ++ if (mstone < CHROME_VERSION_MAJOR) { ++ if (const flags_ui::FeatureEntry* entry = ++ about_flags::GetCurrentFlagsState()->FindFeatureEntryByName( ++ internal_name)) { ++ if (const base::Feature* feature = entry->feature.feature) { ++ if (feature->is_cromite) { ++ return false; ++ } ++ } ++ } ++ return true; ++ } ++ return false; + } + + namespace testing { diff --git a/chrome/common/chrome_features.cc b/chrome/common/chrome_features.cc --- a/chrome/common/chrome_features.cc +++ b/chrome/common/chrome_features.cc -@@ -1591,4 +1591,5 @@ BASE_FEATURE(kDisableShortcutsEnableDiy, +@@ -1795,4 +1795,5 @@ BASE_FEATURE(kDisableShortcutsEnableDiy, "DisableShortcutsEnableDiy", base::FEATURE_ENABLED_BY_DEFAULT); @@ -999,27 +1032,28 @@ diff --git a/components/browser_ui/accessibility/android/java/res/xml/accessibil diff --git a/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettings.java b/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettings.java --- a/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettings.java +++ b/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettings.java -@@ -24,8 +24,10 @@ import org.chromium.components.omnibox.OmniboxFeatures; +@@ -28,9 +28,11 @@ import org.chromium.components.omnibox.OmniboxFeatures; import org.chromium.content_public.browser.ContentFeatureList; import org.chromium.content_public.browser.ContentFeatureMap; +import org.chromium.chrome.browser.settings.ChromeBaseSettingsFragment; + /** Fragment to keep track of all the accessibility related preferences. */ + @NullMarked -public class AccessibilitySettings extends PreferenceFragmentCompat +public class AccessibilitySettings extends ChromeBaseSettingsFragment implements EmbeddableSettingsPage, Preference.OnPreferenceChangeListener { public static final String PREF_PAGE_ZOOM_DEFAULT_ZOOM = "page_zoom_default_zoom"; public static final String PREF_PAGE_ZOOM_INCLUDE_OS_ADJUSTMENT = -@@ -64,7 +66,7 @@ public class AccessibilitySettings extends PreferenceFragmentCompat +@@ -69,7 +71,7 @@ public class AccessibilitySettings extends PreferenceFragmentCompat } @Override -- public void onCreatePreferences(Bundle savedInstanceState, String rootKey) { -+ public void onCreatePreferencesCromite(Bundle savedInstanceState, String rootKey) { +- public void onCreatePreferences(@Nullable Bundle savedInstanceState, @Nullable String rootKey) { ++ public void onCreatePreferencesCromite(@Nullable Bundle savedInstanceState, @Nullable String rootKey) { SettingsUtils.addPreferencesFromResource(this, R.xml.accessibility_preferences); - mPageZoomDefaultZoomPref = (PageZoomPreference) findPreference(PREF_PAGE_ZOOM_DEFAULT_ZOOM); + mPageZoomDefaultZoomPref = findPreference(PREF_PAGE_ZOOM_DEFAULT_ZOOM); diff --git a/components/browser_ui/settings/android/java/res/values/attrs.xml b/components/browser_ui/settings/android/java/res/values/attrs.xml --- a/components/browser_ui/settings/android/java/res/values/attrs.xml +++ b/components/browser_ui/settings/android/java/res/values/attrs.xml @@ -1037,7 +1071,7 @@ diff --git a/components/browser_ui/settings/android/java/res/values/attrs.xml b/ diff --git a/components/browser_ui/settings/android/widget/java/src/org/chromium/components/browser_ui/settings/ChromeSwitchPreference.java b/components/browser_ui/settings/android/widget/java/src/org/chromium/components/browser_ui/settings/ChromeSwitchPreference.java --- a/components/browser_ui/settings/android/widget/java/src/org/chromium/components/browser_ui/settings/ChromeSwitchPreference.java +++ b/components/browser_ui/settings/android/widget/java/src/org/chromium/components/browser_ui/settings/ChromeSwitchPreference.java -@@ -15,6 +15,8 @@ import android.view.accessibility.AccessibilityEvent; +@@ -13,6 +13,8 @@ import android.view.accessibility.AccessibilityEvent; import android.view.accessibility.AccessibilityNodeInfo; import android.widget.TextView; @@ -1046,7 +1080,7 @@ diff --git a/components/browser_ui/settings/android/widget/java/src/org/chromium import androidx.annotation.ColorInt; import androidx.annotation.VisibleForTesting; import androidx.preference.PreferenceViewHolder; -@@ -40,6 +42,11 @@ public class ChromeSwitchPreference extends SwitchPreferenceCompat { +@@ -38,6 +40,11 @@ public class ChromeSwitchPreference extends SwitchPreferenceCompat { /** Indicates if the preference uses a custom layout. */ private final boolean mHasCustomLayout; @@ -1058,7 +1092,7 @@ diff --git a/components/browser_ui/settings/android/widget/java/src/org/chromium // TOOD(crbug.com/1451550): This is an interim solution. In the long-term, we should migrate // away from a switch with dynamically changing summaries onto a radio group. /** -@@ -59,6 +66,18 @@ public class ChromeSwitchPreference extends SwitchPreferenceCompat { +@@ -57,6 +64,18 @@ public class ChromeSwitchPreference extends SwitchPreferenceCompat { mHasCustomLayout = ManagedPreferencesUtils.isCustomLayoutApplied(context, attrs); mUseSummaryAsTitle = true; @@ -1116,8 +1150,8 @@ diff --git a/components/components_strings.grd b/components/components_strings.g diff --git a/components/content_settings/core/common/features.cc b/components/content_settings/core/common/features.cc --- a/components/content_settings/core/common/features.cc +++ b/components/content_settings/core/common/features.cc -@@ -163,5 +163,6 @@ BASE_FEATURE(kContentSettingsPartitioning, - "ContentSettingsPartitioning", +@@ -167,5 +167,6 @@ BASE_FEATURE(kForceAllowStorageAccess, + "ForceAllowStorageAccess", base::FEATURE_DISABLED_BY_DEFAULT); +#include "cromite_flags/components_content_settings_core_common_features_cc.inc" @@ -1152,7 +1186,7 @@ diff --git a/components/offline_pages/core/offline_page_feature.h b/components/o diff --git a/components/password_manager/core/browser/features/password_features.cc b/components/password_manager/core/browser/features/password_features.cc --- a/components/password_manager/core/browser/features/password_features.cc +++ b/components/password_manager/core/browser/features/password_features.cc -@@ -187,4 +187,5 @@ BASE_FEATURE(kImprovedPasswordChangeService, +@@ -183,4 +183,5 @@ BASE_FEATURE(kImprovedPasswordChangeService, "ImprovedPasswordChangeService", base::FEATURE_DISABLED_BY_DEFAULT); @@ -1161,7 +1195,7 @@ diff --git a/components/password_manager/core/browser/features/password_features diff --git a/components/permissions/features.cc b/components/permissions/features.cc --- a/components/permissions/features.cc +++ b/components/permissions/features.cc -@@ -137,6 +137,8 @@ BASE_FEATURE(kOsAdditionalSecurityPermissionKillSwitch, +@@ -146,6 +146,8 @@ BASE_FEATURE(kOsAdditionalSecurityPermissionKillSwitch, "OsAdditionalSecurityPermissionKillSwitch", base::FEATURE_DISABLED_BY_DEFAULT); #endif @@ -1215,7 +1249,7 @@ diff --git a/components/variations/synthetic_trials_active_group_id_provider.h b diff --git a/components/webui/flags/flags_state.cc b/components/webui/flags/flags_state.cc --- a/components/webui/flags/flags_state.cc +++ b/components/webui/flags/flags_state.cc -@@ -377,6 +377,21 @@ void FlagsState::GetSwitchesAndFeaturesFromFlags( +@@ -376,6 +376,21 @@ void FlagsState::GetSwitchesAndFeaturesFromFlags( for (const std::string& entry_name : enabled_entries) { const auto& entry_it = name_to_switch_map.find(entry_name); @@ -1234,10 +1268,10 @@ diff --git a/components/webui/flags/flags_state.cc b/components/webui/flags/flag + } + NOTREACHED(); + } - CHECK(entry_it != name_to_switch_map.end(), base::NotFatalUntil::M130); + CHECK(entry_it != name_to_switch_map.end()); const SwitchEntry& entry = entry_it->second; -@@ -705,6 +720,27 @@ void FlagsState::GetFlagFeatureEntries( +@@ -709,6 +724,27 @@ void FlagsState::GetFlagFeatureEntries( data.Set("links", std::move(links)); } @@ -1265,7 +1299,7 @@ diff --git a/components/webui/flags/flags_state.cc b/components/webui/flags/flag switch (entry.type) { case FeatureEntry::SINGLE_VALUE: case FeatureEntry::SINGLE_DISABLE_VALUE: -@@ -832,6 +868,16 @@ void FlagsState::AddSwitchesToCommandLine( +@@ -836,6 +872,16 @@ void FlagsState::AddSwitchesToCommandLine( for (const std::string& entry_name : enabled_entries) { const auto& entry_it = name_to_switch_map.find(entry_name); if (entry_it == name_to_switch_map.end()) { @@ -1282,7 +1316,7 @@ diff --git a/components/webui/flags/flags_state.cc b/components/webui/flags/flag NOTREACHED(); } -@@ -1088,6 +1134,14 @@ const FeatureEntry* FlagsState::FindFeatureEntryByName( +@@ -1092,6 +1138,14 @@ const FeatureEntry* FlagsState::FindFeatureEntryByName( bool FlagsState::IsSupportedFeature(const FlagsStorage* storage, const std::string& name, int platform_mask) const { @@ -1297,10 +1331,10 @@ diff --git a/components/webui/flags/flags_state.cc b/components/webui/flags/flag for (const auto& entry : feature_entries_) { DCHECK(entry.IsValid()); if (!(entry.supported_platforms & platform_mask)) { -@@ -1122,6 +1176,11 @@ void FlagsState::SetFlags(FlagsStorage* flags_storage, - std::string feature_internal_name = flag.substr(0, at_index); - const flags_ui::FeatureEntry* entry = +@@ -1130,6 +1184,11 @@ void FlagsState::SetFlags( FindFeatureEntryByName(feature_internal_name); + // Since this flag is currently enabled, we know for sure that we can find + // its feature entry using its internal name. + if (!entry) { + if (base::FeatureList::IsCromiteFlag(feature_internal_name)) { + continue; @@ -1401,16 +1435,16 @@ diff --git a/components/webui/flags/resources/app.ts b/components/webui/flags/re // + "Cromite", ]; - protected selectedTabIndex_: number = 0; + protected accessor selectedTabIndex_: number = 0; @@ -150,9 +151,12 @@ export class FlagsAppElement extends CrLitElement { - protected defaultFeatures: Feature[] = []; - protected nonDefaultFeatures: Feature[] = []; + protected accessor defaultFeatures: Feature[] = []; + protected accessor nonDefaultFeatures: Feature[] = []; + protected defaultCromiteFeatures: Feature[] = []; + protected nonDefaultCromiteFeatures: Feature[] = []; - protected searching: boolean = false; - protected needsRestart: boolean = false; + protected accessor searching: boolean = false; + protected accessor needsRestart: boolean = false; + private onlyCromiteFlags: boolean = false; private announceStatusDelayMs: number = 100; @@ -1594,7 +1628,7 @@ diff --git a/components/webui/version/version_handler_helper.cc b/components/web diff --git a/content/common/features.cc b/content/common/features.cc --- a/content/common/features.cc +++ b/content/common/features.cc -@@ -509,4 +509,5 @@ BASE_FEATURE(kLimitCrossOriginNonActivatedPaintHolding, +@@ -596,4 +596,5 @@ BASE_FEATURE(kDisallowRasterInterfaceWithoutSkiaBackend, // Please keep features in alphabetical order. @@ -1603,8 +1637,8 @@ diff --git a/content/common/features.cc b/content/common/features.cc diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc --- a/content/public/common/content_features.cc +++ b/content/public/common/content_features.cc -@@ -1485,4 +1485,5 @@ bool IsVideoCaptureServiceEnabledForBrowserProcess() { - VideoCaptureServiceConfiguration::kEnabledForBrowserProcess; +@@ -1521,4 +1521,5 @@ bool IsPushSubscriptionChangeEventEnabled() { + features::kPushSubscriptionChangeEventOnResubscribe); } +#include "cromite_flags/content_public_common_content_features_cc.inc" @@ -1612,9 +1646,9 @@ diff --git a/content/public/common/content_features.cc b/content/public/common/c diff --git a/content/public/common/content_features.h b/content/public/common/content_features.h --- a/content/public/common/content_features.h +++ b/content/public/common/content_features.h -@@ -350,6 +350,7 @@ CONTENT_EXPORT extern const base::FeatureParam - CONTENT_EXPORT bool IsVideoCaptureServiceEnabledForOutOfProcess(); +@@ -359,6 +359,7 @@ CONTENT_EXPORT bool IsVideoCaptureServiceEnabledForOutOfProcess(); CONTENT_EXPORT bool IsVideoCaptureServiceEnabledForBrowserProcess(); + CONTENT_EXPORT bool IsPushSubscriptionChangeEventEnabled(); +#include "cromite_flags/content_public_common_content_features_h.inc" } // namespace features @@ -1958,7 +1992,7 @@ new file mode 100755 diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc --- a/media/base/media_switches.cc +++ b/media/base/media_switches.cc -@@ -1807,5 +1807,5 @@ uint32_t GetPassthroughAudioFormats() { +@@ -1843,5 +1843,5 @@ uint32_t GetPassthroughAudioFormats() { return 0; #endif // BUILDFLAG(ENABLE_PASSTHROUGH_AUDIO_CODECS) } @@ -1968,7 +2002,7 @@ diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc diff --git a/media/base/media_switches.h b/media/base/media_switches.h --- a/media/base/media_switches.h +++ b/media/base/media_switches.h -@@ -571,5 +571,5 @@ MEDIA_EXPORT OOPVDMode GetOutOfProcessVideoDecodingMode(); +@@ -569,5 +569,5 @@ MEDIA_EXPORT bool IsOutOfProcessVideoDecodingEnabled(); MEDIA_EXPORT uint32_t GetPassthroughAudioFormats(); } // namespace media @@ -1978,8 +2012,8 @@ diff --git a/media/base/media_switches.h b/media/base/media_switches.h diff --git a/net/base/features.cc b/net/base/features.cc --- a/net/base/features.cc +++ b/net/base/features.cc -@@ -709,4 +709,5 @@ BASE_FEATURE(kSelfSignedLocalNetworkInterstitial, - "SelfSignedLocalNetworkInterstitial", +@@ -784,4 +784,5 @@ BASE_FEATURE(kRestrictAbusePortsOnLocalhost, + "RestrictAbusePortsOnLocalhost", base::FEATURE_DISABLED_BY_DEFAULT); +#include "cromite_flags/net_base_features_cc.inc" @@ -1987,9 +2021,9 @@ diff --git a/net/base/features.cc b/net/base/features.cc diff --git a/net/base/features.h b/net/base/features.h --- a/net/base/features.h +++ b/net/base/features.h -@@ -721,6 +721,7 @@ NET_EXPORT BASE_DECLARE_FEATURE(kUseCertTransparencyAwareApiForOsCertVerify); - // URLs. - NET_EXPORT BASE_DECLARE_FEATURE(kSelfSignedLocalNetworkInterstitial); +@@ -800,6 +800,7 @@ NET_EXPORT extern const base::FeatureParam + // Finch-controlled list of ports that should be blocked on localhost. + NET_EXPORT BASE_DECLARE_FEATURE(kRestrictAbusePortsOnLocalhost); +#include "cromite_flags/net_base_features_h.inc" } // namespace net::features @@ -1998,18 +2032,18 @@ diff --git a/net/base/features.h b/net/base/features.h diff --git a/services/network/public/cpp/features.cc b/services/network/public/cpp/features.cc --- a/services/network/public/cpp/features.cc +++ b/services/network/public/cpp/features.cc -@@ -544,4 +544,5 @@ BASE_FEATURE_PARAM(int, - "max_ops_before_maintenance", - 1000); +@@ -617,4 +617,5 @@ BASE_FEATURE_PARAM(size_t, + /*name=*/"max_size", + 1'000'000); +#include "cromite_flags/services_network_public_cpp_features_cc.inc" } // namespace network::features diff --git a/services/network/public/cpp/features.h b/services/network/public/cpp/features.h --- a/services/network/public/cpp/features.h +++ b/services/network/public/cpp/features.h -@@ -261,6 +261,7 @@ BASE_DECLARE_FEATURE_PARAM(int, kInterestGroupStorageMaxNegativeGroupsPerOwner); - COMPONENT_EXPORT(NETWORK_CPP) - BASE_DECLARE_FEATURE_PARAM(int, kInterestGroupStorageMaxOpsBeforeMaintenance); +@@ -340,6 +340,7 @@ BASE_DECLARE_FEATURE_PARAM(size_t, kSharedDictionaryCacheSize); + COMPONENT_EXPORT(NETWORK_CPP_FLAGS_AND_SWITCHES) + BASE_DECLARE_FEATURE_PARAM(size_t, kSharedDictionaryCacheMaxSizeBytes); +#include "cromite_flags/services_network_public_cpp_features_h.inc" } // namespace network::features @@ -2018,7 +2052,7 @@ diff --git a/services/network/public/cpp/features.h b/services/network/public/cp diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/features.cc --- a/third_party/blink/common/features.cc +++ b/third_party/blink/common/features.cc -@@ -2744,4 +2744,5 @@ bool IsLinkPreviewTriggerTypeEnabled(LinkPreviewTriggerType type) { +@@ -2912,4 +2912,5 @@ bool IsLinkPreviewTriggerTypeEnabled(LinkPreviewTriggerType type) { // // DO NOT ADD NEW FEATURES HERE. @@ -2027,7 +2061,7 @@ diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/fea diff --git a/third_party/blink/public/common/features.h b/third_party/blink/public/common/features.h --- a/third_party/blink/public/common/features.h +++ b/third_party/blink/public/common/features.h -@@ -1793,6 +1793,7 @@ BLINK_COMMON_EXPORT bool IsUpdateComplexSafaAreaConstraintsEnabled(); +@@ -1896,6 +1896,7 @@ BLINK_COMMON_EXPORT bool IsUpdateComplexSafaAreaConstraintsEnabled(); // // DO NOT ADD NEW FEATURES HERE. @@ -2038,18 +2072,18 @@ diff --git a/third_party/blink/public/common/features.h b/third_party/blink/publ diff --git a/ui/base/ui_base_features.cc b/ui/base/ui_base_features.cc --- a/ui/base/ui_base_features.cc +++ b/ui/base/ui_base_features.cc -@@ -456,4 +456,5 @@ BASE_FEATURE(kAsyncFullscreenWindowState, - "AsyncFullscreenWindowState", - base::FEATURE_DISABLED_BY_DEFAULT); +@@ -506,4 +506,5 @@ bool IsPixelCanvasRecordingEnabled() { + return base::FeatureList::IsEnabled(features::kEnablePixelCanvasRecording); + } +#include "cromite_flags/ui_base_features_cc.inc" } // namespace features diff --git a/ui/base/ui_base_features.h b/ui/base/ui_base_features.h --- a/ui/base/ui_base_features.h +++ b/ui/base/ui_base_features.h -@@ -230,6 +230,7 @@ BASE_DECLARE_FEATURE(kWriteBookmarkWithoutTitle); - COMPONENT_EXPORT(UI_BASE_FEATURES) - BASE_DECLARE_FEATURE(kAsyncFullscreenWindowState); +@@ -252,6 +252,7 @@ BASE_DECLARE_FEATURE(kEnablePixelCanvasRecording); + + bool COMPONENT_EXPORT(UI_BASE_FEATURES) IsPixelCanvasRecordingEnabled(); +#include "cromite_flags/ui_base_features_h.inc" } // namespace features diff --git a/build/cromite_patches/Add-custom-tab-intents-privacy-option.patch b/build/cromite_patches/Add-custom-tab-intents-privacy-option.patch index f531b22f..886e7f4b 100644 --- a/build/cromite_patches/Add-custom-tab-intents-privacy-option.patch +++ b/build/cromite_patches/Add-custom-tab-intents-privacy-option.patch @@ -18,20 +18,21 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../customtabs/CustomTabsConnection.java | 1 + .../IncognitoCustomTabIntentDataProvider.java | 14 ++++++ .../privacy/settings/PrivacySettings.java | 50 +++++++++++++++++++ + .../flags/android/chrome_feature_list.cc | 2 +- .../browser/flags/ChromeFeatureList.java | 3 ++ .../chrome/browser/tab/TabAssociatedApp.java | 6 ++- ...Add-custom-tab-intents-privacy-option.grdp | 25 ++++++++++ .../OriginVerifier.java | 5 ++ .../core/common/language_experiments.cc | 1 + .../add-custom-tab-intents-privacy-option.inc | 1 + - 12 files changed, 144 insertions(+), 2 deletions(-) + 13 files changed, 145 insertions(+), 3 deletions(-) create mode 100644 chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Add-custom-tab-intents-privacy-option.grdp create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/add-custom-tab-intents-privacy-option.inc diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml --- a/chrome/android/java/res/xml/privacy_preferences.xml +++ b/chrome/android/java/res/xml/privacy_preferences.xml -@@ -56,6 +56,21 @@ found in the LICENSE file. +@@ -52,6 +52,21 @@ found in the LICENSE file. android:key="cromite_flags" android:title="@string/cromite_flags_title" app:url="@string/cromite_flags_url" /> @@ -56,7 +57,7 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java b/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java --- a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java -@@ -64,6 +64,9 @@ import java.lang.annotation.Retention; +@@ -61,6 +61,9 @@ import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.Set; @@ -66,8 +67,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDis /** * Dispatches incoming intents to the appropriate activity based on the current configuration and * Intent fired. -@@ -267,6 +270,9 @@ public class LaunchIntentDispatcher { - @OptIn(markerClass = ExperimentalAuthTab.class) +@@ -263,6 +266,9 @@ public class LaunchIntentDispatcher { + */ public static boolean isCustomTabIntent(Intent intent) { if (intent == null) return false; + if (!ContextUtils.getAppSharedPreferences() @@ -76,7 +77,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDis Log.w( TAG, "CustomTabsIntent#shouldAlwaysUseBrowserUI() = " -@@ -295,6 +301,10 @@ public class LaunchIntentDispatcher { +@@ -291,6 +297,10 @@ public class LaunchIntentDispatcher { // Make sure the result of the CustomTabActivity is forwarded to the client. newIntent.addFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT); @@ -87,7 +88,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDis // Since configureIntentForResizableCustomTab() might change the componenet/class // associated with the passed intent, it needs to be called after #setClassName(context, // CustomTabActivity.class.getName()); -@@ -490,6 +500,17 @@ public class LaunchIntentDispatcher { +@@ -483,6 +493,17 @@ public class LaunchIntentDispatcher { if (Intent.ACTION_VIEW.equals(newIntent.getAction()) && !IntentHandler.wasIntentSenderChrome(newIntent)) { @@ -108,7 +109,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDis diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java --- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java -@@ -1190,7 +1190,9 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid +@@ -1257,7 +1257,9 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid public @CustomTabProfileType int getCustomTabMode() { return AlwaysIncognitoLinkInterceptor.isAlwaysIncognito() ? CustomTabProfileType.INCOGNITO @@ -122,7 +123,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabsConnection.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabsConnection.java --- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabsConnection.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabsConnection.java -@@ -981,6 +981,7 @@ public class CustomTabsConnection { +@@ -968,6 +968,7 @@ public class CustomTabsConnection { PostTask.postTask( TaskTraits.UI_DEFAULT, () -> { @@ -143,7 +144,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Inco /** * A model class that parses the incoming intent for incognito Custom Tabs specific customization * data. -@@ -118,6 +121,9 @@ public class IncognitoCustomTabIntentDataProvider extends BrowserServicesIntentD +@@ -121,6 +124,9 @@ public class IncognitoCustomTabIntentDataProvider extends BrowserServicesIntentD } private static boolean isIntentFromThirdPartyAllowed() { @@ -153,7 +154,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Inco return ChromeFeatureList.sCctIncognitoAvailableToThirdParty.isEnabled(); } -@@ -217,6 +223,10 @@ public class IncognitoCustomTabIntentDataProvider extends BrowserServicesIntentD +@@ -220,6 +226,10 @@ public class IncognitoCustomTabIntentDataProvider extends BrowserServicesIntentD } public static boolean isValidIncognitoIntent(Intent intent, boolean recordMetrics) { @@ -164,7 +165,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Inco if (!isIncognitoRequested(intent)) return false; var session = SessionHolder.getSessionHolderFromIntent(intent); if (isIntentFromThirdPartyAllowed() -@@ -330,6 +340,10 @@ public class IncognitoCustomTabIntentDataProvider extends BrowserServicesIntentD +@@ -329,6 +339,10 @@ public class IncognitoCustomTabIntentDataProvider extends BrowserServicesIntentD @Override public @CustomTabProfileType int getCustomTabMode() { @@ -178,9 +179,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Inco diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java -@@ -59,6 +59,15 @@ import org.chromium.device.DeviceFeatureList; - import org.chromium.device.DeviceFeatureMap; - import org.chromium.ui.text.SpanApplier; +@@ -80,6 +80,15 @@ import org.chromium.ui.text.SpanApplier; + import java.util.concurrent.TimeUnit; + import java.util.function.Consumer; +import android.app.role.RoleManager; +import android.content.Context; @@ -191,20 +192,20 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting +import org.chromium.base.IntentUtils; +import org.chromium.base.PackageManagerUtils; + - import androidx.annotation.Nullable; import androidx.preference.PreferenceCategory; import org.chromium.chrome.browser.contextualsearch.ContextualSearchManager; -@@ -107,6 +116,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment - private IncognitoLockSettings mIncognitoLockSettings; - private final ObservableSupplierImpl mPageTitle = new ObservableSupplierImpl<>(); + import org.chromium.base.shared_preferences.SharedPreferencesManager; +@@ -149,6 +158,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment + startTag, endTag, new ChromeClickableSpan(context, onClickCallback)); + } + private ChromeSwitchPreference allowCustomTabIntentsPref; + private ChromeSwitchPreference openExternalLinksPref; + @Override - public void onCreatePreferencesCromite(Bundle savedInstanceState, String rootKey) { + public void onCreatePreferencesCromite(@Nullable Bundle savedInstanceState, @Nullable String rootKey) { mPageTitle.set(getString(R.string.prefs_privacy_security)); -@@ -336,6 +348,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment +@@ -376,6 +388,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment new SpanApplier.SpanInfo("", "", servicesLink)); } @@ -214,7 +215,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting @Override public boolean onPreferenceChange(Preference preference, Object newValue) { String key = preference.getKey(); -@@ -356,6 +371,31 @@ public class PrivacySettings extends ChromeBaseSettingsFragment +@@ -396,6 +411,31 @@ public class PrivacySettings extends ChromeBaseSettingsFragment } else if (PREF_SEARCH_SUGGESTIONS.equals(key)) { UserPrefs.get(getProfile()) .setBoolean(Pref.SEARCH_SUGGEST_ENABLED, (boolean) newValue); @@ -246,7 +247,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting } return true; } -@@ -388,6 +428,16 @@ public class PrivacySettings extends ChromeBaseSettingsFragment +@@ -428,6 +468,16 @@ public class PrivacySettings extends ChromeBaseSettingsFragment UserPrefs.get(getProfile()).getBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED)); } @@ -263,11 +264,23 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting Preference doNotTrackPref = findPreference(PREF_DO_NOT_TRACK); if (doNotTrackPref != null) { doNotTrackPref.setSummary( +diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc +--- a/chrome/browser/flags/android/chrome_feature_list.cc ++++ b/chrome/browser/flags/android/chrome_feature_list.cc +@@ -1017,7 +1017,7 @@ BASE_FEATURE(kMagicStackAndroid, + // Enables an experimental feature which forces mayLaunchUrl to use a different + // storage partition. This may reduce performance. This should not be enabled by + // default. +-BASE_FEATURE(kMayLaunchUrlUsesSeparateStoragePartition, ++CROMITE_FEATURE(kMayLaunchUrlUsesSeparateStoragePartition, + "MayLaunchUrlUsesSeparateStoragePartition", + base::FEATURE_DISABLED_BY_DEFAULT); + diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java --- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java +++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java -@@ -767,6 +767,8 @@ public abstract class ChromeFeatureList { - public static final CachedFlag sMagicStackAndroid = newCachedFlag(MAGIC_STACK_ANDROID, true); +@@ -824,6 +824,8 @@ public abstract class ChromeFeatureList { + public static final CachedFlag sMiniOriginBar = newCachedFlag(MINI_ORIGIN_BAR, false, true); public static final CachedFlag sMostVisitedTilesCustomization = newCachedFlag(MOST_VISITED_TILES_CUSTOMIZATION, false); + public static final CachedFlag sMayLaunchurlUsesSeparateStoragePartition = @@ -275,18 +288,18 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f public static final CachedFlag sMostVisitedTilesReselect = newCachedFlag(MOST_VISITED_TILES_RESELECT, false); public static final CachedFlag sMultiInstanceApplicationStatusCleanup = -@@ -933,6 +935,7 @@ public abstract class ChromeFeatureList { - sNotificationTrampoline, +@@ -1012,6 +1014,7 @@ public abstract class ChromeFeatureList { sMagicStackAndroid, + sMiniOriginBar, sMostVisitedTilesCustomization, + sMayLaunchurlUsesSeparateStoragePartition, sMostVisitedTilesReselect, sMultiInstanceApplicationStatusCleanup, - sNavBarColorAnimation, + sMvcUpdateViewWhenModelChanged, diff --git a/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/TabAssociatedApp.java b/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/TabAssociatedApp.java --- a/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/TabAssociatedApp.java +++ b/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/TabAssociatedApp.java -@@ -87,7 +87,11 @@ public final class TabAssociatedApp extends TabWebContentsUserData implements Im +@@ -88,7 +88,11 @@ public final class TabAssociatedApp extends TabWebContentsUserData implements Im public static boolean isOpenedFromExternalApp(Tab tab) { TabAssociatedApp app = get(tab); if (app == null) return false; diff --git a/build/cromite_patches/Add-exit-menu-item.patch b/build/cromite_patches/Add-exit-menu-item.patch index 0bcee128..f8007a65 100644 --- a/build/cromite_patches/Add-exit-menu-item.patch +++ b/build/cromite_patches/Add-exit-menu-item.patch @@ -16,7 +16,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/res/menu/main_menu.xml --- a/chrome/android/java/res/menu/main_menu.xml +++ b/chrome/android/java/res/menu/main_menu.xml -@@ -175,6 +175,9 @@ found in the LICENSE file. +@@ -181,6 +181,9 @@ found in the LICENSE file. @@ -26,7 +26,7 @@ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/re -@@ -204,6 +207,9 @@ found in the LICENSE file. +@@ -213,6 +216,9 @@ found in the LICENSE file. @@ -39,28 +39,28 @@ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/re diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java -@@ -297,6 +297,8 @@ import java.util.Set; +@@ -326,6 +326,8 @@ import java.util.Map; + import java.util.Set; import java.util.concurrent.atomic.AtomicBoolean; - import java.util.function.DoubleConsumer; +import org.chromium.chrome.browser.lifetime.ApplicationLifetime; + /** * This is the main activity for ChromeMobile when not running in document mode. All the tabs are * accessible via a chrome specific tab switching UI. -@@ -3070,6 +3072,8 @@ public class ChromeTabbedActivity extends ChromeActivity implements MismatchedIn +@@ -3361,6 +3363,8 @@ public class ChromeTabbedActivity extends ChromeActivity { .closeTabs( TabClosureParams.closeTab(currentTab).build(), /* allowDialog= */ true); RecordUserAction.record("MobileTabClosed"); + } else if (id == R.id.exit_id) { + ApplicationLifetime.terminate(false); } else if (id == R.id.close_all_tabs_menu_id) { - // Close both incognito and normal tabs. - Runnable closeAllTabsRunnable = + boolean allowUndo = TabClosureParamsUtils.shouldAllowUndo(triggeringMotion); + diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java -@@ -59,6 +59,7 @@ import org.chromium.base.supplier.UnownedUserDataSupplier; +@@ -60,6 +60,7 @@ import org.chromium.base.supplier.UnownedUserDataSupplier; import org.chromium.chrome.R; import org.chromium.chrome.browser.ActivityTabProvider; import org.chromium.chrome.browser.ActivityUtils; @@ -68,7 +68,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv import org.chromium.chrome.browser.ChromeActivitySessionTracker; import org.chromium.chrome.browser.ChromeApplicationImpl; import org.chromium.chrome.browser.ChromeKeyboardVisibilityDelegate; -@@ -2375,6 +2376,11 @@ public abstract class ChromeActivity extends AsyncInitializationActivity +@@ -2419,6 +2420,11 @@ public abstract class ChromeActivity extends AsyncInitializationActivity return true; } @@ -102,7 +102,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeLife diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd -@@ -4382,6 +4382,9 @@ To change this setting, BEGIN_LINKdelete the Chrome d +@@ -4436,6 +4436,9 @@ To change this setting, BEGIN_LINKdelete the Chrome d Dark theme diff --git a/build/cromite_patches/Add-flag-for-omnibox-autocomplete-filtering.patch b/build/cromite_patches/Add-flag-for-omnibox-autocomplete-filtering.patch index 4dd75b57..11ef9097 100644 --- a/build/cromite_patches/Add-flag-for-omnibox-autocomplete-filtering.patch +++ b/build/cromite_patches/Add-flag-for-omnibox-autocomplete-filtering.patch @@ -26,7 +26,7 @@ diff --git a/components/omnibox/browser/autocomplete_controller.cc b/components/ #include "base/feature_list.h" #include "base/format_macros.h" #include "base/functional/bind.h" -@@ -536,6 +537,15 @@ AutocompleteController::AutocompleteController( +@@ -565,6 +566,15 @@ AutocompleteController::AutocompleteController( provider_client_->GetOmniboxTriggeredFeatureService()), steady_state_omnibox_position_( metrics::OmniboxEventProto::UNKNOWN_POSITION) { @@ -45,7 +45,7 @@ diff --git a/components/omnibox/browser/autocomplete_controller.cc b/components/ diff --git a/components/omnibox/browser/history_url_provider.cc b/components/omnibox/browser/history_url_provider.cc --- a/components/omnibox/browser/history_url_provider.cc +++ b/components/omnibox/browser/history_url_provider.cc -@@ -489,6 +489,9 @@ void HistoryURLProvider::Start(const AutocompleteInput& input, +@@ -488,6 +488,9 @@ void HistoryURLProvider::Start(const AutocompleteInput& input, if (fixed_up_input.type() != metrics::OmniboxInputType::QUERY) matches_.push_back(what_you_typed_match); @@ -66,7 +66,7 @@ diff --git a/components/omnibox/browser/search_provider.cc b/components/omnibox/ #include "base/functional/callback.h" #include "base/i18n/break_iterator.h" #include "base/i18n/case_conversion.h" -@@ -629,6 +630,9 @@ void SearchProvider::Run(bool query_is_private) { +@@ -628,6 +629,9 @@ void SearchProvider::Run(bool query_is_private) { } void SearchProvider::DoHistoryQuery(bool minimal_changes) { diff --git a/build/cromite_patches/Add-flag-to-disable-IPv6-probes.patch b/build/cromite_patches/Add-flag-to-disable-IPv6-probes.patch index 433eccf7..a72f0690 100644 --- a/build/cromite_patches/Add-flag-to-disable-IPv6-probes.patch +++ b/build/cromite_patches/Add-flag-to-disable-IPv6-probes.patch @@ -45,7 +45,7 @@ new file mode 100644 diff --git a/net/BUILD.gn b/net/BUILD.gn --- a/net/BUILD.gn +++ b/net/BUILD.gn -@@ -1119,6 +1119,7 @@ component("net") { +@@ -1145,6 +1145,7 @@ component("net") { ":net_deps", "//components/miracle_parameter/common", "//components/network_time/time_tracker", @@ -56,7 +56,7 @@ diff --git a/net/BUILD.gn b/net/BUILD.gn diff --git a/net/dns/host_resolver_manager.cc b/net/dns/host_resolver_manager.cc --- a/net/dns/host_resolver_manager.cc +++ b/net/dns/host_resolver_manager.cc -@@ -114,6 +114,7 @@ +@@ -115,6 +115,7 @@ #include "net/log/net_log_event_type.h" #include "net/log/net_log_source.h" #include "net/log/net_log_source_type.h" @@ -64,7 +64,7 @@ diff --git a/net/dns/host_resolver_manager.cc b/net/dns/host_resolver_manager.cc #include "net/log/net_log_with_source.h" #include "net/socket/client_socket_factory.h" #include "net/url_request/url_request_context.h" -@@ -1477,6 +1478,13 @@ int HostResolverManager::StartIPv6ReachabilityCheck( +@@ -1489,6 +1490,13 @@ int HostResolverManager::StartIPv6ReachabilityCheck( return OK; } diff --git a/build/cromite_patches/Add-flag-to-disable-external-intent-requests.patch b/build/cromite_patches/Add-flag-to-disable-external-intent-requests.patch index dbe32a8a..e6a86663 100644 --- a/build/cromite_patches/Add-flag-to-disable-external-intent-requests.patch +++ b/build/cromite_patches/Add-flag-to-disable-external-intent-requests.patch @@ -32,7 +32,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml --- a/chrome/android/java/res/xml/privacy_preferences.xml +++ b/chrome/android/java/res/xml/privacy_preferences.xml -@@ -81,7 +81,12 @@ found in the LICENSE file. +@@ -77,7 +77,12 @@ found in the LICENSE file. android:title="@string/settings_incognito_tab_lock_title" android:summary="@string/settings_incognito_tab_lock_summary_android_setting_off" android:persistent="false" /> @@ -45,11 +45,11 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi + app:needRestart="false" /> + android:title="@string/security_section_title" /> diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabDelegateFactory.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabDelegateFactory.java --- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabDelegateFactory.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabDelegateFactory.java -@@ -36,6 +36,7 @@ import org.chromium.chrome.browser.ephemeraltab.EphemeralTabCoordinator; +@@ -35,6 +35,7 @@ import org.chromium.chrome.browser.ephemeraltab.EphemeralTabCoordinator; import org.chromium.chrome.browser.externalnav.ExternalNavigationDelegateImpl; import org.chromium.chrome.browser.flags.ActivityType; import org.chromium.chrome.browser.flags.ChromeFeatureList; @@ -57,7 +57,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust import org.chromium.chrome.browser.fullscreen.BrowserControlsManager; import org.chromium.chrome.browser.fullscreen.FullscreenManager; import org.chromium.chrome.browser.init.ChromeActivityNativeDelegate; -@@ -127,6 +128,7 @@ public class CustomTabDelegateFactory implements TabDelegateFactory { +@@ -126,6 +127,7 @@ public class CustomTabDelegateFactory implements TabDelegateFactory { @Override public boolean shouldDisableAllExternalIntents() { @@ -141,17 +141,17 @@ new file mode 100644 diff --git a/components/external_intents/android/external_intents_features.cc b/components/external_intents/android/external_intents_features.cc --- a/components/external_intents/android/external_intents_features.cc +++ b/components/external_intents/android/external_intents_features.cc -@@ -27,7 +27,6 @@ namespace { - const base::Feature* const kFeaturesExposedToJava[] = { - &kExternalNavigationDebugLogs, &kBlockFrameRenavigations, - &kBlockIntentsToSelf}; +@@ -28,7 +28,6 @@ const base::Feature* const kFeaturesExposedToJava[] = { + &kExternalNavigationDebugLogs, &kBlockIntentsToSelf, + &kNavigationCaptureRefactorAndroid, &kAuxiliaryNavigationStaysInBrowser, + &kReparentTopLevelNavigationFromPWA, &kReparentAuxiliaryNavigationFromPWA}; - } // namespace // Alphabetical: -@@ -44,7 +43,13 @@ BASE_FEATURE(kBlockIntentsToSelf, - "BlockIntentsToSelf", - base::FEATURE_ENABLED_BY_DEFAULT); +@@ -57,7 +56,13 @@ BASE_FEATURE(kReparentAuxiliaryNavigationFromPWA, + "ReparentAuxiliaryNavigationFromPWA", + base::FEATURE_DISABLED_BY_DEFAULT); +CROMITE_FEATURE(kIntentBlockExternalFormRedirectsNoGesture, + "IntentBlockExternalFormRedirectsNoGesture", @@ -177,23 +177,23 @@ diff --git a/components/external_intents/android/external_intents_features.h b/c diff --git a/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalIntentsFeatures.java b/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalIntentsFeatures.java --- a/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalIntentsFeatures.java +++ b/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalIntentsFeatures.java -@@ -20,6 +20,12 @@ import org.chromium.build.annotations.NullMarked; +@@ -19,6 +19,12 @@ import org.chromium.build.annotations.NullMarked; @JNINamespace("external_intents") @NullMarked - public class ExternalIntentsFeatures extends Features { + public class ExternalIntentsFeatures { + public static final String INTENT_BLOCK_EXTERNAL_FORM_REDIRECT_NO_GESTURE_NAME = + "IntentBlockExternalFormRedirectsNoGesture"; + -+ public static final ExternalIntentsFeatures INTENT_BLOCK_EXTERNAL_FORM_REDIRECT_NO_GESTURE = -+ new ExternalIntentsFeatures(-1, INTENT_BLOCK_EXTERNAL_FORM_REDIRECT_NO_GESTURE_NAME); ++ public static final ExternalIntentsFeature INTENT_BLOCK_EXTERNAL_FORM_REDIRECT_NO_GESTURE = ++ new ExternalIntentsFeature(-1, INTENT_BLOCK_EXTERNAL_FORM_REDIRECT_NO_GESTURE_NAME); + public static final String EXTERNAL_NAVIGATION_DEBUG_LOGS_NAME = "ExternalNavigationDebugLogs"; - public static final String BLOCK_FRAME_RENAVIGATIONS_NAME = "BlockFrameRenavigations3"; public static final String BLOCK_INTENTS_TO_SELF_NAME = "BlockIntentsToSelf"; + public static final String NAVIGATION_CAPTURE_REFACTOR_ANDROID_NAME = diff --git a/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalNavigationHandler.java b/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalNavigationHandler.java --- a/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalNavigationHandler.java +++ b/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalNavigationHandler.java -@@ -1529,6 +1529,12 @@ public class ExternalNavigationHandler { +@@ -1560,6 +1560,12 @@ public class ExternalNavigationHandler { || ignoreBackForwardNav(params); } @@ -206,7 +206,7 @@ diff --git a/components/external_intents/android/java/src/org/chromium/component private OverrideUrlLoadingResult shouldOverrideUrlLoadingInternal( ExternalNavigationParams params, Intent targetIntent, -@@ -1585,6 +1591,21 @@ public class ExternalNavigationHandler { +@@ -1617,6 +1623,21 @@ public class ExternalNavigationHandler { return OverrideUrlLoadingResult.forNoOverride(); } diff --git a/build/cromite_patches/Add-flag-to-disable-vibration.patch b/build/cromite_patches/Add-flag-to-disable-vibration.patch index 35567bca..683ffdb2 100644 --- a/build/cromite_patches/Add-flag-to-disable-vibration.patch +++ b/build/cromite_patches/Add-flag-to-disable-vibration.patch @@ -104,7 +104,7 @@ diff --git a/third_party/blink/renderer/platform/exported/web_runtime_features.c diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 -@@ -869,6 +869,10 @@ +@@ -987,6 +987,10 @@ { name: "CompositingDecisionAtAnimationPhaseBoundaries" }, diff --git a/build/cromite_patches/Add-lifetime-options-for-permissions.patch b/build/cromite_patches/Add-lifetime-options-for-permissions.patch index d34bde28..6b0c81de 100644 --- a/build/cromite_patches/Add-lifetime-options-for-permissions.patch +++ b/build/cromite_patches/Add-lifetime-options-for-permissions.patch @@ -21,7 +21,7 @@ There are 4 main areas affected to introduce the functionality: novel here. Therefore, `content_settings::GetConstraintSessionExpiration()` and `content_settings::IsConstraintSessionExpiration()` manage the lifetime modes of the session content-settings. - The modificaiton also adds the session pattern to the ContentSettingPatternSource so that it is available for the UI. + The modification also adds the session pattern to the ContentSettingPatternSource so that it is available for the UI. * components/permissions Lifetime support is added to the permissions; most of the changes are caused by the fact that it is necessary to report the value selected by the user from the Java UI managed by `components/browser_ui` up to @@ -80,17 +80,17 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../permission_prompt_android.cc | 8 +- .../permission_prompt_android.h | 3 +- .../android/permissions_android_strings.grd | 17 ++++ - .../geolocation_permission_context_android.cc | 34 ++++++-- - .../geolocation_permission_context_android.h | 13 ++- + .../geolocation_permission_context_android.cc | 32 ++++++-- + .../geolocation_permission_context_android.h | 11 ++- .../embedded_permission_prompt_flow_model.cc | 2 +- - .../permissions/permission_context_base.cc | 52 ++++++++++-- - .../permissions/permission_context_base.h | 23 +++++- + .../permissions/permission_context_base.cc | 49 +++++++++-- + .../permissions/permission_context_base.h | 20 ++++- components/permissions/permission_prompt.h | 3 +- - components/permissions/permission_request.cc | 30 ++++++- - components/permissions/permission_request.h | 16 +++- + components/permissions/permission_request.cc | 32 +++++++- + components/permissions/permission_request.h | 18 +++- .../permissions/permission_request_manager.cc | 45 ++++++---- .../permissions/permission_request_manager.h | 11 ++- - 38 files changed, 493 insertions(+), 71 deletions(-) + 38 files changed, 487 insertions(+), 71 deletions(-) diff --git a/chrome/browser/permissions/last_tab_standing_tracker.cc b/chrome/browser/permissions/last_tab_standing_tracker.cc --- a/chrome/browser/permissions/last_tab_standing_tracker.cc @@ -178,7 +178,7 @@ diff --git a/chrome/browser/permissions/one_time_permissions_tracker.cc b/chrome OneTimePermissionsTracker::~OneTimePermissionsTracker() = default; OneTimePermissionsTracker::OriginTrackEntry::OriginTrackEntry() = default; -@@ -257,6 +283,11 @@ void OneTimePermissionsTracker::NotifyLastPageFromOriginClosed( +@@ -254,6 +280,11 @@ void OneTimePermissionsTracker::NotifyLastPageFromOriginClosed( for (auto& observer : observer_list_) { observer.OnLastPageFromOriginClosed(origin); } @@ -244,9 +244,9 @@ diff --git a/chrome/browser/ui/views/permissions/chip/chip_controller.cc b/chrom diff --git a/chrome/browser/ui/views/permissions/exclusive_access_permission_prompt_view.cc b/chrome/browser/ui/views/permissions/exclusive_access_permission_prompt_view.cc --- a/chrome/browser/ui/views/permissions/exclusive_access_permission_prompt_view.cc +++ b/chrome/browser/ui/views/permissions/exclusive_access_permission_prompt_view.cc -@@ -100,7 +100,7 @@ void ExclusiveAccessPermissionPromptView::RunButtonCallback(int button_id) { - } - ButtonType button = GetButtonType(button_id); +@@ -117,7 +117,7 @@ void ExclusiveAccessPermissionPromptView::RunButtonCallback(int button_id) { + request_type(), GetPermissionActionString(button), + record_browser_always_active_value()); if (button == ButtonType::kAllowThisTime) { - delegate_->AcceptThisTime(); + delegate_->AcceptThisTime(content_settings::mojom::LifetimeMode::ONLY_THIS_TIME); @@ -256,7 +256,7 @@ diff --git a/chrome/browser/ui/views/permissions/exclusive_access_permission_pro diff --git a/chrome/browser/ui/views/permissions/permission_prompt_bubble_base_view.cc b/chrome/browser/ui/views/permissions/permission_prompt_bubble_base_view.cc --- a/chrome/browser/ui/views/permissions/permission_prompt_bubble_base_view.cc +++ b/chrome/browser/ui/views/permissions/permission_prompt_bubble_base_view.cc -@@ -269,7 +269,7 @@ void PermissionPromptBubbleBaseView::RunButtonCallback(int button_id) { +@@ -297,7 +297,7 @@ void PermissionPromptBubbleBaseView::RunButtonCallback(int button_id) { delegate_->Accept(); return; case PermissionDialogButton::kAcceptOnce: @@ -264,22 +264,22 @@ diff --git a/chrome/browser/ui/views/permissions/permission_prompt_bubble_base_v + delegate_->AcceptThisTime(content_settings::mojom::LifetimeMode::ONLY_THIS_TIME); return; case PermissionDialogButton::kDeny: - delegate_->Deny(); + #if BUILDFLAG(IS_CHROMEOS) diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/PermissionInfo.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/PermissionInfo.java --- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/PermissionInfo.java +++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/PermissionInfo.java -@@ -10,6 +10,7 @@ import org.chromium.components.content_settings.ContentSettingValues; - import org.chromium.components.content_settings.ContentSettingsType; - import org.chromium.components.content_settings.SessionModel; +@@ -12,6 +12,7 @@ import org.chromium.components.content_settings.SessionModel; + import org.chromium.components.permissions.PermissionsAndroidFeatureList; + import org.chromium.components.permissions.PermissionsAndroidFeatureMap; import org.chromium.content_public.browser.BrowserContextHandle; +import org.chromium.components.content_settings.SessionModel; import java.io.Serializable; - + import java.util.Objects; diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java --- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java +++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java -@@ -603,6 +603,11 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment +@@ -618,6 +618,11 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment } @RequiresNonNull({"mSite"}) @@ -290,8 +290,8 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c + private void setUpClearDataPreference() { ClearWebsiteStorage preference = findPreference(PREF_CLEAR_DATA); - assumeNonNull(preference); -@@ -1195,6 +1200,10 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment + long usage = mSite.getTotalUsage(); +@@ -1290,6 +1295,10 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment AppCompatResources.getColorStateList(getContext(), mHighlightColor) .getDefaultColor()); } @@ -384,8 +384,8 @@ diff --git a/components/content_settings/core/browser/content_settings_utils.cc - ContentSettingsType::MEDIASTREAM_CAMERA, ContentSettingsType::HAND_TRACKING, ContentSettingsType::SMART_CARD_DATA, - }}; -@@ -256,9 +289,6 @@ const std::vector& GetTypesWithTemporaryGrantsInHcsm() { + ContentSettingsType::AR, +@@ -258,9 +291,6 @@ const std::vector& GetTypesWithTemporaryGrantsInHcsm() { ContentSettingsType::CAPTURED_SURFACE_CONTROL, #endif ContentSettingsType::KEYBOARD_LOCK, @@ -393,12 +393,12 @@ diff --git a/components/content_settings/core/browser/content_settings_utils.cc - ContentSettingsType::MEDIASTREAM_MIC, - ContentSettingsType::MEDIASTREAM_CAMERA, ContentSettingsType::HAND_TRACKING, - }}; - return *types; + ContentSettingsType::AR, + ContentSettingsType::VR, diff --git a/components/content_settings/core/browser/content_settings_utils.h b/components/content_settings/core/browser/content_settings_utils.h --- a/components/content_settings/core/browser/content_settings_utils.h +++ b/components/content_settings/core/browser/content_settings_utils.h -@@ -74,6 +74,12 @@ bool IsConstraintPersistent(const ContentSettingConstraints& constraints); +@@ -73,6 +73,12 @@ bool IsConstraintPersistent(const ContentSettingConstraints& constraints); // Returns whether the given type supports tracking last_visit timestamps. bool CanTrackLastVisit(ContentSettingsType type); @@ -433,7 +433,7 @@ diff --git a/components/content_settings/core/common/content_settings_enums.mojo diff --git a/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoController.java b/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoController.java --- a/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoController.java +++ b/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoController.java -@@ -385,9 +385,9 @@ public class PageInfoController +@@ -364,9 +364,9 @@ public class PageInfoController String name, String nameMidSentence, int type, @@ -448,7 +448,7 @@ diff --git a/components/page_info/android/java/src/org/chromium/components/page_ diff --git a/components/page_info/android/java/src/org/chromium/components/page_info/PermissionParamsListBuilder.java b/components/page_info/android/java/src/org/chromium/components/page_info/PermissionParamsListBuilder.java --- a/components/page_info/android/java/src/org/chromium/components/page_info/PermissionParamsListBuilder.java +++ b/components/page_info/android/java/src/org/chromium/components/page_info/PermissionParamsListBuilder.java -@@ -44,8 +44,9 @@ public class PermissionParamsListBuilder { +@@ -48,8 +48,9 @@ public class PermissionParamsListBuilder { } public void addPermissionEntry( @@ -460,18 +460,18 @@ diff --git a/components/page_info/android/java/src/org/chromium/components/page_ } public void clearPermissionEntries() { -@@ -86,6 +87,10 @@ public class PermissionParamsListBuilder { - permissionParams.warningTextResource = - R.string.page_info_android_permission_blocked; +@@ -85,6 +86,10 @@ public class PermissionParamsListBuilder { + } else { + warningTextResource = R.string.page_info_android_permission_blocked; } + if (permission.is_user_session) { -+ permissionParams.warningTextResource = ++ warningTextResource = + R.string.page_info_android_permission_session_permission; + } } - } - -@@ -127,13 +132,15 @@ public class PermissionParamsListBuilder { + } else { + assert permission.setting == ContentSettingValues.ASK +@@ -121,13 +126,15 @@ public class PermissionParamsListBuilder { public final String nameMidSentence; public final int type; public final @ContentSettingValues int setting; @@ -532,7 +532,7 @@ diff --git a/components/page_info/android/page_info_controller_android.cc b/comp diff --git a/components/page_info/page_info.cc b/components/page_info/page_info.cc --- a/components/page_info/page_info.cc +++ b/components/page_info/page_info.cc -@@ -1197,6 +1197,8 @@ void PageInfo::PopulatePermissionInfo(PermissionInfo& permission_info, +@@ -1234,6 +1234,8 @@ void PageInfo::PopulatePermissionInfo(PermissionInfo& permission_info, permission_info.is_one_time = (info.metadata.session_model() == content_settings::mojom::SessionModel::ONE_TIME); @@ -555,15 +555,15 @@ diff --git a/components/page_info/page_info.h b/components/page_info/page_info.h diff --git a/components/permissions/android/java/src/org/chromium/components/permissions/PermissionDialogDelegate.java b/components/permissions/android/java/src/org/chromium/components/permissions/PermissionDialogDelegate.java --- a/components/permissions/android/java/src/org/chromium/components/permissions/PermissionDialogDelegate.java +++ b/components/permissions/android/java/src/org/chromium/components/permissions/PermissionDialogDelegate.java -@@ -15,6 +15,7 @@ import org.jni_zero.NativeMethods; - import org.chromium.build.annotations.NullMarked; +@@ -16,6 +16,7 @@ import org.chromium.build.annotations.NullMarked; import org.chromium.build.annotations.Nullable; + import org.chromium.components.content_settings.ContentSettingsType; import org.chromium.ui.base.WindowAndroid; +import org.chromium.components.content_settings.LifetimeMode; import java.util.ArrayList; - import java.util.List; -@@ -66,6 +67,9 @@ public class PermissionDialogDelegate { + import java.util.Arrays; +@@ -72,6 +73,9 @@ public class PermissionDialogDelegate { // Prompt(screen) variant we want to display on the dialog. private @EmbeddedPromptVariant int mEmbeddedPromptVariant; @@ -573,7 +573,7 @@ diff --git a/components/permissions/android/java/src/org/chromium/components/per /** * Defines a (potentially empty) list of ranges represented as pairs of , * which shall be used by the UI to format the specified ranges as bold text. -@@ -135,6 +139,15 @@ public class PermissionDialogDelegate { +@@ -145,6 +149,15 @@ public class PermissionDialogDelegate { .acceptThisTime(mNativeDelegatePtr, PermissionDialogDelegate.this); } @@ -691,7 +691,7 @@ diff --git a/components/permissions/android/java/src/org/chromium/components/per diff --git a/components/permissions/android/permission_prompt/embedded_permission_prompt_android.cc b/components/permissions/android/permission_prompt/embedded_permission_prompt_android.cc --- a/components/permissions/android/permission_prompt/embedded_permission_prompt_android.cc +++ b/components/permissions/android/permission_prompt/embedded_permission_prompt_android.cc -@@ -109,7 +109,8 @@ void EmbeddedPermissionPromptAndroid::Acknowledge() { +@@ -119,7 +119,8 @@ void EmbeddedPermissionPromptAndroid::Acknowledge() { delegate()->FinalizeCurrentRequests(); } @@ -704,7 +704,7 @@ diff --git a/components/permissions/android/permission_prompt/embedded_permissio diff --git a/components/permissions/android/permission_prompt/embedded_permission_prompt_android.h b/components/permissions/android/permission_prompt/embedded_permission_prompt_android.h --- a/components/permissions/android/permission_prompt/embedded_permission_prompt_android.h +++ b/components/permissions/android/permission_prompt/embedded_permission_prompt_android.h -@@ -44,7 +44,7 @@ class EmbeddedPermissionPromptAndroid : public PermissionPromptAndroid { +@@ -45,7 +45,7 @@ class EmbeddedPermissionPromptAndroid : public PermissionPromptAndroid { const override; void Closing() override; void Accept() override; @@ -782,7 +782,7 @@ diff --git a/components/permissions/android/permission_prompt/permission_dialog_ diff --git a/components/permissions/android/permission_prompt/permission_prompt_android.cc b/components/permissions/android/permission_prompt/permission_prompt_android.cc --- a/components/permissions/android/permission_prompt/permission_prompt_android.cc +++ b/components/permissions/android/permission_prompt/permission_prompt_android.cc -@@ -76,8 +76,12 @@ void PermissionPromptAndroid::Accept() { +@@ -83,8 +83,12 @@ void PermissionPromptAndroid::Accept() { delegate_->Accept(); } @@ -800,7 +800,7 @@ diff --git a/components/permissions/android/permission_prompt/permission_prompt_ diff --git a/components/permissions/android/permission_prompt/permission_prompt_android.h b/components/permissions/android/permission_prompt/permission_prompt_android.h --- a/components/permissions/android/permission_prompt/permission_prompt_android.h +++ b/components/permissions/android/permission_prompt/permission_prompt_android.h -@@ -54,9 +54,10 @@ class PermissionPromptAndroid : public PermissionPrompt { +@@ -55,9 +55,10 @@ class PermissionPromptAndroid : public PermissionPrompt { const; virtual void Closing(); virtual void Accept(); @@ -821,7 +821,7 @@ diff --git a/components/permissions/android/permissions_android_strings.grd b/co + + -+ Remeber my decision ++ Remember my decision + + + Only this time @@ -842,30 +842,28 @@ diff --git a/components/permissions/android/permissions_android_strings.grd b/co diff --git a/components/permissions/contexts/geolocation_permission_context_android.cc b/components/permissions/contexts/geolocation_permission_context_android.cc --- a/components/permissions/contexts/geolocation_permission_context_android.cc +++ b/components/permissions/contexts/geolocation_permission_context_android.cc -@@ -168,7 +168,20 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet( +@@ -193,7 +193,18 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet( bool is_one_time, bool is_final_decision) { DCHECK(is_final_decision); -+ NotifyPermissionSetWithLifetime(id, requesting_origin, embedding_origin, ++ NotifyPermissionSetWithLifetime(request_data, + std::move(callback), persist, content_setting, is_one_time, is_final_decision, + content_settings::mojom::LifetimeMode::ALWAYS); +} +void GeolocationPermissionContextAndroid::NotifyPermissionSetWithLifetime( -+ const PermissionRequestID& id, -+ const GURL& requesting_origin, -+ const GURL& embedding_origin, ++ const PermissionRequestData& request_data, + BrowserPermissionCallback callback, + bool persist, + ContentSetting content_setting, + bool is_one_time, bool is_final_decision, + content_settings::mojom::LifetimeMode lifetime_option) { - bool is_default_search = IsRequestingOriginDSE(requesting_origin); + bool is_default_search = + IsRequestingOriginDSE(request_data.requesting_origin); if (content_setting == CONTENT_SETTING_ALLOW && - !location_settings_->IsSystemLocationSettingEnabled()) { -@@ -181,7 +194,8 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet( - if (IsInLocationSettingsBackOff(is_default_search)) { - FinishNotifyPermissionSet(id, requesting_origin, embedding_origin, +@@ -208,7 +219,8 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet( + FinishNotifyPermissionSet(request_data.id, request_data.requesting_origin, + request_data.embedding_origin, std::move(callback), false /* persist */, - CONTENT_SETTING_BLOCK, is_one_time); + CONTENT_SETTING_BLOCK, @@ -873,9 +871,9 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr return; } -@@ -199,7 +213,8 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet( - !location_settings_dialog_callback_.is_null()) { - FinishNotifyPermissionSet(id, requesting_origin, embedding_origin, +@@ -228,7 +240,8 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet( + FinishNotifyPermissionSet(request_data.id, request_data.requesting_origin, + request_data.embedding_origin, std::move(callback), false /* persist */, - CONTENT_SETTING_BLOCK, is_one_time); + CONTENT_SETTING_BLOCK, @@ -883,23 +881,23 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr return; } -@@ -211,13 +226,13 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet( - base::BindOnce( +@@ -241,13 +254,13 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet( &GeolocationPermissionContextAndroid::OnLocationSettingsDialogShown, - weak_factory_.GetWeakPtr(), requesting_origin, embedding_origin, -- persist, content_setting, is_one_time)); -+ persist, content_setting, is_one_time, lifetime_option)); + weak_factory_.GetWeakPtr(), request_data.requesting_origin, + request_data.embedding_origin, persist, content_setting, +- is_one_time)); ++ is_one_time, lifetime_option)); return; } - FinishNotifyPermissionSet(id, requesting_origin, embedding_origin, - std::move(callback), persist, content_setting, -- is_one_time); -+ is_one_time, lifetime_option); + FinishNotifyPermissionSet(request_data.id, request_data.requesting_origin, + request_data.embedding_origin, std::move(callback), +- persist, content_setting, is_one_time); ++ persist, content_setting, is_one_time, lifetime_option); } content::PermissionResult -@@ -390,7 +405,7 @@ void GeolocationPermissionContextAndroid::OnLocationSettingsDialogShown( +@@ -425,7 +438,7 @@ void GeolocationPermissionContextAndroid::OnLocationSettingsDialogShown( const GURL& embedding_origin, bool persist, ContentSetting content_setting, @@ -908,7 +906,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr LocationSettingsDialogOutcome prompt_outcome) { bool is_default_search = IsRequestingOriginDSE(requesting_origin); if (prompt_outcome == GRANTED) { -@@ -409,7 +424,8 @@ void GeolocationPermissionContextAndroid::OnLocationSettingsDialogShown( +@@ -444,7 +457,8 @@ void GeolocationPermissionContextAndroid::OnLocationSettingsDialogShown( FinishNotifyPermissionSet(location_settings_dialog_request_id_, requesting_origin, embedding_origin, std::move(location_settings_dialog_callback_), @@ -918,7 +916,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr location_settings_dialog_request_id_ = PermissionRequestID(content::GlobalRenderFrameHostId(0, 0), -@@ -423,10 +439,10 @@ void GeolocationPermissionContextAndroid::FinishNotifyPermissionSet( +@@ -458,8 +472,8 @@ void GeolocationPermissionContextAndroid::FinishNotifyPermissionSet( BrowserPermissionCallback callback, bool persist, ContentSetting content_setting, @@ -926,22 +924,26 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr - GeolocationPermissionContext::NotifyPermissionSet( + bool is_one_time, content_settings::mojom::LifetimeMode lifetime_option) { + GeolocationPermissionContext::NotifyPermissionSetWithLifetime( - id, requesting_origin, embedding_origin, std::move(callback), persist, -- content_setting, is_one_time, /*is_final_decision=*/true); -+ content_setting, is_one_time, /*is_final_decision=*/true, lifetime_option); + PermissionRequestData(this, id, + content::PermissionRequestDescription( + content::PermissionDescriptorUtil:: +@@ -467,7 +481,7 @@ void GeolocationPermissionContextAndroid::FinishNotifyPermissionSet( + blink::PermissionType::GEOLOCATION)), + requesting_origin), + std::move(callback), persist, content_setting, is_one_time, +- /*is_final_decision=*/true); ++ /*is_final_decision=*/true, lifetime_option); } void GeolocationPermissionContextAndroid::SetLocationSettingsForTesting( diff --git a/components/permissions/contexts/geolocation_permission_context_android.h b/components/permissions/contexts/geolocation_permission_context_android.h --- a/components/permissions/contexts/geolocation_permission_context_android.h +++ b/components/permissions/contexts/geolocation_permission_context_android.h -@@ -89,6 +89,15 @@ class GeolocationPermissionContextAndroid +@@ -93,6 +93,13 @@ class GeolocationPermissionContextAndroid ContentSetting content_setting, bool is_one_time, bool is_final_decision) override; -+ void NotifyPermissionSetWithLifetime(const PermissionRequestID& id, -+ const GURL& requesting_origin, -+ const GURL& embedding_origin, ++ void NotifyPermissionSetWithLifetime(const PermissionRequestData& request_data, + BrowserPermissionCallback callback, + bool persist, + ContentSetting content_setting, @@ -951,7 +953,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr content::PermissionResult UpdatePermissionStatusWithDeviceStatus( content::WebContents* web_contents, content::PermissionResult result, -@@ -134,6 +143,7 @@ class GeolocationPermissionContextAndroid +@@ -138,6 +145,7 @@ class GeolocationPermissionContextAndroid bool persist, ContentSetting content_setting, bool is_one_time, @@ -959,7 +961,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr LocationSettingsDialogOutcome prompt_outcome); void FinishNotifyPermissionSet(const PermissionRequestID& id, -@@ -142,7 +152,8 @@ class GeolocationPermissionContextAndroid +@@ -146,7 +154,8 @@ class GeolocationPermissionContextAndroid BrowserPermissionCallback callback, bool persist, ContentSetting content_setting, @@ -984,67 +986,64 @@ diff --git a/components/permissions/embedded_permission_prompt_flow_model.cc b/c diff --git a/components/permissions/permission_context_base.cc b/components/permissions/permission_context_base.cc --- a/components/permissions/permission_context_base.cc +++ b/components/permissions/permission_context_base.cc -@@ -267,6 +267,17 @@ const PermissionRequest* PermissionContextBase::FindPermissionRequest( - return request->second.first.get(); +@@ -253,6 +253,17 @@ PermissionContextBase::CreatePermissionRequest( + std::move(request_finished_callback), UsesAutomaticEmbargo()); } +std::unique_ptr +PermissionContextBase::CreatePermissionRequest( + content::WebContents* web_contents, -+ PermissionRequestData request_data, ++ std::unique_ptr request_data, + PermissionRequest::PermissionDecidedCallbackWithLifetime permission_decided_callback, -+ base::OnceClosure delete_callback) const { ++ base::OnceClosure request_finished_callback) const { + return std::make_unique( + std::move(request_data), std::move(permission_decided_callback), -+ std::move(delete_callback)); ++ std::move(request_finished_callback), UsesAutomaticEmbargo()); +} + - content::PermissionResult PermissionContextBase::GetPermissionStatus( - content::RenderFrameHost* render_frame_host, - const GURL& requesting_origin, -@@ -526,7 +537,8 @@ void PermissionContextBase::PermissionDecided(const PermissionRequestID& id, - const GURL& embedding_origin, - ContentSetting content_setting, - bool is_one_time, -- bool is_final_decision) { -+ bool is_final_decision, -+ content_settings::mojom::LifetimeMode lifetime_option) { + bool PermissionContextBase::UsesAutomaticEmbargo() const { + return true; + } +@@ -540,7 +551,8 @@ void PermissionContextBase::PermissionDecided( + ContentSetting content_setting, + bool is_one_time, + bool is_final_decision, +- const PermissionRequestData& request_data) { ++ const PermissionRequestData& request_data, ++ content_settings::mojom::LifetimeMode lifetime_option) { DCHECK(content_setting == CONTENT_SETTING_ALLOW || content_setting == CONTENT_SETTING_BLOCK || content_setting == CONTENT_SETTING_DEFAULT); -@@ -541,13 +553,14 @@ void PermissionContextBase::PermissionDecided(const PermissionRequestID& id, +@@ -556,12 +568,13 @@ void PermissionContextBase::PermissionDecided( // missing if a permission prompt was preignored and we already notified an // origin about it. if (request->second.second) { -- NotifyPermissionSet(id, requesting_origin, embedding_origin, -+ NotifyPermissionSetWithLifetime(id, requesting_origin, embedding_origin, - std::move(request->second.second), persist, -- content_setting, is_one_time, is_final_decision); -+ content_setting, is_one_time, is_final_decision, +- NotifyPermissionSet(request_data, std::move(request->second.second), ++ NotifyPermissionSetWithLifetime(request_data, std::move(request->second.second), + persist, content_setting, is_one_time, +- is_final_decision); ++ is_final_decision, + lifetime_option); } else { -- NotifyPermissionSet(id, requesting_origin, embedding_origin, -+ NotifyPermissionSetWithLifetime(id, requesting_origin, embedding_origin, - base::DoNothing(), persist, content_setting, -- is_one_time, is_final_decision); -+ is_one_time, is_final_decision, lifetime_option); +- NotifyPermissionSet(request_data, base::DoNothing(), persist, +- content_setting, is_one_time, is_final_decision); ++ NotifyPermissionSetWithLifetime(request_data, base::DoNothing(), persist, ++ content_setting, is_one_time, is_final_decision, lifetime_option); } } -@@ -628,11 +641,27 @@ void PermissionContextBase::NotifyPermissionSet( +@@ -652,10 +665,24 @@ void PermissionContextBase::NotifyPermissionSet( ContentSetting content_setting, bool is_one_time, bool is_final_decision) { + DCHECK(is_one_time == false); -+ NotifyPermissionSetWithLifetime(id, requesting_origin, embedding_origin, std::move(callback), ++ NotifyPermissionSetWithLifetime(request_data, std::move(callback), + persist, content_setting, is_one_time, is_final_decision, + content_settings::mojom::LifetimeMode::ALWAYS); +} + +void PermissionContextBase::NotifyPermissionSetWithLifetime( -+ const PermissionRequestID& id, -+ const GURL& requesting_origin, -+ const GURL& embedding_origin, ++ const PermissionRequestData& request_data, + BrowserPermissionCallback callback, + bool persist, + ContentSetting content_setting, @@ -1054,29 +1053,27 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm DCHECK_CURRENTLY_ON(content::BrowserThread::UI); if (persist) { - UpdateContentSetting(requesting_origin, embedding_origin, content_setting, -- is_one_time); -+ is_one_time, lifetime_option); +- UpdateContentSetting(request_data, content_setting, is_one_time); ++ UpdateContentSetting(request_data, content_setting, is_one_time, lifetime_option); } if (is_final_decision) { -@@ -673,6 +702,15 @@ void PermissionContextBase::UpdateContentSetting(const GURL& requesting_origin, - const GURL& embedding_origin, - ContentSetting content_setting, - bool is_one_time) { -+ UpdateContentSetting(requesting_origin, embedding_origin, content_setting, +@@ -696,6 +723,14 @@ void PermissionContextBase::UpdateContentSetting( + const PermissionRequestData& request_data, + ContentSetting content_setting, + bool is_one_time) { ++ UpdateContentSetting(request_data, content_setting, + is_one_time, content_settings::mojom::LifetimeMode::ALWAYS); +} + -+void PermissionContextBase::UpdateContentSetting(const GURL& requesting_origin, -+ const GURL& embedding_origin, ++void PermissionContextBase::UpdateContentSetting(const PermissionRequestData& request_data, + ContentSetting content_setting, + bool is_one_time, + content_settings::mojom::LifetimeMode lifetime_option) { - DCHECK_EQ(requesting_origin, requesting_origin.DeprecatedGetOriginAsURL()); - DCHECK_EQ(embedding_origin, embedding_origin.DeprecatedGetOriginAsURL()); - DCHECK(content_setting == CONTENT_SETTING_ALLOW || -@@ -682,6 +720,8 @@ void PermissionContextBase::UpdateContentSetting(const GURL& requesting_origin, + DCHECK_EQ(request_data.requesting_origin, + request_data.requesting_origin.DeprecatedGetOriginAsURL()); + DCHECK_EQ(request_data.embedding_origin, +@@ -707,6 +742,8 @@ void PermissionContextBase::UpdateContentSetting( constraints.set_session_model( is_one_time ? content_settings::mojom::SessionModel::ONE_TIME : content_settings::mojom::SessionModel::DURABLE); @@ -1088,53 +1085,50 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm diff --git a/components/permissions/permission_context_base.h b/components/permissions/permission_context_base.h --- a/components/permissions/permission_context_base.h +++ b/components/permissions/permission_context_base.h -@@ -166,6 +166,15 @@ class PermissionContextBase : public content_settings::Observer { +@@ -188,6 +188,13 @@ class PermissionContextBase : public content_settings::Observer { // Updates stored content setting if persist is set, updates tab indicators // and runs the callback to finish the request. -+ virtual void NotifyPermissionSetWithLifetime(const PermissionRequestID& id, -+ const GURL& requesting_origin, -+ const GURL& embedding_origin, -+ BrowserPermissionCallback callback, -+ bool persist, -+ ContentSetting content_setting, -+ bool is_one_time, -+ bool is_final_decision, -+ content_settings::mojom::LifetimeMode lifetime_option); - virtual void NotifyPermissionSet(const PermissionRequestID& id, - const GURL& requesting_origin, - const GURL& embedding_origin, -@@ -187,6 +196,11 @@ class PermissionContextBase : public content_settings::Observer { ++ virtual void NotifyPermissionSetWithLifetime(const PermissionRequestData& request_data, ++ BrowserPermissionCallback callback, ++ bool persist, ++ ContentSetting content_setting, ++ bool is_one_time, ++ bool is_final_decision, ++ content_settings::mojom::LifetimeMode lifetime_option); + virtual void NotifyPermissionSet(const PermissionRequestData& request_data, + BrowserPermissionCallback callback, + bool persist, +@@ -207,6 +214,10 @@ class PermissionContextBase : public content_settings::Observer { // Store the decided permission as a content setting. // virtual since the permission might be stored with different restrictions // (for example for desktop notifications). -+ void UpdateContentSetting(const GURL& requesting_origin, -+ const GURL& embedding_origin, -+ ContentSetting content_setting, -+ bool is_one_time, -+ content_settings::mojom::LifetimeMode lifetime_option); - virtual void UpdateContentSetting(const GURL& requesting_origin, - const GURL& embedding_origin, ++ void UpdateContentSetting(const PermissionRequestData& request_data, ++ ContentSetting content_setting, ++ bool is_one_time, ++ content_settings::mojom::LifetimeMode lifetime_option); + virtual void UpdateContentSetting(const PermissionRequestData& request_data, ContentSetting content_setting, -@@ -217,6 +231,12 @@ class PermissionContextBase : public content_settings::Observer { + bool is_one_time); +@@ -236,6 +247,12 @@ class PermissionContextBase : public content_settings::Observer { PermissionRequest::PermissionDecidedCallback permission_decided_callback, - base::OnceClosure delete_callback) const; + base::OnceClosure request_finished_callback) const; + virtual std::unique_ptr CreatePermissionRequest( + content::WebContents* web_contents, -+ PermissionRequestData request_data, ++ std::unique_ptr request_data, + PermissionRequest::PermissionDecidedCallbackWithLifetime permission_decided_callback, -+ base::OnceClosure delete_callback) const; ++ base::OnceClosure request_finished_callback) const; + // Implementors can override this method to avoid using automatic embargo. virtual bool UsesAutomaticEmbargo() const; -@@ -249,7 +269,8 @@ class PermissionContextBase : public content_settings::Observer { - const GURL& embedding_origin, - ContentSetting content_setting, +@@ -270,7 +287,8 @@ class PermissionContextBase : public content_settings::Observer { + void PermissionDecided(ContentSetting content_setting, bool is_one_time, -- bool is_final_decision); -+ bool is_final_decision, + bool is_final_decision, +- const PermissionRequestData& request_data); ++ const PermissionRequestData& request_data, + content_settings::mojom::LifetimeMode lifetime_option); void NotifyObservers(const ContentSettingsPattern& primary_pattern, @@ -1156,22 +1150,24 @@ diff --git a/components/permissions/permission_prompt.h b/components/permissions diff --git a/components/permissions/permission_request.cc b/components/permissions/permission_request.cc --- a/components/permissions/permission_request.cc +++ b/components/permissions/permission_request.cc -@@ -43,6 +43,14 @@ PermissionRequest::PermissionRequest( - delete_callback_(std::move(delete_callback)), +@@ -32,6 +32,16 @@ PermissionRequest::PermissionRequest( + request_finished_callback_(std::move(request_finished_callback)), uses_automatic_embargo_(uses_automatic_embargo) {} +PermissionRequest::PermissionRequest( -+ PermissionRequestData request_data, ++ std::unique_ptr request_data, + PermissionDecidedCallbackWithLifetime permission_decided_callback, -+ base::OnceClosure delete_callback) ++ base::OnceClosure request_finished_callback, ++ bool uses_automatic_embargo) + : data_(std::move(request_data)), + permission_decided_callback_withlifetime_(std::move(permission_decided_callback)), -+ delete_callback_(std::move(delete_callback)) {} ++ request_finished_callback_(std::move(request_finished_callback)), ++ uses_automatic_embargo_(uses_automatic_embargo) {} + PermissionRequest::~PermissionRequest() { - DCHECK(delete_callback_.is_null()); + std::move(request_finished_callback_).Run(); } -@@ -404,19 +412,37 @@ bool PermissionRequest::ShouldUseTwoOriginPrompt() const { +@@ -412,19 +422,37 @@ bool PermissionRequest::ShouldUseTwoOriginPrompt() const { return request_type() == RequestType::kStorageAccess; } @@ -1180,12 +1176,12 @@ diff --git a/components/permissions/permission_request.cc b/components/permissio + content_settings::mojom::LifetimeMode lifetime_option) { + if (permission_decided_callback_withlifetime_) { + std::move(permission_decided_callback_withlifetime_) -+ .Run(CONTENT_SETTING_ALLOW, is_one_time, /*is_final_decision=*/true, lifetime_option); ++ .Run(CONTENT_SETTING_ALLOW, is_one_time, /*is_final_decision=*/true, *data_, lifetime_option); + return; + } std::move(permission_decided_callback_) .Run(CONTENT_SETTING_ALLOW, is_one_time, - /*is_final_decision=*/true); + /*is_final_decision=*/true, /*request_data=*/*data_); } -void PermissionRequest::PermissionDenied() { @@ -1193,51 +1189,53 @@ diff --git a/components/permissions/permission_request.cc b/components/permissio + content_settings::mojom::LifetimeMode lifetime_option) { + if (permission_decided_callback_withlifetime_) { + std::move(permission_decided_callback_withlifetime_) -+ .Run(CONTENT_SETTING_BLOCK, is_one_time, /*is_final_decision=*/true, lifetime_option); ++ .Run(CONTENT_SETTING_BLOCK, is_one_time, /*is_final_decision=*/true, *data_, lifetime_option); + return; + } std::move(permission_decided_callback_) .Run(CONTENT_SETTING_BLOCK, /*is_one_time=*/false, - /*is_final_decision=*/true); + /*is_final_decision=*/true, /*request_data=*/*data_); } void PermissionRequest::Cancelled(bool is_final_decision) { + if (permission_decided_callback_withlifetime_) { + std::move(permission_decided_callback_withlifetime_) -+ .Run(CONTENT_SETTING_DEFAULT, false, is_final_decision, ++ .Run(CONTENT_SETTING_DEFAULT, false, is_final_decision, *data_, + content_settings::mojom::LifetimeMode::ALWAYS); + return; + } if (permission_decided_callback_) { permission_decided_callback_.Run(CONTENT_SETTING_DEFAULT, - /*is_one_time=*/false, is_final_decision); + /*is_one_time=*/false, is_final_decision, diff --git a/components/permissions/permission_request.h b/components/permissions/permission_request.h --- a/components/permissions/permission_request.h +++ b/components/permissions/permission_request.h -@@ -43,6 +43,11 @@ class PermissionRequest { - bool /*is_one_time*/, - bool /*is_final_decision*/)>; - -+ using PermissionDecidedCallbackWithLifetime = -+ base::OnceCallback; +@@ -47,6 +47,12 @@ class PermissionRequest { + bool /*is_final_decision*/, + const PermissionRequestData& /*request_data*/)>; + ++ using PermissionDecidedCallbackWithLifetime = base::RepeatingCallback; + // `permission_decided_callback` is called when the permission request is // resolved by the user (see comment on PermissionDecidedCallback above). - // `delete_callback` is called when the permission request is no longer needed -@@ -63,6 +68,10 @@ class PermissionRequest { - base::OnceClosure delete_callback, - bool uses_automatic_embargo); + // `request_finished_callback` is called when the permission request is being +@@ -61,6 +67,11 @@ class PermissionRequest { + base::OnceClosure request_finished_callback = base::DoNothing(), + bool uses_automatic_embargo = true); -+ PermissionRequest(PermissionRequestData request_data, ++ PermissionRequest(std::unique_ptr request_data, + PermissionDecidedCallbackWithLifetime permission_decided_callback, -+ base::OnceClosure delete_callback); ++ base::OnceClosure request_finished_callback = base::DoNothing(), ++ bool uses_automatic_embargo = true); + PermissionRequest(const PermissionRequest&) = delete; PermissionRequest& operator=(const PermissionRequest&) = delete; -@@ -162,10 +171,10 @@ class PermissionRequest { +@@ -167,10 +178,10 @@ class PermissionRequest { // If |is_one_time| is true the permission will last until all tabs of // |origin| are closed or navigated away from, and then the permission will // automatically expire after 1 day. @@ -1250,67 +1248,67 @@ diff --git a/components/permissions/permission_request.h b/components/permission // Called when the user has cancelled the permission request. This // corresponds to a denial, but is segregated in case the context needs to -@@ -221,6 +230,9 @@ class PermissionRequest { +@@ -224,6 +235,9 @@ class PermissionRequest { // Called once a decision is made about the permission. PermissionDecidedCallback permission_decided_callback_; + // Called once a decision is made about the permission (with lifetime option). + PermissionDecidedCallbackWithLifetime permission_decided_callback_withlifetime_; + - // Called when the request is no longer in use so it can be deleted by the - // caller. - base::OnceClosure delete_callback_; + // Called when the request is finished to perform bookkeeping tasks. + base::OnceClosure request_finished_callback_; + diff --git a/components/permissions/permission_request_manager.cc b/components/permissions/permission_request_manager.cc --- a/components/permissions/permission_request_manager.cc +++ b/components/permissions/permission_request_manager.cc -@@ -171,7 +171,7 @@ void PermissionRequestManager::AddRequest( +@@ -189,7 +189,7 @@ void PermissionRequestManager::AddRequest( if (base::CommandLine::ForCurrentProcess()->HasSwitch( switches::kDenyPermissionPrompts)) { - request->PermissionDenied(); + request->PermissionDenied(/*is_one_time*/false, content_settings::mojom::LifetimeMode::ALWAYS); - request->RequestFinished(); return; } -@@ -246,7 +246,7 @@ void PermissionRequestManager::AddRequest( + +@@ -258,7 +258,7 @@ void PermissionRequestManager::AddRequest( if (should_auto_approve_request) { if (should_auto_approve_request == PermissionAction::GRANTED) { - request->PermissionGranted(/*is_one_time=*/true); + request->PermissionGranted(/*is_one_time=*/true, content_settings::mojom::LifetimeMode::UNTIL_ORIGIN_CLOSED); } - request->RequestFinished(); return; -@@ -609,7 +609,8 @@ void PermissionRequestManager::Accept() { + } +@@ -623,7 +623,8 @@ void PermissionRequestManager::Accept() { (*requests_iter)->request_type(), PermissionAction::GRANTED); - PermissionGrantedIncludingDuplicates(*requests_iter, + PermissionGrantedIncludingDuplicates(requests_iter->get(), - /*is_one_time=*/false); + /*is_one_time=*/false, + content_settings::mojom::LifetimeMode::ALWAYS); #if !BUILDFLAG(IS_ANDROID) std::optional content_settings_type = -@@ -627,7 +628,7 @@ void PermissionRequestManager::Accept() { +@@ -641,7 +642,7 @@ void PermissionRequestManager::Accept() { CurrentRequestsDecided(PermissionAction::GRANTED); } -void PermissionRequestManager::AcceptThisTime() { +void PermissionRequestManager::AcceptThisTime(content_settings::mojom::LifetimeMode mode) { - if (ignore_callbacks_from_prompt_) + if (ignore_callbacks_from_prompt_) { return; - DCHECK(view_); -@@ -640,7 +641,8 @@ void PermissionRequestManager::AcceptThisTime() { + } +@@ -655,7 +656,8 @@ void PermissionRequestManager::AcceptThisTime() { (*requests_iter)->request_type(), PermissionAction::GRANTED_ONCE); - PermissionGrantedIncludingDuplicates(*requests_iter, + PermissionGrantedIncludingDuplicates(requests_iter->get(), - /*is_one_time=*/true); + /*is_one_time=*/true, + mode); } NotifyRequestDecided(PermissionAction::GRANTED_ONCE); -@@ -648,6 +650,15 @@ void PermissionRequestManager::AcceptThisTime() { +@@ -663,6 +665,15 @@ void PermissionRequestManager::AcceptThisTime() { } void PermissionRequestManager::Deny() { @@ -1323,26 +1321,26 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p + +void PermissionRequestManager::Deny_(bool is_one_time, + content_settings::mojom::LifetimeMode lifetime_option) { - if (ignore_callbacks_from_prompt_) + if (ignore_callbacks_from_prompt_) { return; - DCHECK(view_); -@@ -670,7 +681,7 @@ void PermissionRequestManager::Deny() { + } +@@ -685,7 +696,7 @@ void PermissionRequestManager::Deny() { StorePermissionActionForUMA((*requests_iter)->requesting_origin(), (*requests_iter)->request_type(), PermissionAction::DENIED); -- PermissionDeniedIncludingDuplicates(*requests_iter); -+ PermissionDeniedIncludingDuplicates(*requests_iter, is_one_time, lifetime_option); +- PermissionDeniedIncludingDuplicates(requests_iter->get()); ++ PermissionDeniedIncludingDuplicates(requests_iter->get(), is_one_time, lifetime_option); } NotifyRequestDecided(PermissionAction::DENIED); -@@ -1267,32 +1278,32 @@ PermissionRequestManager::VisitDuplicateRequests( +@@ -1300,32 +1311,32 @@ PermissionRequestManager::VisitDuplicateRequests( void PermissionRequestManager::PermissionGrantedIncludingDuplicates( PermissionRequest* request, - bool is_one_time) { + bool is_one_time, content_settings::mojom::LifetimeMode lifetime_option) { - DCHECK_EQ(1ul, std::ranges::count(requests_, request) + - pending_permission_requests_.Count(request)) + CHECK(RequestExistsExactlyOnce(request, pending_permission_requests_, + requests_)) << "Only requests in [pending_permission_]requests_ can have duplicates"; - request->PermissionGranted(is_one_time); + request->PermissionGranted(is_one_time, lifetime_option); @@ -1350,9 +1348,9 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p base::BindRepeating( - [](bool is_one_time, + [](bool is_one_time, content_settings::mojom::LifetimeMode lifetime_option, - const base::WeakPtr& weak_request) { -- weak_request->PermissionGranted(is_one_time); -+ weak_request->PermissionGranted(is_one_time, lifetime_option); + const std::unique_ptr& request) { +- request->PermissionGranted(is_one_time); ++ request->PermissionGranted(is_one_time, lifetime_option); }, - is_one_time), + is_one_time, lifetime_option), @@ -1362,23 +1360,23 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p void PermissionRequestManager::PermissionDeniedIncludingDuplicates( - PermissionRequest* request) { + PermissionRequest* request, bool is_one_time, content_settings::mojom::LifetimeMode lifetime_option) { - DCHECK_EQ(1ul, std::ranges::count(requests_, request) + - pending_permission_requests_.Count(request)) + CHECK(RequestExistsExactlyOnce(request, pending_permission_requests_, + requests_)) << "Only requests in [pending_permission_]requests_ can have duplicates"; - request->PermissionDenied(); + request->PermissionDenied(is_one_time, lifetime_option); VisitDuplicateRequests( base::BindRepeating( -- [](const base::WeakPtr& weak_request) { -- weak_request->PermissionDenied(); +- [](const std::unique_ptr& request) { +- request->PermissionDenied(); - }), -+ [](bool is_one_time, content_settings::mojom::LifetimeMode lifetime_option, const base::WeakPtr& weak_request) { -+ weak_request->PermissionDenied(is_one_time, lifetime_option); ++ [](bool is_one_time, content_settings::mojom::LifetimeMode lifetime_option, const std::unique_ptr& request) { ++ request->PermissionDenied(is_one_time, lifetime_option); + }, is_one_time, lifetime_option), request); } -@@ -1562,7 +1573,7 @@ void PermissionRequestManager::DoAutoResponseForTesting() { +@@ -1596,7 +1607,7 @@ void PermissionRequestManager::DoAutoResponseForTesting() { } switch (auto_response_for_test_) { case ACCEPT_ONCE: @@ -1402,7 +1400,7 @@ diff --git a/components/permissions/permission_request_manager.h b/components/pe void Dismiss() override; void Ignore() override; void FinalizeCurrentRequests() override; -@@ -383,9 +385,12 @@ class PermissionRequestManager +@@ -394,9 +396,12 @@ class PermissionRequestManager // Calls PermissionGranted on a request and all its duplicates. void PermissionGrantedIncludingDuplicates(PermissionRequest* request, diff --git a/build/cromite_patches/Add-menu-item-to-bookmark-all-tabs.patch b/build/cromite_patches/Add-menu-item-to-bookmark-all-tabs.patch index e39840c0..c8fa1d95 100644 --- a/build/cromite_patches/Add-menu-item-to-bookmark-all-tabs.patch +++ b/build/cromite_patches/Add-menu-item-to-bookmark-all-tabs.patch @@ -10,7 +10,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../bookmarks/android/bookmark_bridge.h | 8 ++++ .../browser/bookmarks/BookmarkBridge.java | 41 ++++++++++++++++++ .../browser/bookmarks/bookmark_html_writer.cc | 14 +++++- - .../bookmark_merged_surface_service.cc | 3 ++ + .../bookmarks/bookmark_parent_folder.cc | 1 + .../permanent_folder_ordering_tracker.cc | 2 + .../dialogs/DownloadLocationCustomView.java | 4 +- .../strings/android_chrome_strings.grd | 3 ++ @@ -18,23 +18,24 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html components/bookmark_bar_strings.grdp | 6 +++ .../bookmarks/browser/bookmark_codec.cc | 20 +++++++-- components/bookmarks/browser/bookmark_codec.h | 7 ++- - .../browser/bookmark_load_details.cc | 14 ++++-- + .../browser/bookmark_load_details.cc | 15 +++++-- .../bookmarks/browser/bookmark_load_details.h | 2 + .../bookmarks/browser/bookmark_model.cc | 3 +- components/bookmarks/browser/bookmark_model.h | 7 +++ - components/bookmarks/browser/bookmark_node.cc | 11 +++++ - components/bookmarks/browser/bookmark_node.h | 3 ++ + components/bookmarks/browser/bookmark_node.cc | 13 ++++++ + components/bookmarks/browser/bookmark_node.h | 4 ++ .../bookmarks/browser/bookmark_storage.cc | 2 + .../bookmarks/browser/bookmark_uuids.cc | 3 ++ components/bookmarks/browser/bookmark_uuids.h | 1 + - components/bookmarks/browser/model_loader.cc | 8 +++- + components/bookmarks/browser/model_loader.cc | 9 +++- + ...ookmark_model_merger_comparison_metrics.cc | 4 ++ .../bookmark_specifics_conversions.cc | 1 + - 25 files changed, 243 insertions(+), 14 deletions(-) + 26 files changed, 250 insertions(+), 14 deletions(-) diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/res/menu/main_menu.xml --- a/chrome/android/java/res/menu/main_menu.xml +++ b/chrome/android/java/res/menu/main_menu.xml -@@ -74,6 +74,10 @@ found in the LICENSE file. +@@ -77,6 +77,10 @@ found in the LICENSE file. @@ -45,7 +46,7 @@ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/re -@@ -198,6 +202,9 @@ found in the LICENSE file. +@@ -207,6 +211,9 @@ found in the LICENSE file. @@ -58,7 +59,7 @@ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/re diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java -@@ -97,6 +97,7 @@ import org.chromium.chrome.browser.bookmarks.BookmarkPane; +@@ -103,6 +103,7 @@ import org.chromium.chrome.browser.bookmarks.BookmarkPane; import org.chromium.chrome.browser.bookmarks.BookmarkUtils; import org.chromium.chrome.browser.browserservices.intents.WebappConstants; import org.chromium.chrome.browser.compositor.CompositorViewHolder; @@ -66,16 +67,17 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct import org.chromium.chrome.browser.compositor.layouts.Layout; import org.chromium.chrome.browser.compositor.layouts.LayoutManagerChrome; import org.chromium.chrome.browser.compositor.layouts.LayoutManagerChromePhone; -@@ -253,12 +254,17 @@ import org.chromium.chrome.browser.ui.RootUiCoordinator; - import org.chromium.chrome.browser.ui.appmenu.AppMenuPropertiesDelegate; +@@ -275,6 +276,9 @@ import org.chromium.chrome.browser.ui.appmenu.AppMenuPropertiesDelegate; import org.chromium.chrome.browser.ui.desktop_windowing.AppHeaderUtils; import org.chromium.chrome.browser.ui.edge_to_edge.EdgeToEdgeUtils; + import org.chromium.chrome.browser.ui.extensions.ExtensionKeybindingRegistry; +import org.chromium.chrome.browser.ui.messages.snackbar.Snackbar; +import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager; +import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager.SnackbarController; import org.chromium.chrome.browser.ui.searchactivityutils.SearchActivityClient; import org.chromium.chrome.browser.ui.searchactivityutils.SearchActivityExtras.IntentOrigin; - import org.chromium.chrome.browser.undo_tab_close_snackbar.UndoBarController; + import org.chromium.chrome.browser.ui.signin.BottomSheetSigninAndHistorySyncConfig; +@@ -284,6 +288,8 @@ import org.chromium.chrome.browser.undo_tab_close_snackbar.UndoBarController; import org.chromium.chrome.browser.usage_stats.UsageStatsService; import org.chromium.chrome.browser.util.ChromeAccessibilityUtil; import org.chromium.chrome.browser.xr.XrLayoutStateObserver; @@ -84,16 +86,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct import org.chromium.components.browser_ui.bottomsheet.BottomSheetController; import org.chromium.components.browser_ui.edge_to_edge.SystemBarColorHelper; import org.chromium.components.browser_ui.edge_to_edge.TabbedSystemBarColorHelper; -@@ -3103,6 +3109,8 @@ public class ChromeTabbedActivity extends ChromeActivity implements MismatchedIn +@@ -3394,6 +3400,8 @@ public class ChromeTabbedActivity extends ChromeActivity { getTabModelSelectorSupplier().get(), closeAllTabsRunnable); RecordUserAction.record("MobileMenuCloseAllTabs"); + } else if (id == R.id.bookmark_all_tabs_menu_id) { + bookmarkAllTabs(); } else if (id == R.id.close_all_incognito_tabs_menu_id) { - // Close only incognito tabs - Runnable closeAllTabsRunnable = -@@ -3191,6 +3199,41 @@ public class ChromeTabbedActivity extends ChromeActivity implements MismatchedIn + boolean allowUndo = TabClosureParamsUtils.shouldAllowUndo(triggeringMotion); + +@@ -3502,6 +3510,41 @@ public class ChromeTabbedActivity extends ChromeActivity { getTabModalLifetimeHandler().onOmniboxFocusChanged(hasFocus); } @@ -138,7 +140,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browser/bookmarks/android/bookmark_bridge.cc --- a/chrome/browser/bookmarks/android/bookmark_bridge.cc +++ b/chrome/browser/bookmarks/android/bookmark_bridge.cc -@@ -326,6 +326,33 @@ jboolean BookmarkBridge::AreAccountBookmarkFoldersActive(JNIEnv* env) { +@@ -390,6 +390,33 @@ jboolean BookmarkBridge::AreAccountBookmarkFoldersActive(JNIEnv* env) { return bookmark_model_->account_mobile_node() != nullptr; } @@ -172,7 +174,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse base::android::ScopedJavaLocalRef BookmarkBridge::GetMostRecentlyAddedUserBookmarkIdForUrl(JNIEnv* env, const GURL& url) { -@@ -438,6 +465,7 @@ void BookmarkBridge::GetAllFoldersWithDepths( +@@ -502,6 +529,7 @@ void BookmarkBridge::GetAllFoldersWithDepths( // Vector to temporarily contain all child bookmarks at same level for sorting std::vector bookmarks = { bookmark_model_->mobile_node(), @@ -180,7 +182,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse bookmark_model_->bookmark_bar_node(), bookmark_model_->other_node(), }; -@@ -531,6 +559,9 @@ std::vector BookmarkBridge::GetTopLevelFolderIdsImpl( +@@ -610,6 +638,9 @@ std::vector BookmarkBridge::GetTopLevelFolderIdsImpl( top_level_folders.push_back(other_node); } @@ -189,8 +191,8 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse + const BookmarkNode* reading_list_node = local_or_syncable_reading_list_manager_->GetRoot(); - if (IsPermanentFolderVisible(ignore_visibility, reading_list_node)) { -@@ -1256,6 +1287,17 @@ void BookmarkBridge::GetBookmarksOfType( + if (IsPermanentFolderVisible( +@@ -1337,6 +1368,17 @@ void BookmarkBridge::GetBookmarksOfType( AddBookmarkNodesToBookmarkIdList(env, j_list, results); } @@ -211,7 +213,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.h b/chrome/browser/bookmarks/android/bookmark_bridge.h --- a/chrome/browser/bookmarks/android/bookmark_bridge.h +++ b/chrome/browser/bookmarks/android/bookmark_bridge.h -@@ -79,6 +79,10 @@ class BookmarkBridge : public ProfileObserver, +@@ -106,6 +106,10 @@ class BookmarkBridge : public ProfileObserver, jboolean AreAccountBookmarkFoldersActive(JNIEnv* env); @@ -222,7 +224,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.h b/chrome/browser base::android::ScopedJavaLocalRef GetMostRecentlyAddedUserBookmarkIdForUrl(JNIEnv* env, const GURL& url); const bookmarks::BookmarkNode* GetMostRecentlyAddedUserBookmarkIdForUrlImpl( -@@ -223,6 +227,10 @@ class BookmarkBridge : public ProfileObserver, +@@ -250,6 +254,10 @@ class BookmarkBridge : public ProfileObserver, const base::android::JavaParamRef& j_list, jint type); @@ -236,7 +238,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.h b/chrome/browser diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkBridge.java b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkBridge.java --- a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkBridge.java +++ b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkBridge.java -@@ -18,6 +18,7 @@ import org.jni_zero.JniType; +@@ -16,6 +16,7 @@ import org.jni_zero.JniType; import org.jni_zero.NativeMethods; import org.chromium.base.ContextUtils; @@ -252,15 +254,15 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows import org.chromium.components.bookmarks.BookmarkId; import org.chromium.components.bookmarks.BookmarkItem; import org.chromium.components.bookmarks.BookmarkType; -@@ -46,6 +48,7 @@ import java.util.function.BiConsumer; +@@ -47,6 +49,7 @@ import java.util.function.BiConsumer; class BookmarkBridge { - private static OneshotSupplierImpl + private static final OneshotSupplierImpl sPartnerBookmarkIteratorSupplier = new OneshotSupplierImpl<>(); + private static final String TAG = "BookmarkBridge"; private final ObserverList mObservers = new ObserverList<>(); private final Profile mProfile; -@@ -383,6 +386,16 @@ class BookmarkBridge { +@@ -385,6 +388,16 @@ class BookmarkBridge { return mMobileFolderId; } @@ -275,9 +277,9 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows + } + /** Returns Id representing the special "other" folder from bookmark model. */ - public BookmarkId getOtherFolderId() { + public @Nullable BookmarkId getOtherFolderId() { ThreadUtils.assertOnUiThread(); -@@ -894,6 +907,29 @@ class BookmarkBridge { +@@ -898,6 +911,29 @@ class BookmarkBridge { .addToReadingList(mNativeBookmarkBridge, parentId, title, url); } @@ -307,7 +309,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows /** * Helper method to mark an item as read. * -@@ -1111,6 +1147,9 @@ class BookmarkBridge { +@@ -1115,6 +1151,9 @@ class BookmarkBridge { BookmarkId getMostRecentlyAddedUserBookmarkIdForUrl( long nativeBookmarkBridge, @JniType("GURL") GURL url); @@ -317,7 +319,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows BookmarkItem getBookmarkById(long nativeBookmarkBridge, long id, int type); void getTopLevelFolderIds( -@@ -1132,6 +1171,8 @@ class BookmarkBridge { +@@ -1136,6 +1175,8 @@ class BookmarkBridge { BookmarkId getRootFolderId(long nativeBookmarkBridge); @@ -329,7 +331,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows diff --git a/chrome/browser/bookmarks/bookmark_html_writer.cc b/chrome/browser/bookmarks/bookmark_html_writer.cc --- a/chrome/browser/bookmarks/bookmark_html_writer.cc +++ b/chrome/browser/bookmarks/bookmark_html_writer.cc -@@ -173,14 +173,15 @@ class Writer : public base::RefCountedThreadSafe { +@@ -169,14 +169,15 @@ class Writer : public base::RefCountedThreadSafe { BookmarkCodec codec; local_bookmarks_ = codec.Encode(model->bookmark_bar_node(), model->other_node(), @@ -347,7 +349,7 @@ diff --git a/chrome/browser/bookmarks/bookmark_html_writer.cc b/chrome/browser/b } else { CHECK(!model->account_other_node()); CHECK(!model->account_mobile_node()); -@@ -214,6 +215,9 @@ class Writer : public base::RefCountedThreadSafe { +@@ -210,6 +211,9 @@ class Writer : public base::RefCountedThreadSafe { base::Value::Dict* mobile_folder_value = local_permanent_folders->FindDict( BookmarkCodec::kMobileBookmarkFolderNameKey); CHECK(mobile_folder_value); @@ -357,7 +359,7 @@ diff --git a/chrome/browser/bookmarks/bookmark_html_writer.cc b/chrome/browser/b base::Value::Dict* account_permanent_folders = account_bookmarks_.FindDict(BookmarkCodec::kRootsKey); -@@ -289,6 +293,10 @@ class Writer : public base::RefCountedThreadSafe { +@@ -285,6 +289,10 @@ class Writer : public base::RefCountedThreadSafe { return bookmark_html_writer::Result::kCouldNotWriteNodes; } @@ -368,7 +370,7 @@ diff --git a/chrome/browser/bookmarks/bookmark_html_writer.cc b/chrome/browser/b DecrementIndent(); if (!Write(kFolderChildrenEnd) || !Write(kNewline)) { -@@ -435,6 +443,7 @@ class Writer : public base::RefCountedThreadSafe { +@@ -431,6 +439,7 @@ class Writer : public base::RefCountedThreadSafe { case BookmarkNode::URL: case BookmarkNode::OTHER_NODE: case BookmarkNode::MOBILE: @@ -376,7 +378,7 @@ diff --git a/chrome/browser/bookmarks/bookmark_html_writer.cc b/chrome/browser/b NOTREACHED(); } -@@ -563,6 +572,7 @@ void BookmarkFaviconFetcher::ExportBookmarks() { +@@ -559,6 +568,7 @@ void BookmarkFaviconFetcher::ExportBookmarks() { ExtractUrls(model->bookmark_bar_node()); ExtractUrls(model->other_node()); ExtractUrls(model->mobile_node()); @@ -384,30 +386,21 @@ diff --git a/chrome/browser/bookmarks/bookmark_html_writer.cc b/chrome/browser/b if (model->account_bookmark_bar_node()) { CHECK(model->account_other_node()); -diff --git a/chrome/browser/bookmarks/bookmark_merged_surface_service.cc b/chrome/browser/bookmarks/bookmark_merged_surface_service.cc ---- a/chrome/browser/bookmarks/bookmark_merged_surface_service.cc -+++ b/chrome/browser/bookmarks/bookmark_merged_surface_service.cc -@@ -32,6 +32,7 @@ BookmarkParentFolder GetBookmarkParentFolderFromPermanentType( - BookmarkNode::Type type) { - switch (type) { +diff --git a/chrome/browser/bookmarks/bookmark_parent_folder.cc b/chrome/browser/bookmarks/bookmark_parent_folder.cc +--- a/chrome/browser/bookmarks/bookmark_parent_folder.cc ++++ b/chrome/browser/bookmarks/bookmark_parent_folder.cc +@@ -18,6 +18,7 @@ BookmarkParentFolder GetBookmarkParentFolderFromPermanentNode( + CHECK(node->is_permanent_node()); + switch (node->type()) { case bookmarks::BookmarkNode::URL: + case bookmarks::BookmarkNode::TABS_COLLECTION: NOTREACHED(); case bookmarks::BookmarkNode::FOLDER: // TODO(crbug.com/381252292): Consider extending type with a value -@@ -70,6 +71,8 @@ std::optional GetIfPermanentFolderType( - - case BookmarkNode::Type::URL: - NOTREACHED(); -+ case BookmarkNode::Type::TABS_COLLECTION: -+ NOTREACHED(); - } - NOTREACHED(); - } diff --git a/chrome/browser/bookmarks/permanent_folder_ordering_tracker.cc b/chrome/browser/bookmarks/permanent_folder_ordering_tracker.cc --- a/chrome/browser/bookmarks/permanent_folder_ordering_tracker.cc +++ b/chrome/browser/bookmarks/permanent_folder_ordering_tracker.cc -@@ -23,6 +23,7 @@ bool IsValidTrackedType(BookmarkNode::Type type) { +@@ -26,6 +26,7 @@ bool IsValidTrackedType(BookmarkNode::Type type) { switch (type) { case bookmarks::BookmarkNode::URL: case bookmarks::BookmarkNode::FOLDER: @@ -415,7 +408,7 @@ diff --git a/chrome/browser/bookmarks/permanent_folder_ordering_tracker.cc b/chr NOTREACHED(); case bookmarks::BookmarkNode::BOOKMARK_BAR: -@@ -235,6 +236,7 @@ void PermanentFolderOrderingTracker::SetTrackedPermanentNodes() { +@@ -303,6 +304,7 @@ void PermanentFolderOrderingTracker::SetTrackedPermanentNodes() { switch (tracked_type_) { case bookmarks::BookmarkNode::URL: case bookmarks::BookmarkNode::FOLDER: @@ -426,7 +419,7 @@ diff --git a/chrome/browser/bookmarks/permanent_folder_ordering_tracker.cc b/chr diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationCustomView.java b/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationCustomView.java --- a/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationCustomView.java +++ b/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationCustomView.java -@@ -85,7 +85,7 @@ public class DownloadLocationCustomView extends ScrollView +@@ -88,7 +88,7 @@ public class DownloadLocationCustomView extends ScrollView mDirectoryAdapter.update(); } @@ -435,7 +428,7 @@ diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browse mTitle.setText(title); } -@@ -93,7 +93,7 @@ public class DownloadLocationCustomView extends ScrollView +@@ -96,7 +96,7 @@ public class DownloadLocationCustomView extends ScrollView mSubtitleView.setText(subtitle); } @@ -447,7 +440,7 @@ diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browse diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd -@@ -4487,6 +4487,9 @@ To change this setting, BEGIN_LINKdelete the Chrome d +@@ -4541,6 +4541,9 @@ To change this setting, BEGIN_LINKdelete the Chrome d Select tabs @@ -653,16 +646,17 @@ diff --git a/components/bookmarks/browser/bookmark_load_details.cc b/components/ void UpdateUserFolderStatsRecursively(const BookmarkNode& node, bool top_level, -@@ -60,6 +60,8 @@ BookmarkLoadDetails::BookmarkLoadDetails() - root_node_->Add(BookmarkPermanentNode::CreateOtherBookmarks(/*id=*/0))); +@@ -63,6 +63,9 @@ BookmarkLoadDetails::BookmarkLoadDetails() mobile_folder_node_ = static_cast( - root_node_->Add(BookmarkPermanentNode::CreateMobileBookmarks(/*id=*/0))); + root_node_->Add(BookmarkPermanentNode::CreateMobileBookmarks( + /*id=*/0, /*is_account_node=*/false))); + tabs_collection_folder_node_ = static_cast( -+ root_node_->Add(BookmarkPermanentNode::CreateTabsCollectionBookmarks(/*id=*/0))); ++ root_node_->Add(BookmarkPermanentNode::CreateTabsCollectionBookmarks( ++ /*id=*/0, /*is_account_node=*/false))); - CHECK_EQ(kNumDefaultTopLevelPermanentFolders, root_node_->children().size()); - } -@@ -106,6 +108,10 @@ void BookmarkLoadDetails::PopulateNodeIdsForLocalOrSyncablePermanentNodes() { + // Set the nodes' `date_added` to the same time so that there is no inherent + // hierarchy in terms of their added time between them. This is relevant for +@@ -119,6 +122,10 @@ void BookmarkLoadDetails::PopulateNodeIdsForLocalOrSyncablePermanentNodes() { if (mobile_folder_node_->id() == 0) { mobile_folder_node_->set_id(max_id_++); } @@ -673,7 +667,7 @@ diff --git a/components/bookmarks/browser/bookmark_load_details.cc b/components/ } void BookmarkLoadDetails::AddManagedNode( -@@ -118,6 +124,7 @@ void BookmarkLoadDetails::AddManagedNode( +@@ -131,6 +138,7 @@ void BookmarkLoadDetails::AddManagedNode( CHECK_NE(bb_node_->id(), 0); CHECK_NE(other_folder_node_->id(), 0); CHECK_NE(mobile_folder_node_->id(), 0); @@ -681,7 +675,7 @@ diff --git a/components/bookmarks/browser/bookmark_load_details.cc b/components/ has_managed_node_ = true; root_node_->Add(std::move(managed_node)); -@@ -125,8 +132,8 @@ void BookmarkLoadDetails::AddManagedNode( +@@ -138,8 +146,8 @@ void BookmarkLoadDetails::AddManagedNode( void BookmarkLoadDetails::CreateIndices() { local_or_syncable_uuid_index_.insert(root_node_.get()); @@ -692,7 +686,7 @@ diff --git a/components/bookmarks/browser/bookmark_load_details.cc b/components/ for (const auto& child : root_node_->children()) { if (child.get() == account_bb_node_ || child.get() == account_other_folder_node_ || -@@ -145,6 +152,7 @@ void BookmarkLoadDetails::ResetPermanentNodePointers() { +@@ -158,6 +166,7 @@ void BookmarkLoadDetails::ResetPermanentNodePointers() { bb_node_ = nullptr; other_folder_node_ = nullptr; mobile_folder_node_ = nullptr; @@ -722,16 +716,16 @@ diff --git a/components/bookmarks/browser/bookmark_load_details.h b/components/b diff --git a/components/bookmarks/browser/bookmark_model.cc b/components/bookmarks/browser/bookmark_model.cc --- a/components/bookmarks/browser/bookmark_model.cc +++ b/components/bookmarks/browser/bookmark_model.cc -@@ -835,7 +835,7 @@ bool BookmarkModel::HasBookmarks() const { - bool BookmarkModel::HasNoUserCreatedBookmarksOrFolders() const { - DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); - return bookmark_bar_node_->children().empty() && -- other_node_->children().empty() && mobile_node_->children().empty(); -+ other_node_->children().empty() && mobile_node_->children().empty() && tabs_collection_node_->children().empty(); +@@ -908,7 +908,7 @@ bool BookmarkModel::HasUserCreatedBookmarksOrFolders() const { + (account_bookmark_bar_node_ && + !account_bookmark_bar_node_->children().empty()) || + (account_other_node_ && !account_other_node_->children().empty()) || +- (account_mobile_node_ && !account_mobile_node_->children().empty()); ++ (account_mobile_node_ && !account_mobile_node_->children().empty() && tabs_collection_node_->children().empty()); } bool BookmarkModel::IsBookmarked(const GURL& url) const { -@@ -1167,6 +1167,7 @@ void BookmarkModel::DoneLoading(std::unique_ptr details) { +@@ -1240,6 +1240,7 @@ void BookmarkModel::DoneLoading(std::unique_ptr details) { bookmark_bar_node_ = details->bb_node(); other_node_ = details->other_folder_node(); mobile_node_ = details->mobile_folder_node(); @@ -744,10 +738,10 @@ diff --git a/components/bookmarks/browser/bookmark_model.h b/components/bookmark +++ b/components/bookmarks/browser/bookmark_model.h @@ -150,6 +150,12 @@ class BookmarkModel : public BookmarkUndoProvider, // bookmarks in the account storage). - const BookmarkNode* account_mobile_node() const; + const BookmarkPermanentNode* account_mobile_node() const; + // Returns the 'mobile' node. This is NULL until loaded. -+ const BookmarkNode* tabs_collection_node() const { ++ const BookmarkPermanentNode* tabs_collection_node() const { + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); + return tabs_collection_node_; + } @@ -755,7 +749,7 @@ diff --git a/components/bookmarks/browser/bookmark_model.h b/components/bookmark bool is_root_node(const BookmarkNode* node) const { DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); return node == root_; -@@ -611,6 +617,7 @@ class BookmarkModel : public BookmarkUndoProvider, +@@ -628,6 +634,7 @@ class BookmarkModel : public BookmarkUndoProvider, raw_ptr account_bookmark_bar_node_ = nullptr; raw_ptr account_other_node_ = nullptr; raw_ptr account_mobile_node_ = nullptr; @@ -775,17 +769,19 @@ diff --git a/components/bookmarks/browser/bookmark_node.cc b/components/bookmark case BookmarkNode::URL: NOTREACHED(); case BookmarkNode::FOLDER: -@@ -211,6 +213,15 @@ BookmarkPermanentNode::CreateMobileBookmarks(int64_t id) { - l10n_util::GetStringUTF16(IDS_BOOKMARK_BAR_MOBILE_FOLDER_NAME))); +@@ -213,6 +215,17 @@ BookmarkPermanentNode::CreateMobileBookmarks(int64_t id, + is_account_node)); } +// static +std::unique_ptr -+BookmarkPermanentNode::CreateTabsCollectionBookmarks(int64_t id) { ++BookmarkPermanentNode::CreateTabsCollectionBookmarks(int64_t id, ++ bool is_account_node) { + // base::WrapUnique() used because the constructor is private. + return base::WrapUnique(new BookmarkPermanentNode( + id, TABS_COLLECTION, base::Uuid::ParseLowercase(kTabsCollectionBookmarksNodeUuid), -+ l10n_util::GetStringUTF16(IDS_BOOKMARK_BAR_TABS_COLLECTION_FOLDER_NAME))); ++ l10n_util::GetStringUTF16(IDS_BOOKMARK_BAR_TABS_COLLECTION_FOLDER_NAME), ++ is_account_node)); +} + BookmarkPermanentNode::BookmarkPermanentNode(int64_t id, @@ -802,12 +798,13 @@ diff --git a/components/bookmarks/browser/bookmark_node.h b/components/bookmarks MOBILE }; -@@ -247,6 +248,8 @@ class BookmarkPermanentNode : public BookmarkNode { - int64_t id); +@@ -249,6 +250,9 @@ class BookmarkPermanentNode : public BookmarkNode { static std::unique_ptr CreateMobileBookmarks( - int64_t id); + int64_t id, + bool is_account_node); + static std::unique_ptr CreateTabsCollectionBookmarks( -+ int64_t id); ++ int64_t id, ++ bool is_account_node); // Returns whether the permanent node of type `type` should be visible even // when it is empty (i.e. no children). @@ -857,16 +854,17 @@ diff --git a/components/bookmarks/browser/bookmark_uuids.h b/components/bookmark diff --git a/components/bookmarks/browser/model_loader.cc b/components/bookmarks/browser/model_loader.cc --- a/components/bookmarks/browser/model_loader.cc +++ b/components/bookmarks/browser/model_loader.cc -@@ -71,6 +71,8 @@ std::unique_ptr LoadBookmarks( - BookmarkPermanentNode::CreateOtherBookmarks(0); +@@ -74,6 +74,9 @@ std::unique_ptr LoadBookmarks( std::unique_ptr account_mobile_folder_node = - BookmarkPermanentNode::CreateMobileBookmarks(0); + BookmarkPermanentNode::CreateMobileBookmarks( + 0, /*is_account_node=*/true); + std::unique_ptr tabs_collection_folder_node = -+ BookmarkPermanentNode::CreateTabsCollectionBookmarks(0); ++ BookmarkPermanentNode::CreateTabsCollectionBookmarks( ++ 0, /*is_account_node=*/true); std::optional root_dict = LoadFileToDict(account_file_path); -@@ -78,7 +80,8 @@ std::unique_ptr LoadBookmarks( +@@ -81,7 +84,8 @@ std::unique_ptr LoadBookmarks( if (root_dict.has_value() && codec.Decode(*root_dict, /*already_assigned_ids=*/{}, account_bb_node.get(), account_other_folder_node.get(), @@ -876,7 +874,7 @@ diff --git a/components/bookmarks/browser/model_loader.cc b/components/bookmarks &sync_metadata_str)) { ids_assigned_to_account_nodes = codec.release_assigned_ids(); -@@ -120,7 +123,8 @@ std::unique_ptr LoadBookmarks( +@@ -123,7 +127,8 @@ std::unique_ptr LoadBookmarks( if (root_dict.has_value() && codec.Decode(*root_dict, std::move(ids_assigned_to_account_nodes), details->bb_node(), details->other_folder_node(), @@ -886,6 +884,27 @@ diff --git a/components/bookmarks/browser/model_loader.cc b/components/bookmarks &sync_metadata_str)) { details->set_local_or_syncable_sync_metadata_str( std::move(sync_metadata_str)); +diff --git a/components/sync_bookmarks/bookmark_model_merger_comparison_metrics.cc b/components/sync_bookmarks/bookmark_model_merger_comparison_metrics.cc +--- a/components/sync_bookmarks/bookmark_model_merger_comparison_metrics.cc ++++ b/components/sync_bookmarks/bookmark_model_merger_comparison_metrics.cc +@@ -38,6 +38,7 @@ const char kOtherBookmarksTag[] = "other_bookmarks"; + constexpr char16_t kBookmarkBarFolderName[] = u"__Bookmarks bar__"; + constexpr char16_t kOtherBookmarksFolderName[] = u"__Other bookmarks__"; + constexpr char16_t kMobileBookmarksFolderName[] = u"__Mobile bookmarks__"; ++constexpr char16_t kTabsCollectionBookmarksFolderName[] = u"__Tabs collection__"; + + using RemoteForest = BookmarkModelMerger::RemoteForest; + using RemoteTreeNode = BookmarkModelMerger::RemoteTreeNode; +@@ -129,6 +130,9 @@ std::u16string_view GetBookmarkNodeTitle(const bookmarks::BookmarkNode* node) { + return kOtherBookmarksFolderName; + case bookmarks::BookmarkNode::MOBILE: + return kMobileBookmarksFolderName; ++ case bookmarks::BookmarkNode::TABS_COLLECTION: ++ return kTabsCollectionBookmarksFolderName; ++ + } + NOTREACHED(); + } diff --git a/components/sync_bookmarks/bookmark_specifics_conversions.cc b/components/sync_bookmarks/bookmark_specifics_conversions.cc --- a/components/sync_bookmarks/bookmark_specifics_conversions.cc +++ b/components/sync_bookmarks/bookmark_specifics_conversions.cc diff --git a/build/cromite_patches/Add-menu-item-to-view-source.patch b/build/cromite_patches/Add-menu-item-to-view-source.patch index d7424b04..037d6ca1 100644 --- a/build/cromite_patches/Add-menu-item-to-view-source.patch +++ b/build/cromite_patches/Add-menu-item-to-view-source.patch @@ -4,19 +4,20 @@ Subject: Add menu item to view source License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html --- - .../android/java/res/menu/custom_tabs_menu.xml | 3 +++ - chrome/android/java/res/menu/main_menu.xml | 3 +++ - .../chrome/browser/ChromeTabbedActivity.java | 2 ++ - .../chrome/browser/app/ChromeActivity.java | 5 +++++ - .../appmenu/AppMenuPropertiesDelegateImpl.java | 18 ++++++++++++++++++ - .../CustomTabAppMenuPropertiesDelegate.java | 1 + - .../android/strings/android_chrome_strings.grd | 4 ++++ - 7 files changed, 36 insertions(+) + .../android/java/res/menu/custom_tabs_menu.xml | 3 +++ + chrome/android/java/res/menu/main_menu.xml | 3 +++ + .../chrome/browser/ChromeTabbedActivity.java | 2 ++ + .../chrome/browser/app/ChromeActivity.java | 5 +++++ + .../appmenu/AppMenuPropertiesDelegateImpl.java | 17 +++++++++++++++++ + .../CustomTabAppMenuPropertiesDelegate.java | 2 +- + .../TabbedAppMenuPropertiesDelegate.java | 6 +++--- + .../android/strings/android_chrome_strings.grd | 4 ++++ + 8 files changed, 38 insertions(+), 4 deletions(-) diff --git a/chrome/android/java/res/menu/custom_tabs_menu.xml b/chrome/android/java/res/menu/custom_tabs_menu.xml --- a/chrome/android/java/res/menu/custom_tabs_menu.xml +++ b/chrome/android/java/res/menu/custom_tabs_menu.xml -@@ -58,6 +58,9 @@ found in the LICENSE file. +@@ -73,6 +73,9 @@ found in the LICENSE file. @@ -29,7 +30,7 @@ diff --git a/chrome/android/java/res/menu/custom_tabs_menu.xml b/chrome/android/ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/res/menu/main_menu.xml --- a/chrome/android/java/res/menu/main_menu.xml +++ b/chrome/android/java/res/menu/main_menu.xml -@@ -125,6 +125,9 @@ found in the LICENSE file. +@@ -131,6 +131,9 @@ found in the LICENSE file. @@ -42,7 +43,7 @@ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/re diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java -@@ -3135,6 +3135,8 @@ public class ChromeTabbedActivity extends ChromeActivity implements MismatchedIn +@@ -3434,6 +3434,8 @@ public class ChromeTabbedActivity extends ChromeActivity { NewTabPageUma.recordAction(NewTabPageUma.ACTION_OPENED_DOWNLOADS_MANAGER); } RecordUserAction.record("MobileMenuDownloadManager"); @@ -54,7 +55,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java -@@ -2531,6 +2531,11 @@ public abstract class ChromeActivity extends AsyncInitializationActivity +@@ -2576,6 +2576,11 @@ public abstract class ChromeActivity extends AsyncInitializationActivity return doOpenWebApk(currentTab); } @@ -69,16 +70,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java --- a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java -@@ -587,6 +587,7 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate - isNativePage, isFileScheme, isContentScheme, isIncognito, url)); - - updateRequestDesktopSiteMenuItem(menu, currentTab, true /* can show */, isNativePage); -+ updateViewSourceMenuItem(menu, currentTab); - - updateAutoDarkMenuItem(menu, currentTab, isNativePage); - -@@ -1328,6 +1329,23 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate - findInPageMenuRow.setVisible(itemVisible); +@@ -864,6 +864,23 @@ public abstract class AppMenuPropertiesDelegateImpl implements AppMenuProperties + } } + /** @@ -104,18 +97,49 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java --- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java -@@ -304,6 +304,7 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat - +@@ -331,7 +331,7 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat + // --- Request Desktop Site --- updateRequestDesktopSiteMenuItem( menu, currentTab, requestDesktopSiteVisible, isNativePage); +- + updateViewSourceMenuItem(menu, currentTab); - prepareAddToHomescreenMenuItem(menu, currentTab, addToHomeScreenVisible); + // --- Translate --- + prepareTranslateMenuItem(menu, currentTab); + +diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java +--- a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java ++++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java +@@ -173,7 +173,7 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm + if (menuGroup == MenuGroup.PAGE_MENU) { + preparePageMenu(menu, currentTab, handler, isIncognito); } +- prepareCommonMenuItems(menu, menuGroup, isIncognito); ++ prepareCommonMenuItems(menu, menuGroup, isIncognito, currentTab); } + + private void setMenuGroupVisibility(@MenuGroup int menuGroup, Menu menu) { +@@ -338,7 +338,7 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm + isNativePage, isFileScheme, isContentScheme, isIncognito, url)); + + updateRequestDesktopSiteMenuItem(menu, currentTab, true /* can show */, isNativePage); +- ++ updateViewSourceMenuItem(menu, currentTab); + updateAutoDarkMenuItem(menu, currentTab, isNativePage); + + // Only display reader mode settings menu option if the current page is in reader mode. +@@ -371,7 +371,7 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm + && UrlUtilities.isNtpUrl(currentTab.getUrl()); + } + +- private void prepareCommonMenuItems(Menu menu, @MenuGroup int menuGroup, boolean isIncognito) { ++ private void prepareCommonMenuItems(Menu menu, @MenuGroup int menuGroup, boolean isIncognito, Tab currentTab) { + boolean always_incognito = AlwaysIncognitoLinkInterceptor.isAlwaysIncognito(); + if (always_incognito) { + final MenuItem newTabOption = menu.findItem(R.id.new_tab_menu_id); diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd -@@ -315,6 +315,10 @@ CHAR_LIMIT guidelines: +@@ -321,6 +321,10 @@ CHAR_LIMIT guidelines: Collaboration diff --git a/build/cromite_patches/Add-option-to-force-tablet-UI.patch b/build/cromite_patches/Add-option-to-force-tablet-UI.patch index 892dc610..2953685a 100644 --- a/build/cromite_patches/Add-option-to-force-tablet-UI.patch +++ b/build/cromite_patches/Add-option-to-force-tablet-UI.patch @@ -14,6 +14,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html .../chrome/browser/app/ChromeActivity.java | 4 +++- .../overlays/strip/StripLayoutHelper.java | 10 ++++++++-- .../strip/StripLayoutHelperManager.java | 6 +++++- + .../scene_layer/TabStripSceneLayer.java | 8 ++++++++ .../init/ChromeBrowserInitializer.java | 2 ++ .../tabbed_mode/TabbedRootUiCoordinator.java | 4 +++- .../chrome/browser/ui/RootUiCoordinator.java | 6 +++++- @@ -37,7 +38,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html .../accessibility/AccessibilitySettings.java | 13 ++++++++++++ .../AccessibilitySettingsDelegate.java | 2 ++ .../chromium/ui/base/DeviceFormFactor.java | 14 +++++++++++++ - 33 files changed, 163 insertions(+), 26 deletions(-) + 34 files changed, 171 insertions(+), 26 deletions(-) diff --git a/chrome/android/java/res/layout/custom_tabs_control_container.xml b/chrome/android/java/res/layout/custom_tabs_control_container.xml --- a/chrome/android/java/res/layout/custom_tabs_control_container.xml @@ -106,7 +107,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeBaseAppCo import org.chromium.chrome.browser.ui.edge_to_edge.EdgeToEdgeUtils; import org.chromium.components.browser_ui.edge_to_edge.EdgeToEdgeManager; import org.chromium.components.browser_ui.edge_to_edge.EdgeToEdgeStateProvider; -@@ -131,6 +132,8 @@ public class ChromeBaseAppCompatActivity extends AppCompatActivity +@@ -133,6 +134,8 @@ public class ChromeBaseAppCompatActivity extends AppCompatActivity protected void attachBaseContext(Context newBase) { super.attachBaseContext(newBase); @@ -118,7 +119,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeBaseAppCo diff --git a/chrome/android/java/src/org/chromium/chrome/browser/WarmupManager.java b/chrome/android/java/src/org/chromium/chrome/browser/WarmupManager.java --- a/chrome/android/java/src/org/chromium/chrome/browser/WarmupManager.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/WarmupManager.java -@@ -63,6 +63,7 @@ import org.chromium.content_public.browser.WebContents; +@@ -66,6 +66,7 @@ import org.chromium.content_public.browser.WebContents; import org.chromium.content_public.browser.WebContentsObserver; import org.chromium.net.NetId; import org.chromium.ui.LayoutInflaterUtils; @@ -126,7 +127,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/WarmupManager.j import org.chromium.ui.base.WindowAndroid; import org.chromium.ui.display.DisplayUtil; import org.chromium.url.GURL; -@@ -476,7 +477,9 @@ public class WarmupManager { +@@ -481,7 +482,9 @@ public class WarmupManager { ControlContainer controlContainer = mainView.findViewById(R.id.control_container); if (toolbarId != ActivityUtils.NO_RESOURCE_ID && controlContainer != null) { @@ -140,7 +141,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/WarmupManager.j diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/ChromeAccessibilitySettingsDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/ChromeAccessibilitySettingsDelegate.java --- a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/ChromeAccessibilitySettingsDelegate.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/ChromeAccessibilitySettingsDelegate.java -@@ -62,6 +62,25 @@ public class ChromeAccessibilitySettingsDelegate implements AccessibilitySetting +@@ -65,6 +65,25 @@ public class ChromeAccessibilitySettingsDelegate implements AccessibilitySetting } } @@ -169,7 +170,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/s diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java -@@ -759,7 +759,9 @@ public abstract class ChromeActivity extends AsyncInitializationActivity +@@ -787,7 +787,9 @@ public abstract class ChromeActivity extends AsyncInitializationActivity // Inflate the correct toolbar layout for the device. int toolbarLayoutId = getToolbarLayoutId(); if (toolbarLayoutId != ActivityUtils.NO_RESOURCE_ID && controlContainer != null) { @@ -183,17 +184,17 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelper.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelper.java --- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelper.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelper.java -@@ -115,6 +115,7 @@ import org.chromium.components.tab_group_sync.TabGroupSyncService; +@@ -120,6 +120,7 @@ import org.chromium.components.tab_group_sync.TabGroupSyncService; import org.chromium.components.tab_group_sync.TriggerSource; import org.chromium.components.tab_groups.TabGroupColorId; - import org.chromium.ui.MotionEventUtils; + import org.chromium.ui.accessibility.AccessibilityState; +import org.chromium.ui.base.DeviceFormFactor; import org.chromium.ui.base.LocalizationUtils; import org.chromium.ui.base.WindowAndroid; - import org.chromium.ui.modaldialog.ModalDialogManager; -@@ -4113,8 +4114,13 @@ public class StripLayoutHelper - mTabMenu.setAnchorView(tabView); - // 3. Set the vertical offset to align the tab menu with bottom of the tab strip + import org.chromium.ui.util.ColorUtils; +@@ -4472,8 +4473,13 @@ public class StripLayoutHelper + mCloseButtonMenu.setAnchorView(tabView); + // 3. Set the vertical offset to align the close button menu with bottom of the tab strip int tabHeight = mManagerHost.getHeight(); - int verticalOffset = - -(tabHeight - (int) mContext.getResources().getDimension(R.dimen.tab_strip_height)); @@ -204,13 +205,13 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over + (int) mContext.getResources().getDimension(R.dimen.tab_strip_height_tabletui); + } + int verticalOffset = -(tabHeight - tab_strip_height); - mTabMenu.setVerticalOffset(verticalOffset); + mCloseButtonMenu.setVerticalOffset(verticalOffset); - // 4. Set the horizontal offset to align the tab menu with the right side of the tab + // 4. Set the horizontal offset to align the close button menu with the right side of the diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelperManager.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelperManager.java --- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelperManager.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelperManager.java -@@ -93,6 +93,7 @@ import org.chromium.components.browser_ui.desktop_windowing.DesktopWindowStateMa +@@ -98,6 +98,7 @@ import org.chromium.components.browser_ui.desktop_windowing.DesktopWindowStateMa import org.chromium.components.browser_ui.styles.SemanticColorUtils; import org.chromium.components.browser_ui.widget.scrim.ScrimProperties; import org.chromium.content_public.browser.LoadUrlParams; @@ -218,10 +219,10 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over import org.chromium.ui.base.LocalizationUtils; import org.chromium.ui.base.PageTransition; import org.chromium.ui.base.WindowAndroid; -@@ -450,7 +451,10 @@ public class StripLayoutHelperManager - +@@ -467,7 +468,10 @@ public class StripLayoutHelperManager mIsLayoutOptimizationsEnabled = - ToolbarFeatures.isTabStripWindowLayoutOptimizationEnabled(true); + ToolbarFeatures.isTabStripWindowLayoutOptimizationEnabled( + /* isTablet= */ true, DisplayUtil.isContextInDefaultDisplay(mContext)); - mScrollableStripHeight = res.getDimension(R.dimen.tab_strip_height) / mDensity; + mScrollableStripHeight = + (DeviceFormFactor.isForceTabletUI() @@ -230,6 +231,24 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over mHeight = mIsLayoutOptimizationsEnabled ? toolbarManager.getTabStripHeightSupplier().get() / mDensity +diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/TabStripSceneLayer.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/TabStripSceneLayer.java +--- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/TabStripSceneLayer.java ++++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/TabStripSceneLayer.java +@@ -111,6 +111,14 @@ public class TabStripSceneLayer extends SceneOverlayLayer { + if (mNativePtr == 0) return; + final boolean visible = yOffset > -layoutHelper.getHeight(); + ++ if (DeviceFormFactor.isNonMultiDisplayContextOnTablet(ContextUtils.getApplicationContext())) { ++ TintedCompositorButton newTabButton = layoutHelper.getNewTabButton(); ++ if (newTabButton.isVisible()) { ++ rightPaddingDp += newTabButton.getWidth() + layoutHelper.getNewTabBtnVisualOffset() ++ + StripLayoutGroupTitle.REORDER_BACKGROUND_PADDING_END; ++ } ++ } ++ + // This will hide the tab strips if necessary. + TabStripSceneLayerJni.get() + .beginBuildingFrame(mNativePtr, TabStripSceneLayer.this, visible); diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrowserInitializer.java b/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrowserInitializer.java --- a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrowserInitializer.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrowserInitializer.java @@ -252,7 +271,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrow diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java -@@ -664,7 +664,9 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { +@@ -725,7 +725,9 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { @Override public int getControlContainerHeightResource() { @@ -266,7 +285,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java b/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java --- a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java -@@ -100,6 +100,8 @@ import org.chromium.chrome.browser.paint_preview.DemoPaintPreview; +@@ -104,6 +104,8 @@ import org.chromium.chrome.browser.paint_preview.DemoPaintPreview; import org.chromium.chrome.browser.password_manager.ManagePasswordsReferrer; import org.chromium.chrome.browser.password_manager.PasswordManagerLauncher; import org.chromium.chrome.browser.pdf.PdfPage; @@ -275,7 +294,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordi import org.chromium.chrome.browser.profiles.Profile; import org.chromium.chrome.browser.quick_delete.QuickDeleteController; import org.chromium.chrome.browser.quick_delete.QuickDeleteDelegateImpl; -@@ -1616,7 +1618,9 @@ public class RootUiCoordinator +@@ -1645,7 +1647,9 @@ public class RootUiCoordinator if (!mSupportsFindInPageSupplier.getAsBoolean()) return; int stubId = R.id.find_toolbar_stub; @@ -300,7 +319,7 @@ diff --git a/chrome/browser/preferences/BUILD.gn b/chrome/browser/preferences/BU diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java --- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java +++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java -@@ -286,6 +286,7 @@ public final class ChromePreferenceKeys { +@@ -313,6 +313,7 @@ public final class ChromePreferenceKeys { /** Whether the app-specific history info text was already seen by users. */ public static final String HISTORY_APP_SPECIFIC_INFO_SEEN = "Chrome.History.AppSpecificInfoSeen"; @@ -340,7 +359,7 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java --- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java +++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java -@@ -57,6 +57,7 @@ public class LegacyChromePreferenceKeys { +@@ -56,6 +56,7 @@ public class LegacyChromePreferenceKeys { ChromePreferenceKeys.FIRST_RUN_FLOW_COMPLETE, ChromePreferenceKeys.FIRST_RUN_FLOW_SIGNIN_SETUP, ChromePreferenceKeys.FIRST_RUN_LIGHTWEIGHT_FLOW_COMPLETE, @@ -351,18 +370,18 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro diff --git a/chrome/browser/ui/android/desktop_windowing/java/src/org/chromium/chrome/browser/ui/desktop_windowing/AppHeaderCoordinator.java b/chrome/browser/ui/android/desktop_windowing/java/src/org/chromium/chrome/browser/ui/desktop_windowing/AppHeaderCoordinator.java --- a/chrome/browser/ui/android/desktop_windowing/java/src/org/chromium/chrome/browser/ui/desktop_windowing/AppHeaderCoordinator.java +++ b/chrome/browser/ui/android/desktop_windowing/java/src/org/chromium/chrome/browser/ui/desktop_windowing/AppHeaderCoordinator.java -@@ -38,6 +38,7 @@ import org.chromium.chrome.browser.ui.desktop_windowing.AppHeaderUtils.Windowing - import org.chromium.components.browser_ui.desktop_windowing.AppHeaderState; +@@ -39,6 +39,7 @@ import org.chromium.components.browser_ui.desktop_windowing.AppHeaderState; import org.chromium.components.browser_ui.desktop_windowing.DesktopWindowStateManager; import org.chromium.components.browser_ui.edge_to_edge.EdgeToEdgeStateProvider; + import org.chromium.ui.CaptionBarInsetsRectProvider; +import org.chromium.ui.base.DeviceFormFactor; import org.chromium.ui.InsetObserver; import org.chromium.ui.InsetObserver.WindowInsetsConsumer; import org.chromium.ui.InsetsRectProvider; -@@ -266,6 +267,7 @@ public class AppHeaderCoordinator - private static @DesktopWindowHeuristicResult int checkIsInDesktopWindow( +@@ -267,6 +268,7 @@ public class AppHeaderCoordinator InsetsRectProvider insetsRectProvider, - @DesktopWindowHeuristicResult int currentResult) { + @DesktopWindowHeuristicResult int currentResult, + boolean isOnExternalDisplay) { + if (DeviceFormFactor.isForceTabletUI()) return DesktopWindowHeuristicResult.IN_DESKTOP_WINDOW; @DesktopWindowHeuristicResult int newResult; @@ -370,7 +389,7 @@ diff --git a/chrome/browser/ui/android/desktop_windowing/java/src/org/chromium/c diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java --- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java +++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java -@@ -790,7 +790,7 @@ public class LocationBarCoordinator +@@ -857,7 +857,7 @@ public class LocationBarCoordinator } private boolean isTabletWindow() { @@ -382,8 +401,8 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd -@@ -1671,6 +1671,13 @@ Your Google account may have other forms of browsing history like searches and a - Hide your IP address +@@ -1654,6 +1654,13 @@ Your Google account may have other forms of browsing history like searches and a + Privacy guide explanation closed + @@ -464,7 +483,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/res/values/dimens.xml b/chro --- a/chrome/browser/ui/android/toolbar/java/res/values/dimens.xml +++ b/chrome/browser/ui/android/toolbar/java/res/values/dimens.xml @@ -10,8 +10,10 @@ found in the LICENSE file. - 10dp + 9dp - 0dp @@ -479,8 +498,8 @@ diff --git a/chrome/browser/ui/android/toolbar/java/res/values/dimens.xml b/chro diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/ControlContainer.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/ControlContainer.java --- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/ControlContainer.java +++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/ControlContainer.java -@@ -23,7 +23,7 @@ public interface ControlContainer { - * Initialize the control container with the specified toolbar. +@@ -27,7 +27,7 @@ public interface ControlContainer { + * * @param toolbarLayoutId The ID of the toolbar layout to use. */ - void initWithToolbar(int toolbarLayoutId); @@ -491,18 +510,18 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarControlContainer.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarControlContainer.java --- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarControlContainer.java +++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarControlContainer.java -@@ -5,6 +5,7 @@ - package org.chromium.chrome.browser.toolbar.top; +@@ -7,6 +7,7 @@ package org.chromium.chrome.browser.toolbar.top; + import static org.chromium.build.NullUtil.assumeNonNull; import android.content.Context; +import android.content.res.Resources; import android.graphics.Canvas; + import android.graphics.Color; import android.graphics.PorterDuff; - import android.graphics.Rect; -@@ -144,8 +145,25 @@ public class ToolbarControlContainer extends OptimizedFrameLayout - } +@@ -157,8 +158,25 @@ public class ToolbarControlContainer extends OptimizedFrameLayout @Override + @Initializer - public void initWithToolbar(int toolbarLayoutId) { + public void initWithToolbar(int toolbarLayoutId, int controlContainerHeightOverrideId) { try (TraceEvent te = TraceEvent.scoped("ToolbarControlContainer.initWithToolbar")) { @@ -523,21 +542,21 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow + if (view != null) + ((MarginLayoutParams)view.getLayoutParams()).topMargin = tab_strip_height; + } - mToolbarContainer = - (ToolbarViewResourceFrameLayout) findViewById(R.id.toolbar_container); + mToolbarContainer = findViewById(R.id.toolbar_container); ViewStub toolbarStub = findViewById(R.id.toolbar_stub); + toolbarStub.setLayoutResource(toolbarLayoutId); diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarLayout.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarLayout.java --- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarLayout.java +++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarLayout.java -@@ -63,6 +63,7 @@ import org.chromium.chrome.browser.util.BrowserUiUtils.ModuleTypeOnStartAndNtp; +@@ -68,6 +68,7 @@ import org.chromium.chrome.browser.util.BrowserUiUtils.ModuleTypeOnStartAndNtp; import org.chromium.components.feature_engagement.Tracker; - import org.chromium.ui.MotionEventUtils; import org.chromium.ui.base.ViewUtils; + import org.chromium.ui.util.MotionEventUtils; +import org.chromium.ui.base.DeviceFormFactor; import org.chromium.ui.util.TokenHolder; import org.chromium.url.GURL; -@@ -583,7 +584,9 @@ public abstract class ToolbarLayout extends FrameLayout +@@ -586,7 +587,9 @@ public abstract class ToolbarLayout extends FrameLayout * not have a tab strip. */ protected int getTabStripHeightFromResource() { @@ -551,7 +570,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/tab_strip/HeightTransitionHandler.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/tab_strip/HeightTransitionHandler.java --- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/tab_strip/HeightTransitionHandler.java +++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/tab_strip/HeightTransitionHandler.java -@@ -28,6 +28,7 @@ import org.chromium.chrome.browser.toolbar.top.ToolbarLayout; +@@ -29,6 +29,7 @@ import org.chromium.chrome.browser.toolbar.top.ToolbarLayout; import org.chromium.chrome.browser.toolbar.top.tab_strip.TabStripTransitionCoordinator.TabStripHeightObserver; import org.chromium.chrome.browser.toolbar.top.tab_strip.TabStripTransitionCoordinator.TabStripTransitionDelegate; import org.chromium.ui.base.ViewUtils; @@ -559,7 +578,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow import org.chromium.ui.resources.dynamics.DynamicResourceReadyOnceCallback; import org.chromium.ui.util.TokenHolder; -@@ -556,6 +557,7 @@ class HeightTransitionHandler { +@@ -559,6 +560,7 @@ class HeightTransitionHandler { if (TabStripTransitionCoordinator.sHeightTransitionThresholdForTesting != null) { return TabStripTransitionCoordinator.sHeightTransitionThresholdForTesting; } @@ -577,8 +596,8 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow +import org.chromium.ui.base.DeviceFormFactor; /** Class used to manage tab strip visibility and height updates. */ - public class TabStripTransitionCoordinator implements ComponentCallbacks, AppHeaderObserver { -@@ -154,7 +155,10 @@ public class TabStripTransitionCoordinator implements ComponentCallbacks, AppHea + @NullMarked +@@ -153,7 +154,10 @@ public class TabStripTransitionCoordinator implements ComponentCallbacks, AppHea mTabStripReservedTopPadding = controlContainerView() .getResources() @@ -608,15 +627,15 @@ diff --git a/components/browser_ui/accessibility/android/java/res/xml/accessibil diff --git a/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettings.java b/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettings.java --- a/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettings.java +++ b/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettings.java -@@ -25,6 +25,7 @@ import org.chromium.content_public.browser.ContentFeatureList; +@@ -29,6 +29,7 @@ import org.chromium.content_public.browser.ContentFeatureList; import org.chromium.content_public.browser.ContentFeatureMap; import org.chromium.chrome.browser.settings.ChromeBaseSettingsFragment; +import org.chromium.components.browser_ui.accessibility.AccessibilitySettingsDelegate.BooleanPreferenceDelegate; /** Fragment to keep track of all the accessibility related preferences. */ - public class AccessibilitySettings extends ChromeBaseSettingsFragment -@@ -39,6 +40,9 @@ public class AccessibilitySettings extends ChromeBaseSettingsFragment + @NullMarked +@@ -44,6 +45,9 @@ public class AccessibilitySettings extends ChromeBaseSettingsFragment public static final String PREF_ZOOM_INFO = "zoom_info"; public static final String PREF_IMAGE_DESCRIPTIONS = "image_descriptions"; @@ -626,7 +645,7 @@ diff --git a/components/browser_ui/accessibility/android/java/src/org/chromium/c private PageZoomPreference mPageZoomDefaultZoomPref; private ChromeSwitchPreference mPageZoomIncludeOSAdjustment; private ChromeSwitchPreference mPageZoomAlwaysShowPref; -@@ -105,6 +109,12 @@ public class AccessibilitySettings extends ChromeBaseSettingsFragment +@@ -108,6 +112,12 @@ public class AccessibilitySettings extends ChromeBaseSettingsFragment mDelegate.getReaderAccessibilityDelegate().getValue()); readerForAccessibilityPref.setOnPreferenceChangeListener(this); @@ -639,7 +658,7 @@ diff --git a/components/browser_ui/accessibility/android/java/src/org/chromium/c Preference captions = findPreference(PREF_CAPTIONS); captions.setOnPreferenceClickListener( preference -> { -@@ -163,6 +173,9 @@ public class AccessibilitySettings extends ChromeBaseSettingsFragment +@@ -167,6 +177,9 @@ public class AccessibilitySettings extends ChromeBaseSettingsFragment public boolean onPreferenceChange(Preference preference, Object newValue) { if (PREF_FORCE_ENABLE_ZOOM.equals(preference.getKey())) { mDelegate.getForceEnableZoomAccessibilityDelegate().setValue((Boolean) newValue); @@ -647,12 +666,12 @@ diff --git a/components/browser_ui/accessibility/android/java/src/org/chromium/c + mForceTabletUIDelegate.setValue((Boolean) newValue); + mDelegate.requestRestart(getActivity()); } else if (PREF_READER_FOR_ACCESSIBILITY.equals(preference.getKey())) { - mDelegate.getReaderAccessibilityDelegate().setValue((Boolean) newValue); - } else if (PREF_PAGE_ZOOM_DEFAULT_ZOOM.equals(preference.getKey())) { + boolean readerModeEnabled = (Boolean) newValue; + mDelegate.getReaderAccessibilityDelegate().setValue(readerModeEnabled); diff --git a/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettingsDelegate.java b/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettingsDelegate.java --- a/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettingsDelegate.java +++ b/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettingsDelegate.java -@@ -39,6 +39,8 @@ public interface AccessibilitySettingsDelegate { +@@ -41,6 +41,8 @@ public interface AccessibilitySettingsDelegate { */ BrowserContextHandle getBrowserContextHandle(); @@ -664,7 +683,7 @@ diff --git a/components/browser_ui/accessibility/android/java/src/org/chromium/c diff --git a/ui/android/java/src/org/chromium/ui/base/DeviceFormFactor.java b/ui/android/java/src/org/chromium/ui/base/DeviceFormFactor.java --- a/ui/android/java/src/org/chromium/ui/base/DeviceFormFactor.java +++ b/ui/android/java/src/org/chromium/ui/base/DeviceFormFactor.java -@@ -69,6 +69,14 @@ public class DeviceFormFactor { +@@ -83,6 +83,14 @@ public class DeviceFormFactor { return BuildConfig.IS_DESKTOP_ANDROID; } @@ -679,7 +698,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/DeviceFormFactor.java b/ui /** * Each activity could be on a different display, and this will just tell you whether the * display associated with the application context is "tablet sized". Use {@link -@@ -77,6 +85,7 @@ public class DeviceFormFactor { +@@ -91,6 +99,7 @@ public class DeviceFormFactor { @CalledByNative @Deprecated public static boolean isTablet() { @@ -687,7 +706,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/DeviceFormFactor.java b/ui if (sIsTabletForTesting != null) { return sIsTabletForTesting; } -@@ -107,6 +116,7 @@ public class DeviceFormFactor { +@@ -121,6 +130,7 @@ public class DeviceFormFactor { * E.g. http://developer.samsung.com/samsung-dex/testing */ public static boolean isNonMultiDisplayContextOnTablet(Context context) { @@ -695,7 +714,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/DeviceFormFactor.java b/ui return detectScreenWidthBucket(context) >= SCREEN_BUCKET_TABLET; } -@@ -142,6 +152,7 @@ public class DeviceFormFactor { +@@ -156,6 +166,7 @@ public class DeviceFormFactor { * @return The screen width bucket the device is in (see constants at the top of this class). */ private static int detectScreenWidthBucket(Context context) { @@ -703,7 +722,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/DeviceFormFactor.java b/ui return context.getResources().getInteger(R.integer.min_screen_width_bucket); } -@@ -149,6 +160,7 @@ public class DeviceFormFactor { +@@ -163,6 +174,7 @@ public class DeviceFormFactor { ThreadUtils.assertOnUiThread(); Context context = windowAndroid.getContext().get(); if (context == null) return 0; @@ -711,7 +730,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/DeviceFormFactor.java b/ui return context.getResources().getInteger(R.integer.min_screen_width_bucket); } -@@ -158,6 +170,7 @@ public class DeviceFormFactor { +@@ -172,6 +184,7 @@ public class DeviceFormFactor { */ @UiThread public static int getNonMultiDisplayMinimumTabletWidthPx(Context context) { @@ -719,7 +738,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/DeviceFormFactor.java b/ui return getMinimumTabletWidthPx(DisplayAndroid.getNonMultiDisplay(context)); } -@@ -166,6 +179,7 @@ public class DeviceFormFactor { +@@ -180,6 +193,7 @@ public class DeviceFormFactor { * layout. */ public static int getMinimumTabletWidthPx(DisplayAndroid display) { diff --git a/build/cromite_patches/Add-option-to-not-persist-tabs-across-sessions.patch b/build/cromite_patches/Add-option-to-not-persist-tabs-across-sessions.patch index 24e3a967..d5caee1d 100644 --- a/build/cromite_patches/Add-option-to-not-persist-tabs-across-sessions.patch +++ b/build/cromite_patches/Add-option-to-not-persist-tabs-across-sessions.patch @@ -13,7 +13,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml --- a/chrome/android/java/res/xml/privacy_preferences.xml +++ b/chrome/android/java/res/xml/privacy_preferences.xml -@@ -96,6 +96,11 @@ found in the LICENSE file. +@@ -95,6 +95,11 @@ found in the LICENSE file. android:title="@string/incognito_settings_title" android:summary="@string/incognito_settings_summary" android:fragment="org.chromium.chrome.browser.privacy.settings.IncognitoSettings"/> @@ -28,7 +28,7 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java -@@ -45,6 +45,7 @@ import org.chromium.base.Callback; +@@ -47,6 +47,7 @@ import org.chromium.base.Callback; import org.chromium.base.CallbackController; import org.chromium.base.CallbackUtils; import org.chromium.base.CommandLine; @@ -36,7 +36,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct import org.chromium.base.IntentUtils; import org.chromium.base.Log; import org.chromium.base.MemoryPressureListener; -@@ -1695,8 +1696,10 @@ public class ChromeTabbedActivity extends ChromeActivity implements MismatchedIn +@@ -1849,8 +1850,10 @@ public class ChromeTabbedActivity extends ChromeActivity { boolean hadCipherData = CipherLazyHolder.sCipherInstance.restoreFromBundle(getSavedInstanceState()); @@ -51,33 +51,34 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java -@@ -7,6 +7,7 @@ package org.chromium.chrome.browser.privacy.settings; - import static org.chromium.components.content_settings.PrefNames.COOKIE_CONTROLS_MODE; +@@ -8,6 +8,7 @@ import static org.chromium.components.content_settings.PrefNames.COOKIE_CONTROLS - import android.os.Build; + import android.content.Context; + import android.content.Intent; +import android.content.SharedPreferences; + import android.graphics.drawable.Drawable; + import android.os.Build; import android.os.Bundle; - import android.text.SpannableString; - import android.text.style.ClickableSpan; -@@ -22,6 +23,8 @@ import org.chromium.base.metrics.RecordHistogram; - import org.chromium.base.metrics.RecordUserAction; - import org.chromium.base.supplier.ObservableSupplier; - import org.chromium.base.supplier.ObservableSupplierImpl; -+import org.chromium.base.ContextUtils; +@@ -21,7 +22,9 @@ import android.view.View; + import androidx.annotation.VisibleForTesting; + import androidx.preference.Preference; + +import org.chromium.base.BuildInfo; - import org.chromium.chrome.R; - import org.chromium.chrome.browser.enterprise.util.ManagedBrowserUtils; - import org.chromium.chrome.browser.flags.ChromeFeatureList; -@@ -92,6 +95,8 @@ public class PrivacySettings extends ChromeBaseSettingsFragment + import org.chromium.base.Callback; ++import org.chromium.base.ContextUtils; + import org.chromium.base.IntentUtils; + import org.chromium.base.metrics.RecordHistogram; + import org.chromium.base.metrics.RecordUserAction; +@@ -113,6 +116,8 @@ public class PrivacySettings extends ChromeBaseSettingsFragment private final SharedPreferencesManager mSharedPreferencesManager = ChromeSharedPreferences.getInstance(); + private static final String PREF_CLOSE_TABS_ON_EXIT = "close_tabs_on_exit"; + private ManagedPreferenceDelegate mManagedPreferenceDelegate; - @VisibleForTesting static final String PREF_FP_PROTECTION = "fp_protection"; - @VisibleForTesting static final String PREF_IP_PROTECTION = "ip_protection"; -@@ -333,7 +338,11 @@ public class PrivacySettings extends ChromeBaseSettingsFragment + @VisibleForTesting static final String PREF_THIRD_PARTY_COOKIES = "third_party_cookies"; + @VisibleForTesting static final String PREF_TRACKING_PROTECTION = "tracking_protection"; +@@ -373,7 +378,11 @@ public class PrivacySettings extends ChromeBaseSettingsFragment @Override public boolean onPreferenceChange(Preference preference, Object newValue) { String key = preference.getKey(); @@ -90,7 +91,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting UserPrefs.get(getProfile()) .setBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED, (boolean) newValue); } else if (PREF_HTTPS_FIRST_MODE_LEGACY.equals(key)) { -@@ -409,6 +418,11 @@ public class PrivacySettings extends ChromeBaseSettingsFragment +@@ -433,6 +442,11 @@ public class PrivacySettings extends ChromeBaseSettingsFragment getContext(), getProfile())); } @@ -105,7 +106,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd -@@ -5541,6 +5541,12 @@ To change this setting, BEGIN_LINKdelete the Chrome d +@@ -5714,6 +5714,12 @@ To change this setting, BEGIN_LINKdelete the Chrome d IMAGE diff --git a/build/cromite_patches/Add-option-to-use-home-page-as-NTP.patch b/build/cromite_patches/Add-option-to-use-home-page-as-NTP.patch index aae0e8e1..f61088a4 100644 --- a/build/cromite_patches/Add-option-to-use-home-page-as-NTP.patch +++ b/build/cromite_patches/Add-option-to-use-home-page-as-NTP.patch @@ -24,9 +24,9 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridDialogMediator.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridDialogMediator.java --- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridDialogMediator.java +++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridDialogMediator.java -@@ -99,6 +99,9 @@ import java.util.Map; - import java.util.Objects; +@@ -114,6 +114,9 @@ import java.util.Objects; import java.util.Optional; + import java.util.Set; +import org.chromium.chrome.browser.homepage.HomepageManager; +import org.chromium.url.GURL; @@ -34,7 +34,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser /** * A mediator for the TabGridDialog component, responsible for communicating with the components' * coordinator as well as managing the business logic for dialog show/hide. -@@ -930,9 +933,15 @@ public class TabGridDialogMediator +@@ -1028,9 +1031,15 @@ public class TabGridDialogMediator return; } @@ -54,15 +54,15 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupUiMediator.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupUiMediator.java --- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupUiMediator.java +++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupUiMediator.java -@@ -34,6 +34,7 @@ import org.chromium.chrome.browser.collaboration.CollaborationServiceFactory; - import org.chromium.chrome.browser.data_sharing.DataSharingServiceFactory; +@@ -35,6 +35,7 @@ import org.chromium.chrome.browser.data_sharing.DataSharingServiceFactory; + import org.chromium.chrome.browser.data_sharing.ui.shared_image_tiles.SharedImageTilesConfig; import org.chromium.chrome.browser.data_sharing.ui.shared_image_tiles.SharedImageTilesCoordinator; import org.chromium.chrome.browser.layouts.LayoutStateProvider; +import org.chromium.chrome.browser.homepage.HomepageManager; import org.chromium.chrome.browser.layouts.LayoutStateProvider.LayoutStateObserver; import org.chromium.chrome.browser.layouts.LayoutType; import org.chromium.chrome.browser.profiles.Profile; -@@ -401,10 +402,15 @@ public class TabGroupUiMediator implements BackPressHandler, ThemeColorObserver, +@@ -415,10 +416,15 @@ public class TabGroupUiMediator implements BackPressHandler { assert relatedTabs.size() > 0; Tab parentTabToAttach = relatedTabs.get(relatedTabs.size() - 1); @@ -97,7 +97,7 @@ diff --git a/chrome/android/java/res/xml/homepage_preferences.xml b/chrome/andro diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/TabGroupContextMenuCoordinator.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/TabGroupContextMenuCoordinator.java --- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/TabGroupContextMenuCoordinator.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/TabGroupContextMenuCoordinator.java -@@ -66,6 +66,9 @@ import org.chromium.ui.text.EmptyTextWatcher; +@@ -71,6 +71,9 @@ import org.chromium.ui.text.EmptyTextWatcher; import org.chromium.ui.widget.AnchoredPopupWindow.HorizontalOrientation; import org.chromium.ui.widget.RectProvider; @@ -107,9 +107,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over /** * A coordinator for the context menu on the tab strip by long-pressing on the group titles. It is * responsible for creating a list of menu items, setting up the menu and displaying the menu. -@@ -199,9 +202,15 @@ public class TabGroupContextMenuCoordinator extends TabGroupOverflowMenuCoordina +@@ -208,9 +211,15 @@ public class TabGroupContextMenuCoordinator extends TabGroupOverflowMenuCoordina /* didCloseCallback= */ null); - recordUserAction("DeleteGroup"); + RecordUserAction.record("MobileToolbarTabGroupMenu.DeleteGroup"); } else if (menuId == org.chromium.chrome.R.id.open_new_tab_in_group) { + String url = UrlConstants.NTP_URL; + if (UrlConstants.NTP_URL.equals(url) @@ -123,11 +123,11 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over + url, tabId, TabLaunchType.FROM_TAB_GROUP_UI); - recordUserAction("NewTabInGroup"); + RecordUserAction.record("MobileToolbarTabGroupMenu.NewTabInGroup"); diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java --- a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java -@@ -237,6 +237,22 @@ public class HomepageManager +@@ -231,6 +231,22 @@ public class HomepageManager notifyHomepageUpdated(); } @@ -153,7 +153,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/Homepa diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/settings/HomepageSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/homepage/settings/HomepageSettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/homepage/settings/HomepageSettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/homepage/settings/HomepageSettings.java -@@ -24,6 +24,7 @@ import org.chromium.components.browser_ui.settings.SettingsUtils; +@@ -25,6 +25,7 @@ import org.chromium.components.browser_ui.settings.SettingsUtils; import org.chromium.components.embedder_support.util.UrlUtilities; import org.chromium.components.url_formatter.UrlFormatter; import org.chromium.url.GURL; @@ -161,7 +161,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/settin /** Fragment that allows the user to configure homepage related preferences. */ public class HomepageSettings extends ChromeBaseSettingsFragment { -@@ -32,6 +33,8 @@ public class HomepageSettings extends ChromeBaseSettingsFragment { +@@ -33,6 +34,8 @@ public class HomepageSettings extends ChromeBaseSettingsFragment { @VisibleForTesting public static final String PREF_HOMEPAGE_RADIO_GROUP = "homepage_radio_group"; @@ -170,7 +170,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/settin private HomepageManager mHomepageManager; private RadioButtonGroupHomepagePreference mRadioButtons; private final ObservableSupplierImpl mPageTitle = new ObservableSupplierImpl<>(); -@@ -67,6 +70,15 @@ public class HomepageSettings extends ChromeBaseSettingsFragment { +@@ -69,6 +72,15 @@ public class HomepageSettings extends ChromeBaseSettingsFragment { }); mRadioButtons.setupPreferenceValues(createPreferenceValuesForRadioGroup()); @@ -200,15 +200,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/metrics/LaunchM diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java -@@ -24,6 +24,7 @@ import org.chromium.chrome.browser.app.tab_activity_glue.ReparentingTask; +@@ -23,6 +23,7 @@ import org.chromium.chrome.browser.app.tab_activity_glue.ReparentingDelegateFact + import org.chromium.chrome.browser.app.tab_activity_glue.ReparentingTask; import org.chromium.chrome.browser.compositor.CompositorViewHolder; import org.chromium.chrome.browser.flags.ChromeFeatureList; - import org.chromium.chrome.browser.new_tab_url.DseNewTabUrlManager; +import org.chromium.chrome.browser.homepage.HomepageManager; import org.chromium.chrome.browser.prefetch.settings.PreloadPagesSettingsBridge; import org.chromium.chrome.browser.prefetch.settings.PreloadPagesState; import org.chromium.chrome.browser.profiles.Profile; -@@ -487,6 +488,13 @@ public class ChromeTabCreator extends TabCreator { +@@ -530,6 +531,13 @@ public class ChromeTabCreator extends TabCreator * @return the created tab. */ public Tab launchUrl(String url, @TabLaunchType int type, Intent intent, long intentTimestamp) { @@ -225,7 +225,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java --- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java +++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java -@@ -299,6 +299,7 @@ public final class ChromePreferenceKeys { +@@ -326,6 +326,7 @@ public final class ChromePreferenceKeys { public static final String HOMEPAGE_USE_CHROME_NTP = "Chrome.Homepage.UseNTP"; public static final String HOMEPAGE_USE_DEFAULT_URI = "homepage_partner_enabled"; @@ -236,7 +236,7 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java --- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java +++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java -@@ -61,6 +61,7 @@ public class LegacyChromePreferenceKeys { +@@ -60,6 +60,7 @@ public class LegacyChromePreferenceKeys { ChromePreferenceKeys.HISTORY_SHOW_HISTORY_INFO, ChromePreferenceKeys.HOMEPAGE_ENABLED, ChromePreferenceKeys.HOMEPAGE_USE_DEFAULT_URI, @@ -247,7 +247,7 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd -@@ -1492,6 +1492,9 @@ Your Google account may have other forms of browsing history like searches and a +@@ -1480,6 +1480,9 @@ Your Google account may have other forms of browsing history like searches and a Last hour @@ -260,10 +260,10 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro 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 -@@ -90,6 +90,8 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistrySyncable* registry) { - registry->RegisterBooleanPref( - prefs::kShowForwardButton, true, - GetHomeAndForwardButtonAndHomePageIsNewTabPageFlags()); +@@ -107,6 +107,8 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistrySyncable* registry) { + + registry->RegisterBooleanPref(prefs::kPinSplitTabButton, false, + pref_registration_flags); + registry->RegisterBooleanPref(prefs::kNewTabPageIsHomePage, false, + PrefRegistry::NO_REGISTRATION_FLAGS); @@ -272,7 +272,7 @@ diff --git a/chrome/browser/ui/browser_ui_prefs.cc b/chrome/browser/ui/browser_u diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h --- a/chrome/common/pref_names.h +++ b/chrome/common/pref_names.h -@@ -1319,6 +1319,10 @@ inline constexpr char kShowForwardButton[] = "browser.show_forward_button"; +@@ -1328,6 +1328,10 @@ inline constexpr char kPinSplitTabButton[] = "browser.pin_split_tab_button"; // by enterprise policy. inline constexpr char kGeminiSettings[] = "browser.gemini_settings"; diff --git a/build/cromite_patches/Add-search-engine.patch b/build/cromite_patches/Add-search-engine.patch index 26d7de69..752b62e8 100644 --- a/build/cromite_patches/Add-search-engine.patch +++ b/build/cromite_patches/Add-search-engine.patch @@ -9,20 +9,18 @@ Add DuckDuckGo Lite License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html --- .../search_engine_choice/default_favicon.png | Bin 0 -> 903 bytes - ...search_engine_choice_scaled_resources.grdp | 1 + components/search_engines/BUILD.gn | 3 ++ components/search_engines/cromite/BUILD.gn | 12 ++++++ .../cromite/cromite_prepopulated_engines.json | 37 ++++++++++++++++++ .../search_engine_choice_utils.cc | 5 +-- - .../search_engine_countries-inc.cc | 2 + .../search_engines/search_engine_type.h | 5 +++ - .../template_url_prepopulate_data.cc | 3 +- - .../template_url_prepopulate_data.h | 7 ---- + .../template_url_prepopulate_data.cc | 21 +++++++++- + .../template_url_prepopulate_data.h | 9 ----- tools/json_to_struct/json_to_struct.gni | 9 +++++ tools/json_to_struct/json_to_struct.py | 26 ++++++++---- tools/json_to_struct/struct_generator.py | 10 +++-- tools/variations/fieldtrial_to_struct.py | 4 +- - 14 files changed, 99 insertions(+), 25 deletions(-) + 12 files changed, 113 insertions(+), 28 deletions(-) create mode 100644 components/resources/default_100_percent/search_engine_choice/default_favicon.png create mode 100644 components/search_engines/cromite/BUILD.gn create mode 100644 components/search_engines/cromite/cromite_prepopulated_engines.json @@ -54,17 +52,6 @@ d#;kFnu^?NN9uE_uZ002ovPDHLkV1m60sc!%P literal 0 HcmV?d00001 -diff --git a/components/resources/search_engine_choice_scaled_resources.grdp b/components/resources/search_engine_choice_scaled_resources.grdp ---- a/components/resources/search_engine_choice_scaled_resources.grdp -+++ b/components/resources/search_engine_choice_scaled_resources.grdp -@@ -5,6 +5,7 @@ - - - -+ - - - diff --git a/components/search_engines/BUILD.gn b/components/search_engines/BUILD.gn --- a/components/search_engines/BUILD.gn +++ b/components/search_engines/BUILD.gn @@ -76,7 +63,7 @@ diff --git a/components/search_engines/BUILD.gn b/components/search_engines/BUIL ] deps = [ -@@ -157,6 +158,7 @@ source_set("search_engine_utils") { +@@ -163,6 +164,7 @@ source_set("search_engine_utils") { ":search_engine_type", "//components/google/core/common", "//third_party/search_engines_data:prepopulated_engines", @@ -84,7 +71,7 @@ diff --git a/components/search_engines/BUILD.gn b/components/search_engines/BUIL ] deps = [ "//url" ] -@@ -237,6 +239,7 @@ source_set("unit_tests") { +@@ -252,6 +254,7 @@ source_set("unit_tests") { "//testing/gmock", "//testing/gtest", "//third_party/search_engines_data:prepopulated_engines", @@ -166,29 +153,19 @@ diff --git a/components/search_engines/search_engine_choice/search_engine_choice } void RecordChoiceScreenPositionsCountryMismatch(bool has_mismatch) { -diff --git a/components/search_engines/search_engine_countries-inc.cc b/components/search_engines/search_engine_countries-inc.cc ---- a/components/search_engines/search_engine_countries-inc.cc -+++ b/components/search_engines/search_engine_countries-inc.cc -@@ -1453,5 +1453,7 @@ const std::vector GetPrepopulationSetFromCountryID( - for (size_t i = 0; i < num_engines; i++) { - t_url.push_back(engines[i]); - } -+ t_url.push_back({SearchEngineTier::kTopEngines, &googleen}); -+ t_url.push_back({SearchEngineTier::kTopEngines, &duckduckgo_light}); - return t_url; - } diff --git a/components/search_engines/search_engine_type.h b/components/search_engines/search_engine_type.h --- a/components/search_engines/search_engine_type.h +++ b/components/search_engines/search_engine_type.h -@@ -94,10 +94,15 @@ enum SearchEngineType { - SEARCH_ENGINE_STARTPAGE = 75, - SEARCH_ENGINE_STARTER_PACK_PAGE = 76, +@@ -97,11 +97,16 @@ enum SearchEngineType { SEARCH_ENGINE_MCAFEE = 77, -+ SEARCH_ENGINE_GOOGLE_EN = 78, -+ SEARCH_ENGINE_DUCKDUCKGOLIGHT = 79, + SEARCH_ENGINE_FREESPOKE = 78, + SEARCH_ENGINE_KAGI = 79, ++ SEARCH_ENGINE_GOOGLE_EN = 80, ++ SEARCH_ENGINE_DUCKDUCKGOLIGHT = 81, SEARCH_ENGINE_MAX // Bounding value needed for UMA histogram macro. }; + // LINT.ThenChange(//tools/metrics/histograms/enums.xml:OmniboxSearchEngineType) +static_assert(SEARCH_ENGINE_DUCKDUCKGOLIGHT == (SEARCH_ENGINE_MAX - 1), + "Please check this patch"); @@ -200,7 +177,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon --- a/components/search_engines/template_url_prepopulate_data.cc +++ b/components/search_engines/template_url_prepopulate_data.cc @@ -28,6 +28,8 @@ - #include "components/version_info/version_info.h" + #include "components/search_engines/template_url_data_util.h" #include "third_party/search_engines_data/resources/definitions/prepopulated_engines.h" +#include "components/search_engines/cromite/cromite_prepopulated_engines.h" @@ -208,18 +185,52 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon namespace TemplateURLPrepopulateData { // Helpers -------------------------------------------------------------------- -@@ -67,7 +69,6 @@ GetPrepopulatedEnginesForEeaRegionCountries(CountryID country_id, - generator.seed(profile_seed); - std::shuffle(t_urls.begin(), t_urls.end(), generator); +@@ -123,7 +125,7 @@ int GetDataVersion(PrefService* prefs) { + kCurrentDataVersion; + } -- CHECK_LE(t_urls.size(), kMaxEeaPrepopulatedEngines); - return t_urls; +-std::vector> GetPrepopulatedEngines( ++std::vector> GetPrepopulatedEnginesChromium( + PrefService& prefs, + std::vector + regional_prepopulated_engines) { +@@ -139,6 +141,17 @@ std::vector> GetPrepopulatedEngines( + &PrepopulatedEngineToTemplateURLData); } ++std::vector> GetPrepopulatedEngines( ++ PrefService& prefs, ++ std::vector ++ regional_prepopulated_engines) { ++ std::vector> t_urls = ++ GetPrepopulatedEnginesChromium(prefs, regional_prepopulated_engines); ++ t_urls.push_back(TemplateURLDataFromPrepopulatedEngine(googleen)); ++ t_urls.push_back(TemplateURLDataFromPrepopulatedEngine(duckduckgo_light)); ++ return t_urls; ++} ++ + std::unique_ptr GetPrepopulatedEngine( + PrefService& prefs, + std::vector +@@ -160,9 +173,13 @@ std::vector> GetLocalPrepopulatedEngines( + return std::vector>(); + } + +- return base::ToVector( ++ std::vector> t_urls = ++ base::ToVector( + regional_capabilities::GetPrepopulatedEngines(country_id, prefs), + &PrepopulatedEngineToTemplateURLData); ++ t_urls.push_back(TemplateURLDataFromPrepopulatedEngine(googleen)); ++ t_urls.push_back(TemplateURLDataFromPrepopulatedEngine(duckduckgo_light)); ++ return t_urls; + } + + #endif diff --git a/components/search_engines/template_url_prepopulate_data.h b/components/search_engines/template_url_prepopulate_data.h --- a/components/search_engines/template_url_prepopulate_data.h +++ b/components/search_engines/template_url_prepopulate_data.h -@@ -31,13 +31,6 @@ struct PrepopulatedEngine; +@@ -27,15 +27,6 @@ struct PrepopulatedEngine; extern const int kMaxPrepopulatedEngineID; @@ -228,15 +239,17 @@ diff --git a/components/search_engines/template_url_prepopulate_data.h b/compone -// -// Note: If this is increased, please also increase the declared variant count -// for the `Search.ChoiceScreenShowedEngineAt.Index{Index}` histogram. +-// TODO(crbug.com/408932087): Investigate moving it to the file that actually +-// populates these, `//c/regional_capabilities/r*c*_util.cc`. -inline constexpr size_t kMaxEeaPrepopulatedEngines = 8; - // The maximum number of prepopulated search engines that can be returned in // in the rest of the world by `GetPrepopulatedEngines()`. - inline constexpr size_t kMaxRowPrepopulatedEngines = 5; + // TODO(crbug.com/408932087): Investigate deduping it with the constant diff --git a/tools/json_to_struct/json_to_struct.gni b/tools/json_to_struct/json_to_struct.gni --- a/tools/json_to_struct/json_to_struct.gni +++ b/tools/json_to_struct/json_to_struct.gni -@@ -25,6 +25,11 @@ template("json_to_struct") { +@@ -39,6 +39,11 @@ template("json_to_struct") { action_name = target_name + "_action" source_set_name = target_name @@ -247,8 +260,8 @@ diff --git a/tools/json_to_struct/json_to_struct.gni b/tools/json_to_struct/json + action(action_name) { visibility = [ ":$source_set_name" ] - script = "//tools/json_to_struct/json_to_struct.py" -@@ -49,6 +54,10 @@ template("json_to_struct") { + script = "//build/gn_run_binary.py" +@@ -63,6 +68,10 @@ template("json_to_struct") { "--namespace=" + invoker.namespace, "--schema=" + rebase_path(invoker.schema_file, root_build_dir), ] @@ -262,7 +275,7 @@ diff --git a/tools/json_to_struct/json_to_struct.gni b/tools/json_to_struct/json diff --git a/tools/json_to_struct/json_to_struct.py b/tools/json_to_struct/json_to_struct.py --- a/tools/json_to_struct/json_to_struct.py +++ b/tools/json_to_struct/json_to_struct.py -@@ -97,7 +97,7 @@ def _GenerateHeaderGuard(h_filename): +@@ -103,7 +103,7 @@ def _GenerateHeaderGuard(h_filename): return re.sub(u'^_*', '', result) + u'_' # Remove leading underscores. @@ -271,7 +284,7 @@ diff --git a/tools/json_to_struct/json_to_struct.py b/tools/json_to_struct/json_ """Generates the .h file containing the definition of the structure specified by the schema. -@@ -133,11 +133,15 @@ def _GenerateH(basepath, fileroot, head, namespace, schema, description): +@@ -147,11 +147,15 @@ def _GenerateH(basepath, fileroot, head, namespace, schema, description): f.write(u'#include "%s"\n' % header) f.write(u'\n') @@ -288,7 +301,7 @@ diff --git a/tools/json_to_struct/json_to_struct.py b/tools/json_to_struct/json_ schema['type_name'], schema['schema'])) f.write(u'\n') -@@ -162,7 +166,7 @@ def _GenerateH(basepath, fileroot, head, namespace, schema, description): +@@ -176,7 +180,7 @@ def _GenerateH(basepath, fileroot, head, namespace, schema, description): f.write(u'#endif // %s\n' % header_guard) @@ -297,16 +310,16 @@ diff --git a/tools/json_to_struct/json_to_struct.py b/tools/json_to_struct/json_ """Generates the .cc file containing the static initializers for the of the elements specified in the description. -@@ -191,7 +195,7 @@ def _GenerateCC(basepath, fileroot, head, namespace, schema, description): +@@ -211,7 +215,7 @@ def _GenerateCC(basepath, fileroot, head, namespace, schema, description): f.write(element_generator.GenerateElements(schema['type_name'], schema['schema'], description)) -- if 'generate_array' in description: -+ if excludetype == False and 'generate_array' in description: - f.write(u'\n') - f.write( - u'const %s* const array_%s[] = {\n' % -@@ -283,7 +287,7 @@ def GenerateClass(basepath, +- if not aggregation.export_items: ++ if excludetype == False and not aggregation.export_items: + f.write('\n} // anonymous namespace \n\n') + + aggregated = GenerateCCAggregation(schema['type_name'], aggregation) +@@ -298,7 +302,7 @@ def GenerateClass(basepath, def GenerateStruct(basepath, output_root, namespace, schema, description, @@ -315,7 +328,7 @@ diff --git a/tools/json_to_struct/json_to_struct.py b/tools/json_to_struct/json_ """Generates a C++ struct from a JSON description. Args: -@@ -302,8 +306,8 @@ def GenerateStruct(basepath, output_root, namespace, schema, description, +@@ -317,8 +321,8 @@ def GenerateStruct(basepath, output_root, namespace, schema, description, """ year = int(year) if year else datetime.now().year head = HEAD % (year, schema_filename, description_filename) @@ -326,7 +339,7 @@ diff --git a/tools/json_to_struct/json_to_struct.py b/tools/json_to_struct/json_ if __name__ == '__main__': parser = optparse.OptionParser( -@@ -318,11 +322,17 @@ if __name__ == '__main__': +@@ -333,11 +337,17 @@ if __name__ == '__main__': parser.add_option('-s', '--schema', help='path to the schema file, ' 'mandatory.') parser.add_option('-o', '--output', help='output filename, ') @@ -344,7 +357,7 @@ diff --git a/tools/json_to_struct/json_to_struct.py b/tools/json_to_struct/json_ description_filename = os.path.normpath(args[0]) root, ext = os.path.splitext(description_filename) shortroot = opts.output if opts.output else os.path.split(root)[1] -@@ -339,4 +349,4 @@ if __name__ == '__main__': +@@ -354,4 +364,4 @@ if __name__ == '__main__': schema = _Load(opts.schema) description = _Load(description_filename) GenerateStruct(basepath, output_root, opts.namespace, schema, description, @@ -384,7 +397,7 @@ diff --git a/tools/json_to_struct/struct_generator.py b/tools/json_to_struct/str diff --git a/tools/variations/fieldtrial_to_struct.py b/tools/variations/fieldtrial_to_struct.py --- a/tools/variations/fieldtrial_to_struct.py +++ b/tools/variations/fieldtrial_to_struct.py -@@ -232,14 +232,14 @@ def main(arguments): +@@ -235,14 +235,14 @@ def main(arguments): json_to_struct.GenerateStruct( basepath, output_root, opts.namespace, schema, description, os.path.split(description_filename)[1], os.path.split(opts.schema)[1], diff --git a/build/cromite_patches/Add-site-engagement-flag.patch b/build/cromite_patches/Add-site-engagement-flag.patch index add02cd5..22444d6f 100644 --- a/build/cromite_patches/Add-site-engagement-flag.patch +++ b/build/cromite_patches/Add-site-engagement-flag.patch @@ -24,7 +24,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -161,6 +161,7 @@ +@@ -164,6 +164,7 @@ #include "components/sensitive_content/features.h" #include "components/services/heap_profiling/public/cpp/switches.h" #include "components/services/storage/public/cpp/buckets/bucket_info.h" @@ -35,7 +35,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc diff --git a/chrome/browser/engagement/important_sites_util.cc b/chrome/browser/engagement/important_sites_util.cc --- a/chrome/browser/engagement/important_sites_util.cc +++ b/chrome/browser/engagement/important_sites_util.cc -@@ -32,6 +32,7 @@ +@@ -31,6 +31,7 @@ #include "components/prefs/scoped_user_pref_update.h" #include "components/site_engagement/content/site_engagement_score.h" #include "components/site_engagement/content/site_engagement_service.h" @@ -43,7 +43,7 @@ diff --git a/chrome/browser/engagement/important_sites_util.cc b/chrome/browser/ #include "components/site_engagement/core/mojom/site_engagement_details.mojom.h" #include "components/webapps/browser/banners/app_banner_settings_helper.h" #include "net/base/registry_controlled_domains/registry_controlled_domain.h" -@@ -349,6 +350,10 @@ void ImportantSitesUtil::RegisterProfilePrefs( +@@ -344,6 +345,10 @@ void ImportantSitesUtil::RegisterProfilePrefs( // static std::set ImportantSitesUtil::GetInstalledRegisterableDomains( Profile* profile) { @@ -54,7 +54,7 @@ diff --git a/chrome/browser/engagement/important_sites_util.cc b/chrome/browser/ std::set installed_origins = GetOriginsWithInstalledWebApps(profile); std::set registerable_domains; -@@ -363,6 +368,10 @@ std::vector +@@ -358,6 +363,10 @@ std::vector ImportantSitesUtil::GetImportantRegisterableDomains(Profile* profile, size_t max_results) { SCOPED_UMA_HISTOGRAM_TIMER("Storage.ImportantSites.GenerationTime"); diff --git a/build/cromite_patches/Add-support-for-ISupportHelpAndFeedback.patch b/build/cromite_patches/Add-support-for-ISupportHelpAndFeedback.patch index 9aa51e14..bb1088fc 100644 --- a/build/cromite_patches/Add-support-for-ISupportHelpAndFeedback.patch +++ b/build/cromite_patches/Add-support-for-ISupportHelpAndFeedback.patch @@ -12,15 +12,15 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java -@@ -55,6 +55,7 @@ import org.chromium.chrome.browser.ui.messages.snackbar.Snackbar; +@@ -56,6 +56,7 @@ import org.chromium.chrome.browser.ui.messages.snackbar.Snackbar; import org.chromium.components.browser_ui.bottomsheet.BottomSheetController; import org.chromium.components.browser_ui.bottomsheet.BottomSheetControllerFactory; import org.chromium.components.browser_ui.bottomsheet.ManagedBottomSheetController; +import org.chromium.components.browser_ui.settings.SettingsUtils; import org.chromium.components.browser_ui.modaldialog.AppModalPresenter; import org.chromium.components.browser_ui.settings.EmbeddableSettingsPage; - import org.chromium.components.browser_ui.util.TraceEventVectorDrawableCompat; -@@ -441,8 +442,12 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity + import org.chromium.components.browser_ui.settings.SettingsFragment; +@@ -466,8 +467,12 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity finishCurrentSettings(mainFragment); return true; } else if (item.getItemId() == R.id.menu_id_general_help) { @@ -38,13 +38,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Settin diff --git a/components/browser_ui/settings/android/java/src/org/chromium/components/browser_ui/settings/SettingsUtils.java b/components/browser_ui/settings/android/java/src/org/chromium/components/browser_ui/settings/SettingsUtils.java --- a/components/browser_ui/settings/android/java/src/org/chromium/components/browser_ui/settings/SettingsUtils.java +++ b/components/browser_ui/settings/android/java/src/org/chromium/components/browser_ui/settings/SettingsUtils.java -@@ -93,4 +93,8 @@ public class SettingsUtils { - ToolbarUtils.setOverflowMenuVisibility(toolbar, visibility); - return true; - } -+ +@@ -28,6 +28,10 @@ import org.chromium.ui.drawable.StateListDrawableBuilder; + /** A helper class for Settings. */ + @NullMarked + public class SettingsUtils { + public interface ISupportHelpAndFeedback { + void onHelpAndFeebackPressed(); + } - } ++ + /** + * A helper that is used to load preferences from XML resources without causing a + * StrictModeViolation. See http://crbug.com/692125. -- diff --git a/build/cromite_patches/Add-support-for-writing-URIs.patch b/build/cromite_patches/Add-support-for-writing-URIs.patch index 4b184814..e1041e0d 100644 --- a/build/cromite_patches/Add-support-for-writing-URIs.patch +++ b/build/cromite_patches/Add-support-for-writing-URIs.patch @@ -9,13 +9,13 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html --- base/android/content_uri_utils.cc | 10 ++++++ base/android/content_uri_utils.h | 4 +++ - .../org/chromium/base/ContentUriUtils.java | 34 +++++++++++++++++++ - 3 files changed, 48 insertions(+) + .../org/chromium/base/ContentUriUtils.java | 33 +++++++++++++++++++ + 3 files changed, 47 insertions(+) diff --git a/base/android/content_uri_utils.cc b/base/android/content_uri_utils.cc --- a/base/android/content_uri_utils.cc +++ b/base/android/content_uri_utils.cc -@@ -119,6 +119,16 @@ void JNI_ContentUriUtils_AddFileInfoToVector(JNIEnv* env, +@@ -134,6 +134,16 @@ void JNI_ContentUriUtils_AddFileInfoToVector(JNIEnv* env, Time::FromMillisecondsSinceUnixEpoch(last_modified)); } @@ -35,9 +35,9 @@ diff --git a/base/android/content_uri_utils.cc b/base/android/content_uri_utils. diff --git a/base/android/content_uri_utils.h b/base/android/content_uri_utils.h --- a/base/android/content_uri_utils.h +++ b/base/android/content_uri_utils.h -@@ -33,6 +33,10 @@ BASE_EXPORT std::optional TranslateOpenFlagsToJavaMode( - // Returns -1 if the URI is invalid. - int OpenContentUri(const FilePath& content_uri, uint32_t open_flags); +@@ -46,6 +46,10 @@ int ContentUriGetFd( + void ContentUriClose( + const base::android::JavaRef& java_parcel_file_descriptor); +// Opens a content URI for write and returns the file descriptor to the caller. +// Returns -1 if the URI is invalid. @@ -49,15 +49,7 @@ diff --git a/base/android/content_uri_utils.h b/base/android/content_uri_utils.h diff --git a/base/android/java/src/org/chromium/base/ContentUriUtils.java b/base/android/java/src/org/chromium/base/ContentUriUtils.java --- a/base/android/java/src/org/chromium/base/ContentUriUtils.java +++ b/base/android/java/src/org/chromium/base/ContentUriUtils.java -@@ -12,6 +12,7 @@ import android.content.res.AssetFileDescriptor; - import android.database.Cursor; - import android.net.Uri; - import android.os.Build; -+import android.os.ParcelFileDescriptor; - import android.provider.DocumentsContract; - import android.provider.MediaStore; - import android.text.TextUtils; -@@ -30,6 +31,9 @@ import org.chromium.build.annotations.Nullable; +@@ -31,6 +31,9 @@ import org.chromium.build.annotations.Nullable; import java.io.IOException; import java.util.List; @@ -67,8 +59,8 @@ diff --git a/base/android/java/src/org/chromium/base/ContentUriUtils.java b/base /** This class provides methods to access content URI schemes. */ @JNINamespace("base") @NullMarked -@@ -64,6 +68,36 @@ public abstract class ContentUriUtils { - return -1; +@@ -72,6 +75,36 @@ public abstract class ContentUriUtils { + StreamUtil.closeQuietly(parcelFileDescriptor); } + @CalledByNative diff --git a/build/cromite_patches/Add-webGL-site-setting.patch b/build/cromite_patches/Add-webGL-site-setting.patch index ee7d0d32..615e1671 100644 --- a/build/cromite_patches/Add-webGL-site-setting.patch +++ b/build/cromite_patches/Add-webGL-site-setting.patch @@ -189,7 +189,7 @@ new file mode 100644 diff --git a/third_party/blink/renderer/core/execution_context/execution_context.cc b/third_party/blink/renderer/core/execution_context/execution_context.cc --- a/third_party/blink/renderer/core/execution_context/execution_context.cc +++ b/third_party/blink/renderer/core/execution_context/execution_context.cc -@@ -85,6 +85,13 @@ blink::WebContentSettingsClient* GetContentSettingsClientFor( +@@ -86,6 +86,13 @@ blink::WebContentSettingsClient* GetContentSettingsClientFor( return settings; } @@ -218,7 +218,7 @@ diff --git a/third_party/blink/renderer/core/execution_context/execution_context diff --git a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc --- a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc +++ b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc -@@ -299,6 +299,13 @@ void WebGLRenderingContextBase::InitializeWebGLContextLimits( +@@ -339,6 +339,13 @@ void WebGLRenderingContextBase::InitializeWebGLContextLimits( } } @@ -232,7 +232,7 @@ diff --git a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_ba unsigned WebGLRenderingContextBase::CurrentMaxGLContexts() { base::AutoLock locker(WebGLContextLimitLock()); DCHECK(webgl_context_limits_initialized_); -@@ -568,25 +575,6 @@ static String ExtractWebGLContextCreationError( +@@ -608,25 +615,6 @@ static String ExtractWebGLContextCreationError( const Platform::GraphicsInfo& info) { StringBuilder builder; builder.Append("Could not create a WebGL context"); @@ -258,7 +258,7 @@ diff --git a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_ba FormatWebGLStatusString("ErrorMessage", info.error_message.Utf8().c_str(), builder); builder.Append('.'); -@@ -646,6 +634,12 @@ WebGLRenderingContextBase::CreateWebGraphicsContext3DProvider( +@@ -686,6 +674,12 @@ WebGLRenderingContextBase::CreateWebGraphicsContext3DProvider( const CanvasContextCreationAttributesCore& attributes, Platform::ContextType context_type, Platform::GraphicsInfo* graphics_info) { @@ -274,7 +274,7 @@ diff --git a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_ba diff --git a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.h b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.h --- a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.h +++ b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.h -@@ -1931,6 +1931,8 @@ class MODULES_EXPORT WebGLRenderingContextBase : public CanvasRenderingContext, +@@ -1932,6 +1932,8 @@ class MODULES_EXPORT WebGLRenderingContextBase DOMArrayBufferView* pixels, int64_t offset); diff --git a/build/cromite_patches/Add-webRTC-site-settings.patch b/build/cromite_patches/Add-webRTC-site-settings.patch index 4009e2b6..07e95cad 100644 --- a/build/cromite_patches/Add-webRTC-site-settings.patch +++ b/build/cromite_patches/Add-webRTC-site-settings.patch @@ -210,7 +210,7 @@ diff --git a/third_party/blink/renderer/modules/peerconnection/peer_connection_d diff --git a/third_party/blink/renderer/modules/peerconnection/rtc_rtp_receiver.cc b/third_party/blink/renderer/modules/peerconnection/rtc_rtp_receiver.cc --- a/third_party/blink/renderer/modules/peerconnection/rtc_rtp_receiver.cc +++ b/third_party/blink/renderer/modules/peerconnection/rtc_rtp_receiver.cc -@@ -14,6 +14,8 @@ +@@ -16,6 +16,8 @@ #include "third_party/blink/public/common/privacy_budget/identifiable_surface.h" #include "third_party/blink/public/common/privacy_budget/identifiable_token_builder.h" #include "third_party/blink/public/platform/modules/webrtc/webrtc_logging.h" @@ -219,7 +219,7 @@ diff --git a/third_party/blink/renderer/modules/peerconnection/rtc_rtp_receiver. #include "third_party/blink/renderer/bindings/core/v8/script_promise_resolver.h" #include "third_party/blink/renderer/bindings/modules/v8/v8_rtc_insertable_streams.h" #include "third_party/blink/renderer/bindings/modules/v8/v8_rtc_rtcp_parameters.h" -@@ -286,6 +288,14 @@ RTCRtpCapabilities* RTCRtpReceiver::getCapabilities(ScriptState* state, +@@ -288,6 +290,14 @@ RTCRtpCapabilities* RTCRtpReceiver::getCapabilities(ScriptState* state, if (kind != "audio" && kind != "video") return nullptr; @@ -237,7 +237,7 @@ diff --git a/third_party/blink/renderer/modules/peerconnection/rtc_rtp_receiver. diff --git a/third_party/blink/renderer/modules/peerconnection/rtc_rtp_sender.cc b/third_party/blink/renderer/modules/peerconnection/rtc_rtp_sender.cc --- a/third_party/blink/renderer/modules/peerconnection/rtc_rtp_sender.cc +++ b/third_party/blink/renderer/modules/peerconnection/rtc_rtp_sender.cc -@@ -19,6 +19,8 @@ +@@ -21,6 +21,8 @@ #include "third_party/blink/public/common/privacy_budget/identifiable_surface.h" #include "third_party/blink/public/common/privacy_budget/identifiable_token_builder.h" #include "third_party/blink/public/platform/modules/webrtc/webrtc_logging.h" @@ -246,7 +246,7 @@ diff --git a/third_party/blink/renderer/modules/peerconnection/rtc_rtp_sender.cc #include "third_party/blink/renderer/bindings/core/v8/script_promise_resolver.h" #include "third_party/blink/renderer/bindings/modules/v8/v8_rtc_encoding_options.h" #include "third_party/blink/renderer/bindings/modules/v8/v8_rtc_insertable_streams.h" -@@ -1033,6 +1035,14 @@ RTCRtpCapabilities* RTCRtpSender::getCapabilities(ScriptState* state, +@@ -1035,6 +1037,14 @@ RTCRtpCapabilities* RTCRtpSender::getCapabilities(ScriptState* state, if (kind != "audio" && kind != "video") return nullptr; diff --git a/build/cromite_patches/Allow-building-without-enable_reporting.patch b/build/cromite_patches/Allow-building-without-enable_reporting.patch index e5589892..9c00afe7 100644 --- a/build/cromite_patches/Allow-building-without-enable_reporting.patch +++ b/build/cromite_patches/Allow-building-without-enable_reporting.patch @@ -10,7 +10,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../browser/network/reporting_service_proxy.cc | 3 +++ .../renderer_host/render_frame_host_impl.cc | 6 ------ .../coop/cross_origin_opener_policy_reporter.cc | 16 +++++++--------- - .../dip/document_isolation_policy_reporter.cc | 2 ++ + .../dip/document_isolation_policy_reporter.cc | 3 +++ .../web_package/signed_exchange_reporter.cc | 2 ++ ...content_switch_dependent_feature_overrides.cc | 1 + .../Allow-building-without-enable_reporting.inc | 2 ++ @@ -26,7 +26,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../renderer/core/frame/reporting_context.cc | 9 +++++++++ .../renderer/core/frame/reporting_context.h | 7 +++++-- .../renderer/core/frame/reporting_observer.cc | 3 +-- - 22 files changed, 63 insertions(+), 25 deletions(-) + 22 files changed, 64 insertions(+), 25 deletions(-) create mode 100644 cromite_flags/services/network/public/cpp/features_cc/Allow-building-without-enable_reporting.inc diff --git a/chrome/browser/net/chrome_report_sender.cc b/chrome/browser/net/chrome_report_sender.cc @@ -43,7 +43,7 @@ diff --git a/chrome/browser/net/chrome_report_sender.cc b/chrome/browser/net/chr diff --git a/content/browser/devtools/protocol/network_handler.cc b/content/browser/devtools/protocol/network_handler.cc --- a/content/browser/devtools/protocol/network_handler.cc +++ b/content/browser/devtools/protocol/network_handler.cc -@@ -1474,6 +1474,7 @@ String BuildReportStatus(const net::ReportingReport::Status status) { +@@ -1484,6 +1484,7 @@ String BuildReportStatus(const net::ReportingReport::Status status) { } } @@ -51,7 +51,7 @@ diff --git a/content/browser/devtools/protocol/network_handler.cc b/content/brow std::vector ComputeReportingURLs(RenderFrameHostImpl* frame_host) { std::vector urls; frame_host->ForEachRenderFrameHostImplWithAction( -@@ -1487,6 +1488,7 @@ std::vector ComputeReportingURLs(RenderFrameHostImpl* frame_host) { +@@ -1497,6 +1498,7 @@ std::vector ComputeReportingURLs(RenderFrameHostImpl* frame_host) { }); return urls; } @@ -108,7 +108,7 @@ diff --git a/content/browser/network/reporting_service_proxy.cc b/content/browse #include "content/browser/service_worker/service_worker_host.h" #include "content/browser/worker_host/dedicated_worker_host.h" #include "content/browser/worker_host/shared_worker_host.h" -@@ -226,12 +227,14 @@ class ReportingServiceProxyImpl : public blink::mojom::ReportingServiceProxy { +@@ -240,12 +241,14 @@ class ReportingServiceProxyImpl : public blink::mojom::ReportingServiceProxy { const std::string& group, const std::string& type, base::Value::Dict body) { @@ -126,14 +126,14 @@ diff --git a/content/browser/network/reporting_service_proxy.cc b/content/browse diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc --- a/content/browser/renderer_host/render_frame_host_impl.cc +++ b/content/browser/renderer_host/render_frame_host_impl.cc -@@ -15759,12 +15759,6 @@ void RenderFrameHostImpl::MaybeGenerateCrashReport( +@@ -15928,12 +15928,6 @@ void RenderFrameHostImpl::MaybeGenerateCrashReport( } } } - - // Send the crash report to the Reporting API. - GetProcess()->GetStoragePartition()->GetNetworkContext()->QueueReport( -- /*type=*/"crash", /*group=*/"default", last_committed_url_, +- /*type=*/"crash", crash_reporting_group_, last_committed_url_, - GetReportingSource(), isolation_info_.network_anonymization_key(), - std::move(body)); } @@ -177,7 +177,7 @@ diff --git a/content/browser/security/coop/cross_origin_opener_policy_reporter.c std::string ToString(network::mojom::CrossOriginOpenerPolicyValue coop_value) { switch (coop_value) { case network::mojom::CrossOriginOpenerPolicyValue::kUnsafeNone: -@@ -64,6 +57,7 @@ std::string ToString(network::mojom::CrossOriginOpenerPolicyValue coop_value) { +@@ -59,6 +52,7 @@ std::string ToString(network::mojom::CrossOriginOpenerPolicyValue coop_value) { return "noopener-allow-popups"; } } @@ -185,7 +185,7 @@ diff --git a/content/browser/security/coop/cross_origin_opener_policy_reporter.c FrameTreeNode* TopLevelOpener(FrameTreeNode* frame) { FrameTreeNode* opener = -@@ -235,6 +229,7 @@ void CrossOriginOpenerPolicyReporter::QueueAccessReport( +@@ -230,6 +224,7 @@ void CrossOriginOpenerPolicyReporter::QueueAccessReport( network::mojom::SourceLocationPtr source_location, const std::string& reported_window_url, const std::string& initial_popup_url) const { @@ -193,7 +193,7 @@ diff --git a/content/browser/security/coop/cross_origin_opener_policy_reporter.c // Cross-Origin-Opener-Policy-Report-Only is not required to provide // endpoints. if (!coop_.report_only_reporting_endpoint) -@@ -282,12 +277,14 @@ void CrossOriginOpenerPolicyReporter::QueueAccessReport( +@@ -277,12 +272,14 @@ void CrossOriginOpenerPolicyReporter::QueueAccessReport( storage_partition_->GetNetworkContext()->QueueReport( "coop", endpoint, context_url_, reporting_source_, network_anonymization_key_, std::move(body)); @@ -208,7 +208,7 @@ diff --git a/content/browser/security/coop/cross_origin_opener_policy_reporter.c body.Set(kDisposition, is_report_only ? kDispositionReporting : kDispositionEnforce); body.Set(kEffectivePolicy, -@@ -295,6 +292,7 @@ void CrossOriginOpenerPolicyReporter::QueueNavigationReport( +@@ -290,6 +287,7 @@ void CrossOriginOpenerPolicyReporter::QueueNavigationReport( storage_partition_->GetNetworkContext()->QueueReport( "coop", endpoint, context_url_, reporting_source_, network_anonymization_key_, std::move(body)); @@ -219,7 +219,15 @@ diff --git a/content/browser/security/coop/cross_origin_opener_policy_reporter.c diff --git a/content/browser/security/dip/document_isolation_policy_reporter.cc b/content/browser/security/dip/document_isolation_policy_reporter.cc --- a/content/browser/security/dip/document_isolation_policy_reporter.cc +++ b/content/browser/security/dip/document_isolation_policy_reporter.cc -@@ -94,11 +94,13 @@ void DocumentIsolationPolicyReporter::QueueAndNotify( +@@ -7,6 +7,7 @@ + #include + + #include "base/values.h" ++#include "net/net_buildflags.h" + #include "content/public/browser/storage_partition.h" + #include "services/network/public/cpp/request_destination.h" + #include "services/network/public/mojom/network_context.mojom.h" +@@ -94,11 +95,13 @@ void DocumentIsolationPolicyReporter::QueueAndNotify( } body_to_pass.Set("disposition", disposition); @@ -284,7 +292,7 @@ diff --git a/net/reporting/reporting_header_parser.cc b/net/reporting/reporting_ diff --git a/net/reporting/reporting_service.cc b/net/reporting/reporting_service.cc --- a/net/reporting/reporting_service.cc +++ b/net/reporting/reporting_service.cc -@@ -225,6 +225,12 @@ class ReportingServiceImpl : public ReportingService { +@@ -236,6 +236,12 @@ class ReportingServiceImpl : public ReportingService { int depth, base::TimeTicks queued_ticks, ReportingTargetType target_type) { @@ -295,12 +303,12 @@ diff --git a/net/reporting/reporting_service.cc b/net/reporting/reporting_servic +#error Attempting to build with enable_reporting +#endif DCHECK(initialized_); - context_->cache()->AddReport(reporting_source, network_anonymization_key, - sanitized_url, user_agent, group, type, + context_->cache()->AddReport( + reporting_source, network_anonymization_key, sanitized_url, user_agent, diff --git a/services/network/network_context.h b/services/network/network_context.h --- a/services/network/network_context.h +++ b/services/network/network_context.h -@@ -475,14 +475,14 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext +@@ -486,14 +486,14 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext const GURL& url, const std::optional& reporting_source, const net::NetworkAnonymizationKey& network_anonymization_key, @@ -321,7 +329,7 @@ diff --git a/services/network/network_context.h b/services/network/network_conte diff --git a/services/network/public/cpp/parsed_headers.cc b/services/network/public/cpp/parsed_headers.cc --- a/services/network/public/cpp/parsed_headers.cc +++ b/services/network/public/cpp/parsed_headers.cc -@@ -115,6 +115,7 @@ mojom::ParsedHeadersPtr PopulateParsedHeaders( +@@ -125,6 +125,7 @@ mojom::ParsedHeadersPtr PopulateParsedHeaders( } #if BUILDFLAG(ENABLE_REPORTING) @@ -332,7 +340,7 @@ diff --git a/services/network/public/cpp/parsed_headers.cc b/services/network/pu diff --git a/services/network/public/mojom/BUILD.gn b/services/network/public/mojom/BUILD.gn --- a/services/network/public/mojom/BUILD.gn +++ b/services/network/public/mojom/BUILD.gn -@@ -1668,7 +1668,6 @@ mojom("mojom") { +@@ -1791,7 +1791,6 @@ mojom("mojom") { export_define_blink = "BLINK_PLATFORM_IMPLEMENTATION=1" export_header_blink = "third_party/blink/public/platform/web_common.h" if (enable_reporting) { @@ -343,7 +351,7 @@ diff --git a/services/network/public/mojom/BUILD.gn b/services/network/public/mo diff --git a/services/network/public/mojom/network_context.mojom b/services/network/public/mojom/network_context.mojom --- a/services/network/public/mojom/network_context.mojom +++ b/services/network/public/mojom/network_context.mojom -@@ -1208,6 +1208,7 @@ interface NetworkContext { +@@ -1234,6 +1234,7 @@ interface NetworkContext { // provided `network_anonymization_key`. // // Spec: https://w3c.github.io/reporting/#concept-reports @@ -351,7 +359,7 @@ diff --git a/services/network/public/mojom/network_context.mojom b/services/netw QueueReport(string type, string group, url.mojom.Url url, -@@ -1215,6 +1216,7 @@ interface NetworkContext { +@@ -1241,6 +1242,7 @@ interface NetworkContext { NetworkAnonymizationKey network_anonymization_key, mojo_base.mojom.DictionaryValue body); @@ -359,7 +367,7 @@ diff --git a/services/network/public/mojom/network_context.mojom b/services/netw QueueEnterpriseReport(string type, string group, url.mojom.Url url, -@@ -1225,6 +1227,7 @@ interface NetworkContext { +@@ -1251,6 +1253,7 @@ interface NetworkContext { // Note that this queued report will never be delivered if no reporting // endpoint matching is registered for with the provided // `network_anonymization_key`. @@ -377,8 +385,8 @@ diff --git a/third_party/blink/renderer/core/frame/csp/content_security_policy.c +#include "net/net_buildflags.h" #include "base/containers/contains.h" #include "base/debug/dump_without_crashing.h" - #include "services/network/public/cpp/web_sandbox_flags.h" -@@ -1345,6 +1346,7 @@ void ContentSecurityPolicy::ReportViolation( + #include "base/feature_list.h" +@@ -1260,6 +1261,7 @@ void ContentSecurityPolicy::ReportViolation( return; } @@ -386,7 +394,7 @@ diff --git a/third_party/blink/renderer/core/frame/csp/content_security_policy.c PostViolationReport(violation_data, context_frame, report_endpoints, use_reporting_api); -@@ -1352,6 +1354,7 @@ void ContentSecurityPolicy::ReportViolation( +@@ -1267,6 +1269,7 @@ void ContentSecurityPolicy::ReportViolation( // `context_frame` (i.e. we're not processing 'frame-ancestors'). if (delegate_ && !context_frame) delegate_->DispatchViolationEvent(*violation_data, element); @@ -405,7 +413,7 @@ diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/ #include "services/network/public/cpp/features.h" #include "services/network/public/mojom/content_security_policy.mojom-blink.h" #include "services/network/public/mojom/source_location.mojom-blink.h" -@@ -2752,9 +2753,11 @@ DocumentResourceCoordinator* LocalFrame::GetDocumentResourceCoordinator() { +@@ -2740,9 +2741,11 @@ DocumentResourceCoordinator* LocalFrame::GetDocumentResourceCoordinator() { return CHECK_DEREF(GetDocument()).GetResourceCoordinator(); } @@ -427,8 +435,8 @@ diff --git a/third_party/blink/renderer/core/frame/local_frame.h b/third_party/b +#include "net/net_buildflags.h" #include "mojo/public/cpp/bindings/pending_associated_receiver.h" #include "mojo/public/cpp/bindings/pending_receiver.h" - #include "services/metrics/public/cpp/ukm_source_id.h" -@@ -650,7 +651,9 @@ class CORE_EXPORT LocalFrame final + #include "net/storage_access_api/status.h" +@@ -667,7 +668,9 @@ class CORE_EXPORT LocalFrame final return client_hints_preferences_; } @@ -449,7 +457,7 @@ diff --git a/third_party/blink/renderer/core/frame/reporting_context.cc b/third_ #include "third_party/blink/public/platform/browser_interface_broker_proxy.h" #include "third_party/blink/public/platform/platform.h" #include "third_party/blink/public/platform/task_type.h" -@@ -58,7 +59,9 @@ const char ReportingContext::kSupplementName[] = "ReportingContext"; +@@ -59,7 +60,9 @@ const char ReportingContext::kSupplementName[] = "ReportingContext"; ReportingContext::ReportingContext(ExecutionContext& context) : Supplement(context), execution_context_(context), @@ -459,7 +467,7 @@ diff --git a/third_party/blink/renderer/core/frame/reporting_context.cc b/third_ receivers_(this, &context) {} // static -@@ -125,7 +128,9 @@ void ReportingContext::Trace(Visitor* visitor) const { +@@ -126,7 +129,9 @@ void ReportingContext::Trace(Visitor* visitor) const { visitor->Trace(observers_); visitor->Trace(report_buffer_); visitor->Trace(execution_context_); @@ -469,7 +477,7 @@ diff --git a/third_party/blink/renderer/core/frame/reporting_context.cc b/third_ visitor->Trace(receivers_); Supplement::Trace(visitor); } -@@ -148,6 +153,7 @@ void ReportingContext::CountReport(Report* report) { +@@ -149,6 +154,7 @@ void ReportingContext::CountReport(Report* report) { UseCounter::Count(execution_context_, feature); } @@ -477,7 +485,7 @@ diff --git a/third_party/blink/renderer/core/frame/reporting_context.cc b/third_ const HeapMojoRemote& ReportingContext::GetReportingService() const { if (!reporting_service_.is_bound()) { -@@ -157,6 +163,7 @@ ReportingContext::GetReportingService() const { +@@ -158,6 +164,7 @@ ReportingContext::GetReportingService() const { } return reporting_service_; } @@ -485,7 +493,7 @@ diff --git a/third_party/blink/renderer/core/frame/reporting_context.cc b/third_ void ReportingContext::NotifyInternal(Report* report) { if (!ShouldReportBeVisibleToObservers(report)) { -@@ -183,6 +190,7 @@ void ReportingContext::NotifyInternal(Report* report) { +@@ -184,6 +191,7 @@ void ReportingContext::NotifyInternal(Report* report) { void ReportingContext::SendToReportingAPI(Report* report, const String& endpoint) const { @@ -493,7 +501,7 @@ diff --git a/third_party/blink/renderer/core/frame/reporting_context.cc b/third_ const String& type = report->type(); if (!(type == ReportType::kCSPViolation || type == ReportType::kCSPHash || type == ReportType::kDeprecation || -@@ -255,6 +263,7 @@ void ReportingContext::SendToReportingAPI(Report* report, +@@ -263,6 +271,7 @@ void ReportingContext::SendToReportingAPI(Report* report, url, endpoint, body->featureId(), body->disposition(), body->message(), body->sourceFile(), line_number, column_number); } @@ -512,7 +520,7 @@ diff --git a/third_party/blink/renderer/core/frame/reporting_context.h b/third_p #include "third_party/blink/public/mojom/frame/reporting_observer.mojom-blink.h" #include "third_party/blink/public/mojom/reporting/reporting.mojom-blink.h" #include "third_party/blink/renderer/core/core_export.h" -@@ -55,10 +56,10 @@ class CORE_EXPORT ReportingContext : public GarbageCollected, +@@ -56,10 +57,10 @@ class CORE_EXPORT ReportingContext : public GarbageCollected, private: // Counts the use of a report type via UseCounter. void CountReport(Report*); @@ -525,7 +533,7 @@ diff --git a/third_party/blink/renderer/core/frame/reporting_context.h b/third_p void NotifyInternal(Report* report); // Send |report| via the Reporting API to |endpoint|. void SendToReportingAPI(Report* report, const String& endpoint) const; -@@ -69,8 +70,10 @@ class CORE_EXPORT ReportingContext : public GarbageCollected, +@@ -71,8 +72,10 @@ class CORE_EXPORT ReportingContext : public GarbageCollected, // This is declared mutable so that the service endpoint can be cached by // const methods. diff --git a/build/cromite_patches/Allow-building-without-supervised-users.patch b/build/cromite_patches/Allow-building-without-supervised-users.patch index 2fe30d8e..07b977a9 100644 --- a/build/cromite_patches/Allow-building-without-supervised-users.patch +++ b/build/cromite_patches/Allow-building-without-supervised-users.patch @@ -11,19 +11,20 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html chrome/browser/profiles/profile_attributes_entry.cc | 2 +- chrome/browser/profiles/profile_impl.cc | 5 +---- chrome/browser/profiles/profile_manager.cc | 7 ------- + .../supervised_user/supervised_user_browser_utils.cc | 1 + chrome/browser/ui/webui/managed_ui_handler.cc | 4 ---- .../browser/ui/webui/management/management_ui_handler.cc | 4 ---- .../core/browser/supervised_user_pref_store.cc | 1 + .../core/browser/supervised_user_preferences.cc | 6 +++++- - .../core/browser/supervised_user_service.cc | 5 +---- - .../supervised_user/core/browser/supervised_user_utils.cc | 1 + - components/supervised_user/core/common/features.cc | 6 ++++++ - 14 files changed, 17 insertions(+), 30 deletions(-) + .../core/browser/supervised_user_service.cc | 1 + + components/supervised_user/core/common/features.cc | 2 +- + extensions/browser/api/management/management_api.cc | 1 + + 15 files changed, 13 insertions(+), 27 deletions(-) diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -786,7 +786,6 @@ if (current_toolchain == default_toolchain) { +@@ -805,7 +805,6 @@ if (_is_default_toolchain) { "//components/offline_pages/core:offline_page_model_enums_java", "//components/sharing_message:sharing_dialog_type_generated_enum", "//components/sharing_message:sharing_send_message_result_generated_enum", @@ -76,7 +77,7 @@ diff --git a/chrome/browser/prefs/chrome_pref_service_factory.cc b/chrome/browse diff --git a/chrome/browser/profiles/profile_attributes_entry.cc b/chrome/browser/profiles/profile_attributes_entry.cc --- a/chrome/browser/profiles/profile_attributes_entry.cc +++ b/chrome/browser/profiles/profile_attributes_entry.cc -@@ -469,7 +469,7 @@ bool ProfileAttributesEntry::IsSigninRequired() const { +@@ -467,7 +467,7 @@ bool ProfileAttributesEntry::IsSigninRequired() const { } std::string ProfileAttributesEntry::GetSupervisedUserId() const { @@ -88,7 +89,7 @@ diff --git a/chrome/browser/profiles/profile_attributes_entry.cc b/chrome/browse diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/profile_impl.cc --- a/chrome/browser/profiles/profile_impl.cc +++ b/chrome/browser/profiles/profile_impl.cc -@@ -675,10 +675,6 @@ void ProfileImpl::DoFinalInit(CreateMode create_mode) { +@@ -674,10 +674,6 @@ void ProfileImpl::DoFinalInit(CreateMode create_mode) { prefs->SetTime(prefs::kProfileCreationTime, path_creation_time_); pref_change_registrar_.Init(prefs); @@ -99,7 +100,7 @@ diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/p // Changes in the profile avatar. pref_change_registrar_.Add( -@@ -1623,6 +1619,7 @@ GURL ProfileImpl::GetHomePage() { +@@ -1619,6 +1615,7 @@ GURL ProfileImpl::GetHomePage() { } void ProfileImpl::UpdateSupervisedUserIdInStorage() { @@ -110,7 +111,7 @@ diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/p diff --git a/chrome/browser/profiles/profile_manager.cc b/chrome/browser/profiles/profile_manager.cc --- a/chrome/browser/profiles/profile_manager.cc +++ b/chrome/browser/profiles/profile_manager.cc -@@ -1191,10 +1191,6 @@ void ProfileManager::InitProfileUserPrefs(Profile* profile) { +@@ -1192,10 +1192,6 @@ void ProfileManager::InitProfileUserPrefs(Profile* profile) { profile->GetPrefs()->SetString(prefs::kProfileName, profile_name); } @@ -121,7 +122,7 @@ diff --git a/chrome/browser/profiles/profile_manager.cc b/chrome/browser/profile #if !BUILDFLAG(IS_ANDROID) if (profile->IsNewProfile()) { profile->GetPrefs()->SetBoolean(prefs::kHasSeenWelcomePage, false); -@@ -1976,9 +1972,6 @@ void ProfileManager::AddProfileToStorage(Profile* profile) { +@@ -1978,9 +1974,6 @@ void ProfileManager::AddProfileToStorage(Profile* profile) { init_params.icon_index = profile->GetPrefs()->GetInteger(prefs::kProfileAvatarIndex); @@ -131,6 +132,17 @@ diff --git a/chrome/browser/profiles/profile_manager.cc b/chrome/browser/profile #if BUILDFLAG(IS_CHROMEOS) user_manager::User* user = ash::ProfileHelper::Get()->GetUserByProfile(profile); +diff --git a/chrome/browser/supervised_user/supervised_user_browser_utils.cc b/chrome/browser/supervised_user/supervised_user_browser_utils.cc +--- a/chrome/browser/supervised_user/supervised_user_browser_utils.cc ++++ b/chrome/browser/supervised_user/supervised_user_browser_utils.cc +@@ -99,6 +99,7 @@ bool SupervisedUserCanSkipExtensionParentApprovals(const Profile* profile) { + } + + bool AreExtensionsPermissionsEnabled(Profile* profile) { ++ if ((true)) return false; + #if BUILDFLAG(ENABLE_EXTENSIONS_CORE) + return profile->IsChild(); + #else diff --git a/chrome/browser/ui/webui/managed_ui_handler.cc b/chrome/browser/ui/webui/managed_ui_handler.cc --- a/chrome/browser/ui/webui/managed_ui_handler.cc +++ b/chrome/browser/ui/webui/managed_ui_handler.cc @@ -162,7 +174,7 @@ diff --git a/chrome/browser/ui/webui/management/management_ui_handler.cc b/chrom diff --git a/components/supervised_user/core/browser/supervised_user_pref_store.cc b/components/supervised_user/core/browser/supervised_user_pref_store.cc --- a/components/supervised_user/core/browser/supervised_user_pref_store.cc +++ b/components/supervised_user/core/browser/supervised_user_pref_store.cc -@@ -126,6 +126,7 @@ SupervisedUserPrefStore::~SupervisedUserPrefStore() = default; +@@ -142,6 +142,7 @@ SupervisedUserPrefStore::~SupervisedUserPrefStore() = default; void SupervisedUserPrefStore::OnNewSettingsAvailable( const base::Value::Dict& settings) { @@ -173,7 +185,7 @@ diff --git a/components/supervised_user/core/browser/supervised_user_pref_store. diff --git a/components/supervised_user/core/browser/supervised_user_preferences.cc b/components/supervised_user/core/browser/supervised_user_preferences.cc --- a/components/supervised_user/core/browser/supervised_user_preferences.cc +++ b/components/supervised_user/core/browser/supervised_user_preferences.cc -@@ -155,6 +155,10 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) { +@@ -164,6 +164,10 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) { } void EnableParentalControls(PrefService& pref_service) { @@ -183,8 +195,8 @@ diff --git a/components/supervised_user/core/browser/supervised_user_preferences + } pref_service.SetString(prefs::kSupervisedUserId, supervised_user::kChildAccountSUID); - SetIsChildAccountStatusKnown(pref_service); -@@ -177,7 +181,7 @@ bool IsSafeSitesEnabled(const PrefService& pref_service) { + #if BUILDFLAG(IS_CHROMEOS) +@@ -197,7 +201,7 @@ bool IsSafeSitesEnabled(const PrefService& pref_service) { } bool IsSubjectToParentalControls(const PrefService& pref_service) { @@ -192,52 +204,44 @@ diff --git a/components/supervised_user/core/browser/supervised_user_preferences + return false; } - } // namespace supervised_user + bool IsGoogleSafeSearchEnforced(const PrefService& pref_service) { diff --git a/components/supervised_user/core/browser/supervised_user_service.cc b/components/supervised_user/core/browser/supervised_user_service.cc --- a/components/supervised_user/core/browser/supervised_user_service.cc +++ b/components/supervised_user/core/browser/supervised_user_service.cc -@@ -50,10 +50,6 @@ void SupervisedUserService::Init() { - DCHECK(settings_service_->IsReady()); - - pref_change_registrar_.Init(&user_prefs_.get()); -- pref_change_registrar_.Add( -- prefs::kSupervisedUserId, -- base::BindRepeating(&SupervisedUserService::OnSupervisedUserIdChanged, -- base::Unretained(this))); - SetActive(supervised_user::IsSubjectToParentalControls(user_prefs_.get())); - } - -@@ -139,6 +135,7 @@ SupervisedUserService::SupervisedUserService( +@@ -168,6 +168,7 @@ SupervisedUserService::SupervisedUserService( } - void SupervisedUserService::SetActive(bool active) { + void SupervisedUserService::SetSettingsServiceActive(bool active) { + active = false; - if (active_ == active) { - return; - } -diff --git a/components/supervised_user/core/browser/supervised_user_utils.cc b/components/supervised_user/core/browser/supervised_user_utils.cc ---- a/components/supervised_user/core/browser/supervised_user_utils.cc -+++ b/components/supervised_user/core/browser/supervised_user_utils.cc -@@ -308,6 +308,7 @@ GURL NormalizeUrl(const GURL& url) { - } + settings_service_->SetActive(active); - bool AreWebFilterPrefsDefault(const PrefService& pref_service) { -+ if ((true)) return true; - return pref_service - .FindPreference(prefs::kDefaultSupervisedUserFilteringBehavior) - ->IsDefaultValue() || + // Trigger a sync reconfig to enable/disable the right SU data types. diff --git a/components/supervised_user/core/common/features.cc b/components/supervised_user/core/common/features.cc --- a/components/supervised_user/core/common/features.cc +++ b/components/supervised_user/core/common/features.cc -@@ -185,4 +185,10 @@ BASE_FEATURE(kReplaceSupervisionSystemCapabilitiesWithAccountCapabilitiesOnIOS, - "ReplaceSupervisionSystemCapabilitiesWithAccountCapabilitiesOnIOS", - base::FEATURE_ENABLED_BY_DEFAULT); +@@ -35,7 +35,6 @@ BASE_FEATURE(kAllowSubframeLocalWebApprovals, + #else + base::FEATURE_DISABLED_BY_DEFAULT); #endif -+ +- + #if BUILDFLAG(IS_IOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ + BUILDFLAG(IS_WIN) + const int kLocalWebApprovalBottomSheetLoadTimeoutDefaultValueMs = 5000; +@@ -148,4 +147,5 @@ BASE_FEATURE(kDecoupleSafeSitesFromMainSwitch, + "DecoupleSafeSitesFromMainSwitch", + base::FEATURE_ENABLED_BY_DEFAULT); + +SET_CROMITE_FEATURE_DISABLED(kLocalWebApprovals); -+#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) -+SET_CROMITE_FEATURE_DISABLED(kEnableExtensionsPermissionsForSupervisedUsersOnDesktop); -+#endif -+ } // namespace supervised_user +diff --git a/extensions/browser/api/management/management_api.cc b/extensions/browser/api/management/management_api.cc +--- a/extensions/browser/api/management/management_api.cc ++++ b/extensions/browser/api/management/management_api.cc +@@ -310,6 +310,7 @@ void AddExtensionInfo(const Extension* source_extension, + } + + bool PlatformSupportsApprovalFlowForExtensions() { ++ if ((true)) return false; + #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ + BUILDFLAG(IS_WIN) + return true; -- diff --git a/build/cromite_patches/Allow-playing-audio-in-background.patch b/build/cromite_patches/Allow-playing-audio-in-background.patch index 1f07a677..16b671d4 100644 --- a/build/cromite_patches/Allow-playing-audio-in-background.patch +++ b/build/cromite_patches/Allow-playing-audio-in-background.patch @@ -11,7 +11,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/third_party/blink/renderer/platform/media/web_media_player_impl.cc b/third_party/blink/renderer/platform/media/web_media_player_impl.cc --- a/third_party/blink/renderer/platform/media/web_media_player_impl.cc +++ b/third_party/blink/renderer/platform/media/web_media_player_impl.cc -@@ -1343,6 +1343,12 @@ void WebMediaPlayerImpl::OnSelectedVideoTrackChanged( +@@ -1340,6 +1340,12 @@ void WebMediaPlayerImpl::OnSelectedVideoTrackChanged( pipeline_controller_->OnSelectedVideoTrackChanged(selected); } @@ -24,7 +24,7 @@ diff --git a/third_party/blink/renderer/platform/media/web_media_player_impl.cc void WebMediaPlayerImpl::EnabledAudioTracksChanged( const std::vector& enabled_track_ids) { DCHECK(main_task_runner_->BelongsToCurrentThread()); -@@ -3749,7 +3755,10 @@ bool WebMediaPlayerImpl::ShouldPausePlaybackWhenHidden() const { +@@ -3710,7 +3716,10 @@ bool WebMediaPlayerImpl::ShouldPausePlaybackWhenHidden() const { : HasAudio(); // Audio only stream is allowed to play when in background. @@ -35,11 +35,11 @@ diff --git a/third_party/blink/renderer/platform/media/web_media_player_impl.cc + if (!HasVideoNonEmptySize() && preserve_audio) return false; - // MediaPlayer always signals audio and video, so use an empty natural size to + // Video PiP is the only exception when background video playback is disabled. diff --git a/third_party/blink/renderer/platform/media/web_media_player_impl.h b/third_party/blink/renderer/platform/media/web_media_player_impl.h --- a/third_party/blink/renderer/platform/media/web_media_player_impl.h +++ b/third_party/blink/renderer/platform/media/web_media_player_impl.h -@@ -211,6 +211,9 @@ class PLATFORM_EXPORT WebMediaPlayerImpl +@@ -212,6 +212,9 @@ class PLATFORM_EXPORT WebMediaPlayerImpl bool HasVideo() const override; bool HasAudio() const override; diff --git a/build/cromite_patches/Always-use-new-tab-page-for-default-home-page.patch b/build/cromite_patches/Always-use-new-tab-page-for-default-home-page.patch index 6237297f..ffc6d882 100644 --- a/build/cromite_patches/Always-use-new-tab-page-for-default-home-page.patch +++ b/build/cromite_patches/Always-use-new-tab-page-for-default-home-page.patch @@ -7,18 +7,19 @@ Ignore any partner-provided home page. License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html --- .../org/chromium/chrome/browser/homepage/HomepageManager.java | 4 ---- + .../chrome/browser/new_tab_url/DseNewTabUrlManager.java | 1 + .../partnerbookmarks/PartnerBookmarksProviderIterator.java | 1 + .../partnercustomizations/PartnerBrowserCustomizations.java | 2 +- .../org/chromium/components/search_engines/TemplateUrl.java | 1 + .../search_engines/android/template_url_service_android.cc | 1 + - .../always-use-new-tab-page-for-default-home-page.inc | 2 ++ - 6 files changed, 6 insertions(+), 5 deletions(-) + .../always-use-new-tab-page-for-default-home-page.inc | 1 + + 7 files changed, 6 insertions(+), 5 deletions(-) create mode 100755 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/always-use-new-tab-page-for-default-home-page.inc diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java --- a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java -@@ -155,10 +155,6 @@ public class HomepageManager +@@ -148,10 +148,6 @@ public class HomepageManager * tab page if the homepage button is force enabled via flag. */ public GURL getDefaultHomepageGurl() { @@ -29,10 +30,21 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/Homepa String homepagePartnerDefaultGurlSerialized = ChromeSharedPreferences.getInstance() .readString( +diff --git a/chrome/android/java/src/org/chromium/chrome/browser/new_tab_url/DseNewTabUrlManager.java b/chrome/android/java/src/org/chromium/chrome/browser/new_tab_url/DseNewTabUrlManager.java +--- a/chrome/android/java/src/org/chromium/chrome/browser/new_tab_url/DseNewTabUrlManager.java ++++ b/chrome/android/java/src/org/chromium/chrome/browser/new_tab_url/DseNewTabUrlManager.java +@@ -54,6 +54,7 @@ public class DseNewTabUrlManager { + + /** Returns whether the feature NewTabSearchEngineUrlAndroid is enabled. */ + public static boolean isNewTabSearchEngineUrlAndroidEnabled() { ++ if ((true)) return false; + return ChromeSharedPreferences.getInstance() + .readBoolean(ChromePreferenceKeys.IS_EEA_CHOICE_COUNTRY, false) + || (OmniboxFeatures.sOmniboxMobileParityUpdate.isEnabled() diff --git a/chrome/browser/partnerbookmarks/android/java/src/org/chromium/chrome/browser/partnerbookmarks/PartnerBookmarksProviderIterator.java b/chrome/browser/partnerbookmarks/android/java/src/org/chromium/chrome/browser/partnerbookmarks/PartnerBookmarksProviderIterator.java --- a/chrome/browser/partnerbookmarks/android/java/src/org/chromium/chrome/browser/partnerbookmarks/PartnerBookmarksProviderIterator.java +++ b/chrome/browser/partnerbookmarks/android/java/src/org/chromium/chrome/browser/partnerbookmarks/PartnerBookmarksProviderIterator.java -@@ -68,6 +68,7 @@ public class PartnerBookmarksProviderIterator implements PartnerBookmark.Bookmar +@@ -70,6 +70,7 @@ public class PartnerBookmarksProviderIterator implements PartnerBookmark.Bookmar new AsyncTask<@Nullable Cursor>() { @Override protected @Nullable Cursor doInBackground() { @@ -55,7 +67,7 @@ diff --git a/chrome/browser/partnercustomizations/java/src/org/chromium/chrome/b diff --git a/components/search_engines/android/java/src/org/chromium/components/search_engines/TemplateUrl.java b/components/search_engines/android/java/src/org/chromium/components/search_engines/TemplateUrl.java --- a/components/search_engines/android/java/src/org/chromium/components/search_engines/TemplateUrl.java +++ b/components/search_engines/android/java/src/org/chromium/components/search_engines/TemplateUrl.java -@@ -74,6 +74,7 @@ public class TemplateUrl { +@@ -85,6 +85,7 @@ public class TemplateUrl { * prepopulated_engines.json. */ public String getNewTabURL() { @@ -66,19 +78,18 @@ diff --git a/components/search_engines/android/java/src/org/chromium/components/ diff --git a/components/search_engines/android/template_url_service_android.cc b/components/search_engines/android/template_url_service_android.cc --- a/components/search_engines/android/template_url_service_android.cc +++ b/components/search_engines/android/template_url_service_android.cc -@@ -404,6 +404,7 @@ jboolean TemplateUrlServiceAndroid::SetPlayAPISearchEngine( +@@ -403,6 +403,7 @@ jboolean TemplateUrlServiceAndroid::SetPlayAPISearchEngine( jimage_translate_source_language_param_key, const base::android::JavaParamRef& jimage_translate_target_language_param_key) { + if ((true)) return false; // The function is scheduled to run only when the service is loaded, see // `TemplateUrlService#runWhenLoaded()`. - CHECK(template_url_service_->loaded(), base::NotFatalUntil::M128); + CHECK(template_url_service_->loaded()); diff --git a/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/always-use-new-tab-page-for-default-home-page.inc b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/always-use-new-tab-page-for-default-home-page.inc new file mode 100755 --- /dev/null +++ b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/always-use-new-tab-page-for-default-home-page.inc -@@ -0,0 +1,2 @@ -+SET_CROMITE_FEATURE_DISABLED(kNewTabSearchEngineUrlAndroid); +@@ -0,0 +1 @@ +SET_CROMITE_FEATURE_DISABLED(kPartnerCustomizationsUma); -- diff --git a/build/cromite_patches/AudioBuffer-AnalyserNode-fp-mitigations.patch b/build/cromite_patches/AudioBuffer-AnalyserNode-fp-mitigations.patch index 27974571..b28a2a8d 100644 --- a/build/cromite_patches/AudioBuffer-AnalyserNode-fp-mitigations.patch +++ b/build/cromite_patches/AudioBuffer-AnalyserNode-fp-mitigations.patch @@ -52,7 +52,7 @@ new file mode 100644 diff --git a/third_party/blink/renderer/modules/webaudio/audio_buffer.cc b/third_party/blink/renderer/modules/webaudio/audio_buffer.cc --- a/third_party/blink/renderer/modules/webaudio/audio_buffer.cc +++ b/third_party/blink/renderer/modules/webaudio/audio_buffer.cc -@@ -202,6 +202,20 @@ AudioBuffer::AudioBuffer(AudioBus* bus) +@@ -199,6 +199,20 @@ AudioBuffer::AudioBuffer(AudioBus* bus) } } @@ -76,7 +76,7 @@ diff --git a/third_party/blink/renderer/modules/webaudio/audio_buffer.cc b/third diff --git a/third_party/blink/renderer/modules/webaudio/audio_buffer.h b/third_party/blink/renderer/modules/webaudio/audio_buffer.h --- a/third_party/blink/renderer/modules/webaudio/audio_buffer.h +++ b/third_party/blink/renderer/modules/webaudio/audio_buffer.h -@@ -115,6 +115,8 @@ class MODULES_EXPORT AudioBuffer final : public ScriptWrappable { +@@ -116,6 +116,8 @@ class MODULES_EXPORT AudioBuffer final : public ScriptWrappable { std::unique_ptr CreateSharedAudioBuffer(); @@ -96,7 +96,7 @@ diff --git a/third_party/blink/renderer/modules/webaudio/audio_context.cc b/thir #include "third_party/blink/public/platform/modules/webrtc/webrtc_logging.h" #include "third_party/blink/public/platform/web_audio_latency_hint.h" #include "third_party/blink/renderer/bindings/core/v8/script_promise_resolver.h" -@@ -639,7 +640,9 @@ double AudioContext::baseLatency() const { +@@ -660,7 +661,9 @@ double AudioContext::baseLatency() const { DCHECK_CALLED_ON_VALID_SEQUENCE(main_thread_sequence_checker_); DCHECK(destination()); @@ -118,7 +118,7 @@ diff --git a/third_party/blink/renderer/modules/webaudio/base_audio_context.cc b #include "third_party/blink/public/mojom/devtools/console_message.mojom-blink.h" #include "third_party/blink/public/mojom/frame/lifecycle.mojom-shared.h" #include "third_party/blink/public/platform/platform.h" -@@ -709,6 +710,17 @@ LocalDOMWindow* BaseAudioContext::GetWindow() const { +@@ -715,6 +716,17 @@ LocalDOMWindow* BaseAudioContext::GetWindow() const { return To(GetExecutionContext()); } @@ -146,7 +146,7 @@ diff --git a/third_party/blink/renderer/modules/webaudio/base_audio_context.h b/ + static float ShuffleAudioData(float data, unsigned index); + protected: - enum ContextType { kRealtimeContext, kOfflineContext }; + enum class ContextType { kRealtimeContext, kOfflineContext }; diff --git a/third_party/blink/renderer/modules/webaudio/offline_audio_context.cc b/third_party/blink/renderer/modules/webaudio/offline_audio_context.cc --- a/third_party/blink/renderer/modules/webaudio/offline_audio_context.cc @@ -207,7 +207,7 @@ diff --git a/third_party/blink/renderer/modules/webaudio/realtime_analyser.cc b/ diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 -@@ -479,9 +479,8 @@ +@@ -562,9 +562,8 @@ { // AudioContext.playoutStats interface. // https://chromestatus.com/feature/5172818344148992 diff --git a/build/cromite_patches/Block-qjz9zk-or-trk-requests.patch b/build/cromite_patches/Block-qjz9zk-or-trk-requests.patch index d2ebe964..5ce968cc 100644 --- a/build/cromite_patches/Block-qjz9zk-or-trk-requests.patch +++ b/build/cromite_patches/Block-qjz9zk-or-trk-requests.patch @@ -49,7 +49,7 @@ diff --git a/chrome/browser/history/history_utils.cc b/chrome/browser/history/hi diff --git a/chrome/browser/ui/singleton_tabs.cc b/chrome/browser/ui/singleton_tabs.cc --- a/chrome/browser/ui/singleton_tabs.cc +++ b/chrome/browser/ui/singleton_tabs.cc -@@ -128,6 +128,11 @@ int GetIndexOfExistingTab(Browser* browser, const NavigateParams& params) { +@@ -136,6 +136,11 @@ int GetIndexOfExistingTab(Browser* browser, const NavigateParams& params) { continue; } @@ -64,7 +64,7 @@ diff --git a/chrome/browser/ui/singleton_tabs.cc b/chrome/browser/ui/singleton_t diff --git a/components/omnibox/browser/autocomplete_input.cc b/components/omnibox/browser/autocomplete_input.cc --- a/components/omnibox/browser/autocomplete_input.cc +++ b/components/omnibox/browser/autocomplete_input.cc -@@ -96,10 +96,15 @@ void OffsetComponentsExcludingScheme(url::Parsed* parts, int offset) { +@@ -92,10 +92,15 @@ void OffsetComponentsExcludingScheme(url::Parsed* parts, int offset) { bool HasScheme(const std::u16string& input, const char* scheme) { std::string utf8_input(base::UTF16ToUTF8(input)); url::Component view_source_scheme; @@ -80,7 +80,7 @@ diff --git a/components/omnibox/browser/autocomplete_input.cc b/components/omnib return url::FindAndCompareScheme(utf8_input, scheme, nullptr); } -@@ -582,7 +587,8 @@ void AutocompleteInput::ParseForEmphasizeComponents( +@@ -578,7 +583,8 @@ void AutocompleteInput::ParseForEmphasizeComponents( // For the view-source and blob schemes, we should emphasize the host of the // URL qualified by the view-source or blob prefix. if ((base::EqualsCaseInsensitiveASCII(scheme_str, kViewSourceScheme) || @@ -107,7 +107,7 @@ diff --git a/components/url_formatter/url_fixer.cc b/components/url_formatter/ur diff --git a/content/browser/child_process_security_policy_impl.cc b/content/browser/child_process_security_policy_impl.cc --- a/content/browser/child_process_security_policy_impl.cc +++ b/content/browser/child_process_security_policy_impl.cc -@@ -951,6 +951,7 @@ ChildProcessSecurityPolicyImpl::ChildProcessSecurityPolicyImpl() +@@ -950,6 +950,7 @@ ChildProcessSecurityPolicyImpl::ChildProcessSecurityPolicyImpl() RegisterPseudoScheme(url::kJavaScriptScheme); RegisterPseudoScheme(kViewSourceScheme); RegisterPseudoScheme(kGoogleChromeScheme); @@ -118,7 +118,7 @@ diff --git a/content/browser/child_process_security_policy_impl.cc b/content/bro diff --git a/net/BUILD.gn b/net/BUILD.gn --- a/net/BUILD.gn +++ b/net/BUILD.gn -@@ -1087,6 +1087,8 @@ component("net") { +@@ -1115,6 +1115,8 @@ component("net") { "url_request/url_request_http_job.cc", "url_request/url_request_http_job.h", "url_request/url_request_interceptor.cc", @@ -203,7 +203,7 @@ diff --git a/net/url_request/url_request.cc b/net/url_request/url_request.cc #include "base/synchronization/lock.h" #include "base/task/single_thread_task_runner.h" #include "base/types/optional_util.h" -@@ -54,6 +55,7 @@ +@@ -55,6 +56,7 @@ #include "net/url_request/url_request_redirect_job.h" #include "url/gurl.h" #include "url/origin.h" @@ -211,7 +211,7 @@ diff --git a/net/url_request/url_request.cc b/net/url_request/url_request.cc namespace net { -@@ -642,6 +644,12 @@ URLRequest::URLRequest(base::PassKey pass_key, +@@ -653,6 +655,12 @@ URLRequest::URLRequest(base::PassKey pass_key, // Sanity check out environment. DCHECK(base::SingleThreadTaskRunner::HasCurrentDefault()); @@ -227,7 +227,7 @@ diff --git a/net/url_request/url_request.cc b/net/url_request/url_request.cc diff --git a/net/url_request/url_request_context_builder.cc b/net/url_request/url_request_context_builder.cc --- a/net/url_request/url_request_context_builder.cc +++ b/net/url_request/url_request_context_builder.cc -@@ -49,6 +49,7 @@ +@@ -53,6 +53,7 @@ #include "net/socket/network_binding_client_socket_factory.h" #include "net/ssl/ssl_config_service_defaults.h" #include "net/url_request/static_http_user_agent_settings.h" @@ -235,7 +235,7 @@ diff --git a/net/url_request/url_request_context_builder.cc b/net/url_request/ur #include "net/url_request/url_request_context.h" #include "net/url_request/url_request_job_factory.h" #include "url/url_constants.h" -@@ -594,6 +595,8 @@ std::unique_ptr URLRequestContextBuilder::Build() { +@@ -610,6 +611,8 @@ std::unique_ptr URLRequestContextBuilder::Build() { job_factory->SetProtocolHandler(scheme_handler.first, std::move(scheme_handler.second)); } diff --git a/build/cromite_patches/Bookmarks-select-all-menu-entry.patch b/build/cromite_patches/Bookmarks-select-all-menu-entry.patch index 6165bbc2..7b81a2c4 100644 --- a/build/cromite_patches/Bookmarks-select-all-menu-entry.patch +++ b/build/cromite_patches/Bookmarks-select-all-menu-entry.patch @@ -31,7 +31,7 @@ diff --git a/chrome/android/java/res/menu/bookmark_toolbar_menu_improved.xml b/c diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbar.java b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbar.java --- a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbar.java +++ b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbar.java -@@ -24,6 +24,7 @@ import org.chromium.components.browser_ui.widget.selectable_list.SelectionDelega +@@ -28,6 +28,7 @@ import org.chromium.components.browser_ui.widget.selectable_list.SelectionDelega import java.util.ArrayList; import java.util.List; import java.util.function.Function; @@ -39,7 +39,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows /** * Main toolbar of bookmark UI. It is responsible for displaying title and buttons associated with -@@ -184,6 +185,11 @@ public class BookmarkToolbar extends SelectableListToolbar +@@ -190,6 +191,11 @@ public class BookmarkToolbar extends SelectableListToolbar void setCurrentFolder(BookmarkId folder) { mCurrentFolder = mBookmarkModel.getBookmarkById(folder); enableImportExportMenu(); @@ -51,7 +51,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows } void enableImportExportMenu() { -@@ -215,6 +221,17 @@ public class BookmarkToolbar extends SelectableListToolbar +@@ -226,6 +232,17 @@ public class BookmarkToolbar extends SelectableListToolbar mExportBookmarkRunnable.run(); return true; } @@ -66,10 +66,10 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows + } + return true; + } - return mMenuIdClickedFunction.apply(menuItem.getItemId()); + return assumeNonNull(mMenuIdClickedFunction).apply(menuItem.getItemId()); } -@@ -232,6 +249,7 @@ public class BookmarkToolbar extends SelectableListToolbar +@@ -248,6 +265,7 @@ public class BookmarkToolbar extends SelectableListToolbar getMenu().findItem(R.id.import_menu_id).setVisible(mCurrentFolder != null); getMenu().findItem(R.id.export_menu_id).setVisible(mCurrentFolder != null); @@ -80,7 +80,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd -@@ -246,6 +246,9 @@ CHAR_LIMIT guidelines: +@@ -249,6 +249,9 @@ CHAR_LIMIT guidelines: Sites diff --git a/build/cromite_patches/Bromite-package-name.patch b/build/cromite_patches/Bromite-package-name.patch index 139e2d54..3b5387ab 100644 --- a/build/cromite_patches/Bromite-package-name.patch +++ b/build/cromite_patches/Bromite-package-name.patch @@ -10,7 +10,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/chrome_public_apk_tmpl.gni b/chrome/android/chrome_public_apk_tmpl.gni --- a/chrome/android/chrome_public_apk_tmpl.gni +++ b/chrome/android/chrome_public_apk_tmpl.gni -@@ -26,7 +26,7 @@ declare_args() { +@@ -27,7 +27,7 @@ declare_args() { # WebView providers which declare one of a handful of package names. See # https://chromium.googlesource.com/chromium/src/+/HEAD/android_webview/docs/build-instructions.md#Changing-package-name # for details. diff --git a/build/cromite_patches/Bromite-subresource-adblocker.patch b/build/cromite_patches/Bromite-subresource-adblocker.patch index afecc126..9ec8640b 100644 --- a/build/cromite_patches/Bromite-subresource-adblocker.patch +++ b/build/cromite_patches/Bromite-subresource-adblocker.patch @@ -44,14 +44,14 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../component_updater/download_filters_task.h | 129 ++++++++ ...ent_subresource_filter_throttle_manager.cc | 15 + ...tent_subresource_filter_throttle_manager.h | 2 + - .../content/shared/browser/ruleset_service.cc | 47 ++- + .../content/shared/browser/ruleset_service.cc | 44 ++- .../content/shared/browser/ruleset_service.h | 8 +- .../unindexed_ruleset_stream_generator.cc | 3 + .../core/browser/ruleset_version.h | 4 + - .../browser/subresource_filter_features.cc | 114 +------ + .../browser/subresource_filter_features.cc | 118 +------- .../core/browser/verified_ruleset_dealer.cc | 4 + .../core/common/indexed_ruleset.cc | 5 +- - 39 files changed, 1271 insertions(+), 129 deletions(-) + 39 files changed, 1269 insertions(+), 132 deletions(-) create mode 100644 chrome/android/java/res/layout/adblock_editor.xml create mode 100644 chrome/android/java/res/xml/adblock_preferences.xml create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/settings/AdBlockEditor.java @@ -66,7 +66,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -320,6 +320,7 @@ if (current_toolchain == default_toolchain) { +@@ -328,6 +328,7 @@ if (_is_default_toolchain) { "//chrome/android/features/tab_ui/public:ui_java_resources", "//chrome/android/modules/stack_unwinder/provider:java", "//chrome/android/webapk/libs/client:client_java", @@ -77,7 +77,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_java_resources.gni --- a/chrome/android/chrome_java_resources.gni +++ b/chrome/android/chrome_java_resources.gni -@@ -443,6 +443,7 @@ chrome_java_resources = [ +@@ -440,6 +440,7 @@ chrome_java_resources = [ "java/res/layout/account_divider_preference.xml", "java/res/layout/account_management_account_row.xml", "java/res/layout/app_history_filter.xml", @@ -85,7 +85,7 @@ diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_ja "java/res/layout/auto_sign_in_first_run_dialog.xml", "java/res/layout/autofill_billing_address_dropdown.xml", "java/res/layout/autofill_card_name_and_number.xml", -@@ -631,6 +632,7 @@ chrome_java_resources = [ +@@ -634,6 +635,7 @@ chrome_java_resources = [ "java/res/xml/account_management_preferences.xml", "java/res/xml/ad_services_config.xml", "java/res/xml/appearance_preferences.xml", @@ -96,7 +96,7 @@ diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_ja diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni --- a/chrome/android/chrome_java_sources.gni +++ b/chrome/android/chrome_java_sources.gni -@@ -874,6 +874,8 @@ chrome_java_sources = [ +@@ -893,6 +893,8 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/permissions/PermissionBlockedDialog.java", "java/src/org/chromium/chrome/browser/permissions/PermissionUpdateRequester.java", "java/src/org/chromium/chrome/browser/photo_picker/DecoderServiceImpl.java", @@ -180,8 +180,8 @@ new file mode 100644 diff --git a/chrome/android/java/res/values/styles.xml b/chrome/android/java/res/values/styles.xml --- a/chrome/android/java/res/values/styles.xml +++ b/chrome/android/java/res/values/styles.xml -@@ -251,6 +251,24 @@ found in the LICENSE file. - +@@ -263,6 +263,24 @@ found in the LICENSE file. + 20sp + @@ -273,8 +273,8 @@ diff --git a/chrome/android/java/res/values/styles.xml b/chrome/android/java/res diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/DefaultSearchEngineFirstRunFragment.java b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/DefaultSearchEngineFirstRunFragment.java --- a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/DefaultSearchEngineFirstRunFragment.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/DefaultSearchEngineFirstRunFragment.java -@@ -54,15 +54,12 @@ public class DefaultSearchEngineFirstRunFragment extends Fragment implements Fir - Profile profile = getPageDelegate().getProfileProviderSupplier().get().getOriginalProfile(); +@@ -58,15 +58,12 @@ public class DefaultSearchEngineFirstRunFragment extends Fragment implements Fir + Profile profile = delegate.getProfileProviderSupplier().get().getOriginalProfile(); assert TemplateUrlServiceFactory.getForProfile(profile).isLoaded(); - mSearchEnginePromoDialogType = LocaleManager.getInstance().getSearchEnginePromoShowType(); @@ -282,8 +282,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/Defaul new DefaultSearchEngineDialogHelper( mSearchEnginePromoDialogType, LocaleManager.getInstance(), - mEngineLayout, - mButton, + engineLayout, + button, getPageDelegate()::advanceToNextPage); - } @@ -302,7 +302,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR import org.chromium.chrome.browser.ui.edge_to_edge.EdgeToEdgeUtils; import org.chromium.chrome.browser.ui.signin.DialogWhenLargeContentLayout; import org.chromium.chrome.browser.ui.signin.SigninUtils; -@@ -234,7 +233,7 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa +@@ -235,7 +234,7 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa /** Creates first page and sets up adapter. Should result UI being shown on the screen. */ private void createFirstPage() { BooleanSupplier showWelcomePage = () -> !FirstRunStatus.shouldSkipWelcomePage(); @@ -311,7 +311,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR mFreProgressStates.add(MobileFreProgress.WELCOME_SHOWN); mPagerAdapter = new FirstRunPagerAdapter(FirstRunActivity.this, mPages); mPager.setAdapter(mPagerAdapter); -@@ -259,7 +258,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa +@@ -260,7 +259,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa // // TODO(b/245912657): explicitly sign in supervised users in {@link // FullscreenSigninMediator#handleContinueWithNative} rather than relying on SigninChecker. @@ -319,7 +319,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR mFirstRunFlowSequencer.updateFirstRunProperties(mFreProperties); -@@ -274,18 +272,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa +@@ -275,18 +273,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa mFreProgressStates.add(MobileFreProgress.DEFAULT_SEARCH_ENGINE_SHOWN); } @@ -338,7 +338,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR if (mPagerAdapter != null) { mPagerAdapter.notifyDataSetChanged(); } -@@ -697,11 +683,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa +@@ -702,11 +688,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa public void acceptTermsOfService(boolean allowMetricsAndCrashUploading) { assert mNativeInitializationPromise.isFulfilled(); @@ -401,28 +401,26 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR } } -@@ -137,18 +115,8 @@ public abstract class FirstRunFlowSequencer { +@@ -136,18 +114,6 @@ public abstract class FirstRunFlowSequencer { * method. */ void start() { - AccountManagerFacadeProvider.getInstance() -- .getCoreAccountInfos() +- .getAccounts() - .then( -- coreAccountInfos -> { +- accounts -> { - RecordHistogram.recordCount1MHistogram( - "Signin.AndroidDeviceAccountsNumberWhenEnteringFRE", -- Math.min(coreAccountInfos.size(), 2)); +- Math.min(accounts.size(), 2)); - - assert !mAccountsAvailable; - mAccountsAvailable = true; - maybeProcessFreEnvironmentPreNative(); - }); -+ mIsChild = false; -+ maybeProcessFreEnvironmentPreNative(); } @VisibleForTesting -@@ -167,14 +135,10 @@ public abstract class FirstRunFlowSequencer { +@@ -166,9 +132,6 @@ public abstract class FirstRunFlowSequencer { } private void maybeProcessFreEnvironmentPreNative() { @@ -431,13 +429,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR - if (mIsFlowKnown) return; mIsFlowKnown = true; - - Bundle freProperties = new Bundle(); -- freProperties.putBoolean(SyncConsentFirstRunFragment.IS_CHILD_ACCOUNT, mIsChild); - - onFlowIsKnown(freProperties); - } -@@ -185,8 +149,8 @@ public abstract class FirstRunFlowSequencer { + onFlowIsKnown(mIsChild); +@@ -180,8 +143,8 @@ public abstract class FirstRunFlowSequencer { * @param freProperties Resulting FRE properties bundle. */ public void updateFirstRunProperties(Bundle freProperties) { @@ -448,7 +441,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR assert freProperties != null; freProperties.putBoolean( FirstRunActivity.SHOW_HISTORY_SYNC_PAGE, shouldShowHistorySyncOptIn()); -@@ -205,8 +169,6 @@ public abstract class FirstRunFlowSequencer { +@@ -200,8 +163,6 @@ public abstract class FirstRunFlowSequencer { // Mark the FRE flow as complete. FirstRunStatus.setFirstRunFlowComplete(true); @@ -457,7 +450,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR } /** -@@ -305,9 +267,6 @@ public abstract class FirstRunFlowSequencer { +@@ -300,9 +261,6 @@ public abstract class FirstRunFlowSequencer { Log.d(TAG, "Redirecting user through FRE."); CrashKeys.getInstance().set(CrashKeyIndex.FIRST_RUN, "yes"); @@ -467,7 +460,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR if (inSameTask) { FreIntentCreator intentCreator = new FreIntentCreator(); Intent freIntent = -@@ -333,13 +292,17 @@ public abstract class FirstRunFlowSequencer { +@@ -328,13 +286,17 @@ public abstract class FirstRunFlowSequencer { if (!(caller instanceof Activity)) { freIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); } @@ -490,19 +483,19 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunUtils.java --- a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunUtils.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunUtils.java -@@ -63,6 +63,7 @@ public class FirstRunUtils { - * collect stats. +@@ -41,6 +41,7 @@ public class FirstRunUtils { + * collect stats. */ static void acceptTermsOfService(boolean allowMetricsAndCrashUploading) { + allowMetricsAndCrashUploading = false; UmaSessionStats.changeMetricsReportingConsent( allowMetricsAndCrashUploading, ChangeMetricsReportingStateCalledFrom.UI_FIRST_RUN); - ChromeSharedPreferences.getInstance() + setEulaAccepted(); diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAndUMAFirstRunFragment.java b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAndUMAFirstRunFragment.java new file mode 100644 --- /dev/null +++ b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAndUMAFirstRunFragment.java -@@ -0,0 +1,335 @@ +@@ -0,0 +1,321 @@ +// Copyright 2015 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. @@ -790,21 +783,7 @@ new file mode 100644 + } + + private boolean getUmaCheckBoxInitialState() { -+ // Metrics and crash reporting could not be permitted by policy. -+ if (!isWaitingForNativeAndPolicyInit() -+ && !PrivacyPreferencesManagerImpl.getInstance() -+ .isUsageAndCrashReportingPermittedByPolicy()) { -+ return false; -+ } -+ -+ // A user could start FRE and accept terms of service, then close the browser and start -+ // again. In this case we rely on whatever state the user has already set. -+ if (FirstRunUtils.didAcceptTermsOfService()) { -+ return PrivacyPreferencesManagerImpl.getInstance() -+ .isUsageAndCrashReportingPermittedByUser(); -+ } -+ -+ return FirstRunActivity.DEFAULT_METRICS_AND_CRASH_REPORTING; ++ return false; + } + + // Exposed methods for ToSAndUMACCTFirstRunFragment @@ -1182,13 +1161,14 @@ new file mode 100644 diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/ChildAccountStatusSupplier.java b/chrome/android/java/src/org/chromium/chrome/browser/signin/ChildAccountStatusSupplier.java --- a/chrome/android/java/src/org/chromium/chrome/browser/signin/ChildAccountStatusSupplier.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/signin/ChildAccountStatusSupplier.java -@@ -41,7 +41,10 @@ public class ChildAccountStatusSupplier implements OneshotSupplier { +@@ -41,7 +41,11 @@ public class ChildAccountStatusSupplier implements OneshotSupplier { */ public ChildAccountStatusSupplier( AccountManagerFacade accountManagerFacade, AppRestrictionSupplier appRestrictionInfo) { + mHasRestriction = false; + mChildAccountStatusFromAccountManagerFacade = false; mChildAccountStatusStartTime = SystemClock.elapsedRealtime(); ++ mValue.set(false); + if ((true)) return; appRestrictionInfo.getHasAppRestriction(this::onAppRestrictionDetected); @@ -1196,7 +1176,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/ChildAcc diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/FullscreenSigninAndHistorySyncActivityBase.java b/chrome/android/java/src/org/chromium/chrome/browser/signin/FullscreenSigninAndHistorySyncActivityBase.java --- a/chrome/android/java/src/org/chromium/chrome/browser/signin/FullscreenSigninAndHistorySyncActivityBase.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/signin/FullscreenSigninAndHistorySyncActivityBase.java -@@ -25,8 +25,6 @@ import org.chromium.chrome.browser.profiles.ProfileProvider; +@@ -24,8 +24,6 @@ import org.chromium.chrome.browser.profiles.ProfileProvider; import org.chromium.chrome.browser.ui.system.StatusBarColorController; import org.chromium.components.browser_ui.widget.gesture.BackPressHandler; import org.chromium.components.policy.PolicyService; @@ -1205,7 +1185,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/Fullscre /** Base class for First run experience and fullscreen signin and history sync promos. */ public abstract class FullscreenSigninAndHistorySyncActivityBase extends AsyncInitializationActivity -@@ -92,9 +90,7 @@ public abstract class FullscreenSigninAndHistorySyncActivityBase extends AsyncIn +@@ -91,9 +89,7 @@ public abstract class FullscreenSigninAndHistorySyncActivityBase extends AsyncIn @Override @CallSuper public void triggerLayoutInflation() { @@ -1219,7 +1199,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/Fullscre diff --git a/chrome/browser/locale/java/src/org/chromium/chrome/browser/locale/LocaleManagerDelegate.java b/chrome/browser/locale/java/src/org/chromium/chrome/browser/locale/LocaleManagerDelegate.java --- a/chrome/browser/locale/java/src/org/chromium/chrome/browser/locale/LocaleManagerDelegate.java +++ b/chrome/browser/locale/java/src/org/chromium/chrome/browser/locale/LocaleManagerDelegate.java -@@ -375,8 +375,9 @@ public class LocaleManagerDelegate { +@@ -389,8 +389,9 @@ public class LocaleManagerDelegate { /** @see LocaleManager#getSearchEnginesForPromoDialog */ public List getSearchEnginesForPromoDialog(@SearchEnginePromoType int promoType) { diff --git a/build/cromite_patches/autofill-miscellaneous.patch b/build/cromite_patches/autofill-miscellaneous.patch index 9b16b243..76c7aa82 100644 --- a/build/cromite_patches/autofill-miscellaneous.patch +++ b/build/cromite_patches/autofill-miscellaneous.patch @@ -15,20 +15,20 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../ui/autofill/chrome_autofill_client.h | 1 - .../browser/android_autofill_client.cc | 11 ---- .../browser/android_autofill_client.h | 1 - - .../autofill_crowdsourcing_manager.cc | 66 ++----------------- + .../autofill_crowdsourcing_manager.cc | 63 ++----------------- .../autofill_crowdsourcing_manager.h | 2 - - .../browser/crowdsourcing/votes_uploader.cc | 6 -- + .../browser/crowdsourcing/votes_uploader.cc | 3 - .../browser/foundations/autofill_client.h | 4 -- .../browser/foundations/autofill_manager.cc | 11 ---- .../autofill/core/common/autofill_features.cc | 2 + - .../autofill/core/common/autofill_prefs.cc | 10 +-- + .../autofill/core/common/autofill_prefs.cc | 8 +-- .../password_generation_frame_helper.cc | 5 -- - 13 files changed, 12 insertions(+), 120 deletions(-) + 13 files changed, 11 insertions(+), 113 deletions(-) diff --git a/chrome/browser/password_manager/chrome_password_manager_client.cc b/chrome/browser/password_manager/chrome_password_manager_client.cc --- a/chrome/browser/password_manager/chrome_password_manager_client.cc +++ b/chrome/browser/password_manager/chrome_password_manager_client.cc -@@ -1058,10 +1058,6 @@ ChromePasswordManagerClient::GetHttpAuthManager() { +@@ -1074,10 +1074,6 @@ ChromePasswordManagerClient::GetHttpAuthManager() { autofill::AutofillCrowdsourcingManager* ChromePasswordManagerClient::GetAutofillCrowdsourcingManager() { @@ -42,7 +42,7 @@ diff --git a/chrome/browser/password_manager/chrome_password_manager_client.cc b diff --git a/chrome/browser/ui/autofill/chrome_autofill_client.cc b/chrome/browser/ui/autofill/chrome_autofill_client.cc --- a/chrome/browser/ui/autofill/chrome_autofill_client.cc +++ b/chrome/browser/ui/autofill/chrome_autofill_client.cc -@@ -378,15 +378,6 @@ ChromeAutofillClient::GetURLLoaderFactory() { +@@ -393,15 +393,6 @@ ChromeAutofillClient::GetURLLoaderFactory() { ->GetURLLoaderFactoryForBrowserProcess(); } @@ -93,18 +93,18 @@ diff --git a/components/android_autofill/browser/android_autofill_client.cc b/co diff --git a/components/android_autofill/browser/android_autofill_client.h b/components/android_autofill/browser/android_autofill_client.h --- a/components/android_autofill/browser/android_autofill_client.h +++ b/components/android_autofill/browser/android_autofill_client.h -@@ -86,7 +86,6 @@ class AndroidAutofillClient : public autofill::ContentAutofillClient { +@@ -87,7 +87,6 @@ class AndroidAutofillClient : public autofill::ContentAutofillClient { const std::string& GetAppLocale() const final; bool IsOffTheRecord() const final; scoped_refptr GetURLLoaderFactory() final; - autofill::AutofillCrowdsourcingManager& GetCrowdsourcingManager() final; autofill::VotesUploader& GetVotesUploader() override; autofill::PersonalDataManager& GetPersonalDataManager() final; - autofill::EntityDataManager* GetEntityDataManager() override; + autofill::ValuablesDataManager* GetValuablesDataManager() override; diff --git a/components/autofill/core/browser/crowdsourcing/autofill_crowdsourcing_manager.cc b/components/autofill/core/browser/crowdsourcing/autofill_crowdsourcing_manager.cc --- a/components/autofill/core/browser/crowdsourcing/autofill_crowdsourcing_manager.cc +++ b/components/autofill/core/browser/crowdsourcing/autofill_crowdsourcing_manager.cc -@@ -487,33 +487,6 @@ std::optional GetUploadPayloadForApi( +@@ -513,33 +513,6 @@ std::optional GetUploadPayloadForApi( return std::move(payload); } @@ -138,7 +138,7 @@ diff --git a/components/autofill/core/browser/crowdsourcing/autofill_crowdsourci // Gets HTTP body payload for API POST request. std::optional GetAPIBodyPayload(std::string payload, RequestType type) { -@@ -545,15 +518,7 @@ std::optional GetAPIQueryPayload( +@@ -571,15 +544,7 @@ std::optional GetAPIQueryPayload( } std::string GetAPIKeyForUrl(version_info::Channel channel) { @@ -155,7 +155,7 @@ diff --git a/components/autofill/core/browser/crowdsourcing/autofill_crowdsourci } std::optional>& GetActiveExperiments() { -@@ -860,34 +825,13 @@ size_t AutofillCrowdsourcingManager::GetPayloadLength( +@@ -899,31 +864,13 @@ size_t AutofillCrowdsourcingManager::GetPayloadLength( std::tuple AutofillCrowdsourcingManager::GetRequestURLAndMethod( const FormRequestData& request_data) const { @@ -168,9 +168,6 @@ diff --git a/components/autofill/core/browser/crowdsourcing/autofill_crowdsourci - if (GetPayloadLength(request_data.payload) <= kMaxQueryGetSize) { - resource_id = request_data.payload; - method = "GET"; -- base::UmaHistogramBoolean(kUmaApiUrlIsTooLong, false); -- } else { -- base::UmaHistogramBoolean(kUmaApiUrlIsTooLong, true); - } - base::UmaHistogramBoolean(kUmaMethod, method != "GET"); - } @@ -209,15 +206,12 @@ diff --git a/components/autofill/core/browser/crowdsourcing/autofill_crowdsourci diff --git a/components/autofill/core/browser/crowdsourcing/votes_uploader.cc b/components/autofill/core/browser/crowdsourcing/votes_uploader.cc --- a/components/autofill/core/browser/crowdsourcing/votes_uploader.cc +++ b/components/autofill/core/browser/crowdsourcing/votes_uploader.cc -@@ -396,12 +396,6 @@ void VotesUploader::UploadVote( - non_empty_types.contains(CREDIT_CARD_NUMBER)) { - non_empty_types.insert(CREDIT_CARD_VERIFICATION_CODE); +@@ -409,9 +409,6 @@ void VotesUploader::UploadVote( + client_->GetUkmRecorder(), ukm_source_id, *submitted_form, + submission_timestamp); } - client_->GetCrowdsourcingManager().StartUploadRequest( -- /*upload_contents=*/EncodeUploadRequest(*submitted_form, non_empty_types, -- /*login_form_signature=*/{}, -- observed_submission), -- submitted_form->submission_source(), +- std::move(upload_contents), submitted_form->submission_source(), - /*is_password_manager_upload=*/false); } @@ -225,7 +219,7 @@ diff --git a/components/autofill/core/browser/crowdsourcing/votes_uploader.cc b/ diff --git a/components/autofill/core/browser/foundations/autofill_client.h b/components/autofill/core/browser/foundations/autofill_client.h --- a/components/autofill/core/browser/foundations/autofill_client.h +++ b/components/autofill/core/browser/foundations/autofill_client.h -@@ -243,10 +243,6 @@ class AutofillClient { +@@ -249,10 +249,6 @@ class AutofillClient { // Returns the VotesUploader. virtual VotesUploader& GetVotesUploader() = 0; @@ -239,10 +233,10 @@ diff --git a/components/autofill/core/browser/foundations/autofill_client.h b/co diff --git a/components/autofill/core/browser/foundations/autofill_manager.cc b/components/autofill/core/browser/foundations/autofill_manager.cc --- a/components/autofill/core/browser/foundations/autofill_manager.cc +++ b/components/autofill/core/browser/foundations/autofill_manager.cc -@@ -326,17 +326,6 @@ void AutofillManager::OnFormsParsed(const std::vector& forms) { - driver().SendTypePredictionsToRenderer(queryable_forms); - LogTypePredictionsAvailable(log_manager(), non_queryable_forms); - LogTypePredictionsAvailable(log_manager(), queryable_forms); +@@ -307,17 +307,6 @@ void AutofillManager::OnFormsParsed(const std::vector& forms) { + if (base::FeatureList::IsEnabled(features::test::kShowDomNodeIDs)) { + driver().ExposeDomNodeIDs(); + } - - // Query the server if at least one of the forms was parsed. - if (!queryable_forms.empty()) { @@ -260,7 +254,7 @@ diff --git a/components/autofill/core/browser/foundations/autofill_manager.cc b/ diff --git a/components/autofill/core/common/autofill_features.cc b/components/autofill/core/common/autofill_features.cc --- a/components/autofill/core/common/autofill_features.cc +++ b/components/autofill/core/common/autofill_features.cc -@@ -909,6 +909,8 @@ BASE_FEATURE(kAutofillUploadThrottling, +@@ -942,6 +942,8 @@ BASE_FEATURE(kAutofillUploadThrottling, "AutofillUploadThrottling", base::FEATURE_ENABLED_BY_DEFAULT); @@ -272,40 +266,37 @@ diff --git a/components/autofill/core/common/autofill_features.cc b/components/a diff --git a/components/autofill/core/common/autofill_prefs.cc b/components/autofill/core/common/autofill_prefs.cc --- a/components/autofill/core/common/autofill_prefs.cc +++ b/components/autofill/core/common/autofill_prefs.cc -@@ -21,7 +21,7 @@ namespace prefs { +@@ -29,7 +29,7 @@ constexpr char kAutofillRanQuasiDuplicateExtraDeduplication[] = void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) { // Synced prefs. Used for cross-device choices, e.g., credit card Autofill. registry->RegisterBooleanPref( -- prefs::kAutofillProfileEnabled, true, -+ prefs::kAutofillProfileEnabled, false, +- kAutofillProfileEnabled, true, ++ kAutofillProfileEnabled, false, user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); registry->RegisterIntegerPref( - prefs::kAutofillLastVersionDeduped, 0, -@@ -30,10 +30,10 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) { - prefs::kAutofillHasSeenIban, false, + kAutofillLastVersionDeduped, 0, +@@ -38,10 +38,10 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) { + kAutofillHasSeenIban, false, user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); registry->RegisterBooleanPref( -- prefs::kAutofillCreditCardEnabled, true, -+ prefs::kAutofillCreditCardEnabled, false, +- kAutofillCreditCardEnabled, true, ++ kAutofillCreditCardEnabled, false, user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); registry->RegisterBooleanPref( -- prefs::kAutofillPaymentCvcStorage, true, -+ prefs::kAutofillPaymentCvcStorage, false, +- kAutofillPaymentCvcStorage, true, ++ kAutofillPaymentCvcStorage, false, user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); registry->RegisterBooleanPref( kAutofillPaymentCardBenefits, true, -@@ -77,9 +77,9 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) { +@@ -83,7 +83,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) { #endif // Deprecated prefs registered for migration. -- registry->RegisterBooleanPref(prefs::kAutofillEnabledDeprecated, true); -+ registry->RegisterBooleanPref(prefs::kAutofillEnabledDeprecated, false); - registry->RegisterBooleanPref(prefs::kAutofillOrphanRowsRemoved, false); -- registry->RegisterBooleanPref(prefs::kAutofillIbanEnabled, true); -+ registry->RegisterBooleanPref(prefs::kAutofillIbanEnabled, false); - registry->RegisterIntegerPref( - prefs::kAutofillLastVersionDisusedAddressesDeleted, 0); - registry->RegisterIntegerPref( +- registry->RegisterBooleanPref(kAutofillEnabledDeprecated, true); ++ registry->RegisterBooleanPref(kAutofillEnabledDeprecated, false); + registry->RegisterStringPref(kAutofillAblationSeedPref, ""); + registry->RegisterBooleanPref(kAutofillRanQuasiDuplicateExtraDeduplication, + false); diff --git a/components/password_manager/core/browser/password_generation_frame_helper.cc b/components/password_manager/core/browser/password_generation_frame_helper.cc --- a/components/password_manager/core/browser/password_generation_frame_helper.cc +++ b/components/password_manager/core/browser/password_generation_frame_helper.cc diff --git a/build/cromite_patches/bromite-build-utils.patch b/build/cromite_patches/bromite-build-utils.patch index f86be8bd..f0f95949 100644 --- a/build/cromite_patches/bromite-build-utils.patch +++ b/build/cromite_patches/bromite-build-utils.patch @@ -14,13 +14,13 @@ Subject: bromite build utils build/config/android/rules.gni | 6 +- .../ChromeAccessibilitySettingsDelegate.java | 5 + chrome/browser/flags/BUILD.gn | 10 +- - .../flags/android/cromite_native_utils.cc | 57 ++++++++++ + .../flags/android/cromite_native_utils.cc | 92 +++++++++++++++ .../flags/android/cromite_native_utils.h | 14 +++ .../browser/flags/CromiteNativeUtils.java | 46 ++++++++ mojo/public/tools/mojom/mojom_parser.py | 22 +++- tools/grit/grit/grd_reader.py | 27 ++++- tools/grit/preprocess_if_expr.py | 32 +++++- - 17 files changed, 502 insertions(+), 19 deletions(-) + 17 files changed, 537 insertions(+), 19 deletions(-) create mode 100644 build/bromite/bromite_utils.gni create mode 100644 build/bromite/gyp/cpp_bromite_include.py create mode 100644 build/bromite/gyp/cpp_bromite_include.pydeps @@ -426,7 +426,7 @@ new file mode 100644 diff --git a/build/config/BUILDCONFIG.gn b/build/config/BUILDCONFIG.gn --- a/build/config/BUILDCONFIG.gn +++ b/build/config/BUILDCONFIG.gn -@@ -764,3 +764,5 @@ if (is_component_build) { +@@ -844,3 +844,5 @@ if (is_component_build) { set_defaults("component") { configs = default_component_configs } @@ -458,7 +458,7 @@ diff --git a/build/config/android/rules.gni b/build/config/android/rules.gni diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/ChromeAccessibilitySettingsDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/ChromeAccessibilitySettingsDelegate.java --- a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/ChromeAccessibilitySettingsDelegate.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/ChromeAccessibilitySettingsDelegate.java -@@ -13,6 +13,11 @@ import org.chromium.components.browser_ui.settings.SettingsNavigation; +@@ -15,6 +15,11 @@ import org.chromium.components.browser_ui.settings.SettingsNavigation; import org.chromium.components.user_prefs.UserPrefs; import org.chromium.content_public.browser.BrowserContextHandle; @@ -468,8 +468,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/s +import org.chromium.chrome.browser.preferences.ChromeSharedPreferences; + /** The Chrome implementation of AccessibilitySettingsDelegate. */ + @NullMarked public class ChromeAccessibilitySettingsDelegate implements AccessibilitySettingsDelegate { - private static class TextSizeContrastAccessibilityDelegate diff --git a/chrome/browser/flags/BUILD.gn b/chrome/browser/flags/BUILD.gn --- a/chrome/browser/flags/BUILD.gn +++ b/chrome/browser/flags/BUILD.gn @@ -508,7 +508,7 @@ diff --git a/chrome/browser/flags/android/cromite_native_utils.cc b/chrome/brows new file mode 100755 --- /dev/null +++ b/chrome/browser/flags/android/cromite_native_utils.cc -@@ -0,0 +1,57 @@ +@@ -0,0 +1,92 @@ +#include "chrome/browser/flags/android/cromite_native_utils.h" + +#include "chrome/browser/browser_process.h" @@ -531,10 +531,33 @@ new file mode 100755 + entries.erase(internal_name + "@1"); // enabled + entries.erase(internal_name + "@2"); // disabled + -+ if (isEnabled) -+ entries.insert(internal_name + "@1"); -+ else -+ entries.insert(internal_name + "@2"); ++ bool is_switch = false; ++ if (const flags_ui::FeatureEntry* entry = ++ about_flags::GetCurrentFlagsState()->FindFeatureEntryByName( ++ internal_name)) { ++ if (entry->type == flags_ui::FeatureEntry::SINGLE_DISABLE_VALUE) { ++ entries.erase(entry->switches.command_line_switch); ++ if (isEnabled) { ++ entries.insert(entry->switches.command_line_switch); ++ } ++ is_switch = true; ++ } else if (entry->type == flags_ui::FeatureEntry::ENABLE_DISABLE_VALUE) { ++ entries.erase(entry->switches.command_line_switch); ++ entries.erase(entry->switches.disable_command_line_switch); ++ if (isEnabled) { ++ entries.insert(entry->switches.disable_command_line_switch); ++ } ++ is_switch = true; ++ } ++ } ++ ++ if (!is_switch) { ++ if (isEnabled) { ++ entries.insert(internal_name + "@1"); ++ } else { ++ entries.insert(internal_name + "@2"); ++ } ++ } + + flags_storage.SetFlags(entries); + flags_storage.CommitPendingWrites(); @@ -548,6 +571,18 @@ new file mode 100755 + g_browser_process->local_state()); + std::set entries = flags_storage.GetFlags(); + ++ if (const flags_ui::FeatureEntry* entry = ++ about_flags::GetCurrentFlagsState()->FindFeatureEntryByName( ++ internal_name)) { ++ if (entry->type == flags_ui::FeatureEntry::SINGLE_DISABLE_VALUE && ++ entries.count(entry->switches.command_line_switch)) { ++ return true; ++ } else if (entry->type == flags_ui::FeatureEntry::ENABLE_DISABLE_VALUE && ++ entries.count(entry->switches.disable_command_line_switch)) { ++ return true; ++ } ++ } ++ + const std::string enabled_entry = internal_name + "@1"; + if (entries.count(enabled_entry)) + return true; @@ -688,7 +723,7 @@ diff --git a/mojo/public/tools/mojom/mojom_parser.py b/mojo/public/tools/mojom/m diff --git a/tools/grit/grit/grd_reader.py b/tools/grit/grit/grd_reader.py --- a/tools/grit/grit/grd_reader.py +++ b/tools/grit/grit/grd_reader.py -@@ -93,11 +93,28 @@ class GrdContentHandler(xml.sax.handler.ContentHandler): +@@ -96,11 +96,28 @@ class GrdContentHandler(xml.sax.handler.ContentHandler): raise exception.FileNotFound(partname) # Exceptions propagate to the handler in grd_reader.Parse(). oldsource = self.source diff --git a/build/cromite_patches/disable-AdsBlockedInfoBar.patch b/build/cromite_patches/disable-AdsBlockedInfoBar.patch index f3e2b226..bedbd15f 100644 --- a/build/cromite_patches/disable-AdsBlockedInfoBar.patch +++ b/build/cromite_patches/disable-AdsBlockedInfoBar.patch @@ -10,12 +10,12 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/components/subresource_filter/content/browser/profile_interaction_manager.cc b/components/subresource_filter/content/browser/profile_interaction_manager.cc --- a/components/subresource_filter/content/browser/profile_interaction_manager.cc +++ b/components/subresource_filter/content/browser/profile_interaction_manager.cc -@@ -129,6 +129,7 @@ mojom::ActivationLevel ProfileInteractionManager::OnPageActivationComputed( +@@ -128,6 +128,7 @@ mojom::ActivationLevel ProfileInteractionManager::OnPageActivationComputed( } void ProfileInteractionManager::MaybeShowNotification() { + if ((true)) return; // The caller should make sure this is only called from pages that are // currently primary. - CHECK(page_, base::NotFatalUntil::M129); + CHECK(page_); -- diff --git a/build/cromite_patches/disable-WebView-variations-support.patch b/build/cromite_patches/disable-WebView-variations-support.patch index e8329174..48c99398 100644 --- a/build/cromite_patches/disable-WebView-variations-support.patch +++ b/build/cromite_patches/disable-WebView-variations-support.patch @@ -5,32 +5,33 @@ Subject: disable WebView variations support Original License: MIT - https://spdx.org/licenses/MIT.html License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html --- - .../com/android/webview/chromium/WebViewChromiumAwInit.java | 6 ------ - .../webview/chromium/WebViewChromiumFactoryProvider.java | 4 ---- - 2 files changed, 10 deletions(-) + .../android/webview/chromium/WebViewChromiumAwInit.java | 7 ------- + .../webview/chromium/WebViewChromiumFactoryProvider.java | 4 ---- + 2 files changed, 11 deletions(-) diff --git a/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumAwInit.java b/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumAwInit.java --- a/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumAwInit.java +++ b/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumAwInit.java -@@ -342,12 +342,6 @@ public class WebViewChromiumAwInit { +@@ -409,13 +409,6 @@ public class WebViewChromiumAwInit { + } - AwBrowserProcess.configureChildProcessLauncher(); - -- // finishVariationsInitLocked() must precede native initialization so the seed is -- // available when AwFeatureListCreator::SetUpFieldTrials() runs. -- if (!FastVariationsSeedSafeModeAction.hasRun()) { -- finishVariationsInitLocked(); -- } + AwBrowserProcess.configureChildProcessLauncher(); - - AwBrowserProcess.start(); - - // TODO(crbug.com/332706093): See if this can be moved before loading native. +- // finishVariationsInitLocked() must precede native initialization so +- // the seed is available when AwFeatureListCreator::SetUpFieldTrials() +- // runs. +- if (!FastVariationsSeedSafeModeAction.hasRun()) { +- finishVariationsInitLocked(); +- } + }); + tasks.addLast(AwBrowserProcess::start); + tasks.addLast( diff --git a/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java b/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java --- a/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java +++ b/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java -@@ -591,10 +591,6 @@ public class WebViewChromiumFactoryProvider implements WebViewFactoryProvider { - } - } +@@ -577,10 +577,6 @@ public class WebViewChromiumFactoryProvider implements WebViewFactoryProvider { + mAwInit.setStartupTaskExperimentEnabled(enableStartupTasksExperiment); + AwBrowserMainParts.setWebViewStartupTasksLogicIsEnabled(enableStartupTasksExperiment); - if (!FastVariationsSeedSafeModeAction.hasRun()) { - mAwInit.startVariationsInit(); diff --git a/build/cromite_patches/do-not-add-suffix-to-package-name.patch b/build/cromite_patches/do-not-add-suffix-to-package-name.patch index a2dd93b2..bba7880a 100644 --- a/build/cromite_patches/do-not-add-suffix-to-package-name.patch +++ b/build/cromite_patches/do-not-add-suffix-to-package-name.patch @@ -10,7 +10,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/chrome_public_apk_tmpl.gni b/chrome/android/chrome_public_apk_tmpl.gni --- a/chrome/android/chrome_public_apk_tmpl.gni +++ b/chrome/android/chrome_public_apk_tmpl.gni -@@ -29,7 +29,7 @@ declare_args() { +@@ -30,7 +30,7 @@ declare_args() { chrome_public_manifest_package = "org.chromium.chrome" if (use_stable_package_name_for_trichrome) { chrome_public_manifest_package += ".stable" diff --git a/build/cromite_patches/enable-ftrivial-auto-var-init-zero.patch b/build/cromite_patches/enable-ftrivial-auto-var-init-zero.patch index 315e57d0..2f97b2b0 100644 --- a/build/cromite_patches/enable-ftrivial-auto-var-init-zero.patch +++ b/build/cromite_patches/enable-ftrivial-auto-var-init-zero.patch @@ -11,7 +11,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn --- a/build/config/compiler/BUILD.gn +++ b/build/config/compiler/BUILD.gn -@@ -398,6 +398,10 @@ config("compiler") { +@@ -411,6 +411,10 @@ config("compiler") { cflags += [ "-fwrapv" ] } diff --git a/build/cromite_patches/exit-on-failure-of-inclusion.patch b/build/cromite_patches/exit-on-failure-of-inclusion.patch index 631cad9c..8df2c7f9 100644 --- a/build/cromite_patches/exit-on-failure-of-inclusion.patch +++ b/build/cromite_patches/exit-on-failure-of-inclusion.patch @@ -10,7 +10,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/installer/linux/debian/build.sh b/chrome/installer/linux/debian/build.sh --- a/chrome/installer/linux/debian/build.sh +++ b/chrome/installer/linux/debian/build.sh -@@ -246,15 +246,15 @@ DEB_CHANGELOG="${TMPFILEDIR}/changelog" +@@ -250,15 +250,15 @@ DEB_CHANGELOG="${TMPFILEDIR}/changelog" DEB_FILES="${TMPFILEDIR}/files" DEB_CONTROL="${TMPFILEDIR}/control" diff --git a/build/cromite_patches/eyeo-133.0.6943.49-android_api.patch b/build/cromite_patches/eyeo-133.0.6943.49-android_api.patch index 3a2de062..520dc96e 100644 --- a/build/cromite_patches/eyeo-133.0.6943.49-android_api.patch +++ b/build/cromite_patches/eyeo-133.0.6943.49-android_api.patch @@ -6,7 +6,7 @@ Based on Chromium 133.0.6943.49 Pre-requisites: eyeo Browser Ad filtering Solution: Base Module --- - chrome/android/BUILD.gn | 14 + + chrome/android/BUILD.gn | 13 + chrome/android/chrome_java_sources.gni | 4 + .../browser/adblock/TabIdTranslator.java | 36 ++ chrome/browser/BUILD.gn | 4 + @@ -46,7 +46,7 @@ Pre-requisites: eyeo Browser Ad filtering Solution: Base Module .../adblock/TestVerificationUtils.java | 220 +++++++ ...esource_classification_notifier_android.cc | 163 +++++ ...resource_classification_notifier_android.h | 72 +++ - 40 files changed, 5610 insertions(+) + 40 files changed, 5609 insertions(+) create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/adblock/TabIdTranslator.java create mode 100644 chrome/browser/android/adblock/tab_id_translator_jni.cc create mode 100644 components/adblock/android/BUILD.gn @@ -95,17 +95,9 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn +# This source code is a part of eyeo Chromium SDK. +# Use of this source code is governed by the GPLv3 that can be found in the components/adblock/LICENSE file. - import("//build/android/resource_sizes.gni") import("//build/config/android/config.gni") -@@ -288,6 +291,7 @@ if (current_toolchain == default_toolchain) { - if (enable_screen_capture) { - deps += [ "//chrome/browser:screen_capture_java_resources" ] - } -+ - } - - android_resources("java_overlay_resources") { -@@ -532,6 +536,7 @@ if (current_toolchain == default_toolchain) { + import("//build/config/cronet/config.gni") +@@ -548,6 +551,7 @@ if (_is_default_toolchain) { "//chrome/browser/xsurface:java", "//chrome/browser/xsurface_provider:dependency_provider_impl_java", "//chrome/browser/xsurface_provider:java", @@ -113,7 +105,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn "//components/android_autofill/browser:java", "//components/autofill/android:autofill_features_java", "//components/autofill/android:autofill_java", -@@ -1331,6 +1336,7 @@ if (current_toolchain == default_toolchain) { +@@ -1357,6 +1361,7 @@ if (_is_default_toolchain) { "javatests:chrome_test_java_org.chromium.chrome.browser.toolbar", "javatests:chrome_test_java_org.chromium.chrome.browser.webapps", "javatests:chrome_test_java_various", @@ -121,7 +113,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn "//chrome/browser/android/browserservices/verification:javatests", "//chrome/browser/android/httpclient:javatests", "//chrome/browser/android/metrics:ukm_javatests", -@@ -1399,6 +1405,7 @@ if (current_toolchain == default_toolchain) { +@@ -1426,6 +1431,7 @@ if (_is_default_toolchain) { "//chrome/test/data/translate/", "//chrome/test/data/webauthn/", "//chrome/test/media_router/resources/", @@ -129,27 +121,27 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn "//components/test/data/autofill/", "//components/test/data/payments/", "//content/test/data/browsing_data/", -@@ -3200,6 +3207,12 @@ generate_jni("chrome_jni_headers") { - sources += [ "java/src/org/chromium/chrome/browser/media/MediaCapturePickerDialogBridge.java" ] - } +@@ -3225,6 +3231,12 @@ if (_is_default_toolchain) { + sources += [ "java/src/org/chromium/chrome/browser/media/MediaCapturePickerDialogBridge.java" ] + } -+ ### Android API module start -+ sources += -+ [ "java/src/org/chromium/chrome/browser/adblock/TabIdTranslator.java" ] -+ -+ ### Android API module end -+ - # Used for testing only, should not be shipped to end users. - if (enable_offline_pages_harness) { - sources += [ "java/src/org/chromium/chrome/browser/offlinepages/evaluation/OfflinePageEvaluationBridge.java" ] -@@ -3290,6 +3303,7 @@ group("jni_headers") { - "//chrome/browser/ui/messages/android:jni_headers", - "//chrome/browser/util:jni_headers", - "//chrome/browser/webauthn/android:jni_headers", -+ "//components/adblock/android:jni_headers", - "//components/browser_ui/device_lock/android:device_lock_bridge_jni_headers", - "//components/content_relationship_verification/android:jni_headers", - "//components/image_fetcher:jni_headers", ++ ### Android API module start ++ sources += ++ [ "java/src/org/chromium/chrome/browser/adblock/TabIdTranslator.java" ] ++ ++ ### Android API module end ++ + # Used for testing only, should not be shipped to end users. + if (enable_offline_pages_harness) { + sources += [ "java/src/org/chromium/chrome/browser/offlinepages/evaluation/OfflinePageEvaluationBridge.java" ] +@@ -3320,6 +3332,7 @@ if (_is_default_toolchain) { + "//chrome/browser/ui/plus_addresses/android:jni_headers", + "//chrome/browser/util:jni_headers", + "//chrome/browser/webauthn/android:jni_headers", ++ "//components/adblock/android:jni_headers", + "//components/browser_ui/device_lock/android:device_lock_bridge_jni_headers", + "//components/content_relationship_verification/android:jni_headers", + "//components/image_fetcher:jni_headers", diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni --- a/chrome/android/chrome_java_sources.gni +++ b/chrome/android/chrome_java_sources.gni @@ -163,7 +155,7 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java import("//content/public/common/features.gni") -@@ -54,6 +57,7 @@ chrome_java_sources = [ +@@ -55,6 +58,7 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/accessibility/AccessibilityTabHelper.java", "java/src/org/chromium/chrome/browser/accessibility/PageZoomIphController.java", "java/src/org/chromium/chrome/browser/accessibility/settings/ChromeAccessibilitySettingsDelegate.java", @@ -215,7 +207,7 @@ new file mode 100644 diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -3251,6 +3251,10 @@ static_library("browser") { +@@ -3336,6 +3336,10 @@ static_library("browser") { "touch_to_fill/password_manager/touch_to_fill_controller_webauthn_delegate.h", ] @@ -275,9 +267,9 @@ new file mode 100644 diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn --- a/chrome/browser/ui/BUILD.gn +++ b/chrome/browser/ui/BUILD.gn -@@ -1003,6 +1003,12 @@ static_library("ui") { +@@ -986,6 +986,12 @@ static_library("ui") { deps += [ - "//chrome/browser/search/background:ntp_background_proto", + "//components/themes:ntp_background_proto", ] + ### Android API module start + deps += [ diff --git a/build/cromite_patches/eyeo-133.0.6943.49-android_settings.patch b/build/cromite_patches/eyeo-133.0.6943.49-android_settings.patch index 9d7ae27b..fe092f88 100644 --- a/build/cromite_patches/eyeo-133.0.6943.49-android_settings.patch +++ b/build/cromite_patches/eyeo-133.0.6943.49-android_settings.patch @@ -239,10 +239,10 @@ Pre-requisites: eyeo Browser Ad filtering Solution: Base Module and Android API diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -292,6 +292,10 @@ if (current_toolchain == default_toolchain) { +@@ -298,6 +298,10 @@ if (_is_default_toolchain) { + if (enable_screen_capture) { deps += [ "//chrome/browser:screen_capture_java_resources" ] } - + ### Android UI module start + deps += [ "//chrome/browser/adblock/android:java_ui_resources" ] + @@ -250,7 +250,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn } android_resources("java_overlay_resources") { -@@ -776,6 +780,10 @@ if (current_toolchain == default_toolchain) { +@@ -794,6 +798,10 @@ if (_is_default_toolchain) { "//url/mojom:url_mojom_origin_java", ] diff --git a/build/cromite_patches/eyeo-133.0.6943.49-base.patch b/build/cromite_patches/eyeo-133.0.6943.49-base.patch index 3ab554e1..0504aeb7 100644 --- a/build/cromite_patches/eyeo-133.0.6943.49-base.patch +++ b/build/cromite_patches/eyeo-133.0.6943.49-base.patch @@ -4,13 +4,12 @@ Subject: eyeo Browser Ad filtering Solution: Base Module Based on Chromium 133.0.6943.49 --- - BUILD.gn | 4 + - DEPS | 12 + + DEPS | 10 + LICENSE | 15 + README.md | 12 + base/threading/thread_restrictions.h | 9 + base/trace_event/builtin_categories.h | 1 + - components/BUILD.gn | 10 + + components/BUILD.gn | 7 + components/adblock/BUILD.gn | 36 + components/adblock/CHANGELOG.md | 746 +++++++++ components/adblock/LICENSE | 674 ++++++++ @@ -23,7 +22,7 @@ Based on Chromium 133.0.6943.49 .../content/browser/adblock_filter_match.h | 30 + .../browser/adblock_internals_page_handler.cc | 171 ++ .../browser/adblock_internals_page_handler.h | 61 + - .../content/browser/adblock_internals_ui.cc | 68 + + .../content/browser/adblock_internals_ui.cc | 67 + .../content/browser/adblock_internals_ui.h | 49 + .../browser/adblock_url_loader_factory.cc | 813 ++++++++++ .../browser/adblock_url_loader_factory.h | 100 ++ @@ -366,7 +365,7 @@ Based on Chromium 133.0.6943.49 tools/eyeo/update_git_grafts.py | 138 ++ tools/gritsettings/resource_ids.spec | 12 + .../histograms/metadata/extensions/enums.xml | 8 +- - 362 files changed, 48854 insertions(+), 8 deletions(-) + 361 files changed, 48844 insertions(+), 8 deletions(-) create mode 100644 components/adblock/BUILD.gn create mode 100644 components/adblock/CHANGELOG.md create mode 100644 components/adblock/LICENSE @@ -698,39 +697,10 @@ Based on Chromium 133.0.6943.49 create mode 100644 tools/eyeo/git-grafts.txt create mode 100755 tools/eyeo/update_git_grafts.py -diff --git a/BUILD.gn b/BUILD.gn ---- a/BUILD.gn -+++ b/BUILD.gn -@@ -1,6 +1,9 @@ - # Copyright 2013 The Chromium Authors - # Use of this source code is governed by a BSD-style license that can be - # found in the LICENSE file. -+# -+# This source code is a part of eyeo Chromium SDK. -+# Use of this source code is governed by the GPLv3 that can be found in the components/adblock/LICENSE file. - - # This is the root build file for GN. GN will start processing by loading this - # file, and recursively load all dependencies until all dependencies are either -@@ -440,6 +443,7 @@ group("gn_all") { - "//chrome/browser/android/examples/partner_browser_customizations_provider:partner_browser_customizations_example_apk", - "//content/shell/android:content_shell_test_apk", - ] -+ - } - - if (enable_chrome_android_internal) { diff --git a/DEPS b/DEPS --- a/DEPS +++ b/DEPS -@@ -168,6 +168,7 @@ vars = { - # flag is set True. - 'checkout_wpr_archives': False, - -+ - # By default, do not check out WebKit for iOS, as it is not needed unless - # running against ToT WebKit rather than system WebKit. This can be overridden - # e.g. with custom_vars. -@@ -262,6 +263,7 @@ vars = { +@@ -282,6 +282,7 @@ vars = { 'download_libvpx_testdata': False, 'android_git': 'https://android.googlesource.com', @@ -738,9 +708,9 @@ diff --git a/DEPS b/DEPS 'aomedia_git': 'https://aomedia.googlesource.com', 'boringssl_git': 'https://boringssl.googlesource.com', 'chrome_git': 'https://chrome-internal.googlesource.com', -@@ -502,6 +504,11 @@ vars = { +@@ -529,6 +530,11 @@ vars = { # and whatever else without interference from each other. - 'llvm_libc_revision': 'a02de4d0d992b110c8b180fdec91258e7b60265f', + 'compiler_rt_revision': '57196dd146582915c955f6d388e31aea93220c51', + # Three lines of non-changing comments so that + # the commit queue can handle CLs rolling feed @@ -749,8 +719,8 @@ diff --git a/DEPS b/DEPS + # If you change this, also update the libc++ revision in # //buildtools/deps_revisions.gni. - 'libcxx_revision': '7f8b68f91ca8b192375f5e71cd81fb3ed9650ef3', -@@ -1460,6 +1467,10 @@ deps = { + 'libcxx_revision': 'a01c02c9d4acbdae3b7e8a2f3ee58579a9c29f96', +@@ -1516,6 +1522,10 @@ deps = { 'condition': 'checkout_android and checkout_src_internal', }, @@ -759,16 +729,8 @@ diff --git a/DEPS b/DEPS + }, + 'src/docs/website': { - 'url': Var('chromium_git') + '/website.git' + '@' + '441c86221443f48e818335d51f84cf1880c35aa4', - }, -@@ -1589,6 +1600,7 @@ deps = { - 'url': Var('chromium_git') + '/external/github.com/google/Accessibility-Test-Framework-for-Android.git' + '@' + '4a764c690353ea136c82f1a696a70bf38d1ef5fe', + 'url': Var('chromium_git') + '/website.git' + '@' + 'd21d90790d8ea421b317c4cb52a0d94133422796', }, - -+ - 'src/third_party/android_build_tools/protoc/cipd': { - 'packages': [ - { diff --git a/LICENSE b/LICENSE --- a/LICENSE +++ b/LICENSE @@ -832,9 +794,9 @@ diff --git a/base/threading/thread_restrictions.h b/base/threading/thread_restri +class SubscriptionServiceFactory; +} // namespace adblock namespace ash { - class BrowserDataBackMigrator; class LoginEventRecorder; -@@ -660,6 +667,8 @@ class BASE_EXPORT ScopedAllowBlocking { + class StartupCustomizationDocument; +@@ -661,6 +668,8 @@ class BASE_EXPORT ScopedAllowBlocking { friend class ::BrowserStateDirectoryBuilder; #endif @@ -846,7 +808,7 @@ diff --git a/base/threading/thread_restrictions.h b/base/threading/thread_restri diff --git a/base/trace_event/builtin_categories.h b/base/trace_event/builtin_categories.h --- a/base/trace_event/builtin_categories.h +++ b/base/trace_event/builtin_categories.h -@@ -96,6 +96,7 @@ PERFETTO_DEFINE_CATEGORIES_IN_NAMESPACE_WITH_ATTRS( +@@ -123,6 +123,7 @@ PERFETTO_DEFINE_CATEGORIES_IN_NAMESPACE_WITH_ATTRS( perfetto::Category("exo"), perfetto::Category("extensions"), perfetto::Category("explore_sites"), @@ -867,7 +829,7 @@ diff --git a/components/BUILD.gn b/components/BUILD.gn import("//base/debug/debug.gni") import("//build/config/chrome_build.gni") -@@ -177,6 +180,7 @@ test("components_unittests") { +@@ -179,6 +182,7 @@ test("components_unittests") { deps = [ "//base", @@ -875,7 +837,7 @@ diff --git a/components/BUILD.gn b/components/BUILD.gn "//components/affiliations/core/browser:unit_tests", "//components/aggregation_service:unit_tests", "//components/apdu:unit_tests", -@@ -893,6 +897,7 @@ test("components_unittests") { +@@ -918,6 +922,7 @@ test("components_unittests") { repack("components_tests_pak") { sources = [ @@ -883,7 +845,7 @@ diff --git a/components/BUILD.gn b/components/BUILD.gn "$root_gen_dir/components/arc/input_overlay_resources.pak", "$root_gen_dir/components/autofill/core/browser/geo/autofill_address_rewriter_resources.pak", "$root_gen_dir/components/components_resources.pak", -@@ -909,6 +914,7 @@ repack("components_tests_pak") { +@@ -934,6 +939,7 @@ repack("components_tests_pak") { # TODO(b/207518736): Input overlay resources will be changed to proto soon, # thus not going to move this resource pak to under ash. "//chromeos/ash/experiences/arc/input_overlay/resources:resources_grit", @@ -891,7 +853,7 @@ diff --git a/components/BUILD.gn b/components/BUILD.gn "//components/autofill/core/browser:autofill_address_rewriter_resources", "//components/metrics:server_urls_grd", "//components/omnibox/resources:omnibox_pedal_synonyms", -@@ -1010,6 +1016,7 @@ if (use_blink) { +@@ -1035,6 +1041,7 @@ if (use_blink) { deps = [ "//base", "//base/test:test_support", @@ -899,16 +861,6 @@ diff --git a/components/BUILD.gn b/components/BUILD.gn "//components/autofill/content/browser", "//components/autofill/content/browser:browser_tests", "//components/autofill/content/renderer", -@@ -1219,6 +1226,9 @@ if (use_blink) { - - deps = [ - "//base", -+ "//components/adblock/core/classifier:perf_tests", -+ "//components/adblock/core/converter:perf_tests", -+ "//components/adblock/core/subscription:perf_tests", - "//components/attribution_reporting", - "//components/bookmarks/test", - "//components/discardable_memory/common", diff --git a/components/adblock/BUILD.gn b/components/adblock/BUILD.gn new file mode 100644 --- /dev/null @@ -3513,7 +3465,7 @@ diff --git a/components/adblock/content/browser/adblock_internals_ui.cc b/compon new file mode 100644 --- /dev/null +++ b/components/adblock/content/browser/adblock_internals_ui.cc -@@ -0,0 +1,68 @@ +@@ -0,0 +1,67 @@ + +/* \ + * This file is part of eyeo Chromium SDK, \ @@ -3565,8 +3517,7 @@ new file mode 100644 + "trusted-types static-types " + // Add TrustedTypes policies necessary for using Polymer. + "polymer-html-literal polymer-template-event-attribute-policy;"); -+ source->AddResourcePaths( -+ base::span(kAdblockInternalsResources, kAdblockInternalsResourcesSize)); ++ source->AddResourcePaths(kAdblockInternalsResources); + source->SetDefaultResource(IDR_ADBLOCK_INTERNALS_ADBLOCK_INTERNALS_HTML); +} + @@ -18739,7 +18690,7 @@ new file mode 100644 +build_webui("build") { + grd_prefix = "adblock_internals" + static_files = [ "adblock_internals.html" ] -+ non_web_component_files = [ "adblock_internals.ts" ] ++ ts_files = [ "adblock_internals.ts" ] + mojo_files_deps = [ "//components/adblock/content/browser/mojom:adblock_internals_ts__generator" ] + mojo_files = [ "$root_gen_dir/components/adblock/content/browser/mojom/adblock_internals.mojom-webui.ts" ] + ts_definitions = [ "//tools/typescript/definitions/chrome_send.d.ts" ] @@ -50302,7 +50253,7 @@ diff --git a/content/browser/loader/navigation_url_loader_impl.cc b/content/brow #include "content/browser/loader/navigation_url_loader_impl.h" #include -@@ -1212,7 +1216,7 @@ void NavigationURLLoaderImpl::OnReceiveRedirect( +@@ -1254,7 +1258,7 @@ void NavigationURLLoaderImpl::OnReceiveRedirect( LogQueueTimeHistogram("Navigation.QueueTime.OnReceiveRedirect", resource_request_->is_outermost_main_frame); net::Error error = net::OK; @@ -50325,7 +50276,7 @@ diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/b #include "content/browser/renderer_host/render_frame_host_impl.h" -@@ -3464,6 +3468,12 @@ void RenderFrameHostImpl::ExecuteJavaScriptMethod( +@@ -3513,6 +3517,12 @@ void RenderFrameHostImpl::ExecuteJavaScriptMethod( std::move(callback)); } @@ -50352,7 +50303,7 @@ diff --git a/content/browser/renderer_host/render_frame_host_impl.h b/content/br #ifndef CONTENT_BROWSER_RENDERER_HOST_RENDER_FRAME_HOST_IMPL_H_ #define CONTENT_BROWSER_RENDERER_HOST_RENDER_FRAME_HOST_IMPL_H_ -@@ -495,6 +499,10 @@ class CONTENT_EXPORT RenderFrameHostImpl +@@ -499,6 +503,10 @@ class CONTENT_EXPORT RenderFrameHostImpl const std::u16string& method_name, base::Value::List arguments, JavaScriptResultCallback callback) override; @@ -50377,7 +50328,7 @@ diff --git a/content/public/browser/render_frame_host.h b/content/public/browser #ifndef CONTENT_PUBLIC_BROWSER_RENDER_FRAME_HOST_H_ #define CONTENT_PUBLIC_BROWSER_RENDER_FRAME_HOST_H_ -@@ -552,6 +556,9 @@ class CONTENT_EXPORT RenderFrameHost : public IPC::Listener, +@@ -551,6 +555,9 @@ class CONTENT_EXPORT RenderFrameHost : public IPC::Listener, virtual void AddMessageToConsole(blink::mojom::ConsoleMessageLevel level, const std::string& message) = 0; @@ -50426,7 +50377,7 @@ diff --git a/content/public/test/fake_local_frame.cc b/content/public/test/fake_ #include "content/public/test/fake_local_frame.h" -@@ -95,6 +99,9 @@ void FakeLocalFrame::RequestVideoFrameAtWithBoundsHint( +@@ -99,6 +103,9 @@ void FakeLocalFrame::RequestVideoFrameAtWithBoundsHint( void FakeLocalFrame::PluginActionAt(const gfx::Point& location, blink::mojom::PluginActionType action) {} @@ -50450,7 +50401,7 @@ diff --git a/content/public/test/fake_local_frame.h b/content/public/test/fake_l #ifndef CONTENT_PUBLIC_TEST_FAKE_LOCAL_FRAME_H_ #define CONTENT_PUBLIC_TEST_FAKE_LOCAL_FRAME_H_ -@@ -78,6 +82,7 @@ class FakeLocalFrame : public blink::mojom::LocalFrame { +@@ -80,6 +84,7 @@ class FakeLocalFrame : public blink::mojom::LocalFrame { RequestVideoFrameAtWithBoundsHintCallback callback) override; void PluginActionAt(const gfx::Point& location, blink::mojom::PluginActionType action) override; @@ -50547,16 +50498,16 @@ diff --git a/content/shell/app/shell_main_delegate.cc b/content/shell/app/shell_ #include "content/shell/app/shell_main_delegate.h" -@@ -30,7 +34,7 @@ +@@ -32,7 +36,7 @@ #include "content/public/common/main_function_params.h" #include "content/public/common/url_constants.h" #include "content/shell/app/shell_crash_reporter_client.h" -#include "content/shell/browser/shell_content_browser_client.h" +#include "content/shell/browser/adblock/adblock_shell_content_browser_client.h" - #include "content/shell/browser/shell_paths.h" #include "content/shell/common/shell_content_client.h" + #include "content/shell/common/shell_paths.h" #include "content/shell/common/shell_switches.h" -@@ -446,7 +450,7 @@ ContentBrowserClient* ShellMainDelegate::CreateContentBrowserClient() { +@@ -447,7 +451,7 @@ ContentBrowserClient* ShellMainDelegate::CreateContentBrowserClient() { return browser_client_.get(); } #endif @@ -50883,7 +50834,7 @@ diff --git a/extensions/browser/api/web_request/web_request_proxying_url_loader_ #include "extensions/browser/api/web_request/web_request_proxying_url_loader_factory.h" #include -@@ -453,6 +457,7 @@ void WebRequestProxyingURLLoaderFactory::InProgressRequest::OnReceiveRedirect( +@@ -452,6 +456,7 @@ void WebRequestProxyingURLLoaderFactory::InProgressRequest::OnReceiveRedirect( TRACE_EVENT_FLAG_FLOW_IN | TRACE_EVENT_FLAG_FLOW_OUT); if (redirect_url_ != redirect_info.new_url && @@ -50930,7 +50881,7 @@ diff --git a/services/network/public/cpp/net_ipc_param_traits.h b/services/netwo #ifndef SERVICES_NETWORK_PUBLIC_CPP_NET_IPC_PARAM_TRAITS_H_ #define SERVICES_NETWORK_PUBLIC_CPP_NET_IPC_PARAM_TRAITS_H_ -@@ -269,6 +273,7 @@ IPC_STRUCT_TRAITS_BEGIN(net::RedirectInfo) +@@ -275,6 +279,7 @@ IPC_STRUCT_TRAITS_BEGIN(net::RedirectInfo) IPC_STRUCT_TRAITS_MEMBER(new_referrer) IPC_STRUCT_TRAITS_MEMBER(insecure_scheme_was_upgraded) IPC_STRUCT_TRAITS_MEMBER(is_signed_exchange_fallback_redirect) @@ -50952,7 +50903,7 @@ diff --git a/third_party/blink/public/mojom/frame/frame.mojom b/third_party/blin module blink.mojom; -@@ -968,6 +972,10 @@ interface LocalFrame { +@@ -979,6 +983,10 @@ interface LocalFrame { // the given point in the view coordinate space. PluginActionAt(gfx.mojom.Point location, blink.mojom.PluginActionType action); @@ -50977,7 +50928,7 @@ diff --git a/third_party/blink/public/web/web_document.h b/third_party/blink/pub #ifndef THIRD_PARTY_BLINK_PUBLIC_WEB_WEB_DOCUMENT_H_ #define THIRD_PARTY_BLINK_PUBLIC_WEB_WEB_DOCUMENT_H_ -@@ -143,6 +147,14 @@ class BLINK_EXPORT WebDocument : public WebNode { +@@ -151,6 +155,14 @@ class BLINK_EXPORT WebDocument : public WebNode { WebCssOrigin = WebCssOrigin::kAuthor, BackForwardCacheAware = BackForwardCacheAware::kAllow); @@ -51006,7 +50957,7 @@ diff --git a/third_party/blink/renderer/core/dom/events/event_target.cc b/third_ #include "third_party/blink/renderer/core/dom/events/event_target.h" #include -@@ -867,7 +871,10 @@ bool EventTarget::dispatchEventForBindings(Event* event, +@@ -882,7 +886,10 @@ bool EventTarget::dispatchEventForBindings(Event* event, if (!GetExecutionContext()) return false; @@ -51021,7 +50972,7 @@ diff --git a/third_party/blink/renderer/core/dom/events/event_target.cc b/third_ diff --git a/third_party/blink/renderer/core/exported/web_document.cc b/third_party/blink/renderer/core/exported/web_document.cc --- a/third_party/blink/renderer/core/exported/web_document.cc +++ b/third_party/blink/renderer/core/exported/web_document.cc -@@ -266,6 +266,56 @@ WebStyleSheetKey WebDocument::InsertStyleSheet( +@@ -276,6 +276,56 @@ WebStyleSheetKey WebDocument::InsertStyleSheet( return injection_key; } @@ -51121,7 +51072,7 @@ diff --git a/third_party/blink/renderer/core/frame/local_frame_mojo_handler.h b/ #ifndef THIRD_PARTY_BLINK_RENDERER_CORE_FRAME_LOCAL_FRAME_MOJO_HANDLER_H_ #define THIRD_PARTY_BLINK_RENDERER_CORE_FRAME_LOCAL_FRAME_MOJO_HANDLER_H_ -@@ -112,6 +116,7 @@ class LocalFrameMojoHandler +@@ -114,6 +118,7 @@ class LocalFrameMojoHandler void AddMessageToConsole(mojom::blink::ConsoleMessageLevel level, const WTF::String& message, bool discard_duplicates) final; @@ -51143,7 +51094,7 @@ diff --git a/third_party/blink/renderer/core/html/html_element.cc b/third_party/ #include "third_party/blink/renderer/core/html/html_element.h" #include "base/containers/enum_set.h" -@@ -2414,7 +2418,13 @@ void HTMLElement::setSpellcheck(bool enable) { +@@ -2494,7 +2498,13 @@ void HTMLElement::setSpellcheck(bool enable) { } void HTMLElement::click() { @@ -51822,7 +51773,7 @@ diff --git a/tools/gritsettings/resource_ids.spec b/tools/gritsettings/resource_ # This file is used to assign starting resource ids for resources and strings # used by Chromium. This is done to ensure that resource ids are unique # across all the grd files. If you are adding a new grd file, please add -@@ -1109,6 +1113,14 @@ +@@ -1161,6 +1165,14 @@ "components/user_scripts/browser/resources/browser_resources.grd": { "includes": [7620], }, @@ -51860,10 +51811,10 @@ diff --git a/tools/metrics/histograms/metadata/extensions/enums.xml b/tools/metr -@@ -3196,6 +3200,8 @@ Called by update_extension_permission.py.--> - +@@ -3209,6 +3213,8 @@ Called by update_extension_permission.py.--> + + + diff --git a/build/cromite_patches/eyeo-133.0.6943.49-chrome_integration.patch b/build/cromite_patches/eyeo-133.0.6943.49-chrome_integration.patch index 270c03f0..7a2b35f1 100644 --- a/build/cromite_patches/eyeo-133.0.6943.49-chrome_integration.patch +++ b/build/cromite_patches/eyeo-133.0.6943.49-chrome_integration.patch @@ -50,7 +50,6 @@ Pre-requisites: eyeo Browser Ad filtering Solution: Base Module .../profile_keyed_service_browsertest.cc | 18 + chrome/browser/resources/BUILD.gn | 5 + .../safe_browsing_blocking_page_test.cc | 7 +- - .../sessions/session_restore_browsertest.cc | 8 +- ...subresource_filter_browser_test_harness.cc | 8 +- chrome/browser/ui/BUILD.gn | 4 + chrome/browser/ui/prefs/pref_watcher.cc | 13 + @@ -59,7 +58,7 @@ Pre-requisites: eyeo Browser Ad filtering Solution: Base Module chrome/common/BUILD.gn | 3 + chrome/test/BUILD.gn | 14 + chrome/test/base/in_process_browser_test.cc | 24 +- - 53 files changed, 3309 insertions(+), 7 deletions(-) + 52 files changed, 3302 insertions(+), 6 deletions(-) create mode 100644 chrome/browser/adblock/README.md create mode 100644 chrome/browser/adblock/adblock_chrome_content_browser_client.cc create mode 100644 chrome/browser/adblock/adblock_chrome_content_browser_client.h @@ -106,7 +105,7 @@ diff --git a/chrome/app/chrome_main_delegate.cc b/chrome/app/chrome_main_delegat #ifdef UNSAFE_BUFFERS_BUILD // TODO(crbug.com/40285824): Remove this and convert code to safer constructs. -@@ -42,6 +46,7 @@ +@@ -43,6 +47,7 @@ #include "base/timer/timer.h" #include "base/trace_event/trace_event_impl.h" #include "build/build_config.h" @@ -114,7 +113,7 @@ diff --git a/chrome/app/chrome_main_delegate.cc b/chrome/app/chrome_main_delegat #include "chrome/browser/buildflags.h" #include "chrome/browser/chrome_content_browser_client.h" #include "chrome/browser/chrome_resource_bundle_helper.h" -@@ -1630,7 +1635,7 @@ content::ContentClient* ChromeMainDelegate::CreateContentClient() { +@@ -1625,7 +1630,7 @@ content::ContentClient* ChromeMainDelegate::CreateContentClient() { content::ContentBrowserClient* ChromeMainDelegate::CreateContentBrowserClient() { chrome_content_browser_client_ = @@ -136,24 +135,24 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn import("//base/allocator/allocator.gni") import("//build/buildflag_header.gni") -@@ -171,6 +174,8 @@ static_library("browser") { +@@ -174,6 +177,8 @@ static_library("browser") { "accessibility/page_colors_factory.h", "accessibility/prefers_default_scrollbar_styles_prefs.cc", "accessibility/prefers_default_scrollbar_styles_prefs.h", + "adblock/adblock_chrome_content_browser_client.cc", + "adblock/adblock_chrome_content_browser_client.h", - "affiliations/affiliation_service_factory.cc", - "affiliations/affiliation_service_factory.h", "after_startup_task_utils.cc", -@@ -2024,6 +2029,7 @@ static_library("browser") { + "after_startup_task_utils.h", + "app_mode/app_mode_utils.cc", +@@ -2083,6 +2088,7 @@ static_library("browser") { "//chrome/common/notifications", "//chrome/installer/util:with_no_strings", "//chrome/services/speech/buildflags", + "//components/adblock/content:browser", + "//components/application_locale_storage", "//components/assist_ranker", - "//components/autofill/core/browser", - "//components/back_forward_cache", -@@ -3245,6 +3251,7 @@ static_library("browser") { + "//components/autofill/content/browser", +@@ -3330,6 +3336,7 @@ static_library("browser") { "touch_to_fill/password_manager/touch_to_fill_controller_webauthn_delegate.h", ] @@ -161,7 +160,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn deps += [ ":delta_file_proto", ":profile_token", -@@ -8313,6 +8320,7 @@ static_library("browser_public_dependencies") { +@@ -8511,6 +8518,7 @@ static_library("browser_public_dependencies") { "//chrome/services/file_util/public/mojom", "//components/account_id", "//components/autofill/content/browser", @@ -3442,7 +3441,7 @@ diff --git a/chrome/browser/chrome_browser_main.cc b/chrome/browser/chrome_brows #include "chrome/browser/chrome_browser_main.h" -@@ -76,6 +80,7 @@ +@@ -77,6 +81,7 @@ #include "chrome/grit/branded_strings.h" #include "chrome/grit/generated_resources.h" #include "chrome/installer/util/google_update_settings.h" @@ -3450,7 +3449,7 @@ diff --git a/chrome/browser/chrome_browser_main.cc b/chrome/browser/chrome_brows #include "components/color/color_mixers.h" #include "components/device_event_log/device_event_log.h" #include "components/embedder_support/origin_trials/component_updater_utils.h" -@@ -1545,6 +1550,8 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() { +@@ -1535,6 +1540,8 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() { // called inside PostProfileInit. content::WebUIControllerFactory::RegisterFactory( ChromeWebUIControllerFactory::GetInstance()); @@ -3500,7 +3499,7 @@ diff --git a/chrome/browser/extensions/BUILD.gn b/chrome/browser/extensions/BUIL import("//build/config/chromebox_for_meetings/buildflags.gni") import("//build/config/chromeos/ui_mode.gni") -@@ -271,6 +274,7 @@ source_set("extensions") { +@@ -424,6 +427,7 @@ source_set("extensions") { "window_controller_list.h", "window_controller_list_observer.h", ] @@ -3508,7 +3507,7 @@ diff --git a/chrome/browser/extensions/BUILD.gn b/chrome/browser/extensions/BUIL configs += [ "//build/config:precompiled_headers", "//build/config/compiler:wexit_time_destructors", -@@ -725,6 +729,7 @@ source_set("extensions") { +@@ -775,6 +779,7 @@ source_set("extensions") { ] } @@ -3562,15 +3561,15 @@ diff --git a/chrome/browser/page_load_metrics/observers/ad_metrics/ads_page_load #include "components/page_load_metrics/browser/observers/ad_metrics/ads_page_load_metrics_observer.h" -@@ -21,6 +25,7 @@ - #include "chrome/browser/ui/browser.h" +@@ -23,6 +27,7 @@ #include "chrome/test/base/in_process_browser_test.h" + #include "chrome/test/base/interactive_test_utils.h" #include "chrome/test/base/ui_test_utils.h" +#include "components/adblock/core/features.h" #include "components/heavy_ad_intervention/heavy_ad_features.h" #include "components/page_load_metrics/browser/ads_page_load_metrics_test_waiter.h" - #include "components/page_load_metrics/browser/observers/ad_metrics/ad_intervention_browser_test_utils.h" -@@ -1499,7 +1504,7 @@ class AdsPageLoadMetricsObserverResourceBrowserTest + #include "components/page_load_metrics/browser/features.h" +@@ -1513,7 +1518,7 @@ class AdsPageLoadMetricsObserverResourceBrowserTest {heavy_ad_intervention::features::kHeavyAdIntervention, {}}, {heavy_ad_intervention::features::kHeavyAdPrivacyMitigations, {{"host-threshold", "3"}}}}, @@ -3598,8 +3597,8 @@ diff --git a/chrome/browser/preferences/BUILD.gn b/chrome/browser/preferences/BU "//chrome/common/pref_names.h", + "//components/adblock/core/common/adblock_prefs.cc", "//components/autofill/core/common/autofill_prefs.h", + "//components/bookmarks/common/bookmark_pref_names.h", "//components/commerce/core/pref_names.h", - "//components/dom_distiller/core/pref_names.h", diff --git a/chrome/browser/prefs/chrome_pref_service_factory.cc b/chrome/browser/prefs/chrome_pref_service_factory.cc --- a/chrome/browser/prefs/chrome_pref_service_factory.cc +++ b/chrome/browser/prefs/chrome_pref_service_factory.cc @@ -3649,7 +3648,7 @@ diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc #include "chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.h" -@@ -230,6 +234,15 @@ +@@ -242,6 +246,15 @@ #include "chrome/browser/webid/federated_identity_permission_context_factory.h" #include "chrome/common/buildflags.h" #include "chrome/common/chrome_features.h" @@ -3665,7 +3664,7 @@ diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc #include "components/autofill/content/browser/autofill_log_router_factory.h" #include "components/breadcrumbs/core/breadcrumbs_status.h" #include "components/captive_portal/core/buildflags.h" -@@ -874,6 +887,15 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -916,6 +929,15 @@ void ChromeBrowserMainExtraPartsProfiles:: // Makes manual testing possible. FakeSmartCardDeviceServiceFactory::GetInstance(); #endif @@ -3684,7 +3683,7 @@ diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc diff --git a/chrome/browser/profiles/profile_keyed_service_browsertest.cc b/chrome/browser/profiles/profile_keyed_service_browsertest.cc --- a/chrome/browser/profiles/profile_keyed_service_browsertest.cc +++ b/chrome/browser/profiles/profile_keyed_service_browsertest.cc -@@ -278,6 +278,17 @@ IN_PROC_BROWSER_TEST_F(ProfileKeyedServiceBrowserTest, +@@ -277,6 +277,17 @@ IN_PROC_BROWSER_TEST_F(ProfileKeyedServiceBrowserTest, "PermissionsUpdaterShutdownFactory", "PluginInfoHostImpl", "TurnSyncOnHelperShutdownNotifier", @@ -3702,7 +3701,7 @@ diff --git a/chrome/browser/profiles/profile_keyed_service_browsertest.cc b/chro }; // clang-format on -@@ -829,6 +840,13 @@ IN_PROC_BROWSER_TEST_F(ProfileKeyedServiceGuestBrowserTest, +@@ -852,6 +863,13 @@ IN_PROC_BROWSER_TEST_F(ProfileKeyedServiceGuestBrowserTest, "ZeroSuggestCacheServiceFactory", #endif // !BUILDFLAG(IS_CHROMEOS) @@ -3727,24 +3726,24 @@ diff --git a/chrome/browser/resources/BUILD.gn b/chrome/browser/resources/BUILD. +# This source code is a part of eyeo Chromium SDK. +# Use of this source code is governed by the GPLv3 that can be found in the components/adblock/LICENSE file. - import("//build/config/chromeos/ui_mode.gni") import("//chrome/browser/buildflags.gni") -@@ -270,6 +273,7 @@ group("dev_ui_resources") { + import("//chrome/common/features.gni") +@@ -291,6 +294,7 @@ group("dev_ui_resources") { "predictors:resources", "privacy_sandbox/internals:resources", "usb_internals:resources", + "//components/adblock/content/resources/adblock_internals:resources", "//components/commerce/core/internals/resources", + "//components/data_sharing/data_sharing_internals/resources", "//components/download/resources/download_internals:resources", - "//components/history_clusters/history_clusters_internals/resources", -@@ -335,6 +339,7 @@ repack("dev_ui_paks") { +@@ -358,6 +362,7 @@ repack("dev_ui_paks") { "$root_gen_dir/chrome/predictors_resources.pak", "$root_gen_dir/chrome/privacy_sandbox_internals_resources.pak", "$root_gen_dir/chrome/usb_internals_resources.pak", + "$root_gen_dir/components/adblock_internals_resources.pak", "$root_gen_dir/components/commerce_internals_resources.pak", + "$root_gen_dir/components/data_sharing_internals_resources.pak", "$root_gen_dir/components/dev_ui_components_resources.pak", - "$root_gen_dir/components/download_internals_resources.pak", diff --git a/chrome/browser/safe_browsing/safe_browsing_blocking_page_test.cc b/chrome/browser/safe_browsing/safe_browsing_blocking_page_test.cc --- a/chrome/browser/safe_browsing/safe_browsing_blocking_page_test.cc +++ b/chrome/browser/safe_browsing/safe_browsing_blocking_page_test.cc @@ -3759,7 +3758,7 @@ diff --git a/chrome/browser/safe_browsing/safe_browsing_blocking_page_test.cc b/ #include "components/safe_browsing/content/browser/safe_browsing_blocking_page.h" -@@ -70,6 +74,7 @@ +@@ -68,6 +72,7 @@ #include "chrome/common/url_constants.h" #include "chrome/test/base/in_process_browser_test.h" #include "chrome/test/base/ui_test_utils.h" @@ -3767,7 +3766,7 @@ diff --git a/chrome/browser/safe_browsing/safe_browsing_blocking_page_test.cc b/ #include "components/enterprise/connectors/core/common.h" #include "components/enterprise/connectors/core/connectors_prefs.h" #include "components/google/core/common/google_util.h" -@@ -682,7 +687,7 @@ class SafeBrowsingBlockingPageBrowserTest +@@ -358,7 +363,7 @@ class SafeBrowsingBlockingPageBrowserTest scoped_feature_list_.InitWithFeaturesAndParameters( {tag_and_attribute, add_warning_shown_timestamp_csbrrs, create_warning_shown_csbrrs, abusive_notification_revocation}, @@ -3776,32 +3775,6 @@ diff --git a/chrome/browser/safe_browsing/safe_browsing_blocking_page_test.cc b/ } SafeBrowsingBlockingPageBrowserTest( -diff --git a/chrome/browser/sessions/session_restore_browsertest.cc b/chrome/browser/sessions/session_restore_browsertest.cc ---- a/chrome/browser/sessions/session_restore_browsertest.cc -+++ b/chrome/browser/sessions/session_restore_browsertest.cc -@@ -1,6 +1,10 @@ - // Copyright 2012 The Chromium Authors - // Use of this source code is governed by a BSD-style license that can be - // found in the LICENSE file. -+// -+// This source code is a part of eyeo Chromium SDK. -+// Use of this source code is governed by the GPLv3 that can be found in the -+// components/adblock/LICENSE file. - - #ifdef UNSAFE_BUFFERS_BUILD - // TODO(crbug.com/40285824): Remove this and convert code to safer constructs. -@@ -4445,8 +4449,10 @@ INSTANTIATE_TEST_SUITE_P( - SessionRestoreStaleSessionCookieDeletionTest, - testing::Bool()); - -+// Disabled as it's flaky, see: https://issues.chromium.org/issues/348923077 -+// See also: https://eyeo.atlassian.net/browse/DPD-2773 - IN_PROC_BROWSER_TEST_P(SessionRestoreStaleSessionCookieDeletionTest, -- CookieStorage) { -+ DISABLED_CookieStorage) { - GURL open_page = https_server()->GetURL("a.test", "/empty.html"); - GURL other_page = https_server()->GetURL("b.test", "/empty.html"); - ASSERT_TRUE(ui_test_utils::NavigateToURL(browser(), open_page)); diff --git a/chrome/browser/subresource_filter/subresource_filter_browser_test_harness.cc b/chrome/browser/subresource_filter/subresource_filter_browser_test_harness.cc --- a/chrome/browser/subresource_filter/subresource_filter_browser_test_harness.cc +++ b/chrome/browser/subresource_filter/subresource_filter_browser_test_harness.cc @@ -3847,7 +3820,7 @@ diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn import("//build/config/buildflags_paint_preview.gni") import("//build/config/compiler/compiler.gni") -@@ -432,6 +435,7 @@ static_library("ui") { +@@ -423,6 +426,7 @@ static_library("ui") { "//chrome/services/media_gallery_util/public/mojom", "//components/access_code_cast/common:metrics", "//components/account_id", @@ -3906,7 +3879,7 @@ diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc #include "chrome/browser/ui/tab_helpers.h" -@@ -105,6 +109,8 @@ +@@ -102,6 +106,8 @@ #include "chrome/common/chrome_features.h" #include "chrome/common/chrome_isolated_world_ids.h" #include "chrome/common/chrome_switches.h" @@ -3915,7 +3888,7 @@ diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc #include "components/autofill/content/browser/content_autofill_client.h" #include "components/autofill/content/browser/content_autofill_driver_factory.h" #include "components/autofill/core/browser/foundations/browser_autofill_manager.h" -@@ -336,6 +342,12 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) { +@@ -343,6 +349,12 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) { optimization_guide_decider); } } @@ -3928,7 +3901,7 @@ diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc autofill::AutofillClientProvider& autofill_client_provider = autofill::AutofillClientProviderFactory::GetForProfile(profile); autofill_client_provider.CreateClientForWebContents(web_contents); -@@ -366,6 +378,7 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) { +@@ -380,6 +392,7 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) { ip_protection::IpProtectionStatus::CreateForWebContents(web_contents); } #endif // BUILDFLAG(IS_ANDROID) @@ -3949,15 +3922,15 @@ diff --git a/chrome/chrome_paks.gni b/chrome/chrome_paks.gni import("//ash/ambient/resources/resources.gni") import("//build/config/chrome_build.gni") -@@ -115,6 +118,7 @@ template("chrome_extra_paks") { - "$root_gen_dir/chrome/data_sharing_internals_resources.pak", +@@ -124,6 +127,7 @@ template("chrome_extra_paks") { + "$root_gen_dir/chrome/common_resources.pak", "$root_gen_dir/chrome/saved_tab_groups_unsupported_resources.pak", "$root_gen_dir/chrome/segmentation_internals_resources.pak", + "$root_gen_dir/components/adblock/core/resources/adblock_resources.pak", "$root_gen_dir/components/autofill/core/browser/geo/autofill_address_rewriter_resources.pak", "$root_gen_dir/components/autofill_and_password_manager_internals_resources.pak", "$root_gen_dir/components/chrome_urls_resources.pak", -@@ -150,6 +154,7 @@ template("chrome_extra_paks") { +@@ -159,6 +163,7 @@ template("chrome_extra_paks") { "//chrome/browser/resources:resources", "//chrome/browser/resources/saved_tab_groups_unsupported:resources", "//chrome/common:resources", @@ -3991,7 +3964,7 @@ diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn import("//build/cipd/cipd.gni") import("//build/config/buildflags_paint_preview.gni") -@@ -1641,6 +1644,7 @@ if (is_android) { +@@ -1766,6 +1769,7 @@ if (is_android) { "//chrome/test/data/webui:browser_tests", "//chrome/test/data/webui:interactive_ui_tests", "//chrome/test/data/webui:resources", @@ -3999,7 +3972,7 @@ diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn "//components/autofill/content/browser:test_support", "//components/autofill/content/renderer:test_support", "//components/autofill/core/common:common", -@@ -2231,6 +2235,7 @@ if (!is_android) { +@@ -2388,6 +2392,7 @@ if (!is_android) { "//chrome/test/media_router/access_code_cast:access_code_cast_integration_base", "//chrome/test/payments:test_support", "//chrome/test/supervised_user:test_support", @@ -4007,7 +3980,7 @@ diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn "//components/affiliations/core/browser:affiliation_proto", "//components/affiliations/core/browser:test_support", "//components/autofill/content/browser:autofill_shared_storage_proto", -@@ -2734,6 +2739,7 @@ if (!is_android) { +@@ -2891,6 +2896,7 @@ if (!is_android) { "//chrome/renderer/resources/extensions/", "//chrome/test/data/cart/", "//components/test/data/ad_tagging/", @@ -4015,8 +3988,8 @@ diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn "//components/test/data/ads_observer/", "//components/test/data/autofill/", "//components/test/data/custom_handlers", -@@ -2822,6 +2828,9 @@ if (!is_android) { - "../browser/accessibility/interstitial_accessibility_browsertest.cc", +@@ -2980,6 +2986,9 @@ if (!is_android) { + "../browser/accessibility/live_translate_controller_browsertest.cc", "../browser/accessibility/page_colors_browsertest.cc", "../browser/accessibility/phrase_segmentation/dependency_parser_model_loader_browsertest.cc", + "../browser/adblock/test/adblock_frame_hierarchy_builder_browsertest.cc", @@ -4025,7 +3998,7 @@ diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn "../browser/ai/ai_data_keyed_service_browsertest.cc", "../browser/attribution_reporting/chrome_attribution_browsertest.cc", "../browser/autocomplete/autocomplete_browsertest.cc", -@@ -4374,6 +4383,7 @@ if (!is_android) { +@@ -4531,6 +4540,7 @@ if (!is_android) { ] } @@ -4033,7 +4006,7 @@ diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn if (is_chromeos) { deps += [ "//chromeos/ash/components/network/portal_detector:test_support" ] -@@ -5856,6 +5866,7 @@ test("unit_tests") { +@@ -6049,6 +6059,7 @@ test("unit_tests") { sources = [ # All unittests in browser, common, renderer and service. "../browser/about_flags_unittest.cc", @@ -4041,7 +4014,7 @@ diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn "../browser/after_startup_task_utils_unittest.cc", "../browser/apps/icon_standardizer_unittest.cc", "../browser/apps/user_type_filter_unittest.cc", -@@ -6515,6 +6526,8 @@ test("unit_tests") { +@@ -6745,6 +6756,8 @@ test("unit_tests") { "//chrome/common/themes:unit_tests", "//chrome/services/file_util:unit_tests", "//components/account_id", @@ -4050,7 +4023,7 @@ diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn "//components/affiliations/core/browser:test_support", "//components/assist_ranker/proto", "//components/autofill/content/browser:test_support", -@@ -10319,6 +10332,7 @@ if (!is_android) { +@@ -10580,6 +10593,7 @@ if (!is_android) { "//chrome/browser:test_support_ui", "//chrome/browser/ui/exclusive_access", "//chrome/browser/ui/views/side_panel", @@ -4072,7 +4045,7 @@ diff --git a/chrome/test/base/in_process_browser_test.cc b/chrome/test/base/in_p #include "chrome/test/base/in_process_browser_test.h" #include -@@ -156,6 +160,10 @@ +@@ -155,6 +159,10 @@ #include "ui/views/widget/widget.h" #endif @@ -4083,7 +4056,7 @@ diff --git a/chrome/test/base/in_process_browser_test.cc b/chrome/test/base/in_p namespace { #if BUILDFLAG(IS_CHROMEOS) -@@ -615,8 +623,22 @@ void InProcessBrowserTest::CreatedBrowserMainParts( +@@ -595,8 +603,22 @@ void InProcessBrowserTest::CreatedBrowserMainParts( void InProcessBrowserTest::SelectFirstBrowser() { const BrowserList* browser_list = BrowserList::GetInstance(); diff --git a/build/cromite_patches/eyeo-133.0.6943.49-extension_api.patch b/build/cromite_patches/eyeo-133.0.6943.49-extension_api.patch index 86b3ae2e..2f579b5a 100644 --- a/build/cromite_patches/eyeo-133.0.6943.49-extension_api.patch +++ b/build/cromite_patches/eyeo-133.0.6943.49-extension_api.patch @@ -72,7 +72,7 @@ Pre-requisites: eyeo Browser Ad filtering Solution: Base Module diff --git a/chrome/browser/extensions/BUILD.gn b/chrome/browser/extensions/BUILD.gn --- a/chrome/browser/extensions/BUILD.gn +++ b/chrome/browser/extensions/BUILD.gn -@@ -729,6 +729,17 @@ source_set("extensions") { +@@ -779,6 +779,17 @@ source_set("extensions") { ] } @@ -103,7 +103,7 @@ diff --git a/chrome/browser/extensions/api/BUILD.gn b/chrome/browser/extensions/ import("//chrome/common/extensions/api/api_sources.gni") import("//chrome/common/features.gni") -@@ -133,6 +136,7 @@ function_registration("api_registration") { +@@ -138,6 +141,7 @@ function_registration("api_registration") { # include generated headers from these targets. # TODO(brettw) this should be made unnecessary if possible. "//chrome/common/extensions/api", @@ -2136,38 +2136,39 @@ diff --git a/chrome/browser/extensions/api/api_browser_context_keyed_service_fac +// Use of this source code is governed by the GPLv3 that can be found in the +// components/adblock/LICENSE file. - #include "chrome/browser/extensions/api/cookies/cookies_api.h" - #include "chrome/browser/extensions/api/developer_private/developer_private_api.h" -@@ -15,11 +19,13 @@ + #include "chrome/browser/extensions/api/bookmarks/bookmarks_api.h" + #include "chrome/browser/extensions/api/bookmarks/bookmarks_api_watcher.h" +@@ -19,12 +23,14 @@ #include "build/build_config.h" #include "build/chromeos_buildflags.h" #include "chrome/browser/extensions/api/activity_log_private/activity_log_private_api.h" +#include "chrome/browser/extensions/api/adblock_private/adblock_private_api.h" #include "chrome/browser/extensions/api/autofill_private/autofill_private_event_router_factory.h" #include "chrome/browser/extensions/api/bookmark_manager_private/bookmark_manager_private_api.h" - #include "chrome/browser/extensions/api/bookmarks/bookmarks_api.h" - #include "chrome/browser/extensions/api/bookmarks/bookmarks_api_watcher.h" // nogncheck #include "chrome/browser/extensions/api/braille_display_private/braille_display_private_api.h" -+#include "chrome/browser/extensions/api/eyeo_filtering_private/eyeo_filtering_private_api.h" + #include "chrome/browser/extensions/api/enterprise_reporting_private/enterprise_reporting_private_event_router.h" #include "chrome/browser/extensions/api/font_settings/font_settings_api.h" - #include "chrome/browser/extensions/api/history/history_api.h" #include "chrome/browser/extensions/api/identity/identity_api.h" -@@ -83,6 +89,7 @@ void EnsureApiBrowserContextKeyedServiceFactoriesBuilt() { ++#include "chrome/browser/extensions/api/eyeo_filtering_private/eyeo_filtering_private_api.h" + #include "chrome/browser/extensions/api/image_writer_private/operation_manager.h" + #include "chrome/browser/extensions/api/language_settings_private/language_settings_private_delegate_factory.h" + #include "chrome/browser/extensions/api/messaging/incognito_connectability.h" // nogncheck +@@ -88,6 +94,7 @@ void EnsureApiBrowserContextKeyedServiceFactoriesBuilt() { #if BUILDFLAG(ENABLE_EXTENSIONS) extensions::ActivityLogAPI::GetFactoryInstance(); + extensions::AdblockPrivateAPI::GetFactoryInstance(); extensions::AutofillPrivateEventRouterFactory::GetInstance(); extensions::BluetoothLowEnergyAPI::GetFactoryInstance(); - extensions::BookmarksAPI::GetFactoryInstance(); -@@ -93,6 +100,7 @@ void EnsureApiBrowserContextKeyedServiceFactoriesBuilt() { - #if BUILDFLAG(IS_CHROMEOS) + extensions::BookmarkManagerPrivateAPI::GetFactoryInstance(); +@@ -96,6 +103,7 @@ void EnsureApiBrowserContextKeyedServiceFactoriesBuilt() { extensions::DocumentScanAPIHandler::GetFactoryInstance(); #endif + extensions::EnterpriseReportingPrivateEventRouterFactory::GetInstance(); + extensions::EyeoFilteringPrivateAPI::GetFactoryInstance(); extensions::FontSettingsAPI::GetFactoryInstance(); - extensions::HistoryAPI::GetFactoryInstance(); extensions::IdentityAPI::GetFactoryInstance(); + extensions::IncognitoConnectability::EnsureFactoryBuilt(); diff --git a/chrome/browser/extensions/api/eyeo_filtering_private/eyeo_filtering_private_api.cc b/chrome/browser/extensions/api/eyeo_filtering_private/eyeo_filtering_private_api.cc new file mode 100644 --- /dev/null @@ -3579,9 +3580,9 @@ diff --git a/chrome/browser/extensions/extension_function_registration_test.cc b +// Use of this source code is governed by the GPLv3 that can be found in the +// components/adblock/LICENSE file. + #include "base/containers/contains.h" #include "base/one_shot_event.h" - #include "chrome/browser/extensions/extension_browsertest.h" -@@ -57,6 +61,12 @@ IN_PROC_BROWSER_TEST_F(ExtensionFunctionRegistrationTest, +@@ -58,6 +62,12 @@ IN_PROC_BROWSER_TEST_F(ExtensionFunctionRegistrationTest, base::CompareCase::SENSITIVE)) { continue; } @@ -3608,9 +3609,9 @@ diff --git a/chrome/common/extensions/api/_api_features.json b/chrome/common/ext // This features file defines extension APIs implemented under src/chrome. // See chrome/common/extensions/api/_features.md to understand this file, as -@@ -65,6 +69,16 @@ +@@ -70,6 +74,16 @@ "dependencies": ["permission:experimentalAiData"], - "channel": "dev" + "channel": "stable" }, + "adblockPrivate": [{ + "dependencies": ["permission:adblockPrivate"], @@ -3625,7 +3626,7 @@ diff --git a/chrome/common/extensions/api/_api_features.json b/chrome/common/ext "app": { "blocklist": [ "2FC374607C2DF285634B67C64A2E356C607091C3", // Quickoffice -@@ -526,6 +540,14 @@ +@@ -534,6 +548,14 @@ "channel": "stable", "contexts": [] }, @@ -3654,8 +3655,8 @@ diff --git a/chrome/common/extensions/api/_permission_features.json b/chrome/com // This features file defines permissions for extension APIs implemented // under src/chrome. -@@ -62,6 +66,13 @@ - "extension" +@@ -56,6 +60,13 @@ + "5107DE9024C329EEA9C9A72D94C16723790C6422" // Apps Developer Tool Dev. ] }, + "adblockPrivate": { @@ -3668,8 +3669,8 @@ diff --git a/chrome/common/extensions/api/_permission_features.json b/chrome/com "autofillPrivate": { "channel": "trunk", "extension_types": ["extension", "platform_app"], -@@ -376,6 +387,13 @@ - "channel": "beta", +@@ -375,6 +386,13 @@ + "channel": "stable", "command_line_switch": "extension-ai-data-collection" }, + "eyeoFilteringPrivate": { @@ -3880,9 +3881,9 @@ diff --git a/chrome/common/extensions/api/api_sources.gni b/chrome/common/extens import("//build/config/features.gni") import("//chrome/common/features.gni") -@@ -90,6 +93,9 @@ if (enable_extensions) { +@@ -92,6 +95,9 @@ if (enable_extensions) { + "webrtc_logging_private.idl", - "webstore_private.json", "windows.json", + + "adblock_private.idl", @@ -4125,7 +4126,7 @@ diff --git a/chrome/common/extensions/permissions/chrome_api_permissions.cc b/ch {APIPermissionID::kBackground, "background", APIPermissionInfo::kFlagDoesNotRequireManagedSessionFullLoginWarning}, {APIPermissionID::kDeclarativeContent, "declarativeContent"}, -@@ -87,6 +93,8 @@ constexpr APIPermissionInfo::InitInfo permissions_to_register[] = { +@@ -86,6 +92,8 @@ constexpr APIPermissionInfo::InitInfo permissions_to_register[] = { {APIPermissionID::kEnterpriseNetworkingAttributes, "enterprise.networkingAttributes", APIPermissionInfo::kFlagDoesNotRequireManagedSessionFullLoginWarning}, @@ -4148,7 +4149,7 @@ diff --git a/chrome/common/extensions/permissions/permission_set_unittest.cc b/c #include "extensions/common/permissions/permission_set.h" -@@ -874,6 +878,10 @@ TEST(PermissionsTest, PermissionMessages) { +@@ -875,6 +879,10 @@ TEST(PermissionsTest, PermissionMessages) { skip.insert(APIPermissionID::kSystemLog); skip.insert(APIPermissionID::kOdfsConfigPrivate); @@ -4162,7 +4163,7 @@ diff --git a/chrome/common/extensions/permissions/permission_set_unittest.cc b/c diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn --- a/chrome/test/BUILD.gn +++ b/chrome/test/BUILD.gn -@@ -3762,6 +3762,20 @@ if (!is_android) { +@@ -3928,6 +3928,20 @@ if (!is_android) { ] } @@ -5507,10 +5508,10 @@ diff --git a/extensions/common/mojom/api_permission_id.mojom b/extensions/common module extensions.mojom; -@@ -286,6 +290,8 @@ enum APIPermissionID { - kAILanguageModelOriginTrial = 259, +@@ -287,6 +291,8 @@ enum APIPermissionID { kExperimentalAiData = 260, kOmniboxDirectInput = 261, + kExperimentalActor = 262, + kAdblockPrivate = 999, + kEyeoFilteringPrivate = 1000, diff --git a/build/cromite_patches/kill-Auth.patch b/build/cromite_patches/kill-Auth.patch index 39d9ea1c..62f18a0a 100644 --- a/build/cromite_patches/kill-Auth.patch +++ b/build/cromite_patches/kill-Auth.patch @@ -4,8 +4,8 @@ Subject: kill Auth License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html --- - .../signin/SystemAccountManagerDelegate.java | 65 +------------------ - 1 file changed, 3 insertions(+), 62 deletions(-) + .../signin/SystemAccountManagerDelegate.java | 78 +------------------ + 1 file changed, 4 insertions(+), 74 deletions(-) diff --git a/components/signin/public/android/java/src/org/chromium/components/signin/SystemAccountManagerDelegate.java b/components/signin/public/android/java/src/org/chromium/components/signin/SystemAccountManagerDelegate.java --- a/components/signin/public/android/java/src/org/chromium/components/signin/SystemAccountManagerDelegate.java @@ -20,7 +20,7 @@ diff --git a/components/signin/public/android/java/src/org/chromium/components/s import org.chromium.base.ApiCompatibilityUtils; import org.chromium.base.Callback; import org.chromium.base.ContextUtils; -@@ -92,18 +89,6 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { +@@ -94,18 +91,6 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { @Override public Account[] getAccountsSynchronous() throws AccountManagerDelegateException { @@ -39,10 +39,11 @@ diff --git a/components/signin/public/android/java/src/org/chromium/components/s // Don't report any accounts if we don't have permission. // TODO(crbug.com/40942462): Throw an exception if permission was denied. return new Account[] {}; -@@ -115,31 +100,12 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { +@@ -116,43 +101,13 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { + public AccessTokenData getAccessToken(Account account, String authTokenScope) throws AuthException { ThreadUtils.assertOnBackgroundThread(); - assert AccountUtils.GOOGLE_ACCOUNT_TYPE.equals(account.type); +- assert AccountUtils.GOOGLE_ACCOUNT_TYPE.equals(account.type); - try { - return new AccessTokenData( - GoogleAuthUtil.getTokenWithNotification( @@ -51,14 +52,19 @@ diff --git a/components/signin/public/android/java/src/org/chromium/components/s - // This case includes a UserRecoverableNotifiedException, but most clients will have - // their own retry mechanism anyway. - throw new AuthException( -- AuthException.NONTRANSIENT, - "Error while getting token for scope '" + authTokenScope + "'", -- ex); +- ex, +- new GoogleServiceAuthError( +- GoogleServiceAuthErrorState.INVALID_GAIA_CREDENTIALS)); - } catch (IOException ex) { -- throw new AuthException(AuthException.TRANSIENT, ex); +- throw new AuthException( +- "Error while getting token for scope '" + authTokenScope + "'", +- ex, +- new GoogleServiceAuthError(GoogleServiceAuthErrorState.CONNECTION_FAILED)); - } + throw new AuthException(AuthException.NONTRANSIENT, -+ "Error while getting token for scope '" + authTokenScope + "'"); ++ "Error while getting token for scope '" + authTokenScope + "'", ++ new IOException()); } @Override @@ -66,14 +72,21 @@ diff --git a/components/signin/public/android/java/src/org/chromium/components/s - try { - GoogleAuthUtil.clearToken(ContextUtils.getApplicationContext(), authToken); - } catch (GoogleAuthException ex) { -- throw new AuthException(AuthException.NONTRANSIENT, ex); +- throw new AuthException( +- "Error while invalidating access token", +- ex, +- new GoogleServiceAuthError( +- GoogleServiceAuthErrorState.INVALID_GAIA_CREDENTIALS)); - } catch (IOException ex) { -- throw new AuthException(AuthException.TRANSIENT, ex); +- throw new AuthException( +- "Error while invalidating access token", +- ex, +- new GoogleServiceAuthError(GoogleServiceAuthErrorState.CONNECTION_FAILED)); - } } protected boolean hasFeatures(Account account, String[] features) { -@@ -171,24 +137,6 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { +@@ -184,24 +139,6 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { @SuppressLint("MissingPermission") @Override public void createAddAccountIntent(Callback<@Nullable Intent> callback) { @@ -98,7 +111,7 @@ diff --git a/components/signin/public/android/java/src/org/chromium/components/s } // No permission is needed on 23+ and Chrome always has MANAGE_ACCOUNTS permission on lower APIs -@@ -222,14 +170,7 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { +@@ -235,14 +172,7 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { @Override public @Nullable GaiaId getAccountGaiaId(String accountEmail) { diff --git a/build/cromite_patches/kill-Location-fall-back-to-system.patch b/build/cromite_patches/kill-Location-fall-back-to-system.patch index 49994eb8..36b31f74 100644 --- a/build/cromite_patches/kill-Location-fall-back-to-system.patch +++ b/build/cromite_patches/kill-Location-fall-back-to-system.patch @@ -48,21 +48,21 @@ diff --git a/services/device/geolocation/android/java/src/org/chromium/device/ge diff --git a/services/device/public/cpp/device_features.cc b/services/device/public/cpp/device_features.cc --- a/services/device/public/cpp/device_features.cc +++ b/services/device/public/cpp/device_features.cc -@@ -64,6 +64,7 @@ const base::FeatureParam kWinSystemLocationPermissionPollingParam{ - BASE_FEATURE(kLocationProviderManager, +@@ -76,6 +76,7 @@ BASE_FEATURE(kLocationProviderManager, "LocationProviderManager", base::FEATURE_DISABLED_BY_DEFAULT); + #endif // BUILDFLAG(IS_MAC) +SET_CROMITE_FEATURE_DISABLED(kLocationProviderManager); #if BUILDFLAG(IS_CHROMEOS) // Enables crash key logging for USB device open operations on ChromeOS. See -@@ -105,7 +106,7 @@ const base::FeatureParam::Option +@@ -124,7 +125,7 @@ const base::FeatureParam const base::FeatureParam kLocationProviderManagerParam{ &kLocationProviderManager, "LocationProviderManagerMode", - device::mojom::LocationProviderManagerMode::kNetworkOnly, + device::mojom::LocationProviderManagerMode::kPlatformOnly, &location_provider_manager_mode_options}; + #endif // BUILDFLAG(IS_MAC) - bool IsOsLevelGeolocationPermissionSupportEnabled() { -- diff --git a/build/cromite_patches/kill-Vision.patch b/build/cromite_patches/kill-Vision.patch index bd059133..de2be22b 100644 --- a/build/cromite_patches/kill-Vision.patch +++ b/build/cromite_patches/kill-Vision.patch @@ -15,7 +15,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -317,8 +317,6 @@ if (current_toolchain == default_toolchain) { +@@ -324,8 +324,6 @@ if (_is_default_toolchain) { "$google_play_services_package:google_play_services_gcm_java", "$google_play_services_package:google_play_services_iid_java", "$google_play_services_package:google_play_services_tasks_java", @@ -23,7 +23,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn - "$google_play_services_package:google_play_services_vision_java", "//base:content_uri_utils_java", "//base:service_loader_java", - "//base/version_info/android:version_constants_java", + "//base:task_executor_java", diff --git a/services/shape_detection/BUILD.gn b/services/shape_detection/BUILD.gn --- a/services/shape_detection/BUILD.gn +++ b/services/shape_detection/BUILD.gn diff --git a/build/cromite_patches/sharing-hub-always-use-visible-URL.patch b/build/cromite_patches/sharing-hub-always-use-visible-URL.patch index 2912beb0..83bfab37 100644 --- a/build/cromite_patches/sharing-hub-always-use-visible-URL.patch +++ b/build/cromite_patches/sharing-hub-always-use-visible-URL.patch @@ -10,7 +10,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/java/src/org/chromium/chrome/browser/share/ShareDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/share/ShareDelegateImpl.java --- a/chrome/android/java/src/org/chromium/chrome/browser/share/ShareDelegateImpl.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/share/ShareDelegateImpl.java -@@ -230,14 +230,8 @@ public class ShareDelegateImpl implements ShareDelegate { +@@ -289,14 +289,8 @@ public class ShareDelegateImpl implements ShareDelegate { @VisibleForTesting static boolean shouldFetchCanonicalUrl(final Tab currentTab) { diff --git a/build/cromite_patches/ungoogled-chromium-Disable-Network-Time-Tracker.patch b/build/cromite_patches/ungoogled-chromium-Disable-Network-Time-Tracker.patch index 4c362e59..5da54455 100644 --- a/build/cromite_patches/ungoogled-chromium-Disable-Network-Time-Tracker.patch +++ b/build/cromite_patches/ungoogled-chromium-Disable-Network-Time-Tracker.patch @@ -23,7 +23,7 @@ diff --git a/components/network_time/network_time_tracker.cc b/components/networ namespace { -@@ -282,7 +283,7 @@ void NetworkTimeTracker::UpdateNetworkTime(base::Time network_time, +@@ -279,7 +280,7 @@ void NetworkTimeTracker::UpdateNetworkTime(base::Time network_time, } bool NetworkTimeTracker::AreTimeFetchesEnabled() const { diff --git a/build/cromite_patches/ungoogled-chromium-Disable-intranet-detector.patch b/build/cromite_patches/ungoogled-chromium-Disable-intranet-detector.patch index c9ffe0c8..8aa3504c 100644 --- a/build/cromite_patches/ungoogled-chromium-Disable-intranet-detector.patch +++ b/build/cromite_patches/ungoogled-chromium-Disable-intranet-detector.patch @@ -14,7 +14,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/browser/intranet_redirect_detector.cc b/chrome/browser/intranet_redirect_detector.cc --- a/chrome/browser/intranet_redirect_detector.cc +++ b/chrome/browser/intranet_redirect_detector.cc -@@ -118,9 +118,7 @@ void IntranetRedirectDetector::FinishSleep() { +@@ -117,9 +117,7 @@ void IntranetRedirectDetector::FinishSleep() { simple_loaders_.clear(); resulting_origins_.clear(); diff --git a/build/cromite_patches/ungoogled-chromium-Disable-profile-avatar.patch b/build/cromite_patches/ungoogled-chromium-Disable-profile-avatar.patch index 82648b0a..bd948cdd 100644 --- a/build/cromite_patches/ungoogled-chromium-Disable-profile-avatar.patch +++ b/build/cromite_patches/ungoogled-chromium-Disable-profile-avatar.patch @@ -14,8 +14,8 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -1295,8 +1295,6 @@ static_library("browser") { - "profiles/keep_alive/scoped_profile_keep_alive.h", +@@ -1317,8 +1317,6 @@ static_library("browser") { + "profiles/incognito_mode_policy_handler.h", "profiles/off_the_record_profile_impl.cc", "profiles/off_the_record_profile_impl.h", - "profiles/profile_avatar_downloader.cc", @@ -26,7 +26,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn diff --git a/chrome/browser/profiles/profile_attributes_entry.cc b/chrome/browser/profiles/profile_attributes_entry.cc --- a/chrome/browser/profiles/profile_attributes_entry.cc +++ b/chrome/browser/profiles/profile_attributes_entry.cc -@@ -374,12 +374,6 @@ gfx::Image ProfileAttributesEntry::GetAvatarIcon( +@@ -372,12 +372,6 @@ gfx::Image ProfileAttributesEntry::GetAvatarIcon( int size_for_placeholder_avatar, bool use_high_res_file, const PlaceholderAvatarIconParams& icon_params) const { diff --git a/build/cromite_patches/ungoogled-chromium-Disable-translate-integration.patch b/build/cromite_patches/ungoogled-chromium-Disable-translate-integration.patch index d1023b7e..c18467a9 100644 --- a/build/cromite_patches/ungoogled-chromium-Disable-translate-integration.patch +++ b/build/cromite_patches/ungoogled-chromium-Disable-translate-integration.patch @@ -81,7 +81,7 @@ diff --git a/chrome/browser/language/android/java/res/xml/languages_preferences. diff --git a/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/settings/LanguageSettings.java b/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/settings/LanguageSettings.java --- a/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/settings/LanguageSettings.java +++ b/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/settings/LanguageSettings.java -@@ -49,12 +49,6 @@ public class LanguageSettings extends ChromeBaseSettingsFragment +@@ -54,12 +54,6 @@ public class LanguageSettings extends ChromeBaseSettingsFragment static final String APP_LANGUAGE_PREFERENCE_KEY = "app_language_preference"; static final String PREFERRED_LANGUAGES_KEY = "preferred_languages"; static final String CONTENT_LANGUAGES_KEY = "content_languages_preference"; @@ -94,7 +94,7 @@ diff --git a/chrome/browser/language/android/java/src/org/chromium/chrome/browse private static final String TAG = "LanguageSettings"; -@@ -102,35 +96,6 @@ public class LanguageSettings extends ChromeBaseSettingsFragment +@@ -107,35 +101,6 @@ public class LanguageSettings extends ChromeBaseSettingsFragment ContentLanguagesPreference mLanguageListPref = (ContentLanguagesPreference) findPreference(PREFERRED_LANGUAGES_KEY); mLanguageListPref.initialize(this, getProfile(), getPrefService()); @@ -130,7 +130,7 @@ diff --git a/chrome/browser/language/android/java/src/org/chromium/chrome/browse } /** -@@ -145,8 +110,6 @@ public class LanguageSettings extends ChromeBaseSettingsFragment +@@ -150,8 +115,6 @@ public class LanguageSettings extends ChromeBaseSettingsFragment ContentLanguagesPreference mLanguageListPref = (ContentLanguagesPreference) findPreference(CONTENT_LANGUAGES_KEY); mLanguageListPref.initialize(this, getProfile(), getPrefService()); @@ -139,7 +139,7 @@ diff --git a/chrome/browser/language/android/java/src/org/chromium/chrome/browse } /** Setup the App Language section with a title and preference to choose the app language. */ -@@ -177,7 +140,7 @@ public class LanguageSettings extends ChromeBaseSettingsFragment +@@ -182,7 +145,7 @@ public class LanguageSettings extends ChromeBaseSettingsFragment * @param contentLanguagesPreference ContentLanguagesPreference reference to update about state * changes. */ @@ -148,7 +148,7 @@ diff --git a/chrome/browser/language/android/java/src/org/chromium/chrome/browse // Setup expandable advanced settings section. PreferenceCategory translationAdvancedSection = (PreferenceCategory) findPreference(TRANSLATION_ADVANCED_SECTION); -@@ -255,7 +218,7 @@ public class LanguageSettings extends ChromeBaseSettingsFragment +@@ -260,7 +223,7 @@ public class LanguageSettings extends ChromeBaseSettingsFragment return getPrefService().isManagedPreference(Pref.OFFER_TRANSLATE_ENABLED); } }); @@ -157,7 +157,7 @@ diff --git a/chrome/browser/language/android/java/src/org/chromium/chrome/browse @Override public void onStart() { -@@ -294,12 +257,6 @@ public class LanguageSettings extends ChromeBaseSettingsFragment +@@ -300,12 +263,6 @@ public class LanguageSettings extends ChromeBaseSettingsFragment // Set the default target language to match the new app language. TranslateBridge.setDefaultTargetLanguage(getProfile(), code); } else if (requestCode == REQUEST_CODE_CHANGE_TARGET_LANGUAGE) { @@ -173,7 +173,7 @@ diff --git a/chrome/browser/language/android/java/src/org/chromium/chrome/browse diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd -@@ -2096,9 +2096,6 @@ Your Google account may have other forms of browsing history like searches and a +@@ -2115,9 +2115,6 @@ Your Google account may have other forms of browsing history like searches and a Let websites know the languages you speak. They’ll show content in those languages, when possible. @@ -186,7 +186,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro diff --git a/components/translate/core/browser/translate_manager.cc b/components/translate/core/browser/translate_manager.cc --- a/components/translate/core/browser/translate_manager.cc +++ b/components/translate/core/browser/translate_manager.cc -@@ -837,8 +837,9 @@ void TranslateManager::FilterIsTranslatePossible( +@@ -821,8 +821,9 @@ void TranslateManager::FilterIsTranslatePossible( TriggerDecision::kDisabledOffline); } diff --git a/build/cromite_patches/ungoogled-chromium-Disable-untraceable-URLs.patch b/build/cromite_patches/ungoogled-chromium-Disable-untraceable-URLs.patch index 46d8da58..2c9cdf5d 100644 --- a/build/cromite_patches/ungoogled-chromium-Disable-untraceable-URLs.patch +++ b/build/cromite_patches/ungoogled-chromium-Disable-untraceable-URLs.patch @@ -54,7 +54,7 @@ diff --git a/rlz/lib/financial_ping.cc b/rlz/lib/financial_ping.cc diff --git a/rlz/lib/lib_values.cc b/rlz/lib/lib_values.cc --- a/rlz/lib/lib_values.cc +++ b/rlz/lib/lib_values.cc -@@ -40,7 +40,6 @@ const char kSetDccResponseVariable[] = "set_dcc"; +@@ -45,7 +45,6 @@ const char kSetDccResponseVariable[] = "set_dcc"; // const char kFinancialPingPath[] = "/tools/pso/ping"; diff --git a/build/cromite_patches/ungoogled-chromium-Disable-webRTC-log-uploader.patch b/build/cromite_patches/ungoogled-chromium-Disable-webRTC-log-uploader.patch index ce8ec860..b2714161 100644 --- a/build/cromite_patches/ungoogled-chromium-Disable-webRTC-log-uploader.patch +++ b/build/cromite_patches/ungoogled-chromium-Disable-webRTC-log-uploader.patch @@ -10,7 +10,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 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 -@@ -113,7 +113,7 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistrySyncable* registry) { +@@ -130,7 +130,7 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistrySyncable* registry) { registry->RegisterStringPref(prefs::kWebRTCUDPPortRange, std::string()); registry->RegisterBooleanPref(prefs::kWebRtcEventLogCollectionAllowed, false); registry->RegisterListPref(prefs::kWebRtcLocalIpsAllowedUrls); diff --git a/build/cromite_patches/ungoogled-chromium-no-special-hosts-domains.patch b/build/cromite_patches/ungoogled-chromium-no-special-hosts-domains.patch index 288d2bc9..641979da 100644 --- a/build/cromite_patches/ungoogled-chromium-no-special-hosts-domains.patch +++ b/build/cromite_patches/ungoogled-chromium-no-special-hosts-domains.patch @@ -12,7 +12,8 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../android/metrics/uma_session_stats.cc | 10 - chrome/browser/browser_process_impl.cc | 1 - chrome/browser/chrome_browser_main.cc | 10 - - .../browser/chrome_content_browser_client.cc | 32 +- + .../browser/chrome_content_browser_client.cc | 29 +- + ...ent_browser_client_navigation_throttles.cc | 2 - .../domain_reliability/service_factory.cc | 33 +- chrome/browser/extensions/BUILD.gn | 1 - chrome/browser/feedback/BUILD.gn | 1 - @@ -22,7 +23,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../long_screenshots_tab_service.cc | 22 -- .../metrics/chrome_metrics_service_client.cc | 2 +- .../chrome_metrics_services_manager_client.cc | 5 +- - .../metrics/metrics_reporting_state.cc | 72 +--- + .../metrics/metrics_reporting_state.cc | 73 +--- .../net/system_network_context_manager.cc | 1 - .../one_google_bar_loader_impl.cc | 3 +- .../new_tab_page/promos/promo_service.cc | 6 +- @@ -37,7 +38,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html chrome/browser/ui/BUILD.gn | 1 - chrome/browser/ui/android/omnibox/BUILD.gn | 2 - .../omnibox/LocationBarCoordinator.java | 2 - - .../browser/omnibox/LocationBarMediator.java | 25 -- + .../browser/omnibox/LocationBarMediator.java | 23 -- .../ui/webui/new_tab_page/new_tab_page_ui.cc | 6 - .../upgrade_detector/upgrade_detector_impl.cc | 6 - chrome/common/BUILD.gn | 2 - @@ -65,25 +66,25 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html ...gled-chromium-no-special-hosts-domains.inc | 1 + net/base/url_util.cc | 25 +- services/network/network_context.cc | 2 +- - 58 files changed, 52 insertions(+), 875 deletions(-) + 59 files changed, 52 insertions(+), 873 deletions(-) create mode 100644 cromite_flags/content/public/common/content_features_cc/ungoogled-chromium-no-special-hosts-domains.inc diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java b/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java --- a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java -@@ -95,7 +95,6 @@ import org.chromium.chrome.browser.messages.MessageContainerObserver; - import org.chromium.chrome.browser.messages.MessagesResourceMapperInitializer; - import org.chromium.chrome.browser.metrics.UmaSessionStats; +@@ -99,7 +99,6 @@ import org.chromium.chrome.browser.metrics.UmaSessionStats; + import org.chromium.chrome.browser.multiwindow.MultiInstanceManager; + import org.chromium.chrome.browser.multiwindow.MultiWindowUtils; import org.chromium.chrome.browser.omnibox.OmniboxFocusReason; -import org.chromium.chrome.browser.omnibox.geo.GeolocationHeader; import org.chromium.chrome.browser.omnibox.suggestions.action.OmniboxActionDelegateImpl; import org.chromium.chrome.browser.paint_preview.DemoPaintPreview; import org.chromium.chrome.browser.password_manager.ManagePasswordsReferrer; -@@ -1154,10 +1153,8 @@ public class RootUiCoordinator - String url = - TemplateUrlServiceFactory.getForProfile(tab.getProfile()) - .getUrlForSearchQuery(query); -- String headers = GeolocationHeader.getGeoHeader(url, tab); +@@ -1168,10 +1167,8 @@ public class RootUiCoordinator + Profile profile = tab.getProfile(); + TemplateUrlService service = TemplateUrlServiceFactory.getForProfile(profile); + String url = service.getUrlForSearchQuery(query); +- String headers = GeolocationHeader.getGeoHeader(url, profile, service); LoadUrlParams loadUrlParams = new LoadUrlParams(url); - loadUrlParams.setVerbatimHeaders(headers); @@ -93,7 +94,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordi diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -896,10 +896,6 @@ static_library("browser") { +@@ -917,10 +917,6 @@ static_library("browser") { "page_info/privacy_policy_insights_service_factory.h", "page_load_metrics/observers/bookmark_bar_page_load_metrics_observer.cc", "page_load_metrics/observers/bookmark_bar_page_load_metrics_observer.h", @@ -104,7 +105,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn "page_load_metrics/observers/core/amp_page_load_metrics_observer.cc", "page_load_metrics/observers/core/amp_page_load_metrics_observer.h", "page_load_metrics/observers/core/ukm_page_load_metrics_observer.cc", -@@ -908,10 +904,6 @@ static_library("browser") { +@@ -929,10 +925,6 @@ static_library("browser") { "page_load_metrics/observers/document_write_page_load_metrics_observer.h", "page_load_metrics/observers/foreground_duration_ukm_observer.cc", "page_load_metrics/observers/foreground_duration_ukm_observer.h", @@ -115,7 +116,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn "page_load_metrics/observers/histogram_suffixes.cc", "page_load_metrics/observers/histogram_suffixes.h", "page_load_metrics/observers/https_engagement_metrics/https_engagement_page_load_metrics_observer.cc", -@@ -1563,8 +1555,6 @@ static_library("browser") { +@@ -1573,8 +1565,6 @@ static_library("browser") { "supervised_user/classify_url_navigation_throttle.h", "supervised_user/supervised_user_browser_utils.cc", "supervised_user/supervised_user_browser_utils.h", @@ -124,7 +125,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn "supervised_user/supervised_user_interstitial_tab_closer.cc", "supervised_user/supervised_user_interstitial_tab_closer.h", "supervised_user/supervised_user_metrics_service_factory.cc", -@@ -1747,10 +1737,7 @@ static_library("browser") { +@@ -1766,10 +1756,7 @@ static_library("browser") { "//chrome/browser/content_settings:impl", "//chrome/browser/devtools", "//chrome/browser/favicon", @@ -135,14 +136,14 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn "//chrome/browser/ip_protection", "//chrome/browser/media/webrtc", "//chrome/browser/navigation_predictor:impl", -@@ -1829,7 +1816,6 @@ static_library("browser") { +@@ -1866,7 +1853,6 @@ static_library("browser") { # New dependencies inside of //chrome/browser that generate header files # should be added to browser_generated_files. ":browser_public_dependencies", - "//chrome/browser/google", "//chrome/browser/headless", "//chrome/browser/profiles", - "//chrome/browser/resource_coordinator:tab_lifecycle_observer", + "//chrome/browser/ui/tabs:tab_enums", diff --git a/chrome/browser/android/metrics/uma_session_stats.cc b/chrome/browser/android/metrics/uma_session_stats.cc --- a/chrome/browser/android/metrics/uma_session_stats.cc +++ b/chrome/browser/android/metrics/uma_session_stats.cc @@ -166,7 +167,7 @@ diff --git a/chrome/browser/android/metrics/uma_session_stats.cc b/chrome/browse diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_process_impl.cc --- a/chrome/browser/browser_process_impl.cc +++ b/chrome/browser/browser_process_impl.cc -@@ -1227,7 +1227,6 @@ BrowserProcessImpl::component_updater() { +@@ -1262,7 +1262,6 @@ BrowserProcessImpl::component_updater() { std::make_unique(); std::string brand; @@ -177,7 +178,7 @@ diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_pro diff --git a/chrome/browser/chrome_browser_main.cc b/chrome/browser/chrome_browser_main.cc --- a/chrome/browser/chrome_browser_main.cc +++ b/chrome/browser/chrome_browser_main.cc -@@ -462,11 +462,6 @@ void ProcessSingletonNotificationCallbackImpl( +@@ -463,11 +463,6 @@ void ProcessSingletonNotificationCallbackImpl( StartupBrowserCreator::ProcessCommandLineAlreadyRunning( command_line, current_directory, startup_profile_path_info); @@ -189,7 +190,7 @@ diff --git a/chrome/browser/chrome_browser_main.cc b/chrome/browser/chrome_brows } #endif // BUILDFLAG(ENABLE_PROCESS_SINGLETON) -@@ -1717,11 +1712,6 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() { +@@ -1707,11 +1702,6 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() { upgrade_util::SaveLastModifiedTimeOfExe(); #endif @@ -204,7 +205,7 @@ diff --git a/chrome/browser/chrome_browser_main.cc b/chrome/browser/chrome_brows diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc --- a/chrome/browser/chrome_content_browser_client.cc +++ b/chrome/browser/chrome_content_browser_client.cc -@@ -2979,7 +2979,6 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches( +@@ -2912,7 +2912,6 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches( switches::kForcePNaClSubzero, #endif switches::kForceUIDirection, @@ -212,17 +213,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch switches::kJavaScriptHarmony, switches::kEnableExperimentalWebAssemblyFeatures, embedder_support::kOriginTrialDisabledFeatures, -@@ -5358,9 +5357,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation( - &throttles); - #endif - -- MaybeAddThrottle( -- SupervisedUserGoogleAuthNavigationThrottle::MaybeCreate(handle), -- &throttles); - - MaybeAddThrottle( - supervised_user::MaybeCreateClassifyUrlNavigationThrottleFor(handle), -@@ -5973,7 +5969,8 @@ GetClientDataHeader(content::FrameTreeNodeId frame_tree_node_id) { +@@ -5645,7 +5644,8 @@ GetClientDataHeader(content::FrameTreeNodeId frame_tree_node_id) { } #endif @@ -232,7 +223,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch #if BUILDFLAG(IS_ANDROID) const std::string& client_data_header, #endif -@@ -6013,7 +6010,7 @@ std::unique_ptr CreateGoogleURLLoaderThrottle( +@@ -5685,7 +5685,7 @@ std::unique_ptr CreateGoogleURLLoaderThrottle( std::move(bound_session_request_throttled_handler), #endif std::move(dynamic_params)); @@ -241,7 +232,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch std::vector> ChromeContentBrowserClient::CreateURLLoaderThrottles( -@@ -6070,15 +6067,6 @@ ChromeContentBrowserClient::CreateURLLoaderThrottles( +@@ -5742,15 +5742,6 @@ ChromeContentBrowserClient::CreateURLLoaderThrottles( GetClientDataHeader(frame_tree_node_id); #endif @@ -257,9 +248,9 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch { auto* factory = ProtocolHandlerRegistryFactory::GetForBrowserContext(browser_context); -@@ -6133,20 +6121,6 @@ ChromeContentBrowserClient::CreateURLLoaderThrottlesForKeepAlive( - } - #endif +@@ -5795,20 +5786,6 @@ ChromeContentBrowserClient::CreateURLLoaderThrottlesForKeepAlive( + Profile* profile = Profile::FromBrowserContext(browser_context); + DCHECK(profile); -#if BUILDFLAG(IS_ANDROID) - auto [client_data_header, unused_is_custom_tab] = @@ -278,6 +269,18 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch return result; } +diff --git a/chrome/browser/chrome_content_browser_client_navigation_throttles.cc b/chrome/browser/chrome_content_browser_client_navigation_throttles.cc +--- a/chrome/browser/chrome_content_browser_client_navigation_throttles.cc ++++ b/chrome/browser/chrome_content_browser_client_navigation_throttles.cc +@@ -354,8 +354,6 @@ void CreateAndAddChromeThrottlesForNavigation( + extensions::WebViewGuest::MaybeCreateAndAddNavigationThrottle(registry); + #endif + +- SupervisedUserGoogleAuthNavigationThrottle::MaybeCreateAndAdd(registry); +- + supervised_user::MaybeCreateAndAddClassifyUrlNavigationThrottle(registry); + + if (auto* throttle_manager = diff --git a/chrome/browser/domain_reliability/service_factory.cc b/chrome/browser/domain_reliability/service_factory.cc --- a/chrome/browser/domain_reliability/service_factory.cc +++ b/chrome/browser/domain_reliability/service_factory.cc @@ -327,21 +330,21 @@ diff --git a/chrome/browser/domain_reliability/service_factory.cc b/chrome/brows diff --git a/chrome/browser/extensions/BUILD.gn b/chrome/browser/extensions/BUILD.gn --- a/chrome/browser/extensions/BUILD.gn +++ b/chrome/browser/extensions/BUILD.gn -@@ -284,7 +284,6 @@ source_set("extensions") { +@@ -447,7 +447,6 @@ source_set("extensions") { "//chrome/browser/extensions:cws_item_service_proto", "//chrome/browser/extensions/api:api_registration", "//chrome/browser/favicon", - "//chrome/browser/google", + "//chrome/browser/lifetime:termination_notification", "//chrome/browser/prefetch", "//chrome/browser/prefs", - "//chrome/browser/preloading:prefs", diff --git a/chrome/browser/feedback/BUILD.gn b/chrome/browser/feedback/BUILD.gn --- a/chrome/browser/feedback/BUILD.gn +++ b/chrome/browser/feedback/BUILD.gn -@@ -101,7 +101,6 @@ source_set("feedback_impl") { - "//chrome/browser/crash_upload_list", +@@ -102,7 +102,6 @@ source_set("feedback_impl") { "//chrome/browser/devtools", "//chrome/browser/extensions", + "//chrome/browser/first_party_sets", - "//chrome/browser/google", "//chrome/browser/profiles:profile", "//chrome/browser/sync", @@ -349,7 +352,7 @@ diff --git a/chrome/browser/feedback/BUILD.gn b/chrome/browser/feedback/BUILD.gn diff --git a/chrome/browser/feedback/system_logs/log_sources/chrome_internal_log_source.cc b/chrome/browser/feedback/system_logs/log_sources/chrome_internal_log_source.cc --- a/chrome/browser/feedback/system_logs/log_sources/chrome_internal_log_source.cc +++ b/chrome/browser/feedback/system_logs/log_sources/chrome_internal_log_source.cc -@@ -124,7 +124,6 @@ constexpr char kOsVersionTag[] = "OS VERSION"; +@@ -123,7 +123,6 @@ constexpr char kOsVersionTag[] = "OS VERSION"; #if BUILDFLAG(IS_WIN) constexpr char kUsbKeyboardDetected[] = "usb_keyboard_detected"; constexpr char kIsEnrolledToDomain[] = "enrolled_to_domain"; @@ -357,7 +360,7 @@ diff --git a/chrome/browser/feedback/system_logs/log_sources/chrome_internal_log #if BUILDFLAG(GOOGLE_CHROME_BRANDING) constexpr char kInstallResultCode[] = "install_result_code"; constexpr char kInstallLocation[] = "install_location"; -@@ -656,10 +655,6 @@ void ChromeInternalLogSource::PopulateEnrolledToDomain( +@@ -655,10 +654,6 @@ void ChromeInternalLogSource::PopulateEnrolledToDomain( void ChromeInternalLogSource::PopulateInstallerBrandCode( SystemLogsResponse* response) { @@ -371,7 +374,7 @@ diff --git a/chrome/browser/feedback/system_logs/log_sources/chrome_internal_log diff --git a/chrome/browser/first_run/first_run.cc b/chrome/browser/first_run/first_run.cc --- a/chrome/browser/first_run/first_run.cc +++ b/chrome/browser/first_run/first_run.cc -@@ -294,14 +294,6 @@ void SetupInitialPrefsFromInstallPrefs( +@@ -296,14 +296,6 @@ void SetupInitialPrefsFromInstallPrefs( // -- Platform-specific functions -- @@ -389,7 +392,7 @@ diff --git a/chrome/browser/first_run/first_run.cc b/chrome/browser/first_run/fi diff --git a/chrome/browser/google/BUILD.gn b/chrome/browser/google/BUILD.gn --- a/chrome/browser/google/BUILD.gn +++ b/chrome/browser/google/BUILD.gn -@@ -7,7 +7,7 @@ import("//build/config/chromeos/ui_mode.gni") +@@ -6,7 +6,7 @@ import("//build/config/chrome_build.gni") assert(!is_fuchsia, "Fuchsia shouldn't use anything in //chrome") @@ -398,7 +401,7 @@ diff --git a/chrome/browser/google/BUILD.gn b/chrome/browser/google/BUILD.gn sources = [ "google_brand.cc", "google_brand.h", -@@ -87,7 +87,7 @@ source_set("unit_tests") { +@@ -89,7 +89,7 @@ source_set("unit_tests") { sources = [ "google_update_settings_unittest.cc" ] deps = [ @@ -454,7 +457,7 @@ diff --git a/chrome/browser/long_screenshots/long_screenshots_tab_service.cc b/c diff --git a/chrome/browser/metrics/chrome_metrics_service_client.cc b/chrome/browser/metrics/chrome_metrics_service_client.cc --- a/chrome/browser/metrics/chrome_metrics_service_client.cc +++ b/chrome/browser/metrics/chrome_metrics_service_client.cc -@@ -601,7 +601,7 @@ ChromeMetricsServiceClient::GetNetworkTimeTracker() { +@@ -606,7 +606,7 @@ ChromeMetricsServiceClient::GetNetworkTimeTracker() { } bool ChromeMetricsServiceClient::GetBrand(std::string* brand_code) { @@ -488,7 +491,7 @@ diff --git a/chrome/browser/metrics/chrome_metrics_services_manager_client.cc b/ diff --git a/chrome/browser/metrics/metrics_reporting_state.cc b/chrome/browser/metrics/metrics_reporting_state.cc --- a/chrome/browser/metrics/metrics_reporting_state.cc +++ b/chrome/browser/metrics/metrics_reporting_state.cc -@@ -32,65 +32,6 @@ +@@ -32,66 +32,6 @@ #include "components/policy/core/common/features.h" #endif // BUILDFLAG(IS_ANDROID) @@ -537,7 +540,7 @@ diff --git a/chrome/browser/metrics/metrics_reporting_state.cc b/chrome/browser/ - UpdateMetricsPrefsOnPermissionChange(updated_pref, called_from); - - // Uses the current state of whether reporting is enabled to enable services. -- g_browser_process->GetMetricsServicesManager()->UpdateUploadPermissions(true); +- g_browser_process->GetMetricsServicesManager()->UpdateUploadPermissions(); - - if (to_update_pref == updated_pref) { - RecordMetricsReportingHistogramValue(updated_pref ? @@ -545,8 +548,9 @@ diff --git a/chrome/browser/metrics/metrics_reporting_state.cc b/chrome/browser/ - } else { - RecordMetricsReportingHistogramValue(METRICS_REPORTING_ERROR); - } -- if (!callback_fn.is_null()) +- if (!callback_fn.is_null()) { - std::move(callback_fn).Run(updated_pref); +- } -} - -} // namespace @@ -554,7 +558,7 @@ diff --git a/chrome/browser/metrics/metrics_reporting_state.cc b/chrome/browser/ void ChangeMetricsReportingState( bool enabled, ChangeMetricsReportingStateCalledFrom called_from) { -@@ -126,11 +67,6 @@ void ChangeMetricsReportingStateWithReply( +@@ -127,11 +67,6 @@ void ChangeMetricsReportingStateWithReply( return; } #endif @@ -566,7 +570,7 @@ diff --git a/chrome/browser/metrics/metrics_reporting_state.cc b/chrome/browser/ } void UpdateMetricsPrefsOnPermissionChange( -@@ -196,13 +132,7 @@ void UpdateMetricsPrefsOnPermissionChange( +@@ -197,13 +132,7 @@ void UpdateMetricsPrefsOnPermissionChange( crash_keys::ClearMetricsClientId(); } @@ -584,18 +588,18 @@ diff --git a/chrome/browser/metrics/metrics_reporting_state.cc b/chrome/browser/ diff --git a/chrome/browser/net/system_network_context_manager.cc b/chrome/browser/net/system_network_context_manager.cc --- a/chrome/browser/net/system_network_context_manager.cc +++ b/chrome/browser/net/system_network_context_manager.cc -@@ -848,7 +848,6 @@ void SystemNetworkContextManager::AddSSLConfigToNetworkContextParams( +@@ -863,7 +863,6 @@ void SystemNetworkContextManager::AddSSLConfigToNetworkContextParams( void SystemNetworkContextManager::ConfigureDefaultNetworkContextParams( network::mojom::NetworkContextParams* network_context_params) { variations::UpdateCorsExemptHeaderForVariations(network_context_params); - GoogleURLLoaderThrottle::UpdateCorsExemptHeader(network_context_params); - - network_context_params->enable_brotli = true; - + #if BUILDFLAG(ENABLE_REQUEST_HEADER_INTEGRITY) + request_header_integrity::RequestHeaderIntegrityURLLoaderThrottle:: + UpdateCorsExemptHeaders(network_context_params); diff --git a/chrome/browser/new_tab_page/one_google_bar/one_google_bar_loader_impl.cc b/chrome/browser/new_tab_page/one_google_bar/one_google_bar_loader_impl.cc --- a/chrome/browser/new_tab_page/one_google_bar/one_google_bar_loader_impl.cc +++ b/chrome/browser/new_tab_page/one_google_bar/one_google_bar_loader_impl.cc -@@ -344,10 +344,11 @@ bool OneGoogleBarLoaderImpl::SetAdditionalQueryParams( +@@ -329,10 +329,11 @@ void OneGoogleBarLoaderImpl::SetAdditionalQueryParams( } GURL OneGoogleBarLoaderImpl::GetApiUrl() const { @@ -639,7 +643,7 @@ diff --git a/chrome/browser/page_load_metrics/observers/from_gws_page_load_metri diff --git a/chrome/browser/page_load_metrics/page_load_metrics_initialize.cc b/chrome/browser/page_load_metrics/page_load_metrics_initialize.cc --- a/chrome/browser/page_load_metrics/page_load_metrics_initialize.cc +++ b/chrome/browser/page_load_metrics/page_load_metrics_initialize.cc -@@ -168,14 +168,9 @@ void PageLoadMetricsEmbedder::RegisterObservers( +@@ -169,14 +169,9 @@ void PageLoadMetricsEmbedder::RegisterObservers( tracker->AddObserver(std::make_unique()); tracker->AddObserver(std::make_unique()); tracker->AddObserver(std::make_unique()); @@ -681,7 +685,7 @@ diff --git a/chrome/browser/profile_resetter/profile_resetter.cc b/chrome/browse diff --git a/chrome/browser/safe_browsing/BUILD.gn b/chrome/browser/safe_browsing/BUILD.gn --- a/chrome/browser/safe_browsing/BUILD.gn +++ b/chrome/browser/safe_browsing/BUILD.gn -@@ -25,7 +25,6 @@ static_library("safe_browsing") { +@@ -24,7 +24,6 @@ static_library("safe_browsing") { "//build:branding_buildflags", "//chrome/app:generated_resources", "//chrome/browser:browser_process", @@ -717,7 +721,7 @@ diff --git a/chrome/browser/search_engines/ui_thread_search_terms_data.cc b/chro diff --git a/chrome/browser/signin/android/signin_manager_android.cc b/chrome/browser/signin/android/signin_manager_android.cc --- a/chrome/browser/signin/android/signin_manager_android.cc +++ b/chrome/browser/signin/android/signin_manager_android.cc -@@ -71,6 +71,7 @@ class ProfileDataRemover : public content::BrowsingDataRemover::Observer { +@@ -72,6 +72,7 @@ class ProfileDataRemover : public content::BrowsingDataRemover::Observer { remover_(profile->GetBrowsingDataRemover()) { remover_->AddObserver(this); @@ -725,7 +729,7 @@ diff --git a/chrome/browser/signin/android/signin_manager_android.cc b/chrome/br if (all_data) { chrome_browsing_data_remover::DataType removed_types = chrome_browsing_data_remover::ALL_DATA_TYPES; -@@ -94,10 +95,6 @@ class ProfileDataRemover : public content::BrowsingDataRemover::Observer { +@@ -100,10 +101,6 @@ class ProfileDataRemover : public content::BrowsingDataRemover::Observer { // TODO(msramek): BrowsingDataFilterBuilder was not designed for // large filters. Optimize it. @@ -739,7 +743,7 @@ diff --git a/chrome/browser/signin/android/signin_manager_android.cc b/chrome/br diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn --- a/chrome/browser/ui/BUILD.gn +++ b/chrome/browser/ui/BUILD.gn -@@ -354,7 +354,6 @@ static_library("ui") { +@@ -336,7 +336,6 @@ static_library("ui") { "//chrome/browser/feedback:feedback_impl", "//chrome/browser/file_system_access", "//chrome/browser/fingerprinting_protection", @@ -762,7 +766,7 @@ diff --git a/chrome/browser/ui/android/omnibox/BUILD.gn b/chrome/browser/ui/andr diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java --- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java +++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java -@@ -32,7 +32,6 @@ import org.chromium.chrome.browser.locale.LocaleManager; +@@ -37,7 +37,6 @@ import org.chromium.chrome.browser.locale.LocaleManager; import org.chromium.chrome.browser.merchant_viewer.MerchantTrustSignalsCoordinator; import org.chromium.chrome.browser.omnibox.LocationBarMediator.OmniboxUma; import org.chromium.chrome.browser.omnibox.LocationBarMediator.SaveOfflineButtonState; @@ -770,7 +774,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow import org.chromium.chrome.browser.omnibox.status.StatusCoordinator; import org.chromium.chrome.browser.omnibox.status.StatusCoordinator.PageInfoAction; import org.chromium.chrome.browser.omnibox.status.StatusView; -@@ -380,7 +379,6 @@ public class LocationBarCoordinator +@@ -424,7 +423,6 @@ public class LocationBarCoordinator mLocationBarMediator.destroy(); mLocationBarMediator = null; @@ -781,7 +785,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java --- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java +++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java -@@ -52,7 +52,6 @@ import org.chromium.chrome.browser.lifecycle.PauseResumeWithNativeObserver; +@@ -56,7 +56,6 @@ import org.chromium.chrome.browser.lifecycle.PauseResumeWithNativeObserver; import org.chromium.chrome.browser.locale.LocaleManager; import org.chromium.chrome.browser.omnibox.UrlBar.UrlBarDelegate; import org.chromium.chrome.browser.omnibox.UrlBarCoordinator.SelectionState; @@ -789,7 +793,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow import org.chromium.chrome.browser.omnibox.status.StatusCoordinator; import org.chromium.chrome.browser.omnibox.styles.OmniboxResourceProvider; import org.chromium.chrome.browser.omnibox.suggestions.AutocompleteCoordinator; -@@ -312,24 +311,6 @@ class LocationBarMediator +@@ -328,20 +327,6 @@ class LocationBarMediator if (!mUrlFocusedWithoutAnimations) handleUrlFocusAnimation(hasFocus); @@ -797,41 +801,39 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow - && mLocationBarDataProvider.hasTab() - && !mLocationBarDataProvider.isIncognito()) { - if (mTemplateUrlServiceSupplier.hasValue()) { -- if (mTemplateUrlServiceSupplier.get().isDefaultSearchEngineGoogle()) { -- GeolocationHeader.primeLocationForGeoHeaderIfEnabled( -- mProfileSupplier.get(), mTemplateUrlServiceSupplier.get()); -- } +- GeolocationHeader.primeLocationForGeoHeaderIfEnabled( +- mProfileSupplier.get(), mTemplateUrlServiceSupplier.get()); - } else { - mTemplateUrlServiceSupplier.onAvailable( - (templateUrlService) -> { -- if (templateUrlService.isDefaultSearchEngineGoogle()) { -- GeolocationHeader.primeLocationForGeoHeaderIfEnabled( -- mProfileSupplier.get(), templateUrlService); -- } +- GeolocationHeader.primeLocationForGeoHeaderIfEnabled( +- mProfileSupplier.get(), templateUrlService); - }); - } - } // Focus change caused by a closed tab may result in there not being an active tab. if (!hasFocus && mLocationBarDataProvider.hasTab()) { setUrl( mLocationBarDataProvider.getCurrentGurl(), -@@ -345,8 +326,6 @@ class LocationBarMediator - templateUrlService.addObserver(this); - if (OmniboxFeatures.sUseFusedLocationProvider.isEnabled() - && templateUrlService.isDefaultSearchEngineGoogle()) { -- GeolocationHeader.primeLocationForGeoHeaderIfEnabled( -- mProfileSupplier.get(), mTemplateUrlServiceSupplier.get()); - } - }); - -@@ -579,7 +558,6 @@ class LocationBarMediator +@@ -356,8 +341,6 @@ class LocationBarMediator + mCallbackController.makeCancelable( + (templateUrlService) -> { + templateUrlService.addObserver(this); +- GeolocationHeader.primeLocationForGeoHeaderIfEnabled( +- mProfileSupplier.get(), mTemplateUrlServiceSupplier.get()); + })); + + mLocationBarLayout.onFinishNativeInitialization(); +@@ -590,9 +573,6 @@ class LocationBarMediator LoadUrlParams loadUrlParams = new LoadUrlParams(url); try (TimingMetric record = TimingMetric.shortUptime("Android.Omnibox.SetGeolocationHeadersTime")) { -- loadUrlParams.setVerbatimHeaders(GeolocationHeader.getGeoHeader(url, currentTab)); +- loadUrlParams.setVerbatimHeaders( +- GeolocationHeader.getGeoHeader( +- url, mProfileSupplier.get(), mTemplateUrlServiceSupplier.get())); } loadUrlParams.setTransitionType( omniboxLoadUrlParams.transitionType | PageTransition.FROM_ADDRESS_BAR); -@@ -1576,8 +1554,6 @@ class LocationBarMediator +@@ -1610,8 +1590,6 @@ class LocationBarMediator if (OmniboxFeatures.sUseFusedLocationProvider.isEnabled() && mProfileSupplier.hasValue() && mTemplateUrlServiceSupplier.hasValue()) { @@ -840,7 +842,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow } } -@@ -1585,7 +1561,6 @@ class LocationBarMediator +@@ -1619,7 +1597,6 @@ class LocationBarMediator public void onPauseWithNative() { OmniboxFeatures.updateLastExitTimestamp(); if (OmniboxFeatures.sUseFusedLocationProvider.isEnabled()) { @@ -851,7 +853,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow diff --git a/chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.cc b/chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.cc --- a/chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.cc +++ b/chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.cc -@@ -483,12 +483,6 @@ content::WebUIDataSource* CreateAndAddNewTabPageUiHtmlSource(Profile* profile) { +@@ -503,12 +503,6 @@ content::WebUIDataSource* CreateAndAddNewTabPageUiHtmlSource(Profile* profile) { // chrome-untrusted://new-tab-page for other external content and resources. // NOTE: Use caution when overriding content security policies as that cean // lead to subtle security bugs such as https://crbug.com/1251541. @@ -883,7 +885,7 @@ diff --git a/chrome/browser/upgrade_detector/upgrade_detector_impl.cc b/chrome/b diff --git a/chrome/common/BUILD.gn b/chrome/common/BUILD.gn --- a/chrome/common/BUILD.gn +++ b/chrome/common/BUILD.gn -@@ -140,8 +140,6 @@ static_library("common_lib") { +@@ -141,8 +141,6 @@ static_library("common_lib") { "content_restriction.h", "crash_keys.cc", "crash_keys.h", @@ -908,7 +910,7 @@ diff --git a/chrome/renderer/google_accounts_private_api_util.cc b/chrome/render diff --git a/chrome/renderer/url_loader_throttle_provider_impl.cc b/chrome/renderer/url_loader_throttle_provider_impl.cc --- a/chrome/renderer/url_loader_throttle_provider_impl.cc +++ b/chrome/renderer/url_loader_throttle_provider_impl.cc -@@ -257,17 +257,6 @@ URLLoaderThrottleProviderImpl::CreateThrottles( +@@ -274,17 +274,6 @@ URLLoaderThrottleProviderImpl::CreateThrottles( } #endif @@ -923,13 +925,13 @@ diff --git a/chrome/renderer/url_loader_throttle_provider_impl.cc b/chrome/rende - chrome_content_renderer_client_->GetChromeObserver() - ->GetDynamicParams())); - - #if BUILDFLAG(IS_CHROMEOS_ASH) + #if BUILDFLAG(IS_CHROMEOS) throttles.emplace_back(std::make_unique( chrome_content_renderer_client_->GetChromeObserver() diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn --- a/chrome/test/BUILD.gn +++ b/chrome/test/BUILD.gn -@@ -6431,7 +6431,6 @@ test("unit_tests") { +@@ -6640,7 +6640,6 @@ test("unit_tests") { "//chrome/browser/file_system_access:unit_tests", "//chrome/browser/fingerprinting_protection", "//chrome/browser/first_party_sets", @@ -1152,7 +1154,7 @@ diff --git a/components/domain_reliability/monitor.cc b/components/domain_reliab diff --git a/components/domain_reliability/uploader.cc b/components/domain_reliability/uploader.cc --- a/components/domain_reliability/uploader.cc +++ b/components/domain_reliability/uploader.cc -@@ -81,7 +81,7 @@ class DomainReliabilityUploaderImpl : public DomainReliabilityUploader, +@@ -80,7 +80,7 @@ class DomainReliabilityUploaderImpl : public DomainReliabilityUploader, if (discard_uploads_) discarded_upload_count_++; @@ -1585,7 +1587,7 @@ diff --git a/components/google/core/common/google_util.h b/components/google/cor diff --git a/components/page_load_metrics/browser/page_load_metrics_util.cc b/components/page_load_metrics/browser/page_load_metrics_util.cc --- a/components/page_load_metrics/browser/page_load_metrics_util.cc +++ b/components/page_load_metrics/browser/page_load_metrics_util.cc -@@ -285,8 +285,7 @@ bool DidObserveLoadingBehaviorInAnyFrame( +@@ -303,8 +303,7 @@ bool DidObserveLoadingBehaviorInAnyFrame( } bool IsZstdUrl(const GURL& url) { @@ -1641,7 +1643,7 @@ diff --git a/components/search_engines/search_terms_data.cc b/components/search_ diff --git a/components/search_engines/template_url.cc b/components/search_engines/template_url.cc --- a/components/search_engines/template_url.cc +++ b/components/search_engines/template_url.cc -@@ -613,11 +613,7 @@ std::u16string TemplateURLRef::SearchTermToString16( +@@ -620,11 +620,7 @@ std::u16string TemplateURLRef::SearchTermToString16( bool TemplateURLRef::HasGoogleBaseURLs( const SearchTermsData& search_terms_data) const { @@ -1843,7 +1845,7 @@ new file mode 100644 diff --git a/net/base/url_util.cc b/net/base/url_util.cc --- a/net/base/url_util.cc +++ b/net/base/url_util.cc -@@ -519,34 +519,11 @@ bool HasGoogleHost(const GURL& url) { +@@ -537,34 +537,11 @@ bool HasGoogleHost(const GURL& url) { } bool IsGoogleHost(std::string_view host) { @@ -1882,7 +1884,7 @@ diff --git a/net/base/url_util.cc b/net/base/url_util.cc diff --git a/services/network/network_context.cc b/services/network/network_context.cc --- a/services/network/network_context.cc +++ b/services/network/network_context.cc -@@ -3015,7 +3015,7 @@ URLRequestContextOwner NetworkContext::MakeURLRequestContext( +@@ -3029,7 +3029,7 @@ URLRequestContextOwner NetworkContext::MakeURLRequestContext( } #endif // BUILDFLAG(IS_CT_SUPPORTED) diff --git a/build/cromite_patches/webRTC-do-not-expose-local-IP-addresses.patch b/build/cromite_patches/webRTC-do-not-expose-local-IP-addresses.patch index ff2a7e28..e10b3672 100644 --- a/build/cromite_patches/webRTC-do-not-expose-local-IP-addresses.patch +++ b/build/cromite_patches/webRTC-do-not-expose-local-IP-addresses.patch @@ -18,7 +18,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 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 -@@ -108,7 +108,7 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistrySyncable* registry) { +@@ -125,7 +125,7 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistrySyncable* registry) { false); #endif registry->RegisterStringPref(prefs::kWebRTCIPHandlingPolicy, diff --git a/build/cromite_patches/webview-Hard-no-to-persistent-histograms.patch b/build/cromite_patches/webview-Hard-no-to-persistent-histograms.patch index 0d7ea00b..11483252 100644 --- a/build/cromite_patches/webview-Hard-no-to-persistent-histograms.patch +++ b/build/cromite_patches/webview-Hard-no-to-persistent-histograms.patch @@ -18,7 +18,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/android_webview/browser/aw_field_trials.cc b/android_webview/browser/aw_field_trials.cc --- a/android_webview/browser/aw_field_trials.cc +++ b/android_webview/browser/aw_field_trials.cc -@@ -79,13 +79,6 @@ void AwFeatureOverrides::OverrideFeatureWithFieldTrial( +@@ -75,13 +75,6 @@ void AwFeatureOverrides::OverrideFeatureWithFieldTrial( } // namespace internal void AwFieldTrials::OnVariationsSetupComplete() { diff --git a/update_cromite_patches.sh b/update_cromite_patches.sh index 8eddb250..0613c7c2 100755 --- a/update_cromite_patches.sh +++ b/update_cromite_patches.sh @@ -4,7 +4,7 @@ root_dir=$(dirname "$(readlink -f "$0")") cd $root_dir/build -branch="v135.0.7049.100-0ffdb845a6a3308cbd9826bb78269d1d05cfb8aa" +branch="v138.0.7204.50-f44f153674d484bc6b33d005f4441407b0b588a7" if [ -d cromite ]; then cd cromite git fetch origin $branch -- GitLab From affb78a4c970ee72225a4bdbef92dfcea149fbd2 Mon Sep 17 00:00:00 2001 From: Nishith Khanna Date: Mon, 30 Jun 2025 07:04:19 +0000 Subject: [PATCH 03/11] Update domain substitution --- domain_substitution/domain_substitution.list | 1366 ++++++++++-------- domain_substitution/prune_binaries.py | 4 + update_domain_substitution.sh | 2 +- 3 files changed, 786 insertions(+), 586 deletions(-) diff --git a/domain_substitution/domain_substitution.list b/domain_substitution/domain_substitution.list index ac717d0f..f58526ec 100644 --- a/domain_substitution/domain_substitution.list +++ b/domain_substitution/domain_substitution.list @@ -29,12 +29,14 @@ ash/birch/birch_model_unittest.cc ash/capture_mode/capture_mode_camera_unittests.cc ash/capture_mode/capture_mode_controller.cc ash/capture_mode/capture_mode_unittests.cc +ash/capture_mode/test_capture_mode_delegate.cc ash/child_accounts/parent_access_controller_impl_unittest.cc ash/clipboard/clipboard_history_controller_unittest.cc ash/clipboard/clipboard_history_menu_model_adapter_unittest.cc ash/constants/ash_features.cc ash/constants/ash_switches.cc ash/constants/url_constants.cc +ash/constants/url_constants.h ash/constants/web_app_id_constants.h ash/controls/contextual_nudge.cc ash/fast_ink/laser/laser_pointer_view.cc @@ -170,8 +172,8 @@ ash/webui/common/resources/PRESUBMIT.py ash/webui/common/resources/cr_picture/png.js ash/webui/common/resources/keyboard_layouts.js ash/webui/common/resources/quick_unlock/pin_keyboard_icons.html +ash/webui/common/resources/sea_pen/constants.ts ash/webui/common/resources/sea_pen/constants_generated.ts -ash/webui/common/resources/sea_pen/sea_pen_untranslated_constants.ts ash/webui/common/resources/sea_pen/surface_effects/sparkle.ts ash/webui/diagnostics_ui/backend/input/input_data_provider_keyboard_unittest.cc ash/webui/diagnostics_ui/diagnostics_ui.cc @@ -229,7 +231,6 @@ ash/webui/shortcut_customization_ui/resources/PRESUBMIT.py ash/webui/shortcut_customization_ui/url_constants.cc ash/webui/system_apps/public/system_web_app_type.h ash/wm/coral/coral_controller_unittest.cc -ash/wm/desks/desks_unittests.cc ash/wm/desks/templates/admin_template_unittest.cc ash/wm/desks/templates/saved_desk_unittest.cc ash/wm/overview/birch/birch_bar_unittest.cc @@ -240,8 +241,10 @@ base/BUILD.gn base/PRESUBMIT.py base/allocator/partition_alloc_support.cc base/allocator/partition_allocator/PRESUBMIT.py +base/allocator/partition_allocator/partition_alloc.gni base/allocator/partition_allocator/src/partition_alloc/BUILD.gn base/allocator/partition_allocator/src/partition_alloc/address_space_randomization.h +base/allocator/partition_allocator/src/partition_alloc/bucket_lookup.h base/allocator/partition_allocator/src/partition_alloc/build_config.h base/allocator/partition_allocator/src/partition_alloc/in_slot_metadata.h base/allocator/partition_allocator/src/partition_alloc/lightweight_quarantine.h @@ -250,6 +253,7 @@ base/allocator/partition_allocator/src/partition_alloc/oom.h base/allocator/partition_allocator/src/partition_alloc/page_allocator_constants.h base/allocator/partition_allocator/src/partition_alloc/page_allocator_internals_win.h base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/compiler_specific.h +base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/debug/stack_trace.cc base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/logging.h base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/memory/scoped_refptr.h base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/rand_util_posix.cc @@ -272,8 +276,10 @@ base/android/library_loader/library_loader_hooks.h base/android/meminfo_dump_provider.cc base/android/requires_api.h base/android/resource_exclusions.gni +base/android/sys_utils.cc base/apple/foundation_util_unittest.mm base/apple/owned_objc.h +base/apple/owned_objc_types.h base/atomicops.h base/barrier_callback.h base/base_paths_win.cc @@ -281,13 +287,16 @@ base/base_switches.cc base/command_line.cc base/command_line.h base/compiler_specific.h +base/containers/auto_spanification_helper.h base/containers/checked_iterators_unittest.cc base/debug/debugger_posix.cc +base/debug/stack_trace.cc base/debug/stack_trace_fuchsia.cc base/debug/stack_trace_posix.cc base/debug/stack_trace_win.cc base/file_version_info.h base/files/file_enumerator_posix.cc +base/files/file_path.cc base/files/file_path_watcher_unittest.cc base/files/file_path_watcher_win.cc base/files/file_unittest.cc @@ -325,6 +334,7 @@ base/metrics/user_metrics.h base/observer_list.h base/power_monitor/battery_level_provider_win.cc base/power_monitor/cpu_frequency_utils.cc +base/power_monitor/energy_monitor_android.h base/power_monitor/power_monitor_device_source_android.cc base/power_monitor/speed_limit_observer_win.cc base/process/launch.h @@ -339,7 +349,7 @@ base/profiler/metadata_recorder.h base/rand_util_win.cc base/strings/pattern_unittest.cc base/strings/string_number_conversions_unittest.cc -base/synchronization/lock.h +base/synchronization/lock_impl_posix.cc base/system/sys_info.h base/task/sequence_manager/sequence_manager_impl.cc base/task/sequenced_task_runner.h @@ -391,17 +401,20 @@ base/win/shortcut.cc base/win/win_util.cc base/win/win_util.h base/win/wincrypt_shim.h +base/win/windows_handle_util.h base/win/windows_version.h base/win/windows_version_unittest.cc base/win/wmi.cc base/win/wmi.h build/3pp_common/common.py build/3pp_common/maven.py +build/BUILD.gn build/android/BUILD.gn build/android/PRESUBMIT.py build/android/apk_operations.py build/android/dump_apk_resource_strings.py build/android/fast_local_dev_server.py +build/android/generate_wrap_sh.py build/android/gradle/generate_gradle.py build/android/gyp/assert_static_initializers.py build/android/gyp/bundletool.py @@ -427,22 +440,22 @@ build/android/pylib/instrumentation/render_test.html.jinja build/android/pylib/local/device/local_device_environment.py build/android/pylib/local/device/local_device_gtest_run.py build/android/pylib/local/device/local_device_monkey_test_run.py -build/android/pylib/local/device/skylab_environment.py build/android/pylib/local/emulator/avd.py build/android/pylib/results/flakiness_dashboard/json_results_generator.py build/android/pylib/results/presentation/test_results_presentation.py -build/android/pylib/utils/google_storage_helper.py build/android/pylib/utils/maven_downloader.py build/android/pylib/utils/simpleperf.py build/android/resource_sizes.py build/android/test_runner.py build/android/test_wrapper/logdog_wrapper.py build/apple/tweak_info_plist.py +build/autoroll/fetch_util.py build/build_config.h build/chromeos/PRESUBMIT.py build/chromeos/test_runner.py build/config/BUILDCONFIG.gn build/config/android/BUILD.gn +build/config/android/config.gni build/config/android/internal_rules.gni build/config/android/rules.gni build/config/arm.gni @@ -453,6 +466,7 @@ build/config/chromeos/rules.gni build/config/compiler/BUILD.gn build/config/compiler/compiler.gni build/config/fuchsia/BUILD.gn +build/config/linux/pkg_config.gni build/config/locales.gni build/config/nacl/BUILD.gn build/config/nacl/rules.gni @@ -464,6 +478,7 @@ build/config/win/control_flow_guard.gni build/fuchsia/PRESUBMIT.py build/fuchsia/binary_size_differ.py build/fuchsia/binary_sizes.py +build/fuchsia/gen_build_defs.py build/fuchsia/get_auth_token.py build/fuchsia/test/PRESUBMIT.py build/gn_ast/gn_ast.py @@ -475,7 +490,6 @@ build/linux/unbundle/remove_bundled_libraries.py build/mac_toolchain.py build/nocompile.gni build/rust/rustc_wrapper.py -build/rust/std/remap_alloc.cc build/rust/std/rules/BUILD.gn build/sanitizers/lsan_suppressions.cc build/sanitizers/tsan_suppressions.cc @@ -486,6 +500,8 @@ build/toolchain/gcc_toolchain.gni build/toolchain/nacl/BUILD.gn build/toolchain/win/midl.py build/toolchain/win/rc/rc.py +build/util/lib/common/google_storage_helper.py +build/util/lib/common/google_storage_helper_test.py build/util/lib/proto/PRESUBMIT.py build/util/lib/results/result_sink.py build/vs_toolchain.py @@ -500,6 +516,7 @@ cc/input/scrollbar_controller.h cc/metrics/average_lag_tracker.h cc/metrics/ukm_smoothness_data.h cc/paint/paint_image.h +cc/paint/tone_map_util.cc cc/raster/one_copy_raster_buffer_provider.cc cc/scheduler/scheduler_state_machine.cc cc/tiles/gpu_image_decode_cache.h @@ -533,9 +550,11 @@ chrome/app/theme/PRESUBMIT.py chrome/browser/PRESUBMIT.py chrome/browser/about_flags.cc chrome/browser/accessibility/live_caption/live_caption_speech_recognition_host_browsertest.cc +chrome/browser/actor/tools/page_tool.cc chrome/browser/ai/ai_data_keyed_service.cc +chrome/browser/ai/ai_data_keyed_service_browsertest.cc chrome/browser/ai/ai_language_model.cc -chrome/browser/ai/ai_language_model_unittest.cc +chrome/browser/ai/ai_on_device_browsertest.cc chrome/browser/android/compositor/scene_layer/contextual_search_scene_layer.cc chrome/browser/android/cookies/cookies_fetcher_restore_util_browsertest.cc chrome/browser/android/customtabs/custom_tabs_browsertest.cc @@ -622,6 +641,7 @@ chrome/browser/ash/app_list/search/omnibox/omnibox_util.cc chrome/browser/ash/app_mode/auto_sleep/device_weekly_scheduled_suspend_controller.cc chrome/browser/ash/app_mode/fake_cws.cc chrome/browser/ash/app_mode/kiosk_troubleshooting_tools_browsertest.cc +chrome/browser/ash/app_mode/test/kiosk_identity_browsertest.cc chrome/browser/ash/app_restore/arc_app_single_restore_handler_unittest.cc chrome/browser/ash/app_restore/arc_ghost_window_view_unittest.cc chrome/browser/ash/app_restore/full_restore_service_unittest.cc @@ -658,10 +678,10 @@ chrome/browser/ash/attestation/soft_bind_attestation_flow_impl_unittest.cc chrome/browser/ash/attestation/tpm_challenge_key_subtle_unittest.cc chrome/browser/ash/bluetooth/bluetooth_log_controller_unittest.cc chrome/browser/ash/bluetooth/debug_logs_manager_unittest.cc -chrome/browser/ash/boca/on_task/on_task_locked_session_navigation_throttle.cc chrome/browser/ash/boca/on_task/on_task_locked_session_navigation_throttle_interactive_ui_test.cc chrome/browser/ash/boca/on_task/on_task_locked_session_window_tracker_browsertest.cc -chrome/browser/ash/boca/spotlight/spotlight_crd_manager_impl_unittest.cc +chrome/browser/ash/boca/spotlight/spotlight_crd_manager_impl_browsertest.cc +chrome/browser/ash/boca/spotlight/spotlight_oauth_token_fetcher_impl.cc chrome/browser/ash/bruschetta/bruschetta_download.cc chrome/browser/ash/calendar/calendar_client_impl.cc chrome/browser/ash/calendar/calendar_client_impl_unittest.cc @@ -674,7 +694,7 @@ chrome/browser/ash/child_accounts/parent_access_code/parent_access_service_brows chrome/browser/ash/child_accounts/time_limits/app_time_limit_utils_unittest.cc chrome/browser/ash/child_accounts/website_approval_notifier_unittest.cc chrome/browser/ash/crosapi/local_printer_ash_unittest.cc -chrome/browser/ash/crosapi/one_drive_integration_service_ash_unittest.cc +chrome/browser/ash/crostini/baguette_download.cc chrome/browser/ash/crostini/crostini_installer.h chrome/browser/ash/crostini/crostini_simple_types.h chrome/browser/ash/crostini/crostini_util.h @@ -717,9 +737,9 @@ chrome/browser/ash/input_method/ime_service_connector.cc chrome/browser/ash/integration_tests/featured_integration_test.cc chrome/browser/ash/kerberos/kerberos_credentials_manager_unittest.cc chrome/browser/ash/lobster/lobster_feedback_unittest.cc +chrome/browser/ash/lobster/lobster_image_provider_from_snapper.cc chrome/browser/ash/lobster/lobster_system_state_provider_impl_unittest.cc chrome/browser/ash/login/app_mode/kiosk_launch_controller_unittest.cc -chrome/browser/ash/login/app_mode/test/kiosk_enterprise_browsertest.cc chrome/browser/ash/login/ash_hud_login_browsertest.cc chrome/browser/ash/login/demo_mode/demo_login_controller.cc chrome/browser/ash/login/demo_mode/demo_login_controller_unittest.cc @@ -748,7 +768,6 @@ chrome/browser/ash/login/saml/password_sync_token_fetcher.cc chrome/browser/ash/login/saml/saml_browsertest.cc chrome/browser/ash/login/saml/saml_lockscreen_browsertest.cc chrome/browser/ash/login/screens/arc_vm_data_migration_screen_unittest.cc -chrome/browser/ash/login/screens/assistant_optin_flow_screen_browsertest.cc chrome/browser/ash/login/screens/categories_selection_screen_browsertest.cc chrome/browser/ash/login/screens/locale_switch_screen.cc chrome/browser/ash/login/screens/locale_switch_screen_browsertest.cc @@ -839,7 +858,7 @@ chrome/browser/ash/wallpaper_handlers/google_photos_wallpaper_handlers_unittest. chrome/browser/ash/wallpaper_handlers/sea_pen_fetcher.cc chrome/browser/ash/wallpaper_handlers/wallpaper_handlers.cc chrome/browser/autocomplete/autocomplete_browsertest.cc -chrome/browser/autocomplete/chrome_autocomplete_provider_client_unittest.cc +chrome/browser/autocomplete/chrome_autocomplete_provider_client_browsertest.cc chrome/browser/autocomplete/chrome_autocomplete_scheme_classifier_unittest.cc chrome/browser/autocomplete/search_provider_unittest.cc chrome/browser/autocomplete/tab_matcher_desktop_unittest.cc @@ -852,11 +871,11 @@ chrome/browser/autofill/automated_tests/cache_replayer.cc chrome/browser/autofill/automated_tests/cache_replayer.h chrome/browser/autofill/automated_tests/cache_replayer_unittest.cc chrome/browser/autofill/captured_sites_test_utils.cc -chrome/browser/autofill_ai/chrome_autofill_ai_client_unittest.cc chrome/browser/background/background_contents_service.cc chrome/browser/background_sync/periodic_background_sync_permission_context.cc chrome/browser/bluetooth/web_bluetooth_browsertest.cc chrome/browser/bookmarks/bookmark_merged_surface_service_unittest.cc +chrome/browser/bookmarks/bookmark_test_utils.cc chrome/browser/bookmarks/managed_bookmark_service_unittest.cc chrome/browser/breadcrumbs/breadcrumb_manager_tab_helper_unittest.cc chrome/browser/browser_about_handler_unittest.cc @@ -890,9 +909,9 @@ chrome/browser/chrome_content_browser_client_unittest.cc chrome/browser/chrome_for_testing/tools/generate_about_file.py chrome/browser/chrome_main_process_singleton_browsertest.cc chrome/browser/chrome_navigation_browsertest.cc +chrome/browser/chrome_security_exploit_browsertest.cc chrome/browser/chrome_web_platform_security_metrics_browsertest.cc chrome/browser/chromeos/arc/arc_external_protocol_dialog_unittest.cc -chrome/browser/chromeos/cros_apps/api/cros_apps_api_infos.cc chrome/browser/chromeos/enterprise/cloud_storage/one_drive_pref_observer_browsertest.cc chrome/browser/chromeos/extensions/desk_api/desk_api_extension_manager.cc chrome/browser/chromeos/extensions/desk_api/desk_api_extension_manager.h @@ -924,7 +943,7 @@ chrome/browser/content_settings/content_settings_pref_provider_unittest.cc chrome/browser/content_settings/host_content_settings_map_unittest.cc chrome/browser/content_settings/javascript_optimizer_provider_android_unittest.cc chrome/browser/content_settings/sound_content_setting_observer_unittest.cc -chrome/browser/contextual_cueing/contextual_cueing_helper_interactive_uitest.cc +chrome/browser/contextual_cueing/zero_state_suggestions_page_data_browsertest.cc chrome/browser/custom_handlers/protocol_handler_registry_browsertest.cc chrome/browser/data_sharing/desktop/data_sharing_conversion_utils_unittest.cc chrome/browser/data_sharing/desktop/data_sharing_service_browsertest.cc @@ -948,10 +967,12 @@ chrome/browser/download/save_page_browsertest.cc chrome/browser/engagement/important_sites_util_browsertest.cc chrome/browser/engagement/important_sites_util_unittest.cc chrome/browser/engagement/site_engagement_service_unittest.cc +chrome/browser/enterprise/connectors/analysis/clipboard_request_handler_unittest.cc chrome/browser/enterprise/connectors/analysis/content_analysis_delegate_browsertest.cc chrome/browser/enterprise/connectors/analysis/content_analysis_delegate_unittest.cc chrome/browser/enterprise/connectors/analysis/content_analysis_dialog_browsertest.cc chrome/browser/enterprise/connectors/analysis/content_analysis_downloads_delegate_unittest.cc +chrome/browser/enterprise/connectors/analysis/content_analysis_info.cc chrome/browser/enterprise/connectors/analysis/file_transfer_analysis_delegate_unittest.cc chrome/browser/enterprise/connectors/analysis/page_print_request_handler_unittest.cc chrome/browser/enterprise/connectors/device_trust/attestation/ash/ash_attestation_cleanup_manager_unittest.cc @@ -981,12 +1002,12 @@ chrome/browser/enterprise/profile_management/profile_management_navigation_throt chrome/browser/enterprise/reporting/extension_request/extension_request_notification.cc chrome/browser/enterprise/reporting/extension_request/extension_request_notification_unittest.cc chrome/browser/enterprise/reporting/extension_request/extension_request_observer_unittest.cc -chrome/browser/enterprise/signals/device_info_fetcher_win.cc -chrome/browser/enterprise/signals/signals_utils.cc +chrome/browser/enterprise/signals/profile_signals_collector_browsertest.cc chrome/browser/enterprise/signin/enterprise_signin_service_browsertest.cc chrome/browser/enterprise/signin/token_managed_profile_creation_delegate_unittest.cc chrome/browser/enterprise/util/managed_browser_utils.cc chrome/browser/enterprise/util/managed_browser_utils.h +chrome/browser/enterprise/webstore/chrome_web_store_navigation_throttle_unittest.cc chrome/browser/error_reporting/chrome_js_error_report_processor_nonchromeos.cc chrome/browser/error_reporting/chrome_js_error_report_processor_unittest.cc chrome/browser/extensions/activity_log/activity_log_policy_unittest.cc @@ -995,7 +1016,7 @@ chrome/browser/extensions/activity_log/counting_policy_unittest.cc chrome/browser/extensions/activity_log/fullstream_ui_policy_unittest.cc chrome/browser/extensions/api/activity_log_private/activity_log_private_api_unittest.cc chrome/browser/extensions/api/bookmark_manager_private/bookmark_manager_private_api_unittest.cc -chrome/browser/extensions/api/bookmarks/bookmark_apitest.cc +chrome/browser/extensions/api/bookmarks/bookmarks_apitest.cc chrome/browser/extensions/api/braille_display_private/braille_display_private_apitest.cc chrome/browser/extensions/api/content_settings/content_settings_apitest.cc chrome/browser/extensions/api/context_menus/extension_context_menu_browsertest.cc @@ -1028,7 +1049,7 @@ chrome/browser/extensions/api/identity/identity_apitest.cc chrome/browser/extensions/api/identity/identity_launch_web_auth_flow_function.cc chrome/browser/extensions/api/image_writer_private/removable_storage_provider.cc chrome/browser/extensions/api/image_writer_private/removable_storage_provider_linux.cc -chrome/browser/extensions/api/messaging/messaging_apitest.cc +chrome/browser/extensions/api/messaging/externally_connectable_messaging_apitest.cc chrome/browser/extensions/api/page_capture/page_capture_api_unittest.cc chrome/browser/extensions/api/passwords_private/password_check_delegate_unittest.cc chrome/browser/extensions/api/passwords_private/passwords_private_delegate_impl_unittest.cc @@ -1040,7 +1061,6 @@ chrome/browser/extensions/api/printing/printing_api_utils.h chrome/browser/extensions/api/proxy/proxy_api_helpers_unittest.cc chrome/browser/extensions/api/quick_unlock_private/quick_unlock_private_api_unittest.cc chrome/browser/extensions/api/runtime/runtime_apitest.cc -chrome/browser/extensions/api/safe_browsing_private/safe_browsing_private_event_router_unittest.cc chrome/browser/extensions/api/scripting/scripting_apitest.cc chrome/browser/extensions/api/settings_overrides/settings_overrides_browsertest.cc chrome/browser/extensions/api/tab_capture/tab_capture_performance_test_base.cc @@ -1082,6 +1102,7 @@ chrome/browser/extensions/extension_util_unittest.cc chrome/browser/extensions/external_policy_loader_unittest.cc chrome/browser/extensions/external_pref_loader.cc chrome/browser/extensions/external_provider_impl_chromeos_unittest.cc +chrome/browser/extensions/file_handlers/web_file_handlers_permission_handler.cc chrome/browser/extensions/forced_extensions/force_installed_test_base.cc chrome/browser/extensions/install_signer.cc chrome/browser/extensions/installed_loader_unittest.cc @@ -1128,12 +1149,15 @@ chrome/browser/flag-metadata.json chrome/browser/flag_descriptions.cc chrome/browser/flags/android/chrome_session_state.h chrome/browser/font_prewarmer_tab_helper_browsertest.cc -chrome/browser/glic/glic_cookie_synchronizer.cc -chrome/browser/glic/glic_cookie_synchronizer_unittest.cc -chrome/browser/glic/glic_fre_page_handler.cc +chrome/browser/glic/e2e_test/glic_e2e_test.cc +chrome/browser/glic/fre/glic_fre_controller.cc +chrome/browser/glic/fre/glic_fre_controller_unittest.cc +chrome/browser/glic/fre/glic_fre_page_handler.cc chrome/browser/glic/glic_metrics_unittest.cc -chrome/browser/glic/glic_page_handler.cc -chrome/browser/glic/glic_ui.cc +chrome/browser/glic/host/glic_cookie_synchronizer.cc +chrome/browser/glic/host/glic_cookie_synchronizer_unittest.cc +chrome/browser/glic/host/glic_page_handler.cc +chrome/browser/glic/host/glic_ui.cc chrome/browser/google/google_update_win.cc chrome/browser/guest_view/web_view/context_menu_content_type_web_view.cc chrome/browser/hid/chrome_hid_delegate_unittest.cc @@ -1149,12 +1173,16 @@ chrome/browser/importer/firefox_profile_lock_posix.cc chrome/browser/importer/firefox_profile_lock_win.cc chrome/browser/importer/ie_importer_browsertest_win.cc chrome/browser/importer/profile_writer_unittest.cc +chrome/browser/ip_protection/ip_protection_core_host_unittest.cc chrome/browser/k_anonymity_service/k_anonymity_service_client_browsertest.cc chrome/browser/k_anonymity_service/k_anonymity_service_client_unittest.cc chrome/browser/k_anonymity_service/k_anonymity_trust_token_getter_unittest.cc chrome/browser/keyboard_accessory/android/address_accessory_controller_impl_unittest.cc chrome/browser/keyboard_accessory/android/password_accessory_controller_impl_unittest.cc chrome/browser/lifetime/switch_utils_unittest.cc +chrome/browser/loader/from_gws_navigation_and_keep_alive_request_observer_unittest.cc +chrome/browser/loader/keep_alive_request_browsertest_util.h +chrome/browser/loader/keep_alive_request_tracker.h chrome/browser/loader/keep_alive_url_browsertest.cc chrome/browser/local_discovery/service_discovery_client_mac.mm chrome/browser/long_screenshots/long_screenshots_tab_service.cc @@ -1181,8 +1209,6 @@ chrome/browser/media/router/providers/cast/cast_media_route_provider_unittest.cc chrome/browser/media/router/providers/dial/dial_activity_manager_unittest.cc chrome/browser/media/router/providers/dial/dial_media_route_provider.cc chrome/browser/media/router/providers/dial/dial_media_route_provider_unittest.cc -chrome/browser/media/webrtc/capture_policy_utils_browsertest.cc -chrome/browser/media/webrtc/capture_policy_utils_unittest.cc chrome/browser/media/webrtc/display_media_access_handler_unittest.cc chrome/browser/media/webrtc/webrtc_browsertest_common.cc chrome/browser/media/webrtc/webrtc_event_log_uploader.cc @@ -1259,7 +1285,6 @@ chrome/browser/notifications/platform_notification_service_unittest.cc chrome/browser/notifications/win/notification_template_builder.cc chrome/browser/ntp_tiles/ntp_tiles_browsertest.cc chrome/browser/obsolete_system/obsolete_system_linux.cc -chrome/browser/on_device_translation/on_device_translation_browsertest.cc chrome/browser/optimization_guide/chrome_hints_manager_unittest.cc chrome/browser/optimization_guide/hints_fetcher_browsertest.cc chrome/browser/optimization_guide/model_execution/model_execution_browsertest.cc @@ -1273,6 +1298,7 @@ chrome/browser/page_load_metrics/observers/core/amp_page_load_metrics_observer.h chrome/browser/page_load_metrics/observers/core/amp_page_load_metrics_observer_unittest.cc chrome/browser/page_load_metrics/observers/core/ukm_page_load_metrics_observer_unittest.cc chrome/browser/page_load_metrics/observers/document_write_page_load_metrics_observer_unittest.cc +chrome/browser/page_load_metrics/observers/from_gws_abandoned_page_load_metrics_observer_browsertest.cc chrome/browser/page_load_metrics/observers/from_gws_page_load_metrics_observer.cc chrome/browser/page_load_metrics/observers/from_gws_page_load_metrics_observer_unittest.cc chrome/browser/page_load_metrics/observers/gws_abandoned_page_load_metrics_observer_browsertest.cc @@ -1318,7 +1344,7 @@ chrome/browser/payments/journey_logger_browsertest.cc chrome/browser/payments/manifest_verifier_browsertest.cc chrome/browser/payments/payment_request_app_store_billing_browsertest.cc chrome/browser/payments/service_worker_payment_app_finder_browsertest.cc -chrome/browser/performance_manager/policies/page_discarding_helper_unittest.cc +chrome/browser/performance_manager/policies/discard_eligibility_policy_unittest.cc chrome/browser/performance_manager/policies/report_page_processes_policy.cc chrome/browser/permissions/chrome_permission_manager_unittest.cc chrome/browser/permissions/chrome_permission_request_manager_unittest.cc @@ -1326,6 +1352,7 @@ chrome/browser/permissions/notifications_engagement_service_unittest.cc chrome/browser/permissions/permission_context_base_permissions_policy_unittest.cc chrome/browser/permissions/permission_element_origin_trial_browsertest.cc chrome/browser/permissions/permissions_security_model_interactive_uitest.cc +chrome/browser/permissions/prediction_service_browsertest.cc chrome/browser/permissions/quiet_permission_prompt_model_android.cc chrome/browser/platform_util_win.cc chrome/browser/policy/cloud/cloud_policy_browsertest.cc @@ -1343,6 +1370,7 @@ chrome/browser/policy/test/force_google_safe_search_policy_browsertest.cc chrome/browser/policy/test/policy_statistics_collector_browsertest.cc chrome/browser/policy/test/policy_test_google_browsertest.cc chrome/browser/policy/test/safe_browsing_policy_browsertest.cc +chrome/browser/policy/test/sharing_policy_browsertest.cc chrome/browser/policy/test/system_features_policy_browsertest.cc chrome/browser/policy/webhid_device_policy_handler_unittest.cc chrome/browser/policy/webusb_allow_devices_for_urls_policy_handler_unittest.cc @@ -1372,11 +1400,12 @@ chrome/browser/preloading/prefetch/prefetch_service/chrome_prefetch_service_dele chrome/browser/preloading/prefetch/zero_suggest_prefetch/zero_suggest_prefetch_tab_helper_browsertest.cc chrome/browser/preloading/preview/preview_navigation_throttle.h chrome/browser/preloading/preview/preview_zoom_controller.h +chrome/browser/preloading/search_preload/search_preload_features.h +chrome/browser/preloading/search_preload/search_preload_pipeline_manager.cc chrome/browser/printing/print_preview_dialog_controller_unittest.cc chrome/browser/privacy/secure_dns_bridge.cc chrome/browser/privacy_sandbox/PRESUBMIT.py chrome/browser/privacy_sandbox/privacy_sandbox_activity_types_service.h -chrome/browser/privacy_sandbox/privacy_sandbox_service_impl.cc chrome/browser/privacy_sandbox/privacy_sandbox_service_impl_unittest.cc chrome/browser/privacy_sandbox/privacy_sandbox_utils_unittest.cc chrome/browser/private_network_access/private_network_device_chooser_controller_unittest.cc @@ -1416,7 +1445,6 @@ chrome/browser/renderer_context_menu/render_view_context_menu_interactive_uitest chrome/browser/renderer_context_menu/render_view_context_menu_unittest.cc chrome/browser/renderer_host/chrome_navigation_ui_data.h chrome/browser/renderer_preferences_util_unittest.cc -chrome/browser/request_header_integrity/request_header_integrity_url_loader_throttle_unittest.cc chrome/browser/resource_coordinator/tab_load_tracker_unittest.cc chrome/browser/resources/PRESUBMIT.py chrome/browser/resources/accessibility/chromevox_helper_manifest.json.jinja2 @@ -1431,7 +1459,6 @@ chrome/browser/resources/ash/settings/app_management_icons.html chrome/browser/resources/ash/settings/controls/v2/settings_row.ts chrome/browser/resources/ash/settings/crostini_page/crostini_disk_resize_dialog.html chrome/browser/resources/ash/settings/device_page/stylus.ts -chrome/browser/resources/ash/settings/icons.html chrome/browser/resources/ash/settings/internal/storybook/settings_dropdown_row_storybook.html chrome/browser/resources/ash/settings/internal/storybook/settings_row_storybook.html chrome/browser/resources/ash/settings/os_a11y_page/bluetooth_braille_display_manager.ts @@ -1450,15 +1477,24 @@ chrome/browser/resources/ash/settings/settings_shared.css chrome/browser/resources/bookmarks/command_manager.ts chrome/browser/resources/browsing_topics/browsing_topics_internals.html chrome/browser/resources/chromeos/about_os_credits.html -chrome/browser/resources/chromeos/accessibility/accessibility_common/dictation/macros/list_commands_macro.ts -chrome/browser/resources/chromeos/accessibility/accessibility_common/facegaze/mouse_controller.ts -chrome/browser/resources/chromeos/accessibility/chromevox/background/background_test.js -chrome/browser/resources/chromeos/accessibility/chromevox/background/braille/braille_input_handler_test.js -chrome/browser/resources/chromeos/accessibility/chromevox/background/editing/editable_text_test.js -chrome/browser/resources/chromeos/accessibility/chromevox/background/input/command_handler.ts -chrome/browser/resources/chromeos/accessibility/chromevox/common/locale_output_helper_test.js -chrome/browser/resources/chromeos/accessibility/chromevox/common/spannable_test.js -chrome/browser/resources/chromeos/accessibility/chromevox/panel/tutorial_test.js +chrome/browser/resources/chromeos/accessibility/accessibility_common/mv2/dictation/macros/list_commands_macro.ts +chrome/browser/resources/chromeos/accessibility/accessibility_common/mv2/facegaze/mouse_controller.ts +chrome/browser/resources/chromeos/accessibility/accessibility_common/mv3/dictation/macros/list_commands_macro.ts +chrome/browser/resources/chromeos/accessibility/accessibility_common/mv3/facegaze/mouse_controller.ts +chrome/browser/resources/chromeos/accessibility/chromevox/mv2/background/background_test.js +chrome/browser/resources/chromeos/accessibility/chromevox/mv2/background/braille/braille_input_handler_test.js +chrome/browser/resources/chromeos/accessibility/chromevox/mv2/background/editing/editable_text_test.js +chrome/browser/resources/chromeos/accessibility/chromevox/mv2/background/input/command_handler.ts +chrome/browser/resources/chromeos/accessibility/chromevox/mv2/common/locale_output_helper_test.js +chrome/browser/resources/chromeos/accessibility/chromevox/mv2/common/spannable_test.js +chrome/browser/resources/chromeos/accessibility/chromevox/mv2/panel/tutorial_test.js +chrome/browser/resources/chromeos/accessibility/chromevox/mv3/background/background_test.js +chrome/browser/resources/chromeos/accessibility/chromevox/mv3/background/braille/braille_input_handler_test.js +chrome/browser/resources/chromeos/accessibility/chromevox/mv3/background/editing/editable_text_test.js +chrome/browser/resources/chromeos/accessibility/chromevox/mv3/background/input/command_handler.ts +chrome/browser/resources/chromeos/accessibility/chromevox/mv3/common/locale_output_helper_test.js +chrome/browser/resources/chromeos/accessibility/chromevox/mv3/common/spannable_test.js +chrome/browser/resources/chromeos/accessibility/chromevox/mv3/panel/tutorial_test.js chrome/browser/resources/chromeos/accessibility/chromevox_manifest.json.jinja2 chrome/browser/resources/chromeos/accessibility/common/cursors/cursors_test.js chrome/browser/resources/chromeos/accessibility/common/cursors/recovery_strategy_test.js @@ -1500,7 +1536,7 @@ chrome/browser/resources/chromeos/emoji_picker/emoji_picker_api_proxy.ts chrome/browser/resources/chromeos/emoji_picker/icons.html chrome/browser/resources/chromeos/emoji_picker/prefix_search.ts chrome/browser/resources/chromeos/emulator/icons.html -chrome/browser/resources/chromeos/input_method/google_xkb_manifest.json +chrome/browser/resources/chromeos/input_method/google_xkb_manifest.json.jinja2 chrome/browser/resources/chromeos/login/components/web_view_loader.ts chrome/browser/resources/chromeos/login/debug/debug.ts chrome/browser/resources/chromeos/login/debug/quick_start_debugger.ts @@ -1579,7 +1615,6 @@ chrome/browser/resources/webui_gallery/demos/cr_input/cr_input_demo.html.ts chrome/browser/resources/webui_gallery/demos/cr_url_list_item/cr_url_list_item_demo.html.ts chrome/browser/resources/webui_gallery/demos/side_panel/sp_components_demo.ts chrome/browser/rlz/chrome_rlz_tracker_web_contents_observer_unittest.cc -chrome/browser/safe_browsing/chrome_enterprise_url_lookup_service.cc chrome/browser/safe_browsing/chrome_enterprise_url_lookup_service_unittest.cc chrome/browser/safe_browsing/chrome_password_protection_service.cc chrome/browser/safe_browsing/chrome_password_protection_service_browsertest.cc @@ -1595,6 +1630,7 @@ chrome/browser/safe_browsing/download_protection/check_client_download_request_b chrome/browser/safe_browsing/download_protection/deep_scanning_browsertest.cc chrome/browser/safe_browsing/download_protection/deep_scanning_request_unittest.cc chrome/browser/safe_browsing/download_protection/download_feedback.cc +chrome/browser/safe_browsing/download_protection/download_protection_delegate_android.cc chrome/browser/safe_browsing/download_protection/download_protection_delegate_desktop.cc chrome/browser/safe_browsing/download_protection/download_protection_service_unittest.cc chrome/browser/safe_browsing/download_protection/ppapi_download_request.cc @@ -1606,11 +1642,12 @@ chrome/browser/safe_browsing/incident_reporting/extension_data_collection_unitte chrome/browser/safe_browsing/incident_reporting/incident_report_uploader_impl.cc chrome/browser/safe_browsing/incident_reporting/incident_reporting_service_unittest.cc chrome/browser/safe_browsing/incident_reporting/last_download_finder_unittest.cc -chrome/browser/safe_browsing/notification_content_detection_service_browsertest.cc +chrome/browser/safe_browsing/notification_content_detection/notification_content_detection_service_browsertest.cc +chrome/browser/safe_browsing/notification_telemetry/notification_telemetry_service.cc +chrome/browser/safe_browsing/notification_telemetry/notification_telemetry_service_unittest.cc chrome/browser/safe_browsing/safe_browsing_blocking_page_test.cc chrome/browser/safe_browsing/tailored_security/chrome_tailored_security_service_unittest.cc chrome/browser/safe_browsing/tailored_security/tailored_security_url_observer_unittest.cc -chrome/browser/search/background/ntp_background_service.cc chrome/browser/search/background/ntp_custom_background_service.cc chrome/browser/search/ntp_features_unittest.cc chrome/browser/search/search.h @@ -1621,7 +1658,7 @@ chrome/browser/search_engines/template_url_service_test_util.cc chrome/browser/search_engines/template_url_service_unittest.cc chrome/browser/segmentation_platform/segmentation_platform_service_factory_unittest.cc chrome/browser/segmentation_platform/service_browsertest.cc -chrome/browser/send_tab_to_self/desktop_notification_handler_unittest.cc +chrome/browser/send_tab_to_self/desktop_notification_handler_browsertest.cc chrome/browser/serial/chrome_serial_browsertest.cc chrome/browser/serial/serial_chooser_context_unittest.cc chrome/browser/serial/serial_policy_allowed_ports_unittest.cc @@ -1656,6 +1693,7 @@ chrome/browser/signin/bound_session_credentials/dice_bound_session_cookie_servic chrome/browser/signin/bound_session_credentials/registration_token_helper_unittest.cc chrome/browser/signin/bound_session_credentials/session_binding_helper_unittest.cc chrome/browser/signin/bound_session_credentials/throttled_gaia_auth_fetcher_unittest.cc +chrome/browser/signin/chrome_signin_client_browsertest.cc chrome/browser/signin/chrome_signin_helper_unittest.cc chrome/browser/signin/chrome_signin_proxying_url_loader_factory.h chrome/browser/signin/chrome_signin_proxying_url_loader_factory_unittest.cc @@ -1691,7 +1729,6 @@ chrome/browser/ssl/typed_navigation_upgrade_throttle_browsertest.cc chrome/browser/startup_data.h chrome/browser/storage/durable_storage_permission_context_unittest.cc chrome/browser/storage/shared_storage_browsertest.cc -chrome/browser/storage_access_api/storage_access_header_service_browsertest.cc chrome/browser/subresource_filter/subresource_filter_browsertest.cc chrome/browser/subresource_filter/subresource_filter_fenced_frame_browsertest.cc chrome/browser/supervised_user/android/java/res/drawable/ic_family_link.xml @@ -1705,6 +1742,7 @@ chrome/browser/supervised_user/supervised_user_google_auth_navigation_throttle.c chrome/browser/supervised_user/supervised_user_google_auth_navigation_throttle_unittest.cc chrome/browser/supervised_user/supervised_user_navigation_throttle_browsertest.cc chrome/browser/supervised_user/supervised_user_pending_state_navigation_browsertest.cc +chrome/browser/supervised_user/supervised_user_service_browsertest.cc chrome/browser/supervised_user/supervised_user_test_util.cc chrome/browser/supervised_user/supervised_user_url_filter_extensions_unittest.cc chrome/browser/supervised_user/url_filter_interactive_uitest.cc @@ -1745,16 +1783,15 @@ chrome/browser/sync_file_system/local/local_file_sync_context_unittest.cc chrome/browser/sync_file_system/sync_file_system_service.h chrome/browser/tab/web_contents_state.cc chrome/browser/tab_contents/navigation_metrics_recorder_browsertest.cc +chrome/browser/tab_ui/android/java/strings/android_tab_ui_strings.grd chrome/browser/task_manager/sampling/shared_sampler_win_defines.h chrome/browser/themes/theme_syncable_service.cc chrome/browser/translate/translate_manager_browsertest.cc chrome/browser/trusted_vault/trusted_vault_encryption_keys_tab_helper_browsertest.cc -chrome/browser/ui/android/plus_addresses/all_plus_addresses_bottom_sheet_view_browsertest.cc chrome/browser/ui/android/strings/android_chrome_strings.grd chrome/browser/ui/ash/app_list/app_list_interactive_uitest.cc chrome/browser/ui/ash/arc/arc_open_url_delegate_impl_browsertest.cc chrome/browser/ui/ash/assistant/assistant_state_client_unittest.cc -chrome/browser/ui/ash/assistant/assistant_test_mixin.cc chrome/browser/ui/ash/birch/birch_browsertest.cc chrome/browser/ui/ash/birch/birch_calendar_fetcher.cc chrome/browser/ui/ash/birch/birch_calendar_fetcher_unittest.cc @@ -1762,7 +1799,7 @@ chrome/browser/ui/ash/birch/birch_coral_provider_browsertest.cc chrome/browser/ui/ash/birch/birch_keyed_service_unittest.cc chrome/browser/ui/ash/birch/birch_lost_media_provider.cc chrome/browser/ui/ash/birch/refresh_token_waiter_unittest.cc -chrome/browser/ui/ash/capture_mode/lens_overlay_query_controller.cc +chrome/browser/ui/ash/capture_mode/chrome_capture_mode_delegate.cc chrome/browser/ui/ash/capture_mode/sunfish_browsertest.cc chrome/browser/ui/ash/desks/desks_client_browsertest.cc chrome/browser/ui/ash/focus_mode/certificate_manager.cc @@ -1798,9 +1835,9 @@ chrome/browser/ui/ash/wallpaper/wallpaper_controller_client_impl.cc chrome/browser/ui/ash/web_view/ash_web_view_impl_browsertest.cc chrome/browser/ui/ash/wm/coral_browsertest.cc chrome/browser/ui/autofill/address_editor_controller_unittest.cc +chrome/browser/ui/autofill/chrome_autofill_client.cc chrome/browser/ui/autofill/delete_address_profile_dialog_controller_impl_unittest.cc chrome/browser/ui/autofill/payments/offer_notification_bubble_controller_impl_unittest.cc -chrome/browser/ui/autofill/payments/offer_notification_controller_android_browsertest.cc chrome/browser/ui/autofill/payments/save_card_bubble_controller_impl.cc chrome/browser/ui/blocked_content/popup_blocker_browsertest.cc chrome/browser/ui/blocked_content/tab_under_navigation_throttle.h @@ -1873,6 +1910,7 @@ chrome/browser/ui/passwords/password_manager_navigation_throttle_unittest.cc chrome/browser/ui/passwords/well_known_change_password_navigation_throttle.cc chrome/browser/ui/passwords/well_known_change_password_navigation_throttle_browsertest.cc chrome/browser/ui/passwords/well_known_change_password_navigation_throttle_unittest.cc +chrome/browser/ui/plus_addresses/android/all_plus_addresses_bottom_sheet_view_browsertest.cc chrome/browser/ui/plus_addresses/plus_address_menu_model_unittest.cc chrome/browser/ui/profiles/profile_picker_unittest.cc chrome/browser/ui/safety_hub/disruptive_notification_permissions_manager_unittest.cc @@ -1898,21 +1936,21 @@ chrome/browser/ui/tab_helpers.h chrome/browser/ui/tab_sharing/tab_sharing_infobar_delegate_unittest.cc chrome/browser/ui/tabs/pinned_tab_codec_browsertest.cc chrome/browser/ui/tabs/pinned_tab_service_browsertest.cc -chrome/browser/ui/tabs/pinned_tab_service_unittest.cc chrome/browser/ui/tabs/saved_tab_groups/collaboration_messaging_tab_data_unittest.cc +chrome/browser/ui/tabs/saved_tab_groups/instant_message_queue_processor_unittest.cc chrome/browser/ui/tabs/saved_tab_groups/saved_tab_group_keyed_service_unittest.cc chrome/browser/ui/tabs/saved_tab_groups/tab_group_sync_delegate_browsertest.cc chrome/browser/ui/tabs/tab_strip_model_unittest.cc chrome/browser/ui/test/popup_browsertest.cc chrome/browser/ui/toolbar/app_menu_model_interactive_uitest.cc chrome/browser/ui/toolbar/cast/cast_contextual_menu.cc +chrome/browser/ui/toolbar/cast/cast_toolbar_button_util.cc chrome/browser/ui/toolbar/location_bar_model_unittest.cc chrome/browser/ui/url_identity_unittest.cc chrome/browser/ui/views/accelerator_table.cc chrome/browser/ui/views/apps/app_dialog/app_uninstall_dialog_view.cc chrome/browser/ui/views/autofill/payments/filled_card_information_bubble_views_interactive_uitest.cc chrome/browser/ui/views/autofill/payments/iban_bubble_view_uitest.cc -chrome/browser/ui/views/autofill/payments/local_card_migration_uitest.cc chrome/browser/ui/views/autofill/payments/offer_notification_bubble_views_test_base.cc chrome/browser/ui/views/autofill/payments/save_card_bubble_views_browsertest.cc chrome/browser/ui/views/autofill/popup/password_favicon_loader_unittest.cc @@ -1920,11 +1958,13 @@ chrome/browser/ui/views/autofill/popup/popup_row_factory_utils_browsertest.cc chrome/browser/ui/views/autofill/popup/popup_separator_view.h chrome/browser/ui/views/autofill/popup/popup_view_views_browsertest.cc chrome/browser/ui/views/autofill/popup/popup_view_views_unittest.cc +chrome/browser/ui/views/bookmarks/bookmark_account_storage_move_dialog_interactive_uitest.cc chrome/browser/ui/views/bookmarks/bookmark_bar_view_unittest.cc chrome/browser/ui/views/bookmarks/bookmark_bubble_view.cc chrome/browser/ui/views/bookmarks/bookmark_bubble_view_browsertest.cc chrome/browser/ui/views/bookmarks/bookmark_bubble_view_unittest.cc chrome/browser/ui/views/bookmarks/bookmark_context_menu_unittest.cc +chrome/browser/ui/views/bookmarks/bookmark_editor_view_browsertest.cc chrome/browser/ui/views/bookmarks/bookmark_menu_delegate_unittest.cc chrome/browser/ui/views/bookmarks/bookmark_test_utils.cc chrome/browser/ui/views/bookmarks/saved_tab_groups/shared_tab_group_interactive_uitest.cc @@ -1935,19 +1975,20 @@ chrome/browser/ui/views/commerce/price_tracking_icon_view_integration_test.cc chrome/browser/ui/views/data_sharing/data_sharing_live_browsertest.cc chrome/browser/ui/views/download/bubble/download_bubble_contents_view_unittest.cc chrome/browser/ui/views/download/bubble/download_bubble_security_view_unittest.cc -chrome/browser/ui/views/download/bubble/download_toolbar_button_view_unittest.cc chrome/browser/ui/views/extensions/device_chooser_extension_browsertest.cc chrome/browser/ui/views/extensions/extension_install_dialog_view_browsertest.cc chrome/browser/ui/views/extensions/extension_uninstall_dialog_view_browsertest.cc -chrome/browser/ui/views/extensions/web_file_handlers/web_file_handlers_file_launch_dialog.cc chrome/browser/ui/views/file_system_access/file_system_access_usage_bubble_view_browsertest.cc chrome/browser/ui/views/frame/browser_root_view_browsertest.cc chrome/browser/ui/views/frame/browser_view.h +chrome/browser/ui/views/frame/multi_contents_view_drop_target_controller_unittest.cc chrome/browser/ui/views/frame/webui_tab_strip_interactive_uitest.cc chrome/browser/ui/views/intent_picker_bubble_view_browsertest.cc chrome/browser/ui/views/intent_picker_bubble_view_unittest.cc chrome/browser/ui/views/location_bar/selected_keyword_view.h chrome/browser/ui/views/network_profile_bubble_view.cc +chrome/browser/ui/views/new_tab_footer/footer_controller_browsertest.cc +chrome/browser/ui/views/new_tab_footer/footer_interactive_uitest.cc chrome/browser/ui/views/omnibox/omnibox_popup_view_views_browsertest.cc chrome/browser/ui/views/omnibox/omnibox_result_view_unittest.cc chrome/browser/ui/views/omnibox/omnibox_view_views.cc @@ -1964,6 +2005,7 @@ chrome/browser/ui/views/page_info/page_info_history_controller.h chrome/browser/ui/views/page_info/safety_tip_page_info_bubble_view_browsertest.cc chrome/browser/ui/views/passwords/password_bubble_browsertest.cc chrome/browser/ui/views/passwords/password_bubble_interactive_uitest.cc +chrome/browser/ui/views/passwords/password_change/password_change_icon_views_interactive_ui_test.cc chrome/browser/ui/views/passwords/password_change/successful_password_change_view_unittest.cc chrome/browser/ui/views/passwords/password_dialog_view_browsertest.cc chrome/browser/ui/views/passwords/password_generation_popup_view_views_browsertest.cc @@ -2013,6 +2055,7 @@ chrome/browser/ui/webui/app_management/app_management_page_handler_chromeos.cc chrome/browser/ui/webui/app_management/app_management_page_handler_unittest.cc chrome/browser/ui/webui/ash/add_supervision/add_supervision_ui.cc chrome/browser/ui/webui/ash/add_supervision/add_supervision_ui_browsertest.cc +chrome/browser/ui/webui/ash/borealis_motd/borealis_motd_dialog.cc chrome/browser/ui/webui/ash/cloud_upload/cloud_upload_dialog.cc chrome/browser/ui/webui/ash/cloud_upload/cloud_upload_dialog_browsertest.cc chrome/browser/ui/webui/ash/cloud_upload/drive_upload_handler.cc @@ -2074,6 +2117,7 @@ chrome/browser/ui/webui/settings/settings_utils_unittest.cc chrome/browser/ui/webui/settings/settings_utils_win.cc chrome/browser/ui/webui/settings/site_settings_handler_unittest.cc chrome/browser/ui/webui/settings/site_settings_helper_unittest.cc +chrome/browser/ui/webui/side_panel/bookmarks/bookmarks_page_handler_unittest.cc chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_page_handler.cc chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_page_handler_unittest.cc chrome/browser/ui/webui/side_panel/customize_chrome/wallpaper_search/wallpaper_search_handler.cc @@ -2135,6 +2179,7 @@ chrome/browser/web_applications/preinstalled_web_apps/google_meet.cc chrome/browser/web_applications/preinstalled_web_apps/google_sheets.cc chrome/browser/web_applications/preinstalled_web_apps/google_slides.cc chrome/browser/web_applications/preinstalled_web_apps/messages_dogfood.cc +chrome/browser/web_applications/preinstalled_web_apps/notebook_lm.cc chrome/browser/web_applications/preinstalled_web_apps/preinstalled_web_apps.cc chrome/browser/web_applications/preinstalled_web_apps/youtube.cc chrome/browser/web_applications/preinstalled_web_apps_browsertest.cc @@ -2150,6 +2195,8 @@ chrome/browser/webauthn/challenge_url_fetcher.cc chrome/browser/webauthn/chrome_authenticator_request_delegate.cc chrome/browser/webauthn/chrome_authenticator_request_delegate_unittest.cc chrome/browser/webauthn/chrome_web_authentication_delegate.cc +chrome/browser/webauthn/chrome_web_authentication_delegate_base.cc +chrome/browser/webauthn/chrome_web_authentication_delegate_base_unittest.cc chrome/browser/webauthn/chrome_web_authentication_delegate_unittest.cc chrome/browser/webauthn/chrome_webauthn_autofill_interactive_uitest.cc chrome/browser/webauthn/enclave_authenticator_browsertest.cc @@ -2192,7 +2239,6 @@ chrome/common/extensions/api/file_system_provider.idl chrome/common/extensions/api/gcm.json chrome/common/extensions/api/generated_externs_list.txt chrome/common/extensions/api/identity.idl -chrome/common/extensions/api/image_writer_private.idl chrome/common/extensions/api/instance_id.json chrome/common/extensions/api/printing.idl chrome/common/extensions/api/privacy.json @@ -2223,6 +2269,8 @@ chrome/common/importer/firefox_importer_utils.cc chrome/common/net/x509_certificate_model_nss_unittest.cc chrome/common/net/x509_certificate_model_unittest.cc chrome/common/pref_names.h +chrome/common/request_header_integrity/request_header_integrity_url_loader_throttle_browsertest.cc +chrome/common/request_header_integrity/request_header_integrity_url_loader_throttle_unittest.cc chrome/common/url_constants.h chrome/common/webui_url_constants.h chrome/common/win/delay_load_failure_hook.cc @@ -2230,24 +2278,24 @@ chrome/common/win/delay_load_notify_hook.cc chrome/common/win/delay_load_notify_hook.h chrome/credential_provider/extension/os_service_manager.h chrome/credential_provider/extension/service.h -chrome/credential_provider/extension/task_manager_unittests.cc +chrome/credential_provider/extension/task_manager_unittest.cc chrome/credential_provider/gaiacp/associated_user_validator.cc -chrome/credential_provider/gaiacp/associated_user_validator_unittests.cc +chrome/credential_provider/gaiacp/associated_user_validator_unittest.cc chrome/credential_provider/gaiacp/auth_utils.cc chrome/credential_provider/gaiacp/dllmain.cc chrome/credential_provider/gaiacp/gaia_credential_base.cc -chrome/credential_provider/gaiacp/gaia_credential_base_unittests.cc -chrome/credential_provider/gaiacp/gaia_credential_provider_unittests.cc -chrome/credential_provider/gaiacp/gaia_credential_unittests.cc +chrome/credential_provider/gaiacp/gaia_credential_base_unittest.cc +chrome/credential_provider/gaiacp/gaia_credential_provider_unittest.cc +chrome/credential_provider/gaiacp/gaia_credential_unittest.cc chrome/credential_provider/gaiacp/gcp_utils.cc chrome/credential_provider/gaiacp/gcp_utils.h -chrome/credential_provider/gaiacp/gcp_utils_unittests.cc +chrome/credential_provider/gaiacp/gcp_utils_unittest.cc chrome/credential_provider/gaiacp/gcpw_strings.cc chrome/credential_provider/gaiacp/internet_availability_checker.cc chrome/credential_provider/gaiacp/mdm_utils.cc -chrome/credential_provider/gaiacp/reauth_credential_unittests.cc +chrome/credential_provider/gaiacp/reauth_credential_unittest.cc chrome/credential_provider/gaiacp/reg_utils.cc -chrome/credential_provider/gaiacp/win_http_url_fetcher_unittests.cc +chrome/credential_provider/gaiacp/win_http_url_fetcher_unittest.cc chrome/credential_provider/test/gcp_fakes.cc chrome/credential_provider/test/gcp_gls_output_unittest.cc chrome/credential_provider/test/gls_runner_test_base.cc @@ -2327,7 +2375,9 @@ chrome/notification_helper/notification_helper.cc chrome/renderer/accessibility/read_anything/read_aloud_traversal_utils.cc chrome/renderer/accessibility/read_anything/read_anything_app_controller_browsertest.cc chrome/renderer/accessibility/read_anything/read_anything_app_model.cc +chrome/renderer/accessibility/read_anything/read_anything_app_model_browsertest.cc chrome/renderer/accessibility/read_anything/read_anything_node_utils.cc +chrome/renderer/accessibility/read_anything/read_anything_node_utils_unittest.cc chrome/renderer/app_categorizer_unittest.cc chrome/renderer/ash_merge_session_loader_throttle_unittest.cc chrome/renderer/autofill/autofill_renderer_browsertest.cc @@ -2384,6 +2434,7 @@ chrome/test/chromedriver/session_commands.cc chrome/test/chromedriver/test/run_py_tests.py chrome/test/chromedriver/window_commands.cc chrome/test/chromedriver/window_commands_unittest.cc +chrome/test/enterprise/e2e/PRESUBMIT.py chrome/test/enterprise/e2e/connector/chrome_reporting_connector_test_case.py chrome/test/enterprise/e2e/connector/client_certs/client_certs_test.py chrome/test/enterprise/e2e/connector/common/realtime_reporting_ui_test.py @@ -2408,6 +2459,7 @@ chrome/test/enterprise/e2e/policy/extension_blocklist/extension_blocklist.py chrome/test/enterprise/e2e/policy/extension_forcelist/extension_forcelist.py chrome/test/enterprise/e2e/policy/force_google_safe_search/force_google_safe_search_webdriver_test.py chrome/test/enterprise/e2e/policy/fullscreen_allowed/fullscreen_allowed.py +chrome/test/enterprise/e2e/policy/gemini_settings/gemini_settings.py chrome/test/enterprise/e2e/policy/homepage/homepage.py chrome/test/enterprise/e2e/policy/install_extension.py chrome/test/enterprise/e2e/policy/mergelist/mergelist.py @@ -2422,9 +2474,11 @@ chrome/test/enterprise/e2e/policy/url_blocklist/url_blocklist.py chrome/test/enterprise/e2e/policy/user_data_dir/user_data_dir.py chrome/test/enterprise/e2e/policy/webprotect_file_download/webprotect_file_download_webdriver.py chrome/test/enterprise/e2e/policy/youtube_restrict/youtube_restrict.py +chrome/test/enterprise/e2e/webstore/enterprise_cws/enterprise_cws_webdriver.py chrome/test/fuzzing/atspi_in_process_fuzzer.cc chrome/test/fuzzing/in_process_fuzzer.cc chrome/test/interaction/interactive_browser_test_interactive_uitest.cc +chrome/test/media_router/media_router_gmc_ui_for_test.cc chrome/test/mini_installer/PRESUBMIT.py chrome/test/mini_installer/create_zip.py chrome/test/mini_installer/installer_test.py @@ -2460,6 +2514,7 @@ chrome/updater/policy/dm_policy_manager_unittest.cc chrome/updater/test/service/win/ui.py chrome/updater/test/test_installer/test_installer.wxs.xml chrome/updater/tools/PRESUBMIT.py +chrome/updater/tools/file_inspector/parser.js chrome/updater/tools/keystone_ticketstore_tool.mm chrome/updater/util/util_unittest.cc chrome/updater/util/util_win_unittest.cc @@ -2495,11 +2550,13 @@ chromeos/ash/components/boca/boca_app_client.cc chromeos/ash/components/boca/boca_metrics_manager_unittest.cc chromeos/ash/components/boca/boca_role_util_unittest.cc chromeos/ash/components/boca/boca_session_manager_unittest.cc +chromeos/ash/components/boca/session_api/add_students_request_unittest.cc chromeos/ash/components/boca/session_api/constants.h chromeos/ash/components/boca/session_api/create_session_request_unittest.cc chromeos/ash/components/boca/session_api/get_session_request_unittest.cc chromeos/ash/components/boca/session_api/join_session_request_unittest.cc chromeos/ash/components/boca/session_api/session_parser_unittest.cc +chromeos/ash/components/boca/session_api/update_session_config_request_unittest.cc chromeos/ash/components/boca/session_api/update_session_request_unittest.cc chromeos/ash/components/boca/session_api/update_student_activities_request_unittest.cc chromeos/ash/components/boca/spotlight/spotlight_service_unittest.cc @@ -2573,9 +2630,6 @@ chromeos/ash/experiences/arc/net/passpoint_dialog_view.cc chromeos/ash/experiences/arc/session/arc_upgrade_params.h chromeos/ash/experiences/arc/session/serial_number_util_unittest.cc chromeos/ash/experiences/arc/volume_mounter/arc_volume_mounter_bridge_unittest.cc -chromeos/ash/services/assistant/assistant_manager_service_impl.cc -chromeos/ash/services/assistant/service.cc -chromeos/ash/services/assistant/service_unittest.cc chromeos/ash/services/device_sync/cryptauth_api_call_flow_unittest.cc chromeos/ash/services/device_sync/cryptauth_client_impl.cc chromeos/ash/services/device_sync/cryptauth_client_impl_unittest.cc @@ -2586,7 +2640,6 @@ chromeos/ash/services/device_sync/remote_device_provider_impl_unittest.cc chromeos/ash/services/device_sync/remote_device_v2_loader_impl_unittest.cc chromeos/ash/services/device_sync/switches.cc chromeos/ash/services/ime/input_method_user_data_service_impl_unittest.cc -chromeos/ash/services/ime/public/mojom/mojom_traits.cc chromeos/ash/services/libassistant/public/cpp/assistant_suggestion.h chromeos/ash/services/quick_pair/fast_pair_data_parser.cc chromeos/ash/services/quick_pair/fast_pair_decryption.cc @@ -2650,6 +2703,7 @@ components/autofill/core/browser/data_model/addresses/autofill_profile_unittest. components/autofill/core/browser/form_import/form_data_importer_unittest.cc components/autofill/core/browser/form_structure_unittest.cc components/autofill/core/browser/foundations/browser_autofill_manager_unittest.cc +components/autofill/core/browser/foundations/test_autofill_client.h components/autofill/core/browser/metrics/autofill_metrics_test_base.cc components/autofill/core/browser/metrics/autofill_metrics_unittest.cc components/autofill/core/browser/metrics/form_interactions_ukm_logger.cc @@ -2668,12 +2722,15 @@ components/autofill/core/browser/payments/credit_card_risk_based_authenticator_u components/autofill/core/browser/payments/credit_card_save_manager_unittest.cc components/autofill/core/browser/payments/full_card_request_unittest.cc components/autofill/core/browser/payments/multiple_request_payments_network_interface_base.cc +components/autofill/core/browser/payments/payments_access_token_fetcher.cc +components/autofill/core/browser/payments/payments_access_token_fetcher_unittest.cc components/autofill/core/browser/payments/payments_network_interface_base.cc components/autofill/core/browser/payments/payments_network_interface_test_base.cc components/autofill/core/browser/payments/payments_network_interface_unittest.cc components/autofill/core/browser/payments/payments_requests/unmask_card_request_unittest.cc components/autofill/core/browser/payments/payments_service_url.cc components/autofill/core/browser/payments/payments_service_url_unittest.cc +components/autofill/core/browser/permissions/autofill_ai/autofill_ai_permission_utils_unittest.cc components/autofill/core/browser/strike_databases/autofill_ai/autofill_ai_save_strike_database_by_host_unittest.cc components/autofill/core/browser/suggestions/addresses/address_suggestion_generator_unittest.cc components/autofill/core/browser/test_utils/autofill_test_utils.cc @@ -2687,6 +2744,7 @@ components/autofill/core/browser/webdata/payments/autofill_wallet_sync_bridge_un components/autofill/core/browser/webdata/payments/autofill_wallet_usage_data_sync_bridge_unittest.cc components/autofill/core/browser/webdata/payments/payments_autofill_table.h components/autofill/core/browser/webdata/payments/payments_sync_bridge_util_unittest.cc +components/autofill/core/browser/webdata/valuables/valuables_table_unittest.cc components/autofill/core/common/autofill_features.cc components/autofill/core/common/form_data_fuzzed_producer.h components/autofill_payments_strings.grdp @@ -2713,6 +2771,7 @@ components/browser_ui/strings/android/site_settings.grdp components/browsing_data/content/browsing_data_helper_unittest.cc components/browsing_data/content/cookie_helper_unittest.cc components/browsing_data/content/local_storage_helper_browsertest.cc +components/browsing_data/core/browsing_data_utils_unittest.cc components/browsing_data/core/counters/history_counter.cc components/browsing_data/core/history_notice_utils.cc components/browsing_data_strings.grdp @@ -2721,6 +2780,7 @@ components/browsing_topics/annotator_impl_unittest.cc components/captive_portal/content/captive_portal_service.h components/captive_portal/content/captive_portal_tab_helper.h components/captive_portal/core/captive_portal_detector.cc +components/cdm/common/playready_cdm_common.h components/certificate_transparency/chrome_require_ct_delegate.h components/certificate_transparency/chrome_require_ct_delegate_unittest.cc components/certificate_transparency/data/log_list.json @@ -2739,8 +2799,6 @@ components/commerce/core/compare/cluster_server_proxy.cc components/commerce/core/compare/cluster_server_proxy_unittest.cc components/commerce/core/compare/product_specifications_server_proxy.cc components/commerce/core/heuristics/resources/cart_domain_cart_url_regex.json -components/commerce/core/parcel/parcels_server_proxy.cc -components/commerce/core/parcel/parcels_server_proxy_unittest.cc components/commerce/core/subscriptions/subscriptions_manager_unittest.cc components/commerce/core/subscriptions/subscriptions_server_proxy.cc components/commerce/core/subscriptions/subscriptions_server_proxy_unittest.cc @@ -2771,17 +2829,16 @@ components/crash/core/common/crash_key.h components/cronet/PRESUBMIT.py components/cronet/android/test/javaperftests/AndroidManifest.xml components/cronet/android/test/javatests/AndroidManifest.xml -components/cronet/gn2bp/PRESUBMIT.py components/cronet/gn2bp/gen_android_bp.py components/cronet/gn2bp/gn_utils.py components/cronet/gn2bp/run_gn2bp.py components/cronet/license/license_utils.py -components/cronet/license/tests/license_converter_test.py components/cronet/native/cronet.idl components/cronet/native/perftest/perf_test.cc components/cronet/tools/cr_cronet.py components/cronet/tools/utils.py components/custom_handlers/protocol_handler_registry_unittest.cc +components/data_sharing/internal/android/data_sharing_service_android.cc components/data_sharing/internal/data_sharing_service_impl_unittest.cc components/data_sharing/internal/group_data_proto_utils_unittest.cc components/data_sharing/internal/preview_server_proxy.cc @@ -2798,6 +2855,9 @@ components/desks_storage/core/desk_template_semantics_unittests.cc components/desks_storage/core/desk_test_util.h components/desks_storage/core/desk_test_util_unittests.cc components/desks_storage/core/local_desk_data_manager_unittests.cc +components/device_signals/core/browser/browser_utils.cc +components/device_signals/core/browser/os_signals_collector_unittest.cc +components/device_signals/core/common/win/platform_utils_win.cc components/device_signals/core/common/win/win_types.h components/device_signals/core/system_signals/win/wsc_client.h components/dom_distiller/content/browser/distiller_page_web_contents_browsertest.cc @@ -2861,7 +2921,7 @@ components/feedback/redaction_tool/url_parse.h components/fingerprinting_protection_filter/browser/fingerprinting_protection_web_contents_helper.cc components/fingerprinting_protection_filter/common/fingerprinting_protection_breakage_exception_unittest.cc components/fingerprinting_protection_filter/common/fingerprinting_protection_filter_constants.h -components/fingerprinting_protection_filter/interventions/browser/interventions_web_contents_helper_unittest.cc +components/fullscreen_control_strings.grdp components/gcm_driver/gcm_account_mapper.cc components/gcm_driver/gcm_account_mapper_unittest.cc components/gcm_driver/gcm_client_impl.cc @@ -2923,11 +2983,13 @@ components/input/render_widget_host_input_event_router.cc components/input/render_widget_host_input_event_router.h components/input/render_widget_host_view_input.h components/input/touch_action_filter.h +components/input/utils.cc components/invalidation/impl/fcm_invalidation_service_unittest.cc components/invalidation/impl/per_user_topic_subscription_manager.cc components/invalidation/impl/per_user_topic_subscription_manager_unittest.cc components/ip_protection/common/ip_protection_config_http.cc components/ip_protection/common/ip_protection_probabilistic_reveal_token_direct_fetcher.cc +components/ip_protection/common/ip_protection_probabilistic_reveal_token_direct_fetcher_unittest.cc components/ip_protection/common/ip_protection_proxy_config_direct_fetcher.cc components/ip_protection/common/ip_protection_token_manager_impl.cc components/ip_protection/common/masked_domain_list_manager_unittest.cc @@ -2954,6 +3016,7 @@ components/manta/orca_provider_unittest.cc components/manta/scanner_provider.cc components/manta/scanner_provider.h components/manta/scanner_provider_unittest.cc +components/manta/walrus_provider.cc components/media_router/browser/android/flinging_controller_bridge.cc components/media_router/browser/media_router_dialog_controller_unittest.cc components/media_router/browser/media_router_metrics_unittest.cc @@ -2973,6 +3036,7 @@ components/metrics/metrics_state_manager.h components/metrics/metrics_state_manager_unittest.cc components/metrics/net/net_metrics_log_uploader.cc components/metrics/persistent_histograms.cc +components/metrics/reporting_service.cc components/metrics/server_urls.cc components/metrics/server_urls.grd components/mirroring/service/mirror_settings.h @@ -3041,6 +3105,7 @@ components/omnibox/browser/in_memory_url_index_types_unittest.cc components/omnibox/browser/in_memory_url_index_unittest.cc components/omnibox/browser/keyword_provider_unittest.cc components/omnibox/browser/location_bar_model_impl_unittest.cc +components/omnibox/browser/most_visited_sites_provider.cc components/omnibox/browser/most_visited_sites_provider_unittest.cc components/omnibox/browser/omnibox_edit_model.cc components/omnibox/browser/omnibox_edit_model.h @@ -3051,6 +3116,7 @@ components/omnibox/browser/omnibox_view_unittest.cc components/omnibox/browser/on_device_head_provider_unittest.cc components/omnibox/browser/on_device_tail_model_service_unittest.cc components/omnibox/browser/open_tab_provider_unittest.cc +components/omnibox/browser/recently_closed_tabs_provider.cc components/omnibox/browser/remote_suggestions_service_unittest.cc components/omnibox/browser/scored_history_match.cc components/omnibox/browser/scored_history_match_unittest.cc @@ -3062,6 +3128,7 @@ components/omnibox/browser/shortcuts_backend_unittest.cc components/omnibox/browser/shortcuts_database_unittest.cc components/omnibox/browser/shortcuts_provider_unittest.cc components/omnibox/browser/suggestion_group_unittest.cc +components/omnibox/browser/tab_group_provider_unittest.cc components/omnibox/browser/titled_url_match_utils.cc components/omnibox/browser/titled_url_match_utils_unittest.cc components/omnibox/browser/zero_suggest_cache_service_unittest.cc @@ -3070,6 +3137,7 @@ components/omnibox/browser/zero_suggest_verbatim_match_provider_unittest.cc components/omnibox/resources/omnibox_pedal_synonyms.grd components/omnibox_pedal_ui_strings.grdp components/omnibox_strings.grdp +components/optimization_guide/content/browser/page_context_eligibility_unittest.cc components/optimization_guide/core/hints_component_util_unittest.cc components/optimization_guide/core/hints_manager_unittest.cc components/optimization_guide/core/model_execution/json_response_parser_unittest.cc @@ -3113,11 +3181,11 @@ components/page_load_metrics/browser/observers/use_counter_page_load_metrics_obs components/page_load_metrics/browser/observers/zstd_page_load_metrics_observer_unittest.cc components/page_load_metrics/browser/page_load_metrics_observer_interface.h components/page_load_metrics/browser/page_load_metrics_util.cc +components/page_load_metrics/browser/page_load_metrics_util.h components/page_load_metrics/browser/page_load_tracker.h components/page_load_metrics/google/browser/google_url_util.cc components/page_load_metrics/google/browser/google_url_util.h components/page_load_metrics/google/browser/google_url_util_unittest.cc -components/page_load_metrics/google/browser/gws_page_load_metrics_observer.cc components/page_load_metrics/renderer/fake_page_timing_sender.h components/paint_preview/browser/file_manager_unittest.cc components/paint_preview/browser/paint_preview_base_service_unittest.cc @@ -3131,7 +3199,6 @@ components/paint_preview/renderer/paint_preview_recorder_utils_unittest.cc components/password_manager/content/browser/content_password_manager_driver_unittest.cc components/password_manager/core/browser/credential_manager_impl_unittest.cc components/password_manager/core/browser/credential_manager_logger_unittest.cc -components/password_manager/core/browser/credential_manager_pending_request_task.cc components/password_manager/core/browser/credential_manager_pending_request_task_unittest.cc components/password_manager/core/browser/credentials_cleaner_unittest.cc components/password_manager/core/browser/export/password_manager_exporter_unittest.cc @@ -3157,6 +3224,7 @@ components/password_manager/core/browser/leak_detection_dialog_utils.cc components/password_manager/core/browser/old_google_credentials_cleaner.cc components/password_manager/core/browser/old_google_credentials_cleaner.h components/password_manager/core/browser/old_google_credentials_cleaner_unittest.cc +components/password_manager/core/browser/one_time_passwords/otp_form_manager_unittest.cc components/password_manager/core/browser/os_crypt_async_migrator.h components/password_manager/core/browser/password_feature_manager_impl_unittest.cc components/password_manager/core/browser/password_form_filling_unittest.cc @@ -3227,7 +3295,6 @@ components/payments/content/utility/payment_manifest_parser.h components/payments/content/utility/payment_method_manifest_parser_fuzzer.cc components/payments/core/error_strings.cc components/payments/core/error_strings.h -components/payments/core/journey_logger.cc components/payments/core/journey_logger_unittest.cc components/payments/core/method_strings.cc components/payments/core/method_strings.h @@ -3236,6 +3303,7 @@ components/payments/core/url_util.h components/payments/core/url_util_unittest.cc components/payments_strings.grdp components/pdf/renderer/pdf_accessibility_tree_browsertest.cc +components/performance_manager/decorators/frame_input_state_decorator.cc components/performance_manager/graph/frame_node_impl.cc components/performance_manager/public/graph/frame_node.h components/performance_manager/public/graph/process_node.h @@ -3325,11 +3393,8 @@ components/policy/test/data/pref_mapping/DnsOverHttpsIncludedDomains.json components/policy/test/data/pref_mapping/ExtensionInstallForcelist.json components/policy/test/data/pref_mapping/ExtensionOAuthRedirectUrls.json components/policy/test/data/pref_mapping/ExtensionSettings.json -components/policy/test/data/pref_mapping/FileSystemReadBlockedForUrls.json -components/policy/test/data/pref_mapping/FileSystemWriteBlockedForUrls.json components/policy/test/data/pref_mapping/FloatingSsoDomainBlocklist.json components/policy/test/data/pref_mapping/FloatingSsoDomainBlocklistExceptions.json -components/policy/test/data/pref_mapping/GetDisplayMediaSetSelectAllScreensAllowedForUrls.json components/policy/test/data/pref_mapping/HomepageLocation.json components/policy/test/data/pref_mapping/ImagesAllowedForUrls.json components/policy/test/data/pref_mapping/ImagesBlockedForUrls.json @@ -3417,7 +3482,6 @@ components/printing/renderer/print_render_frame_helper.cc components/printing/test/print_render_frame_helper_browsertest.cc components/privacy_sandbox/privacy_sandbox_settings_impl.cc components/privacy_sandbox/privacy_sandbox_settings_impl_unittest.cc -components/privacy_sandbox/privacy_sandbox_survey_service_unittest.cc components/privacy_sandbox_chrome_strings.grdp components/privacy_sandbox_strings.grd components/protocol_handler_strings.grdp @@ -3503,6 +3567,7 @@ components/safe_browsing/core/browser/hashprefix_realtime/ohttp_key_service.cc components/safe_browsing/core/browser/hashprefix_realtime/ohttp_key_service_unittest.cc components/safe_browsing/core/browser/password_protection/password_protection_service_base.cc components/safe_browsing/core/browser/ping_manager_unittest.cc +components/safe_browsing/core/browser/realtime/chrome_enterprise_url_lookup_service.cc components/safe_browsing/core/browser/realtime/url_lookup_service.cc components/safe_browsing/core/browser/realtime/url_lookup_service_unittest.cc components/safe_browsing/core/browser/sync/sync_utils_unittest.cc @@ -3510,6 +3575,7 @@ components/safe_browsing/core/browser/tailored_security_service/tailored_securit components/safe_browsing/core/browser/tailored_security_service/tailored_security_service_unittest.cc components/safe_browsing/core/browser/verdict_cache_manager.cc components/safe_browsing/core/browser/verdict_cache_manager_unittest.cc +components/safe_browsing/core/common/features.h components/safe_browsing/core/common/scheme_logger_unittest.cc components/safe_search_api/safe_search/safe_search_url_checker_client.cc components/safe_search_api/safe_search/safe_search_url_checker_client_unittest.cc @@ -3519,11 +3585,12 @@ components/safety_check/update_check_helper.h components/safety_check/url_constants.cc components/saved_tab_groups/internal/android/tab_group_sync_service_android_unittest.cc components/saved_tab_groups/internal/saved_tab_group_sync_bridge_unittest.cc +components/saved_tab_groups/internal/shared_tab_group_account_data_sync_bridge_unittest.cc components/saved_tab_groups/internal/shared_tab_group_data_sync_bridge_unittest.cc -components/saved_tab_groups/internal/shared_tab_group_precondition_checker.cc components/saved_tab_groups/internal/tab_group_sync_bridge_mediator_unittest.cc components/saved_tab_groups/internal/tab_group_sync_service_unittest.cc components/saved_tab_groups/public/saved_tab_group_unittest.cc +components/saved_tab_groups/public/utils_unittest.cc components/saved_tab_groups/test_support/saved_tab_group_test_utils.cc components/search_engines/PRESUBMIT.py components/search_engines/android/template_url_service_android_unittest.cc @@ -3546,7 +3613,6 @@ components/search_provider_logos/logo_service_impl_unittest.cc components/search_provider_logos/switches.cc components/security_interstitials/content/captive_portal_helper_win.cc components/security_interstitials/content/https_only_mode_blocking_page.cc -components/security_interstitials/content/ssl_blocking_page.h components/security_interstitials/core/browser/resources/interstitial_large.js components/security_interstitials/core/controller_client.cc components/security_interstitials/core/safe_browsing_loud_error_ui.cc @@ -3586,7 +3652,6 @@ components/services/heap_profiling/json_exporter.cc components/services/paint_preview_compositor/paint_preview_compositor_impl_unittest.cc components/services/quarantine/quarantine_mac.mm components/services/quarantine/quarantine_win.cc -components/services/storage/partition_impl_unittest.cc components/services/storage/public/mojom/buckets/bucket_info_mojom_traits_unittest.cc components/services/storage/public/mojom/buckets/bucket_locator_mojom_traits_unittest.cc components/services/storage/shared_storage/async_shared_storage_database_impl_unittest.cc @@ -3630,6 +3695,7 @@ components/signin/public/identity_manager/access_token_fetcher_unittest.cc components/signin/public/identity_manager/account_info.h components/signin/public/identity_manager/account_managed_status_finder.cc components/signin/public/identity_manager/account_managed_status_finder.h +components/signin/public/identity_manager/account_managed_status_finder_outcome.h components/signin/public/identity_manager/account_managed_status_finder_unittest.cc components/signin/public/identity_manager/accounts_cookie_mutator_unittest.cc components/signin/public/identity_manager/diagnostics_provider_unittest.cc @@ -3668,6 +3734,7 @@ components/supervised_user/core/browser/proto_fetcher_status.h components/supervised_user/core/browser/proto_fetcher_unittest.cc components/supervised_user/core/browser/supervised_user_service_unittest.cc components/supervised_user/core/browser/supervised_user_settings_service_unittest.cc +components/supervised_user/core/browser/supervised_user_sync_data_fake.h components/supervised_user/core/browser/supervised_user_url_filter.cc components/supervised_user/core/browser/supervised_user_url_filter.h components/supervised_user/core/browser/supervised_user_url_filter_unittest.cc @@ -3683,6 +3750,7 @@ components/sync/base/data_type.cc components/sync/base/sync_util.h components/sync/engine/bookmark_update_preprocessing.cc components/sync/engine/net/http_bridge_unittest.cc +components/sync/model/data_type_sync_bridge.h components/sync/model/syncable_service.h components/sync/protocol/proto_value_conversions_unittest.cc components/sync/service/local_data_description.h @@ -3700,6 +3768,7 @@ components/sync_sessions/session_store_unittest.cc components/sync_sessions/session_sync_bridge.h components/sync_sessions/synced_session_unittest.cc components/system_cpu/cpu_probe_win.cc +components/themes/ntp_background_service.cc components/tpcd/enterprise_reporting/enterprise_reporting_tab_helper_unittest.cc components/tpcd/metadata/browser/parser_unittest.cc components/tracing/common/etw_consumer_win.cc @@ -3713,12 +3782,14 @@ components/translate/core/browser/translate_script.cc components/translate/core/common/translate_util.cc components/translate_strings.grdp components/trusted_vault/command_line_switches.cc +components/trusted_vault/recovery_key_store_certificate.cc +components/trusted_vault/recovery_key_store_certificate.h components/trusted_vault/recovery_key_store_connection_impl.cc components/trusted_vault/recovery_key_store_connection_unittest.cc +components/trusted_vault/standalone_trusted_vault_server_constants.h components/trusted_vault/trusted_vault_access_token_fetcher_frontend.cc components/trusted_vault/trusted_vault_access_token_fetcher_frontend_unittest.cc components/trusted_vault/trusted_vault_histograms.h -components/trusted_vault/trusted_vault_server_constants.h components/ui_devtools/agent_util.cc components/ukm/observers/ukm_consent_state_observer_unittest.cc components/ukm/ukm_service_unittest.cc @@ -3784,8 +3855,10 @@ components/viz/common/switches.cc components/viz/service/display/output_surface.h components/viz/service/display/overlay_candidate.h components/viz/service/display/overlay_processor_using_strategy.cc +components/viz/service/display/renderer_pixeltest.cc components/viz/service/display_embedder/skia_output_surface_impl_on_gpu.cc components/viz/service/display_embedder/skia_render_copy_results.cc +components/viz/service/input/input_manager.cc components/webapps/browser/android/add_to_homescreen_data_fetcher_unittest.cc components/webapps/browser/android/java/res/values/dimens.xml components/webapps/browser/android/shortcut_info.cc @@ -3809,6 +3882,7 @@ content/browser/accessibility/accessibility_action_browsertest.cc content/browser/accessibility/accessibility_auralinux_browsertest.cc content/browser/accessibility/browser_accessibility_manager_android.cc content/browser/accessibility/hit_testing_browsertest.cc +content/browser/android/battery_metrics.h content/browser/android/nfc_host_unittest.cc content/browser/attribution_reporting/attribution_os_level_manager_android.cc content/browser/attribution_reporting/attribution_suitable_context_unittest.cc @@ -3864,8 +3938,8 @@ content/browser/idle/idle_manager_unittest.cc content/browser/indexed_db/indexed_db_context_impl.h content/browser/indexed_db/indexed_db_context_unittest.cc content/browser/indexed_db/indexed_db_reporting.cc -content/browser/indexed_db/instance/backing_store.cc -content/browser/indexed_db/instance/backing_store_unittest.cc +content/browser/indexed_db/instance/leveldb/backing_store.cc +content/browser/indexed_db/instance/leveldb/backing_store_unittest.cc content/browser/installedapp/fetch_related_win_apps_task.cc content/browser/installedapp/native_win_app_fetcher_impl.cc content/browser/interest_group/ad_auction_headers_util_unittest.cc @@ -3873,7 +3947,6 @@ content/browser/interest_group/ad_auction_url_loader_interceptor_unittest.cc content/browser/interest_group/auction_runner_unittest.cc content/browser/interest_group/bidding_and_auction_server_key_fetcher.cc content/browser/interest_group/bidding_and_auction_server_key_fetcher.h -content/browser/interest_group/interest_group_browsertest.cc content/browser/interest_group/interest_group_update_manager.cc content/browser/loader/file_url_loader_factory_unittest.cc content/browser/loader/keep_alive_url_loader.cc @@ -3893,20 +3966,25 @@ content/browser/network/trust_token_browsertest.cc content/browser/notifications/notification_database_unittest.cc content/browser/payments/payment_manager_unittest.cc content/browser/permissions/embedded_permission_control_checker_unittest.cc -content/browser/permissions/permission_controller_impl.cc content/browser/permissions/permission_controller_impl_unittest.cc content/browser/permissions/permission_service_context_unittest.cc content/browser/plugin_service_impl_browsertest.cc +content/browser/preloading/prefetch/contamination_delay_browsertest.cc content/browser/preloading/prefetch/prefetch_container.cc content/browser/preloading/prefetch/prefetch_container.h content/browser/preloading/prefetch/prefetch_container_unittest.cc +content/browser/preloading/prefetch/prefetch_features.h content/browser/preloading/prefetch/prefetch_match_resolver.cc +content/browser/preloading/prefetch/prefetch_params.cc +content/browser/preloading/prefetch/prefetch_scheduler.cc +content/browser/preloading/prefetch/prefetch_scheduler.h content/browser/preloading/prefetch/prefetch_service.cc content/browser/preloading/prefetch/prefetch_status.h -content/browser/preloading/prefetch/prefetch_url_loader_interceptor.cc +content/browser/preloading/prefetch/prefetch_streaming_url_loader_common_types.h content/browser/preloading/preloading_decider.cc content/browser/preloading/preloading_decider_unittest.cc content/browser/preloading/prerender/prerender_browsertest.cc +content/browser/preloading/prerender/prerender_features.h content/browser/preloading/prerender/prerender_final_status.h content/browser/preloading/prerender/prerender_host_registry.cc content/browser/preloading/prerenderer_impl_browsertest.cc @@ -4173,7 +4251,6 @@ crypto/rsa_private_key_unittest.cc crypto/secure_hash.h crypto/secure_util.h crypto/sha2.h -crypto/symmetric_key.h crypto/unexportable_key.h crypto/unexportable_key_unittest.cc crypto/unexportable_key_win.cc @@ -4211,6 +4288,7 @@ docs/website/scripts/fetch_lobs.py docs/website/scripts/fetch_node_modules.py docs/website/site/Home/google-ssl.xml docs/website/site/administrators/err_ssl_weak_server_ephemeral_dh_key/redirect-dh.xml +docs/website/site/chromium-os/developer-library/reference/linux-constants/syscalls/syscalls.py docs/website/site/chromium-os/developer-library/reference/upstart-cookbook/index.html docs/website/site/developers/design-documents/accessibility/tracker/CSUN_Accessibility_in_the_Cloud.txt docs/website/site/developers/design-documents/accessibility/tracker/CSUN_Improving_Access_To_Web_Platforms_Content_and_Applications.txt @@ -4316,7 +4394,6 @@ extensions/strings/extensions_strings.grd extensions/test/extension_background_page_waiter.h fuchsia_web/webengine/browser/frame_impl_browsertest.cc fuchsia_web/webengine/test/data/play_video.html -gin/gin_features.cc gin/thread_isolation.cc gin/v8_initializer.cc google_apis/calendar/calendar_api_requests.cc @@ -4361,6 +4438,7 @@ google_apis/gaia/google_service_auth_error.h google_apis/gaia/oauth2_access_token_fetcher_impl_unittest.cc google_apis/gaia/oauth2_access_token_manager.cc google_apis/gaia/oauth2_api_call_flow_unittest.cc +google_apis/gaia/oauth2_mint_token_flow_unittest.cc google_apis/gaia/oauth_multilogin_result_unittest.cc google_apis/gcm/base/mcs_util.cc google_apis/gcm/engine/account_mapping_unittest.cc @@ -4452,7 +4530,6 @@ media/audio/win/core_audio_util_win.cc media/audio/win/core_audio_util_win.h media/base/android/media_codec_bridge_impl.cc media/base/android/media_drm_bridge.cc -media/base/android/media_player_bridge.h media/base/container_names.cc media/base/format_utils.cc media/base/key_systems_impl.cc @@ -4525,7 +4602,6 @@ media/gpu/v4l2/mt21/mt21_util.h media/gpu/v4l2/test/av1_decoder.cc media/gpu/v4l2/test/video_decoder.cc media/gpu/v4l2/v4l2_stateful_video_decoder.cc -media/gpu/v4l2/v4l2_unittest.cc media/gpu/v4l2/v4l2_video_decoder_delegate_av1.cc media/gpu/vaapi/test/av1_decoder.cc media/gpu/vaapi/test/vp8_decoder.cc @@ -4537,17 +4613,17 @@ media/gpu/vaapi/vaapi_webp_decoder_unittest.cc media/gpu/windows/d3d11_video_decoder_wrapper.cc media/gpu/windows/d3d12_copy_command_list_wrapper.cc media/gpu/windows/d3d12_video_encode_h264_delegate.cc +media/gpu/windows/d3d12_video_helpers.cc +media/gpu/windows/d3d12_video_helpers.h media/gpu/windows/media_foundation_video_encode_accelerator_win.cc media/gpu/windows/mf_audio_encoder.cc media/gpu/windows/mf_audio_encoder.h media/gpu/windows/supported_profile_helpers.cc media/mojo/clients/mojo_gpu_video_accelerator_factories.cc media/mojo/mojom/stable/native_pixmap_handle_mojom_traits.cc -media/mojo/mojom/stable/stable_video_decoder_types_mojom_traits.cc media/mojo/services/media_foundation_service.cc media/mojo/services/media_metrics_provider_unittest.cc media/mojo/services/mojo_video_encoder_metrics_provider_service_unittest.cc -media/mojo/services/stable_video_decoder_service.cc media/mojo/services/video_decode_stats_recorder_unittest.cc media/mojo/services/watch_time_recorder_unittest.cc media/parsers/webp_parser.cc @@ -4584,6 +4660,7 @@ net/android/unittest_support/AndroidManifest.xml net/base/address_tracker_linux.cc net/base/apple/url_conversions_unittest.mm net/base/data_url.cc +net/base/features.cc net/base/file_stream_context.h net/base/filename_util.cc net/base/filename_util_internal.cc @@ -4606,14 +4683,10 @@ net/base/scheme_host_port_matcher_rule_unittest.cc net/base/scheme_host_port_matcher_unittest.cc net/base/url_util.cc net/base/url_util_unittest.cc -net/cert/cert_verifier.h -net/cert/cert_verify_proc.cc -net/cert/cert_verify_proc.h net/cert/cert_verify_proc_unittest.cc net/cert/internal/trust_store_win.cc net/cert/nss_cert_database.cc net/cert/nss_cert_database_unittest.cc -net/cert/symantec_certs.h net/cert/x509_certificate.cc net/cert/x509_certificate_unittest.cc net/cert/x509_util_nss_unittest.cc @@ -4633,7 +4706,9 @@ net/data/parse_certificate_unittest/v3_certificate_template.txt net/device_bound_sessions/registration_fetcher.cc net/device_bound_sessions/registration_fetcher_param.cc net/device_bound_sessions/session_json_utils.cc +net/device_bound_sessions/session_unittest.cc net/device_bound_sessions/unexportable_key_service_factory.cc +net/disk_cache/blockfile/file_ios.cc net/disk_cache/disk_cache.h net/disk_cache/simple/simple_backend_impl.h net/disk_cache/simple/simple_file_enumerator.h @@ -4751,11 +4826,14 @@ net/socket/socket_test_util.cc net/socket/socks5_client_socket_unittest.cc net/socket/socks_connect_job_unittest.cc net/socket/ssl_client_socket_impl.cc +net/socket/ssl_client_socket_unittest.cc +net/socket/ssl_server_socket_impl.cc net/socket/tcp_socket_io_completion_port_win.cc net/socket/tcp_socket_win.cc net/socket/transport_client_socket_pool_unittest.cc net/socket/udp_socket_posix.h net/socket/udp_socket_unittest.cc +net/socket/udp_socket_win.cc net/socket/udp_socket_win.h net/socket/websocket_transport_client_socket_pool_unittest.cc net/spdy/spdy_http_stream.cc @@ -4872,6 +4950,7 @@ remoting/base/compute_engine_service_client.cc remoting/base/compute_engine_service_client.h remoting/base/corp_auth_util.cc remoting/base/crash/crashpad_linux.cc +remoting/base/crash/crashpad_win.cc remoting/base/instance_identity_token_getter_unittest.cc remoting/base/is_google_email.cc remoting/base/service_urls.cc @@ -4944,7 +5023,6 @@ sandbox/linux/system_headers/linux_prctl.h sandbox/policy/features.cc sandbox/policy/linux/sandbox_linux.h sandbox/policy/sandbox.cc -sandbox/policy/win/sandbox_warmup.cc sandbox/policy/win/sandbox_win.cc sandbox/win/src/interception.cc sandbox/win/src/interception.h @@ -4959,6 +5037,8 @@ sandbox/win/src/sandbox_nt_util.cc sandbox/win/src/sandbox_nt_util.h sandbox/win/src/sandbox_policy.h sandbox/win/src/security_level.h +sandbox/win/src/startup_information_helper.cc +sandbox/win/src/win_utils.cc services/BUILD.gn services/accessibility/features/javascript/event.js services/device/generic_sensor/platform_sensor_and_provider_unittest_win.cc @@ -4987,6 +5067,7 @@ services/network/host_resolver_unittest.cc services/network/http_cache_data_counter_unittest.cc services/network/http_cache_data_remover_unittest.cc services/network/mojo_host_resolver_impl_unittest.cc +services/network/network_context.h services/network/network_context_unittest.cc services/network/orb/orb_impl.cc services/network/orb/orb_impl_unittest.cc @@ -4997,6 +5078,8 @@ services/network/public/cpp/cors/cors_error_status.h services/network/public/cpp/cors/cors_unittest.cc services/network/public/cpp/cors/origin_access_entry_unittest.cc services/network/public/cpp/cors/origin_access_list_unittest.cc +services/network/public/cpp/features.cc +services/network/public/cpp/features.h services/network/public/cpp/is_potentially_trustworthy.cc services/network/public/cpp/network_switches.cc services/network/public/cpp/permissions_policy/origin_with_possible_wildcards_unittest.cc @@ -5004,11 +5087,13 @@ services/network/public/cpp/resource_request.h services/network/public/cpp/transferable_socket.cc services/network/public/mojom/permissions_policy/PRESUBMIT.py services/network/sct_auditing/sct_auditing_reporter.cc +services/network/shared_resource_checker.cc +services/network/shared_resource_checker.h services/network/trust_tokens/trust_token_client_data_canonicalization.h services/network/trust_tokens/trust_token_key_commitment_parser.h services/network/trust_tokens/trust_token_key_commitments.h services/network/udp_socket_unittest.cc -services/network/url_loader.cc +services/network/url_loader_util.cc services/network/websocket_throttler.h services/preferences/tracked/device_id_unittest.cc services/proxy_resolver/host_resolver_mojo.cc @@ -5028,6 +5113,7 @@ services/shape_detection/barcode_detection_impl_barhopper_unittest.cc services/shape_detection/barcode_detection_impl_mac_unittest.mm services/shape_detection/text_detection_impl_mac_unittest.mm services/shape_detection/text_detection_impl_win_unittest.cc +services/test/data/decoder/google.txt services/tracing/perfetto/privacy_filtered_fields-inl.h services/tracing/public/cpp/perfetto/java_heap_profiler/hprof_parser_android.h services/tracing/public/cpp/stack_sampling/tracing_sampler_profiler.h @@ -5036,6 +5122,7 @@ services/video_capture/test/fake_video_capture_device_unittest.cc services/viz/public/cpp/gpu/gpu.cc services/webnn/dml/adapter.cc services/webnn/dml/adapter.h +services/webnn/dml/command_recorder.cc services/webnn/dml/context_impl_dml.cc services/webnn/dml/graph_builder_dml.h services/webnn/dml/graph_impl_dml.cc @@ -5049,6 +5136,7 @@ skia/ext/SkMemory_new_handler.cpp skia/ext/skia_utils_ios_unittest.mm skia/rusty_png_feature.h sql/database.cc +sql/vfs_wrapper.cc storage/browser/blob/blob_reader.h storage/browser/file_system/external_mount_points_unittest.cc storage/browser/file_system/file_system_backend.h @@ -5067,9 +5155,10 @@ testing/android/junit/shadows-allowlist.txt testing/android/native_test/java/AndroidManifest.xml.jinja2 testing/buildbot/PRESUBMIT.py testing/buildbot/check.py +testing/buildbot/chromium.perf.json +testing/buildbot/chromium.perf.pinpoint.json testing/buildbot/filters/PRESUBMIT.py testing/buildbot/generate_buildbot_json.py -testing/buildbot/query_optimal_shard_counts.py testing/buildbot/scripts/upload_test_result_artifacts.py testing/chromoting/browser_test_commands_linux.txt testing/chromoting/chromoting_test_driver_commands_linux.txt @@ -5118,6 +5207,7 @@ third_party/abseil-cpp/absl/log/internal/globals.cc third_party/abseil-cpp/absl/random/internal/platform.h third_party/abseil-cpp/absl/status/status.h third_party/abseil-cpp/absl/synchronization/internal/win32_waiter.h +third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_lookup.cc third_party/abseil-cpp/absl/time/time.h third_party/abseil-cpp/conanfile.py third_party/abseil-cpp/generate_def_files.py @@ -5154,45 +5244,18 @@ third_party/afl/src/qemu_mode/patches/afl-qemu-cpu-inl.h third_party/afl/src/test-instr.c third_party/afl/src/types.h third_party/android_build_tools/aapt2/3pp/fetch.py -third_party/android_deps/autorolled/fetch_all_autorolled.py third_party/android_deps/libs/com_android_support_support_annotations/3pp/fetch.py third_party/android_deps/libs/com_android_tools_common/3pp/fetch.py third_party/android_deps/libs/com_android_tools_layoutlib_layoutlib_api/3pp/fetch.py third_party/android_deps/libs/com_android_tools_sdk_common/3pp/fetch.py third_party/android_deps/libs/com_google_android_apps_common_testing_accessibility_framework_accessibility_test_framework/3pp/fetch.py -third_party/android_deps/libs/com_google_android_datatransport_transport_api/3pp/fetch.py -third_party/android_deps/libs/com_google_android_gms_play_services_auth/3pp/fetch.py -third_party/android_deps/libs/com_google_android_gms_play_services_auth_api_phone/3pp/fetch.py -third_party/android_deps/libs/com_google_android_gms_play_services_auth_base/3pp/fetch.py -third_party/android_deps/libs/com_google_android_gms_play_services_auth_blockstore/3pp/fetch.py -third_party/android_deps/libs/com_google_android_gms_play_services_base/3pp/fetch.py -third_party/android_deps/libs/com_google_android_gms_play_services_basement/3pp/fetch.py -third_party/android_deps/libs/com_google_android_gms_play_services_cast/3pp/fetch.py -third_party/android_deps/libs/com_google_android_gms_play_services_cast_framework/3pp/fetch.py -third_party/android_deps/libs/com_google_android_gms_play_services_clearcut/3pp/fetch.py third_party/android_deps/libs/com_google_android_gms_play_services_cloud_messaging/3pp/fetch.py -third_party/android_deps/libs/com_google_android_gms_play_services_fido/3pp/fetch.py -third_party/android_deps/libs/com_google_android_gms_play_services_flags/3pp/fetch.py -third_party/android_deps/libs/com_google_android_gms_play_services_gcm/3pp/fetch.py -third_party/android_deps/libs/com_google_android_gms_play_services_identity_credentials/3pp/fetch.py -third_party/android_deps/libs/com_google_android_gms_play_services_iid/3pp/fetch.py -third_party/android_deps/libs/com_google_android_gms_play_services_instantapps/3pp/fetch.py -third_party/android_deps/libs/com_google_android_gms_play_services_location/3pp/fetch.py -third_party/android_deps/libs/com_google_android_gms_play_services_phenotype/3pp/fetch.py -third_party/android_deps/libs/com_google_android_gms_play_services_stats/3pp/fetch.py -third_party/android_deps/libs/com_google_android_gms_play_services_tasks/3pp/fetch.py -third_party/android_deps/libs/com_google_android_gms_play_services_vision/3pp/fetch.py -third_party/android_deps/libs/com_google_android_gms_play_services_vision_common/3pp/fetch.py -third_party/android_deps/libs/com_google_android_libraries_identity_googleid_googleid/3pp/fetch.py -third_party/android_deps/libs/com_google_android_material_material/3pp/fetch.py -third_party/android_deps/libs/com_google_android_play_core_common/3pp/fetch.py -third_party/android_deps/libs/com_google_android_play_feature_delivery/3pp/fetch.py third_party/android_deps/libs/com_google_ar_impress/3pp/fetch.py third_party/android_deps/libs/com_google_firebase_firebase_annotations/3pp/fetch.py third_party/android_deps/libs/com_google_firebase_firebase_common/3pp/fetch.py +third_party/android_deps/libs/com_google_firebase_firebase_common_ktx/3pp/fetch.py third_party/android_deps/libs/com_google_firebase_firebase_components/3pp/fetch.py -third_party/android_deps/libs/com_google_firebase_firebase_encoders/3pp/fetch.py -third_party/android_deps/libs/com_google_firebase_firebase_encoders_json/3pp/fetch.py +third_party/android_deps/libs/com_google_firebase_firebase_datatransport/3pp/fetch.py third_party/android_deps/libs/com_google_firebase_firebase_iid/3pp/fetch.py third_party/android_deps/libs/com_google_firebase_firebase_iid_interop/3pp/fetch.py third_party/android_deps/libs/com_google_firebase_firebase_installations/3pp/fetch.py @@ -5201,7 +5264,6 @@ third_party/android_deps/libs/com_google_firebase_firebase_measurement_connector third_party/android_deps/libs/com_google_firebase_firebase_messaging/3pp/fetch.py third_party/android_deps/licenses/Android_SDK_License-December_9_2016.txt third_party/android_toolchain/3pp/fetch.py -third_party/androidx/fetch_all_androidx.py third_party/angle/BUILD.gn third_party/angle/PRESUBMIT.py third_party/angle/extensions/ANGLE_base_vertex_base_instance.txt @@ -5249,7 +5311,6 @@ third_party/angle/extensions/EGL_ANGLE_display_semaphore_share_group.txt third_party/angle/extensions/EGL_ANGLE_display_texture_share_group.txt third_party/angle/extensions/EGL_ANGLE_external_context_and_surface.txt third_party/angle/extensions/EGL_ANGLE_feature_control.txt -third_party/angle/extensions/EGL_ANGLE_ggp_stream_descriptor.txt third_party/angle/extensions/EGL_ANGLE_global_fence_sync.txt third_party/angle/extensions/EGL_ANGLE_iosurface_client_buffer.txt third_party/angle/extensions/EGL_ANGLE_keyed_mutex.txt @@ -5264,10 +5325,10 @@ third_party/angle/extensions/EGL_ANGLE_program_cache_control.txt third_party/angle/extensions/EGL_ANGLE_robust_resource_initialization.txt third_party/angle/extensions/EGL_ANGLE_software_display.txt third_party/angle/extensions/EGL_ANGLE_stream_producer_d3d_texture.txt -third_party/angle/extensions/EGL_ANGLE_swap_with_frame_token.txt third_party/angle/extensions/EGL_ANGLE_sync_control_rate.txt third_party/angle/extensions/EGL_ANGLE_vulkan_image.txt third_party/angle/extensions/EGL_ANGLE_wait_until_work_scheduled.txt +third_party/angle/extensions/EGL_ANGLE_webgpu_texture_client_buffer.txt third_party/angle/extensions/EGL_ANGLE_window_fixed_size.txt third_party/angle/extensions/EGL_CHROMIUM_create_context_bind_generates_resource.txt third_party/angle/extensions/EGL_CHROMIUM_sync_control.txt @@ -5312,10 +5373,8 @@ third_party/angle/src/libANGLE/Display.cpp third_party/angle/src/libANGLE/GLES1Renderer.cpp third_party/angle/src/libANGLE/Observer.cpp third_party/angle/src/libANGLE/Observer.h -third_party/angle/src/libANGLE/Surface.h third_party/angle/src/libANGLE/capture/FrameCapture.cpp third_party/angle/src/libANGLE/gen_extensions.py -third_party/angle/src/libANGLE/renderer/SurfaceImpl.h third_party/angle/src/libANGLE/renderer/d3d/IndexDataManager.cpp third_party/angle/src/libANGLE/renderer/d3d/d3d11/Buffer11.cpp third_party/angle/src/libANGLE/renderer/d3d/d3d11/Fence11.cpp @@ -5334,7 +5393,7 @@ third_party/angle/src/libANGLE/renderer/vulkan/FramebufferVk.cpp third_party/angle/src/libANGLE/renderer/vulkan/ImageVk.cpp third_party/angle/src/libANGLE/renderer/vulkan/PersistentCommandPool.cpp third_party/angle/src/libANGLE/renderer/vulkan/ProgramExecutableVk.cpp -third_party/angle/src/libANGLE/renderer/vulkan/SurfaceVk.h +third_party/angle/src/libANGLE/renderer/vulkan/ShaderVk.cpp third_party/angle/src/libANGLE/renderer/vulkan/VkImageImageSiblingVk.cpp third_party/angle/src/libANGLE/renderer/vulkan/android/HardwareBufferImageSiblingVkAndroid.cpp third_party/angle/src/libANGLE/renderer/vulkan/linux/DmaBufImageSiblingVkLinux.cpp @@ -5393,9 +5452,6 @@ third_party/anonymous_tokens/src/anonymous_tokens/cpp/shared/proto_utils.h third_party/ashmem/ashmem-dev.c third_party/axe-core/axe.js third_party/axe-core/axe.min.js -third_party/beto-core/src/nearby/presence/ldt_np_adv_ffi/c/fuzz/ldt_fuzzer.cc -third_party/beto-core/src/nearby/presence/np_cpp_ffi/shared/shared_test_util.h -third_party/bidimapper/mapper.js third_party/blink/PRESUBMIT.py third_party/blink/common/PRESUBMIT.py third_party/blink/common/features.cc @@ -5434,6 +5490,7 @@ third_party/blink/renderer/build/scripts/core/style/make_computed_style_base.py third_party/blink/renderer/controller/memory_usage_monitor_posix.cc third_party/blink/renderer/core/BUILD.gn third_party/blink/renderer/core/animation/sampled_effect.cc +third_party/blink/renderer/core/canvas_interventions/canvas_interventions_helper.cc third_party/blink/renderer/core/clipboard/data_transfer.h third_party/blink/renderer/core/css/css_computed_style_declaration.cc third_party/blink/renderer/core/css/css_font_face_rule.idl @@ -5510,6 +5567,7 @@ third_party/blink/renderer/core/dom/transform_source.h third_party/blink/renderer/core/dom/tree_walker.cc third_party/blink/renderer/core/dom/tree_walker.h third_party/blink/renderer/core/dom/tree_walker.idl +third_party/blink/renderer/core/editing/commands/delete_selection_command.cc third_party/blink/renderer/core/editing/commands/editor_command.cc third_party/blink/renderer/core/editing/commands/smart_replace_icu.cc third_party/blink/renderer/core/editing/commands/style_commands.cc @@ -5576,7 +5634,6 @@ third_party/blink/renderer/core/frame/web_frame_widget_impl.cc third_party/blink/renderer/core/frame/web_local_frame_impl.cc third_party/blink/renderer/core/frame/web_remote_frame_impl.cc third_party/blink/renderer/core/html/anchor_element_metrics_test.cc -third_party/blink/renderer/core/html/canvas/html_canvas_element.cc third_party/blink/renderer/core/html/custom/element_internals.idl third_party/blink/renderer/core/html/custom/validity_state_flags.idl third_party/blink/renderer/core/html/forms/base_text_input_type.cc @@ -5593,6 +5650,7 @@ third_party/blink/renderer/core/html/forms/html_option_element.idl third_party/blink/renderer/core/html/forms/html_options_collection.idl third_party/blink/renderer/core/html/forms/html_select_element.idl third_party/blink/renderer/core/html/forms/html_text_area_element.idl +third_party/blink/renderer/core/html/forms/select_type.cc third_party/blink/renderer/core/html/forms/validity_state.cc third_party/blink/renderer/core/html/forms/validity_state.h third_party/blink/renderer/core/html/forms/validity_state.idl @@ -5627,6 +5685,7 @@ third_party/blink/renderer/core/html/html_table_row_element.idl third_party/blink/renderer/core/html/html_table_section_element.idl third_party/blink/renderer/core/html/media/autoplay_policy.cc third_party/blink/renderer/core/html/media/html_media_element.cc +third_party/blink/renderer/core/html/parser/html_document_parser.cc third_party/blink/renderer/core/input/event_handler.cc third_party/blink/renderer/core/input/event_handling_util.cc third_party/blink/renderer/core/input/mouse_event_manager.cc @@ -5638,10 +5697,7 @@ third_party/blink/renderer/core/layout/block_node.cc third_party/blink/renderer/core/layout/geometry/logical_offset.h third_party/blink/renderer/core/layout/geometry/logical_rect.h third_party/blink/renderer/core/layout/geometry/logical_size.h -third_party/blink/renderer/core/layout/geometry/physical_offset.h third_party/blink/renderer/core/layout/geometry/physical_rect.h -third_party/blink/renderer/core/layout/geometry/physical_size.h -third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.h third_party/blink/renderer/core/layout/hit_test_cache.h third_party/blink/renderer/core/layout/hit_test_location.h third_party/blink/renderer/core/layout/inline/inline_items_builder.cc @@ -5657,7 +5713,6 @@ third_party/blink/renderer/core/layout/layout_box.cc third_party/blink/renderer/core/layout/layout_box_hot.cc third_party/blink/renderer/core/layout/layout_box_model_object.cc third_party/blink/renderer/core/layout/layout_box_model_object.h -third_party/blink/renderer/core/layout/layout_html_canvas.cc third_party/blink/renderer/core/layout/layout_image.cc third_party/blink/renderer/core/layout/layout_image.h third_party/blink/renderer/core/layout/layout_image_resource.cc @@ -5713,6 +5768,7 @@ third_party/blink/renderer/core/paint/paint_layer_scrollable_area.cc third_party/blink/renderer/core/paint/paint_layer_scrollable_area.h third_party/blink/renderer/core/paint/paint_layer_stacking_node.cc third_party/blink/renderer/core/paint/paint_layer_stacking_node.h +third_party/blink/renderer/core/paint/paint_property_tree_builder.cc third_party/blink/renderer/core/paint/theme_painter_default.h third_party/blink/renderer/core/paint/timing/first_meaningful_paint_detector.cc third_party/blink/renderer/core/paint/timing/first_meaningful_paint_detector.h @@ -5791,19 +5847,13 @@ third_party/blink/renderer/modules/accessibility/ax_node_object.cc third_party/blink/renderer/modules/accessibility/ax_object_cache_impl.cc third_party/blink/renderer/modules/accessibility/ax_object_cache_impl.h third_party/blink/renderer/modules/accessibility/testing/internals_accessibility.h -third_party/blink/renderer/modules/ai/on_device_translation/ai_translator_factory.cc third_party/blink/renderer/modules/bluetooth/bluetooth_error.cc -third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc -third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.h third_party/blink/renderer/modules/canvas/canvas2d/canvas_rendering_context_2d.cc -third_party/blink/renderer/modules/clipboard/clipboard_promise.cc third_party/blink/renderer/modules/content_extraction/ai_page_content_agent_unittest.cc third_party/blink/renderer/modules/credentialmanagement/authentication_credentials_container.cc -third_party/blink/renderer/modules/encryptedmedia/encrypted_media_utils.h third_party/blink/renderer/modules/file_system_access/file_system_cloud_identifier.idl third_party/blink/renderer/modules/filesystem/dom_file_system_base_test.cc third_party/blink/renderer/modules/font_access/font_metadata.h -third_party/blink/renderer/modules/geolocation/geolocation.cc third_party/blink/renderer/modules/geolocation/geolocation.h third_party/blink/renderer/modules/hid/hid.cc third_party/blink/renderer/modules/indexeddb/idb_value_wrapping.cc @@ -5811,7 +5861,6 @@ third_party/blink/renderer/modules/manifest/fuzzer_seed_corpus/play_app_url_mani third_party/blink/renderer/modules/media_capabilities/media_capabilities.cc third_party/blink/renderer/modules/mediarecorder/media_recorder.cc third_party/blink/renderer/modules/mediarecorder/video_track_recorder.cc -third_party/blink/renderer/modules/mediarecorder/vpx_encoder.cc third_party/blink/renderer/modules/mediastream/media_devices_test.cc third_party/blink/renderer/modules/mediastream/media_stream_utils.cc third_party/blink/renderer/modules/mediastream/media_stream_video_renderer_sink.h @@ -5840,10 +5889,11 @@ third_party/blink/renderer/modules/webaudio/media_stream_audio_destination_node. third_party/blink/renderer/modules/webaudio/media_stream_audio_source_handler.h third_party/blink/renderer/modules/webaudio/media_stream_audio_source_node.h third_party/blink/renderer/modules/webaudio/realtime_audio_destination_handler.h +third_party/blink/renderer/modules/webgl/webgl2_rendering_context_webgpu.idl +third_party/blink/renderer/modules/webgl/webgl_rendering_context_webgpu.idl third_party/blink/renderer/modules/webgl/webgl_unowned_texture.h third_party/blink/renderer/modules/webgpu/external_texture_helper.cc third_party/blink/renderer/modules/webgpu/gpu_render_pipeline.cc -third_party/blink/renderer/modules/webmidi/navigator_web_midi.cc third_party/blink/renderer/modules/websockets/websocket_channel_impl.cc third_party/blink/renderer/modules/websockets/websocket_stream.h third_party/blink/renderer/modules/webtransport/web_transport_test.cc @@ -5883,9 +5933,10 @@ third_party/blink/renderer/platform/fonts/vdmx_parser.cc third_party/blink/renderer/platform/fonts/web_font_decoder.cc third_party/blink/renderer/platform/fonts/win/font_cache_skia_win.cc third_party/blink/renderer/platform/fonts/win/font_fallback_win.cc +third_party/blink/renderer/platform/geometry/physical_offset.h +third_party/blink/renderer/platform/geometry/physical_size.h third_party/blink/renderer/platform/graphics/bitmap_image.cc third_party/blink/renderer/platform/graphics/bitmap_image.h -third_party/blink/renderer/platform/graphics/canvas_resource_provider.cc third_party/blink/renderer/platform/graphics/filters/distant_light_source.h third_party/blink/renderer/platform/graphics/filters/fe_tile.cc third_party/blink/renderer/platform/graphics/filters/filter_effect.cc @@ -5896,7 +5947,6 @@ third_party/blink/renderer/platform/graphics/filters/source_graphic.h third_party/blink/renderer/platform/graphics/filters/spot_light_source.cc third_party/blink/renderer/platform/graphics/filters/spot_light_source.h third_party/blink/renderer/platform/graphics/gpu/webgl_image_conversion.cc -third_party/blink/renderer/platform/graphics/gpu/webgpu_swap_buffer_provider.cc third_party/blink/renderer/platform/graphics/image.cc third_party/blink/renderer/platform/graphics/image.h third_party/blink/renderer/platform/graphics/paint/geometry_mapper.cc @@ -6003,7 +6053,6 @@ third_party/boringssl/src/third_party/googletest/googletest/test/googletest-deat third_party/boringssl/src/third_party/googletest/googletest/test/gtest_list_output_unittest_.cc third_party/boringssl/src/third_party/googletest/googletest/test/gtest_skip_test.cc third_party/boringssl/src/tool/fd.cc -third_party/boringssl/src/tool/internal.h third_party/breakpad/BUILD.gn third_party/breakpad/breakpad/default.xml third_party/breakpad/breakpad/src/client/linux/minidump_writer/minidump_writer.cc @@ -6267,7 +6316,6 @@ third_party/catapult/dashboard/sandwich_verification/common/request.py third_party/catapult/devil/PRESUBMIT.py third_party/catapult/devil/devil/android/device_utils.py third_party/catapult/devil/devil/android/device_utils_test.py -third_party/catapult/devil/devil/android/install_commands.py third_party/catapult/devil/devil/android/ndk/abis.py third_party/catapult/devil/devil/android/sdk/adb_wrapper.py third_party/catapult/devil/devil/android/sdk/intent.py @@ -6952,8 +7000,6 @@ third_party/catapult/third_party/polymer/components/webcomponentsjs/ShadowDOM.js third_party/catapult/third_party/polymer/components/webcomponentsjs/ShadowDOM.min.js third_party/catapult/third_party/polymer/components/webcomponentsjs/webcomponents.js third_party/catapult/third_party/polymer/components/webcomponentsjs/webcomponents.min.js -third_party/catapult/third_party/polymer3/bower_components/polymer/test/unit/styling-cross-scope-apply.html -third_party/catapult/third_party/polymer3/bower_components/polymer/test/unit/styling-scoped.html third_party/catapult/third_party/pyasn1/LICENSE.txt third_party/catapult/third_party/pyasn1/pyasn1/codec/ber/decoder.py third_party/catapult/third_party/pyasn1/pyasn1/codec/ber/encoder.py @@ -7022,17 +7068,6 @@ third_party/catapult/third_party/typ/typ/json_results.py third_party/catapult/third_party/typ/typ/result_sink.py third_party/catapult/third_party/typ/typ/tests/expectations_parser_test.py third_party/catapult/third_party/typ/typ/tests/result_sink_test.py -third_party/catapult/third_party/urllib3/urllib3/connectionpool.py -third_party/catapult/third_party/urllib3/urllib3/contrib/appengine.py -third_party/catapult/third_party/urllib3/urllib3/contrib/ntlmpool.py -third_party/catapult/third_party/urllib3/urllib3/packages/rfc3986/__init__.py -third_party/catapult/third_party/urllib3/urllib3/packages/rfc3986/abnf_regexp.py -third_party/catapult/third_party/urllib3/urllib3/packages/rfc3986/builder.py -third_party/catapult/third_party/urllib3/urllib3/packages/rfc3986/uri.py -third_party/catapult/third_party/urllib3/urllib3/packages/rfc3986/validators.py -third_party/catapult/third_party/urllib3/urllib3/poolmanager.py -third_party/catapult/third_party/urllib3/urllib3/util/ssl_.py -third_party/catapult/third_party/urllib3/urllib3/util/url.py third_party/catapult/third_party/vinn/third_party/parse5/benchmark/package.json third_party/catapult/third_party/vinn/third_party/parse5/benchmark/spec.html third_party/catapult/third_party/vinn/third_party/parse5/lib/tokenization/tokenizer.js @@ -7149,6 +7184,78 @@ third_party/cld_3/src/src/script_span/offsetmap.cc third_party/cld_3/src/src/script_span/offsetmap.h third_party/cld_3/src/src/script_span/utf8statetable.h third_party/colorama/src/demos/demo09.py +third_party/compiler-rt/src/lib/asan/asan_ignorelist.txt +third_party/compiler-rt/src/lib/asan/asan_malloc_win.cpp +third_party/compiler-rt/src/lib/asan/asan_win.cpp +third_party/compiler-rt/src/lib/fuzzer/FuzzerSHA1.cpp +third_party/compiler-rt/src/lib/fuzzer/FuzzerUtilWindows.cpp +third_party/compiler-rt/src/lib/hwasan/hwasan_dynamic_shadow.cpp +third_party/compiler-rt/src/lib/hwasan/hwasan_report.cpp +third_party/compiler-rt/src/lib/interception/interception_win.cpp +third_party/compiler-rt/src/lib/profile/WindowsMMap.c +third_party/compiler-rt/src/lib/sanitizer_common/sanitizer_coverage_fuchsia.cpp +third_party/compiler-rt/src/lib/sanitizer_common/sanitizer_coverage_win_sections.cpp +third_party/compiler-rt/src/lib/sanitizer_common/sanitizer_symbolizer_markup_constants.h +third_party/compiler-rt/src/lib/sanitizer_common/sanitizer_symbolizer_win.cpp +third_party/compiler-rt/src/lib/sanitizer_common/sanitizer_tls_get_addr.h +third_party/compiler-rt/src/lib/sanitizer_common/sanitizer_win.cpp +third_party/compiler-rt/src/lib/scudo/standalone/platform.h +third_party/compiler-rt/src/lib/tsan/rtl/tsan_rtl_access.cpp +third_party/compiler-rt/src/test/asan/TestCases/Darwin/address-range-limit.mm +third_party/compiler-rt/src/test/asan/TestCases/Darwin/cstring_literals_regtest.mm +third_party/compiler-rt/src/test/asan/TestCases/Darwin/linked-only.cpp +third_party/compiler-rt/src/test/asan/TestCases/Darwin/malloc_set_zone_name-mprotect.cpp +third_party/compiler-rt/src/test/asan/TestCases/Darwin/mixing-global-constructors.cpp +third_party/compiler-rt/src/test/asan/TestCases/Darwin/objc-odr.mm +third_party/compiler-rt/src/test/asan/TestCases/Darwin/reexec-insert-libraries-env.cpp +third_party/compiler-rt/src/test/asan/TestCases/Linux/clone_test.cpp +third_party/compiler-rt/src/test/asan/TestCases/Linux/globals-gc-sections-lld.cpp +third_party/compiler-rt/src/test/asan/TestCases/Linux/init-order-dlopen.cpp +third_party/compiler-rt/src/test/asan/TestCases/Linux/interception_readdir_r_test.cpp +third_party/compiler-rt/src/test/asan/TestCases/Linux/kernel-area.cpp +third_party/compiler-rt/src/test/asan/TestCases/Linux/malloc-in-qsort.cpp +third_party/compiler-rt/src/test/asan/TestCases/Linux/nohugepage_test.cpp +third_party/compiler-rt/src/test/asan/TestCases/Linux/odr-violation.cpp +third_party/compiler-rt/src/test/asan/TestCases/Linux/overflow-in-qsort.cpp +third_party/compiler-rt/src/test/asan/TestCases/Linux/ptrace.cpp +third_party/compiler-rt/src/test/asan/TestCases/Linux/shmctl.cpp +third_party/compiler-rt/src/test/asan/TestCases/Linux/stack-trace-dlclose.cpp +third_party/compiler-rt/src/test/asan/TestCases/Posix/asan-symbolize-sanity-test.cpp +third_party/compiler-rt/src/test/asan/TestCases/Posix/coverage-module-unloaded.cpp +third_party/compiler-rt/src/test/asan/TestCases/Posix/coverage.cpp +third_party/compiler-rt/src/test/asan/TestCases/Posix/dlclose-test.cpp +third_party/compiler-rt/src/test/asan/TestCases/Posix/glob.cpp +third_party/compiler-rt/src/test/asan/TestCases/Posix/no_asan_gen_globals.c +third_party/compiler-rt/src/test/asan/TestCases/Posix/tsd_dtor_leak.cpp +third_party/compiler-rt/src/test/asan/TestCases/Posix/wait4.cpp +third_party/compiler-rt/src/test/asan/TestCases/Windows/crt_initializers.cpp +third_party/compiler-rt/src/test/asan/TestCases/Windows/dll_operator_array_new_with_dtor_left_oob.cpp +third_party/compiler-rt/src/test/asan/TestCases/Windows/longjmp.cpp +third_party/compiler-rt/src/test/asan/TestCases/Windows/msvc/dll_seh.cpp +third_party/compiler-rt/src/test/asan/TestCases/Windows/msvc/seh.cpp +third_party/compiler-rt/src/test/asan/TestCases/Windows/operator_array_new_with_dtor_left_oob.cpp +third_party/compiler-rt/src/test/asan/TestCases/atexit_stats.cpp +third_party/compiler-rt/src/test/asan/TestCases/default_ignorelist.cpp +third_party/compiler-rt/src/test/asan/TestCases/heap-overflow-large.cpp +third_party/compiler-rt/src/test/asan/TestCases/initialization-bug-no-global.cpp +third_party/compiler-rt/src/test/asan/TestCases/initialization-bug.cpp +third_party/compiler-rt/src/test/asan/TestCases/log-path_test.cpp +third_party/compiler-rt/src/test/asan/TestCases/printf-3.c +third_party/compiler-rt/src/test/asan/TestCases/throw_call_test.cpp +third_party/compiler-rt/src/test/asan/TestCases/time_interceptor.cpp +third_party/compiler-rt/src/test/cfi/cross-dso/target_out_of_bounds.cpp +third_party/compiler-rt/src/test/fuzzer/lit.cfg.py +third_party/compiler-rt/src/test/lsan/TestCases/new_array_with_dtor_0.cpp +third_party/compiler-rt/src/test/lsan/TestCases/thread_context_crash.cpp +third_party/compiler-rt/src/test/msan/select_float_origin.cpp +third_party/compiler-rt/src/test/sanitizer_common/TestCases/Linux/allow_user_segv.cpp +third_party/compiler-rt/src/test/sanitizer_common/TestCases/Linux/dn_expand.cpp +third_party/compiler-rt/src/test/tsan/ignore_lib6.cpp +third_party/compiler-rt/src/test/tsan/mmap_stress.cpp +third_party/compiler-rt/src/test/tsan/pthread_atfork_deadlock2.c +third_party/compiler-rt/src/test/tsan/pthread_atfork_deadlock3.c +third_party/compiler-rt/src/test/tsan/pthread_key.cpp +third_party/compiler-rt/src/test/ubsan/TestCases/Misc/log-path_test.cpp third_party/content_analysis_sdk/src/agent/src/scoped_print_handle_win.cc third_party/content_analysis_sdk/src/common/utils_win.cc third_party/cpu_features/src/src/impl_arm_linux_or_android.c @@ -7220,7 +7327,6 @@ third_party/crashpad/crashpad/snapshot/win/process_reader_win.cc third_party/crashpad/crashpad/snapshot/win/process_snapshot_win.cc third_party/crashpad/crashpad/third_party/cpp-httplib/cpp-httplib/httplib.h third_party/crashpad/crashpad/third_party/googletest/BUILD.gn -third_party/crashpad/crashpad/third_party/zlib/BUILD.gn third_party/crashpad/crashpad/tools/generate_dump.cc third_party/crashpad/crashpad/util/file/file_io.h third_party/crashpad/crashpad/util/file/file_io_test.cc @@ -7253,6 +7359,8 @@ third_party/cros_system_api/dbus/bluetooth/dbus-constants.h third_party/cros_system_api/dbus/shill/dbus-constants.h third_party/crossbench/chrome-extension-replay/devtools-recorder/crossbench.html third_party/crossbench/crossbench/action_runner/action/enums.py +third_party/crossbench/crossbench/action_runner/action/position.py +third_party/crossbench/crossbench/action_runner/action/text_input.py third_party/crossbench/crossbench/action_runner/default_bond_action_runner.py third_party/crossbench/crossbench/benchmarks/loading/config/login/google.py third_party/crossbench/crossbench/benchmarks/loading/loading_benchmark.py @@ -7262,6 +7370,7 @@ third_party/crossbench/crossbench/browsers/chrome/downloader.py third_party/crossbench/crossbench/browsers/chromium/applescript.py third_party/crossbench/crossbench/browsers/chromium/driver_finder.py third_party/crossbench/crossbench/browsers/chromium/webdriver.py +third_party/crossbench/crossbench/browsers/chromium_based/chromium_based.py third_party/crossbench/crossbench/browsers/firefox/downloader.py third_party/crossbench/crossbench/browsers/firefox/webdriver.py third_party/crossbench/crossbench/cli/cli.py @@ -7280,9 +7389,12 @@ third_party/crossbench/tests/crossbench/benchmarks/loading/config/test_example_c third_party/crossbench/tests/crossbench/benchmarks/loading/config/test_login.py third_party/crossbench/tests/crossbench/benchmarks/loading/config/test_pages.py third_party/crossbench/tests/crossbench/benchmarks/loading/test_loading.py +third_party/crossbench/tests/crossbench/plt/test_chromeos_ssh.py third_party/crossbench/tests/crossbench/probes/test_js.py +third_party/crossbench/tests/crossbench/probes/test_meminfo.py third_party/crossbench/tests/crossbench/probes/test_perfetto.py third_party/crossbench/tests/crossbench/probes/test_v8_rcs.py +third_party/crossbench/tests/crossbench/test_env.py third_party/crossbench/tests/end2end/android/test_wpr_record_and_replay.py third_party/crossbench/tests/end2end/desktop/test_cli.py third_party/dav1d/BUILD.gn @@ -7294,15 +7406,19 @@ third_party/dav1d/libdav1d/tools/input/section5.c third_party/dawn/.vscode/tasks.json third_party/dawn/CMakeLists.txt third_party/dawn/generator/dawn_json_generator.py +third_party/dawn/infra/specs/PRESUBMIT.py third_party/dawn/src/dawn/dawn.json third_party/dawn/src/dawn/native/CommandAllocator.cpp third_party/dawn/src/dawn/native/CopyTextureForBrowserHelper.cpp third_party/dawn/src/dawn/native/Features.cpp +third_party/dawn/src/dawn/native/Limits.cpp third_party/dawn/src/dawn/native/Sampler.h third_party/dawn/src/dawn/native/SubresourceStorage.h +third_party/dawn/src/dawn/native/Toggles.cpp third_party/dawn/src/dawn/native/d3d/D3DError.cpp third_party/dawn/src/dawn/native/d3d11/BindGroupTrackerD3D11.cpp third_party/dawn/src/dawn/native/d3d11/BufferD3D11.cpp +third_party/dawn/src/dawn/native/d3d11/DeviceD3D11.cpp third_party/dawn/src/dawn/native/d3d11/DeviceInfoD3D11.cpp third_party/dawn/src/dawn/native/d3d11/PhysicalDeviceD3D11.cpp third_party/dawn/src/dawn/native/d3d11/PipelineLayoutD3D11.cpp @@ -7325,6 +7441,7 @@ third_party/dawn/src/dawn/native/metal/QueueMTL.h third_party/dawn/src/dawn/native/opengl/CommandBufferGL.cpp third_party/dawn/src/dawn/native/opengl/ContextEGL.cpp third_party/dawn/src/dawn/native/opengl/TextureGL.cpp +third_party/dawn/src/dawn/native/vulkan/BackendVk.cpp third_party/dawn/src/dawn/native/vulkan/RenderPassCache.h third_party/dawn/src/dawn/native/vulkan/VulkanInfo.cpp third_party/dawn/src/dawn/native/vulkan/VulkanInfo.h @@ -7333,6 +7450,7 @@ third_party/dawn/src/dawn/partition_alloc/partition_alloc/pointers/raw_ptr_exclu third_party/dawn/src/dawn/partition_alloc/partition_alloc/pointers/raw_ref.h third_party/dawn/src/dawn/platform/metrics/HistogramMacros.h third_party/dawn/src/dawn/tests/PartitionAllocSupport.cpp +third_party/dawn/src/dawn/tests/end2end/CompressedTextureFormatTests.cpp third_party/dawn/src/dawn/tests/end2end/DepthBiasTests.cpp third_party/dawn/src/dawn/tests/end2end/TextureViewTests.cpp third_party/dawn/src/dawn/tests/end2end/VertexStateTests.cpp @@ -7346,7 +7464,6 @@ third_party/dawn/src/dawn/tests/unittests/validation/RenderPassDescriptorValidat third_party/dawn/src/dawn/tests/white_box/SharedTextureMemoryTests_dmabuf.cpp third_party/dawn/src/dawn/tests/white_box/VulkanImageWrappingTests_DmaBuf.cpp third_party/dawn/src/dawn/utils/WindowsDebugLogger.cpp -third_party/dawn/src/tint/lang/core/constant/eval_builtin_test.cc third_party/dawn/src/tint/lang/hlsl/type/rasterizer_ordered_texture_2d.h third_party/dawn/src/tint/lang/hlsl/writer/ast_printer/ast_printer.cc third_party/dawn/src/tint/lang/hlsl/writer/printer/printer.cc @@ -7355,6 +7472,7 @@ third_party/dawn/src/tint/lang/spirv/reader/ast_parser/function.cc third_party/dawn/src/tint/lang/spirv/reader/ast_parser/function_cfg_test.cc third_party/dawn/src/tint/lang/wgsl/ast/transform/promote_side_effects_to_decl_test.cc third_party/dawn/src/tint/lang/wgsl/reader/parser/lexer_test.cc +third_party/dawn/src/tint/lang/wgsl/resolver/eval_builtin_test.cc third_party/dawn/third_party/dxc/include/dxc/Support/Unicode.h third_party/dawn/third_party/dxc/include/llvm/DebugInfo/PDB/PDBSymbol.h third_party/dawn/third_party/dxc/include/llvm/DebugInfo/PDB/PDBSymbolCustom.h @@ -7521,6 +7639,7 @@ third_party/dawn/third_party/webgpu-cts/src/webgpu/api/operation/sampling/filter third_party/dawn/third_party/webgpu-cts/src/webgpu/multisample_info.ts third_party/dawn/third_party/webgpu-cts/src/webgpu/shader/execution/shader_io/fragment_builtins.spec.ts third_party/dawn/third_party/webgpu-cts/standalone/index.html +third_party/dawn/third_party/webgpu-headers/src/webgpu.h third_party/dawn/tools/src/cmd/cts/config.json third_party/dawn/tools/src/cmd/cts/treemap/treemap.html third_party/depot_tools/PRESUBMIT.py @@ -7554,6 +7673,7 @@ third_party/depot_tools/fetch_configs/skia.py third_party/depot_tools/fetch_configs/skia_buildbot.py third_party/depot_tools/fetch_configs/syzygy.py third_party/depot_tools/fetch_configs/v8.py +third_party/depot_tools/fetch_configs/web-tests.py third_party/depot_tools/fetch_configs/web-workload.py third_party/depot_tools/fetch_configs/webpagereplay.py third_party/depot_tools/fetch_configs/webrtc.py @@ -7575,8 +7695,10 @@ third_party/depot_tools/infra_lib/telemetry/__init__.py third_party/depot_tools/infra_lib/telemetry/clearcut_span_exporter.py third_party/depot_tools/infra_lib/telemetry/proto/clientanalytics_pb2.py third_party/depot_tools/infra_lib/telemetry/proto/trace_span_pb2.py +third_party/depot_tools/lockfile.py third_party/depot_tools/man/README.txt third_party/depot_tools/man/html/depot_tools.html +third_party/depot_tools/man/html/depot_tools_gerrit_auth.html third_party/depot_tools/man/html/depot_tools_tutorial.html third_party/depot_tools/man/html/git-cl.html third_party/depot_tools/man/html/git-footers.html @@ -7595,6 +7717,7 @@ third_party/depot_tools/man/html/git-retry.html third_party/depot_tools/man/html/git-squash-branch.html third_party/depot_tools/man/html/git-thaw.html third_party/depot_tools/man/html/git-upstream-diff.html +third_party/depot_tools/man/src/depot_tools_gerrit_auth.txt third_party/depot_tools/man/src/depot_tools_tutorial.txt third_party/depot_tools/metadata/dependency_metadata.py third_party/depot_tools/metadata/fields/custom/license.py @@ -7602,6 +7725,7 @@ third_party/depot_tools/metadata/fields/custom/license_allowlist.py third_party/depot_tools/metadata/tests/parse_test.py third_party/depot_tools/metrics_utils.py third_party/depot_tools/my_activity.py +third_party/depot_tools/newauth.py third_party/depot_tools/ninja.py third_party/depot_tools/ninjalog_uploader.py third_party/depot_tools/owners_client.py @@ -7848,6 +7972,12 @@ third_party/devtools-frontend/src/front_end/generated/protocol-mapping.d.ts third_party/devtools-frontend/src/front_end/generated/protocol-proxy-api.d.ts third_party/devtools-frontend/src/front_end/generated/protocol.ts third_party/devtools-frontend/src/front_end/integration_test_runner.html +third_party/devtools-frontend/src/front_end/models/ai_assistance/ExtensionScope.ts +third_party/devtools-frontend/src/front_end/models/ai_assistance/agents/FileAgent.ts +third_party/devtools-frontend/src/front_end/models/ai_assistance/agents/PerformanceAgent.test.ts +third_party/devtools-frontend/src/front_end/models/ai_assistance/agents/PerformanceAgent.ts +third_party/devtools-frontend/src/front_end/models/ai_assistance/agents/PerformanceInsightsAgent.test.ts +third_party/devtools-frontend/src/front_end/models/ai_assistance/data_formatters/PerformanceInsightFormatter.test.ts third_party/devtools-frontend/src/front_end/models/bindings/ResourceUtils.ts third_party/devtools-frontend/src/front_end/models/crux-manager/CrUXManager.test.ts third_party/devtools-frontend/src/front_end/models/crux-manager/CrUXManager.ts @@ -7861,7 +7991,9 @@ third_party/devtools-frontend/src/front_end/models/issues_manager/CorsIssue.ts third_party/devtools-frontend/src/front_end/models/issues_manager/DeprecationIssue.ts third_party/devtools-frontend/src/front_end/models/issues_manager/GenericIssue.ts third_party/devtools-frontend/src/front_end/models/issues_manager/HeavyAdIssue.ts +third_party/devtools-frontend/src/front_end/models/issues_manager/PartitioningBlobURLIssue.ts third_party/devtools-frontend/src/front_end/models/issues_manager/SharedArrayBufferIssue.ts +third_party/devtools-frontend/src/front_end/models/issues_manager/UserReidentificationIssue.ts third_party/devtools-frontend/src/front_end/models/live-metrics/LiveMetrics.ts third_party/devtools-frontend/src/front_end/models/persistence/NetworkPersistenceManager.test.ts third_party/devtools-frontend/src/front_end/models/persistence/NetworkPersistenceManager.ts @@ -7878,8 +8010,10 @@ third_party/devtools-frontend/src/front_end/models/trace/handlers/UserInteractio third_party/devtools-frontend/src/front_end/models/trace/handlers/UserTimingsHandler.ts third_party/devtools-frontend/src/front_end/models/trace/handlers/helpers.test.ts third_party/devtools-frontend/src/front_end/models/trace/handlers/helpers.ts +third_party/devtools-frontend/src/front_end/models/trace/helpers/Network.ts third_party/devtools-frontend/src/front_end/models/trace/helpers/Trace.test.ts third_party/devtools-frontend/src/front_end/models/trace/insights/CLSCulprits.ts +third_party/devtools-frontend/src/front_end/models/trace/insights/Common.ts third_party/devtools-frontend/src/front_end/models/trace/insights/DOMSize.ts third_party/devtools-frontend/src/front_end/models/trace/insights/DocumentLatency.ts third_party/devtools-frontend/src/front_end/models/trace/insights/FontDisplay.test.ts @@ -7887,11 +8021,12 @@ third_party/devtools-frontend/src/front_end/models/trace/insights/FontDisplay.ts third_party/devtools-frontend/src/front_end/models/trace/insights/ForcedReflow.ts third_party/devtools-frontend/src/front_end/models/trace/insights/ImageDelivery.ts third_party/devtools-frontend/src/front_end/models/trace/insights/InteractionToNextPaint.ts +third_party/devtools-frontend/src/front_end/models/trace/insights/ModernHTTP.test.ts +third_party/devtools-frontend/src/front_end/models/trace/insights/ModernHTTP.ts +third_party/devtools-frontend/src/front_end/models/trace/insights/NetworkDependencyTree.test.ts third_party/devtools-frontend/src/front_end/models/trace/insights/NetworkDependencyTree.ts third_party/devtools-frontend/src/front_end/models/trace/insights/RenderBlocking.test.ts third_party/devtools-frontend/src/front_end/models/trace/insights/SlowCSSSelector.ts -third_party/devtools-frontend/src/front_end/models/trace/insights/ThirdParties.test.ts -third_party/devtools-frontend/src/front_end/models/trace/insights/ThirdParties.ts third_party/devtools-frontend/src/front_end/models/trace/insights/Viewport.ts third_party/devtools-frontend/src/front_end/models/trace/lantern/core/NetworkAnalyzer.test.ts third_party/devtools-frontend/src/front_end/models/trace/lantern/graph/NetworkNode.ts @@ -7904,14 +8039,10 @@ third_party/devtools-frontend/src/front_end/models/trace/types/TraceEvents.ts third_party/devtools-frontend/src/front_end/panels/accessibility/AccessibilityNodeView.ts third_party/devtools-frontend/src/front_end/panels/accessibility/AccessibilityStrings.ts third_party/devtools-frontend/src/front_end/panels/ai_assistance/AiAssistancePanel.ts -third_party/devtools-frontend/src/front_end/panels/ai_assistance/ExtensionScope.ts -third_party/devtools-frontend/src/front_end/panels/ai_assistance/agents/FileAgent.ts -third_party/devtools-frontend/src/front_end/panels/ai_assistance/agents/PerformanceAgent.test.ts -third_party/devtools-frontend/src/front_end/panels/ai_assistance/agents/PerformanceAgent.ts -third_party/devtools-frontend/src/front_end/panels/ai_assistance/agents/PerformanceInsightsAgent.test.ts +third_party/devtools-frontend/src/front_end/panels/ai_assistance/PatchWidget.ts +third_party/devtools-frontend/src/front_end/panels/ai_assistance/SelectWorkspaceDialog.ts third_party/devtools-frontend/src/front_end/panels/ai_assistance/components/UserActionRow.ts third_party/devtools-frontend/src/front_end/panels/ai_assistance/components/chatView.css -third_party/devtools-frontend/src/front_end/panels/ai_assistance/data_formatters/PerformanceInsightFormatter.test.ts third_party/devtools-frontend/src/front_end/panels/animation/AnimationTimeline.ts third_party/devtools-frontend/src/front_end/panels/application/AppManifestView.ts third_party/devtools-frontend/src/front_end/panels/application/ApplicationPanelSidebar.ts @@ -7919,10 +8050,12 @@ third_party/devtools-frontend/src/front_end/panels/application/BackgroundService third_party/devtools-frontend/src/front_end/panels/application/InterestGroupTreeElement.ts third_party/devtools-frontend/src/front_end/panels/application/ReportingApiReportsView.test.ts third_party/devtools-frontend/src/front_end/panels/application/ReportingApiReportsView.ts +third_party/devtools-frontend/src/front_end/panels/application/ReportingApiView.ts third_party/devtools-frontend/src/front_end/panels/application/ServiceWorkerCacheTreeElement.ts third_party/devtools-frontend/src/front_end/panels/application/StorageBucketsTreeElement.ts third_party/devtools-frontend/src/front_end/panels/application/StorageView.ts third_party/devtools-frontend/src/front_end/panels/application/components/EndpointsGrid.ts +third_party/devtools-frontend/src/front_end/panels/application/components/FrameDetailsView.test.ts third_party/devtools-frontend/src/front_end/panels/application/components/FrameDetailsView.ts third_party/devtools-frontend/src/front_end/panels/application/components/ReportsGrid.ts third_party/devtools-frontend/src/front_end/panels/application/components/SharedStorageAccessGrid.ts @@ -7940,7 +8073,7 @@ third_party/devtools-frontend/src/front_end/panels/changes/ChangesView.ts third_party/devtools-frontend/src/front_end/panels/console/ConsoleViewMessage.ts third_party/devtools-frontend/src/front_end/panels/console/ErrorStackParser.test.ts third_party/devtools-frontend/src/front_end/panels/coverage/CoverageView.ts -third_party/devtools-frontend/src/front_end/panels/css_overview/components/CSSOverviewStartView.ts +third_party/devtools-frontend/src/front_end/panels/css_overview/CSSOverviewStartView.ts third_party/devtools-frontend/src/front_end/panels/elements/ElementStatePaneWidget.test.ts third_party/devtools-frontend/src/front_end/panels/elements/ElementStatePaneWidget.ts third_party/devtools-frontend/src/front_end/panels/elements/components/CSSPropertyDocsView.test.ts @@ -7980,6 +8113,7 @@ third_party/devtools-frontend/src/front_end/panels/settings/components/SyncSecti third_party/devtools-frontend/src/front_end/panels/sources/BreakpointEditDialog.ts third_party/devtools-frontend/src/front_end/panels/sources/DebuggerPausedMessage.ts third_party/devtools-frontend/src/front_end/panels/sources/SourcesNavigator.ts +third_party/devtools-frontend/src/front_end/panels/sources/TabbedEditorContainer.ts third_party/devtools-frontend/src/front_end/panels/sources/components/BreakpointsView.test.ts third_party/devtools-frontend/src/front_end/panels/sources/components/BreakpointsViewUtils.test.ts third_party/devtools-frontend/src/front_end/panels/sources/components/BreakpointsViewUtils.ts @@ -7987,8 +8121,10 @@ third_party/devtools-frontend/src/front_end/panels/sources/components/HeadersVie third_party/devtools-frontend/src/front_end/panels/sources/components/HeadersView.ts third_party/devtools-frontend/src/front_end/panels/timeline/Initiators.test.ts third_party/devtools-frontend/src/front_end/panels/timeline/ThreadAppender.ts +third_party/devtools-frontend/src/front_end/panels/timeline/TimelineFlameChartView.ts third_party/devtools-frontend/src/front_end/panels/timeline/TimelinePanel.ts third_party/devtools-frontend/src/front_end/panels/timeline/TimelineTreeView.test.ts +third_party/devtools-frontend/src/front_end/panels/timeline/TimelineTreeView.ts third_party/devtools-frontend/src/front_end/panels/timeline/TimelineUIUtils.test.ts third_party/devtools-frontend/src/front_end/panels/timeline/TimingsTrackAppender.ts third_party/devtools-frontend/src/front_end/panels/timeline/components/DetailsView.ts @@ -7997,6 +8133,7 @@ third_party/devtools-frontend/src/front_end/panels/timeline/components/LiveMetri third_party/devtools-frontend/src/front_end/panels/timeline/components/SidebarInsightsTab.test.ts third_party/devtools-frontend/src/front_end/panels/timeline/components/SidebarSingleInsightSet.ts third_party/devtools-frontend/src/front_end/panels/timeline/overlays/components/EntriesLinkOverlay.ts +third_party/devtools-frontend/src/front_end/panels/timeline/overlays/components/EntryLabelOverlay.ts third_party/devtools-frontend/src/front_end/panels/timeline/track_appenders/ThreadAppender.test.ts third_party/devtools-frontend/src/front_end/panels/timeline/utils/AICallTree.test.ts third_party/devtools-frontend/src/front_end/panels/timeline/utils/EntityMapper.test.ts @@ -8004,6 +8141,7 @@ third_party/devtools-frontend/src/front_end/panels/timeline/utils/EntryStyles.ts third_party/devtools-frontend/src/front_end/panels/timeline/utils/Helpers.test.ts third_party/devtools-frontend/src/front_end/panels/timeline/utils/Helpers.ts third_party/devtools-frontend/src/front_end/panels/timeline/utils/IgnoreList.test.ts +third_party/devtools-frontend/src/front_end/panels/timeline/utils/Treemap.test.ts third_party/devtools-frontend/src/front_end/panels/web_audio/WebAudioView.ts third_party/devtools-frontend/src/front_end/panels/webauthn/WebauthnPane.ts third_party/devtools-frontend/src/front_end/panels/whats_new/ReleaseNote.test.ts @@ -8011,6 +8149,7 @@ third_party/devtools-frontend/src/front_end/panels/whats_new/ReleaseNoteText.ts third_party/devtools-frontend/src/front_end/panels/whats_new/ReleaseNoteView.test.ts third_party/devtools-frontend/src/front_end/panels/whats_new/WhatsNewImpl.ts third_party/devtools-frontend/src/front_end/services/tracing/PerformanceTracing.ts +third_party/devtools-frontend/src/front_end/testing/test_setup.ts third_party/devtools-frontend/src/front_end/third_party/acorn/package/dist/acorn.js third_party/devtools-frontend/src/front_end/third_party/acorn/package/package.json third_party/devtools-frontend/src/front_end/third_party/axe-core/axe.js @@ -8142,6 +8281,7 @@ third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/cj third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/LaunchOptions.d.ts third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/PuppeteerNode.d.ts third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/PuppeteerNode.js +third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/encoding.js third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.d.ts third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.js third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Browser.d.ts @@ -8178,6 +8318,7 @@ third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/es third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/LaunchOptions.d.ts third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/PuppeteerNode.d.ts third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/PuppeteerNode.js +third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/encoding.js third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/types.d.ts third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/src/api/Browser.ts third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/src/api/BrowserContext.ts @@ -8202,6 +8343,7 @@ third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/src/co third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/src/node/FirefoxLauncher.ts third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/src/node/LaunchOptions.ts third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/src/node/PuppeteerNode.ts +third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/src/util/encoding.ts third_party/devtools-frontend/src/front_end/third_party/third-party-web/lib/nostats-subset.js third_party/devtools-frontend/src/front_end/third_party/third-party-web/package/dist/entities-httparchive-nostats.json third_party/devtools-frontend/src/front_end/third_party/third-party-web/package/dist/entities-httparchive.json @@ -8227,8 +8369,10 @@ third_party/devtools-frontend/src/front_end/third_party/web-vitals/package/src/l third_party/devtools-frontend/src/front_end/third_party/web-vitals/package/src/onCLS.ts third_party/devtools-frontend/src/front_end/third_party/web-vitals/package/src/onINP.ts third_party/devtools-frontend/src/front_end/ui/components/code_highlighter/CodeHighlighter.ts +third_party/devtools-frontend/src/front_end/ui/components/docs/component_docs_styles.css third_party/devtools-frontend/src/front_end/ui/components/markdown_view/CodeBlock.ts third_party/devtools-frontend/src/front_end/ui/components/markdown_view/MarkdownLinksMap.ts +third_party/devtools-frontend/src/front_end/ui/components/tooltips/Tooltip.ts third_party/devtools-frontend/src/front_end/ui/legacy/RemoteDebuggingTerminatedScreen.ts third_party/devtools-frontend/src/front_end/ui/legacy/SearchableView.ts third_party/devtools-frontend/src/front_end/ui/legacy/UIUtils.test.ts @@ -8238,12 +8382,7 @@ third_party/devtools-frontend/src/front_end/ui/legacy/components/perf_ui/FlameCh third_party/devtools-frontend/src/front_end/ui/legacy/components/utils/JSPresentationUtils.test.ts third_party/devtools-frontend/src/front_end/ui/legacy/components/utils/Linkifier.test.ts third_party/devtools-frontend/src/front_end/ui/legacy/theme_support/ThemeSupport.ts -third_party/devtools-frontend/src/node_modules/@babel/core/node_modules/source-map/dist/source-map.debug.js -third_party/devtools-frontend/src/node_modules/@babel/core/node_modules/source-map/dist/source-map.js -third_party/devtools-frontend/src/node_modules/@babel/core/node_modules/source-map/lib/base64-vlq.js -third_party/devtools-frontend/src/node_modules/@babel/core/node_modules/source-map/lib/source-map-consumer.js -third_party/devtools-frontend/src/node_modules/@babel/core/node_modules/source-map/package.json -third_party/devtools-frontend/src/node_modules/@babel/runtime/package.json +third_party/devtools-frontend/src/node_modules/@ampproject/remapping/package.json third_party/devtools-frontend/src/node_modules/@babel/traverse/node_modules/globals/package.json third_party/devtools-frontend/src/node_modules/@colors/colors/lib/colors.js third_party/devtools-frontend/src/node_modules/@colors/colors/lib/styles.js @@ -8254,6 +8393,12 @@ third_party/devtools-frontend/src/node_modules/@csstools/css-tokenizer/package.j third_party/devtools-frontend/src/node_modules/@csstools/media-query-list-parser/package.json third_party/devtools-frontend/src/node_modules/@dual-bundle/import-meta-resolve/package.json third_party/devtools-frontend/src/node_modules/@eslint/eslintrc/node_modules/globals/package.json +third_party/devtools-frontend/src/node_modules/@isaacs/cliui/node_modules/ansi-regex/package.json +third_party/devtools-frontend/src/node_modules/@isaacs/cliui/node_modules/ansi-styles/package.json +third_party/devtools-frontend/src/node_modules/@isaacs/cliui/node_modules/string-width/package.json +third_party/devtools-frontend/src/node_modules/@isaacs/cliui/node_modules/strip-ansi/package.json +third_party/devtools-frontend/src/node_modules/@isaacs/cliui/node_modules/wrap-ansi/package.json +third_party/devtools-frontend/src/node_modules/@keyv/serialize/node_modules/buffer/index.js third_party/devtools-frontend/src/node_modules/@puppeteer/browsers/lib/cjs/browser-data/browser-data.d.ts third_party/devtools-frontend/src/node_modules/@puppeteer/browsers/lib/cjs/browser-data/browser-data.js third_party/devtools-frontend/src/node_modules/@puppeteer/browsers/lib/cjs/browser-data/chrome-headless-shell.js @@ -8270,10 +8415,8 @@ third_party/devtools-frontend/src/node_modules/@puppeteer/browsers/lib/esm/brows third_party/devtools-frontend/src/node_modules/@puppeteer/browsers/lib/esm/browser-data/chromium.js third_party/devtools-frontend/src/node_modules/@puppeteer/browsers/lib/esm/browser-data/firefox.js third_party/devtools-frontend/src/node_modules/@puppeteer/browsers/lib/esm/install.d.ts -third_party/devtools-frontend/src/node_modules/@puppeteer/browsers/node_modules/ansi-regex/package.json third_party/devtools-frontend/src/node_modules/@puppeteer/browsers/node_modules/debug/package.json third_party/devtools-frontend/src/node_modules/@puppeteer/browsers/node_modules/debug/src/browser.js -third_party/devtools-frontend/src/node_modules/@puppeteer/browsers/node_modules/strip-ansi/package.json third_party/devtools-frontend/src/node_modules/@puppeteer/browsers/src/browser-data/browser-data.ts third_party/devtools-frontend/src/node_modules/@puppeteer/browsers/src/browser-data/chrome-headless-shell.ts third_party/devtools-frontend/src/node_modules/@puppeteer/browsers/src/browser-data/chrome.ts @@ -8293,7 +8436,6 @@ third_party/devtools-frontend/src/node_modules/@sinonjs/commons/types/prototypes third_party/devtools-frontend/src/node_modules/@sinonjs/samsam/lib/create-set.js third_party/devtools-frontend/src/node_modules/@sinonjs/samsam/lib/deep-equal.js third_party/devtools-frontend/src/node_modules/@sinonjs/samsam/types/create-set.d.ts -third_party/devtools-frontend/src/node_modules/@sinonjs/text-encoding/package.json third_party/devtools-frontend/src/node_modules/@tootallnate/quickjs-emscripten/dist/context.d.ts third_party/devtools-frontend/src/node_modules/@tootallnate/quickjs-emscripten/dist/context.js third_party/devtools-frontend/src/node_modules/@tootallnate/quickjs-emscripten/dist/index.d.ts @@ -8352,7 +8494,6 @@ third_party/devtools-frontend/src/node_modules/binary-extensions/package.json third_party/devtools-frontend/src/node_modules/body-parser/node_modules/debug/package.json third_party/devtools-frontend/src/node_modules/body-parser/node_modules/debug/src/browser.js third_party/devtools-frontend/src/node_modules/buffer-crc32/package.json -third_party/devtools-frontend/src/node_modules/buffer/index.js third_party/devtools-frontend/src/node_modules/bytes/package.json third_party/devtools-frontend/src/node_modules/call-bind/package.json third_party/devtools-frontend/src/node_modules/callsites/package.json @@ -8380,7 +8521,8 @@ third_party/devtools-frontend/src/node_modules/chromium-bidi/lib/esm/bidiMapper/ third_party/devtools-frontend/src/node_modules/chromium-bidi/lib/esm/bidiMapper/modules/network/NetworkRequest.js third_party/devtools-frontend/src/node_modules/chromium-bidi/lib/esm/bidiMapper/modules/storage/StorageProcessor.js third_party/devtools-frontend/src/node_modules/chromium-bidi/lib/esm/utils/uuid.js -third_party/devtools-frontend/src/node_modules/chromium-bidi/lib/iife/mapperTab.js +third_party/devtools-frontend/src/node_modules/cli-cursor/package.json +third_party/devtools-frontend/src/node_modules/cli-spinners/package.json third_party/devtools-frontend/src/node_modules/cliui/node_modules/ansi-regex/package.json third_party/devtools-frontend/src/node_modules/cliui/node_modules/strip-ansi/package.json third_party/devtools-frontend/src/node_modules/color-convert/package.json @@ -8428,10 +8570,6 @@ third_party/devtools-frontend/src/node_modules/debug/package.json third_party/devtools-frontend/src/node_modules/debug/src/browser.js third_party/devtools-frontend/src/node_modules/define-data-property/package.json third_party/devtools-frontend/src/node_modules/define-properties/package.json -third_party/devtools-frontend/src/node_modules/degenerator/node_modules/escodegen/bin/escodegen.js -third_party/devtools-frontend/src/node_modules/degenerator/node_modules/escodegen/bin/esgenerate.js -third_party/devtools-frontend/src/node_modules/degenerator/node_modules/escodegen/escodegen.js -third_party/devtools-frontend/src/node_modules/degenerator/node_modules/escodegen/package.json third_party/devtools-frontend/src/node_modules/devtools-protocol/json/browser_protocol.json third_party/devtools-frontend/src/node_modules/devtools-protocol/types/protocol-mapping.d.ts third_party/devtools-frontend/src/node_modules/devtools-protocol/types/protocol-proxy-api.d.ts @@ -8465,6 +8603,10 @@ third_party/devtools-frontend/src/node_modules/es-shim-unscopables/package.json third_party/devtools-frontend/src/node_modules/es-to-primitive/package.json third_party/devtools-frontend/src/node_modules/escalade/package.json third_party/devtools-frontend/src/node_modules/escape-string-regexp/package.json +third_party/devtools-frontend/src/node_modules/escodegen/bin/escodegen.js +third_party/devtools-frontend/src/node_modules/escodegen/bin/esgenerate.js +third_party/devtools-frontend/src/node_modules/escodegen/escodegen.js +third_party/devtools-frontend/src/node_modules/escodegen/package.json third_party/devtools-frontend/src/node_modules/eslint-import-resolver-node/node_modules/debug/package.json third_party/devtools-frontend/src/node_modules/eslint-import-resolver-node/node_modules/debug/src/browser.js third_party/devtools-frontend/src/node_modules/eslint-module-utils/node_modules/debug/package.json @@ -8529,6 +8671,7 @@ third_party/devtools-frontend/src/node_modules/function-bind/package.json third_party/devtools-frontend/src/node_modules/function.prototype.name/package.json third_party/devtools-frontend/src/node_modules/functions-have-names/package.json third_party/devtools-frontend/src/node_modules/gensync/package.json +third_party/devtools-frontend/src/node_modules/get-east-asian-width/package.json third_party/devtools-frontend/src/node_modules/get-intrinsic/package.json third_party/devtools-frontend/src/node_modules/get-stream/package.json third_party/devtools-frontend/src/node_modules/get-symbol-description/package.json @@ -8565,6 +8708,7 @@ third_party/devtools-frontend/src/node_modules/is-data-view/package.json third_party/devtools-frontend/src/node_modules/is-finalizationregistry/package.json third_party/devtools-frontend/src/node_modules/is-fullwidth-code-point/package.json third_party/devtools-frontend/src/node_modules/is-generator-function/package.json +third_party/devtools-frontend/src/node_modules/is-interactive/package.json third_party/devtools-frontend/src/node_modules/is-map/package.json third_party/devtools-frontend/src/node_modules/is-negative-zero/package.json third_party/devtools-frontend/src/node_modules/is-number-object/package.json @@ -8587,6 +8731,7 @@ third_party/devtools-frontend/src/node_modules/json-buffer/package.json third_party/devtools-frontend/src/node_modules/json5/package.json third_party/devtools-frontend/src/node_modules/jsonfile/package.json third_party/devtools-frontend/src/node_modules/karma-chrome-launcher/package.json +third_party/devtools-frontend/src/node_modules/karma-chrome-launcher/tools/update-contributors.js third_party/devtools-frontend/src/node_modules/karma-coverage/examples/coffee-requirejs/package.json third_party/devtools-frontend/src/node_modules/karma-coverage/examples/coffee/package.json third_party/devtools-frontend/src/node_modules/karma-coverage/package.json @@ -8639,17 +8784,14 @@ third_party/devtools-frontend/src/node_modules/mdn-data/css/types.schema.json third_party/devtools-frontend/src/node_modules/mdn-data/package.json third_party/devtools-frontend/src/node_modules/meow/build/index.d.ts third_party/devtools-frontend/src/node_modules/meow/package.json -third_party/devtools-frontend/src/node_modules/mocha/lib/browser/growl.js +third_party/devtools-frontend/src/node_modules/mimic-function/index.d.ts +third_party/devtools-frontend/src/node_modules/mimic-function/package.json third_party/devtools-frontend/src/node_modules/mocha/lib/runnable.js third_party/devtools-frontend/src/node_modules/mocha/lib/utils.js -third_party/devtools-frontend/src/node_modules/mocha/mocha-es2018.js third_party/devtools-frontend/src/node_modules/mocha/mocha.js -third_party/devtools-frontend/src/node_modules/mocha/node_modules/debug/package.json -third_party/devtools-frontend/src/node_modules/mocha/node_modules/debug/src/browser.js third_party/devtools-frontend/src/node_modules/mocha/node_modules/escape-string-regexp/package.json third_party/devtools-frontend/src/node_modules/mocha/node_modules/has-flag/package.json third_party/devtools-frontend/src/node_modules/mocha/node_modules/supports-color/package.json -third_party/devtools-frontend/src/node_modules/nise/nise.js third_party/devtools-frontend/src/node_modules/node-releases/package.json third_party/devtools-frontend/src/node_modules/normalize-package-data/package.json third_party/devtools-frontend/src/node_modules/normalize-path/index.js @@ -8659,6 +8801,14 @@ third_party/devtools-frontend/src/node_modules/object-keys/package.json third_party/devtools-frontend/src/node_modules/object.fromentries/package.json third_party/devtools-frontend/src/node_modules/object.groupby/package.json third_party/devtools-frontend/src/node_modules/object.values/package.json +third_party/devtools-frontend/src/node_modules/onetime/package.json +third_party/devtools-frontend/src/node_modules/ora/node_modules/ansi-regex/package.json +third_party/devtools-frontend/src/node_modules/ora/node_modules/is-unicode-supported/package.json +third_party/devtools-frontend/src/node_modules/ora/node_modules/log-symbols/node_modules/is-unicode-supported/package.json +third_party/devtools-frontend/src/node_modules/ora/node_modules/log-symbols/package.json +third_party/devtools-frontend/src/node_modules/ora/node_modules/string-width/package.json +third_party/devtools-frontend/src/node_modules/ora/node_modules/strip-ansi/package.json +third_party/devtools-frontend/src/node_modules/ora/package.json third_party/devtools-frontend/src/node_modules/os-homedir/package.json third_party/devtools-frontend/src/node_modules/os-tmpdir/package.json third_party/devtools-frontend/src/node_modules/p-limit/package.json @@ -8809,13 +8959,13 @@ third_party/devtools-frontend/src/node_modules/qs/package.json third_party/devtools-frontend/src/node_modules/randombytes/browser.js third_party/devtools-frontend/src/node_modules/raw-body/package.json third_party/devtools-frontend/src/node_modules/reflect.getprototypeof/package.json -third_party/devtools-frontend/src/node_modules/regenerator-runtime/runtime.js third_party/devtools-frontend/src/node_modules/regexp.prototype.flags/package.json third_party/devtools-frontend/src/node_modules/require-directory/package.json third_party/devtools-frontend/src/node_modules/require-from-string/package.json third_party/devtools-frontend/src/node_modules/requires-port/test.js third_party/devtools-frontend/src/node_modules/resolve-from/package.json third_party/devtools-frontend/src/node_modules/resolve/lib/caller.js +third_party/devtools-frontend/src/node_modules/restore-cursor/package.json third_party/devtools-frontend/src/node_modules/rollup/dist/es/shared/node-entry.js third_party/devtools-frontend/src/node_modules/rollup/dist/es/shared/watch.js third_party/devtools-frontend/src/node_modules/rollup/dist/shared/index.js @@ -8864,13 +9014,19 @@ third_party/devtools-frontend/src/node_modules/source-map/lib/base64-vlq.js third_party/devtools-frontend/src/node_modules/source-map/lib/source-map-consumer.js third_party/devtools-frontend/src/node_modules/source-map/package.json third_party/devtools-frontend/src/node_modules/spdx-correct/package.json +third_party/devtools-frontend/src/node_modules/stdin-discarder/package.json third_party/devtools-frontend/src/node_modules/streamroller/package.json +third_party/devtools-frontend/src/node_modules/string-width-cjs/node_modules/ansi-regex/package.json +third_party/devtools-frontend/src/node_modules/string-width-cjs/node_modules/strip-ansi/package.json +third_party/devtools-frontend/src/node_modules/string-width-cjs/package.json third_party/devtools-frontend/src/node_modules/string-width/node_modules/ansi-regex/package.json third_party/devtools-frontend/src/node_modules/string-width/node_modules/strip-ansi/package.json third_party/devtools-frontend/src/node_modules/string-width/package.json third_party/devtools-frontend/src/node_modules/string.prototype.trim/package.json third_party/devtools-frontend/src/node_modules/string.prototype.trimend/package.json third_party/devtools-frontend/src/node_modules/string.prototype.trimstart/package.json +third_party/devtools-frontend/src/node_modules/strip-ansi-cjs/node_modules/ansi-regex/package.json +third_party/devtools-frontend/src/node_modules/strip-ansi-cjs/package.json third_party/devtools-frontend/src/node_modules/strip-ansi/package.json third_party/devtools-frontend/src/node_modules/strip-bom/package.json third_party/devtools-frontend/src/node_modules/strip-json-comments/package.json @@ -8935,9 +9091,7 @@ third_party/devtools-frontend/src/node_modules/terser/lib/sourcemap.js third_party/devtools-frontend/src/node_modules/terser/lib/transform.js third_party/devtools-frontend/src/node_modules/terser/lib/utils/index.js third_party/devtools-frontend/src/node_modules/terser/package.json -third_party/devtools-frontend/src/node_modules/through/package.json third_party/devtools-frontend/src/node_modules/tmp/package.json -third_party/devtools-frontend/src/node_modules/to-fast-properties/package.json third_party/devtools-frontend/src/node_modules/toidentifier/package.json third_party/devtools-frontend/src/node_modules/treeify/package.json third_party/devtools-frontend/src/node_modules/treeify/treeify.js @@ -8978,7 +9132,6 @@ third_party/devtools-frontend/src/node_modules/typescript/lib/zh-cn/diagnosticMe third_party/devtools-frontend/src/node_modules/typescript/lib/zh-tw/diagnosticMessages.generated.json third_party/devtools-frontend/src/node_modules/ua-parser-js/package.json third_party/devtools-frontend/src/node_modules/unbox-primitive/package.json -third_party/devtools-frontend/src/node_modules/unbzip2-stream/lib/bzip2.js third_party/devtools-frontend/src/node_modules/undici-types/file.d.ts third_party/devtools-frontend/src/node_modules/undici-types/formdata.d.ts third_party/devtools-frontend/src/node_modules/uri-js/dist/es5/uri.all.js @@ -8997,8 +9150,6 @@ third_party/devtools-frontend/src/node_modules/vscode-html-languageservice/lib/u third_party/devtools-frontend/src/node_modules/vscode-html-languageservice/lib/umd/beautify/beautify-html.js third_party/devtools-frontend/src/node_modules/vscode-html-languageservice/lib/umd/languageFacts/data/webCustomData.js third_party/devtools-frontend/src/node_modules/vscode-languageserver-textdocument/thirdpartynotices.txt -third_party/devtools-frontend/src/node_modules/web-component-analyzer/node_modules/ansi-regex/package.json -third_party/devtools-frontend/src/node_modules/web-component-analyzer/node_modules/strip-ansi/package.json third_party/devtools-frontend/src/node_modules/web-component-analyzer/node_modules/typescript/lib/cs/diagnosticMessages.generated.json third_party/devtools-frontend/src/node_modules/web-component-analyzer/node_modules/typescript/lib/de/diagnosticMessages.generated.json third_party/devtools-frontend/src/node_modules/web-component-analyzer/node_modules/typescript/lib/es/diagnosticMessages.generated.json @@ -9036,6 +9187,12 @@ third_party/devtools-frontend/src/node_modules/workerpool/dist/workerpool.js third_party/devtools-frontend/src/node_modules/workerpool/dist/workerpool.min.js.LICENSE.txt third_party/devtools-frontend/src/node_modules/workerpool/package.json third_party/devtools-frontend/src/node_modules/workerpool/src/header.js +third_party/devtools-frontend/src/node_modules/wrap-ansi-cjs/node_modules/ansi-regex/package.json +third_party/devtools-frontend/src/node_modules/wrap-ansi-cjs/node_modules/ansi-styles/package.json +third_party/devtools-frontend/src/node_modules/wrap-ansi-cjs/node_modules/color-convert/package.json +third_party/devtools-frontend/src/node_modules/wrap-ansi-cjs/node_modules/color-name/package.json +third_party/devtools-frontend/src/node_modules/wrap-ansi-cjs/node_modules/strip-ansi/package.json +third_party/devtools-frontend/src/node_modules/wrap-ansi-cjs/package.json third_party/devtools-frontend/src/node_modules/wrap-ansi/node_modules/ansi-regex/package.json third_party/devtools-frontend/src/node_modules/wrap-ansi/node_modules/ansi-styles/package.json third_party/devtools-frontend/src/node_modules/wrap-ansi/node_modules/color-convert/package.json @@ -9045,6 +9202,8 @@ third_party/devtools-frontend/src/node_modules/wrap-ansi/package.json third_party/devtools-frontend/src/node_modules/ws/package.json third_party/devtools-frontend/src/node_modules/y18n/package.json third_party/devtools-frontend/src/node_modules/yargs-unparser/node_modules/decamelize/package.json +third_party/devtools-frontend/src/node_modules/yargs/node_modules/ansi-regex/package.json +third_party/devtools-frontend/src/node_modules/yargs/node_modules/strip-ansi/package.json third_party/devtools-frontend/src/node_modules/yauzl/package.json third_party/devtools-frontend/src/node_modules/yocto-queue/index.d.ts third_party/devtools-frontend/src/node_modules/yocto-queue/package.json @@ -9053,7 +9212,9 @@ third_party/devtools-frontend/src/scripts/build/compress_files.js third_party/devtools-frontend/src/scripts/check_external_links.js third_party/devtools-frontend/src/scripts/deps/download_emscripten.py third_party/devtools-frontend/src/scripts/deps/roll_to_chromium.py -third_party/devtools-frontend/src/scripts/eslint_rules/lib/no-customized-builtin-elements.js +third_party/devtools-frontend/src/scripts/eslint_rules/lib/no-customized-builtin-elements.ts +third_party/devtools-frontend/src/scripts/eslint_rules/lib/utils/ruleCreator.ts +third_party/devtools-frontend/src/scripts/eslint_rules/tests/no-imperative-dom-api.test.ts third_party/devtools-frontend/src/scripts/hosted_mode/server.js third_party/devtools-frontend/src/scripts/tools/update_goldens.py third_party/devtools-frontend/src/test/conductor/resultsdb.ts @@ -9087,6 +9248,10 @@ third_party/domato/src/rules/jshelpers.txt third_party/domato/src/svg_tags.py third_party/domato/src/vbscript/generator.py third_party/domato/src/webgl/generator.py +third_party/dragonbox/src/include/dragonbox/dragonbox.h +third_party/dragonbox/src/other_files/unknown_win64_vc2019.html +third_party/dragonbox/src/subproject/3rdparty/schubfach/schubfach_32.cc +third_party/dragonbox/src/subproject/3rdparty/schubfach/schubfach_64.cc third_party/eigen3/src/Eigen/src/Cholesky/LDLT.h third_party/eigen3/src/Eigen/src/Cholesky/LLT.h third_party/eigen3/src/Eigen/src/CholmodSupport/CholmodSupport.h @@ -9172,10 +9337,12 @@ third_party/eigen3/src/Eigen/src/Core/arch/AVX/TypeCasting.h third_party/eigen3/src/Eigen/src/Core/arch/AVX512/Complex.h third_party/eigen3/src/Eigen/src/Core/arch/AVX512/GemmKernel.h third_party/eigen3/src/Eigen/src/Core/arch/AVX512/MathFunctions.h +third_party/eigen3/src/Eigen/src/Core/arch/AVX512/MathFunctionsFP16.h third_party/eigen3/src/Eigen/src/Core/arch/AVX512/PacketMath.h third_party/eigen3/src/Eigen/src/Core/arch/AVX512/PacketMathFP16.h third_party/eigen3/src/Eigen/src/Core/arch/AVX512/TrsmKernel.h third_party/eigen3/src/Eigen/src/Core/arch/AVX512/TypeCasting.h +third_party/eigen3/src/Eigen/src/Core/arch/AVX512/TypeCastingFP16.h third_party/eigen3/src/Eigen/src/Core/arch/AltiVec/Complex.h third_party/eigen3/src/Eigen/src/Core/arch/AltiVec/MathFunctions.h third_party/eigen3/src/Eigen/src/Core/arch/AltiVec/MatrixProduct.h @@ -9438,6 +9605,7 @@ third_party/eigen3/src/lapack/lapack_common.h third_party/eigen3/src/lapack/second_INT_CPU_TIME.cpp third_party/eigen3/src/lapack/single.cpp third_party/eigen3/src/test/AnnoyingScalar.h +third_party/eigen3/src/test/CustomComplex.h third_party/eigen3/src/test/MovableScalar.h third_party/eigen3/src/test/adjoint.cpp third_party/eigen3/src/test/array_cwise.cpp @@ -9521,6 +9689,7 @@ third_party/eigen3/src/test/nomalloc.cpp third_party/eigen3/src/test/nullary.cpp third_party/eigen3/src/test/num_dimensions.cpp third_party/eigen3/src/test/numext.cpp +third_party/eigen3/src/test/packet_segment.cpp third_party/eigen3/src/test/packetmath.cpp third_party/eigen3/src/test/packetmath_test_shared.h third_party/eigen3/src/test/pastix_support.cpp @@ -9849,6 +10018,7 @@ third_party/eigen3/src/unsupported/test/special_functions.cpp third_party/eigen3/src/unsupported/test/special_packetmath.cpp third_party/eigen3/src/unsupported/test/splines.cpp third_party/expat/src/expat/CMakeLists.txt +third_party/expat/src/expat/fuzz/xml_lpm_fuzzer.cpp third_party/expat/src/expat/lib/expat_external.h third_party/expat/src/expat/lib/internal.h third_party/expat/src/expat/lib/xmlparse.c @@ -9857,6 +10027,7 @@ third_party/expat/src/expat/lib/xmltok_impl.c third_party/expat/src/expat/tests/acc_tests.c third_party/expat/src/expat/xmlwf/readfilemap.c third_party/expat/src/expat/xmlwf/win32filemap.c +third_party/expat/src/expat/xmlwf/xmlfile.c third_party/expat/src/expat/xmlwf/xmlwf.c third_party/farmhash/src/dev/builder.cc third_party/farmhash/src/dev/farmhash.h @@ -10241,7 +10412,10 @@ third_party/ffmpeg/libavutil/tests/random_seed.c third_party/ffmpeg/libavutil/tests/side_data_array.c third_party/ffmpeg/libavutil/timecode.c third_party/ffmpeg/libavutil/timecode.h +third_party/ffmpeg/libavutil/timecode_internal.c +third_party/ffmpeg/libavutil/timecode_internal.h third_party/ffmpeg/libavutil/tx.c +third_party/ffmpeg/libavutil/x86/aes_init.c third_party/ffmpeg/libavutil/x86/w64xmmtest.h third_party/ffmpeg/libswscale/arm/swscale_unscaled.c third_party/ffmpeg/libswscale/gamma.c @@ -10249,6 +10423,7 @@ third_party/ffmpeg/libswscale/hscale.c third_party/ffmpeg/libswscale/slice.c third_party/ffmpeg/libswscale/vscale.c third_party/ffmpeg/libswscale/x86/w64xmmtest.c +third_party/ffmpeg/tests/checkasm/aes.c third_party/ffmpeg/tests/checkasm/hevc_sao.c third_party/ffmpeg/tests/checkasm/vf_colorspace.c third_party/ffmpeg/tests/checkasm/videodsp.c @@ -10265,6 +10440,7 @@ third_party/flatbuffers/src/docs/header.html third_party/flatbuffers/src/java/pom.xml third_party/flatbuffers/src/python/setup.py third_party/flatbuffers/src/src/idl_gen_csharp.cpp +third_party/fontconfig/src/build-aux/fetch-testfonts.py third_party/fontconfig/src/src/fcfreetype.c third_party/fp16/src/third-party/eigen-half.h third_party/freetype-testing/src/fuzzing/src/utils/utils.cpp @@ -10279,21 +10455,21 @@ third_party/freetype/src/include/freetype/ftdriver.h third_party/freetype/src/include/freetype/ftimage.h third_party/freetype/src/include/freetype/ftwinfnt.h third_party/freetype/src/include/freetype/ttnameid.h +third_party/freetype/src/src/autofit/afadjust.c +third_party/freetype/src/src/autofit/afadjust.h third_party/freetype/src/src/autofit/afindic.c third_party/freetype/src/src/autofit/afindic.h -third_party/freetype/src/src/base/ftbase.h +third_party/freetype/src/src/autofit/hb-script-list.h third_party/freetype/src/src/sfnt/sfobjs.c third_party/freetype/src/src/sfnt/ttcmap.c third_party/freetype/src/src/sfnt/ttcolr.c third_party/freetype/src/src/sfnt/ttcpal.c third_party/freetype/src/src/sfnt/ttgpos.c third_party/freetype/src/src/sfnt/ttsvg.c -third_party/freetype/src/src/truetype/ttgxvar.c third_party/freetype/src/src/truetype/ttinterp.h third_party/fuchsia-gn-sdk/src/gen_fidl_response_file.py third_party/fuchsia-gn-sdk/src/gn_configs.gni third_party/fuchsia-gn-sdk/src/prepare_package_inputs.py -third_party/fuzztest/src/centipede/environment.h third_party/fuzztest/src/centipede/runner_fork_server.cc third_party/fuzztest/src/centipede/testing/test_fuzz_target.cc third_party/fuzztest/src/fuzztest/internal/centipede_adaptor.cc @@ -10302,26 +10478,16 @@ third_party/gemmlowp/src/standalone/neon-gemm-kernel-benchmark.cc third_party/glslang/src/glslang/HLSL/hlslParseHelper.cpp third_party/google-closure-library/closure-deps/lib/jsfile_parser.js third_party/google-closure-library/closure-deps/package.json -third_party/google-closure-library/closure/bin/build/closurebuilder.py -third_party/google-closure-library/closure/bin/build/depstree.py -third_party/google-closure-library/closure/bin/build/depstree_test.py third_party/google-closure-library/closure/bin/build/depswriter.py -third_party/google-closure-library/closure/bin/build/depswriter_test.py -third_party/google-closure-library/closure/bin/build/jscompiler.py -third_party/google-closure-library/closure/bin/build/jscompiler_test.py third_party/google-closure-library/closure/bin/build/source.py -third_party/google-closure-library/closure/bin/build/source_test.py third_party/google-closure-library/closure/bin/build/treescan.py -third_party/google-closure-library/closure/bin/generate_closure_unit_tests/package.json third_party/google-closure-library/closure/bin/labs/code/generate_jsdoc_test.py -third_party/google-closure-library/closure/css/inlay/g-base.css -third_party/google-closure-library/closure/css/inlay/g-fixed.css -third_party/google-closure-library/closure/css/inlay/g-ratio.css third_party/google-closure-library/closure/goog/async/nexttick.js third_party/google-closure-library/closure/goog/base.js third_party/google-closure-library/closure/goog/base_debug_loader_test.js third_party/google-closure-library/closure/goog/collections/iters.js third_party/google-closure-library/closure/goog/crypt/arc4.js +third_party/google-closure-library/closure/goog/crypt/base64.js third_party/google-closure-library/closure/goog/crypt/blobhasher.js third_party/google-closure-library/closure/goog/crypt/crypt.js third_party/google-closure-library/closure/goog/crypt/crypt_test.js @@ -10347,13 +10513,9 @@ third_party/google-closure-library/closure/goog/css/toolbar.css third_party/google-closure-library/closure/goog/css/tree.css third_party/google-closure-library/closure/goog/css/tristatemenuitem.css third_party/google-closure-library/closure/goog/cssom/cssom.js -third_party/google-closure-library/closure/goog/datasource/expr_test.js -third_party/google-closure-library/closure/goog/datasource/fastdatanode_test.js -third_party/google-closure-library/closure/goog/datasource/jsondatasource.js +third_party/google-closure-library/closure/goog/date/date.js +third_party/google-closure-library/closure/goog/debug/asyncstacktag.js third_party/google-closure-library/closure/goog/debug/errorhandler.js -third_party/google-closure-library/closure/goog/debug/fpsdisplay.js -third_party/google-closure-library/closure/goog/debug/logger.js -third_party/google-closure-library/closure/goog/demos/autocompleterichremotedata.js third_party/google-closure-library/closure/goog/demos/autocompleterichremotedata.json third_party/google-closure-library/closure/goog/demos/css/demo.css third_party/google-closure-library/closure/goog/demos/css/emojipicker.css @@ -10366,24 +10528,19 @@ third_party/google-closure-library/closure/goog/demos/history2.html third_party/google-closure-library/closure/goog/demos/history3.html third_party/google-closure-library/closure/goog/demos/hovercard.html third_party/google-closure-library/closure/goog/demos/splitpane.html -third_party/google-closure-library/closure/goog/deps.js third_party/google-closure-library/closure/goog/dom/animationframe/animationframe.js third_party/google-closure-library/closure/goog/dom/browserfeature.js third_party/google-closure-library/closure/goog/dom/browserrange/geckorange.js third_party/google-closure-library/closure/goog/dom/browserrange/w3crange.js -third_party/google-closure-library/closure/goog/dom/controlrange_test.html third_party/google-closure-library/closure/goog/dom/controlrange_test_dom.html third_party/google-closure-library/closure/goog/dom/dom.js third_party/google-closure-library/closure/goog/dom/dom_test.js third_party/google-closure-library/closure/goog/dom/forms.js -third_party/google-closure-library/closure/goog/dom/range_test.html third_party/google-closure-library/closure/goog/dom/range_test.js third_party/google-closure-library/closure/goog/dom/range_test_dom.html -third_party/google-closure-library/closure/goog/dom/textrange_test.html third_party/google-closure-library/closure/goog/dom/textrange_test_dom.html third_party/google-closure-library/closure/goog/dom/uri_test.js third_party/google-closure-library/closure/goog/dom/xml.js -third_party/google-closure-library/closure/goog/editor/clicktoeditwrapper_test.html third_party/google-closure-library/closure/goog/editor/clicktoeditwrapper_test_dom.html third_party/google-closure-library/closure/goog/editor/contenteditablefield.js third_party/google-closure-library/closure/goog/editor/field.js @@ -10392,14 +10549,11 @@ third_party/google-closure-library/closure/goog/editor/link_test.js third_party/google-closure-library/closure/goog/editor/node_test.js third_party/google-closure-library/closure/goog/editor/plugins/abstractbubbleplugin_test.js third_party/google-closure-library/closure/goog/editor/plugins/basictextformatter.js -third_party/google-closure-library/closure/goog/editor/plugins/basictextformatter_test.html third_party/google-closure-library/closure/goog/editor/plugins/basictextformatter_test.js third_party/google-closure-library/closure/goog/editor/plugins/basictextformatter_test_dom.html -third_party/google-closure-library/closure/goog/editor/plugins/linkbubble_test.html third_party/google-closure-library/closure/goog/editor/plugins/linkbubble_test.js third_party/google-closure-library/closure/goog/editor/plugins/linkbubble_test_dom.html third_party/google-closure-library/closure/goog/editor/plugins/linkdialogplugin_test.js -third_party/google-closure-library/closure/goog/editor/plugins/linkshortcutplugin_test.html third_party/google-closure-library/closure/goog/editor/plugins/linkshortcutplugin_test.js third_party/google-closure-library/closure/goog/editor/plugins/linkshortcutplugin_test_dom.html third_party/google-closure-library/closure/goog/editor/plugins/removeformatting_test.js @@ -10416,13 +10570,13 @@ third_party/google-closure-library/closure/goog/events/keycodes.js third_party/google-closure-library/closure/goog/events/keyhandler.js third_party/google-closure-library/closure/goog/events/keys.js third_party/google-closure-library/closure/goog/events/mousewheelhandler.js +third_party/google-closure-library/closure/goog/events/onlinehandler.js third_party/google-closure-library/closure/goog/format/emailaddress.js third_party/google-closure-library/closure/goog/format/emailaddress_test.js third_party/google-closure-library/closure/goog/format/internationalizedemailaddress_test.js third_party/google-closure-library/closure/goog/fs/blob.js third_party/google-closure-library/closure/goog/fx/anim/anim.js third_party/google-closure-library/closure/goog/graphics/svggraphics_test.js -third_party/google-closure-library/closure/goog/html/flash_test.js third_party/google-closure-library/closure/goog/html/legacyconversions_test.js third_party/google-closure-library/closure/goog/html/safehtml.js third_party/google-closure-library/closure/goog/html/safehtml_test.js @@ -10434,15 +10588,17 @@ third_party/google-closure-library/closure/goog/html/sanitizer/csssanitizer_test third_party/google-closure-library/closure/goog/html/sanitizer/html_test_vectors.js third_party/google-closure-library/closure/goog/html/sanitizer/htmlsanitizer_test.js third_party/google-closure-library/closure/goog/html/sanitizer/tagblacklist.js -third_party/google-closure-library/closure/goog/html/silverlight_test.js third_party/google-closure-library/closure/goog/html/trustedresourceurl.js third_party/google-closure-library/closure/goog/html/trustedresourceurl_test.js third_party/google-closure-library/closure/goog/i18n/bidi_test.js third_party/google-closure-library/closure/goog/i18n/collation.js third_party/google-closure-library/closure/goog/i18n/collation_test.js +third_party/google-closure-library/closure/goog/i18n/dateintervalformat.js +third_party/google-closure-library/closure/goog/i18n/datetimeformat.js +third_party/google-closure-library/closure/goog/i18n/externs_test.js +third_party/google-closure-library/closure/goog/i18n/listformat.js third_party/google-closure-library/closure/goog/i18n/localefeature.js third_party/google-closure-library/closure/goog/iter/iter.js -third_party/google-closure-library/closure/goog/labs/collections/iterables.js third_party/google-closure-library/closure/goog/labs/net/image.js third_party/google-closure-library/closure/goog/labs/net/webchannel.js third_party/google-closure-library/closure/goog/labs/net/webchannel/channel.js @@ -10455,6 +10611,7 @@ third_party/google-closure-library/closure/goog/labs/net/xhr.js third_party/google-closure-library/closure/goog/labs/net/xhr_test.js third_party/google-closure-library/closure/goog/labs/useragent/browser.js third_party/google-closure-library/closure/goog/labs/useragent/engine.js +third_party/google-closure-library/closure/goog/labs/useragent/platform.js third_party/google-closure-library/closure/goog/labs/useragent/test_agents.js third_party/google-closure-library/closure/goog/messaging/portchannel_test.js third_party/google-closure-library/closure/goog/module/moduleloader.js @@ -10467,7 +10624,6 @@ third_party/google-closure-library/closure/goog/net/cookies_test.js third_party/google-closure-library/closure/goog/net/crossdomainrpc_test.js third_party/google-closure-library/closure/goog/net/fetchxmlhttpfactory.js third_party/google-closure-library/closure/goog/net/fetchxmlhttpfactory_test.js -third_party/google-closure-library/closure/goog/net/iframeio_test.html third_party/google-closure-library/closure/goog/net/iframeio_test_dom.html third_party/google-closure-library/closure/goog/net/imageloader.js third_party/google-closure-library/closure/goog/net/ipaddress.js @@ -10479,14 +10635,13 @@ third_party/google-closure-library/closure/goog/net/tmpnetwork.js third_party/google-closure-library/closure/goog/net/xhrio.js third_party/google-closure-library/closure/goog/net/xhrlike.js third_party/google-closure-library/closure/goog/net/xmlhttp.js -third_party/google-closure-library/closure/goog/net/xpc/iframepollingtransport_test.js third_party/google-closure-library/closure/goog/positioning/positioning_test.js third_party/google-closure-library/closure/goog/proto2/textformatserializer.js third_party/google-closure-library/closure/goog/reflect/reflect.js third_party/google-closure-library/closure/goog/soy/data_test.js third_party/google-closure-library/closure/goog/soy/soy_testhelper.js third_party/google-closure-library/closure/goog/storage/mechanism/ieuserdata.js -third_party/google-closure-library/closure/goog/storage/mechanism/mechanismtester.js +third_party/google-closure-library/closure/goog/storage/mechanism/mechanismtests.js third_party/google-closure-library/closure/goog/string/linkify.js third_party/google-closure-library/closure/goog/string/linkify_test.js third_party/google-closure-library/closure/goog/string/newlines.js @@ -10504,7 +10659,6 @@ third_party/google-closure-library/closure/goog/testing/stacktrace.js third_party/google-closure-library/closure/goog/testing/stacktrace_test.js third_party/google-closure-library/closure/goog/testing/testcase.js third_party/google-closure-library/closure/goog/timer/timer.js -third_party/google-closure-library/closure/goog/transpile.js third_party/google-closure-library/closure/goog/tweak/tweak.js third_party/google-closure-library/closure/goog/ui/ac/autocomplete_test.js third_party/google-closure-library/closure/goog/ui/ac/inputhandler.js @@ -10517,17 +10671,8 @@ third_party/google-closure-library/closure/goog/ui/editor/bubble_test.js third_party/google-closure-library/closure/goog/ui/editor/linkdialog.js third_party/google-closure-library/closure/goog/ui/editor/linkdialog_test.js third_party/google-closure-library/closure/goog/ui/editor/messages.js -third_party/google-closure-library/closure/goog/ui/hovercard_test.html third_party/google-closure-library/closure/goog/ui/hovercard_test_dom.html -third_party/google-closure-library/closure/goog/ui/keyboardshortcuthandler_test.html third_party/google-closure-library/closure/goog/ui/keyboardshortcuthandler_test_dom.html -third_party/google-closure-library/closure/goog/ui/media/flashobject.js -third_party/google-closure-library/closure/goog/ui/media/flashobject_test.js -third_party/google-closure-library/closure/goog/ui/media/googlevideo.js -third_party/google-closure-library/closure/goog/ui/media/googlevideo_test.js -third_party/google-closure-library/closure/goog/ui/media/mp3.js -third_party/google-closure-library/closure/goog/ui/media/picasa.js -third_party/google-closure-library/closure/goog/ui/media/picasa_test.js third_party/google-closure-library/closure/goog/ui/media/youtube.js third_party/google-closure-library/closure/goog/ui/media/youtube_test.js third_party/google-closure-library/closure/goog/ui/menu.js @@ -10544,7 +10689,6 @@ third_party/google-closure-library/closure/goog/url/url.js third_party/google-closure-library/closure/goog/url/url_test.js third_party/google-closure-library/closure/goog/useragent/product_test.js third_party/google-closure-library/closure/goog/window/window.js -third_party/google-closure-library/closure/goog/window/window_test.html third_party/google-closure-library/closure/goog/window/window_test.js third_party/google-closure-library/closure/goog/window/window_test_dom.html third_party/google-closure-library/doc/_layouts/article.html @@ -10641,35 +10785,258 @@ third_party/googletest/src/googletest/test/gtest_skip_test.cc third_party/grpc/source/include/grpc/grpc.h third_party/grpc/source/include/grpc/grpc_security_constants.h third_party/grpc/source/include/grpc/support/port_platform.h -third_party/grpc/source/include/grpcpp/create_channel_binder.h -third_party/grpc/source/include/grpcpp/security/binder_security_policy.h third_party/grpc/source/include/grpcpp/support/proto_buffer_reader.h third_party/grpc/source/include/grpcpp/support/proto_buffer_writer.h -third_party/grpc/source/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc -third_party/grpc/source/src/core/ext/transport/binder/security_policy/security_policy.h -third_party/grpc/source/src/core/ext/xds/google_mesh_ca_certificate_provider_factory.cc -third_party/grpc/source/src/core/ext/xds/xds_api.cc -third_party/grpc/source/src/core/ext/xds/xds_cluster.cc +third_party/grpc/source/src/compiler/csharp_generator.cc third_party/grpc/source/src/core/lib/event_engine/windows/iocp.cc -third_party/grpc/source/src/core/lib/gpr/string.h -third_party/grpc/source/src/core/lib/gprpp/status_helper.cc -third_party/grpc/source/src/core/lib/gprpp/time.h third_party/grpc/source/src/core/lib/iomgr/socket_windows.cc -third_party/grpc/source/src/core/lib/json/json_object_loader.cc -third_party/grpc/source/src/core/lib/json/json_util.h third_party/grpc/source/src/core/lib/security/authorization/cel_authorization_engine.h third_party/grpc/source/src/core/lib/security/credentials/credentials.h third_party/grpc/source/src/core/lib/security/credentials/external/external_account_credentials.cc third_party/grpc/source/src/core/lib/security/credentials/google_default/google_default_credentials.cc third_party/grpc/source/src/core/lib/security/credentials/jwt/json_token.h third_party/grpc/source/src/core/lib/security/credentials/jwt/jwt_verifier.h -third_party/grpc/source/src/core/lib/security/security_connector/ssl_utils_config.cc -third_party/grpc/source/src/core/lib/service_config/service_config.h -third_party/grpc/source/src/core/lib/service_config/service_config_impl.h +third_party/grpc/source/src/core/resolver/google_c2p/google_c2p_resolver.cc +third_party/grpc/source/src/core/service_config/service_config.h +third_party/grpc/source/src/core/service_config/service_config_impl.h +third_party/grpc/source/src/core/util/json/json_object_loader.cc +third_party/grpc/source/src/core/util/json/json_util.h +third_party/grpc/source/src/core/util/status_helper.cc +third_party/grpc/source/src/core/util/string.h +third_party/grpc/source/src/core/util/time.h +third_party/grpc/source/src/core/util/windows/directory_reader.cc +third_party/grpc/source/src/core/xds/grpc/xds_cluster_parser.cc +third_party/grpc/source/src/core/xds/xds_client/xds_client.cc +third_party/grpc/source/src/cpp/ext/csm/csm_observability.cc third_party/grpc/source/src/cpp/ext/gcp/observability.cc third_party/grpc/source/src/cpp/ext/gcp/observability_logging_sink.cc -third_party/grpc/source/third_party/upb/python/message.c -third_party/grpc/source/third_party/upb/upbc/protoc-gen-upbdefs.cc +third_party/grpc/source/src/python/grpcio_observability/grpc_observability/python_observability_context.cc +third_party/grpc/source/third_party/upb/upb/base/descriptor_constants.h +third_party/grpc/source/third_party/upb/upb/base/internal/endian.h +third_party/grpc/source/third_party/upb/upb/base/internal/log2.h +third_party/grpc/source/third_party/upb/upb/base/status.c +third_party/grpc/source/third_party/upb/upb/base/status.h +third_party/grpc/source/third_party/upb/upb/base/status.hpp +third_party/grpc/source/third_party/upb/upb/base/string_view.h +third_party/grpc/source/third_party/upb/upb/base/upcast.h +third_party/grpc/source/third_party/upb/upb/conformance/conformance_upb.c +third_party/grpc/source/third_party/upb/upb/generated_code_support.h +third_party/grpc/source/third_party/upb/upb/hash/common.c +third_party/grpc/source/third_party/upb/upb/hash/common.h +third_party/grpc/source/third_party/upb/upb/hash/int_table.h +third_party/grpc/source/third_party/upb/upb/hash/str_table.h +third_party/grpc/source/third_party/upb/upb/hash/test.cc +third_party/grpc/source/third_party/upb/upb/io/chunked_input_stream.c +third_party/grpc/source/third_party/upb/upb/io/chunked_input_stream.h +third_party/grpc/source/third_party/upb/upb/io/chunked_output_stream.c +third_party/grpc/source/third_party/upb/upb/io/chunked_output_stream.h +third_party/grpc/source/third_party/upb/upb/io/string.h +third_party/grpc/source/third_party/upb/upb/io/string_test.cc +third_party/grpc/source/third_party/upb/upb/io/tokenizer.c +third_party/grpc/source/third_party/upb/upb/io/tokenizer.h +third_party/grpc/source/third_party/upb/upb/io/tokenizer_test.cc +third_party/grpc/source/third_party/upb/upb/io/zero_copy_input_stream.h +third_party/grpc/source/third_party/upb/upb/io/zero_copy_output_stream.h +third_party/grpc/source/third_party/upb/upb/io/zero_copy_stream_test.cc +third_party/grpc/source/third_party/upb/upb/json/decode.c +third_party/grpc/source/third_party/upb/upb/json/decode.h +third_party/grpc/source/third_party/upb/upb/json/decode_test.cc +third_party/grpc/source/third_party/upb/upb/json/encode.c +third_party/grpc/source/third_party/upb/upb/json/encode.h +third_party/grpc/source/third_party/upb/upb/json/encode_test.cc +third_party/grpc/source/third_party/upb/upb/json/fuzz_test.cc +third_party/grpc/source/third_party/upb/upb/lex/atoi.c +third_party/grpc/source/third_party/upb/upb/lex/atoi.h +third_party/grpc/source/third_party/upb/upb/lex/atoi_test.cc +third_party/grpc/source/third_party/upb/upb/lex/round_trip.c +third_party/grpc/source/third_party/upb/upb/lex/round_trip.h +third_party/grpc/source/third_party/upb/upb/lex/strtod.c +third_party/grpc/source/third_party/upb/upb/lex/strtod.h +third_party/grpc/source/third_party/upb/upb/lex/unicode.c +third_party/grpc/source/third_party/upb/upb/lex/unicode.h +third_party/grpc/source/third_party/upb/upb/mem/alloc.c +third_party/grpc/source/third_party/upb/upb/mem/alloc.h +third_party/grpc/source/third_party/upb/upb/mem/arena.c +third_party/grpc/source/third_party/upb/upb/mem/arena.h +third_party/grpc/source/third_party/upb/upb/mem/arena.hpp +third_party/grpc/source/third_party/upb/upb/mem/arena_test.cc +third_party/grpc/source/third_party/upb/upb/mem/internal/arena.h +third_party/grpc/source/third_party/upb/upb/message/accessors.c +third_party/grpc/source/third_party/upb/upb/message/accessors.h +third_party/grpc/source/third_party/upb/upb/message/accessors_split64.h +third_party/grpc/source/third_party/upb/upb/message/accessors_test.cc +third_party/grpc/source/third_party/upb/upb/message/array.c +third_party/grpc/source/third_party/upb/upb/message/array.h +third_party/grpc/source/third_party/upb/upb/message/array_test.cc +third_party/grpc/source/third_party/upb/upb/message/compare.c +third_party/grpc/source/third_party/upb/upb/message/compare.h +third_party/grpc/source/third_party/upb/upb/message/compat.c +third_party/grpc/source/third_party/upb/upb/message/compat.h +third_party/grpc/source/third_party/upb/upb/message/copy.c +third_party/grpc/source/third_party/upb/upb/message/copy.h +third_party/grpc/source/third_party/upb/upb/message/copy_test.cc +third_party/grpc/source/third_party/upb/upb/message/internal/accessors.h +third_party/grpc/source/third_party/upb/upb/message/internal/array.h +third_party/grpc/source/third_party/upb/upb/message/internal/compare_unknown.c +third_party/grpc/source/third_party/upb/upb/message/internal/compare_unknown.h +third_party/grpc/source/third_party/upb/upb/message/internal/compare_unknown_test.cc +third_party/grpc/source/third_party/upb/upb/message/internal/extension.c +third_party/grpc/source/third_party/upb/upb/message/internal/extension.h +third_party/grpc/source/third_party/upb/upb/message/internal/iterator.c +third_party/grpc/source/third_party/upb/upb/message/internal/iterator.h +third_party/grpc/source/third_party/upb/upb/message/internal/map.h +third_party/grpc/source/third_party/upb/upb/message/internal/map_entry.h +third_party/grpc/source/third_party/upb/upb/message/internal/map_sorter.h +third_party/grpc/source/third_party/upb/upb/message/internal/message.c +third_party/grpc/source/third_party/upb/upb/message/internal/message.h +third_party/grpc/source/third_party/upb/upb/message/internal/tagged_ptr.h +third_party/grpc/source/third_party/upb/upb/message/internal/types.h +third_party/grpc/source/third_party/upb/upb/message/map.c +third_party/grpc/source/third_party/upb/upb/message/map.h +third_party/grpc/source/third_party/upb/upb/message/map_gencode_util.h +third_party/grpc/source/third_party/upb/upb/message/map_sorter.c +third_party/grpc/source/third_party/upb/upb/message/map_test.cc +third_party/grpc/source/third_party/upb/upb/message/message.c +third_party/grpc/source/third_party/upb/upb/message/message.h +third_party/grpc/source/third_party/upb/upb/message/promote.c +third_party/grpc/source/third_party/upb/upb/message/promote.h +third_party/grpc/source/third_party/upb/upb/message/promote_test.cc +third_party/grpc/source/third_party/upb/upb/message/tagged_ptr.h +third_party/grpc/source/third_party/upb/upb/message/test.cc +third_party/grpc/source/third_party/upb/upb/message/utf8_test.cc +third_party/grpc/source/third_party/upb/upb/message/value.h +third_party/grpc/source/third_party/upb/upb/mini_descriptor/build_enum.c +third_party/grpc/source/third_party/upb/upb/mini_descriptor/build_enum.h +third_party/grpc/source/third_party/upb/upb/mini_descriptor/decode.c +third_party/grpc/source/third_party/upb/upb/mini_descriptor/decode.h +third_party/grpc/source/third_party/upb/upb/mini_descriptor/internal/base92.c +third_party/grpc/source/third_party/upb/upb/mini_descriptor/internal/base92.h +third_party/grpc/source/third_party/upb/upb/mini_descriptor/internal/decoder.h +third_party/grpc/source/third_party/upb/upb/mini_descriptor/internal/encode.c +third_party/grpc/source/third_party/upb/upb/mini_descriptor/internal/encode.h +third_party/grpc/source/third_party/upb/upb/mini_descriptor/internal/encode.hpp +third_party/grpc/source/third_party/upb/upb/mini_descriptor/internal/encode_test.cc +third_party/grpc/source/third_party/upb/upb/mini_descriptor/internal/modifiers.h +third_party/grpc/source/third_party/upb/upb/mini_descriptor/internal/wire_constants.h +third_party/grpc/source/third_party/upb/upb/mini_descriptor/link.c +third_party/grpc/source/third_party/upb/upb/mini_descriptor/link.h +third_party/grpc/source/third_party/upb/upb/mini_table/compat.c +third_party/grpc/source/third_party/upb/upb/mini_table/compat.h +third_party/grpc/source/third_party/upb/upb/mini_table/compat_test.cc +third_party/grpc/source/third_party/upb/upb/mini_table/enum.h +third_party/grpc/source/third_party/upb/upb/mini_table/extension.h +third_party/grpc/source/third_party/upb/upb/mini_table/extension_registry.c +third_party/grpc/source/third_party/upb/upb/mini_table/extension_registry.h +third_party/grpc/source/third_party/upb/upb/mini_table/field.h +third_party/grpc/source/third_party/upb/upb/mini_table/file.h +third_party/grpc/source/third_party/upb/upb/mini_table/internal/enum.h +third_party/grpc/source/third_party/upb/upb/mini_table/internal/extension.h +third_party/grpc/source/third_party/upb/upb/mini_table/internal/field.h +third_party/grpc/source/third_party/upb/upb/mini_table/internal/file.h +third_party/grpc/source/third_party/upb/upb/mini_table/internal/message.c +third_party/grpc/source/third_party/upb/upb/mini_table/internal/message.h +third_party/grpc/source/third_party/upb/upb/mini_table/internal/size_log2.h +third_party/grpc/source/third_party/upb/upb/mini_table/internal/sub.h +third_party/grpc/source/third_party/upb/upb/mini_table/message.c +third_party/grpc/source/third_party/upb/upb/mini_table/message.h +third_party/grpc/source/third_party/upb/upb/mini_table/sub.h +third_party/grpc/source/third_party/upb/upb/port/atomic.h +third_party/grpc/source/third_party/upb/upb/port/vsnprintf_compat.h +third_party/grpc/source/third_party/upb/upb/reflection/common.h +third_party/grpc/source/third_party/upb/upb/reflection/def.h +third_party/grpc/source/third_party/upb/upb/reflection/def.hpp +third_party/grpc/source/third_party/upb/upb/reflection/def_pool.c +third_party/grpc/source/third_party/upb/upb/reflection/def_pool.h +third_party/grpc/source/third_party/upb/upb/reflection/def_type.c +third_party/grpc/source/third_party/upb/upb/reflection/def_type.h +third_party/grpc/source/third_party/upb/upb/reflection/desc_state.c +third_party/grpc/source/third_party/upb/upb/reflection/enum_def.c +third_party/grpc/source/third_party/upb/upb/reflection/enum_def.h +third_party/grpc/source/third_party/upb/upb/reflection/enum_reserved_range.c +third_party/grpc/source/third_party/upb/upb/reflection/enum_reserved_range.h +third_party/grpc/source/third_party/upb/upb/reflection/enum_value_def.c +third_party/grpc/source/third_party/upb/upb/reflection/enum_value_def.h +third_party/grpc/source/third_party/upb/upb/reflection/extension_range.c +third_party/grpc/source/third_party/upb/upb/reflection/extension_range.h +third_party/grpc/source/third_party/upb/upb/reflection/field_def.c +third_party/grpc/source/third_party/upb/upb/reflection/field_def.h +third_party/grpc/source/third_party/upb/upb/reflection/file_def.c +third_party/grpc/source/third_party/upb/upb/reflection/file_def.h +third_party/grpc/source/third_party/upb/upb/reflection/internal/def_builder.c +third_party/grpc/source/third_party/upb/upb/reflection/internal/def_builder.h +third_party/grpc/source/third_party/upb/upb/reflection/internal/def_builder_test.cc +third_party/grpc/source/third_party/upb/upb/reflection/internal/def_pool.h +third_party/grpc/source/third_party/upb/upb/reflection/internal/desc_state.h +third_party/grpc/source/third_party/upb/upb/reflection/internal/enum_def.h +third_party/grpc/source/third_party/upb/upb/reflection/internal/enum_reserved_range.h +third_party/grpc/source/third_party/upb/upb/reflection/internal/enum_value_def.h +third_party/grpc/source/third_party/upb/upb/reflection/internal/extension_range.h +third_party/grpc/source/third_party/upb/upb/reflection/internal/field_def.h +third_party/grpc/source/third_party/upb/upb/reflection/internal/file_def.h +third_party/grpc/source/third_party/upb/upb/reflection/internal/message_def.h +third_party/grpc/source/third_party/upb/upb/reflection/internal/message_reserved_range.h +third_party/grpc/source/third_party/upb/upb/reflection/internal/method_def.h +third_party/grpc/source/third_party/upb/upb/reflection/internal/oneof_def.h +third_party/grpc/source/third_party/upb/upb/reflection/internal/service_def.h +third_party/grpc/source/third_party/upb/upb/reflection/internal/strdup2.c +third_party/grpc/source/third_party/upb/upb/reflection/internal/strdup2.h +third_party/grpc/source/third_party/upb/upb/reflection/internal/upb_edition_defaults.h +third_party/grpc/source/third_party/upb/upb/reflection/message.c +third_party/grpc/source/third_party/upb/upb/reflection/message.h +third_party/grpc/source/third_party/upb/upb/reflection/message.hpp +third_party/grpc/source/third_party/upb/upb/reflection/message_def.c +third_party/grpc/source/third_party/upb/upb/reflection/message_def.h +third_party/grpc/source/third_party/upb/upb/reflection/message_reserved_range.c +third_party/grpc/source/third_party/upb/upb/reflection/message_reserved_range.h +third_party/grpc/source/third_party/upb/upb/reflection/method_def.c +third_party/grpc/source/third_party/upb/upb/reflection/method_def.h +third_party/grpc/source/third_party/upb/upb/reflection/oneof_def.c +third_party/grpc/source/third_party/upb/upb/reflection/oneof_def.h +third_party/grpc/source/third_party/upb/upb/reflection/service_def.c +third_party/grpc/source/third_party/upb/upb/reflection/service_def.h +third_party/grpc/source/third_party/upb/upb/test/editions_test.cc +third_party/grpc/source/third_party/upb/upb/test/fuzz_util.cc +third_party/grpc/source/third_party/upb/upb/test/fuzz_util.h +third_party/grpc/source/third_party/upb/upb/test/parse_text_proto.h +third_party/grpc/source/third_party/upb/upb/test/proto3_test.cc +third_party/grpc/source/third_party/upb/upb/test/test_cpp.cc +third_party/grpc/source/third_party/upb/upb/test/test_generated_code.cc +third_party/grpc/source/third_party/upb/upb/test/test_import_empty_srcs.cc +third_party/grpc/source/third_party/upb/upb/test/test_mini_table_oneof.cc +third_party/grpc/source/third_party/upb/upb/text/debug_string.c +third_party/grpc/source/third_party/upb/upb/text/debug_string.h +third_party/grpc/source/third_party/upb/upb/text/encode.c +third_party/grpc/source/third_party/upb/upb/text/encode.h +third_party/grpc/source/third_party/upb/upb/text/encode_debug_test.cc +third_party/grpc/source/third_party/upb/upb/text/internal/encode.c +third_party/grpc/source/third_party/upb/upb/text/internal/encode.h +third_party/grpc/source/third_party/upb/upb/text/options.h +third_party/grpc/source/third_party/upb/upb/util/def_to_proto.c +third_party/grpc/source/third_party/upb/upb/util/def_to_proto.h +third_party/grpc/source/third_party/upb/upb/util/def_to_proto_fuzz_test.cc +third_party/grpc/source/third_party/upb/upb/util/def_to_proto_test.cc +third_party/grpc/source/third_party/upb/upb/util/def_to_proto_test.h +third_party/grpc/source/third_party/upb/upb/util/required_fields.c +third_party/grpc/source/third_party/upb/upb/util/required_fields.h +third_party/grpc/source/third_party/upb/upb/util/required_fields_test.cc +third_party/grpc/source/third_party/upb/upb/wire/byte_size.c +third_party/grpc/source/third_party/upb/upb/wire/byte_size.h +third_party/grpc/source/third_party/upb/upb/wire/byte_size_test.cc +third_party/grpc/source/third_party/upb/upb/wire/decode.c +third_party/grpc/source/third_party/upb/upb/wire/decode.h +third_party/grpc/source/third_party/upb/upb/wire/encode.c +third_party/grpc/source/third_party/upb/upb/wire/encode.h +third_party/grpc/source/third_party/upb/upb/wire/eps_copy_input_stream.c +third_party/grpc/source/third_party/upb/upb/wire/eps_copy_input_stream.h +third_party/grpc/source/third_party/upb/upb/wire/eps_copy_input_stream_test.cc +third_party/grpc/source/third_party/upb/upb/wire/internal/constants.h +third_party/grpc/source/third_party/upb/upb/wire/internal/decode_fast.c +third_party/grpc/source/third_party/upb/upb/wire/internal/decode_fast.h +third_party/grpc/source/third_party/upb/upb/wire/internal/decoder.h +third_party/grpc/source/third_party/upb/upb/wire/internal/reader.h +third_party/grpc/source/third_party/upb/upb/wire/reader.c +third_party/grpc/source/third_party/upb/upb/wire/reader.h +third_party/grpc/source/third_party/upb/upb/wire/types.h third_party/grpc/source/third_party/xxhash/xxhash.h third_party/harfbuzz-ng/src/docs/usermanual-install-harfbuzz.xml third_party/harfbuzz-ng/src/docs/usermanual-integration.xml @@ -10900,6 +11267,7 @@ third_party/libaom/source/libaom/third_party/googletest/src/googletest/include/g third_party/libaom/source/libaom/third_party/googletest/src/googletest/include/gtest/internal/gtest-port.h third_party/libaom/source/libaom/third_party/googletest/src/googletest/src/gtest-death-test.cc third_party/libaom/source/libaom/third_party/googletest/src/googletest/src/gtest.cc +third_party/libaom/source/libaom/third_party/highway/hwy/stats.h third_party/libaom/source/libaom/third_party/libwebm/AUTHORS.TXT third_party/libaom/source/libaom/third_party/libwebm/mkvmuxer/mkvwriter.cc third_party/libaom/source/libaom/third_party/libwebm/mkvparser/mkvreader.cc @@ -11193,6 +11561,7 @@ third_party/llvm-libc/src/src/__support/macros/properties/compiler.h third_party/llvm-libc/src/src/__support/time/windows/clock_gettime.cpp third_party/llvm-libc/src/src/time/windows/clock_getres.cpp third_party/lottie/lottie_worker.js +third_party/lzma_sdk/BUILD.gn third_party/mako/mako/test/templates/internationalization.html third_party/material_web_components/components-chromium/node_modules/@lit/reactive-element/decorators/event-options.d.ts third_party/material_web_components/components-chromium/node_modules/@lit/reactive-element/decorators/query-all.d.ts @@ -11250,6 +11619,7 @@ third_party/mediapipe/src/mediapipe/util/tracking/motion_estimation.cc third_party/metrics_proto/PRESUBMIT.py third_party/minigbm/src/common.mk third_party/minigbm/src/gbm.h +third_party/nasm/win/manifest.xml third_party/nearby/src/connections/implementation/endpoint_manager.cc third_party/nearby/src/embedded/common/source/nearby_event.h third_party/nearby/src/embedded/common/source/nearby_message_stream.h @@ -11310,6 +11680,27 @@ third_party/node/node_modules/@azure/msal-browser/lib/types/network/FetchClient. third_party/node/node_modules/@azure/msal-browser/package.json third_party/node/node_modules/@azure/msal-common/lib/types/telemetry/performance/PerformanceEvent.d.ts third_party/node/node_modules/@azure/msal-common/package.json +third_party/node/node_modules/@bufbuild/protobuf/dist/cjs/from-binary.d.ts +third_party/node/node_modules/@bufbuild/protobuf/dist/cjs/to-binary.d.ts +third_party/node/node_modules/@bufbuild/protobuf/dist/cjs/wire/binary-encoding.d.ts +third_party/node/node_modules/@bufbuild/protobuf/dist/cjs/wire/binary-encoding.js +third_party/node/node_modules/@bufbuild/protobuf/dist/cjs/wire/varint.js +third_party/node/node_modules/@bufbuild/protobuf/dist/cjs/wkt/any.js +third_party/node/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/any_pb.d.ts +third_party/node/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/api_pb.d.ts +third_party/node/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/timestamp_pb.d.ts +third_party/node/node_modules/@bufbuild/protobuf/dist/cjs/wkt/gen/google/protobuf/type_pb.d.ts +third_party/node/node_modules/@bufbuild/protobuf/dist/esm/from-binary.d.ts +third_party/node/node_modules/@bufbuild/protobuf/dist/esm/to-binary.d.ts +third_party/node/node_modules/@bufbuild/protobuf/dist/esm/wire/binary-encoding.d.ts +third_party/node/node_modules/@bufbuild/protobuf/dist/esm/wire/binary-encoding.js +third_party/node/node_modules/@bufbuild/protobuf/dist/esm/wire/varint.js +third_party/node/node_modules/@bufbuild/protobuf/dist/esm/wkt/any.js +third_party/node/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/any_pb.d.ts +third_party/node/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/api_pb.d.ts +third_party/node/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/timestamp_pb.d.ts +third_party/node/node_modules/@bufbuild/protobuf/dist/esm/wkt/gen/google/protobuf/type_pb.d.ts +third_party/node/node_modules/@lit/reactive-element/css-tag.d.ts third_party/node/node_modules/@lit/reactive-element/reactive-element.d.ts third_party/node/node_modules/@mediapipe/tasks-vision/vision.d.ts third_party/node/node_modules/@rollup/wasm-node/dist/shared/index.js @@ -11411,6 +11802,10 @@ third_party/node/node_modules/mdn-data/css/selectors.schema.json third_party/node/node_modules/mdn-data/css/types.json third_party/node/node_modules/mdn-data/css/types.schema.json third_party/node/node_modules/mdn-data/package.json +third_party/node/node_modules/messageformat/lib/functions/datetime.d.ts +third_party/node/node_modules/messageformat/lib/functions/datetime.js +third_party/node/node_modules/messageformat/lib/messageformat.d.ts +third_party/node/node_modules/messageformat/package.json third_party/node/node_modules/mocha/mocha.js third_party/node/node_modules/p-limit/package.json third_party/node/node_modules/p-locate/package.json @@ -11462,6 +11857,8 @@ third_party/node/node_modules/terser/lib/sourcemap.js third_party/node/node_modules/terser/lib/transform.js third_party/node/node_modules/terser/lib/utils/index.js third_party/node/node_modules/terser/package.json +third_party/node/node_modules/ts-proto/build/src/main.js +third_party/node/node_modules/ts-proto/build/src/types.js third_party/node/node_modules/typescript/lib/_tsc.js third_party/node/node_modules/typescript/lib/lib.dom.d.ts third_party/node/node_modules/typescript/lib/lib.dom.iterable.d.ts @@ -11529,7 +11926,6 @@ third_party/openscreen/src/cast/streaming/public/constants.h third_party/openscreen/src/cast/streaming/public/encoded_frame.h third_party/openscreen/src/cast/streaming/public/receiver_constraints.h third_party/openscreen/src/cast/streaming/public/receiver_session.h -third_party/openscreen/src/cast/streaming/public/sender.cc third_party/openscreen/src/cast/streaming/receiver.h third_party/openscreen/src/cast/streaming/receiver_constraints.h third_party/openscreen/src/cast/streaming/receiver_message.h @@ -12094,14 +12490,11 @@ third_party/perfetto/include/perfetto/public/te_category_macros.h third_party/perfetto/infra/ci/Makefile third_party/perfetto/infra/ci/common_utils.py third_party/perfetto/infra/ci/config.py -third_party/perfetto/infra/ci/controller/main.py -third_party/perfetto/infra/ci/controller/stackdriver_metrics.py +third_party/perfetto/infra/ci/frontend/main.py +third_party/perfetto/infra/ci/frontend/stackdriver_metrics.py third_party/perfetto/infra/ci/frontend/static/index.html third_party/perfetto/infra/ci/frontend/static/script.js -third_party/perfetto/infra/ci/worker/artifacts_uploader.py -third_party/perfetto/infra/ci/worker/perf_metrics_uploader.py -third_party/perfetto/infra/ci/worker/run_job.py -third_party/perfetto/infra/ci/worker/worker.py +third_party/perfetto/infra/ci/sandbox/artifacts_uploader.py third_party/perfetto/infra/git_mirror_bot/Makefile third_party/perfetto/infra/git_mirror_bot/mirror_aosp_to_ghub_repo.py third_party/perfetto/infra/luci/recipe_modules/macos_sdk/__init__.py @@ -12113,7 +12506,6 @@ third_party/perfetto/infra/luci/recipes/perfetto.expected/ci_tag.json third_party/perfetto/infra/luci/recipes/perfetto.expected/ci_win.json third_party/perfetto/infra/luci/recipes/perfetto.expected/unofficial.json third_party/perfetto/infra/luci/recipes/perfetto.py -third_party/perfetto/infra/perfetto-get.appspot.com/main.py third_party/perfetto/infra/perfetto.dev/appengine/main.py third_party/perfetto/infra/perfetto.dev/src/assets/script.js third_party/perfetto/infra/perfetto.dev/src/markdown_render.js @@ -12129,6 +12521,17 @@ third_party/perfetto/python/tools/install_test_reporter_app.py third_party/perfetto/python/tools/record_android_trace.py third_party/perfetto/python/tools/update_permalink.py third_party/perfetto/src/android_internal/health_hal.cc +third_party/perfetto/src/android_sdk/jni/dev_perfetto_sdk_PerfettoNativeMemoryCleaner.cc +third_party/perfetto/src/android_sdk/nativehelper/BUILD.gn +third_party/perfetto/src/android_sdk/nativehelper/JNIHelp.h +third_party/perfetto/src/android_sdk/nativehelper/nativehelper_utils.h +third_party/perfetto/src/android_sdk/nativehelper/scoped_local_frame.h +third_party/perfetto/src/android_sdk/nativehelper/scoped_local_ref.h +third_party/perfetto/src/android_sdk/nativehelper/scoped_primitive_array.h +third_party/perfetto/src/android_sdk/nativehelper/scoped_string_chars.h +third_party/perfetto/src/android_sdk/nativehelper/scoped_utf_chars.h +third_party/perfetto/src/android_sdk/nativehelper/utils.h +third_party/perfetto/src/android_sdk/perfetto_sdk_for_jni/tracing_sdk.h third_party/perfetto/src/base/flat_hash_map_benchmark.cc third_party/perfetto/src/base/time.cc third_party/perfetto/src/base/utils.cc @@ -12156,18 +12559,21 @@ third_party/perfetto/src/trace_processor/perfetto_sql/stdlib/android/startup/tim third_party/perfetto/src/trace_processor/perfetto_sql/stdlib/chrome/page_loads.sql third_party/perfetto/src/trace_processor/perfetto_sql/stdlib/export/to_firefox_profile.sql third_party/perfetto/src/trace_processor/util/trace_type.cc +third_party/perfetto/src/trace_redaction/redact_process_events.cc third_party/perfetto/src/traceconv/trace_to_firefox.h third_party/perfetto/src/traceconv/trace_to_hprof.cc third_party/perfetto/src/traced/probes/android_log/android_log_data_source.cc third_party/perfetto/src/tracing/service/tracing_service_impl_unittest.cc third_party/perfetto/test/cts/AndroidTest.xml +third_party/perfetto/test/cts/art_module/AndroidTest.xml +third_party/perfetto/test/cts/heapprofd_test_helper.cc third_party/perfetto/test/cts/reporter/AndroidTest.xml +third_party/perfetto/test/trace_processor/diff_tests/parser/art_hprof/tests.py third_party/perfetto/test/trace_processor/diff_tests/parser/chrome/tests_v8.py third_party/perfetto/test/trace_processor/diff_tests/parser/simpleperf/tests.py third_party/perfetto/test/vts/AndroidTest.xml third_party/perfetto/tools/download_changed_screenshots.py third_party/perfetto/ui/.eslintrc.js -third_party/perfetto/ui/package.json third_party/perfetto/ui/release/build_all_channels.py third_party/perfetto/ui/src/assets/bigtrace.html third_party/perfetto/ui/src/assets/index.html @@ -12250,6 +12656,7 @@ third_party/protobuf/benchmarks/compare.py third_party/protobuf/benchmarks/gen_protobuf_binary_cc.py third_party/protobuf/benchmarks/gen_synthetic_protos.py third_party/protobuf/benchmarks/gen_upb_binary_c.py +third_party/protobuf/cmake/dependencies_generator.py third_party/protobuf/conformance/binary_json_conformance_suite.cc third_party/protobuf/conformance/binary_json_conformance_suite.h third_party/protobuf/conformance/conformance_cpp.cc @@ -12258,6 +12665,9 @@ third_party/protobuf/conformance/conformance_test.cc third_party/protobuf/conformance/conformance_test.h third_party/protobuf/conformance/conformance_test_main.cc third_party/protobuf/conformance/conformance_test_runner.cc +third_party/protobuf/conformance/failure_list_trie_node.cc +third_party/protobuf/conformance/failure_list_trie_node.h +third_party/protobuf/conformance/failure_list_trie_node_test.cc third_party/protobuf/conformance/text_format_conformance_suite.cc third_party/protobuf/conformance/text_format_conformance_suite.h third_party/protobuf/conformance/update_failure_list.py @@ -12270,16 +12680,21 @@ third_party/protobuf/hpb/backend/upb/interop_test.cc third_party/protobuf/hpb/backend/upb/upb.h third_party/protobuf/hpb/extension.cc third_party/protobuf/hpb/extension.h -third_party/protobuf/hpb/hpb.cc third_party/protobuf/hpb/hpb.h +third_party/protobuf/hpb/internal/internal.h third_party/protobuf/hpb/internal/message_lock.cc third_party/protobuf/hpb/internal/message_lock.h third_party/protobuf/hpb/internal/message_lock_test.cc third_party/protobuf/hpb/internal/template_help.h +third_party/protobuf/hpb/internal/template_help_test.cc third_party/protobuf/hpb/ptr.h third_party/protobuf/hpb/repeated_field.h third_party/protobuf/hpb/repeated_field_iterator.h third_party/protobuf/hpb/repeated_field_iterator_test.cc +third_party/protobuf/hpb/requires.h +third_party/protobuf/hpb/status.cc +third_party/protobuf/hpb/status.h +third_party/protobuf/hpb_generator/context.h third_party/protobuf/hpb_generator/gen_accessors.cc third_party/protobuf/hpb_generator/gen_accessors.h third_party/protobuf/hpb_generator/gen_enums.cc @@ -12296,10 +12711,11 @@ third_party/protobuf/hpb_generator/keywords.cc third_party/protobuf/hpb_generator/keywords.h third_party/protobuf/hpb_generator/names.cc third_party/protobuf/hpb_generator/names.h -third_party/protobuf/hpb_generator/output.cc -third_party/protobuf/hpb_generator/output.h -third_party/protobuf/hpb_generator/protoc-gen-upb-protos.cc +third_party/protobuf/hpb_generator/protoc-gen-hpb.cc +third_party/protobuf/hpb_generator/tests/extension_test.cc +third_party/protobuf/hpb_generator/tests/repeated_test.cc third_party/protobuf/hpb_generator/tests/test_generated.cc +third_party/protobuf/hpb_generator/tests/test_hpb_bzl_alias.cc third_party/protobuf/java/bom/pom.xml third_party/protobuf/java/core/pom_template.xml third_party/protobuf/java/lite/pom_template.xml @@ -12339,8 +12755,6 @@ third_party/protobuf/objectivec/GPBRuntimeTypes.h third_party/protobuf/objectivec/GPBTimestamp.pbobjc.h third_party/protobuf/objectivec/GPBType.pbobjc.h third_party/protobuf/objectivec/GPBUnknownField.h -third_party/protobuf/objectivec/GPBUnknownFieldSet.h -third_party/protobuf/objectivec/GPBUnknownFieldSet_PackagePrivate.h third_party/protobuf/objectivec/GPBUnknownField_PackagePrivate.h third_party/protobuf/objectivec/GPBUnknownFields.h third_party/protobuf/objectivec/GPBUnknownFields_PackagePrivate.h @@ -12369,12 +12783,13 @@ third_party/protobuf/php/ext/google/protobuf/names.h third_party/protobuf/php/ext/google/protobuf/php-upb.c third_party/protobuf/php/ext/google/protobuf/php-upb.h third_party/protobuf/php/ext/google/protobuf/php_protobuf.h +third_party/protobuf/php/ext/google/protobuf/print_options.c +third_party/protobuf/php/ext/google/protobuf/print_options.h third_party/protobuf/php/ext/google/protobuf/protobuf.c third_party/protobuf/php/ext/google/protobuf/protobuf.h third_party/protobuf/php/ext/google/protobuf/template_package.xml third_party/protobuf/pkg/test/test_lib.cc third_party/protobuf/pkg/test/test_lib.h -third_party/protobuf/protos/protos.h third_party/protobuf/python/.repo-metadata.json third_party/protobuf/python/convert.c third_party/protobuf/python/convert.h @@ -12396,7 +12811,6 @@ third_party/protobuf/python/google/protobuf/descriptor_database.py third_party/protobuf/python/google/protobuf/descriptor_pool.py third_party/protobuf/python/google/protobuf/duration.py third_party/protobuf/python/google/protobuf/internal/__init__.py -third_party/protobuf/python/google/protobuf/internal/_parameterized.py third_party/protobuf/python/google/protobuf/internal/any_test.py third_party/protobuf/python/google/protobuf/internal/api_implementation.cc third_party/protobuf/python/google/protobuf/internal/api_implementation.py @@ -12426,6 +12840,7 @@ third_party/protobuf/python/google/protobuf/internal/numpy/numpy_test.py third_party/protobuf/python/google/protobuf/internal/proto_builder_test.py third_party/protobuf/python/google/protobuf/internal/proto_json_test.py third_party/protobuf/python/google/protobuf/internal/proto_test.py +third_party/protobuf/python/google/protobuf/internal/proto_text_test.py third_party/protobuf/python/google/protobuf/internal/pybind11_test_module.cc third_party/protobuf/python/google/protobuf/internal/python_message.py third_party/protobuf/python/google/protobuf/internal/python_protobuf.cc @@ -12453,6 +12868,7 @@ third_party/protobuf/python/google/protobuf/proto.py third_party/protobuf/python/google/protobuf/proto_api.h third_party/protobuf/python/google/protobuf/proto_builder.py third_party/protobuf/python/google/protobuf/proto_json.py +third_party/protobuf/python/google/protobuf/proto_text.py third_party/protobuf/python/google/protobuf/pyext/cpp_message.py third_party/protobuf/python/google/protobuf/pyext/descriptor.cc third_party/protobuf/python/google/protobuf/pyext/descriptor.h @@ -12484,7 +12900,6 @@ third_party/protobuf/python/google/protobuf/pyext/unknown_field_set.h third_party/protobuf/python/google/protobuf/python_protobuf.h third_party/protobuf/python/google/protobuf/reflection.py third_party/protobuf/python/google/protobuf/runtime_version.py -third_party/protobuf/python/google/protobuf/service.py third_party/protobuf/python/google/protobuf/service_reflection.py third_party/protobuf/python/google/protobuf/symbol_database.py third_party/protobuf/python/google/protobuf/text_encoding.py @@ -12496,13 +12911,6 @@ third_party/protobuf/python/map.h third_party/protobuf/python/message.c third_party/protobuf/python/message.h third_party/protobuf/python/minimal_test.py -third_party/protobuf/python/pb_unit_tests/descriptor_pool_test_wrapper.py -third_party/protobuf/python/pb_unit_tests/descriptor_test_wrapper.py -third_party/protobuf/python/pb_unit_tests/generator_test_wrapper.py -third_party/protobuf/python/pb_unit_tests/message_factory_test_wrapper.py -third_party/protobuf/python/pb_unit_tests/message_test_wrapper.py -third_party/protobuf/python/pb_unit_tests/proto_builder_test_wrapper.py -third_party/protobuf/python/pb_unit_tests/reflection_test_wrapper.py third_party/protobuf/python/protobuf.c third_party/protobuf/python/protobuf.h third_party/protobuf/python/protobuf_distutils/protobuf_distutils/generate_py_protobufs.py @@ -12550,7 +12958,6 @@ third_party/protobuf/src/google/protobuf/arena_align.h third_party/protobuf/src/google/protobuf/arena_align_test.cc third_party/protobuf/src/google/protobuf/arena_allocation_policy.h third_party/protobuf/src/google/protobuf/arena_cleanup.h -third_party/protobuf/src/google/protobuf/arena_test_util.cc third_party/protobuf/src/google/protobuf/arena_test_util.h third_party/protobuf/src/google/protobuf/arena_unittest.cc third_party/protobuf/src/google/protobuf/arenastring.cc @@ -12609,7 +13016,6 @@ third_party/protobuf/src/google/protobuf/compiler/cpp/move_unittest.cc third_party/protobuf/src/google/protobuf/compiler/cpp/names.h third_party/protobuf/src/google/protobuf/compiler/cpp/namespace_printer.h third_party/protobuf/src/google/protobuf/compiler/cpp/options.h -third_party/protobuf/src/google/protobuf/compiler/cpp/padding_optimizer.cc third_party/protobuf/src/google/protobuf/compiler/cpp/padding_optimizer.h third_party/protobuf/src/google/protobuf/compiler/cpp/parse_function_generator.cc third_party/protobuf/src/google/protobuf/compiler/cpp/parse_function_generator.h @@ -12696,6 +13102,7 @@ third_party/protobuf/src/google/protobuf/compiler/java/full/string_field.h third_party/protobuf/src/google/protobuf/compiler/java/generator.cc third_party/protobuf/src/google/protobuf/compiler/java/generator.h third_party/protobuf/src/google/protobuf/compiler/java/generator_factory.h +third_party/protobuf/src/google/protobuf/compiler/java/generator_unittest.cc third_party/protobuf/src/google/protobuf/compiler/java/helpers.cc third_party/protobuf/src/google/protobuf/compiler/java/helpers.h third_party/protobuf/src/google/protobuf/compiler/java/internal_helpers.cc @@ -12953,6 +13360,7 @@ third_party/protobuf/src/google/protobuf/json/internal/zero_copy_buffered_stream third_party/protobuf/src/google/protobuf/json/json.cc third_party/protobuf/src/google/protobuf/json/json.h third_party/protobuf/src/google/protobuf/json/json_test.cc +third_party/protobuf/src/google/protobuf/lazily_build_dependencies_test.cc third_party/protobuf/src/google/protobuf/lite_arena_unittest.cc third_party/protobuf/src/google/protobuf/lite_unittest.cc third_party/protobuf/src/google/protobuf/map.cc @@ -12960,15 +13368,11 @@ third_party/protobuf/src/google/protobuf/map.h third_party/protobuf/src/google/protobuf/map_entry.h third_party/protobuf/src/google/protobuf/map_field.cc third_party/protobuf/src/google/protobuf/map_field.h -third_party/protobuf/src/google/protobuf/map_field_inl.h third_party/protobuf/src/google/protobuf/map_field_lite.h third_party/protobuf/src/google/protobuf/map_field_test.cc -third_party/protobuf/src/google/protobuf/map_lite_test_util.cc -third_party/protobuf/src/google/protobuf/map_lite_test_util.h third_party/protobuf/src/google/protobuf/map_probe_benchmark.cc third_party/protobuf/src/google/protobuf/map_test.cc third_party/protobuf/src/google/protobuf/map_test_util.h -third_party/protobuf/src/google/protobuf/map_test_util_impl.h third_party/protobuf/src/google/protobuf/map_type_handler.h third_party/protobuf/src/google/protobuf/message.cc third_party/protobuf/src/google/protobuf/message.h @@ -12977,6 +13381,9 @@ third_party/protobuf/src/google/protobuf/message_lite.h third_party/protobuf/src/google/protobuf/message_unittest.cc third_party/protobuf/src/google/protobuf/metadata.h third_party/protobuf/src/google/protobuf/metadata_lite.h +third_party/protobuf/src/google/protobuf/micro_string.cc +third_party/protobuf/src/google/protobuf/micro_string.h +third_party/protobuf/src/google/protobuf/micro_string_test.cc third_party/protobuf/src/google/protobuf/no_field_presence_map_test.cc third_party/protobuf/src/google/protobuf/no_field_presence_test.cc third_party/protobuf/src/google/protobuf/package_info.h @@ -13080,7 +13487,6 @@ third_party/protobuf/upb/base/status.hpp third_party/protobuf/upb/base/string_view.h third_party/protobuf/upb/base/upcast.h third_party/protobuf/upb/bazel/amalgamate.py -third_party/protobuf/upb/cmake/make_cmakelists.py third_party/protobuf/upb/cmake/staleness_test.py third_party/protobuf/upb/cmake/staleness_test_lib.py third_party/protobuf/upb/conformance/conformance_upb.c @@ -13308,6 +13714,8 @@ third_party/protobuf/upb_generator/c/names_internal.cc third_party/protobuf/upb_generator/c/names_internal.h third_party/protobuf/upb_generator/common.cc third_party/protobuf/upb_generator/common.h +third_party/protobuf/upb_generator/common/cpp_to_upb_def.cc +third_party/protobuf/upb_generator/common/cpp_to_upb_def.h third_party/protobuf/upb_generator/common/names.cc third_party/protobuf/upb_generator/common/names.h third_party/protobuf/upb_generator/file_layout.cc @@ -13321,10 +13729,16 @@ third_party/protobuf/upb_generator/minitable/names.cc third_party/protobuf/upb_generator/minitable/names.h third_party/protobuf/upb_generator/minitable/names_internal.cc third_party/protobuf/upb_generator/minitable/names_internal.h +third_party/protobuf/upb_generator/plugin.cc third_party/protobuf/upb_generator/plugin.h +third_party/protobuf/upb_generator/reflection/context.h third_party/protobuf/upb_generator/reflection/generator.cc +third_party/protobuf/upb_generator/reflection/header.cc +third_party/protobuf/upb_generator/reflection/header.h third_party/protobuf/upb_generator/reflection/names.cc third_party/protobuf/upb_generator/reflection/names.h +third_party/protobuf/upb_generator/reflection/source.cc +third_party/protobuf/upb_generator/reflection/source.h third_party/pthreadpool/chromium/jobs.cc third_party/pycoverage/coverage/htmlfiles/pyfile.html third_party/pyelftools/elftools/__init__.py @@ -13385,7 +13799,6 @@ third_party/pyjson5/src/benchmarks/chromium.linux.json third_party/pyjson5/src/setup.py third_party/pywebsocket3/src/setup.py third_party/pywebsocket3/src/test/test_handshake_hybi.py -third_party/qunit/src/qunit.js third_party/r8/3pp/3pp.py third_party/re2/src/CMakeLists.txt third_party/re2/src/python/setup.py @@ -13393,23 +13806,22 @@ third_party/re2/src/re2/testing/re2_test.cc third_party/re2/src/util/pcre.h third_party/rust/PRESUBMIT.py third_party/rust/adler2/v2/BUILD.gn -third_party/rust/aho_corasick/v1/BUILD.gn third_party/rust/anyhow/v1/BUILD.gn third_party/rust/autocfg/v1/BUILD.gn -third_party/rust/bstr/v1/BUILD.gn third_party/rust/bytemuck/v1/BUILD.gn third_party/rust/bytemuck_derive/v1/BUILD.gn -third_party/rust/byteorder/v1/BUILD.gn +third_party/rust/chromium_crates_io/PRESUBMIT.py +third_party/rust/chromium_crates_io/crate_utils.py +third_party/rust/chromium_crates_io/vendor/cxx-v1/.bcr/metadata.template.json third_party/rust/cxx/v1/BUILD.gn third_party/rust/cxxbridge_cmd/v1/BUILD.gn third_party/rust/cxxbridge_flags/v1/BUILD.gn third_party/rust/cxxbridge_macro/v1/BUILD.gn -third_party/rust/diplomat/v0_9/BUILD.gn -third_party/rust/diplomat_core/v0_9/BUILD.gn -third_party/rust/diplomat_runtime/v0_9/BUILD.gn +third_party/rust/diplomat/v0_11/BUILD.gn +third_party/rust/diplomat_core/v0_11/BUILD.gn +third_party/rust/diplomat_runtime/v0_11/BUILD.gn third_party/rust/foldhash/v0_1/BUILD.gn third_party/rust/hashbrown/v0_15/BUILD.gn -third_party/rust/heck/v0_4/BUILD.gn third_party/rust/itoa/v1/BUILD.gn third_party/rust/lazy_static/v1/BUILD.gn third_party/rust/memchr/v2/BUILD.gn @@ -13419,39 +13831,30 @@ third_party/rust/prost/v0_13/BUILD.gn third_party/rust/prost_derive/v0_13/BUILD.gn third_party/rust/qr_code/v2/BUILD.gn third_party/rust/quote/v1/BUILD.gn -third_party/rust/regex/v1/BUILD.gn third_party/rust/regex_automata/v0_4/BUILD.gn third_party/rust/regex_syntax/v0_8/BUILD.gn -third_party/rust/rstest/v0_22/BUILD.gn -third_party/rust/rstest_macros/v0_22/BUILD.gn -third_party/rust/rstest_reuse/v0_7/BUILD.gn third_party/rust/rustc_demangle_capi/v0_1/BUILD.gn third_party/rust/rustversion/v1/BUILD.gn third_party/rust/ryu/v1/BUILD.gn -third_party/rust/semver/v1/BUILD.gn third_party/rust/serde/v1/BUILD.gn third_party/rust/serde_derive/v1/BUILD.gn third_party/rust/serde_json/v1/BUILD.gn third_party/rust/serde_json_lenient/v0_2/BUILD.gn -third_party/rust/sfv/v0_10/BUILD.gn third_party/rust/stable_deref_trait/v1/BUILD.gn third_party/rust/strck/v1/BUILD.gn -third_party/rust/strum/v0_25/BUILD.gn -third_party/rust/strum_macros/v0_25/BUILD.gn +third_party/rust/strum/v0_27/BUILD.gn +third_party/rust/strum_macros/v0_27/BUILD.gn third_party/rust/syn/v2/BUILD.gn third_party/rust/termcolor/v1/BUILD.gn -third_party/rust/tinyvec/v1/BUILD.gn third_party/rust/unicode_ident/v1/BUILD.gn -third_party/rust/unicode_linebreak/v0_1/BUILD.gn third_party/rust/unicode_width/v0_1/BUILD.gn third_party/rust/winapi_util/v0_1/BUILD.gn -third_party/rust/yoke/v0_7/BUILD.gn -third_party/rust/yoke_derive/v0_7/BUILD.gn -third_party/rust/zerocopy/v0_7/BUILD.gn -third_party/rust/zerocopy_derive/v0_7/BUILD.gn +third_party/rust/yoke/v0_8/BUILD.gn +third_party/rust/yoke_derive/v0_8/BUILD.gn third_party/rust/zerofrom/v0_1/BUILD.gn third_party/rust/zerofrom_derive/v0_1/BUILD.gn third_party/rust/zerovec_derive/v0_11/BUILD.gn +third_party/rust/zip/v3/BUILD.gn third_party/s2cellid/src/s2/_fpcontractoff.h third_party/s2cellid/src/s2/r1interval.h third_party/s2cellid/src/s2/r2.h @@ -13472,6 +13875,7 @@ third_party/shell-encryption/BUILD.gn third_party/simplejson/ordered_dict.py third_party/skia/BUILD.gn third_party/skia/PRESUBMIT.py +third_party/skia/bazel/deps.json third_party/skia/bench/DashBench.cpp third_party/skia/bench/DecodeBench.cpp third_party/skia/build_overrides/partition_alloc.gni @@ -13528,7 +13932,9 @@ third_party/skia/infra/bots/recipe_modules/checkout/examples/full.expected/cross third_party/skia/infra/bots/recipe_modules/checkout/examples/full.expected/trybot.json third_party/skia/infra/bots/recipe_modules/checkout/examples/full.py third_party/skia/infra/bots/recipe_modules/doxygen/examples/full.py +third_party/skia/infra/bots/recipe_modules/flavor/examples/full.expected/Test-ChromeOS-Clang-Cherry-GPU-MaliG57-arm-Debug-All.json third_party/skia/infra/bots/recipe_modules/flavor/examples/full.py +third_party/skia/infra/bots/recipe_modules/flavor/ssh.py third_party/skia/infra/bots/recipe_modules/gold_upload/examples/full.py third_party/skia/infra/bots/recipe_modules/gsutil/examples/full.py third_party/skia/infra/bots/recipe_modules/infra/examples/full.py @@ -13566,6 +13972,7 @@ third_party/skia/modules/canvaskit/htmlcanvas/canvas2dcontext.js third_party/skia/modules/canvaskit/htmlcanvas/font.js third_party/skia/modules/canvaskit/htmlcanvas/path2d.js third_party/skia/modules/canvaskit/interface.js +third_party/skia/modules/canvaskit/npm_build/bidi.html third_party/skia/modules/canvaskit/npm_build/example.html third_party/skia/modules/canvaskit/npm_build/extra.html third_party/skia/modules/canvaskit/npm_build/multicanvas.html @@ -13604,6 +14011,7 @@ third_party/skia/src/codec/SkCodec.cpp third_party/skia/src/codec/SkWebpCodec.cpp third_party/skia/src/codec/SkWuffsCodec.cpp third_party/skia/src/codec/SkXmp.cpp +third_party/skia/src/core/SkEdge.cpp third_party/skia/src/core/SkGeometry.cpp third_party/skia/src/core/SkGeometry.h third_party/skia/src/core/SkMaskGamma.cpp @@ -13620,6 +14028,7 @@ third_party/skia/src/gpu/ganesh/GrRenderTask.h third_party/skia/src/gpu/ganesh/GrShaderCaps.h third_party/skia/src/gpu/ganesh/d3d/GrD3DCaps.cpp third_party/skia/src/gpu/ganesh/effects/GrDisableColorXP.cpp +third_party/skia/src/gpu/ganesh/gl/AHardwareBufferGL.cpp third_party/skia/src/gpu/ganesh/gl/GrGLCaps.cpp third_party/skia/src/gpu/ganesh/gl/GrGLCaps.h third_party/skia/src/gpu/ganesh/gl/GrGLGpu.cpp @@ -13659,7 +14068,6 @@ third_party/skia/tests/ColorPrivTest.cpp third_party/skia/tests/CtsEnforcement.h third_party/skia/tests/DrawPathTest.cpp third_party/skia/tests/DrawTextTest.cpp -third_party/skia/tests/FillPathTest.cpp third_party/skia/tests/GradientTest.cpp third_party/skia/tests/ImageGeneratorTest.cpp third_party/skia/tests/PDFPrimitivesTest.cpp @@ -13671,7 +14079,6 @@ third_party/skia/tests/RegionTest.cpp third_party/skia/tests/SkXmpTest.cpp third_party/skia/tests/StringTest.cpp third_party/skia/tests/TypefaceTest.cpp -third_party/skia/tests/graphite/precompile/ChromePrecompileTest.cpp third_party/skia/third_party/etc1/etc1.cpp third_party/skia/third_party/etc1/etc1.h third_party/skia/third_party/freetype2/include/freetype-android/freetype/config/ftoption.h @@ -13733,244 +14140,6 @@ third_party/snappy/linux/snappy-stubs-public.h third_party/snappy/mac/snappy-stubs-public.h third_party/snappy/src/snappy-test.h third_party/snappy/win32/snappy-stubs-public.h -third_party/speedometer/main/experimental/todomvc-localstorage/dist/helpers.js -third_party/speedometer/main/experimental/todomvc-localstorage/dist/index.css -third_party/speedometer/main/experimental/todomvc-localstorage/src/helpers.js -third_party/speedometer/main/resources/editors/assets/longscript.js -third_party/speedometer/main/resources/editors/dist/assets/codemirror-521de7ab.js -third_party/speedometer/main/resources/editors/dist/assets/tiptap-95a40ba8.js -third_party/speedometer/main/resources/newssite/news-next/dist/_next/static/chunks/main-2ba37e62325cc71b.js -third_party/speedometer/main/resources/perf.webkit.org/public/data/manifest.json -third_party/speedometer/main/resources/react-stockcharts/package-lock.json -third_party/speedometer/main/resources/todomvc/architecture-examples/angular-complex/dist/3rdpartylicenses.txt -third_party/speedometer/main/resources/todomvc/architecture-examples/angular-complex/dist/styles.746a93d9fd4de753.css -third_party/speedometer/main/resources/todomvc/architecture-examples/angular/dist/3rdpartylicenses.txt -third_party/speedometer/main/resources/todomvc/architecture-examples/backbone-complex/dist/index.css -third_party/speedometer/main/resources/todomvc/architecture-examples/backbone/dist/index.css -third_party/speedometer/main/resources/todomvc/architecture-examples/jquery-complex/dist/index.css -third_party/speedometer/main/resources/todomvc/architecture-examples/jquery/dist/index.css -third_party/speedometer/main/resources/todomvc/architecture-examples/lit/src/lib/todo-item.ts -third_party/speedometer/main/resources/todomvc/architecture-examples/preact-complex/dist/app.css -third_party/speedometer/main/resources/todomvc/architecture-examples/preact/package-lock.json -third_party/speedometer/main/resources/todomvc/architecture-examples/react-complex/dist/app.css -third_party/speedometer/main/resources/todomvc/architecture-examples/react-redux-complex/dist/app.css -third_party/speedometer/main/resources/todomvc/architecture-examples/react-redux/package-lock.json -third_party/speedometer/main/resources/todomvc/architecture-examples/react/package-lock.json -third_party/speedometer/main/resources/todomvc/architecture-examples/svelte-complex/dist/app.css -third_party/speedometer/main/resources/todomvc/architecture-examples/vue-complex/dist/css/app.319576e1.css -third_party/speedometer/main/resources/todomvc/architecture-examples/vue/package-lock.json -third_party/speedometer/main/resources/todomvc/big-dom-generator/package-lock.json -third_party/speedometer/main/resources/todomvc/big-dom-generator/utils/app.css -third_party/speedometer/main/resources/todomvc/todomvc-css/dist/index.css -third_party/speedometer/main/resources/todomvc/todomvc-css/dist/todo-item.css -third_party/speedometer/main/resources/todomvc/todomvc-css/dist/todo-item.module.css -third_party/speedometer/main/resources/todomvc/todomvc-css/src/css/todo-item.css -third_party/speedometer/main/resources/todomvc/vanilla-examples/javascript-es5-complex/dist/helpers.js -third_party/speedometer/main/resources/todomvc/vanilla-examples/javascript-es5-complex/dist/index.css -third_party/speedometer/main/resources/todomvc/vanilla-examples/javascript-es5/dist/helpers.js -third_party/speedometer/main/resources/todomvc/vanilla-examples/javascript-es5/dist/index.css -third_party/speedometer/main/resources/todomvc/vanilla-examples/javascript-es5/src/helpers.js -third_party/speedometer/main/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/dist/app.css -third_party/speedometer/main/resources/todomvc/vanilla-examples/javascript-es6-webpack/package-lock.json -third_party/speedometer/main/resources/todomvc/vanilla-examples/javascript-es6-webpack/src/helpers.js -third_party/speedometer/v2.0/resources/flightjs-example-app/app/data.js -third_party/speedometer/v2.0/resources/flightjs-example-app/components/es5-shim/component.json -third_party/speedometer/v2.0/resources/flightjs-example-app/components/es5-shim/es5-sham.js -third_party/speedometer/v2.0/resources/flightjs-example-app/components/es5-shim/es5-shim.js -third_party/speedometer/v2.0/resources/flightjs-example-app/components/es5-shim/package.json -third_party/speedometer/v2.0/resources/flightjs-example-app/components/jquery/composer.json -third_party/speedometer/v2.0/resources/flightjs-example-app/components/jquery/jquery.js -third_party/speedometer/v2.0/resources/flightjs-example-app/components/requirejs/require.js -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/angular/dist/assets/css/todomvc-app.css -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/angular/src/assets/css/todomvc-app.css -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/angularjs/node_modules/angular-resource/angular-resource.js -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/angularjs/node_modules/angular/angular.js -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/angularjs/node_modules/todomvc-app-css/index.css -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/angularjs/node_modules/todomvc-app-css/package.json -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/angularjs/node_modules/todomvc-common/base.js -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/backbone/node_modules/backbone/backbone.js -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/backbone/node_modules/jquery/dist/jquery.js -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/backbone/node_modules/todomvc-app-css/index.css -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/backbone/node_modules/todomvc-common/base.js -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/backbone/node_modules/underscore/underscore.js -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/emberjs-debug/assets/vendor.css -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/emberjs-debug/assets/vendor.js -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/emberjs/vendor/index.css -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/inferno/node_modules/todomvc-app-css/index.css -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/inferno/node_modules/todomvc-app-css/package.json -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/inferno/node_modules/todomvc-common/base.js -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/jquery/node_modules/director/dist/director.js -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/jquery/node_modules/director/package.json -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/jquery/node_modules/jquery/dist/jquery.js -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/jquery/node_modules/todomvc-app-css/index.css -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/jquery/node_modules/todomvc-app-css/package.json -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/jquery/node_modules/todomvc-common/base.js -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/preact/dist/todomvc-common/base.js -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/preact/dist/todomvc.css -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/react/node_modules/todomvc-app-css/index.css -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/react/node_modules/todomvc-common/base.js -third_party/speedometer/v2.0/resources/todomvc/architecture-examples/vuejs-cli/src/components/todo.css -third_party/speedometer/v2.0/resources/todomvc/dependency-examples/flight/flight/node_modules/depot/package.json -third_party/speedometer/v2.0/resources/todomvc/dependency-examples/flight/flight/node_modules/es5-shim/es5-sham.js -third_party/speedometer/v2.0/resources/todomvc/dependency-examples/flight/flight/node_modules/es5-shim/es5-shim.js -third_party/speedometer/v2.0/resources/todomvc/dependency-examples/flight/flight/node_modules/jquery/dist/jquery.js -third_party/speedometer/v2.0/resources/todomvc/dependency-examples/flight/flight/node_modules/jquery/package.json -third_party/speedometer/v2.0/resources/todomvc/dependency-examples/flight/flight/node_modules/requirejs-text/package.json -third_party/speedometer/v2.0/resources/todomvc/dependency-examples/flight/flight/node_modules/requirejs-text/text.js -third_party/speedometer/v2.0/resources/todomvc/dependency-examples/flight/flight/node_modules/requirejs/package.json -third_party/speedometer/v2.0/resources/todomvc/dependency-examples/flight/flight/node_modules/requirejs/require.js -third_party/speedometer/v2.0/resources/todomvc/dependency-examples/flight/flight/node_modules/todomvc-app-css/index.css -third_party/speedometer/v2.0/resources/todomvc/dependency-examples/flight/flight/node_modules/todomvc-app-css/package.json -third_party/speedometer/v2.0/resources/todomvc/dependency-examples/flight/flight/node_modules/todomvc-common/base.js -third_party/speedometer/v2.0/resources/todomvc/functional-prog-examples/elm/node_modules/todomvc-app-css/index.css -third_party/speedometer/v2.0/resources/todomvc/functional-prog-examples/elm/node_modules/todomvc-common/base.js -third_party/speedometer/v2.0/resources/todomvc/labs/architecture-examples/react/bower_components/director/build/director.js -third_party/speedometer/v2.0/resources/todomvc/labs/architecture-examples/react/bower_components/react/JSXTransformer.js -third_party/speedometer/v2.0/resources/todomvc/labs/architecture-examples/react/bower_components/todomvc-common/base.js -third_party/speedometer/v2.0/resources/todomvc/vanilla-examples/es2015-babel-webpack/src/helpers.js -third_party/speedometer/v2.0/resources/todomvc/vanilla-examples/es2015/node_modules/todomvc-app-css/index.css -third_party/speedometer/v2.0/resources/todomvc/vanilla-examples/es2015/node_modules/todomvc-app-css/package.json -third_party/speedometer/v2.0/resources/todomvc/vanilla-examples/es2015/node_modules/todomvc-common/base.js -third_party/speedometer/v2.0/resources/todomvc/vanilla-examples/es2015/src/helpers.js -third_party/speedometer/v2.0/resources/todomvc/vanilla-examples/vanillajs/js/helpers.js -third_party/speedometer/v2.0/resources/todomvc/vanilla-examples/vanillajs/node_modules/todomvc-app-css/index.css -third_party/speedometer/v2.0/resources/todomvc/vanilla-examples/vanillajs/node_modules/todomvc-common/base.js -third_party/speedometer/v2.1/resources/flightjs-example-app/app/data.js -third_party/speedometer/v2.1/resources/flightjs-example-app/components/es5-shim/component.json -third_party/speedometer/v2.1/resources/flightjs-example-app/components/es5-shim/es5-sham.js -third_party/speedometer/v2.1/resources/flightjs-example-app/components/es5-shim/es5-shim.js -third_party/speedometer/v2.1/resources/flightjs-example-app/components/es5-shim/package.json -third_party/speedometer/v2.1/resources/flightjs-example-app/components/jquery/composer.json -third_party/speedometer/v2.1/resources/flightjs-example-app/components/jquery/jquery.js -third_party/speedometer/v2.1/resources/flightjs-example-app/components/requirejs/require.js -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/angular/dist/assets/css/todomvc-app.css -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/angular/src/assets/css/todomvc-app.css -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/angularjs/node_modules/angular-resource/angular-resource.js -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/angularjs/node_modules/angular/angular.js -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/angularjs/node_modules/todomvc-app-css/index.css -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/angularjs/node_modules/todomvc-app-css/package.json -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/angularjs/node_modules/todomvc-common/base.js -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/backbone/node_modules/backbone/backbone.js -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/backbone/node_modules/jquery/dist/jquery.js -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/backbone/node_modules/todomvc-app-css/index.css -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/backbone/node_modules/todomvc-common/base.js -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/backbone/node_modules/underscore/underscore.js -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/emberjs-debug/assets/vendor.css -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/emberjs-debug/assets/vendor.js -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/emberjs/vendor/index.css -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/inferno/node_modules/todomvc-app-css/index.css -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/inferno/node_modules/todomvc-app-css/package.json -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/inferno/node_modules/todomvc-common/base.js -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/jquery/node_modules/director/dist/director.js -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/jquery/node_modules/director/package.json -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/jquery/node_modules/jquery/dist/jquery.js -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/jquery/node_modules/todomvc-app-css/index.css -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/jquery/node_modules/todomvc-app-css/package.json -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/jquery/node_modules/todomvc-common/base.js -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/preact/dist/todomvc-common/base.js -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/preact/dist/todomvc.css -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/react/node_modules/todomvc-app-css/index.css -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/react/node_modules/todomvc-common/base.js -third_party/speedometer/v2.1/resources/todomvc/architecture-examples/vuejs-cli/src/components/todo.css -third_party/speedometer/v2.1/resources/todomvc/dependency-examples/flight/flight/node_modules/depot/package.json -third_party/speedometer/v2.1/resources/todomvc/dependency-examples/flight/flight/node_modules/es5-shim/es5-sham.js -third_party/speedometer/v2.1/resources/todomvc/dependency-examples/flight/flight/node_modules/es5-shim/es5-shim.js -third_party/speedometer/v2.1/resources/todomvc/dependency-examples/flight/flight/node_modules/jquery/dist/jquery.js -third_party/speedometer/v2.1/resources/todomvc/dependency-examples/flight/flight/node_modules/jquery/package.json -third_party/speedometer/v2.1/resources/todomvc/dependency-examples/flight/flight/node_modules/requirejs-text/package.json -third_party/speedometer/v2.1/resources/todomvc/dependency-examples/flight/flight/node_modules/requirejs-text/text.js -third_party/speedometer/v2.1/resources/todomvc/dependency-examples/flight/flight/node_modules/requirejs/package.json -third_party/speedometer/v2.1/resources/todomvc/dependency-examples/flight/flight/node_modules/requirejs/require.js -third_party/speedometer/v2.1/resources/todomvc/dependency-examples/flight/flight/node_modules/todomvc-app-css/index.css -third_party/speedometer/v2.1/resources/todomvc/dependency-examples/flight/flight/node_modules/todomvc-app-css/package.json -third_party/speedometer/v2.1/resources/todomvc/dependency-examples/flight/flight/node_modules/todomvc-common/base.js -third_party/speedometer/v2.1/resources/todomvc/functional-prog-examples/elm/node_modules/todomvc-app-css/index.css -third_party/speedometer/v2.1/resources/todomvc/functional-prog-examples/elm/node_modules/todomvc-common/base.js -third_party/speedometer/v2.1/resources/todomvc/labs/architecture-examples/react/bower_components/director/build/director.js -third_party/speedometer/v2.1/resources/todomvc/labs/architecture-examples/react/bower_components/react/JSXTransformer.js -third_party/speedometer/v2.1/resources/todomvc/labs/architecture-examples/react/bower_components/todomvc-common/base.js -third_party/speedometer/v2.1/resources/todomvc/vanilla-examples/es2015-babel-webpack/src/helpers.js -third_party/speedometer/v2.1/resources/todomvc/vanilla-examples/es2015/node_modules/todomvc-app-css/index.css -third_party/speedometer/v2.1/resources/todomvc/vanilla-examples/es2015/node_modules/todomvc-app-css/package.json -third_party/speedometer/v2.1/resources/todomvc/vanilla-examples/es2015/node_modules/todomvc-common/base.js -third_party/speedometer/v2.1/resources/todomvc/vanilla-examples/es2015/src/helpers.js -third_party/speedometer/v2.1/resources/todomvc/vanilla-examples/vanillajs/js/helpers.js -third_party/speedometer/v2.1/resources/todomvc/vanilla-examples/vanillajs/node_modules/todomvc-app-css/index.css -third_party/speedometer/v2.1/resources/todomvc/vanilla-examples/vanillajs/node_modules/todomvc-common/base.js -third_party/speedometer/v3.0/resources/editors/assets/longscript.js -third_party/speedometer/v3.0/resources/editors/dist/assets/codemirror-521de7ab.js -third_party/speedometer/v3.0/resources/editors/dist/assets/tiptap-95a40ba8.js -third_party/speedometer/v3.0/resources/newssite/news-next/dist/_next/static/chunks/main-2ba37e62325cc71b.js -third_party/speedometer/v3.0/resources/perf.webkit.org/public/data/manifest.json -third_party/speedometer/v3.0/resources/react-stockcharts/package-lock.json -third_party/speedometer/v3.0/resources/todomvc/architecture-examples/angular-complex/dist/3rdpartylicenses.txt -third_party/speedometer/v3.0/resources/todomvc/architecture-examples/angular-complex/dist/styles.746a93d9fd4de753.css -third_party/speedometer/v3.0/resources/todomvc/architecture-examples/angular/dist/3rdpartylicenses.txt -third_party/speedometer/v3.0/resources/todomvc/architecture-examples/backbone-complex/dist/index.css -third_party/speedometer/v3.0/resources/todomvc/architecture-examples/backbone/dist/index.css -third_party/speedometer/v3.0/resources/todomvc/architecture-examples/jquery-complex/dist/index.css -third_party/speedometer/v3.0/resources/todomvc/architecture-examples/jquery/dist/index.css -third_party/speedometer/v3.0/resources/todomvc/architecture-examples/lit/src/lib/todo-item.ts -third_party/speedometer/v3.0/resources/todomvc/architecture-examples/preact-complex/dist/app.css -third_party/speedometer/v3.0/resources/todomvc/architecture-examples/preact/package-lock.json -third_party/speedometer/v3.0/resources/todomvc/architecture-examples/react-complex/dist/app.css -third_party/speedometer/v3.0/resources/todomvc/architecture-examples/react-redux-complex/dist/app.css -third_party/speedometer/v3.0/resources/todomvc/architecture-examples/react-redux/package-lock.json -third_party/speedometer/v3.0/resources/todomvc/architecture-examples/react/package-lock.json -third_party/speedometer/v3.0/resources/todomvc/architecture-examples/svelte-complex/dist/app.css -third_party/speedometer/v3.0/resources/todomvc/architecture-examples/vue-complex/dist/css/app.319576e1.css -third_party/speedometer/v3.0/resources/todomvc/architecture-examples/vue/package-lock.json -third_party/speedometer/v3.0/resources/todomvc/big-dom-generator/package-lock.json -third_party/speedometer/v3.0/resources/todomvc/big-dom-generator/utils/app.css -third_party/speedometer/v3.0/resources/todomvc/todomvc-css/dist/index.css -third_party/speedometer/v3.0/resources/todomvc/todomvc-css/dist/todo-item.css -third_party/speedometer/v3.0/resources/todomvc/todomvc-css/dist/todo-item.module.css -third_party/speedometer/v3.0/resources/todomvc/todomvc-css/src/css/todo-item.css -third_party/speedometer/v3.0/resources/todomvc/vanilla-examples/javascript-es5-complex/dist/helpers.js -third_party/speedometer/v3.0/resources/todomvc/vanilla-examples/javascript-es5-complex/dist/index.css -third_party/speedometer/v3.0/resources/todomvc/vanilla-examples/javascript-es5/dist/helpers.js -third_party/speedometer/v3.0/resources/todomvc/vanilla-examples/javascript-es5/dist/index.css -third_party/speedometer/v3.0/resources/todomvc/vanilla-examples/javascript-es5/src/helpers.js -third_party/speedometer/v3.0/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/dist/app.css -third_party/speedometer/v3.0/resources/todomvc/vanilla-examples/javascript-es6-webpack/package-lock.json -third_party/speedometer/v3.0/resources/todomvc/vanilla-examples/javascript-es6-webpack/src/helpers.js -third_party/speedometer/v3.1/resources/editors/assets/longscript.js -third_party/speedometer/v3.1/resources/editors/dist/assets/codemirror-521de7ab.js -third_party/speedometer/v3.1/resources/editors/dist/assets/tiptap-95a40ba8.js -third_party/speedometer/v3.1/resources/newssite/news-next/dist/_next/static/chunks/main-2ba37e62325cc71b.js -third_party/speedometer/v3.1/resources/perf.webkit.org/public/data/manifest.json -third_party/speedometer/v3.1/resources/react-stockcharts/package-lock.json -third_party/speedometer/v3.1/resources/todomvc/architecture-examples/angular-complex/dist/3rdpartylicenses.txt -third_party/speedometer/v3.1/resources/todomvc/architecture-examples/angular-complex/dist/styles.746a93d9fd4de753.css -third_party/speedometer/v3.1/resources/todomvc/architecture-examples/angular/dist/3rdpartylicenses.txt -third_party/speedometer/v3.1/resources/todomvc/architecture-examples/backbone-complex/dist/index.css -third_party/speedometer/v3.1/resources/todomvc/architecture-examples/backbone/dist/index.css -third_party/speedometer/v3.1/resources/todomvc/architecture-examples/jquery-complex/dist/index.css -third_party/speedometer/v3.1/resources/todomvc/architecture-examples/jquery/dist/index.css -third_party/speedometer/v3.1/resources/todomvc/architecture-examples/lit/src/lib/todo-item.ts -third_party/speedometer/v3.1/resources/todomvc/architecture-examples/preact-complex/dist/app.css -third_party/speedometer/v3.1/resources/todomvc/architecture-examples/preact/package-lock.json -third_party/speedometer/v3.1/resources/todomvc/architecture-examples/react-complex/dist/app.css -third_party/speedometer/v3.1/resources/todomvc/architecture-examples/react-redux-complex/dist/app.css -third_party/speedometer/v3.1/resources/todomvc/architecture-examples/react-redux/package-lock.json -third_party/speedometer/v3.1/resources/todomvc/architecture-examples/react/package-lock.json -third_party/speedometer/v3.1/resources/todomvc/architecture-examples/svelte-complex/dist/app.css -third_party/speedometer/v3.1/resources/todomvc/architecture-examples/vue-complex/dist/css/app.319576e1.css -third_party/speedometer/v3.1/resources/todomvc/architecture-examples/vue/package-lock.json -third_party/speedometer/v3.1/resources/todomvc/big-dom-generator/package-lock.json -third_party/speedometer/v3.1/resources/todomvc/big-dom-generator/utils/app.css -third_party/speedometer/v3.1/resources/todomvc/todomvc-css/dist/index.css -third_party/speedometer/v3.1/resources/todomvc/todomvc-css/dist/todo-item.css -third_party/speedometer/v3.1/resources/todomvc/todomvc-css/dist/todo-item.module.css -third_party/speedometer/v3.1/resources/todomvc/todomvc-css/src/css/todo-item.css -third_party/speedometer/v3.1/resources/todomvc/vanilla-examples/javascript-es5-complex/dist/helpers.js -third_party/speedometer/v3.1/resources/todomvc/vanilla-examples/javascript-es5-complex/dist/index.css -third_party/speedometer/v3.1/resources/todomvc/vanilla-examples/javascript-es5/dist/helpers.js -third_party/speedometer/v3.1/resources/todomvc/vanilla-examples/javascript-es5/dist/index.css -third_party/speedometer/v3.1/resources/todomvc/vanilla-examples/javascript-es5/src/helpers.js -third_party/speedometer/v3.1/resources/todomvc/vanilla-examples/javascript-es6-webpack-complex/dist/app.css -third_party/speedometer/v3.1/resources/todomvc/vanilla-examples/javascript-es6-webpack/package-lock.json -third_party/speedometer/v3.1/resources/todomvc/vanilla-examples/javascript-es6-webpack/src/helpers.js third_party/spirv-cross/src/spirv_hlsl.cpp third_party/spirv-headers/src/include/spirv/spir-v.xml third_party/spirv-tools/src/PRESUBMIT.py @@ -13980,6 +14149,7 @@ third_party/sqlite/src/amalgamation/sqlite3.c third_party/sqlite/src/amalgamation_dev/shell/shell.c third_party/sqlite/src/amalgamation_dev/sqlite3.c third_party/sqlite/src/ext/misc/zipfile.c +third_party/sqlite/src/ext/wasm/README-dist.txt third_party/sqlite/src/ext/wasm/api/sqlite3-opfs-async-proxy.js third_party/sqlite/src/ext/wasm/api/sqlite3-worker1-promiser.c-pp.js third_party/sqlite/src/ext/wasm/index-dist.html @@ -13988,7 +14158,6 @@ third_party/sqlite/src/src/date.c third_party/sqlite/src/src/main.c third_party/sqlite/src/src/os_unix.c third_party/sqlite/src/src/pager.c -third_party/sqlite/src/vsixtest/MainPage.xaml.cpp third_party/swiftshader/.vscode/tasks.json third_party/swiftshader/AUTHORS.txt third_party/swiftshader/CMakeLists.txt @@ -14117,8 +14286,6 @@ third_party/tflite/src/tensorflow/core/kernels/image/decode_image_op.cc third_party/tflite/src/tensorflow/core/platform/cloud/testdata/application_default_credentials.json third_party/tflite/src/tensorflow/core/platform/cloud/testdata/service_account_credentials.json third_party/tflite/src/tensorflow/core/platform/error_payloads.h -third_party/tflite/src/tensorflow/core/profiler/convert/hlo_proto_to_graph_view.cc -third_party/tflite/src/tensorflow/core/profiler/convert/oss/tpu_input_pipeline_analysis_constants.cc third_party/tflite/src/tensorflow/core/tpu/tpu_compile_interface.h third_party/tflite/src/tensorflow/core/tpu/tpu_embedding_errors.h third_party/tflite/src/tensorflow/core/util/ctc/ctc_beam_search.h @@ -14273,7 +14440,6 @@ third_party/tflite/src/tensorflow/lite/tutorials/dataset.py third_party/tflite/src/tensorflow/python/compiler/xla/tests/pjrt_autoclustering_test.py third_party/tflite/src/tensorflow/python/distribute/coordinator/get_task_states_test.py third_party/tflite/src/tensorflow/python/distribute/failure_handling/failure_handling.py -third_party/tflite/src/tensorflow/python/eager/profiler.py third_party/tflite/src/tensorflow/python/eager/remote_cluster_test.py third_party/tflite/src/tensorflow/python/framework/graph_to_function_def.py third_party/tflite/src/tensorflow/python/framework/ops.py @@ -14290,13 +14456,12 @@ third_party/tflite/src/tensorflow/python/tpu/tpu_embedding_v2_utils.py third_party/tflite/src/tensorflow/tools/android/test/jni/rgb2yuv.cc third_party/tflite/src/tensorflow/tools/compatibility/tf_upgrade_v2_safety_test.py third_party/tflite/src/tensorflow/tools/pip_package/THIRD_PARTY_NOTICES.txt -third_party/tflite/src/tensorflow/tools/pip_package/setup.py third_party/tflite/src/third_party/xla/xla/backends/gpu/codegen/emitters/transpose.h third_party/tflite/src/third_party/xla/xla/pjrt/c/pjrt_c_api.h third_party/tflite/src/third_party/xla/xla/pjrt/pjrt_api.cc -third_party/tflite/src/third_party/xla/xla/python/weakref_lru_cache.cc third_party/tflite/src/third_party/xla/xla/service/hlo_graph_dumper.cc third_party/tflite/src/third_party/xla/xla/service/hlo_verifier.cc +third_party/tflite/src/third_party/xla/xla/tools/benchmarks/utils/generate_benchmark_matrices_main.cc third_party/tflite/src/third_party/xla/xla/tsl/distributed_runtime/coordination/coordination_service_error_util.h third_party/tflite/src/third_party/xla/xla/tsl/distributed_runtime/rpc/grpc_util.h third_party/tflite/src/third_party/xla/xla/tsl/lib/io/format.h @@ -14345,8 +14510,8 @@ third_party/vulkan-loader/src/loader/log.c third_party/vulkan-loader/src/loader/log.h third_party/vulkan-loader/src/loader/stack_allocation.h third_party/vulkan-loader/src/loader/wsi.c +third_party/vulkan-loader/src/scripts/generators/helper_file_generator.py third_party/vulkan-loader/src/scripts/gn/gn.py -third_party/vulkan-loader/src/scripts/helper_file_generator.py third_party/vulkan-tools/src/cube/cube.c third_party/vulkan-tools/src/cube/gettime.h third_party/vulkan-tools/src/icd/generated/vk_typemap_helper.h @@ -14355,7 +14520,16 @@ third_party/vulkan-tools/src/scripts/gn/gn.py third_party/vulkan-tools/src/scripts/mock_icd_generator.py third_party/vulkan-tools/src/scripts/vulkan_tools_helper_file_generator.py third_party/vulkan-utility-libraries/src/scripts/gn/gn.py +third_party/vulkan-validation-layers/src/layers/CMakeLists.txt third_party/vulkan-validation-layers/src/layers/external/inplace_function.h +third_party/vulkan-validation-layers/src/layers/external/parallel_hashmap/btree.h +third_party/vulkan-validation-layers/src/layers/external/parallel_hashmap/phmap.h +third_party/vulkan-validation-layers/src/layers/external/parallel_hashmap/phmap_base.h +third_party/vulkan-validation-layers/src/layers/external/parallel_hashmap/phmap_bits.h +third_party/vulkan-validation-layers/src/layers/external/parallel_hashmap/phmap_config.h +third_party/vulkan-validation-layers/src/layers/external/parallel_hashmap/phmap_dump.h +third_party/vulkan-validation-layers/src/layers/external/parallel_hashmap/phmap_fwd_decl.h +third_party/vulkan-validation-layers/src/layers/external/parallel_hashmap/phmap_utils.h third_party/vulkan-validation-layers/src/layers/external/xxhash.h third_party/vulkan-validation-layers/src/layers/gpuav/debug_printf/debug_printf.cpp third_party/vulkan-validation-layers/src/scripts/android.py @@ -14422,9 +14596,11 @@ third_party/webgpu-cts/src/src/webgpu/multisample_info.ts third_party/webgpu-cts/src/src/webgpu/shader/execution/shader_io/fragment_builtins.spec.ts third_party/webgpu-cts/src/standalone/index.html third_party/webpagereplay/PRESUBMIT.py +third_party/webrtc/.gn third_party/webrtc/BUILD.gn third_party/webrtc/PRESUBMIT.py third_party/webrtc/api/audio_codecs/opus/audio_encoder_opus_config.h +third_party/webrtc/api/data_channel_event_observer_interface.h third_party/webrtc/api/location.h third_party/webrtc/api/scoped_refptr.h third_party/webrtc/api/uma_metrics.h @@ -14443,7 +14619,6 @@ third_party/webrtc/common_audio/third_party/ooura/fft_size_128/ooura_fft_tables_ third_party/webrtc/common_audio/third_party/spl_sqrt_floor/spl_sqrt_floor.c third_party/webrtc/common_audio/third_party/spl_sqrt_floor/spl_sqrt_floor_mips.c third_party/webrtc/examples/peerconnection/client/defaults.cc -third_party/webrtc/examples/stunprober/main.cc third_party/webrtc/infra/specs/gn_isolate_map.pyl third_party/webrtc/media/base/video_common.cc third_party/webrtc/media/base/video_common.h @@ -14492,12 +14667,12 @@ third_party/webrtc/p2p/base/turn_port.cc third_party/webrtc/p2p/base/turn_port_unittest.cc third_party/webrtc/p2p/client/basic_port_allocator.cc third_party/webrtc/p2p/client/basic_port_allocator_unittest.cc -third_party/webrtc/p2p/dtls/dtls_utils_unittest.cc third_party/webrtc/pc/channel.cc third_party/webrtc/pc/jsep_session_description.cc third_party/webrtc/pc/media_session_unittest.cc third_party/webrtc/pc/peer_connection_bundle_unittest.cc third_party/webrtc/pc/peer_connection_crypto_unittest.cc +third_party/webrtc/pc/peer_connection_encodings_integrationtest.cc third_party/webrtc/pc/peer_connection_end_to_end_unittest.cc third_party/webrtc/pc/peer_connection_factory_unittest.cc third_party/webrtc/pc/peer_connection_field_trial_tests.cc @@ -14558,7 +14733,7 @@ third_party/webrtc/test/test_main_lib.cc third_party/webrtc/test/testsupport/perf_test.h third_party/webrtc/tools_webrtc/autoroller/roll_deps.py third_party/webrtc/tools_webrtc/autoroller/unittests/roll_deps_test.py -third_party/webrtc/tools_webrtc/network_emulator/emulate.py +third_party/webrtc/tools_webrtc/iwyu/apply_include_cleaner.py third_party/webrtc/tools_webrtc/perf/catapult_uploader.py third_party/webrtc/tools_webrtc/sanitizers/lsan_suppressions_webrtc.cc third_party/webrtc/tools_webrtc/sanitizers/tsan_suppressions_webrtc.cc @@ -14664,12 +14839,12 @@ third_party/wpt_tools/wpt/tools/wptrunner/wptrunner/browsers/firefox.py third_party/wpt_tools/wpt/tools/wptrunner/wptrunner/executors/executormarionette.py third_party/wpt_tools/wpt/tools/wptrunner/wptrunner/executors/executorwebdriver.py third_party/wpt_tools/wpt/tools/wptrunner/wptrunner/executors/test-wait.js -third_party/wpt_tools/wpt/tools/wptrunner/wptrunner/formatters/chromium.py third_party/wpt_tools/wpt/tools/wptrunner/wptrunner/wpttest.py third_party/wuffs/BUILD.gn third_party/wuffs/src/release/c/wuffs-v0.3.c third_party/xdg-utils/scripts/desc/xdg-settings.xml third_party/xnnpack/src/CMakeLists.txt +third_party/zlib/BUILD.gn third_party/zlib/deflate.c third_party/zlib/google/compression_utils_portable.cc third_party/zlib/google/zip_reader.h @@ -14760,6 +14935,8 @@ tools/chrome_extensions/open_my_editor/ext/background.js tools/chrome_extensions/open_my_editor/ext/cr-content.js tools/chrome_extensions/open_my_editor/ext/cs-content.js tools/chrome_extensions/open_my_editor/ext/manifest.json +tools/clang/ast_rewriter/ASTRewriter.cpp +tools/clang/ast_rewriter/OutputHelper.h tools/clang/blink_gc_plugin/BlinkGCPlugin.cpp tools/clang/iterator_checker/tests/PRESUBMIT.py tools/clang/plugins/ChromeClassTester.cpp @@ -14776,9 +14953,12 @@ tools/clang/scripts/dashboard.py tools/clang/scripts/include-analysis.html tools/clang/scripts/package.py tools/clang/scripts/update.py +tools/clang/spanify/Spanifier.cpp tools/clang/spanify/evaluate_patches.py tools/clang/spanify/extract_edits.py tools/clang/spanify/list-required-pragma.py +tools/clang/spanify/tests/cycle-expected.cc +tools/clang/spanify/tests/cycle-original.cc tools/clang/translation_unit/test_translation_unit.py tools/code_coverage/coverage.py tools/code_coverage/js_source_maps/create_js_source_maps/PRESUBMIT.py @@ -14787,6 +14967,8 @@ tools/cr/main.py tools/crates/create_draft_comments.py tools/crates/create_update_cl.py tools/crates/gnrt/lib/test_metadata.json +tools/crates/gnrt/lib/test_metadata2.json +tools/crates/gnrt/lib/test_metadata3.json tools/crbug/crbug.js tools/crbug/pinpoint.js tools/crbug/user-activity.js @@ -14845,6 +15027,7 @@ tools/grit/grit/testdata/privacy.html tools/grit/grit/tool/android2grd.py tools/grit/grit/tool/build.py tools/grit/grit/tool/resize.py +tools/grit/grit/zip_helpers.py tools/grit/pak_util.py tools/grit/setup.py tools/include_tracer.py @@ -15094,11 +15277,13 @@ tools/metrics/histograms/metadata/platform/histograms.xml tools/metrics/histograms/metadata/plugin_vm/histograms.xml tools/metrics/histograms/metadata/plus_addresses/enums.xml tools/metrics/histograms/metadata/plus_addresses/histograms.xml +tools/metrics/histograms/metadata/power/enums.xml tools/metrics/histograms/metadata/power/histograms.xml tools/metrics/histograms/metadata/prefetch/histograms.xml tools/metrics/histograms/metadata/preloading/histograms.xml tools/metrics/histograms/metadata/printing/enums.xml tools/metrics/histograms/metadata/printing/histograms.xml +tools/metrics/histograms/metadata/privacy/enums.xml tools/metrics/histograms/metadata/privacy/histograms.xml tools/metrics/histograms/metadata/privacy_budget/enums.xml tools/metrics/histograms/metadata/privacy_budget/histograms.xml @@ -15111,6 +15296,9 @@ tools/metrics/histograms/metadata/quickstart/histograms.xml tools/metrics/histograms/metadata/quota/histograms.xml tools/metrics/histograms/metadata/readaloud/enums.xml tools/metrics/histograms/metadata/readaloud/histograms.xml +tools/metrics/histograms/metadata/regional_capabilities/enums.xml +tools/metrics/histograms/metadata/regional_capabilities/histograms.xml +tools/metrics/histograms/metadata/renderer/enums.xml tools/metrics/histograms/metadata/renderer/histograms.xml tools/metrics/histograms/metadata/renderer4/histograms.xml tools/metrics/histograms/metadata/safe_browsing/enums.xml @@ -15142,6 +15330,8 @@ tools/metrics/histograms/metadata/shortcuts/histograms.xml tools/metrics/histograms/metadata/signin/enums.xml tools/metrics/histograms/metadata/signin/histograms.xml tools/metrics/histograms/metadata/simple/histograms.xml +tools/metrics/histograms/metadata/skia/enums.xml +tools/metrics/histograms/metadata/skia/histograms.xml tools/metrics/histograms/metadata/sql/enums.xml tools/metrics/histograms/metadata/sql/histograms.xml tools/metrics/histograms/metadata/stability/enums.xml @@ -15291,13 +15481,13 @@ tools/perf/core/services/buildbucket_service.py tools/perf/core/services/dashboard_service.py tools/perf/core/services/pinpoint_service.py tools/perf/core/services/request.py +tools/perf/core/shard_maps/timing_data/android-pixel-fold-perf_timing.json tools/perf/core/shard_maps/timing_data/android-pixel-tangor-perf_timing.json tools/perf/core/shard_maps/timing_data/android-pixel4-perf_timing.json tools/perf/core/shard_maps/timing_data/android-pixel4_webview-perf-pgo_timing.json tools/perf/core/shard_maps/timing_data/android-pixel4_webview-perf_timing.json tools/perf/core/shard_maps/timing_data/android-pixel6-perf_timing.json tools/perf/core/shard_maps/timing_data/android-pixel6-pro-perf_timing.json -tools/perf/core/shard_maps/timing_data/linux-perf_timing.json tools/perf/core/shard_maps/timing_data/linux-r350-perf_timing.json tools/perf/core/shard_maps/timing_data/mac-intel-perf_timing.json tools/perf/core/shard_maps/timing_data/mac-laptop_high_end-perf_timing.json @@ -15380,9 +15570,6 @@ tools/run-swarmed.py tools/rust/build_bindgen.py tools/rust/build_rust.py tools/sample_clang_tidy_results.py -tools/search_engine_choice/download_search_engine_icons.py -tools/search_engine_choice/generate_search_engine_icons.py -tools/search_engine_choice/generate_search_engine_icons_config.json tools/site_compare/commands/measure.py tools/site_compare/commands/scrape.py tools/site_compare/scrapers/chrome/chromebase.py @@ -15390,6 +15577,7 @@ tools/site_compare/scrapers/firefox/firefox2.py tools/site_compare/scrapers/ie/ie7.py tools/site_compare/utils/browser_iterate.py tools/symsrc/source_index.py +tools/test_selection/decisiongraph_invoker.py tools/traceline/svgui/traceline.js tools/tracing/PRESUBMIT.py tools/tracing/rename_breakpad.py @@ -15443,6 +15631,7 @@ ui/accessibility/ax_role_properties.cc ui/accessibility/extensions/color_contrast_companion/help.html ui/accessibility/extensions/strings/accessibility_extensions_strings.grd ui/accessibility/extensions/tools/webstore_extension_util.py +ui/accessibility/platform/ax_platform.cc ui/accessibility/platform/ax_platform_node_base_unittest.cc ui/accessibility/platform/ax_platform_node_delegate_utils_win.cc ui/accessibility/platform/ax_platform_node_textrangeprovider_win.cc @@ -15480,12 +15669,12 @@ ui/base/ime/win/tsf_bridge.cc ui/base/ime/win/tsf_text_store.cc ui/base/ime/win/tsf_text_store.h ui/base/l10n/l10n_util_win.h -ui/base/linux/xdg_shortcut.h ui/base/prediction/linear_resampling.h ui/base/resource/data_pack.cc ui/base/resource/resource_bundle.h ui/base/test/skia_gold_matching_algorithm.h ui/base/test/skia_gold_pixel_diff.cc +ui/base/ui_base_features.h ui/base/win/event_creation_utils.cc ui/base/win/win_cursor.cc ui/chromeos/file_manager_strings.grdp @@ -15495,7 +15684,9 @@ ui/display/display_switches.cc ui/display/display_transform.cc ui/display/mac/cv_display_link_mac.mm ui/display/manager/tools/index.html +ui/display/types/display_constants.h ui/display/win/screen_win.cc +ui/display/win/screen_win_headless.cc ui/display/win/test/virtual_display_util_win.cc ui/events/android/motion_event_android_unittest.cc ui/events/blink/blink_event_util.cc @@ -15558,17 +15749,20 @@ ui/gl/gl_display.cc ui/gl/gl_surface_egl.cc ui/gl/gl_surface_presentation_helper.cc ui/gl/hdr_metadata_helper_win.cc +ui/gl/os_compositor_tree_base.h ui/gl/vsync_thread_win_dxgi.cc ui/gtk/printing/print_dialog_gtk.cc ui/latency/latency_info.h +ui/menus/android/menu_model_bridge.cc +ui/menus/android/menu_model_bridge.h ui/native_theme/native_theme_win.cc ui/native_theme/native_theme_win.h ui/ozone/ozone.gni -ui/ozone/platform/wayland/host/shell_popup_wrapper.cc ui/ozone/platform/wayland/host/wayland_clipboard.cc ui/ozone/platform/wayland/host/wayland_data_drag_controller.cc ui/ozone/platform/wayland/host/wayland_output.h ui/ozone/platform/wayland/host/wayland_window.cc +ui/ozone/platform/wayland/host/xdg_popup.cc ui/ozone/platform/x11/test/os_exchange_data_provider_x11_unittest.cc ui/ozone/platform/x11/x11_window.cc ui/resources/PRESUBMIT.py @@ -15595,6 +15789,7 @@ ui/views/layout/flex_layout_unittest.cc ui/views/view.h ui/views/view_targeter_delegate.h ui/views/view_unittest.cc +ui/views/widget/desktop_aura/desktop_native_widget_aura.cc ui/views/win/hwnd_message_handler.cc ui/views/window/non_client_view.cc ui/webui/resources/cr_components/certificate_manager/certificate_manager_v2_icons.html @@ -15621,6 +15816,7 @@ url/url_parse_unittest.cc url/url_util.cc url/url_util.h url/url_util_unittest.cc +v8/BUILD.gn v8/PRESUBMIT.py v8/build_overrides/partition_alloc.gni v8/include/cppgc/internal/compiler-specific.h @@ -15657,7 +15853,7 @@ v8/src/compiler/backend/instruction.cc v8/src/compiler/c-linkage.cc v8/src/compiler/machine-operator.cc v8/src/compiler/turboshaft/late-load-elimination-reducer.h -v8/src/compiler/turboshaft/maglev-graph-building-phase.cc +v8/src/compiler/turboshaft/turbolev-graph-builder.cc v8/src/d8/d8-posix.cc v8/src/d8/d8.cc v8/src/debug/debug-evaluate.cc @@ -15686,6 +15882,7 @@ v8/src/objects/ordered-hash-table.h v8/src/objects/string-inl.h v8/src/objects/value-serializer.cc v8/src/parsing/parser-base.h +v8/src/regexp/regexp.cc v8/src/runtime/runtime-test-wasm.cc v8/src/sandbox/sandbox.cc v8/src/snapshot/embedded/platform-embedded-file-writer-win.cc @@ -15706,6 +15903,7 @@ v8/src/wasm/interpreter/wasm-interpreter.h v8/src/wasm/interpreter/x64/interpreter-builtins-x64.cc v8/src/wasm/wasm-code-manager.cc v8/src/wasm/wasm-debug.cc +v8/src/wasm/wasm-feature-flags.h v8/testing/gtest/BUILD.gn v8/third_party/googletest/BUILD.gn v8/third_party/inspector_protocol/crdtp/cbor.cc @@ -15731,7 +15929,6 @@ v8/tools/profview/index.html v8/tools/release/common_includes.py v8/tools/release/create_release.py v8/tools/release/git_recipes.py -v8/tools/release/merge_to_branch.py v8/tools/release/merge_to_branch_gerrit.py v8/tools/release/roll_bisect.py v8/tools/release/roll_merge_gerrit.py @@ -15744,7 +15941,6 @@ v8/tools/sanitizers/sancov_merger.py v8/tools/sanitizers/tsan_suppressions.txt v8/tools/system-analyzer/index.html v8/tools/testrunner/local/variants.py -v8/tools/tracing/proto-converter/proto-to-json.ts v8/tools/try_perf.py v8/tools/unittests/run_perf_test.py v8/tools/unittests/testdata/test1.json diff --git a/domain_substitution/prune_binaries.py b/domain_substitution/prune_binaries.py index df7bfcec..6c10a805 100644 --- a/domain_substitution/prune_binaries.py +++ b/domain_substitution/prune_binaries.py @@ -18,8 +18,12 @@ from _common import ENCODING, get_logger, add_common_params # List of paths to prune if they exist, excluded from domain_substitution and pruning lists # These allow the lists to be compatible between cloned, tarball, and lite tarball sources CONTINGENT_PATHS = ( + # checkout_configuration != "small" + 'third_party/jetstream/', + 'third_party/speedometer/', # CIPD sources 'buildtools/linux64/', + 'components/variations/test_data/cipd/', 'third_party/checkstyle/cipd/', 'third_party/dawn/third_party/ninja/', 'third_party/dawn/tools/golang/', diff --git a/update_domain_substitution.sh b/update_domain_substitution.sh index c7339546..0065414e 100755 --- a/update_domain_substitution.sh +++ b/update_domain_substitution.sh @@ -4,7 +4,7 @@ root_dir=$(dirname "$(readlink -f "$0")") cd $root_dir/domain_substitution -branch="135.0.7049.95-1" +branch="138.0.7204.49-1" if [ -d ungoogled-chromium ]; then cd ungoogled-chromium git fetch origin $branch -- GitLab From 7df160f8b50ea60a1a1a5d8007f0d5221c1f1c5f Mon Sep 17 00:00:00 2001 From: Nishith Khanna Date: Mon, 30 Jun 2025 07:04:22 +0000 Subject: [PATCH 04/11] Fix patches which required manual intervention - Rename strings to browser - Spoof Pixel 4a - Disable first run welcome page - Accent and Switch - Disable component update - Multiple fingerprint mitigations - h264 arm/arm64 optimisation --- .../Browser-Rename-strings-to-browser.patch | 20 +- ...Browser-Spoof-as-Pixel-4a-by-default.patch | 16 +- ...owser-disable-first-run-welcome-page.patch | 31 ++- ...cent-and-switch-to-match-our-palette.patch | 136 ++++++------- .../e_patches/Disable-Component-Updates.patch | 10 +- .../Multiple-fingerprinting-mitigations.patch | 178 +++++++++--------- ...enH264-enable-ARMARM64-optimizations.patch | 28 +-- 7 files changed, 183 insertions(+), 236 deletions(-) diff --git a/build/e_patches/Browser-Rename-strings-to-browser.patch b/build/e_patches/Browser-Rename-strings-to-browser.patch index ec7d17da..801ee04a 100644 --- a/build/e_patches/Browser-Rename-strings-to-browser.patch +++ b/build/e_patches/Browser-Rename-strings-to-browser.patch @@ -1,4 +1,4 @@ -From 671e4a51c8c183773c0bd777859c49709d6b739c Mon Sep 17 00:00:00 2001 +From 95741379f2ba1c10324e7e42a641c50af3fbbef1 Mon Sep 17 00:00:00 2001 From: Aayush Gupta Date: Fri, 26 Nov 2021 07:12:30 +0000 Subject: Browser: Rename strings to browser @@ -6,10 +6,10 @@ Subject: Browser: Rename strings to browser Signed-off-by: Aayush Gupta --- .../android/java/res/xml/about_chrome_preferences.xml | 3 +++ - .../browser/about_settings/AboutChromeSettings.java | 8 ++++---- + .../browser/about_settings/AboutChromeSettings.java | 7 +++---- .../ui/android/strings/android_chrome_strings.grd | 2 ++ chrome/browser/ui/android/strings/foundation_e.grdp | 10 ++++++++++ - 4 files changed, 19 insertions(+), 4 deletions(-) + 4 files changed, 18 insertions(+), 4 deletions(-) create mode 100644 chrome/browser/ui/android/strings/foundation_e.grdp diff --git a/chrome/android/java/res/xml/about_chrome_preferences.xml b/chrome/android/java/res/xml/about_chrome_preferences.xml @@ -27,10 +27,10 @@ index fb1dfed23052b..d5092508ce452 100644 android:key="application_version" android:title="@string/application_version_title" /> diff --git a/chrome/android/java/src/org/chromium/chrome/browser/about_settings/AboutChromeSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/about_settings/AboutChromeSettings.java -index 45645bf509f4d..c42374eac7404 100644 +index 599df250a62b6..c8878ba918a68 100644 --- a/chrome/android/java/src/org/chromium/chrome/browser/about_settings/AboutChromeSettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/about_settings/AboutChromeSettings.java -@@ -31,7 +31,7 @@ public class AboutChromeSettings extends PreferenceFragmentCompat +@@ -37,7 +37,7 @@ public class AboutChromeSettings extends PreferenceFragmentCompat private static final String PREF_APPLICATION_VERSION = "application_version"; private static final String PREF_OS_VERSION = "os_version"; @@ -39,21 +39,21 @@ index 45645bf509f4d..c42374eac7404 100644 // Non-translated strings: @SuppressWarnings("InlineFormatString") -@@ -60,9 +60,9 @@ public class AboutChromeSettings extends PreferenceFragmentCompat - p.setOnPreferenceClickListener(this); +@@ -68,10 +68,9 @@ public class AboutChromeSettings extends PreferenceFragmentCompat p = findPreference(PREF_OS_VERSION); + assumeNonNull(p); p.setSummary(AboutSettingsBridge.getOSVersion()); - p = findPreference(PREF_LEGAL_INFORMATION); ++ p = findPreference(PREF_E_BROWSER_INFORMATION); + assumeNonNull(p); - int currentYear = Calendar.getInstance().get(Calendar.YEAR); - p.setSummary(getString(R.string.legal_information_summary, currentYear)); -+ -+ p = findPreference(PREF_E_BROWSER_INFORMATION); + p.setSummary(getString(R.string.e_browser_information)); } @Override diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd -index 50e71ac6b7926..b88199f8c4cb0 100644 +index 23ca8eed0bfc2..5ba4cc31d97fa 100644 --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd @@ -202,6 +202,8 @@ CHAR_LIMIT guidelines: diff --git a/build/e_patches/Browser-Spoof-as-Pixel-4a-by-default.patch b/build/e_patches/Browser-Spoof-as-Pixel-4a-by-default.patch index 8f0f5b0a..b4e4257b 100644 --- a/build/e_patches/Browser-Spoof-as-Pixel-4a-by-default.patch +++ b/build/e_patches/Browser-Spoof-as-Pixel-4a-by-default.patch @@ -1,4 +1,4 @@ -From 0573d2dbf39e4b73f0f0ff8e6bb489feb8936314 Mon Sep 17 00:00:00 2001 +From 16d7661e6a334f27049af79c1bfd544596b7eefb Mon Sep 17 00:00:00 2001 From: althafvly Date: Thu, 19 Jan 2023 05:41:58 +0000 Subject: Browser: Spoof as Pixel 4a by default @@ -9,17 +9,17 @@ Subject: Browser: Spoof as Pixel 4a by default 1 file changed, 6 insertions(+), 14 deletions(-) diff --git a/base/system/sys_info_android.cc b/base/system/sys_info_android.cc -index e3ead5db46ca0..02de4db4d752c 100644 +index 3e7af369f8c09..6cfcc7b2645af 100644 --- a/base/system/sys_info_android.cc +++ b/base/system/sys_info_android.cc @@ -22,7 +22,7 @@ namespace { - // cannot be acquired. Use the latest Android release with a higher bug fix - // version to avoid unnecessarily comparison errors with the latest release. - // This should be manually kept up to date on each Android release. --const int kDefaultAndroidMajorVersion = 12; + // Default version of Android to fall back to when actual version numbers + // cannot be acquired. Use a super high number in this case, as we assume + // it's due to being a pre-release version. +-const int kDefaultAndroidMajorVersion = 9999; +const int kDefaultAndroidMajorVersion = 10; const int kDefaultAndroidMinorVersion = 0; - const int kDefaultAndroidBugfixVersion = 99; + const int kDefaultAndroidBugfixVersion = 0; @@ -49,7 +49,7 @@ void GetOsVersionStringAndNumbers(std::string* version_string, if (num_read < 3) { @@ -71,5 +71,5 @@ index e3ead5db46ca0..02de4db4d752c 100644 std::string SysInfo::GetAndroidHardware() { -- -2.48.1 +2.34.1 diff --git a/build/e_patches/Browser-disable-first-run-welcome-page.patch b/build/e_patches/Browser-disable-first-run-welcome-page.patch index 7234b1ee..9cac564b 100644 --- a/build/e_patches/Browser-disable-first-run-welcome-page.patch +++ b/build/e_patches/Browser-disable-first-run-welcome-page.patch @@ -1,33 +1,26 @@ -From 64a76316a9c7d865e689d0443ce25ef3f8c720c1 Mon Sep 17 00:00:00 2001 +From dc24b17ff4181b6938a23a05a3dee0ded54a8c11 Mon Sep 17 00:00:00 2001 From: csagan5 <32685696+csagan5@users.noreply.github.com> Date: Sun, 26 Nov 2017 22:51:43 +0100 Subject: Browser: disable first run welcome page --- - .../org/chromium/chrome/browser/firstrun/FirstRunUtils.java | 3 --- + .../org/chromium/chrome/browser/firstrun/FirstRunUtils.java | 2 +- .../chromium/chrome/browser/firstrun/FirstRunStatus.java | 6 +++++- - 2 files changed, 5 insertions(+), 4 deletions(-) + 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunUtils.java -index 6a83155e04e70..fd45dda7d78c8 100644 +index 5c3ec5a1db540..a753141834e71 100644 --- a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunUtils.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunUtils.java -@@ -36,15 +36,12 @@ public class FirstRunUtils { - boolean javaPrefValue = - javaPrefs.readBoolean(ChromePreferenceKeys.FIRST_RUN_CACHED_TOS_ACCEPTED, false); - boolean nativePrefValue = isFirstRunEulaAccepted(); -- boolean isFirstRunComplete = FirstRunStatus.getFirstRunFlowComplete(); -- if (javaPrefValue || nativePrefValue || isFirstRunComplete) { - if (!javaPrefValue) { - javaPrefs.writeBoolean(ChromePreferenceKeys.FIRST_RUN_CACHED_TOS_ACCEPTED, true); - } - if (!nativePrefValue) { - setEulaAccepted(); - } -- } +@@ -29,7 +29,7 @@ public class FirstRunUtils { + // Backup and restore does not restore native pref, so this needs to update it. Note that + // these prefs are slightly different, the eula is set when the ToS is accepted (early in + // the FRE), while the FRE flow is only complete at the end. +- if (FirstRunStatus.getFirstRunFlowComplete() && !isFirstRunEulaAccepted()) { ++ if (!isFirstRunEulaAccepted()) { + setEulaAccepted(); + } } - - /** diff --git a/chrome/browser/first_run/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunStatus.java b/chrome/browser/first_run/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunStatus.java index d9ad00c856f6d..9a57484a9b7f8 100644 --- a/chrome/browser/first_run/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunStatus.java diff --git a/build/e_patches/Change-accent-and-switch-to-match-our-palette.patch b/build/e_patches/Change-accent-and-switch-to-match-our-palette.patch index ce4ada77..e82e59b3 100644 --- a/build/e_patches/Change-accent-and-switch-to-match-our-palette.patch +++ b/build/e_patches/Change-accent-and-switch-to-match-our-palette.patch @@ -1,35 +1,34 @@ -From 2e447117df26affe8e08f19a29cc8b005d445cde Mon Sep 17 00:00:00 2001 +From 2a4233a59f4f60cd671eeacd23967e0b45f92959 Mon Sep 17 00:00:00 2001 From: Nishith Khanna Date: Tue, 20 Feb 2024 20:35:25 +0530 Subject: Change accent and switch to match our palette --- - ...board_accessory_sheet_tab_option_toggle.xml | 2 +- - .../tab_management/TabUiThemeProvider.java | 18 ++++++------------ - .../res/layout/improved_bookmark_save_flow.xml | 2 +- - .../layout/incognito_cookie_controls_card.xml | 2 +- - .../res/layout/readaloud_toggle_switch.xml | 2 +- - .../chrome/browser/tab_ui/TabUiThemeUtils.java | 2 +- - .../fast_checkout_autofill_profile_item.xml | 2 +- - .../layout/fast_checkout_credit_card_item.xml | 2 +- - .../res/layout/fast_checkout_footer_item.xml | 2 +- - .../browser/omnibox/UrlBarViewBinder.java | 2 +- - .../styles/OmniboxResourceProvider.java | 2 +- - ...unt_picker_bottom_sheet_new_account_row.xml | 2 +- - components/browser_ui/styles/android/BUILD.gn | 4 ++++ - .../java/res/color/e_switch_thumb_color.xml | 5 +++++ - .../java/res/color/e_switch_track_color.xml | 6 ++++++ - .../java/res/color/text_highlight_color.xml | 2 +- - .../java/res/drawable/e_switch_thumb.xml | 9 +++++++++ - .../java/res/drawable/e_switch_track.xml | 9 +++++++++ - .../res/values/semantic_colors_dynamic.xml | 6 +++--- - .../styles/android/java/res/values/styles.xml | 4 ++++ - .../styles/android/java/res/values/themes.xml | 2 +- - .../theme/android/java/res/values/themes.xml | 10 +++++----- - .../java/res/layout/preference_switch.xml | 2 +- - .../res/layout/infobar_control_toggle.xml | 2 +- - ui/android/java/res/values/color_palette.xml | 9 +++++++-- - 25 files changed, 73 insertions(+), 37 deletions(-) + .../keyboard_accessory_sheet_tab_option_toggle.xml | 2 +- + .../tasks/tab_management/TabUiThemeProvider.java | 12 ++++-------- + .../java/res/layout/improved_bookmark_save_flow.xml | 2 +- + .../res/layout/incognito_cookie_controls_card.xml | 2 +- + .../java/res/layout/readaloud_toggle_switch.xml | 2 +- + .../layout/fast_checkout_autofill_profile_item.xml | 2 +- + .../res/layout/fast_checkout_credit_card_item.xml | 2 +- + .../java/res/layout/fast_checkout_footer_item.xml | 2 +- + .../chrome/browser/omnibox/UrlBarViewBinder.java | 2 +- + .../omnibox/styles/OmniboxResourceProvider.java | 2 +- + .../account_picker_bottom_sheet_new_account_row.xml | 2 +- + components/browser_ui/styles/android/BUILD.gn | 4 ++++ + .../android/java/res/color/e_switch_thumb_color.xml | 5 +++++ + .../android/java/res/color/e_switch_track_color.xml | 6 ++++++ + .../android/java/res/color/text_highlight_color.xml | 2 +- + .../android/java/res/drawable/e_switch_thumb.xml | 9 +++++++++ + .../android/java/res/drawable/e_switch_track.xml | 9 +++++++++ + .../java/res/values/semantic_colors_dynamic.xml | 6 +++--- + .../styles/android/java/res/values/styles.xml | 4 ++++ + .../styles/android/java/res/values/themes.xml | 2 +- + .../theme/android/java/res/values/themes.xml | 10 +++++----- + .../android/java/res/layout/preference_switch.xml | 2 +- + .../android/res/layout/infobar_control_toggle.xml | 2 +- + ui/android/java/res/values/color_palette.xml | 8 ++++++-- + 24 files changed, 69 insertions(+), 32 deletions(-) create mode 100644 components/browser_ui/styles/android/java/res/color/e_switch_thumb_color.xml create mode 100644 components/browser_ui/styles/android/java/res/color/e_switch_track_color.xml create mode 100644 components/browser_ui/styles/android/java/res/drawable/e_switch_thumb.xml @@ -49,7 +48,7 @@ index 9d1713c43e8b1..5cefd325aae52 100644 android:layout_marginStart="16dp" android:layout_width="48dp" diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabUiThemeProvider.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabUiThemeProvider.java -index 9d8b39203d2ff..44f5110e1c361 100644 +index fb099d501b990..f8f335d1448bf 100644 --- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabUiThemeProvider.java +++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabUiThemeProvider.java @@ -114,7 +114,7 @@ public class TabUiThemeProvider { @@ -72,20 +71,7 @@ index 9d8b39203d2ff..44f5110e1c361 100644 int alpha = context.getResources() .getInteger( -@@ -216,10 +214,8 @@ public class TabUiThemeProvider { - ? R.color.incognito_tab_grid_dialog_ungroup_bar_bg_hovered_color - : R.color.incognito_tab_grid_dialog_background_color); - } else { -- return MaterialColors.getColor( -- context, -- isTabHovered ? org.chromium.chrome.R.attr.colorPrimary : R.attr.colorSurface, -- TAG); -+ return isTabHovered ? context.getColor(R.color.default_control_color_active_baseline) -+ : MaterialColors.getColor(context, R.attr.colorSurface, TAG); - } - } - -@@ -231,10 +227,8 @@ public class TabUiThemeProvider { +@@ -237,10 +235,8 @@ public class TabUiThemeProvider { ? R.color.incognito_tab_grid_dialog_ungroup_bar_text_hovered_color : R.color.incognito_tab_grid_dialog_ungroup_bar_text_color); } else { @@ -112,7 +98,7 @@ index 8b83198cdfae7..3c883d9e4aded 100644 app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" diff --git a/chrome/android/java/res/layout/incognito_cookie_controls_card.xml b/chrome/android/java/res/layout/incognito_cookie_controls_card.xml -index 9efaf7fdd684b..750bff260cbef 100644 +index 0610eab74ac2c..68e862d7e0c19 100644 --- a/chrome/android/java/res/layout/incognito_cookie_controls_card.xml +++ b/chrome/android/java/res/layout/incognito_cookie_controls_card.xml @@ -26,7 +26,7 @@ found in the LICENSE file. @@ -137,24 +123,11 @@ index e980248bb75e2..59bf07c11172c 100644 xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/toggle_switch" android:layout_width="wrap_content" -diff --git a/chrome/browser/tab_ui/android/java/src/org/chromium/chrome/browser/tab_ui/TabUiThemeUtils.java b/chrome/browser/tab_ui/android/java/src/org/chromium/chrome/browser/tab_ui/TabUiThemeUtils.java -index 80b7b8611405d..c948629ab0bfd 100644 ---- a/chrome/browser/tab_ui/android/java/src/org/chromium/chrome/browser/tab_ui/TabUiThemeUtils.java -+++ b/chrome/browser/tab_ui/android/java/src/org/chromium/chrome/browser/tab_ui/TabUiThemeUtils.java -@@ -130,7 +130,7 @@ public class TabUiThemeUtils { - @ColorInt - int colorInt = - isSelected -- ? MaterialColors.getColor(context, R.attr.colorPrimary, TAG) -+ ? context.getColor(R.color.default_control_color_active_baseline) - : new ElevationOverlayProvider(context) - .compositeOverlayWithThemeSurfaceColorIfNeeded(tabElevation); - return colorInt; diff --git a/chrome/browser/ui/android/fast_checkout/internal/java/res/layout/fast_checkout_autofill_profile_item.xml b/chrome/browser/ui/android/fast_checkout/internal/java/res/layout/fast_checkout_autofill_profile_item.xml -index 3a1e173d18087..7cc57a67dba9f 100644 +index 8521910dd154b..e7fe84b68c599 100644 --- a/chrome/browser/ui/android/fast_checkout/internal/java/res/layout/fast_checkout_autofill_profile_item.xml +++ b/chrome/browser/ui/android/fast_checkout/internal/java/res/layout/fast_checkout_autofill_profile_item.xml -@@ -81,6 +81,6 @@ found in the LICENSE file. +@@ -87,6 +87,6 @@ found in the LICENSE file. android:layout_marginEnd="@dimen/fast_checkout_detail_sheet_selected_icon_margin_end" android:layout_gravity="center_vertical" android:contentDescription="@null" @@ -185,10 +158,10 @@ index ecc6bc6b9b150..175082479e551 100644 - app:drawableTint="?attr/colorPrimary" /> + app:drawableTint="@color/default_control_color_active_baseline" /> diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarViewBinder.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarViewBinder.java -index 141a674ec162e..86da486c4a949 100644 +index ff67c27ab51b1..afbc8591bf91a 100644 --- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarViewBinder.java +++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarViewBinder.java -@@ -144,7 +144,7 @@ class UrlBarViewBinder { +@@ -160,7 +160,7 @@ class UrlBarViewBinder { final int color = useIncognitoColors ? view.getContext().getColor(R.color.default_control_color_active_dark) @@ -198,10 +171,10 @@ index 141a674ec162e..86da486c4a949 100644 textSelectHandle.mutate().setTint(color); textSelectHandleLeft.mutate().setTint(color); diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/styles/OmniboxResourceProvider.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/styles/OmniboxResourceProvider.java -index c9fea8e3cbb84..c52583ee654e3 100644 +index 82f80e0f8d00c..162387f41fb27 100644 --- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/styles/OmniboxResourceProvider.java +++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/styles/OmniboxResourceProvider.java -@@ -355,7 +355,7 @@ public class OmniboxResourceProvider { +@@ -357,7 +357,7 @@ public class OmniboxResourceProvider { if (brandedColorScheme == BrandedColorScheme.INCOGNITO) { return context.getColor(R.color.locationbar_status_preview_color_incognito); } @@ -221,19 +194,19 @@ index 56a1aac203baa..40a9798da1323 100644 - app:drawableTint="?attr/colorPrimary" /> + app:drawableTint="@color/default_control_color_active_baseline" /> diff --git a/components/browser_ui/styles/android/BUILD.gn b/components/browser_ui/styles/android/BUILD.gn -index be538b0b26b4c..a0fd551143424 100644 +index bd8a54f94a494..058b17eae7051 100644 --- a/components/browser_ui/styles/android/BUILD.gn +++ b/components/browser_ui/styles/android/BUILD.gn -@@ -60,6 +60,8 @@ android_resources("java_resources") { +@@ -69,6 +69,8 @@ android_resources("java_resources") { + "java/res/color/text_button_ripple_color_list.xml", "java/res/color/text_highlight_color.xml", - "java/res/color/toolbar_button_highlight_color.xml", "java/res/color/toolbar_icon_unfocused_activity_tint_list.xml", + "java/res/color/e_switch_thumb_color.xml", + "java/res/color/e_switch_track_color.xml", "java/res/drawable-hdpi/btn_star_filled.png", "java/res/drawable-hdpi/ic_delete_white_24dp.png", "java/res/drawable-hdpi/ic_edit_24dp.png", -@@ -239,6 +241,8 @@ android_resources("java_resources") { +@@ -248,6 +250,8 @@ android_resources("java_resources") { "java/res/drawable/smartphone_black_24dp.xml", "java/res/drawable/star_outline_24dp.xml", "java/res/drawable/toolbar_hairline.xml", @@ -307,10 +280,10 @@ index 0000000000000..f5b1eed6f2e6f + + diff --git a/components/browser_ui/styles/android/java/res/values/semantic_colors_dynamic.xml b/components/browser_ui/styles/android/java/res/values/semantic_colors_dynamic.xml -index 3355579948d4d..c77354a73b353 100644 +index 8e1bff0e66c29..85af0fb69c95b 100644 --- a/components/browser_ui/styles/android/java/res/values/semantic_colors_dynamic.xml +++ b/components/browser_ui/styles/android/java/res/values/semantic_colors_dynamic.xml -@@ -9,18 +9,18 @@ found in the LICENSE file. +@@ -10,18 +10,18 @@ found in the LICENSE file. ?attr/colorSurface ?attr/colorSurfaceInverse @@ -333,7 +306,7 @@ index 3355579948d4d..c77354a73b353 100644 ?attr/colorOnPrimaryContainer ?attr/colorOnSecondaryContainer diff --git a/components/browser_ui/styles/android/java/res/values/styles.xml b/components/browser_ui/styles/android/java/res/values/styles.xml -index 02585125cdd61..ef97cec350f25 100644 +index fb0202a423d86..57316b90496dd 100644 --- a/components/browser_ui/styles/android/java/res/values/styles.xml +++ b/components/browser_ui/styles/android/java/res/values/styles.xml @@ -20,9 +20,13 @@ found in the LICENSE file. @@ -351,7 +324,7 @@ index 02585125cdd61..ef97cec350f25 100644