Compare commits

..
Author SHA1 Message Date
Carmelo Messina 5cf1c61c79 [TOOLS] Use correct win sdk folder for release 2025-10-10 09:43:43 +02:00
uazo fb75694894 [AUTO] Patches auto-rebase for master branch (#2394)
[AUTO] Patches auto-rebase for master branch
2025-10-09 09:12:52 -08:00
uazo 95f5d33c06 [AUTO] Patches auto-rebase 2025-10-09 17:11:38 +00:00
Carmelo Messina fdfab76bcb Bump to 141.0.7390.70 2025-10-09 17:57:05 +02:00
uazo 99ab223de2 [AUTO][DOC] Generate patches doc for master branch (#2393)
[AUTO][DOC] Generate patches doc for master branch
2025-10-09 06:58:09 -03:00
uazo 25f72a0f55 [AUTO][DOC] Generate patches doc for master branch 2025-10-09 09:45:53 +00:00
Carmelo Messina 6fa2e7b98f Add setting to enable Credman for passkeys: enable CredentialManager APIs for A14+ (#2296 #329)
thanks to jhult
2025-10-09 11:45:09 +02:00
Carmelo Messina 873bc4ea61 Content settings infrastructure: fix crash on desktop due to api change 2025-10-09 11:34:50 +02:00
Carmelo Messina 84c145ee0f Keep disabled WebViewMediaIntegrityApi: fix webview build 2025-10-09 11:33:41 +02:00
Carmelo Messina 04ddfbf174 Set the screen frame rate to 60 Hz: added switch in settings (#2336 #1538) 2025-10-09 11:33:09 +02:00
Carmelo Messina b2824377c3 Force use vpython3 for some scripts: add third_party/perfetto to NOEXPORT
Remove third_party/perfetto subrepo
2025-10-02 11:31:25 +02:00
uazo 97edd08128 [AUTO][FILECONTROL] - version 141.0.7390.55 (#2355)
[AUTO][FILECONTROL] - version 141.0.7390.55
2025-10-01 18:27:11 +03:00
uazo 94a94e3723 [AUTO][DOC] Generate patches doc for master branch (#2373)
[AUTO][DOC] Generate patches doc for master branch
2025-10-01 18:26:37 +03:00
Carmelo Messina c8b3003365 [GN ARGS] remove use_sysroot = true 2025-10-01 17:25:46 +02:00
Carmelo Messina 24bcd5b5e8 Set the screen frame rate to 60 Hz: fix lag issues (#2336 #1538) 2025-10-01 17:20:43 +02:00
Carmelo Messina 1e9da1d4e3 Add option to disable snapshots: fix for 141 2025-10-01 17:16:44 +02:00
uazo 46d25fdcee [AUTO][DOC] Generate patches doc for master branch 2025-10-01 14:17:25 +00:00
uazo 5f64f84227 Rebase to 141 (#2366)
Rebase to 141
2025-10-01 17:16:23 +03:00
uazo d053c28503 [AUTO] Patches auto-rebase for next-141 branch (#2372)
[AUTO] Patches auto-rebase for next-141 branch
2025-10-01 17:14:45 +03:00
uazo cf1d9c00eb [AUTO] Patches auto-rebase 2025-10-01 14:13:36 +00:00
Carmelo Messina ad41529d2c Bump to 141.0.7390.55 2025-10-01 16:06:00 +02:00
Carmelo Messina 0c64054227 Patches for 141: drop Temporarily-disable-Tab-Group-Sync-Android.patch 2025-10-01 16:05:19 +02:00
Carmelo Messina 2c5a3eafdb Patches for 141 (no changes) 2025-10-01 16:04:45 +02:00
Carmelo Messina 610064ef2d Patches for 141 (final) 2025-10-01 16:04:10 +02:00
uazo f36bbcc871 [AUTO][FILECONTROL] - version 141.0.7390.55 2025-10-01 03:29:20 +00:00
Carmelo Messina 52aa63df2f Bump to 141.0.7390.43 2025-09-29 11:51:54 +02:00
Carmelo Messina 5a30f6fe3a Patches for 141 (need works) 2025-09-29 11:51:24 +02:00
Carmelo Messina 8e5a82cb9e Patches for 141 2025-09-29 11:50:52 +02:00
356 changed files with 22916 additions and 7408 deletions
+1 -1
View File
@@ -181,7 +181,7 @@ jobs:
KYTHE_CORPUS: chromium.googlesource.com/chromium/src KYTHE_CORPUS: chromium.googlesource.com/chromium/src
KYTHE_ROOT_DIRECTORY: /home/lg/working_dir/chromium/src KYTHE_ROOT_DIRECTORY: /home/lg/working_dir/chromium/src
KYTHE_OUTPUT_DIRECTORY: /home/lg/working_dir/chromium/src/out/arm64/kythe KYTHE_OUTPUT_DIRECTORY: /home/lg/working_dir/chromium/src/out/arm64/kythe
# cross build # cross build (change also release.yaml)
DEPOT_TOOLS_WIN_TOOLCHAIN_BASE_URL: /win_sdk/sdks/Win11SDK_10.0.26100.0/ DEPOT_TOOLS_WIN_TOOLCHAIN_BASE_URL: /win_sdk/sdks/Win11SDK_10.0.26100.0/
WINDOWSSDKDIR: "/win_sdk/sdks/Win11SDK_10.0.26100.0/Windows Kits/10/" WINDOWSSDKDIR: "/win_sdk/sdks/Win11SDK_10.0.26100.0/Windows Kits/10/"
GYP_MSVS_OVERRIDE_PATH: /win_sdk/sdks/Win11SDK_10.0.26100.0/ GYP_MSVS_OVERRIDE_PATH: /win_sdk/sdks/Win11SDK_10.0.26100.0/
+1 -4
View File
@@ -130,7 +130,7 @@ jobs:
cp $OUTPUTFILE_WIN/chrome_proxy.exe chrome-win/ cp $OUTPUTFILE_WIN/chrome_proxy.exe chrome-win/
cp $OUTPUTFILE_WIN/chrome_pwa_launcher.exe chrome-win/ cp $OUTPUTFILE_WIN/chrome_pwa_launcher.exe chrome-win/
cp $OUTPUTFILE_WIN/chrome_wer.dll chrome-win/ cp $OUTPUTFILE_WIN/chrome_wer.dll chrome-win/
cp "/win_sdk/10.0.22621.0/Windows Kits/10/Redist/D3D/x64/d3dcompiler_47.dll" chrome-win/ cp "/win_sdk/sdks/Win11SDK_10.0.26100.0/Windows Kits/10/Redist/D3D/x64/d3dcompiler_47.dll" chrome-win/
cp $OUTPUTFILE_WIN/elevation_service.exe chrome-win/ cp $OUTPUTFILE_WIN/elevation_service.exe chrome-win/
cp "$OUTPUTFILE_WIN/First Run" chrome-win/ cp "$OUTPUTFILE_WIN/First Run" chrome-win/
cp $OUTPUTFILE_WIN/headless_lib_data.pak chrome-win/ cp $OUTPUTFILE_WIN/headless_lib_data.pak chrome-win/
@@ -201,7 +201,4 @@ jobs:
$GH release edit $VERSION-$CROMITE_SHA --draft=false $GH release edit $VERSION-$CROMITE_SHA --draft=false
fi fi
VERSION=$(cat ${{ env.OUTPUTFILE_ARM64 }}/RELEASE)
docker push uazo/cromite:$VERSION-$CROMITE_SHA
docker push uazo/cromite-build:$VERSION-$CROMITE_SHA
+1 -1
View File
@@ -1 +1 @@
140.0.7339.186 141.0.7390.70
-1
View File
@@ -24,7 +24,6 @@ use_debug_fission=true
use_errorprone_java_compiler=false use_errorprone_java_compiler=false
use_official_google_api_keys=false use_official_google_api_keys=false
use_rtti=false use_rtti=false
use_sysroot=false
webview_includes_weblayer=false webview_includes_weblayer=false
enable_arcore=false enable_arcore=false
enable_openxr=false enable_openxr=false
+1 -1
View File
@@ -304,6 +304,7 @@ Android-Pixel-Perfect-Mode.patch
Set-caret-blink-interval-to-default.patch Set-caret-blink-interval-to-default.patch
Set-the-screen-frame-rate-to-60-Hz.patch Set-the-screen-frame-rate-to-60-Hz.patch
Disable-Device-Attributes-API.patch Disable-Device-Attributes-API.patch
Add-setting-to-enable-Credman-for-passkeys.patch
Temp-disable-UseContextSnapshot.patch Temp-disable-UseContextSnapshot.patch
# temporary or wip patches # temporary or wip patches
@@ -314,7 +315,6 @@ Temp-guard-FileSystemAccessPersistentPermissions.patch
Never-treat-Proguard-warnings-as-errors.patch Never-treat-Proguard-warnings-as-errors.patch
Temp-disable-experimental-web-platform-features.patch Temp-disable-experimental-web-platform-features.patch
Block-leakage-of-urls-in-sandbox-iframes.patch Block-leakage-of-urls-in-sandbox-iframes.patch
Temporarily-disable-Tab-Group-Sync-Android.patch
Fix-chromium-build-bugs.patch Fix-chromium-build-bugs.patch
Try-to-fix-2082.patch Try-to-fix-2082.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 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
@@ -236,6 +236,7 @@ import org.chromium.content_public.browser.LoadUrlParams; @@ -239,6 +239,7 @@ import org.chromium.content_public.browser.LoadUrlParams;
import org.chromium.content_public.browser.SelectionPopupController; import org.chromium.content_public.browser.SelectionPopupController;
import org.chromium.content_public.browser.WebContents; import org.chromium.content_public.browser.WebContents;
import org.chromium.content_public.common.ContentSwitches; 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.PrintManagerDelegateImpl;
import org.chromium.printing.PrintingController; import org.chromium.printing.PrintingController;
import org.chromium.printing.PrintingControllerImpl; import org.chromium.printing.PrintingControllerImpl;
@@ -985,6 +986,8 @@ public abstract class ChromeActivity extends AsyncInitializationActivity @@ -999,6 +1000,8 @@ public abstract class ChromeActivity extends AsyncInitializationActivity
super.onStartWithNative(); super.onStartWithNative();
ChromeActivitySessionTracker.getInstance().onStartWithNative(getProfileProviderSupplier()); 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 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 --- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc +++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -184,6 +184,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { @@ -181,6 +181,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
&feed::kFeedPerformanceStudy, &feed::kFeedPerformanceStudy,
&feed::kFeedShowSignInCommand, &feed::kFeedShowSignInCommand,
&feed::kFeedSignedOutViewDemotion, &feed::kFeedSignedOutViewDemotion,
@@ -59,7 +59,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
public static final String ADAPTIVE_BUTTON_IN_TOP_TOOLBAR_PAGE_SUMMARY = public static final String ADAPTIVE_BUTTON_IN_TOP_TOOLBAR_PAGE_SUMMARY =
"AdaptiveButtonInTopToolbarPageSummary"; "AdaptiveButtonInTopToolbarPageSummary";
public static final String ALLOW_TAB_CLOSING_UPON_MINIMIZATION = public static final String ALLOW_TAB_CLOSING_UPON_MINIMIZATION =
@@ -768,6 +769,8 @@ public abstract class ChromeFeatureList { @@ -796,6 +797,8 @@ public abstract class ChromeFeatureList {
public static final CachedFlag sAndroidWindowPopupResizeAfterSpawn = public static final CachedFlag sAndroidWindowPopupResizeAfterSpawn =
newCachedFlag(ANDROID_WINDOW_POPUP_RESIZE_AFTER_SPAWN, false); newCachedFlag(ANDROID_WINDOW_POPUP_RESIZE_AFTER_SPAWN, false);
public static final CachedFlag sAppSpecificHistory = newCachedFlag(APP_SPECIFIC_HISTORY, true); public static final CachedFlag sAppSpecificHistory = newCachedFlag(APP_SPECIFIC_HISTORY, true);
@@ -68,9 +68,9 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
public static final CachedFlag sAppSpecificHistoryViewIntent = public static final CachedFlag sAppSpecificHistoryViewIntent =
newCachedFlag(APP_SPECIFIC_HISTORY_VIEW_INTENT, true); newCachedFlag(APP_SPECIFIC_HISTORY_VIEW_INTENT, true);
public static final CachedFlag sAsyncNotificationManager = public static final CachedFlag sAsyncNotificationManager =
@@ -1080,6 +1083,7 @@ public abstract class ChromeFeatureList { @@ -1131,6 +1134,7 @@ public abstract class ChromeFeatureList {
sAccountForSuppressedKeyboardInsets, sAndroidAnimatedProgressBarInBrowser,
sAllowTabClosingUponMinimization, sAndroidAnimatedProgressBarInViz,
sAndroidAppIntegration, sAndroidAppIntegration,
+ sAllowUserCertificates, + sAllowUserCertificates,
sAndroidAppIntegrationModule, sAndroidAppIntegrationModule,
@@ -4,21 +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 License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
--- ---
.../src/org/chromium/chrome/browser/KeyboardShortcuts.java | 5 +++++ .../src/org/chromium/chrome/browser/KeyboardShortcuts.java | 6 ++++++
1 file changed, 5 insertions(+) 1 file changed, 6 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 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java
@@ -890,6 +890,11 @@ public class KeyboardShortcuts { @@ -895,6 +895,12 @@ public class KeyboardShortcuts {
KeyEvent.KEYCODE_B, KeyEvent.KEYCODE_ESCAPE,
(KeyEvent.META_CTRL_ON | KeyEvent.META_SHIFT_ON)); KeyEvent.META_CTRL_ON);
} }
+ addShortcut(context, + addShortcut(context,
+ shortcutGroupsById.get(R.string.keyboard_shortcut_chrome_feature_group_header), + shortcutGroupsById,
+ R.string.keyboard_shortcut_address_bar, + R.string.keyboard_shortcut_chrome_feature_group_header,
+ KeyEvent.KEYCODE_D, + R.string.keyboard_shortcut_address_bar,
+ KeyEvent.META_ALT_ON); + KeyEvent.KEYCODE_D,
+ KeyEvent.META_ALT_ON);
return new ArrayList<>(shortcutGroupsById.values()); return new ArrayList<>(shortcutGroupsById.values());
} }
@@ -15,7 +15,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/base/features.cc b/base/features.cc diff --git a/base/features.cc b/base/features.cc
--- a/base/features.cc --- a/base/features.cc
+++ b/base/features.cc +++ b/base/features.cc
@@ -149,6 +149,10 @@ bool IsReducePPMsEnabled() { @@ -129,6 +129,10 @@ bool IsReducePPMsEnabled() {
return g_is_reduce_ppms_enabled.load(std::memory_order_relaxed); return g_is_reduce_ppms_enabled.load(std::memory_order_relaxed);
} }
@@ -29,15 +29,15 @@ diff --git a/base/features.cc b/base/features.cc
diff --git a/content/renderer/render_process_impl.cc b/content/renderer/render_process_impl.cc diff --git a/content/renderer/render_process_impl.cc b/content/renderer/render_process_impl.cc
--- a/content/renderer/render_process_impl.cc --- a/content/renderer/render_process_impl.cc
+++ b/content/renderer/render_process_impl.cc +++ b/content/renderer/render_process_impl.cc
@@ -7,6 +7,7 @@ @@ -2,6 +2,7 @@
#pragma allow_unsafe_libc_calls // Use of this source code is governed by a BSD-style license that can be
#endif // found in the LICENSE file.
+#include "base/features.h" +#include "base/features.h"
#include "content/renderer/render_process_impl.h" #include "content/renderer/render_process_impl.h"
#include "build/build_config.h" #include "build/build_config.h"
@@ -127,10 +128,18 @@ RenderProcessImpl::RenderProcessImpl() @@ -122,10 +123,18 @@ RenderProcessImpl::RenderProcessImpl()
base::CommandLine::ForCurrentProcess()->HasSwitch( base::CommandLine::ForCurrentProcess()->HasSwitch(
switches::kDisallowV8FeatureFlagOverrides); switches::kDisallowV8FeatureFlagOverrides);
if (!disallow_v8_feature_flag_overrides) { if (!disallow_v8_feature_flag_overrides) {
@@ -17,7 +17,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json
--- a/chrome/browser/flag-metadata.json --- a/chrome/browser/flag-metadata.json
+++ b/chrome/browser/flag-metadata.json +++ b/chrome/browser/flag-metadata.json
@@ -8690,9 +8690,9 @@ @@ -8787,9 +8787,9 @@
"expiry_milestone": 150 "expiry_milestone": 150
}, },
{ {
@@ -28,11 +28,11 @@ diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.js
+ "expiry_milestone": -1 + "expiry_milestone": -1
}, },
{ {
"name": "retain-omnibox-on-focus", "name": "rewriter-api-for-gemini-nano",
diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.cc diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.cc
--- a/content/child/runtime_features.cc --- a/content/child/runtime_features.cc
+++ b/content/child/runtime_features.cc +++ b/content/child/runtime_features.cc
@@ -258,6 +258,8 @@ void SetRuntimeFeaturesFromChromiumFeatures() { @@ -263,6 +263,8 @@ void SetRuntimeFeaturesFromChromiumFeatures() {
{wf::EnablePaymentApp, raw_ref(features::kServiceWorkerPaymentApps)}, {wf::EnablePaymentApp, raw_ref(features::kServiceWorkerPaymentApps)},
{wf::EnablePeriodicBackgroundSync, {wf::EnablePeriodicBackgroundSync,
raw_ref(features::kPeriodicBackgroundSync)}, raw_ref(features::kPeriodicBackgroundSync)},
@@ -56,7 +56,7 @@ new file mode 100644
diff --git a/device/gamepad/public/cpp/gamepad_features.cc b/device/gamepad/public/cpp/gamepad_features.cc diff --git a/device/gamepad/public/cpp/gamepad_features.cc b/device/gamepad/public/cpp/gamepad_features.cc
--- a/device/gamepad/public/cpp/gamepad_features.cc --- a/device/gamepad/public/cpp/gamepad_features.cc
+++ b/device/gamepad/public/cpp/gamepad_features.cc +++ b/device/gamepad/public/cpp/gamepad_features.cc
@@ -36,4 +36,12 @@ bool IsGamepadMultitouchEnabled() { @@ -33,4 +33,12 @@ bool IsGamepadMultitouchEnabled() {
return false; return false;
} }
@@ -78,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 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 --- 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 +++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
@@ -100,6 +100,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_PASSWORD_LEAK_DETECTION = "password_leak_detection";
private static final String PREF_SYNC_AND_SERVICES_LINK = "sync_and_services_link"; private static final String PREF_SYNC_AND_SERVICES_LINK = "sync_and_services_link";
private static final String PREF_PRIVACY_SANDBOX = "privacy_sandbox"; private static final String PREF_PRIVACY_SANDBOX = "privacy_sandbox";
@@ -89,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 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 --- a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
+++ b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc +++ b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
@@ -376,6 +376,7 @@ ChromeAutocompleteProviderClient::GetBuiltinsToProvideAsUserTypes() { @@ -409,6 +409,7 @@ ChromeAutocompleteProviderClient::GetBuiltinsToProvideAsUserTypes() {
builtins_to_provide.push_back(chrome::kChromeUISettingsURL16); builtins_to_provide.push_back(chrome::kChromeUISettingsURL16);
#endif #endif
builtins_to_provide.push_back(chrome::kChromeUIVersionURL16); builtins_to_provide.push_back(chrome::kChromeUIVersionURL16);
@@ -206,7 +206,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse
#if BUILDFLAG(ENABLE_BACKGROUND_MODE) #if BUILDFLAG(ENABLE_BACKGROUND_MODE)
#include "chrome/browser/background/extensions/background_mode_manager.h" #include "chrome/browser/background/extensions/background_mode_manager.h"
#endif #endif
@@ -1605,6 +1607,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) { @@ -1692,6 +1694,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) {
component_updater::RegisterPrefs(registry); component_updater::RegisterPrefs(registry);
domain_reliability::RegisterPrefs(registry); domain_reliability::RegisterPrefs(registry);
embedder_support::OriginTrialPrefs::RegisterPrefs(registry); embedder_support::OriginTrialPrefs::RegisterPrefs(registry);
@@ -661,7 +661,7 @@ new file mode 100644
diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn
--- a/chrome/browser/ui/BUILD.gn --- a/chrome/browser/ui/BUILD.gn
+++ b/chrome/browser/ui/BUILD.gn +++ b/chrome/browser/ui/BUILD.gn
@@ -169,6 +169,8 @@ static_library("ui") { @@ -156,6 +156,8 @@ static_library("ui") {
"webui/metrics_internals/metrics_internals_ui.h", "webui/metrics_internals/metrics_internals_ui.h",
"webui/net_export_ui.cc", "webui/net_export_ui.cc",
"webui/net_export_ui.h", "webui/net_export_ui.h",
@@ -683,7 +683,7 @@ diff --git a/chrome/browser/ui/webui/chrome_web_ui_configs.cc b/chrome/browser/u
#if BUILDFLAG(ENABLE_WEBUI_CERTIFICATE_VIEWER) #if BUILDFLAG(ENABLE_WEBUI_CERTIFICATE_VIEWER)
#include "chrome/browser/ui/webui/certificate_viewer/certificate_viewer_ui.h" #include "chrome/browser/ui/webui/certificate_viewer/certificate_viewer_ui.h"
#endif #endif
@@ -422,7 +425,7 @@ void RegisterChromeWebUIConfigs() { @@ -424,7 +427,7 @@ void RegisterChromeWebUIConfigs() {
map.AddWebUIConfig(std::make_unique<glic::GlicUIConfig>()); map.AddWebUIConfig(std::make_unique<glic::GlicUIConfig>());
map.AddWebUIConfig(std::make_unique<glic::GlicFreUIConfig>()); map.AddWebUIConfig(std::make_unique<glic::GlicFreUIConfig>());
#endif #endif
@@ -1135,7 +1135,7 @@ new file mode 100644
diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_constants.cc diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_constants.cc
--- a/chrome/common/webui_url_constants.cc --- a/chrome/common/webui_url_constants.cc
+++ b/chrome/common/webui_url_constants.cc +++ b/chrome/common/webui_url_constants.cc
@@ -50,6 +50,7 @@ bool IsSystemWebUIHost(std::string_view host) { @@ -53,6 +53,7 @@ bool IsSystemWebUIHost(std::string_view host) {
kChromeUILockScreenNetworkHost, kChromeUILockScreenNetworkHost,
kChromeUILockScreenStartReauthHost, kChromeUILockScreenStartReauthHost,
kChromeUIMobileSetupHost, kChromeUIMobileSetupHost,
@@ -1143,7 +1143,7 @@ diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_cons
kChromeUIMultiDeviceSetupHost, kChromeUIMultiDeviceSetupHost,
kChromeUINetworkHost, kChromeUINetworkHost,
kChromeUINotificationTesterHost, kChromeUINotificationTesterHost,
@@ -71,6 +72,7 @@ bool IsSystemWebUIHost(std::string_view host) { @@ -74,6 +75,7 @@ bool IsSystemWebUIHost(std::string_view host) {
// These hosts will also be suggested by BuiltinProvider. // These hosts will also be suggested by BuiltinProvider.
base::span<const base::cstring_view> ChromeURLHosts() { base::span<const base::cstring_view> ChromeURLHosts() {
static constexpr auto kChromeURLHosts = std::to_array<base::cstring_view>({ static constexpr auto kChromeURLHosts = std::to_array<base::cstring_view>({
+123 -132
View File
@@ -28,11 +28,11 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../chrome/browser/app/ChromeActivity.java | 4 + .../chrome/browser/app/ChromeActivity.java | 4 +
.../AppMenuPropertiesDelegateImpl.java | 7 +- .../AppMenuPropertiesDelegateImpl.java | 7 +-
.../ChromeContextMenuPopulator.java | 6 +- .../ChromeContextMenuPopulator.java | 6 +-
.../CustomTabActivityLifecycleUmaTracker.java | 39 ---- .../CustomTabActivityLifecycleUmaTracker.java | 31 ----
.../CustomTabAppMenuPropertiesDelegate.java | 4 + .../CustomTabAppMenuPropertiesDelegate.java | 4 +
.../CustomTabIntentDataProvider.java | 10 + .../CustomTabIntentDataProvider.java | 10 +
.../browser/download/DownloadUtils.java | 13 +- .../browser/download/DownloadUtils.java | 13 +-
.../history/HistoryContentManager.java | 7 +- .../history/HistoryContentManager.java | 9 +-
.../browser/history/HistoryManager.java | 27 ++- .../browser/history/HistoryManager.java | 27 ++-
.../chrome/browser/history/HistoryPage.java | 16 ++ .../chrome/browser/history/HistoryPage.java | 16 ++
.../native_page/NativePageFactory.java | 4 +- .../native_page/NativePageFactory.java | 4 +-
@@ -42,7 +42,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../HistoricalTabModelObserver.java | 5 +- .../HistoricalTabModelObserver.java | 5 +-
.../tab/tab_restore/HistoricalTabSaver.java | 2 +- .../tab/tab_restore/HistoricalTabSaver.java | 2 +-
.../tab_restore/HistoricalTabSaverImpl.java | 17 +- .../tab_restore/HistoricalTabSaverImpl.java | 17 +-
.../TabbedAppMenuPropertiesDelegate.java | 6 +- .../TabbedAppMenuPropertiesDelegate.java | 4 +-
.../tabbed_mode/TabbedRootUiCoordinator.java | 4 +- .../tabbed_mode/TabbedRootUiCoordinator.java | 4 +-
.../browser/tabmodel/ChromeTabCreator.java | 5 +- .../browser/tabmodel/ChromeTabCreator.java | 5 +-
.../tabmodel/TabModelSelectorImpl.java | 3 + .../tabmodel/TabModelSelectorImpl.java | 3 +
@@ -71,7 +71,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../browser/ui/native_page/NativePage.java | 22 ++- .../browser/ui/native_page/NativePage.java | 22 ++-
.../browser/omnibox/LocationBarMediator.java | 8 + .../browser/omnibox/LocationBarMediator.java | 8 +
.../strings/android_chrome_strings.grd | 25 +++ .../strings/android_chrome_strings.grd | 25 +++
.../browser/toolbar/LocationBarModel.java | 5 +- .../browser/toolbar/LocationBarModel.java | 4 +-
chrome/browser/ui/messages/android/BUILD.gn | 1 + chrome/browser/ui/messages/android/BUILD.gn | 1 +
.../snackbar/INeedSnackbarManager.java | 28 +++ .../snackbar/INeedSnackbarManager.java | 28 +++
.../search_engine_tab_helper.cc | 6 + .../search_engine_tab_helper.cc | 6 +
@@ -88,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 | 1 +
.../add-an-always-incognito-mode.inc | 3 + .../add-an-always-incognito-mode.inc | 3 +
.../add-an-always-incognito-mode.inc | 1 + .../add-an-always-incognito-mode.inc | 1 +
69 files changed, 797 insertions(+), 111 deletions(-) 69 files changed, 794 insertions(+), 105 deletions(-)
create mode 100644 chrome/android/java/res/xml/incognito_preferences.xml 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/AlwaysIncognitoLinkInterceptor.java
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/IncognitoSettings.java create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/IncognitoSettings.java
@@ -101,8 +101,8 @@ 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 diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_java_resources.gni
--- a/chrome/android/chrome_java_resources.gni --- a/chrome/android/chrome_java_resources.gni
+++ b/chrome/android/chrome_java_resources.gni +++ b/chrome/android/chrome_java_resources.gni
@@ -620,6 +620,7 @@ chrome_java_resources = [ @@ -624,6 +624,7 @@ chrome_java_resources = [
"java/res/xml/main_preferences_legacy.xml", "java/res/xml/main_preferences.xml",
"java/res/xml/manage_sync_preferences.xml", "java/res/xml/manage_sync_preferences.xml",
"java/res/xml/personalize_google_services_preferences.xml", "java/res/xml/personalize_google_services_preferences.xml",
+ "java/res/xml/incognito_preferences.xml", + "java/res/xml/incognito_preferences.xml",
@@ -120,8 +120,8 @@ 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/com/google/android/apps/chrome/appwidget/bookmarks/BookmarkThumbnailWidgetProvider.java",
"java/src/org/chromium/chrome/browser/ActivityTabProvider.java", "java/src/org/chromium/chrome/browser/ActivityTabProvider.java",
"java/src/org/chromium/chrome/browser/ActivityUtils.java", "java/src/org/chromium/chrome/browser/ActivityUtils.java",
@@ -908,6 +909,7 @@ chrome_java_sources = [ @@ -916,6 +917,7 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/privacy/settings/IncognitoLockSettings.java", "java/src/org/chromium/chrome/browser/privacy/settings/PasswordEchoSettingHandlerFactory.java",
"java/src/org/chromium/chrome/browser/privacy/settings/PrivacyPreferencesManagerImpl.java", "java/src/org/chromium/chrome/browser/privacy/settings/PrivacyPreferencesManagerImpl.java",
"java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java", "java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java",
+ "java/src/org/chromium/chrome/browser/privacy/settings/IncognitoSettings.java", + "java/src/org/chromium/chrome/browser/privacy/settings/IncognitoSettings.java",
@@ -247,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 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
@@ -74,6 +74,10 @@ import org.chromium.build.annotations.Nullable; @@ -73,6 +73,10 @@ import org.chromium.build.annotations.Nullable;
import org.chromium.build.annotations.UsedByReflection; import org.chromium.build.annotations.UsedByReflection;
import org.chromium.cc.input.BrowserControlsState; import org.chromium.cc.input.BrowserControlsState;
import org.chromium.chrome.R; import org.chromium.chrome.R;
@@ -258,7 +258,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
import org.chromium.chrome.browser.IntentHandler.ExternalAppId; import org.chromium.chrome.browser.IntentHandler.ExternalAppId;
import org.chromium.chrome.browser.IntentHandler.TabOpenType; import org.chromium.chrome.browser.IntentHandler.TabOpenType;
import org.chromium.chrome.browser.app.ChromeActivity; import org.chromium.chrome.browser.app.ChromeActivity;
@@ -794,14 +798,19 @@ public class ChromeTabbedActivity extends ChromeActivity { @@ -803,14 +807,19 @@ public class ChromeTabbedActivity extends ChromeActivity {
Profile profile = mTabModelSelector.getCurrentModel().getProfile(); Profile profile = mTabModelSelector.getCurrentModel().getProfile();
// For saving non-incognito tab closures for Recent Tabs. // For saving non-incognito tab closures for Recent Tabs.
@@ -285,9 +285,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
// Defer creation of this helper so it triggers after TabGroupModelFilter observers. // Defer creation of this helper so it triggers after TabGroupModelFilter observers.
mUndoRefocusHelper = mUndoRefocusHelper =
new UndoRefocusHelper( new UndoRefocusHelper(
@@ -3137,7 +3146,7 @@ public class ChromeTabbedActivity extends ChromeActivity { @@ -3228,7 +3237,7 @@ public class ChromeTabbedActivity extends ChromeActivity {
}
// We determine SupportedProfileType in onPreCreate().
// We determine the model as soon as possible so every systems get initialized coherently. // We determine the model as soon as possible so every systems get initialized coherently.
- boolean startIncognito = - boolean startIncognito =
+ boolean startIncognito = AlwaysIncognitoLinkInterceptor.isAlwaysIncognito() || + boolean startIncognito = AlwaysIncognitoLinkInterceptor.isAlwaysIncognito() ||
@@ -297,7 +297,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 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
@@ -95,6 +95,7 @@ import org.chromium.chrome.browser.compositor.layouts.content.TabContentManagerH @@ -98,6 +98,7 @@ import org.chromium.chrome.browser.compositor.layouts.content.TabContentManagerH
import org.chromium.chrome.browser.contextualsearch.ContextualSearchManager; import org.chromium.chrome.browser.contextualsearch.ContextualSearchManager;
import org.chromium.chrome.browser.device.DeviceClassManager; import org.chromium.chrome.browser.device.DeviceClassManager;
import org.chromium.chrome.browser.devtools.DevToolsWindowAndroid; import org.chromium.chrome.browser.devtools.DevToolsWindowAndroid;
@@ -305,7 +305,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
import org.chromium.chrome.browser.dom_distiller.DomDistillerUiUtils; import org.chromium.chrome.browser.dom_distiller.DomDistillerUiUtils;
import org.chromium.chrome.browser.dom_distiller.ReaderModeManager; import org.chromium.chrome.browser.dom_distiller.ReaderModeManager;
import org.chromium.chrome.browser.download.DownloadManagerService; import org.chromium.chrome.browser.download.DownloadManagerService;
@@ -2000,6 +2001,9 @@ public abstract class ChromeActivity extends AsyncInitializationActivity @@ -2028,6 +2029,9 @@ public abstract class ChromeActivity extends AsyncInitializationActivity
throw new IllegalStateException( throw new IllegalStateException(
"Attempting to access TabCreator before initialization"); "Attempting to access TabCreator before initialization");
} }
@@ -318,16 +318,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 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 --- 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 +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java
@@ -88,6 +88,8 @@ import java.lang.annotation.RetentionPolicy; @@ -91,6 +91,8 @@ import java.util.Iterator;
import java.util.Iterator;
import java.util.List; import java.util.List;
import java.util.function.Supplier;
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
+ +
/** /**
* Base implementation of {@link AppMenuPropertiesDelegate} that handles hiding and showing menu * Base implementation of {@link AppMenuPropertiesDelegate} that handles hiding and showing menu
* items based on activity state. * items based on activity state.
@@ -606,8 +608,9 @@ public abstract class AppMenuPropertiesDelegateImpl implements AppMenuProperties @@ -620,8 +622,9 @@ public abstract class AppMenuPropertiesDelegateImpl implements AppMenuProperties
&& !isNativePage && !isNativePage
&& !isFileScheme && !isFileScheme
&& !isContentScheme && !isContentScheme
@@ -342,7 +342,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 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java
@@ -41,6 +41,7 @@ import org.chromium.base.supplier.Supplier; @@ -39,6 +39,7 @@ import org.chromium.base.shared_preferences.SharedPreferencesManager;
import org.chromium.build.annotations.NullMarked; import org.chromium.build.annotations.NullMarked;
import org.chromium.build.annotations.Nullable; import org.chromium.build.annotations.Nullable;
import org.chromium.chrome.R; import org.chromium.chrome.R;
@@ -350,7 +350,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.bookmarks.BookmarkUtils;
import org.chromium.chrome.browser.contextmenu.ChromeContextMenuItem.Item; import org.chromium.chrome.browser.contextmenu.ChromeContextMenuItem.Item;
import org.chromium.chrome.browser.contextmenu.ContextMenuCoordinator.ContextMenuItemType; import org.chromium.chrome.browser.contextmenu.ContextMenuCoordinator.ContextMenuItemType;
@@ -420,6 +421,9 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator { @@ -425,6 +426,9 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
mShowEphemeralTabNewLabel = null; mShowEphemeralTabNewLabel = null;
mCustomActionMap.clear(); mCustomActionMap.clear();
@@ -372,21 +372,13 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityLifecycleUmaTracker.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityLifecycleUmaTracker.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityLifecycleUmaTracker.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityLifecycleUmaTracker.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityLifecycleUmaTracker.java --- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityLifecycleUmaTracker.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityLifecycleUmaTracker.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityLifecycleUmaTracker.java
@@ -63,45 +63,6 @@ public class CustomTabActivityLifecycleUmaTracker @@ -62,37 +62,6 @@ public class CustomTabActivityLifecycleUmaTracker
private boolean mIsInitialResume = true; private boolean mIsInitialResume = true;
private void recordIncognitoLaunchReason() { private void recordIncognitoLaunchReason() {
- // TODO(crbug.com/352525607): Separate Ephemeral and Incognito CCT metrics. - // TODO(crbug.com/352525607): Separate Ephemeral and Incognito CCT metrics.
- @IntentHandler.IncognitoCctCallerId int incognitoCctCallerId; - /*@IncognitoCctCallerId*/ int incognitoCctCallerId =
- if (mIntentDataProvider.getCustomTabMode() == CustomTabProfileType.INCOGNITO) { - mIntentDataProvider.getFeatureIdForMetricsCollection();
- incognitoCctCallerId =
- ((IncognitoCustomTabIntentDataProvider) mIntentDataProvider)
- .getFeatureIdForMetricsCollection();
- } else {
- incognitoCctCallerId =
- ((EphemeralCustomTabIntentDataProvider) mIntentDataProvider)
- .getFeatureIdForMetricsCollection();
- }
- -
- RecordHistogram.recordEnumeratedHistogram( - RecordHistogram.recordEnumeratedHistogram(
- "CustomTabs.IncognitoCctCallerId", - "CustomTabs.IncognitoCctCallerId",
@@ -421,7 +413,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/CustomTabAppMenuPropertiesDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java
@@ -21,6 +21,7 @@ import org.chromium.base.supplier.Supplier; @@ -20,6 +20,7 @@ import org.chromium.base.supplier.ObservableSupplier;
import org.chromium.build.annotations.Nullable; import org.chromium.build.annotations.Nullable;
import org.chromium.chrome.R; import org.chromium.chrome.R;
import org.chromium.chrome.browser.ActivityTabProvider; import org.chromium.chrome.browser.ActivityTabProvider;
@@ -442,7 +434,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 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java
@@ -101,6 +101,9 @@ import org.chromium.components.embedder_support.util.UrlConstants; @@ -104,6 +104,9 @@ import org.chromium.components.embedder_support.util.UrlConstants;
import org.chromium.device.mojom.ScreenOrientationLockType; import org.chromium.device.mojom.ScreenOrientationLockType;
import org.chromium.net.NetId; import org.chromium.net.NetId;
@@ -452,7 +444,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
import java.lang.annotation.Retention; import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy; import java.lang.annotation.RetentionPolicy;
import java.util.ArrayList; import java.util.ArrayList;
@@ -1260,6 +1263,13 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid @@ -1263,6 +1266,13 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid
return getInitialActivityWidth() > 0; return getInitialActivityWidth() > 0;
} }
@@ -488,8 +480,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/Downlo
/** A class containing some utility static methods. */ /** A class containing some utility static methods. */
@NullMarked @NullMarked
public class DownloadUtils { public class DownloadUtils {
@@ -313,7 +318,13 @@ public class DownloadUtils { @@ -314,7 +319,13 @@ public class DownloadUtils {
public static boolean isAllowedToDownloadPage(Tab tab) { public static boolean isAllowedToDownloadPage(@Nullable Tab tab) {
if (tab == null) return false; if (tab == null) return false;
- if (tab.isIncognito() - if (tab.isIncognito()
@@ -506,22 +498,24 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/Downlo
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 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryContentManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryContentManager.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryContentManager.java
@@ -307,7 +307,9 @@ public class HistoryContentManager implements SignInStateObserver, PrefObserver @@ -308,8 +308,9 @@ public class HistoryContentManager implements SignInStateObserver, PrefObserver
mHistoryAdapter.generateFooterItems(); mHistoryAdapter.generateFooterItems();
// Listen to changes in sign in state. // Listen to changes in sign in state.
- IdentityServicesProvider.get().getSigninManager(profile).addSignInStateObserver(this); - assumeNonNull(IdentityServicesProvider.get().getSigninManager(profile))
- .addSignInStateObserver(this);
+ // getSigninManager is null in incognito + // getSigninManager is null in incognito
+ if (IdentityServicesProvider.get().getSigninManager(profile) != null) + if (IdentityServicesProvider.get().getSigninManager(profile) != null)
+ IdentityServicesProvider.get().getSigninManager(profile).addSignInStateObserver(this); + IdentityServicesProvider.get().getSigninManager(profile).addSignInStateObserver(this);
// Create PrefChangeRegistrar to receive notifications on preference changes. // Create PrefChangeRegistrar to receive notifications on preference changes.
mPrefChangeRegistrar = PrefServiceUtil.createFor(profile); mPrefChangeRegistrar = PrefServiceUtil.createFor(profile);
@@ -383,7 +385,8 @@ public class HistoryContentManager implements SignInStateObserver, PrefObserver @@ -386,8 +387,8 @@ public class HistoryContentManager implements SignInStateObserver, PrefObserver
mHistoryAdapter.onDestroyed(); mHistoryAdapter.onDestroyed();
mLargeIconBridge.destroy(); mLargeIconBridge.destroy();
mLargeIconBridge = null; mLargeIconBridge = null;
- IdentityServicesProvider.get().getSigninManager(mProfile).removeSignInStateObserver(this); - assumeNonNull(IdentityServicesProvider.get().getSigninManager(mProfile))
- .removeSignInStateObserver(this);
+ if (IdentityServicesProvider.get().getSigninManager(mProfile) != null) + if (IdentityServicesProvider.get().getSigninManager(mProfile) != null)
+ IdentityServicesProvider.get().getSigninManager(mProfile).removeSignInStateObserver(this); + IdentityServicesProvider.get().getSigninManager(mProfile).removeSignInStateObserver(this);
mPrefChangeRegistrar.destroy(); mPrefChangeRegistrar.destroy();
@@ -530,9 +524,9 @@ 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 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryManager.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryManager.java
@@ -57,6 +57,14 @@ import org.chromium.ui.base.Clipboard; @@ -61,6 +61,14 @@ import java.util.List;
import java.util.List;
import java.util.function.Function; import java.util.function.Function;
import java.util.function.Supplier;
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
+import org.chromium.chrome.browser.profiles.Profile; +import org.chromium.chrome.browser.profiles.Profile;
@@ -543,9 +537,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History
+import org.chromium.chrome.browser.preferences.Pref; +import org.chromium.chrome.browser.preferences.Pref;
+ +
/** Combines and manages the different UI components of browsing history. */ /** Combines and manages the different UI components of browsing history. */
@NullMarked
public class HistoryManager public class HistoryManager
implements OnMenuItemClickListener, @@ -166,7 +174,7 @@ public class HistoryManager
@@ -162,7 +170,7 @@ public class HistoryManager
mUmaRecorder.recordOpenHistory(); mUmaRecorder.recordOpenHistory();
// If incognito placeholder is shown, we don't need to create History UI elements. // If incognito placeholder is shown, we don't need to create History UI elements.
@@ -554,7 +548,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History
mSelectableListLayout = null; mSelectableListLayout = null;
mRootView = getIncognitoHistoryPlaceholderView(); mRootView = getIncognitoHistoryPlaceholderView();
return; return;
@@ -415,9 +423,22 @@ public class HistoryManager @@ -451,9 +459,22 @@ public class HistoryManager
onBackPressStateChanged(); onBackPressStateChanged();
} }
@@ -578,7 +572,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. // If Incognito placeholder is shown no need to call any destroy method.
return; return;
} }
@@ -477,7 +498,7 @@ public class HistoryManager @@ -514,7 +535,7 @@ public class HistoryManager
* @return True if manager handles this event, false if it decides to ignore. * @return True if manager handles this event, false if it decides to ignore.
*/ */
private boolean onBackPressed() { private boolean onBackPressed() {
@@ -590,9 +584,9 @@ 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/HistoryPage.java b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryPage.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryPage.java b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryPage.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryPage.java --- a/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryPage.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryPage.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryPage.java
@@ -17,6 +17,14 @@ import org.chromium.chrome.browser.ui.native_page.NativePageHost; @@ -20,6 +20,14 @@ import org.chromium.components.embedder_support.util.UrlConstants;
import org.chromium.components.browser_ui.bottomsheet.BottomSheetController;
import org.chromium.components.embedder_support.util.UrlConstants; import java.util.function.Supplier;
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
+import org.chromium.chrome.browser.profiles.Profile; +import org.chromium.chrome.browser.profiles.Profile;
@@ -603,9 +597,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History
+import org.chromium.chrome.browser.preferences.Pref; +import org.chromium.chrome.browser.preferences.Pref;
+ +
/** Native page for managing browsing history. */ /** Native page for managing browsing history. */
@NullMarked
public class HistoryPage extends BasicNativePage { public class HistoryPage extends BasicNativePage {
private HistoryManager mHistoryManager; @@ -49,6 +57,14 @@ public class HistoryPage extends BasicNativePage {
@@ -45,6 +53,14 @@ public class HistoryPage extends BasicNativePage {
String url) { String url) {
super(host); super(host);
@@ -618,21 +612,21 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History
+ } + }
+ +
Uri uri = Uri.parse(url); Uri uri = Uri.parse(url);
assert uri.getHost().equals(UrlConstants.HISTORY_HOST); assert UrlConstants.HISTORY_HOST.equals(uri.getHost());
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java b/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java b/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java --- a/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java
@@ -19,6 +19,7 @@ import org.chromium.base.supplier.ObservableSupplier; @@ -20,6 +20,7 @@ import org.chromium.base.supplier.OneshotSupplier;
import org.chromium.base.supplier.OneshotSupplier; import org.chromium.build.annotations.NullMarked;
import org.chromium.base.supplier.Supplier; import org.chromium.build.annotations.Nullable;
import org.chromium.chrome.R; import org.chromium.chrome.R;
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
import org.chromium.chrome.browser.app.ChromeActivity; import org.chromium.chrome.browser.app.ChromeActivity;
import org.chromium.chrome.browser.app.download.home.DownloadPage; import org.chromium.chrome.browser.app.download.home.DownloadPage;
import org.chromium.chrome.browser.bookmarks.BookmarkPage; import org.chromium.chrome.browser.bookmarks.BookmarkPage;
@@ -371,7 +372,8 @@ public class NativePageFactory { @@ -379,7 +380,8 @@ public class NativePageFactory {
String url, NativePage candidatePage, Tab tab, boolean isIncognito, PdfInfo pdfInfo) { @Nullable PdfInfo pdfInfo) {
NativePage page; NativePage page;
- switch (NativePage.nativePageType(url, candidatePage, isIncognito, pdfInfo != null)) { - switch (NativePage.nativePageType(url, candidatePage, isIncognito, pdfInfo != null)) {
@@ -808,7 +802,7 @@ new file mode 100644
+ ApplicationLifetime.terminate(true); + ApplicationLifetime.terminate(true);
+ } + }
+ }, Snackbar.TYPE_NOTIFICATION, Snackbar.UMA_UNKNOWN) + }, Snackbar.TYPE_NOTIFICATION, Snackbar.UMA_UNKNOWN)
+ .setSingleLine(false) + .setDefaultLines(false)
+ .setAction(getActivity().getString(R.string.relaunch), + .setAction(getActivity().getString(R.string.relaunch),
+ /*actionData*/null) + /*actionData*/null)
+ .setDuration(/*durationMs*/70000); + .setDuration(/*durationMs*/70000);
@@ -876,7 +870,7 @@ new file mode 100644
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java --- a/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java
@@ -49,6 +49,7 @@ import org.chromium.chrome.browser.sync.settings.AccountManagementFragment; @@ -50,6 +50,7 @@ import org.chromium.chrome.browser.sync.settings.AccountManagementFragment;
import org.chromium.chrome.browser.sync.settings.GoogleServicesSettings; import org.chromium.chrome.browser.sync.settings.GoogleServicesSettings;
import org.chromium.chrome.browser.sync.settings.ManageSyncSettings; import org.chromium.chrome.browser.sync.settings.ManageSyncSettings;
import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager; import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager;
@@ -897,9 +891,9 @@ 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 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 --- 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 +++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabModelObserver.java
@@ -32,6 +32,8 @@ import java.util.HashMap; @@ -32,6 +32,8 @@ import java.util.List;
import java.util.List;
import java.util.Set; import java.util.Set;
import java.util.function.Supplier;
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
+ +
@@ -933,9 +927,9 @@ 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 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 --- 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 +++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabSaverImpl.java
@@ -30,6 +30,8 @@ import java.util.Arrays; @@ -30,6 +30,8 @@ import java.util.Collections;
import java.util.Collections;
import java.util.List; import java.util.List;
import java.util.function.Supplier;
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
+ +
@@ -991,7 +985,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. // Check the secondary tab model to see if the tab was moved instead of deleted.
if (tabIdExistsInSecondaryModel(tab.getId())) return false; if (tabIdExistsInSecondaryModel(tab.getId())) return false;
@@ -293,7 +296,7 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver { @@ -294,7 +297,7 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver {
@NativeMethods @NativeMethods
interface Natives { interface Natives {
@@ -1003,30 +997,28 @@ 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/tabbed_mode/TabbedAppMenuPropertiesDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java 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 --- 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 +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java
@@ -27,6 +27,7 @@ import org.chromium.base.supplier.Supplier; @@ -27,6 +27,7 @@ import org.chromium.build.annotations.Contract;
import org.chromium.build.annotations.Contract; import org.chromium.build.annotations.NullMarked;
import org.chromium.build.annotations.Nullable; import org.chromium.build.annotations.Nullable;
import org.chromium.chrome.R; import org.chromium.chrome.R;
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
import org.chromium.chrome.browser.ActivityTabProvider; import org.chromium.chrome.browser.ActivityTabProvider;
import org.chromium.chrome.browser.ai.AiAssistantService; import org.chromium.chrome.browser.ai.AiAssistantService;
import org.chromium.chrome.browser.app.appmenu.AppMenuPropertiesDelegateImpl; import org.chromium.chrome.browser.app.appmenu.AppMenuPropertiesDelegateImpl;
@@ -220,7 +221,10 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm @@ -221,7 +222,8 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm
}
// New Tab // When the feature is enabled, show either "New Incognito tab" in incognito mode
- modelList.add(buildNewTabItem()); // or "New tab" in normal mode. When the feature is disabled, show both.
- if (!IncognitoUtils.shouldOpenIncognitoAsWindow() || !isIncognitoShowing()) {
+ boolean always_incognito = AlwaysIncognitoLinkInterceptor.isAlwaysIncognito(); + boolean always_incognito = AlwaysIncognitoLinkInterceptor.isAlwaysIncognito();
+ if (!always_incognito) { + if (!always_incognito || !IncognitoUtils.shouldOpenIncognitoAsWindow() || !isIncognitoShowing()) {
+ modelList.add(buildNewTabItem()); modelList.add(buildNewTabItem());
+ } }
if (!IncognitoUtils.shouldOpenIncognitoAsWindow() || isIncognitoShowing()) {
// New Incognito Tab
modelList.add(buildNewIncognitoTabItem());
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 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 --- 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 +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java
@@ -212,6 +212,8 @@ import org.chromium.content_public.common.ContentSwitches; @@ -210,6 +210,8 @@ import org.chromium.content_public.common.ContentSwitches;
import org.chromium.ui.UiUtils; import org.chromium.ui.UiUtils;
import org.chromium.ui.base.ActivityWindowAndroid; import org.chromium.ui.base.ActivityWindowAndroid;
import org.chromium.ui.base.DeviceFormFactor; import org.chromium.ui.base.DeviceFormFactor;
@@ -1035,7 +1027,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab
import org.chromium.ui.base.IntentRequestTracker; import org.chromium.ui.base.IntentRequestTracker;
import org.chromium.ui.base.LocalizationUtils; import org.chromium.ui.base.LocalizationUtils;
import org.chromium.ui.display.DisplayUtil; import org.chromium.ui.display.DisplayUtil;
@@ -1247,7 +1249,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { @@ -1270,7 +1272,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator {
() -> { () -> {
mTabCreatorManagerSupplier mTabCreatorManagerSupplier
.get() .get()
@@ -1047,9 +1039,9 @@ 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 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java
@@ -53,6 +53,10 @@ import org.chromium.ui.base.PageTransition; @@ -55,6 +55,10 @@ import org.chromium.url.GURL;
import org.chromium.ui.base.WindowAndroid; import java.util.Collections;
import org.chromium.url.GURL; import java.util.function.Supplier;
+import org.chromium.base.ContextUtils; +import org.chromium.base.ContextUtils;
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
@@ -1058,7 +1050,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
/** This class creates various kinds of new tabs and adds them to the right {@link TabModel}. */ /** This class creates various kinds of new tabs and adds them to the right {@link TabModel}. */
@NullMarked @NullMarked
public class ChromeTabCreator extends TabCreator public class ChromeTabCreator extends TabCreator
@@ -580,7 +584,6 @@ public class ChromeTabCreator extends TabCreator @@ -584,7 +588,6 @@ public class ChromeTabCreator extends TabCreator
// TODO(crbug.com/40691614): Clean up the launches from SearchActivity/Chrome. // TODO(crbug.com/40691614): Clean up the launches from SearchActivity/Chrome.
public @Nullable Tab launchUrlFromExternalApp( public @Nullable Tab launchUrlFromExternalApp(
LoadUrlParams loadUrlParams, String appId, boolean forceNewTab, Intent intent) { LoadUrlParams loadUrlParams, String appId, boolean forceNewTab, Intent intent) {
@@ -1069,15 +1061,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java
@@ -17,6 +17,7 @@ import org.chromium.build.annotations.EnsuresNonNull; @@ -20,6 +20,7 @@ import org.chromium.build.annotations.Initializer;
import org.chromium.build.annotations.Initializer;
import org.chromium.build.annotations.NullMarked; import org.chromium.build.annotations.NullMarked;
import org.chromium.build.annotations.Nullable; import org.chromium.build.annotations.Nullable;
import org.chromium.chrome.browser.app.tabwindow.TabWindowManagerSingleton;
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
import org.chromium.chrome.browser.flags.ActivityType; import org.chromium.chrome.browser.flags.ActivityType;
import org.chromium.chrome.browser.flags.ChromeFeatureList; import org.chromium.chrome.browser.flags.ChromeFeatureList;
import org.chromium.chrome.browser.ntp.RecentlyClosedBridge; import org.chromium.chrome.browser.multiwindow.MultiInstanceManager;
@@ -127,6 +128,8 @@ public class TabModelSelectorImpl extends TabModelSelectorBase implements TabMod @@ -139,6 +140,8 @@ public class TabModelSelectorImpl extends TabModelSelectorBase implements TabMod
ProfileProvider profileProvider = mProfileProviderSupplier.get(); ProfileProvider profileProvider = mProfileProviderSupplier.get();
assert profileProvider != null; assert profileProvider != null;
@@ -1115,7 +1107,7 @@ 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 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java
@@ -50,6 +50,7 @@ import org.chromium.base.supplier.Supplier; @@ -49,6 +49,7 @@ import org.chromium.base.supplier.OneshotSupplierImpl;
import org.chromium.cc.input.BrowserControlsState; import org.chromium.cc.input.BrowserControlsState;
import org.chromium.chrome.R; import org.chromium.chrome.R;
import org.chromium.chrome.browser.ActivityTabProvider; import org.chromium.chrome.browser.ActivityTabProvider;
@@ -1123,12 +1115,12 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/Toolbar
import org.chromium.chrome.browser.IntentHandler; import org.chromium.chrome.browser.IntentHandler;
import org.chromium.chrome.browser.app.tabwindow.TabWindowManagerSingleton; import org.chromium.chrome.browser.app.tabwindow.TabWindowManagerSingleton;
import org.chromium.chrome.browser.back_press.BackPressManager; import org.chromium.chrome.browser.back_press.BackPressManager;
@@ -859,7 +860,7 @@ public class ToolbarManager @@ -866,7 +867,7 @@ public class ToolbarManager
TraceEvent.end("isOfflinePage");
return ret; return ret;
} }
- }); },
+ }, AlwaysIncognitoLinkInterceptor.isAlwaysIncognito()); - mToolbarPositionSupplier);
+ mToolbarPositionSupplier, AlwaysIncognitoLinkInterceptor.isAlwaysIncognito());
mControlContainer = controlContainer; mControlContainer = controlContainer;
mToolbarHairline = mControlContainer.findViewById(R.id.toolbar_hairline); mToolbarHairline = mControlContainer.findViewById(R.id.toolbar_hairline);
@@ -1142,9 +1134,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappI
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
+ +
/** Stores info about a web app. */ /** Stores info about a web app. */
@NullMarked
public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider { public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider {
private final Drawable mCloseButtonIcon; @@ -47,6 +49,8 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider
@@ -46,6 +48,8 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider
private final ColorProviderImpl mDarkColorProvider; private final ColorProviderImpl mDarkColorProvider;
private @DisplayMode.EnumType int mResolvedDisplayMode = DisplayMode.UNDEFINED; private @DisplayMode.EnumType int mResolvedDisplayMode = DisplayMode.UNDEFINED;
@@ -1153,7 +1145,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappI
/** Returns the toolbar color to use if a custom color is not specified by the webapp. */ /** Returns the toolbar color to use if a custom color is not specified by the webapp. */
public static int getDefaultToolbarColor() { public static int getDefaultToolbarColor() {
return Color.WHITE; return Color.WHITE;
@@ -81,6 +85,10 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider @@ -82,6 +86,10 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider
mWebappExtras = webappExtras; mWebappExtras = webappExtras;
mWebApkExtras = webApkExtras; mWebApkExtras = webApkExtras;
mActivityType = (webApkExtras != null) ? ActivityType.WEB_APK : ActivityType.WEBAPP; mActivityType = (webApkExtras != null) ? ActivityType.WEB_APK : ActivityType.WEBAPP;
@@ -1164,7 +1156,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappI
} }
@Override @Override
@@ -176,6 +184,13 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider @@ -177,6 +185,13 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider
return mWebApkExtras; return mWebApkExtras;
} }
@@ -1229,7 +1221,7 @@ diff --git a/chrome/browser/android/historical_tab_saver.cc b/chrome/browser/and
DCHECK_EQ(tab_group_ids.size(), group_titles.size()); DCHECK_EQ(tab_group_ids.size(), group_titles.size());
DCHECK_EQ(tab_group_ids.size(), group_colors.size()); DCHECK_EQ(tab_group_ids.size(), group_colors.size());
DCHECK_EQ(tab_group_ids.size(), tab_group_ids.size()); DCHECK_EQ(tab_group_ids.size(), tab_group_ids.size());
@@ -291,11 +302,12 @@ static void JNI_HistoricalTabSaverImpl_CreateHistoricalTab( @@ -292,11 +303,12 @@ static void JNI_HistoricalTabSaverImpl_CreateHistoricalTab(
JNIEnv* env, JNIEnv* env,
const JavaParamRef<jobject>& jtab_android, const JavaParamRef<jobject>& jtab_android,
const JavaParamRef<jobject>& state, const JavaParamRef<jobject>& state,
@@ -1247,7 +1239,7 @@ 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 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 --- a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
+++ b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc +++ b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
@@ -427,6 +427,15 @@ ChromeAutocompleteProviderClient::GetAimEligibilityService() const { @@ -460,6 +460,15 @@ ChromeAutocompleteProviderClient::GetAimEligibilityService() const {
return AimEligibilityServiceFactory::GetForProfile(profile_); return AimEligibilityServiceFactory::GetForProfile(profile_);
} }
@@ -1374,7 +1366,7 @@ diff --git a/chrome/browser/content_settings/host_content_settings_map_factory.c
diff --git a/chrome/browser/history/history_tab_helper.cc b/chrome/browser/history/history_tab_helper.cc diff --git a/chrome/browser/history/history_tab_helper.cc b/chrome/browser/history/history_tab_helper.cc
--- a/chrome/browser/history/history_tab_helper.cc --- a/chrome/browser/history/history_tab_helper.cc
+++ b/chrome/browser/history/history_tab_helper.cc +++ b/chrome/browser/history/history_tab_helper.cc
@@ -45,6 +45,9 @@ @@ -48,6 +48,9 @@
#include "components/feed/core/v2/public/feed_api.h" // nogncheck #include "components/feed/core/v2/public/feed_api.h" // nogncheck
#include "components/feed/core/v2/public/feed_service.h" // nogncheck #include "components/feed/core/v2/public/feed_service.h" // nogncheck
#include "content/public/browser/web_contents.h" #include "content/public/browser/web_contents.h"
@@ -1384,7 +1376,7 @@ diff --git a/chrome/browser/history/history_tab_helper.cc b/chrome/browser/histo
#else #else
#include "chrome/browser/ui/browser.h" #include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/browser_finder.h" #include "chrome/browser/ui/browser_finder.h"
@@ -598,6 +601,13 @@ void HistoryTabHelper::TitleWasSet(NavigationEntry* entry) { @@ -612,6 +615,13 @@ void HistoryTabHelper::TitleWasSet(NavigationEntry* entry) {
history::HistoryService* HistoryTabHelper::GetHistoryService() { history::HistoryService* HistoryTabHelper::GetHistoryService() {
Profile* profile = Profile* profile =
Profile::FromBrowserContext(web_contents()->GetBrowserContext()); Profile::FromBrowserContext(web_contents()->GetBrowserContext());
@@ -1398,7 +1390,7 @@ diff --git a/chrome/browser/history/history_tab_helper.cc b/chrome/browser/histo
if (profile->IsOffTheRecord()) if (profile->IsOffTheRecord())
return nullptr; return nullptr;
@@ -605,6 +615,16 @@ history::HistoryService* HistoryTabHelper::GetHistoryService() { @@ -619,6 +629,16 @@ history::HistoryService* HistoryTabHelper::GetHistoryService() {
profile, ServiceAccessType::IMPLICIT_ACCESS); profile, ServiceAccessType::IMPLICIT_ACCESS);
} }
@@ -1482,7 +1474,7 @@ diff --git a/chrome/browser/offline_pages/android/offline_page_bridge.cc b/chrom
diff --git a/chrome/browser/offline_pages/android/offline_page_model_factory.cc b/chrome/browser/offline_pages/android/offline_page_model_factory.cc diff --git a/chrome/browser/offline_pages/android/offline_page_model_factory.cc b/chrome/browser/offline_pages/android/offline_page_model_factory.cc
--- a/chrome/browser/offline_pages/android/offline_page_model_factory.cc --- a/chrome/browser/offline_pages/android/offline_page_model_factory.cc
+++ b/chrome/browser/offline_pages/android/offline_page_model_factory.cc +++ b/chrome/browser/offline_pages/android/offline_page_model_factory.cc
@@ -24,6 +24,9 @@ @@ -23,6 +23,9 @@
#include "components/keyed_service/core/simple_dependency_manager.h" #include "components/keyed_service/core/simple_dependency_manager.h"
#include "components/offline_pages/core/model/offline_page_model_taskified.h" #include "components/offline_pages/core/model/offline_page_model_taskified.h"
#include "components/offline_pages/core/offline_page_metadata_store.h" #include "components/offline_pages/core/offline_page_metadata_store.h"
@@ -1492,7 +1484,7 @@ diff --git a/chrome/browser/offline_pages/android/offline_page_model_factory.cc
namespace offline_pages { namespace offline_pages {
@@ -55,13 +58,15 @@ std::unique_ptr<KeyedService> OfflinePageModelFactory::BuildServiceInstanceFor( @@ -54,13 +57,15 @@ std::unique_ptr<KeyedService> OfflinePageModelFactory::BuildServiceInstanceFor(
scoped_refptr<base::SequencedTaskRunner> background_task_runner = scoped_refptr<base::SequencedTaskRunner> background_task_runner =
base::ThreadPool::CreateSequencedTaskRunner({base::MayBlock()}); base::ThreadPool::CreateSequencedTaskRunner({base::MayBlock()});
@@ -1510,7 +1502,7 @@ diff --git a/chrome/browser/offline_pages/android/offline_page_model_factory.cc
// If base::PathService::Get returns false, the temporary_archives_dir will be // If base::PathService::Get returns false, the temporary_archives_dir will be
// empty, and no temporary pages will be saved during this chrome lifecycle. // empty, and no temporary pages will be saved during this chrome lifecycle.
base::FilePath temporary_archives_dir; base::FilePath temporary_archives_dir;
@@ -70,7 +75,6 @@ std::unique_ptr<KeyedService> OfflinePageModelFactory::BuildServiceInstanceFor( @@ -69,7 +74,6 @@ std::unique_ptr<KeyedService> OfflinePageModelFactory::BuildServiceInstanceFor(
temporary_archives_dir.Append(chrome::kOfflinePageArchivesDirname); temporary_archives_dir.Append(chrome::kOfflinePageArchivesDirname);
} }
@@ -1518,7 +1510,7 @@ diff --git a/chrome/browser/offline_pages/android/offline_page_model_factory.cc
auto archive_manager = std::make_unique<DownloadArchiveManager>( auto archive_manager = std::make_unique<DownloadArchiveManager>(
temporary_archives_dir, persistent_archives_dir, temporary_archives_dir, persistent_archives_dir,
DownloadPrefs::GetDefaultDownloadDirectory(), background_task_runner, DownloadPrefs::GetDefaultDownloadDirectory(), background_task_runner,
@@ -88,4 +92,14 @@ std::unique_ptr<KeyedService> OfflinePageModelFactory::BuildServiceInstanceFor( @@ -87,4 +91,14 @@ std::unique_ptr<KeyedService> OfflinePageModelFactory::BuildServiceInstanceFor(
return model; return model;
} }
@@ -1755,7 +1747,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/ntp/recent_tabs_page_prefs.h"
#include "chrome/browser/android/oom_intervention/oom_intervention_decider.h" #include "chrome/browser/android/oom_intervention/oom_intervention_decider.h"
#include "chrome/browser/android/preferences/browser_prefs_android.h" #include "chrome/browser/android/preferences/browser_prefs_android.h"
@@ -2061,6 +2062,10 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry, @@ -2145,6 +2146,10 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
usage_stats::UsageStatsBridge::RegisterProfilePrefs(registry); usage_stats::UsageStatsBridge::RegisterProfilePrefs(registry);
variations::VariationsService::RegisterProfilePrefs(registry); variations::VariationsService::RegisterProfilePrefs(registry);
webapps::InstallPromptPrefs::RegisterProfilePrefs(registry); webapps::InstallPromptPrefs::RegisterProfilePrefs(registry);
@@ -1860,12 +1852,12 @@ diff --git a/chrome/browser/ui/android/native_page/java/src/org/chromium/chrome/
} }
/** /**
@@ -209,11 +212,12 @@ public interface NativePage { @@ -212,11 +215,12 @@ public interface NativePage {
*/ String url,
// TODO(crbug.com/40549331) - Convert to using GURL. @Nullable NativePage candidatePage,
static @NativePageType int nativePageType( boolean isIncognito,
- String url, NativePage candidatePage, boolean isIncognito, boolean hasPdfDownload) { - boolean hasPdfDownload) {
+ String url, NativePage candidatePage, boolean isIncognito, boolean hasPdfDownload, + boolean hasPdfDownload,
+ boolean isAlwaysIncognito) { + boolean isAlwaysIncognito) {
if (url == null) return NativePageType.NONE; if (url == null) return NativePageType.NONE;
@@ -1875,7 +1867,7 @@ diff --git a/chrome/browser/ui/android/native_page/java/src/org/chromium/chrome/
} }
/** /**
@@ -227,7 +231,8 @@ public interface NativePage { @@ -230,7 +234,8 @@ public interface NativePage {
GURL url, GURL url,
@Nullable NativePage candidatePage, @Nullable NativePage candidatePage,
boolean isIncognito, boolean isIncognito,
@@ -1885,7 +1877,7 @@ diff --git a/chrome/browser/ui/android/native_page/java/src/org/chromium/chrome/
if (hasPdfDownload) { if (hasPdfDownload) {
// For navigation with associated pdf download (e.g. open a pdf link), pdf page should // For navigation with associated pdf download (e.g. open a pdf link), pdf page should
// be created. // be created.
@@ -245,7 +250,7 @@ public interface NativePage { @@ -248,7 +253,7 @@ public interface NativePage {
// created after the pdf document is re-downloaded in other parts of the code. // created after the pdf document is re-downloaded in other parts of the code.
return NativePageType.NONE; return NativePageType.NONE;
} else { } else {
@@ -1894,7 +1886,7 @@ diff --git a/chrome/browser/ui/android/native_page/java/src/org/chromium/chrome/
} }
} }
@@ -257,7 +262,7 @@ public interface NativePage { @@ -260,7 +265,7 @@ public interface NativePage {
* which do not have chrome or chrome-native scheme. * which do not have chrome or chrome-native scheme.
*/ */
private static @NativePageType int chromePageType( private static @NativePageType int chromePageType(
@@ -1903,7 +1895,7 @@ diff --git a/chrome/browser/ui/android/native_page/java/src/org/chromium/chrome/
String host = url.getHost(); String host = url.getHost();
String scheme = url.getScheme(); String scheme = url.getScheme();
if (!UrlConstants.CHROME_NATIVE_SCHEME.equals(scheme) if (!UrlConstants.CHROME_NATIVE_SCHEME.equals(scheme)
@@ -277,7 +282,8 @@ public interface NativePage { @@ -280,7 +285,8 @@ public interface NativePage {
return NativePageType.DOWNLOADS; return NativePageType.DOWNLOADS;
} else if (UrlConstants.HISTORY_HOST.equals(host)) { } else if (UrlConstants.HISTORY_HOST.equals(host)) {
return NativePageType.HISTORY; return NativePageType.HISTORY;
@@ -1916,8 +1908,8 @@ diff --git a/chrome/browser/ui/android/native_page/java/src/org/chromium/chrome/
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 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 --- 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 +++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java
@@ -92,6 +92,11 @@ import org.chromium.ui.base.WindowAndroid; @@ -97,6 +97,11 @@ import org.chromium.ui.interpolators.Interpolators;
import org.chromium.ui.interpolators.Interpolators; import org.chromium.ui.modaldialog.ModalDialogManager;
import org.chromium.url.GURL; import org.chromium.url.GURL;
+import org.chromium.components.user_prefs.UserPrefs; +import org.chromium.components.user_prefs.UserPrefs;
@@ -1928,7 +1920,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.function.BooleanSupplier; import java.util.function.BooleanSupplier;
@@ -419,6 +424,9 @@ class LocationBarMediator @@ -437,6 +442,9 @@ class LocationBarMediator
if (!DeviceFormFactor.isNonMultiDisplayContextOnTablet(mContext)) return; if (!DeviceFormFactor.isNonMultiDisplayContextOnTablet(mContext)) return;
Tab tab = mLocationBarDataProvider.getTab(); Tab tab = mLocationBarDataProvider.getTab();
if (tab == null) return; if (tab == null) return;
@@ -1941,7 +1933,7 @@ 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 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 --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -6675,6 +6675,31 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>delete the Chrome d @@ -6627,6 +6627,31 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>delete the Chrome d
<message name="IDS_QUICK_DELETE_DIALOG_COOKIES_CACHE_AND_OTHER_SITE_DATA_TEXT" desc="Text indicating that browsing data like cookies, cache, and other site data would be deleted."> <message name="IDS_QUICK_DELETE_DIALOG_COOKIES_CACHE_AND_OTHER_SITE_DATA_TEXT" desc="Text indicating that browsing data like cookies, cache, and other site data would be deleted.">
Cookies, cache, and other site data Cookies, cache, and other site data
</message> </message>
@@ -1976,7 +1968,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 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 --- 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 +++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/LocationBarModel.java
@@ -165,6 +165,7 @@ public class LocationBarModel implements ToolbarDataProvider, LocationBarDataPro @@ -168,6 +168,7 @@ public class LocationBarModel implements ToolbarDataProvider, LocationBarDataPro
protected GURL mVisibleGurl = GURL.emptyGURL(); protected GURL mVisibleGurl = GURL.emptyGURL();
protected String mFormattedFullUrl; protected String mFormattedFullUrl;
protected String mUrlForDisplay; protected String mUrlForDisplay;
@@ -1984,14 +1976,13 @@ 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 // 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 // document navigation. The first call is usually necessary, which updates the UrlBar to reflect
@@ -188,7 +189,9 @@ public class LocationBarModel implements ToolbarDataProvider, LocationBarDataPro @@ -192,7 +193,8 @@ public class LocationBarModel implements ToolbarDataProvider, LocationBarDataPro
Context context,
NewTabPageDelegate newTabPageDelegate, NewTabPageDelegate newTabPageDelegate,
UrlFormatter urlFormatter, UrlFormatter urlFormatter,
- OfflineStatus offlineStatus) { OfflineStatus offlineStatus,
+ OfflineStatus offlineStatus, - ObservableSupplier<@ControlsPosition Integer> toolbarPositionSupplier) {
+ ObservableSupplier<@ControlsPosition Integer> toolbarPositionSupplier,
+ boolean isAlwaysIncognito) { + boolean isAlwaysIncognito) {
+ mIsAlwaysIncognito = isAlwaysIncognito; // (uazo) to do, check
mContext = context; mContext = context;
mNtpDelegate = newTabPageDelegate; mNtpDelegate = newTabPageDelegate;
mUrlFormatter = urlFormatter; mUrlFormatter = urlFormatter;
@@ -2065,7 +2056,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 diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h
--- a/chrome/common/pref_names.h --- a/chrome/common/pref_names.h
+++ b/chrome/common/pref_names.h +++ b/chrome/common/pref_names.h
@@ -4108,6 +4108,12 @@ inline constexpr char kOutOfProcessSystemDnsResolutionEnabled[] = @@ -4095,6 +4095,12 @@ inline constexpr char kOutOfProcessSystemDnsResolutionEnabled[] =
"net.out_of_process_system_dns_resolution_enabled"; "net.out_of_process_system_dns_resolution_enabled";
#endif // BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) #endif // BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX)
@@ -2131,7 +2122,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 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 --- a/components/content_settings/core/browser/host_content_settings_map.cc
+++ b/components/content_settings/core/browser/host_content_settings_map.cc +++ b/components/content_settings/core/browser/host_content_settings_map.cc
@@ -287,6 +287,7 @@ struct ContentSettingEntry { @@ -288,6 +288,7 @@ struct ContentSettingEntry {
HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs, HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs,
bool is_off_the_record, bool is_off_the_record,
@@ -2139,7 +2130,7 @@ diff --git a/components/content_settings/core/browser/host_content_settings_map.
bool store_last_modified, bool store_last_modified,
bool restore_session, bool restore_session,
bool should_record_metrics) bool should_record_metrics)
@@ -296,6 +297,7 @@ HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs, @@ -297,6 +298,7 @@ HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs,
#endif #endif
prefs_(prefs), prefs_(prefs),
is_off_the_record_(is_off_the_record), is_off_the_record_(is_off_the_record),
@@ -2147,7 +2138,7 @@ diff --git a/components/content_settings/core/browser/host_content_settings_map.
store_last_modified_(store_last_modified), store_last_modified_(store_last_modified),
allow_invalid_secondary_pattern_for_testing_(false), allow_invalid_secondary_pattern_for_testing_(false),
clock_(base::DefaultClock::GetInstance()) { clock_(base::DefaultClock::GetInstance()) {
@@ -309,7 +311,7 @@ HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs, @@ -310,7 +312,7 @@ HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs,
policy_provider->AddObserver(this); policy_provider->AddObserver(this);
auto pref_provider_ptr = std::make_unique<content_settings::PrefProvider>( auto pref_provider_ptr = std::make_unique<content_settings::PrefProvider>(
@@ -2167,7 +2158,7 @@ diff --git a/components/content_settings/core/browser/host_content_settings_map.
bool store_last_modified, bool store_last_modified,
bool restore_session, bool restore_session,
bool should_record_metrics); bool should_record_metrics);
@@ -544,6 +545,8 @@ class HostContentSettingsMap : public content_settings::Observer, @@ -551,6 +552,8 @@ class HostContentSettingsMap : public content_settings::Observer,
// Whether this settings map is for an incognito or guest session. // Whether this settings map is for an incognito or guest session.
bool is_off_the_record_; bool is_off_the_record_;
@@ -2179,7 +2170,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 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 --- a/components/omnibox/browser/autocomplete_provider_client.cc
+++ b/components/omnibox/browser/autocomplete_provider_client.cc +++ b/components/omnibox/browser/autocomplete_provider_client.cc
@@ -66,3 +66,7 @@ base::WeakPtr<AutocompleteProviderClient> @@ -74,3 +74,7 @@ base::WeakPtr<AutocompleteProviderClient>
AutocompleteProviderClient::GetWeakPtr() { AutocompleteProviderClient::GetWeakPtr() {
return nullptr; return nullptr;
} }
@@ -2213,7 +2204,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 diff --git a/components/omnibox/browser/search_provider.cc b/components/omnibox/browser/search_provider.cc
--- a/components/omnibox/browser/search_provider.cc --- a/components/omnibox/browser/search_provider.cc
+++ b/components/omnibox/browser/search_provider.cc +++ b/components/omnibox/browser/search_provider.cc
@@ -916,7 +916,8 @@ std::unique_ptr<network::SimpleURLLoader> SearchProvider::CreateSuggestLoader( @@ -921,7 +921,8 @@ std::unique_ptr<network::SimpleURLLoader> SearchProvider::CreateSuggestLoader(
// is required. // is required.
// Request for suggestions in OTR contexts is not allowed; except for the Lens // Request for suggestions in OTR contexts is not allowed; except for the Lens
// searchboxes. // searchboxes.
@@ -164,7 +164,7 @@ new file mode 100644
+import org.chromium.components.browser_ui.site_settings.BromiteCustomContentSetting; +import org.chromium.components.browser_ui.site_settings.BromiteCustomContentSetting;
+import org.chromium.components.browser_ui.site_settings.ContentSettingsResources; +import org.chromium.components.browser_ui.site_settings.ContentSettingsResources;
+import org.chromium.components.browser_ui.site_settings.SiteSettingsCategory; +import org.chromium.components.browser_ui.site_settings.SiteSettingsCategory;
+import org.chromium.components.content_settings.ContentSettingValues; +import org.chromium.components.content_settings.ContentSetting;
+import org.chromium.components.content_settings.ContentSettingsType; +import org.chromium.components.content_settings.ContentSettingsType;
+import org.chromium.content_public.browser.BrowserContextHandle; +import org.chromium.content_public.browser.BrowserContextHandle;
+ +
@@ -177,8 +177,8 @@ new file mode 100644
+public class BromiteAutoplayContentSetting extends BromiteCustomContentSetting { +public class BromiteAutoplayContentSetting extends BromiteCustomContentSetting {
+ public BromiteAutoplayContentSetting() { + public BromiteAutoplayContentSetting() {
+ super(/*contentSettingsType*/ ContentSettingsType.AUTOPLAY, + super(/*contentSettingsType*/ ContentSettingsType.AUTOPLAY,
+ /*defaultEnabledValue*/ ContentSettingValues.ALLOW, + /*defaultEnabledValue*/ ContentSetting.ALLOW,
+ /*defaultDisabledValue*/ ContentSettingValues.BLOCK, + /*defaultDisabledValue*/ ContentSetting.BLOCK,
+ /*allowException*/ true, + /*allowException*/ true,
+ /*preferenceKey*/ "autoplay", + /*preferenceKey*/ "autoplay",
+ /*profilePrefKey*/ "autoplay"); + /*profilePrefKey*/ "autoplay");
@@ -197,11 +197,11 @@ new file mode 100644
+ } + }
+ +
+ @Override + @Override
+ public int getCategorySummary(@Nullable @ContentSettingValues int value) { + public int getCategorySummary(@Nullable @ContentSetting int value) {
+ switch (value) { + switch (value) {
+ case ContentSettingValues.ALLOW: + case ContentSetting.ALLOW:
+ return R.string.website_settings_category_autoplay_enabled; + return R.string.website_settings_category_autoplay_enabled;
+ case ContentSettingValues.BLOCK: + case ContentSetting.BLOCK:
+ return R.string.website_settings_category_autoplay_disabled; + return R.string.website_settings_category_autoplay_disabled;
+ default: + default:
+ return 0; + return 0;
@@ -229,8 +229,8 @@ new file mode 100644
+ } + }
+ +
+ @Override + @Override
+ public @Nullable Boolean considerException(SiteSettingsCategory category, @ContentSettingValues int value) { + public @Nullable Boolean considerException(SiteSettingsCategory category, @ContentSetting int value) {
+ return value != ContentSettingValues.BLOCK; + return value != ContentSetting.BLOCK;
+ } + }
+} +}
diff --git a/components/browser_ui/strings/bromite_content_settings/autoplay.grdp b/components/browser_ui/strings/bromite_content_settings/autoplay.grdp diff --git a/components/browser_ui/strings/bromite_content_settings/autoplay.grdp b/components/browser_ui/strings/bromite_content_settings/autoplay.grdp
@@ -308,7 +308,7 @@ diff --git a/third_party/blink/renderer/core/html/media/autoplay_policy.cc b/thi
if (!IsLockedPendingUserGesture()) if (!IsLockedPendingUserGesture())
return false; return false;
@@ -458,6 +461,17 @@ void AutoplayPolicy::MaybeSetAutoplayInitiated() { @@ -457,6 +460,17 @@ void AutoplayPolicy::MaybeSetAutoplayInitiated() {
} }
} }
@@ -94,17 +94,17 @@ diff --git a/chrome/android/java/res/menu/bookmark_toolbar_menu_improved.xml b/c
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDelegateFactory.java b/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDelegateFactory.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDelegateFactory.java b/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDelegateFactory.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDelegateFactory.java --- a/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDelegateFactory.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDelegateFactory.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDelegateFactory.java
@@ -13,6 +13,7 @@ import org.chromium.base.jank_tracker.JankTracker; @@ -11,6 +11,7 @@ import org.chromium.base.supplier.ObservableSupplier;
import org.chromium.base.supplier.ObservableSupplier;
import org.chromium.base.supplier.OneshotSupplier; import org.chromium.base.supplier.OneshotSupplier;
import org.chromium.base.supplier.Supplier; import org.chromium.build.annotations.NullMarked;
import org.chromium.build.annotations.Nullable;
+import org.chromium.chrome.browser.app.ChromeActivity; +import org.chromium.chrome.browser.app.ChromeActivity;
import org.chromium.chrome.browser.app.tab_activity_glue.ActivityTabWebContentsDelegateAndroid; import org.chromium.chrome.browser.app.tab_activity_glue.ActivityTabWebContentsDelegateAndroid;
import org.chromium.chrome.browser.browser_controls.BrowserControlsStateProvider; import org.chromium.chrome.browser.browser_controls.BrowserControlsStateProvider;
import org.chromium.chrome.browser.compositor.CompositorViewHolder; import org.chromium.chrome.browser.compositor.CompositorViewHolder;
@@ -60,7 +61,7 @@ import java.util.List; @@ -60,7 +61,7 @@ import java.util.function.Supplier;
* ChromeTabbedActivity}.
*/ */
@NullMarked
public class TabbedModeTabDelegateFactory implements TabDelegateFactory { public class TabbedModeTabDelegateFactory implements TabDelegateFactory {
- private final Activity mActivity; - private final Activity mActivity;
+ private final ChromeActivity mActivity; + private final ChromeActivity mActivity;
@@ -112,7 +112,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDe
private final Supplier<ShareDelegate> mShareDelegateSupplier; private final Supplier<ShareDelegate> mShareDelegateSupplier;
private final Supplier<EphemeralTabCoordinator> mEphemeralTabCoordinatorSupplier; private final Supplier<EphemeralTabCoordinator> mEphemeralTabCoordinatorSupplier;
@@ -91,7 +92,7 @@ public class TabbedModeTabDelegateFactory implements TabDelegateFactory { @@ -91,7 +92,7 @@ public class TabbedModeTabDelegateFactory implements TabDelegateFactory {
private NativePageFactory mNativePageFactory; private @Nullable NativePageFactory mNativePageFactory;
public TabbedModeTabDelegateFactory( public TabbedModeTabDelegateFactory(
- Activity activity, - Activity activity,
@@ -199,33 +199,33 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/bookmarks/B
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java b/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java b/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java --- a/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java
@@ -19,6 +19,7 @@ import org.chromium.base.supplier.ObservableSupplier; @@ -20,6 +20,7 @@ import org.chromium.base.supplier.OneshotSupplier;
import org.chromium.base.supplier.OneshotSupplier; import org.chromium.build.annotations.NullMarked;
import org.chromium.base.supplier.Supplier; import org.chromium.build.annotations.Nullable;
import org.chromium.chrome.R; import org.chromium.chrome.R;
+import org.chromium.chrome.browser.app.ChromeActivity; +import org.chromium.chrome.browser.app.ChromeActivity;
import org.chromium.chrome.browser.app.download.home.DownloadPage; import org.chromium.chrome.browser.app.download.home.DownloadPage;
import org.chromium.chrome.browser.bookmarks.BookmarkPage; import org.chromium.chrome.browser.bookmarks.BookmarkPage;
import org.chromium.chrome.browser.browser_controls.BrowserControlsMarginSupplier; import org.chromium.chrome.browser.browser_controls.BrowserControlsMarginSupplier;
@@ -63,7 +64,7 @@ import org.chromium.ui.util.ColorUtils; @@ -67,7 +68,7 @@ import java.util.function.Supplier;
* Creates NativePage objects to show chrome-native:// URLs using the native Android view system.
*/ */
@NullMarked
public class NativePageFactory { public class NativePageFactory {
- private final Activity mActivity; - private final Activity mActivity;
+ private final ChromeActivity mActivity; + private final ChromeActivity mActivity;
private final BottomSheetController mBottomSheetController; private final BottomSheetController mBottomSheetController;
private final BrowserControlsManager mBrowserControlsManager; private final BrowserControlsManager mBrowserControlsManager;
private final Supplier<Tab> mCurrentTabSupplier; private final Supplier<@Nullable Tab> mCurrentTabSupplier;
@@ -87,7 +88,7 @@ public class NativePageFactory { @@ -91,7 +92,7 @@ public class NativePageFactory {
private static NativePage sTestPage; private static @Nullable NativePage sTestPage;
public NativePageFactory( public NativePageFactory(
- @NonNull Activity activity, - Activity activity,
+ @NonNull ChromeActivity activity, + ChromeActivity activity,
@NonNull BottomSheetController sheetController, BottomSheetController sheetController,
@NonNull BrowserControlsManager browserControlsManager, BrowserControlsManager browserControlsManager,
@NonNull Supplier<Tab> currentTabSupplier, Supplier<@Nullable Tab> currentTabSupplier,
@@ -162,7 +163,7 @@ public class NativePageFactory { @@ -166,7 +167,7 @@ public class NativePageFactory {
@VisibleForTesting @VisibleForTesting
static class NativePageBuilder { static class NativePageBuilder {
@@ -234,7 +234,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat
private final BottomSheetController mBottomSheetController; private final BottomSheetController mBottomSheetController;
private final Supplier<NewTabPageCreationTracker> mNewTabPageCreationTracker; private final Supplier<NewTabPageCreationTracker> mNewTabPageCreationTracker;
private final BrowserControlsManager mBrowserControlsManager; private final BrowserControlsManager mBrowserControlsManager;
@@ -271,7 +272,7 @@ public class NativePageFactory { @@ -275,7 +276,7 @@ public class NativePageFactory {
mBrowserControlsManager, mBrowserControlsManager,
mTabModelSelector, mTabModelSelector,
mEdgeToEdgeControllerSupplier), mEdgeToEdgeControllerSupplier),
@@ -246,7 +246,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 diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn
@@ -245,6 +245,8 @@ static_library("browser") { @@ -241,6 +241,8 @@ static_library("browser") {
"bluetooth/chrome_bluetooth_delegate_impl_client.h", "bluetooth/chrome_bluetooth_delegate_impl_client.h",
"bookmarks/bookmark_model_factory.cc", "bookmarks/bookmark_model_factory.cc",
"bookmarks/bookmark_model_factory.h", "bookmarks/bookmark_model_factory.h",
@@ -255,7 +255,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
"bookmarks/chrome_bookmark_client.cc", "bookmarks/chrome_bookmark_client.cc",
"bookmarks/chrome_bookmark_client.h", "bookmarks/chrome_bookmark_client.h",
"bookmarks/managed_bookmark_service_factory.cc", "bookmarks/managed_bookmark_service_factory.cc",
@@ -1721,6 +1723,13 @@ static_library("browser") { @@ -1688,6 +1690,13 @@ static_library("browser") {
] ]
} }
@@ -269,7 +269,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
configs += [ configs += [
"//build/config/compiler:wexit_time_destructors", "//build/config/compiler:wexit_time_destructors",
"//build/config:precompiled_headers", "//build/config:precompiled_headers",
@@ -3704,8 +3713,6 @@ static_library("browser") { @@ -3712,8 +3721,6 @@ static_library("browser") {
"bookmarks/bookmark_expanded_state_tracker.h", "bookmarks/bookmark_expanded_state_tracker.h",
"bookmarks/bookmark_expanded_state_tracker_factory.cc", "bookmarks/bookmark_expanded_state_tracker_factory.cc",
"bookmarks/bookmark_expanded_state_tracker_factory.h", "bookmarks/bookmark_expanded_state_tracker_factory.h",
@@ -681,10 +681,10 @@ 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 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 --- 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 +++ b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManagerCoordinator.java
@@ -57,6 +57,8 @@ import org.chromium.components.image_fetcher.ImageFetcher; @@ -57,6 +57,8 @@ import org.chromium.components.image_fetcher.ImageFetcherConfig;
import org.chromium.components.image_fetcher.ImageFetcherConfig;
import org.chromium.components.image_fetcher.ImageFetcherFactory; import org.chromium.components.image_fetcher.ImageFetcherFactory;
import org.chromium.ui.KeyboardVisibilityDelegate; import org.chromium.ui.KeyboardVisibilityDelegate;
import org.chromium.ui.edge_to_edge.EdgeToEdgePadAdjuster;
+import org.chromium.ui.base.ActivityWindowAndroid; +import org.chromium.ui.base.ActivityWindowAndroid;
+import org.chromium.ui.modaldialog.ModalDialogManager; +import org.chromium.ui.modaldialog.ModalDialogManager;
import org.chromium.ui.modaldialog.ModalDialogManager; import org.chromium.ui.modaldialog.ModalDialogManager;
@@ -714,9 +714,9 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows
+import org.chromium.ui.base.ActivityWindowAndroid; +import org.chromium.ui.base.ActivityWindowAndroid;
+import org.chromium.ui.modaldialog.ModalDialogManager; +import org.chromium.ui.modaldialog.ModalDialogManager;
import org.chromium.ui.accessibility.AccessibilityState; import org.chromium.ui.accessibility.AccessibilityState;
import org.chromium.ui.listmenu.ListMenu; import org.chromium.ui.base.DeviceFormFactor;
import org.chromium.ui.listmenu.ListMenuItemProperties; import org.chromium.ui.base.DeviceInput;
@@ -81,6 +83,47 @@ import java.util.function.BooleanSupplier; @@ -83,6 +85,47 @@ import java.util.function.BooleanSupplier;
import java.util.function.Consumer; import java.util.function.Consumer;
import java.util.function.Predicate; import java.util.function.Predicate;
@@ -764,7 +764,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows
/** Responsible for BookmarkManager business logic. */ /** Responsible for BookmarkManager business logic. */
// TODO(crbug.com/40256938): Remove BookmarkDelegate if possible. // TODO(crbug.com/40256938): Remove BookmarkDelegate if possible.
@NullMarked @NullMarked
@@ -91,6 +134,9 @@ class BookmarkManagerMediator @@ -93,6 +136,9 @@ class BookmarkManagerMediator
private static boolean sPreventLoadingForTesting; private static boolean sPreventLoadingForTesting;
@@ -774,7 +774,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. */ /** Keeps track of whether drag is enabled / active for bookmark lists. */
private class BookmarkDragStateDelegate implements DragStateDelegate { private class BookmarkDragStateDelegate implements DragStateDelegate {
private BookmarkDelegate mBookmarkDelegate; private BookmarkDelegate mBookmarkDelegate;
@@ -597,6 +643,14 @@ class BookmarkManagerMediator @@ -608,6 +654,14 @@ class BookmarkManagerMediator
mNativePage = nativePage; mNativePage = nativePage;
} }
@@ -789,7 +789,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows
/** See BookmarkManager(Coordinator)#updateForUrl */ /** See BookmarkManager(Coordinator)#updateForUrl */
void updateForUrl(String url) { void updateForUrl(String url) {
// Bookmark model is null if the manager has been destroyed. // Bookmark model is null if the manager has been destroyed.
@@ -769,6 +823,235 @@ class BookmarkManagerMediator @@ -780,6 +834,235 @@ class BookmarkManagerMediator
} }
} }
@@ -1250,7 +1250,7 @@ diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browse
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc 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 --- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc +++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -251,6 +251,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { @@ -255,6 +255,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
&kBatchTabRestore, &kBatchTabRestore,
&kBlockIntentsWhileLocked, &kBlockIntentsWhileLocked,
&kBookmarkPaneAndroid, &kBookmarkPaneAndroid,
@@ -1261,7 +1261,7 @@ 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 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 --- 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 +++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
@@ -689,6 +689,7 @@ public abstract class ChromeFeatureList { @@ -702,6 +702,7 @@ public abstract class ChromeFeatureList {
public static final String USE_LIBUNWINDSTACK_NATIVE_UNWINDER_ANDROID = public static final String USE_LIBUNWINDSTACK_NATIVE_UNWINDER_ANDROID =
"UseLibunwindstackNativeUnwinderAndroid"; "UseLibunwindstackNativeUnwinderAndroid";
public static final String VISITED_URL_RANKING_SERVICE = "VisitedURLRankingService"; public static final String VISITED_URL_RANKING_SERVICE = "VisitedURLRankingService";
@@ -1324,7 +1324,7 @@ 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. */ /** Whether Chrome is set as the default browser. Default value is false. */
public static final String CHROME_DEFAULT_BROWSER = "applink.chrome_default_browser"; public static final String CHROME_DEFAULT_BROWSER = "applink.chrome_default_browser";
@@ -1017,6 +1019,7 @@ public final class ChromePreferenceKeys { @@ -1051,6 +1053,7 @@ public final class ChromePreferenceKeys {
AUXILIARY_SEARCH_SCHEMA_VERSION, AUXILIARY_SEARCH_SCHEMA_VERSION,
APP_LAUNCH_LAST_KNOWN_ACTIVE_TAB_STATE, APP_LAUNCH_LAST_KNOWN_ACTIVE_TAB_STATE,
APP_LAUNCH_SEARCH_ENGINE_HAD_LOGO, APP_LAUNCH_SEARCH_ENGINE_HAD_LOGO,
@@ -1410,7 +1410,7 @@ diff --git a/components/headless/select_file_dialog/headless_select_file_dialog.
diff --git a/components/user_data_importer/content/content_bookmark_parser_utils.cc b/components/user_data_importer/content/content_bookmark_parser_utils.cc diff --git a/components/user_data_importer/content/content_bookmark_parser_utils.cc b/components/user_data_importer/content/content_bookmark_parser_utils.cc
--- a/components/user_data_importer/content/content_bookmark_parser_utils.cc --- a/components/user_data_importer/content/content_bookmark_parser_utils.cc
+++ b/components/user_data_importer/content/content_bookmark_parser_utils.cc +++ b/components/user_data_importer/content/content_bookmark_parser_utils.cc
@@ -89,6 +89,7 @@ std::optional<base::Time> GetTimeAttribute(const std::string& attribute_list, @@ -138,6 +138,7 @@ std::optional<bool> GetBoolAttribute(std::string_view attribute_list,
// Given the URL of a page and a favicon data URL, adds an appropriate record // Given the URL of a page and a favicon data URL, adds an appropriate record
// to the given favicon usage vector. // to the given favicon usage vector.
@@ -1418,7 +1418,7 @@ diff --git a/components/user_data_importer/content/content_bookmark_parser_utils
void DataURLToFaviconUsage(const GURL& link_url, void DataURLToFaviconUsage(const GURL& link_url,
const GURL& favicon_data, const GURL& favicon_data,
favicon_base::FaviconUsageDataList* favicons) { favicon_base::FaviconUsageDataList* favicons) {
@@ -438,9 +439,11 @@ BookmarkParser::ParsedBookmarks ParseBookmarksUnsafe( @@ -495,9 +496,11 @@ BookmarkParser::ParsedBookmarks ParseBookmarksUnsafe(
} }
parsing_result.bookmarks.push_back(std::move(entry)); parsing_result.bookmarks.push_back(std::move(entry));
+115 -114
View File
@@ -17,7 +17,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
base/android/feature_map.cc | 5 + base/android/feature_map.cc | 5 +
.../base/cached_flags/ValuesReturned.java | 2 +- .../base/cached_flags/ValuesReturned.java | 2 +-
base/feature_list.cc | 76 ++++++++ base/feature_list.cc | 76 ++++++++
base/feature_list.h | 80 +++++++- base/feature_list.h | 98 +++++++++-
build/android/gyp/java_cpp_features.py | 17 ++ build/android/gyp/java_cpp_features.py | 17 ++
chrome/android/java/res/values/values.xml | 3 + chrome/android/java/res/values/values.xml | 3 +
.../java/res/xml/privacy_preferences.xml | 4 + .../java/res/xml/privacy_preferences.xml | 4 +
@@ -35,7 +35,6 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
.../browser/flags/ChromeFeatureList.java | 13 +- .../browser/flags/ChromeFeatureList.java | 13 +-
.../flags/cromite/include_all_directory.java | 1 + .../flags/cromite/include_all_directory.java | 1 +
.../java_template/CromiteCachedFlag.java.tmpl | 47 +++++ .../java_template/CromiteCachedFlag.java.tmpl | 47 +++++
chrome/browser/settings/BUILD.gn | 1 +
.../settings/ChromeBaseSettingsFragment.java | 50 +++++ .../settings/ChromeBaseSettingsFragment.java | 50 +++++
.../strings/android_chrome_strings.grd | 1 + .../strings/android_chrome_strings.grd | 1 +
.../Add-cromite-flags-support.grdp | 9 + .../Add-cromite-flags-support.grdp | 9 +
@@ -107,7 +106,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 + third_party/blink/public/common/features.h | 1 +
ui/base/ui_base_features.cc | 1 + ui/base/ui_base_features.cc | 1 +
ui/base/ui_base_features.h | 1 + ui/base/ui_base_features.h | 1 +
94 files changed, 834 insertions(+), 31 deletions(-) 93 files changed, 850 insertions(+), 32 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/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/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 create mode 100644 chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Add-cromite-flags-support.grdp
@@ -144,7 +143,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 diff --git a/base/BUILD.gn b/base/BUILD.gn
--- a/base/BUILD.gn --- a/base/BUILD.gn
+++ b/base/BUILD.gn +++ b/base/BUILD.gn
@@ -174,6 +174,8 @@ use_epoll = is_linux || is_chromeos || is_android @@ -170,6 +170,8 @@ use_epoll = is_linux || is_chromeos || is_android
# This does not include test code (test support and anything in the test # 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). # directory) which should use source_set as is recommended for GN targets).
component("base") { component("base") {
@@ -153,7 +152,7 @@ diff --git a/base/BUILD.gn b/base/BUILD.gn
sources = [ sources = [
"allocator/allocator_check.cc", "allocator/allocator_check.cc",
"allocator/allocator_check.h", "allocator/allocator_check.h",
@@ -1043,7 +1045,7 @@ component("base") { @@ -1046,7 +1048,7 @@ component("base") {
"//build/config/compiler:wglobal_constructors", "//build/config/compiler:wglobal_constructors",
] ]
@@ -180,7 +179,7 @@ diff --git a/base/android/feature_map.cc b/base/android/feature_map.cc
diff --git a/base/android/java/src/org/chromium/base/cached_flags/ValuesReturned.java b/base/android/java/src/org/chromium/base/cached_flags/ValuesReturned.java diff --git a/base/android/java/src/org/chromium/base/cached_flags/ValuesReturned.java b/base/android/java/src/org/chromium/base/cached_flags/ValuesReturned.java
--- a/base/android/java/src/org/chromium/base/cached_flags/ValuesReturned.java --- a/base/android/java/src/org/chromium/base/cached_flags/ValuesReturned.java
+++ b/base/android/java/src/org/chromium/base/cached_flags/ValuesReturned.java +++ b/base/android/java/src/org/chromium/base/cached_flags/ValuesReturned.java
@@ -18,7 +18,7 @@ import java.util.Map; @@ -18,7 +18,7 @@ import java.util.function.Supplier;
@NullMarked @NullMarked
public abstract class ValuesReturned { public abstract class ValuesReturned {
@GuardedBy("sBoolValues") @GuardedBy("sBoolValues")
@@ -192,7 +191,7 @@ diff --git a/base/android/java/src/org/chromium/base/cached_flags/ValuesReturned
diff --git a/base/feature_list.cc b/base/feature_list.cc diff --git a/base/feature_list.cc b/base/feature_list.cc
--- a/base/feature_list.cc --- a/base/feature_list.cc
+++ b/base/feature_list.cc +++ b/base/feature_list.cc
@@ -41,6 +41,31 @@ @@ -42,6 +42,31 @@
namespace base { namespace base {
@@ -224,7 +223,7 @@ diff --git a/base/feature_list.cc b/base/feature_list.cc
namespace { namespace {
// Pointer to the FeatureList instance singleton that was set via // Pointer to the FeatureList instance singleton that was set via
@@ -470,6 +495,46 @@ bool FeatureList::IsEnabled(const Feature& feature) { @@ -471,6 +496,46 @@ bool FeatureList::IsEnabled(const Feature& feature) {
return g_feature_list_instance->IsFeatureEnabled(feature); return g_feature_list_instance->IsFeatureEnabled(feature);
} }
@@ -271,7 +270,7 @@ diff --git a/base/feature_list.cc b/base/feature_list.cc
// static // static
bool FeatureList::IsValidFeatureOrFieldTrialName(std::string_view name) { bool FeatureList::IsValidFeatureOrFieldTrialName(std::string_view name) {
return IsStringASCII(name) && name.find_first_of(",<*") == std::string::npos; return IsStringASCII(name) && name.find_first_of(",<*") == std::string::npos;
@@ -737,6 +802,17 @@ void FeatureList::VisitFeaturesAndParams(FeatureVisitor& visitor, @@ -738,6 +803,17 @@ void FeatureList::VisitFeaturesAndParams(FeatureVisitor& visitor,
void FeatureList::FinalizeInitialization() { void FeatureList::FinalizeInitialization() {
DCHECK(!initialized_); DCHECK(!initialized_);
@@ -292,7 +291,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 diff --git a/base/feature_list.h b/base/feature_list.h
--- a/base/feature_list.h --- a/base/feature_list.h
+++ b/base/feature_list.h +++ b/base/feature_list.h
@@ -177,8 +177,10 @@ enum class FeatureMacroHandshake { kSecret }; @@ -238,8 +238,10 @@ constexpr const char* GetFeatureNameFromIdentifier(std::string_view feature) {
struct BASE_EXPORT LOGICALLY_CONST Feature { struct BASE_EXPORT LOGICALLY_CONST Feature {
constexpr Feature(const char* name, constexpr Feature(const char* name,
FeatureState default_state, FeatureState default_state,
@@ -305,7 +304,7 @@ diff --git a/base/feature_list.h b/base/feature_list.h
#if BUILDFLAG(ENABLE_BANNED_BASE_FEATURE_PREFIX) #if BUILDFLAG(ENABLE_BANNED_BASE_FEATURE_PREFIX)
if (std::string_view(name).find(BUILDFLAG(BANNED_BASE_FEATURE_PREFIX)) == if (std::string_view(name).find(BUILDFLAG(BANNED_BASE_FEATURE_PREFIX)) ==
0) { 0) {
@@ -205,6 +207,9 @@ struct BASE_EXPORT LOGICALLY_CONST Feature { @@ -266,6 +268,9 @@ struct BASE_EXPORT LOGICALLY_CONST Feature {
// command line switch. // command line switch.
const FeatureState default_state; const FeatureState default_state;
@@ -315,7 +314,7 @@ diff --git a/base/feature_list.h b/base/feature_list.h
private: private:
friend class FeatureList; friend class FeatureList;
@@ -485,6 +490,11 @@ class BASE_EXPORT FeatureList { @@ -546,6 +551,11 @@ class BASE_EXPORT FeatureList {
// instance, which is checked in builds with DCHECKs enabled. // instance, which is checked in builds with DCHECKs enabled.
static bool IsEnabled(const Feature& feature); static bool IsEnabled(const Feature& feature);
@@ -327,7 +326,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 // Some characters are not allowed to appear in feature names or the
// associated field trial names, as they are used as special characters for // associated field trial names, as they are used as special characters for
// command-line serialization. This function checks that the strings are ASCII // command-line serialization. This function checks that the strings are ASCII
@@ -754,4 +764,70 @@ class BASE_EXPORT FeatureList { @@ -815,4 +825,88 @@ class BASE_EXPORT FeatureList {
} // namespace base } // namespace base
@@ -389,22 +388,40 @@ diff --git a/base/feature_list.h b/base/feature_list.h
+ _Pragma("clang diagnostic pop") \ + _Pragma("clang diagnostic pop") \
+ static_assert(true, "") /* for a semicolon requirement */ + static_assert(true, "") /* for a semicolon requirement */
+ +
+#define BASE_FEATURE_DISABLED(feature, name, default_state) \ +#define BASE_FEATURE_DISABLED_3_ARGS(feature, name, default_state) \
+ BASE_FEATURE(feature, name, default_state); \ + BASE_FEATURE(feature, name, default_state); \
+ static_assert(default_state == base::FEATURE_DISABLED_BY_DEFAULT, "Check default state") + static_assert(default_state == base::FEATURE_DISABLED_BY_DEFAULT, "Check default state")
+ +
+#define BASE_FEATURE_ENABLED(feature, name, default_state) \ +#define BASE_FEATURE_DISABLED_2_ARGS(name, default_state) \
+ BASE_FEATURE(name, default_state); \
+ static_assert(default_state == base::FEATURE_DISABLED_BY_DEFAULT, "Check default state")
+
+#define GET_BASE_FEATURE_DISABLED_MACRO(_1, _2, _3, NAME, ...) NAME
+#define BASE_FEATURE_DISABLED(...) \
+ GET_BASE_FEATURE_DISABLED_MACRO(__VA_ARGS__, BASE_FEATURE_DISABLED_3_ARGS, \
+ BASE_FEATURE_DISABLED_2_ARGS)(__VA_ARGS__)
+
+#define BASE_FEATURE_ENABLED_3_ARGS(feature, name, default_state) \
+ BASE_FEATURE(feature, name, default_state); \ + BASE_FEATURE(feature, name, default_state); \
+ static_assert(default_state == base::FEATURE_ENABLED_BY_DEFAULT, "Check default state") + static_assert(default_state == base::FEATURE_ENABLED_BY_DEFAULT, "Check default state")
+
+#define BASE_FEATURE_ENABLED_2_ARGS(name, default_state) \
+ BASE_FEATURE(name, default_state); \
+ static_assert(default_state == base::FEATURE_ENABLED_BY_DEFAULT, "Check default state")
+
+#define GET_BASE_FEATURE_ENABLED_MACRO(_1, _2, _3, NAME, ...) NAME
+#define BASE_FEATURE_ENABLED(...) \
+ GET_BASE_FEATURE_ENABLED_MACRO(__VA_ARGS__, BASE_FEATURE_ENABLED_3_ARGS, \
+ BASE_FEATURE_ENABLED_2_ARGS)(__VA_ARGS__)
+ +
#endif // BASE_FEATURE_LIST_H_ #endif // BASE_FEATURE_LIST_H_
diff --git a/build/android/gyp/java_cpp_features.py b/build/android/gyp/java_cpp_features.py diff --git a/build/android/gyp/java_cpp_features.py b/build/android/gyp/java_cpp_features.py
--- a/build/android/gyp/java_cpp_features.py --- a/build/android/gyp/java_cpp_features.py
+++ b/build/android/gyp/java_cpp_features.py +++ b/build/android/gyp/java_cpp_features.py
@@ -21,10 +21,27 @@ class FeatureParserDelegate(java_cpp_utils.CppConstantParser.Delegate): @@ -25,10 +25,27 @@ class FeatureParserDelegate(java_cpp_utils.CppConstantParser.Delegate):
# ExtractConstantName() -> 'ConstantName' _FEATURE_RE_3_ARGS = re.compile(r'BASE_FEATURE\(k([^,]+),')
# ExtractValue() -> '"StringNameOfTheFeature"' # For 2-arg macro: BASE_FEATURE(MyFeature, ...)
FEATURE_RE = re.compile(r'BASE_FEATURE\(k([^,]+),') _FEATURE_RE_2_ARGS = re.compile(r'BASE_FEATURE\(([^,]+),')
+ +
+ FEATURE_RE1 = re.compile(r'CROMITE_FEATURE\(k([^,]+),') + FEATURE_RE1 = re.compile(r'CROMITE_FEATURE\(k([^,]+),')
+ FEATURE_RE2 = re.compile(r'CROMITE_FEATURE_KEEP_DISABLED\(k([^,]+),') + FEATURE_RE2 = re.compile(r'CROMITE_FEATURE_KEEP_DISABLED\(k([^,]+),')
@@ -412,10 +429,10 @@ diff --git a/build/android/gyp/java_cpp_features.py b/build/android/gyp/java_cpp
+ FEATURE_RE4 = re.compile(r'CROMITE_FEATURE_KEEP_ENABLED\(k([^,]+),') + FEATURE_RE4 = re.compile(r'CROMITE_FEATURE_KEEP_ENABLED\(k([^,]+),')
+ FEATURE_RE5 = re.compile(r'CROMITE_FEATURE_ENABLED\(k([^,]+),') + FEATURE_RE5 = re.compile(r'CROMITE_FEATURE_ENABLED\(k([^,]+),')
+ +
VALUE_RE = re.compile(r'\s*("(?:\"|[^"])*")\s*,') _VALUE_RE = re.compile(r'\s*("(?:\\"|[^"])*")\s*,')
def ExtractConstantName(self, line): def ExtractConstantName(self, line):
match = FeatureParserDelegate.FEATURE_RE.match(line) match = self._FEATURE_RE_3_ARGS.match(line)
+ if match is None: + if match is None:
+ match = FeatureParserDelegate.FEATURE_RE1.match(line) + match = FeatureParserDelegate.FEATURE_RE1.match(line)
+ if match is None: + if match is None:
@@ -426,9 +443,9 @@ diff --git a/build/android/gyp/java_cpp_features.py b/build/android/gyp/java_cpp
+ match = FeatureParserDelegate.FEATURE_RE4.match(line) + match = FeatureParserDelegate.FEATURE_RE4.match(line)
+ if match is None: + if match is None:
+ match = FeatureParserDelegate.FEATURE_RE5.match(line) + match = FeatureParserDelegate.FEATURE_RE5.match(line)
return match.group(1) if match else None if match:
return match.group(1)
def ExtractValue(self, line): match = self._FEATURE_RE_2_ARGS.match(line)
diff --git a/chrome/android/java/res/values/values.xml b/chrome/android/java/res/values/values.xml diff --git a/chrome/android/java/res/values/values.xml b/chrome/android/java/res/values/values.xml
--- a/chrome/android/java/res/values/values.xml --- a/chrome/android/java/res/values/values.xml
+++ b/chrome/android/java/res/values/values.xml +++ b/chrome/android/java/res/values/values.xml
@@ -471,7 +488,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/settin
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 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 --- 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 +++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
@@ -130,7 +130,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment @@ -132,7 +132,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
} }
@Override @Override
@@ -483,18 +500,18 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java --- a/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java
@@ -11,6 +11,7 @@ import androidx.annotation.NonNull; @@ -10,6 +10,7 @@ import android.os.Bundle;
import androidx.fragment.app.Fragment; import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager; import androidx.fragment.app.FragmentManager;
+import org.chromium.base.supplier.Supplier; +import org.chromium.base.supplier.Supplier;
import org.chromium.base.supplier.ObservableSupplier; import org.chromium.base.supplier.ObservableSupplier;
import org.chromium.base.supplier.OneshotSupplier; import org.chromium.base.supplier.OneshotSupplier;
import org.chromium.chrome.browser.accessibility.settings.ChromeAccessibilitySettingsDelegate; import org.chromium.build.annotations.NullMarked;
@@ -70,18 +71,21 @@ public class FragmentDependencyProvider extends FragmentManager.FragmentLifecycl @@ -72,24 +73,31 @@ public class FragmentDependencyProvider extends FragmentManager.FragmentLifecycl
private final OneshotSupplier<SnackbarManager> mSnackbarManagerSupplier; private final OneshotSupplier<SnackbarManager> mSnackbarManagerSupplier;
private final OneshotSupplier<BottomSheetController> mBottomSheetControllerSupplier; private final OneshotSupplier<BottomSheetController> mBottomSheetControllerSupplier;
private final ObservableSupplier<ModalDialogManager> mModalDialogManagerSupplier; private final ObservableSupplier<@Nullable ModalDialogManager> mModalDialogManagerSupplier;
+ private final Supplier<ChromeBaseSettingsFragment.RequireRestartDelegate> mRequireRestartDelegateSupplier; + private final Supplier<ChromeBaseSettingsFragment.RequireRestartDelegate> mRequireRestartDelegateSupplier;
public FragmentDependencyProvider( public FragmentDependencyProvider(
@@ -502,8 +519,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Fragme
Profile profile, Profile profile,
OneshotSupplier<SnackbarManager> snackbarManagerSupplier, OneshotSupplier<SnackbarManager> snackbarManagerSupplier,
OneshotSupplier<BottomSheetController> bottomSheetControllerSupplier, OneshotSupplier<BottomSheetController> bottomSheetControllerSupplier,
- ObservableSupplier<ModalDialogManager> modalDialogManagerSupplier) { - ObservableSupplier<@Nullable ModalDialogManager> modalDialogManagerSupplier) {
+ ObservableSupplier<ModalDialogManager> modalDialogManagerSupplier, + ObservableSupplier<@Nullable ModalDialogManager> modalDialogManagerSupplier,
+ Supplier<ChromeBaseSettingsFragment.RequireRestartDelegate> requireRestartDelegateSupplier) { + Supplier<ChromeBaseSettingsFragment.RequireRestartDelegate> requireRestartDelegateSupplier) {
mContext = context; mContext = context;
mProfile = profile; mProfile = profile;
@@ -514,9 +531,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Fragme
} }
@Override @Override
@@ -90,6 +94,10 @@ public class FragmentDependencyProvider extends FragmentManager.FragmentLifecycl public void onFragmentAttached(
@NonNull Fragment fragment, FragmentManager fragmentManager, Fragment fragment, Context unusedContext) {
@NonNull Context unusedContext) {
// Common dependencies attachments. // Common dependencies attachments.
+ if (fragment instanceof ChromeBaseSettingsFragment) { + if (fragment instanceof ChromeBaseSettingsFragment) {
+ ((ChromeBaseSettingsFragment)fragment).setRequestRestartDelegateSupplier( + ((ChromeBaseSettingsFragment)fragment).setRequestRestartDelegateSupplier(
@@ -528,25 +544,25 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Fragme
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 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java
@@ -4,6 +4,7 @@ @@ -6,6 +6,7 @@ package org.chromium.chrome.browser.settings;
package org.chromium.chrome.browser.settings; import static org.chromium.build.NullUtil.assumeNonNull;
+import android.app.Activity; +import android.app.Activity;
import android.annotation.SuppressLint; import android.annotation.SuppressLint;
import android.content.Context; import android.content.Context;
import android.content.Intent; import android.content.Intent;
@@ -32,7 +33,9 @@ import org.chromium.base.Callback; @@ -32,7 +33,9 @@ import org.chromium.base.CallbackUtils;
import org.chromium.base.CallbackUtils; import org.chromium.base.DeviceInfo;
import org.chromium.base.Log; import org.chromium.base.Log;
import org.chromium.base.metrics.RecordHistogram; import org.chromium.base.metrics.RecordHistogram;
+import org.chromium.base.supplier.Supplier; +import org.chromium.base.supplier.Supplier;
import org.chromium.base.supplier.ObservableSupplier; import org.chromium.base.supplier.ObservableSupplier;
+import org.chromium.base.supplier.OneshotSupplier; +import org.chromium.base.supplier.OneshotSupplier;
import org.chromium.base.supplier.OneshotSupplierImpl; import org.chromium.base.supplier.OneshotSupplierImpl;
import org.chromium.chrome.R; import org.chromium.build.annotations.NullMarked;
import org.chromium.chrome.browser.ChromeBaseAppCompatActivity; import org.chromium.build.annotations.Nullable;
@@ -40,12 +43,14 @@ import org.chromium.chrome.browser.back_press.BackPressHelper; @@ -42,12 +45,14 @@ import org.chromium.chrome.browser.back_press.BackPressHelper;
import org.chromium.chrome.browser.feedback.HelpAndFeedbackLauncherImpl; import org.chromium.chrome.browser.feedback.HelpAndFeedbackLauncherImpl;
import org.chromium.chrome.browser.flags.ChromeFeatureList; import org.chromium.chrome.browser.flags.ChromeFeatureList;
import org.chromium.chrome.browser.init.ChromeBrowserInitializer; import org.chromium.chrome.browser.init.ChromeBrowserInitializer;
@@ -561,7 +577,7 @@ 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.BottomSheetController;
import org.chromium.components.browser_ui.bottomsheet.BottomSheetControllerFactory; import org.chromium.components.browser_ui.bottomsheet.BottomSheetControllerFactory;
import org.chromium.components.browser_ui.bottomsheet.ManagedBottomSheetController; import org.chromium.components.browser_ui.bottomsheet.ManagedBottomSheetController;
@@ -88,6 +93,40 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity @@ -92,6 +97,40 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity
implements PreferenceFragmentCompat.OnPreferenceStartFragmentCallback, SnackbarManageable { implements PreferenceFragmentCompat.OnPreferenceStartFragmentCallback, SnackbarManageable {
private static final String TAG = "SettingsActivity"; private static final String TAG = "SettingsActivity";
@@ -589,7 +605,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Settin
+ ApplicationLifetime.terminate(true); + ApplicationLifetime.terminate(true);
+ } + }
+ }, Snackbar.TYPE_NOTIFICATION, Snackbar.UMA_UNKNOWN) + }, Snackbar.TYPE_NOTIFICATION, Snackbar.UMA_UNKNOWN)
+ .setSingleLine(false) + .setDefaultLines(false)
+ .setAction(mActivity.getString(R.string.relaunch), + .setAction(mActivity.getString(R.string.relaunch),
+ /*actionData*/null) + /*actionData*/null)
+ .setDuration(/*durationMs*/70000); + .setDuration(/*durationMs*/70000);
@@ -602,7 +618,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Settin
@VisibleForTesting(otherwise = VisibleForTesting.PACKAGE_PRIVATE) @VisibleForTesting(otherwise = VisibleForTesting.PACKAGE_PRIVATE)
public static final String EXTRA_SHOW_FRAGMENT = "show_fragment"; public static final String EXTRA_SHOW_FRAGMENT = "show_fragment";
@@ -154,7 +193,8 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity @@ -158,7 +197,8 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity
mProfile, mProfile,
mSnackbarManagerSupplier, mSnackbarManagerSupplier,
mBottomSheetControllerSupplier, mBottomSheetControllerSupplier,
@@ -615,22 +631,17 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Settin
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tracing/settings/DeveloperSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/tracing/settings/DeveloperSettings.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tracing/settings/DeveloperSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/tracing/settings/DeveloperSettings.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tracing/settings/DeveloperSettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tracing/settings/DeveloperSettings.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tracing/settings/DeveloperSettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tracing/settings/DeveloperSettings.java
@@ -19,12 +19,13 @@ import org.chromium.build.annotations.Nullable; @@ -23,8 +23,7 @@ import org.chromium.components.browser_ui.settings.SettingsUtils;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.preferences.ChromePreferenceKeys;
import org.chromium.chrome.browser.preferences.ChromeSharedPreferences;
+import org.chromium.chrome.browser.settings.ChromeBaseSettingsFragment;
import org.chromium.components.browser_ui.settings.EmbeddableSettingsPage;
import org.chromium.components.browser_ui.settings.SettingsUtils;
/** Settings fragment containing preferences aimed at Chrome and web developers. */ /** Settings fragment containing preferences aimed at Chrome and web developers. */
@NullMarked @NullMarked
-public class DeveloperSettings extends PreferenceFragmentCompat implements EmbeddableSettingsPage { -public class DeveloperSettings extends ChromeBaseSettingsFragment
- implements EmbeddableSettingsPage {
+public class DeveloperSettings extends ChromeBaseSettingsFragment implements EmbeddableSettingsPage { +public class DeveloperSettings extends ChromeBaseSettingsFragment implements EmbeddableSettingsPage {
private static final String UI_PREF_BETA_STABLE_HINT = "beta_stable_hint"; private static final String UI_PREF_BETA_STABLE_HINT = "beta_stable_hint";
// Non-translated strings: // Non-translated strings:
@@ -55,7 +56,7 @@ public class DeveloperSettings extends PreferenceFragmentCompat implements Embed @@ -55,7 +54,7 @@ public class DeveloperSettings extends ChromeBaseSettingsFragment
} }
@Override @Override
@@ -642,7 +653,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 diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc --- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc
@@ -381,6 +381,10 @@ using flags_ui::kOsLinux; @@ -384,6 +384,10 @@ using flags_ui::kOsLinux;
using flags_ui::kOsMac; using flags_ui::kOsMac;
using flags_ui::kOsWin; using flags_ui::kOsWin;
@@ -653,9 +664,9 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
namespace about_flags { namespace about_flags {
namespace { namespace {
@@ -4903,6 +4907,10 @@ const FeatureEntry::FeatureVariation @@ -4895,6 +4899,10 @@ const FeatureEntry::FeatureVariation kNtpEnterpriseShortcutsVariations[] = {
constexpr char kWebiumFlag[] = "webium"; #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \
#endif // !BUILDFLAG(IS_ANDROID) // BUILDFLAG(IS_CHROMEOS)
+#define FEATURE_PARAM_SECTION +#define FEATURE_PARAM_SECTION
+#include "cromite_flags/chrome_browser_about_flags_cc.inc" +#include "cromite_flags/chrome_browser_about_flags_cc.inc"
@@ -664,7 +675,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
// RECORDING USER METRICS FOR FLAGS: // RECORDING USER METRICS FOR FLAGS:
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
// The first line of the entry is the internal name. // The first line of the entry is the internal name.
@@ -4929,6 +4937,9 @@ constexpr char kWebiumFlag[] = "webium"; @@ -4921,6 +4929,9 @@ const FeatureEntry::FeatureVariation kNtpEnterpriseShortcutsVariations[] = {
const FeatureEntry kFeatureEntries[] = { const FeatureEntry kFeatureEntries[] = {
// Include generated flags for flag unexpiry; see //docs/flag_expiry.md and // Include generated flags for flag unexpiry; see //docs/flag_expiry.md and
// //tools/flags/generate_unexpire_flags.py. // //tools/flags/generate_unexpire_flags.py.
@@ -686,7 +697,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 diff --git a/chrome/browser/browser_features.h b/chrome/browser/browser_features.h
--- a/chrome/browser/browser_features.h --- a/chrome/browser/browser_features.h
+++ b/chrome/browser/browser_features.h +++ b/chrome/browser/browser_features.h
@@ -121,6 +121,7 @@ BASE_DECLARE_FEATURE(kRemovalOfIWAsFromTabCapture); @@ -125,6 +125,7 @@ BASE_DECLARE_FEATURE(kRemovalOfIWAsFromTabCapture);
// module, e.g. // module, e.g.
// //chrome/browser/<foo_module>/features.h // //chrome/browser/<foo_module>/features.h
// //
@@ -736,7 +747,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 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 --- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc +++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -1489,5 +1489,6 @@ BASE_FEATURE(kWebOtpCrossDeviceSimpleString, @@ -1558,5 +1558,6 @@ BASE_FEATURE(kWebOtpCrossDeviceSimpleString,
"WebOtpCrossDeviceSimpleString", "WebOtpCrossDeviceSimpleString",
base::FEATURE_DISABLED_BY_DEFAULT); base::FEATURE_DISABLED_BY_DEFAULT);
@@ -746,7 +757,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 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 --- a/chrome/browser/flags/android/chrome_feature_list.h
+++ b/chrome/browser/flags/android/chrome_feature_list.h +++ b/chrome/browser/flags/android/chrome_feature_list.h
@@ -337,6 +337,7 @@ constexpr base::FeatureParam<bool> kTouchToSearchCalloutSnippetAsSubtitle( @@ -346,6 +346,7 @@ constexpr base::FeatureParam<bool> kTouchToSearchCalloutSnippetAsSubtitle(
"snippet_as_subtitle", "snippet_as_subtitle",
/*default_value=*/false); /*default_value=*/false);
@@ -768,18 +779,18 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@@ -1063,7 +1067,7 @@ public abstract class ChromeFeatureList { @@ -1111,7 +1115,7 @@ public abstract class ChromeFeatureList {
public static final CachedFlag sWebApkMinShellApkVersion =
newCachedFlag(WEB_APK_MIN_SHELL_APK_VERSION, true); newCachedFlag(WEB_APK_MIN_SHELL_APK_VERSION, true);
// keep-sorted end
- public static final List<CachedFlag> sFlagsCachedFullBrowser = - public static final List<CachedFlag> sFlagsCachedFullBrowser =
+ public static final List<CachedFlag> sFlagsCachedFullBrowserChromium = + public static final List<CachedFlag> sFlagsCachedFullBrowserChromium =
List.of( List.of(
// keep-sorted start
sAccountForSuppressedKeyboardInsets, sAccountForSuppressedKeyboardInsets,
sAllowTabClosingUponMinimization, @@ -1268,6 +1272,13 @@ public abstract class ChromeFeatureList {
@@ -1205,6 +1209,13 @@ public abstract class ChromeFeatureList { // keep-sorted end
sUseLibunwindstackNativeUnwinderAndroid, );
sWebApkMinShellApkVersion);
+ private static <T> List<T> concatenateLists(List<T>... collections) { + private static <T> List<T> concatenateLists(List<T>... collections) {
+ return Arrays.stream(collections).flatMap(x -> x.stream()).collect(Collectors.toList()); + return Arrays.stream(collections).flatMap(x -> x.stream()).collect(Collectors.toList());
@@ -849,30 +860,20 @@ new file mode 100644
+ }} + }}
+ +
+}} +}}
diff --git a/chrome/browser/settings/BUILD.gn b/chrome/browser/settings/BUILD.gn
--- a/chrome/browser/settings/BUILD.gn
+++ b/chrome/browser/settings/BUILD.gn
@@ -35,6 +35,7 @@ android_library("java") {
"//base:base_java",
"//chrome/browser/feedback/android:factory_java",
"//chrome/browser/feedback/android:java",
+ "//chrome/browser/flags:java",
"//chrome/browser/preferences:java",
"//chrome/browser/profiles/android:java",
"//chrome/browser/ui/android/favicon:java",
diff --git a/chrome/browser/settings/android/java/src/org/chromium/chrome/browser/settings/ChromeBaseSettingsFragment.java b/chrome/browser/settings/android/java/src/org/chromium/chrome/browser/settings/ChromeBaseSettingsFragment.java diff --git a/chrome/browser/settings/android/java/src/org/chromium/chrome/browser/settings/ChromeBaseSettingsFragment.java b/chrome/browser/settings/android/java/src/org/chromium/chrome/browser/settings/ChromeBaseSettingsFragment.java
--- a/chrome/browser/settings/android/java/src/org/chromium/chrome/browser/settings/ChromeBaseSettingsFragment.java --- a/chrome/browser/settings/android/java/src/org/chromium/chrome/browser/settings/ChromeBaseSettingsFragment.java
+++ b/chrome/browser/settings/android/java/src/org/chromium/chrome/browser/settings/ChromeBaseSettingsFragment.java +++ b/chrome/browser/settings/android/java/src/org/chromium/chrome/browser/settings/ChromeBaseSettingsFragment.java
@@ -8,12 +8,19 @@ import androidx.preference.PreferenceFragmentCompat; @@ -16,6 +16,7 @@ import androidx.recyclerview.widget.RecyclerView;
import org.chromium.build.annotations.Initializer; import org.chromium.build.annotations.Initializer;
import org.chromium.build.annotations.NullMarked; import org.chromium.build.annotations.NullMarked;
import org.chromium.build.annotations.Nullable;
+import org.chromium.base.supplier.Supplier; +import org.chromium.base.supplier.Supplier;
import org.chromium.chrome.browser.feedback.HelpAndFeedbackLauncher; import org.chromium.chrome.browser.feedback.HelpAndFeedbackLauncher;
import org.chromium.chrome.browser.feedback.HelpAndFeedbackLauncherFactory; import org.chromium.chrome.browser.feedback.HelpAndFeedbackLauncherFactory;
import org.chromium.chrome.browser.profiles.Profile; import org.chromium.chrome.browser.flags.ChromeFeatureList;
import org.chromium.components.browser_ui.settings.EmbeddableSettingsPage; @@ -28,6 +29,12 @@ import org.chromium.components.browser_ui.settings.SettingsStylingController;
import org.chromium.components.browser_ui.settings.SettingsCustomTabLauncher;
import java.util.Objects;
+import android.os.Bundle; +import android.os.Bundle;
+import androidx.preference.Preference; +import androidx.preference.Preference;
@@ -883,9 +884,9 @@ diff --git a/chrome/browser/settings/android/java/src/org/chromium/chrome/browse
/** /**
* Base class for settings in Chrome. * Base class for settings in Chrome.
* *
@@ -28,6 +35,49 @@ public abstract class ChromeBaseSettingsFragment extends PreferenceFragmentCompa @@ -89,6 +96,49 @@ public abstract class ChromeBaseSettingsFragment extends PreferenceFragmentCompa
private Profile mProfile; });
private SettingsCustomTabLauncher mCustomTabLauncher; }
+ private Supplier<ChromeBaseSettingsFragment.RequireRestartDelegate> mRequireRestartDelegateSupplier; + private Supplier<ChromeBaseSettingsFragment.RequireRestartDelegate> mRequireRestartDelegateSupplier;
+ +
@@ -967,9 +968,9 @@ new file mode 100644
diff --git a/chrome/browser/ui/ui_features.cc b/chrome/browser/ui/ui_features.cc diff --git a/chrome/browser/ui/ui_features.cc b/chrome/browser/ui/ui_features.cc
--- a/chrome/browser/ui/ui_features.cc --- a/chrome/browser/ui/ui_features.cc
+++ b/chrome/browser/ui/ui_features.cc +++ b/chrome/browser/ui/ui_features.cc
@@ -619,4 +619,5 @@ bool IsBookmarkTabGroupConversionEnabled() { @@ -748,4 +748,5 @@ bool IsNewTabAddsToActiveGroupEnabled() {
return base::FeatureList::IsEnabled(kBookmarkTabGroupConversion);
} }
#endif // !BUILDFLAG(IS_ANDROID)
+#include "cromite_flags/chrome_browser_ui_ui_features_cc.inc" +#include "cromite_flags/chrome_browser_ui_ui_features_cc.inc"
} // namespace features } // namespace features
@@ -1008,9 +1009,9 @@ diff --git a/chrome/browser/unexpire_flags.cc b/chrome/browser/unexpire_flags.cc
diff --git a/chrome/common/chrome_features.cc b/chrome/common/chrome_features.cc diff --git a/chrome/common/chrome_features.cc b/chrome/common/chrome_features.cc
--- a/chrome/common/chrome_features.cc --- a/chrome/common/chrome_features.cc
+++ b/chrome/common/chrome_features.cc +++ b/chrome/common/chrome_features.cc
@@ -1977,5 +1977,5 @@ BASE_FEATURE(kDisableShortcutsEnableDiy, @@ -1623,5 +1623,5 @@ BASE_FEATURE(DisableShortcutsEnableDiy, base::FEATURE_ENABLED_BY_DEFAULT);
BASE_FEATURE(kSilentPolicyAndDefaultAppUpdating, // happen silently without prompting an updating dialog.
"SilentPolicyAndDefaultAppUpdating", BASE_FEATURE(SilentPolicyAndDefaultAppUpdating,
base::FEATURE_DISABLED_BY_DEFAULT); base::FEATURE_DISABLED_BY_DEFAULT);
- -
+#include "cromite_flags/chrome_common_chrome_features_cc.inc" +#include "cromite_flags/chrome_common_chrome_features_cc.inc"
@@ -1160,7 +1161,7 @@ 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 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 --- a/components/content_settings/core/common/features.cc
+++ b/components/content_settings/core/common/features.cc +++ b/components/content_settings/core/common/features.cc
@@ -181,5 +181,6 @@ BASE_FEATURE(kForceAllowStorageAccess, @@ -176,5 +176,6 @@ BASE_FEATURE(kForceAllowStorageAccess,
"ForceAllowStorageAccess", "ForceAllowStorageAccess",
base::FEATURE_DISABLED_BY_DEFAULT); base::FEATURE_DISABLED_BY_DEFAULT);
@@ -1196,7 +1197,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 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 --- a/components/password_manager/core/browser/features/password_features.cc
+++ b/components/password_manager/core/browser/features/password_features.cc +++ b/components/password_manager/core/browser/features/password_features.cc
@@ -219,4 +219,5 @@ BASE_FEATURE(kRetrieveTrustedVaultKeyKeyboardAccessoryAction, @@ -225,4 +225,5 @@ BASE_FEATURE(kRetrieveTrustedVaultKeyKeyboardAccessoryAction,
base::FEATURE_DISABLED_BY_DEFAULT); base::FEATURE_DISABLED_BY_DEFAULT);
#endif // BUILDFLAG(IS_ANDROID) #endif // BUILDFLAG(IS_ANDROID)
@@ -1205,7 +1206,7 @@ diff --git a/components/password_manager/core/browser/features/password_features
diff --git a/components/permissions/features.cc b/components/permissions/features.cc diff --git a/components/permissions/features.cc b/components/permissions/features.cc
--- a/components/permissions/features.cc --- a/components/permissions/features.cc
+++ b/components/permissions/features.cc +++ b/components/permissions/features.cc
@@ -139,6 +139,8 @@ BASE_FEATURE(kOsAdditionalSecurityPermissionKillSwitch, @@ -137,6 +137,8 @@ BASE_FEATURE(kOsAdditionalSecurityPermissionKillSwitch,
"OsAdditionalSecurityPermissionKillSwitch", "OsAdditionalSecurityPermissionKillSwitch",
base::FEATURE_DISABLED_BY_DEFAULT); base::FEATURE_DISABLED_BY_DEFAULT);
#endif #endif
@@ -1638,7 +1639,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 diff --git a/content/common/features.cc b/content/common/features.cc
--- a/content/common/features.cc --- a/content/common/features.cc
+++ b/content/common/features.cc +++ b/content/common/features.cc
@@ -743,4 +743,5 @@ bool IsEnforceSameDocumentOriginInvariantsEnabled() { @@ -761,4 +761,5 @@ bool IsEnforceSameDocumentOriginInvariantsEnabled() {
blink::features::kTreatMhtmlInitialDocumentLoadsAsCrossDocument); blink::features::kTreatMhtmlInitialDocumentLoadsAsCrossDocument);
} }
@@ -1647,7 +1648,7 @@ 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 diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc
--- a/content/public/common/content_features.cc --- a/content/public/common/content_features.cc
+++ b/content/public/common/content_features.cc +++ b/content/public/common/content_features.cc
@@ -1676,4 +1676,5 @@ bool IsPushSubscriptionChangeEventEnabled() { @@ -1403,4 +1403,5 @@ bool IsPushSubscriptionChangeEventEnabled() {
features::kPushSubscriptionChangeEventOnResubscribe); features::kPushSubscriptionChangeEventOnResubscribe);
} }
@@ -1656,7 +1657,7 @@ 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 diff --git a/content/public/common/content_features.h b/content/public/common/content_features.h
--- a/content/public/common/content_features.h --- a/content/public/common/content_features.h
+++ b/content/public/common/content_features.h +++ b/content/public/common/content_features.h
@@ -400,6 +400,7 @@ CONTENT_EXPORT bool IsVideoCaptureServiceEnabledForOutOfProcess(); @@ -404,6 +404,7 @@ CONTENT_EXPORT bool IsVideoCaptureServiceEnabledForOutOfProcess();
CONTENT_EXPORT bool IsVideoCaptureServiceEnabledForBrowserProcess(); CONTENT_EXPORT bool IsVideoCaptureServiceEnabledForBrowserProcess();
CONTENT_EXPORT bool IsPushSubscriptionChangeEventEnabled(); CONTENT_EXPORT bool IsPushSubscriptionChangeEventEnabled();
@@ -2002,7 +2003,7 @@ new file mode 100755
diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
--- a/media/base/media_switches.cc --- a/media/base/media_switches.cc
+++ b/media/base/media_switches.cc +++ b/media/base/media_switches.cc
@@ -2008,5 +2008,5 @@ uint32_t GetPassthroughAudioFormats() { @@ -1727,5 +1727,5 @@ uint32_t GetPassthroughAudioFormats() {
return 0; return 0;
#endif // BUILDFLAG(ENABLE_PASSTHROUGH_AUDIO_CODECS) #endif // BUILDFLAG(ENABLE_PASSTHROUGH_AUDIO_CODECS)
} }
@@ -2012,7 +2013,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 diff --git a/media/base/media_switches.h b/media/base/media_switches.h
--- a/media/base/media_switches.h --- a/media/base/media_switches.h
+++ b/media/base/media_switches.h +++ b/media/base/media_switches.h
@@ -601,5 +601,5 @@ MEDIA_EXPORT bool IsOutOfProcessVideoDecodingEnabled(); @@ -603,5 +603,5 @@ MEDIA_EXPORT bool IsOutOfProcessVideoDecodingEnabled();
MEDIA_EXPORT uint32_t GetPassthroughAudioFormats(); MEDIA_EXPORT uint32_t GetPassthroughAudioFormats();
} // namespace media } // namespace media
@@ -2022,18 +2023,18 @@ 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 diff --git a/net/base/features.cc b/net/base/features.cc
--- a/net/base/features.cc --- a/net/base/features.cc
+++ b/net/base/features.cc +++ b/net/base/features.cc
@@ -909,4 +909,5 @@ BASE_FEATURE_PARAM(bool, @@ -804,4 +804,5 @@ BASE_FEATURE_PARAM(std::string,
"url_request_redirect_job", /*name=*/"wildcard_quic_hints",
false); /*default_value=*/"");
+#include "cromite_flags/net_base_features_cc.inc" +#include "cromite_flags/net_base_features_cc.inc"
} // namespace net::features } // namespace net::features
diff --git a/net/base/features.h b/net/base/features.h diff --git a/net/base/features.h b/net/base/features.h
--- a/net/base/features.h --- a/net/base/features.h
+++ b/net/base/features.h +++ b/net/base/features.h
@@ -896,6 +896,7 @@ NET_EXPORT BASE_DECLARE_FEATURE_PARAM(bool, kNetTaskSchedulerURLRequestJob); @@ -912,6 +912,7 @@ NET_EXPORT BASE_DECLARE_FEATURE_PARAM(std::string, kQuicHintHostPortPairs);
NET_EXPORT BASE_DECLARE_FEATURE_PARAM(bool, NET_EXPORT BASE_DECLARE_FEATURE_PARAM(std::string,
kNetTaskSchedulerURLRequestRedirectJob); kWildcardQuicHintHostPortPairs);
+#include "cromite_flags/net_base_features_h.inc" +#include "cromite_flags/net_base_features_h.inc"
} // namespace net::features } // namespace net::features
@@ -2042,7 +2043,7 @@ 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 diff --git a/services/network/public/cpp/features.cc b/services/network/public/cpp/features.cc
--- a/services/network/public/cpp/features.cc --- a/services/network/public/cpp/features.cc
+++ b/services/network/public/cpp/features.cc +++ b/services/network/public/cpp/features.cc
@@ -666,4 +666,5 @@ BASE_FEATURE_PARAM(bool, @@ -674,4 +674,5 @@ BASE_FEATURE_PARAM(bool,
"url_loader", "url_loader",
false); false);
@@ -2051,7 +2052,7 @@ diff --git a/services/network/public/cpp/features.cc b/services/network/public/c
diff --git a/services/network/public/cpp/features.h b/services/network/public/cpp/features.h diff --git a/services/network/public/cpp/features.h b/services/network/public/cpp/features.h
--- a/services/network/public/cpp/features.h --- a/services/network/public/cpp/features.h
+++ b/services/network/public/cpp/features.h +++ b/services/network/public/cpp/features.h
@@ -366,6 +366,7 @@ BASE_DECLARE_FEATURE_PARAM(bool, kNetworkServiceTaskSchedulerResourceScheduler); @@ -367,6 +367,7 @@ BASE_DECLARE_FEATURE_PARAM(bool, kNetworkServiceTaskSchedulerResourceScheduler);
COMPONENT_EXPORT(NETWORK_CPP_FLAGS_AND_SWITCHES) COMPONENT_EXPORT(NETWORK_CPP_FLAGS_AND_SWITCHES)
BASE_DECLARE_FEATURE_PARAM(bool, kNetworkServiceTaskSchedulerURLLoader); BASE_DECLARE_FEATURE_PARAM(bool, kNetworkServiceTaskSchedulerURLLoader);
@@ -2062,7 +2063,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 diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/features.cc
--- a/third_party/blink/common/features.cc --- a/third_party/blink/common/features.cc
+++ b/third_party/blink/common/features.cc +++ b/third_party/blink/common/features.cc
@@ -2927,4 +2927,5 @@ bool IsXrDevice() { @@ -2569,4 +2569,5 @@ bool IsXrDevice() {
// //
// DO NOT ADD NEW FEATURES HERE. // DO NOT ADD NEW FEATURES HERE.
@@ -2071,7 +2072,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 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 --- a/third_party/blink/public/common/features.h
+++ b/third_party/blink/public/common/features.h +++ b/third_party/blink/public/common/features.h
@@ -1912,6 +1912,7 @@ BLINK_COMMON_EXPORT bool IsXrDevice(); @@ -1908,6 +1908,7 @@ BLINK_COMMON_EXPORT bool IsXrDevice();
// //
// DO NOT ADD NEW FEATURES HERE. // DO NOT ADD NEW FEATURES HERE.
@@ -2082,18 +2083,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 diff --git a/ui/base/ui_base_features.cc b/ui/base/ui_base_features.cc
--- a/ui/base/ui_base_features.cc --- a/ui/base/ui_base_features.cc
+++ b/ui/base/ui_base_features.cc +++ b/ui/base/ui_base_features.cc
@@ -483,4 +483,5 @@ bool IsHandleIMESpanChangesOnUpdateCompositionEnabled() { @@ -492,4 +492,5 @@ BASE_FEATURE(kUseSystemDefaultAccentColors,
features::kHandleIMESpanChangesOnUpdateComposition); "UseSystemDefaultAccentColors",
} base::FEATURE_ENABLED_BY_DEFAULT);
+#include "cromite_flags/ui_base_features_cc.inc" +#include "cromite_flags/ui_base_features_cc.inc"
} // namespace features } // namespace features
diff --git a/ui/base/ui_base_features.h b/ui/base/ui_base_features.h diff --git a/ui/base/ui_base_features.h b/ui/base/ui_base_features.h
--- a/ui/base/ui_base_features.h --- a/ui/base/ui_base_features.h
+++ b/ui/base/ui_base_features.h +++ b/ui/base/ui_base_features.h
@@ -242,6 +242,7 @@ BASE_DECLARE_FEATURE(kHandleIMESpanChangesOnUpdateComposition); @@ -248,6 +248,7 @@ bool IsHandleIMESpanChangesOnUpdateCompositionEnabled();
COMPONENT_EXPORT(UI_BASE_FEATURES) COMPONENT_EXPORT(UI_BASE_FEATURES)
bool IsHandleIMESpanChangesOnUpdateCompositionEnabled(); BASE_DECLARE_FEATURE(kUseSystemDefaultAccentColors);
+#include "cromite_flags/ui_base_features_h.inc" +#include "cromite_flags/ui_base_features_h.inc"
} // namespace features } // namespace features
+11 -11
View File
@@ -73,15 +73,15 @@ diff --git a/chrome/android/java/res/xml/developer_preferences.xml b/chrome/andr
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java b/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java b/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java --- a/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java
@@ -139,6 +139,7 @@ import org.chromium.ui.base.PhotoPickerListener; @@ -144,6 +144,7 @@ import org.chromium.ui.base.SelectFileDialog;
import org.chromium.ui.base.SelectFileDialog;
import org.chromium.ui.base.WindowAndroid; import org.chromium.ui.base.WindowAndroid;
import org.chromium.ui.edge_to_edge.EdgeToEdgeStateProvider;
import org.chromium.url.GURL; import org.chromium.url.GURL;
+import org.chromium.chrome.browser.flags.cromite.sActAsWebView; +import org.chromium.chrome.browser.flags.cromite.sActAsWebView;
import java.io.File; import java.io.File;
import java.nio.charset.StandardCharsets; import java.nio.charset.StandardCharsets;
@@ -698,7 +699,10 @@ public class ProcessInitializationHandler { @@ -710,7 +711,10 @@ public class ProcessInitializationHandler {
tasks.add( tasks.add(
() -> { () -> {
@@ -96,7 +96,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessIni
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tracing/settings/DeveloperSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/tracing/settings/DeveloperSettings.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tracing/settings/DeveloperSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/tracing/settings/DeveloperSettings.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tracing/settings/DeveloperSettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tracing/settings/DeveloperSettings.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tracing/settings/DeveloperSettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tracing/settings/DeveloperSettings.java
@@ -37,7 +37,7 @@ public class DeveloperSettings extends ChromeBaseSettingsFragment implements Emb @@ -35,7 +35,7 @@ public class DeveloperSettings extends ChromeBaseSettingsFragment implements Emb
private final ObservableSupplier<String> mPageTitle = private final ObservableSupplier<String> mPageTitle =
new ObservableSupplierImpl<>(MSG_DEVELOPER_OPTIONS_TITLE); new ObservableSupplierImpl<>(MSG_DEVELOPER_OPTIONS_TITLE);
@@ -434,7 +434,7 @@ diff --git a/chrome/browser/ui/startup/bad_flags_prompt.cc b/chrome/browser/ui/s
diff --git a/chrome/common/BUILD.gn b/chrome/common/BUILD.gn diff --git a/chrome/common/BUILD.gn b/chrome/common/BUILD.gn
--- a/chrome/common/BUILD.gn --- a/chrome/common/BUILD.gn
+++ b/chrome/common/BUILD.gn +++ b/chrome/common/BUILD.gn
@@ -657,6 +657,7 @@ mojom("mojo_bindings") { @@ -662,6 +662,7 @@ mojom("mojo_bindings") {
sources = [ sources = [
"chrome_render_frame.mojom", "chrome_render_frame.mojom",
"google_accounts_private_api_extension.mojom", "google_accounts_private_api_extension.mojom",
@@ -457,7 +457,7 @@ new file mode 100644
diff --git a/chrome/renderer/BUILD.gn b/chrome/renderer/BUILD.gn diff --git a/chrome/renderer/BUILD.gn b/chrome/renderer/BUILD.gn
--- a/chrome/renderer/BUILD.gn --- a/chrome/renderer/BUILD.gn
+++ b/chrome/renderer/BUILD.gn +++ b/chrome/renderer/BUILD.gn
@@ -74,6 +74,8 @@ static_library("renderer") { @@ -80,6 +80,8 @@ static_library("renderer") {
"chrome_render_thread_observer.cc", "chrome_render_thread_observer.cc",
"chrome_render_thread_observer.h", "chrome_render_thread_observer.h",
"custom_menu_commands.h", "custom_menu_commands.h",
@@ -469,7 +469,7 @@ diff --git a/chrome/renderer/BUILD.gn b/chrome/renderer/BUILD.gn
diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer/chrome_content_renderer_client.cc diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer/chrome_content_renderer_client.cc
--- a/chrome/renderer/chrome_content_renderer_client.cc --- a/chrome/renderer/chrome_content_renderer_client.cc
+++ b/chrome/renderer/chrome_content_renderer_client.cc +++ b/chrome/renderer/chrome_content_renderer_client.cc
@@ -54,6 +54,7 @@ @@ -56,6 +56,7 @@
#include "chrome/renderer/chrome_render_frame_observer.h" #include "chrome/renderer/chrome_render_frame_observer.h"
#include "chrome/renderer/chrome_render_thread_observer.h" #include "chrome/renderer/chrome_render_thread_observer.h"
#include "chrome/renderer/controlled_frame/controlled_frame_extensions_renderer_api_provider.h" #include "chrome/renderer/controlled_frame/controlled_frame_extensions_renderer_api_provider.h"
@@ -477,7 +477,7 @@ diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer
#include "chrome/renderer/google_accounts_private_api_extension.h" #include "chrome/renderer/google_accounts_private_api_extension.h"
#include "chrome/renderer/loadtimes_extension_bindings.h" #include "chrome/renderer/loadtimes_extension_bindings.h"
#include "chrome/renderer/media/flash_embed_rewrite.h" #include "chrome/renderer/media/flash_embed_rewrite.h"
@@ -624,6 +625,7 @@ void ChromeContentRendererClient::RenderFrameCreated( @@ -645,6 +646,7 @@ void ChromeContentRendererClient::RenderFrameCreated(
TrustedVaultEncryptionKeysExtension::Create(render_frame); TrustedVaultEncryptionKeysExtension::Create(render_frame);
GoogleAccountsPrivateApiExtension::Create(render_frame); GoogleAccountsPrivateApiExtension::Create(render_frame);
@@ -851,7 +851,7 @@ diff --git a/content/browser/log_console_message.h b/content/browser/log_console
diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc 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 --- a/content/browser/renderer_host/render_frame_host_impl.cc
+++ b/content/browser/renderer_host/render_frame_host_impl.cc +++ b/content/browser/renderer_host/render_frame_host_impl.cc
@@ -315,6 +315,8 @@ @@ -319,6 +319,8 @@
#include "url/origin.h" #include "url/origin.h"
#include "url/url_constants.h" #include "url/url_constants.h"
@@ -860,7 +860,7 @@ diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/b
#if BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_ANDROID)
#include "content/browser/accessibility/browser_accessibility_manager_android.h" #include "content/browser/accessibility/browser_accessibility_manager_android.h"
#include "content/browser/android/content_url_loader_factory.h" #include "content/browser/android/content_url_loader_factory.h"
@@ -4755,7 +4757,8 @@ void RenderFrameHostImpl::DidAddMessageToConsole( @@ -4763,7 +4765,8 @@ void RenderFrameHostImpl::DidAddMessageToConsole(
if (delegate_->DidAddMessageToConsole(this, log_level, message, line_no, if (delegate_->DidAddMessageToConsole(this, log_level, message, line_no,
updated_source_id, updated_source_id,
untrusted_stack_trace)) { untrusted_stack_trace)) {
@@ -870,7 +870,7 @@ diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/b
} }
// Pass through log severity only on builtin components pages to limit console // Pass through log severity only on builtin components pages to limit console
@@ -4772,8 +4775,14 @@ void RenderFrameHostImpl::DidAddMessageToConsole( @@ -4780,8 +4783,14 @@ void RenderFrameHostImpl::DidAddMessageToConsole(
const bool is_off_the_record = const bool is_off_the_record =
GetSiteInstance()->GetBrowserContext()->IsOffTheRecord(); GetSiteInstance()->GetBrowserContext()->IsOffTheRecord();
@@ -88,7 +88,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDis
// Since configureIntentForResizableCustomTab() might change the componenet/class // Since configureIntentForResizableCustomTab() might change the componenet/class
// associated with the passed intent, it needs to be called after #setClassName(context, // associated with the passed intent, it needs to be called after #setClassName(context,
// CustomTabActivity.class.getName()); // CustomTabActivity.class.getName());
@@ -490,6 +500,17 @@ public class LaunchIntentDispatcher { @@ -489,6 +499,17 @@ public class LaunchIntentDispatcher {
if (Intent.ACTION_VIEW.equals(newIntent.getAction()) if (Intent.ACTION_VIEW.equals(newIntent.getAction())
&& !IntentHandler.wasIntentSenderChrome(newIntent)) { && !IntentHandler.wasIntentSenderChrome(newIntent)) {
@@ -109,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 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java
@@ -233,16 +233,16 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid @@ -236,16 +236,16 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid
// Extra whose value is an array of ints that is supplied to // Extra whose value is an array of ints that is supplied to
// SyntheticTrialRegistry::RegisterExternalExperiments(). // SyntheticTrialRegistry::RegisterExternalExperiments().
@@ -132,7 +132,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
/** /**
* Extra that, if set, makes the Custom Tab Activity's height to be x pixels, the Custom Tab * Extra that, if set, makes the Custom Tab Activity's height to be x pixels, the Custom Tab
@@ -682,7 +682,7 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid @@ -685,7 +685,7 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid
TrustedWebActivityIntentBuilder.EXTRA_SCREEN_ORIENTATION, TrustedWebActivityIntentBuilder.EXTRA_SCREEN_ORIENTATION,
ScreenOrientation.DEFAULT)); ScreenOrientation.DEFAULT));
@@ -141,7 +141,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
mBreakPointDp = getActivityBreakPointFromIntent(intent); mBreakPointDp = getActivityBreakPointFromIntent(intent);
mInitialActivityHeight = getInitialActivityHeightFromIntent(intent); mInitialActivityHeight = getInitialActivityHeightFromIntent(intent);
@@ -695,8 +695,8 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid @@ -698,8 +698,8 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid
intent, EXTRA_ACTIVITY_HEIGHT_RESIZE_BEHAVIOR, ACTIVITY_HEIGHT_DEFAULT); intent, EXTRA_ACTIVITY_HEIGHT_RESIZE_BEHAVIOR, ACTIVITY_HEIGHT_DEFAULT);
mIsPartialCustomTabFixedHeight = activityHeightResizeBehavior == ACTIVITY_HEIGHT_FIXED; mIsPartialCustomTabFixedHeight = activityHeightResizeBehavior == ACTIVITY_HEIGHT_FIXED;
@@ -152,7 +152,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
@BackgroundInteractBehavior @BackgroundInteractBehavior
int backgroundInteractBehavior = int backgroundInteractBehavior =
IntentUtils.safeGetIntExtra( IntentUtils.safeGetIntExtra(
@@ -1267,7 +1267,9 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid @@ -1270,7 +1270,9 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid
public @CustomTabProfileType int getCustomTabMode() { public @CustomTabProfileType int getCustomTabMode() {
return AlwaysIncognitoLinkInterceptor.isAlwaysIncognito() return AlwaysIncognitoLinkInterceptor.isAlwaysIncognito()
? CustomTabProfileType.INCOGNITO ? CustomTabProfileType.INCOGNITO
@@ -166,7 +166,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 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabsConnection.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabsConnection.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabsConnection.java
@@ -780,7 +780,7 @@ public class CustomTabsConnection { @@ -776,7 +776,7 @@ public class CustomTabsConnection {
ThreadUtils.assertOnUiThread(); ThreadUtils.assertOnUiThread();
if (extras == null) return; if (extras == null) return;
int[] experimentIds = int[] experimentIds =
@@ -175,7 +175,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
if (experimentIds == null) return; if (experimentIds == null) return;
// When ids are set through cct, they should not override existing ids. // When ids are set through cct, they should not override existing ids.
boolean override = false; boolean override = false;
@@ -996,6 +996,7 @@ public class CustomTabsConnection { @@ -992,6 +992,7 @@ public class CustomTabsConnection {
PostTask.postTask( PostTask.postTask(
TaskTraits.UI_DEFAULT, TaskTraits.UI_DEFAULT,
() -> { () -> {
@@ -206,7 +206,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Inco
return ChromeFeatureList.sCctIncognitoAvailableToThirdParty.isEnabled(); return ChromeFeatureList.sCctIncognitoAvailableToThirdParty.isEnabled();
} }
@@ -220,6 +226,10 @@ public class IncognitoCustomTabIntentDataProvider extends BrowserServicesIntentD @@ -221,6 +227,10 @@ public class IncognitoCustomTabIntentDataProvider extends BrowserServicesIntentD
} }
public static boolean isValidIncognitoIntent(Intent intent, boolean recordMetrics) { public static boolean isValidIncognitoIntent(Intent intent, boolean recordMetrics) {
@@ -217,7 +217,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Inco
if (!isIncognitoRequested(intent)) return false; if (!isIncognitoRequested(intent)) return false;
var session = SessionHolder.getSessionHolderFromIntent(intent); var session = SessionHolder.getSessionHolderFromIntent(intent);
if (isIntentFromThirdPartyAllowed() if (isIntentFromThirdPartyAllowed()
@@ -329,6 +339,10 @@ public class IncognitoCustomTabIntentDataProvider extends BrowserServicesIntentD @@ -330,6 +340,10 @@ public class IncognitoCustomTabIntentDataProvider extends BrowserServicesIntentD
@Override @Override
public @CustomTabProfileType int getCustomTabMode() { public @CustomTabProfileType int getCustomTabMode() {
@@ -231,7 +231,7 @@ 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 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 --- 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 +++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
@@ -10,6 +10,7 @@ import android.content.Context; @@ -11,6 +11,7 @@ import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.content.SharedPreferences; import android.content.SharedPreferences;
import android.graphics.drawable.Drawable; import android.graphics.drawable.Drawable;
@@ -255,7 +255,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
import androidx.preference.PreferenceCategory; import androidx.preference.PreferenceCategory;
import org.chromium.chrome.browser.contextualsearch.ContextualSearchManager; import org.chromium.chrome.browser.contextualsearch.ContextualSearchManager;
import org.chromium.base.shared_preferences.SharedPreferencesManager; import org.chromium.base.shared_preferences.SharedPreferencesManager;
@@ -152,6 +162,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment @@ -153,6 +163,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
startTag, endTag, new ChromeClickableSpan(context, onClickCallback)); startTag, endTag, new ChromeClickableSpan(context, onClickCallback));
} }
@@ -327,7 +327,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc 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 --- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc +++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -1093,7 +1093,7 @@ BASE_FEATURE(kMagicStackAndroid, @@ -1153,7 +1153,7 @@ BASE_FEATURE(kMagicStackAndroid,
// Enables an experimental feature which forces mayLaunchUrl to use a different // Enables an experimental feature which forces mayLaunchUrl to use a different
// storage partition. This may reduce performance. This should not be enabled by // storage partition. This may reduce performance. This should not be enabled by
// default. // default.
@@ -339,7 +339,7 @@ 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 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 --- 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 +++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
@@ -943,6 +943,8 @@ public abstract class ChromeFeatureList { @@ -991,6 +991,8 @@ public abstract class ChromeFeatureList {
MOST_VISITED_TILES_CUSTOMIZATION, MOST_VISITED_TILES_CUSTOMIZATION,
/* defaultValue= */ false, /* defaultValue= */ false,
/* defaultValueInTests= */ true); /* defaultValueInTests= */ true);
@@ -348,7 +348,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
public static final CachedFlag sMostVisitedTilesReselect = public static final CachedFlag sMostVisitedTilesReselect =
newCachedFlag(MOST_VISITED_TILES_RESELECT, false); newCachedFlag(MOST_VISITED_TILES_RESELECT, false);
public static final CachedFlag sMultiInstanceApplicationStatusCleanup = public static final CachedFlag sMultiInstanceApplicationStatusCleanup =
@@ -1165,6 +1167,7 @@ public abstract class ChromeFeatureList { @@ -1226,6 +1228,7 @@ public abstract class ChromeFeatureList {
sMiniOriginBar, sMiniOriginBar,
sMitigateLegacySearchEnginePromoOverlap, sMitigateLegacySearchEnginePromoOverlap,
sMostVisitedTilesCustomization, sMostVisitedTilesCustomization,
@@ -422,7 +422,7 @@ diff --git a/components/language/core/common/language_experiments.cc b/component
+++ b/components/language/core/common/language_experiments.cc +++ b/components/language/core/common/language_experiments.cc
@@ -26,4 +26,5 @@ BASE_FEATURE(kDisableGeoLanguageModel, @@ -26,4 +26,5 @@ BASE_FEATURE(kDisableGeoLanguageModel,
"DisableGeoLanguageModel", "DisableGeoLanguageModel",
base::FEATURE_DISABLED_BY_DEFAULT); base::FEATURE_ENABLED_BY_DEFAULT);
+SET_CROMITE_FEATURE_DISABLED(kCctAutoTranslate); +SET_CROMITE_FEATURE_DISABLED(kCctAutoTranslate);
} // namespace language } // namespace language
+8 -8
View File
@@ -17,7 +17,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/android/java/res/values/ids.xml b/chrome/android/java/res/values/ids.xml diff --git a/chrome/android/java/res/values/ids.xml b/chrome/android/java/res/values/ids.xml
--- a/chrome/android/java/res/values/ids.xml --- a/chrome/android/java/res/values/ids.xml
+++ b/chrome/android/java/res/values/ids.xml +++ b/chrome/android/java/res/values/ids.xml
@@ -119,6 +119,7 @@ found in the LICENSE file. @@ -121,6 +121,7 @@ found in the LICENSE file.
<item type="id" name="ntp_feed_header_menu_item_toggle_switch" /> <item type="id" name="ntp_feed_header_menu_item_toggle_switch" />
<!-- App Menu --> <!-- App Menu -->
@@ -28,16 +28,16 @@ diff --git a/chrome/android/java/res/values/ids.xml b/chrome/android/java/res/va
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
@@ -345,6 +345,8 @@ import java.util.Map; @@ -352,6 +352,8 @@ import java.util.Set;
import java.util.Set;
import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicBoolean;
import java.util.function.Supplier;
+import org.chromium.chrome.browser.lifetime.ApplicationLifetime; +import org.chromium.chrome.browser.lifetime.ApplicationLifetime;
+ +
/** /**
* This is the main activity for ChromeMobile when not running in document mode. All the tabs are * 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. * accessible via a chrome specific tab switching UI.
@@ -3692,6 +3694,8 @@ public class ChromeTabbedActivity extends ChromeActivity { @@ -3820,6 +3822,8 @@ public class ChromeTabbedActivity extends ChromeActivity {
.closeTabs( .closeTabs(
TabClosureParams.closeTab(currentTab).build(), /* allowDialog= */ true); TabClosureParams.closeTab(currentTab).build(), /* allowDialog= */ true);
RecordUserAction.record("MobileTabClosed"); RecordUserAction.record("MobileTabClosed");
@@ -49,7 +49,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 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
+++ b/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; @@ -61,6 +61,7 @@ import org.chromium.base.supplier.UnownedUserDataSupplier;
import org.chromium.chrome.R; import org.chromium.chrome.R;
import org.chromium.chrome.browser.ActivityTabProvider; import org.chromium.chrome.browser.ActivityTabProvider;
import org.chromium.chrome.browser.ActivityUtils; import org.chromium.chrome.browser.ActivityUtils;
@@ -57,7 +57,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.ChromeActivitySessionTracker;
import org.chromium.chrome.browser.ChromeApplicationImpl; import org.chromium.chrome.browser.ChromeApplicationImpl;
import org.chromium.chrome.browser.ChromeKeyboardVisibilityDelegate; import org.chromium.chrome.browser.ChromeKeyboardVisibilityDelegate;
@@ -2445,6 +2446,11 @@ public abstract class ChromeActivity extends AsyncInitializationActivity @@ -2481,6 +2482,11 @@ public abstract class ChromeActivity extends AsyncInitializationActivity
return true; return true;
} }
@@ -91,7 +91,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeLife
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 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 --- 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 +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java
@@ -384,6 +384,13 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm @@ -390,6 +390,13 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm
maybeAddDividerLine(modelList, R.id.menu_item_content_filter_divider_line_id); maybeAddDividerLine(modelList, R.id.menu_item_content_filter_divider_line_id);
modelList.add(buildContentFilterHelpCenterMenuItem(currentTab)); modelList.add(buildContentFilterHelpCenterMenuItem(currentTab));
} }
@@ -108,7 +108,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd 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 --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -4347,6 +4347,9 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>delete the Chrome d @@ -4311,6 +4311,9 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>delete the Chrome d
<message name="IDS_MENU_AUTO_DARK_WEB_CONTENTS" desc="Menu item in Chrome's overflow/options menu. When Chrome's browser UI is set to dark theme and this option is checked, sites will have a dark theme automatically applied as well. [CHAR_LIMIT=24]"> <message name="IDS_MENU_AUTO_DARK_WEB_CONTENTS" desc="Menu item in Chrome's overflow/options menu. When Chrome's browser UI is set to dark theme and this option is checked, sites will have a dark theme automatically applied as well. [CHAR_LIMIT=24]">
Dark theme Dark theme
</message> </message>
@@ -66,7 +66,7 @@ diff --git a/components/omnibox/browser/search_provider.cc b/components/omnibox/
#include "base/functional/callback.h" #include "base/functional/callback.h"
#include "base/i18n/break_iterator.h" #include "base/i18n/break_iterator.h"
#include "base/i18n/case_conversion.h" #include "base/i18n/case_conversion.h"
@@ -632,6 +633,9 @@ void SearchProvider::Run(bool query_is_private) { @@ -637,6 +638,9 @@ void SearchProvider::Run(bool query_is_private) {
} }
void SearchProvider::DoHistoryQuery(bool minimal_changes) { void SearchProvider::DoHistoryQuery(bool minimal_changes) {
@@ -79,16 +79,16 @@ diff --git a/components/omnibox/browser/search_provider.cc b/components/omnibox/
diff --git a/components/url_formatter/url_fixer.cc b/components/url_formatter/url_fixer.cc diff --git a/components/url_formatter/url_fixer.cc b/components/url_formatter/url_fixer.cc
--- a/components/url_formatter/url_fixer.cc --- a/components/url_formatter/url_fixer.cc
+++ b/components/url_formatter/url_fixer.cc +++ b/components/url_formatter/url_fixer.cc
@@ -15,6 +15,8 @@ @@ -11,6 +11,8 @@
#include <string_view>
#include "base/check_op.h" #include "base/check_op.h"
#include "base/compiler_specific.h"
+#include "base/containers/contains.h" +#include "base/containers/contains.h"
+#include "base/command_line.h" +#include "base/command_line.h"
#include "base/files/file_path.h" #include "base/files/file_path.h"
#include "base/files/file_util.h" #include "base/files/file_util.h"
#include "base/i18n/char_iterator.h" #include "base/i18n/char_iterator.h"
@@ -648,6 +650,8 @@ GURL FixupURLInternal(const std::string& text, @@ -644,6 +646,8 @@ GURL FixupURLInternal(const std::string& text,
FixupHost(trimmed, parts.host, parts.scheme.is_valid(), desired_tld, &url); FixupHost(trimmed, parts.host, parts.scheme.is_valid(), desired_tld, &url);
if (chrome_url && !parts.host.is_valid()) { if (chrome_url && !parts.host.is_valid()) {
@@ -45,7 +45,7 @@ new file mode 100644
diff --git a/net/BUILD.gn b/net/BUILD.gn diff --git a/net/BUILD.gn b/net/BUILD.gn
--- a/net/BUILD.gn --- a/net/BUILD.gn
+++ b/net/BUILD.gn +++ b/net/BUILD.gn
@@ -1157,6 +1157,7 @@ component("net") { @@ -1167,6 +1167,7 @@ component("net") {
":net_deps", ":net_deps",
"//components/miracle_parameter/common", "//components/miracle_parameter/common",
"//components/network_time/time_tracker", "//components/network_time/time_tracker",
@@ -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/log/net_log_with_source.h"
#include "net/socket/client_socket_factory.h" #include "net/socket/client_socket_factory.h"
#include "net/url_request/url_request_context.h" #include "net/url_request/url_request_context.h"
@@ -1497,6 +1498,13 @@ int HostResolverManager::StartIPv6ReachabilityCheck( @@ -1496,6 +1497,13 @@ int HostResolverManager::StartIPv6ReachabilityCheck(
return OK; return OK;
} }
@@ -49,7 +49,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/customtabs/CustomTabDelegateFactory.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabDelegateFactory.java 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabDelegateFactory.java
+++ b/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.externalnav.ExternalNavigationDelegateImpl;
import org.chromium.chrome.browser.flags.ActivityType; import org.chromium.chrome.browser.flags.ActivityType;
import org.chromium.chrome.browser.flags.ChromeFeatureList; 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.BrowserControlsManager;
import org.chromium.chrome.browser.fullscreen.FullscreenManager; import org.chromium.chrome.browser.fullscreen.FullscreenManager;
import org.chromium.chrome.browser.init.ChromeActivityNativeDelegate; import org.chromium.chrome.browser.init.ChromeActivityNativeDelegate;
@@ -128,6 +129,7 @@ public class CustomTabDelegateFactory implements TabDelegateFactory { @@ -152,6 +153,7 @@ public class CustomTabDelegateFactory implements TabDelegateFactory {
@Override @Override
public boolean shouldDisableAllExternalIntents() { public boolean shouldDisableAllExternalIntents() {
@@ -68,7 +68,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/externalnav/ExternalNavigationDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java --- a/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java
@@ -26,6 +26,7 @@ import org.chromium.base.supplier.Supplier; @@ -25,6 +25,7 @@ import org.chromium.base.PackageManagerUtils;
import org.chromium.build.annotations.NullMarked; import org.chromium.build.annotations.NullMarked;
import org.chromium.build.annotations.Nullable; import org.chromium.build.annotations.Nullable;
import org.chromium.chrome.browser.ChromeTabbedActivity2; import org.chromium.chrome.browser.ChromeTabbedActivity2;
@@ -76,12 +76,12 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/externalnav/Ext
import org.chromium.chrome.browser.IntentHandler; import org.chromium.chrome.browser.IntentHandler;
import org.chromium.chrome.browser.browserservices.intents.WebappConstants; import org.chromium.chrome.browser.browserservices.intents.WebappConstants;
import org.chromium.chrome.browser.document.ChromeLauncherActivity; import org.chromium.chrome.browser.document.ChromeLauncherActivity;
@@ -117,7 +118,8 @@ public class ExternalNavigationDelegateImpl implements ExternalNavigationDelegat @@ -119,7 +120,8 @@ public class ExternalNavigationDelegateImpl implements ExternalNavigationDelegat
@Override @Override
public boolean shouldDisableExternalIntentRequestsForUrl(GURL url) { public boolean shouldDisableExternalIntentRequestsForUrl(
ExternalNavigationParams params, Intent intent) {
- return false; - return false;
+ if ("tel".equals(url.getScheme())) return false; + if ("tel".equals(params.getUrl().getScheme())) return false;
+ return !sAllowExternalIntentRequests.getInstance().isEnabled(); + return !sAllowExternalIntentRequests.getInstance().isEnabled();
} }
@@ -193,7 +193,7 @@ diff --git a/components/external_intents/android/java/src/org/chromium/component
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 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 --- 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 +++ b/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalNavigationHandler.java
@@ -1558,6 +1558,12 @@ public class ExternalNavigationHandler { @@ -1556,6 +1556,12 @@ public class ExternalNavigationHandler {
|| ignoreBackForwardNav(params); || ignoreBackForwardNav(params);
} }
@@ -206,7 +206,7 @@ diff --git a/components/external_intents/android/java/src/org/chromium/component
private OverrideUrlLoadingResult shouldOverrideUrlLoadingInternal( private OverrideUrlLoadingResult shouldOverrideUrlLoadingInternal(
ExternalNavigationParams params, ExternalNavigationParams params,
Intent targetIntent, Intent targetIntent,
@@ -1626,6 +1632,21 @@ public class ExternalNavigationHandler { @@ -1624,6 +1630,21 @@ public class ExternalNavigationHandler {
return OverrideUrlLoadingResult.forNoOverride(); return OverrideUrlLoadingResult.forNoOverride();
} }
@@ -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 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 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -1011,6 +1011,10 @@ @@ -1045,6 +1045,10 @@
{ {
name: "CompositingDecisionAtAnimationPhaseBoundaries" name: "CompositingDecisionAtAnimationPhaseBoundaries"
}, },
@@ -14,16 +14,16 @@ 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 diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
--- a/build/config/compiler/BUILD.gn --- a/build/config/compiler/BUILD.gn
+++ b/build/config/compiler/BUILD.gn +++ b/build/config/compiler/BUILD.gn
@@ -700,7 +700,7 @@ config("compiler") { @@ -694,7 +694,7 @@ config("compiler") {
# TODO(crbug.com/376278218): This causes segfault on Linux ARM builds. # TODO(crbug.com/376278218): This causes segfault on Linux ARM builds.
# It also causes segfault on Linux s390x: # It also causes segfault on Linux s390x:
# https://github.com/llvm/llvm-project/issues/149511 # https://github.com/llvm/llvm-project/issues/149511
- if (is_linux && use_lld && !llvm_android_mainline && current_cpu != "arm" && - if (is_linux && use_lld && !llvm_android_mainline && current_cpu != "arm" &&
+ if (is_linux && !skip_clangd_unsupported_options && use_lld && !llvm_android_mainline && current_cpu != "arm" && + if (is_linux && !skip_clangd_unsupported_options && use_lld && !llvm_android_mainline && current_cpu != "arm" &&
current_cpu != "s390x" && current_cpu != "s390x") {
default_toolchain != "//build/toolchain/cros:target") {
cflags += [ "-Wa,--crel,--allow-experimental-crel" ] cflags += [ "-Wa,--crel,--allow-experimental-crel" ]
@@ -1813,7 +1813,7 @@ config("clang_revision") { }
@@ -1806,7 +1806,7 @@ config("clang_revision") {
# e.g. by setting in the the project's .gn file. # e.g. by setting in the the project's .gn file.
config("clang_warning_suppression") { config("clang_warning_suppression") {
# Some build configs use older versions of clang that don't support WSMs # Some build configs use older versions of clang that don't support WSMs
@@ -32,7 +32,7 @@ diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
from_build_root = from_build_root =
rebase_path(clang_warning_suppression_file, root_build_dir) rebase_path(clang_warning_suppression_file, root_build_dir)
inputs = [ clang_warning_suppression_file ] inputs = [ clang_warning_suppression_file ]
@@ -2146,7 +2146,6 @@ config("default_warnings") { @@ -2140,7 +2140,6 @@ config("default_warnings") {
# TODO(crbug.com/376641662): Fix and re-enable. # TODO(crbug.com/376641662): Fix and re-enable.
"-Wno-nontrivial-memcall", "-Wno-nontrivial-memcall",
] ]
@@ -40,7 +40,7 @@ diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
cflags_cc += [ cflags_cc += [
# TODO(crbug.com/328490295): Fix and re-enable for C flags. # TODO(crbug.com/328490295): Fix and re-enable for C flags.
"-Wenum-compare-conditional", "-Wenum-compare-conditional",
@@ -2211,6 +2210,15 @@ config("default_warnings") { @@ -2205,6 +2204,15 @@ config("default_warnings") {
] ]
} }
@@ -233,7 +233,7 @@ diff --git a/chrome/browser/permissions/one_time_permissions_tracker_factory.cc
diff --git a/chrome/browser/ui/views/permissions/chip/chip_controller.cc b/chrome/browser/ui/views/permissions/chip/chip_controller.cc diff --git a/chrome/browser/ui/views/permissions/chip/chip_controller.cc b/chrome/browser/ui/views/permissions/chip/chip_controller.cc
--- a/chrome/browser/ui/views/permissions/chip/chip_controller.cc --- a/chrome/browser/ui/views/permissions/chip/chip_controller.cc
+++ b/chrome/browser/ui/views/permissions/chip/chip_controller.cc +++ b/chrome/browser/ui/views/permissions/chip/chip_controller.cc
@@ -227,7 +227,7 @@ void ChipController::OnWidgetDestroyed(views::Widget* widget) { @@ -228,7 +228,7 @@ void ChipController::OnWidgetDestroyed(views::Widget* widget) {
active_chip_permission_request_manager_.value()->Accept(); active_chip_permission_request_manager_.value()->Accept();
break; break;
case permissions::PermissionAction::GRANTED_ONCE: case permissions::PermissionAction::GRANTED_ONCE:
@@ -269,7 +269,7 @@ diff --git a/chrome/browser/ui/views/permissions/permission_prompt_bubble_base_v
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 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 --- 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 +++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java
@@ -630,6 +630,11 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment @@ -634,6 +634,11 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
} }
@RequiresNonNull({"mSite"}) @RequiresNonNull({"mSite"})
@@ -281,7 +281,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
private void setUpClearDataPreference() { private void setUpClearDataPreference() {
ClearWebsiteStorage preference = findPreference(PREF_CLEAR_DATA); ClearWebsiteStorage preference = findPreference(PREF_CLEAR_DATA);
long usage = mSite.getTotalUsage(); long usage = mSite.getTotalUsage();
@@ -1316,6 +1321,10 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment @@ -1240,6 +1245,10 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
.getDefaultColor()); .getDefaultColor());
} }
} }
@@ -295,7 +295,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
diff --git a/components/browser_ui/site_settings/android/website_preference_bridge.cc b/components/browser_ui/site_settings/android/website_preference_bridge.cc diff --git a/components/browser_ui/site_settings/android/website_preference_bridge.cc b/components/browser_ui/site_settings/android/website_preference_bridge.cc
--- a/components/browser_ui/site_settings/android/website_preference_bridge.cc --- a/components/browser_ui/site_settings/android/website_preference_bridge.cc
+++ b/components/browser_ui/site_settings/android/website_preference_bridge.cc +++ b/components/browser_ui/site_settings/android/website_preference_bridge.cc
@@ -218,7 +218,7 @@ void GetOrigins(JNIEnv* env, @@ -223,7 +223,7 @@ void GetOrigins(JNIEnv* env,
seen_origins.push_back(origin); seen_origins.push_back(origin);
insertionFunc(env, static_cast<int>(content_type), list, insertionFunc(env, static_cast<int>(content_type), list,
ConvertOriginToJavaString(env, origin), jembedder, ConvertOriginToJavaString(env, origin), jembedder,
@@ -365,7 +365,7 @@ diff --git a/components/content_settings/core/browser/content_settings_utils.cc
bool CanTrackLastVisit(ContentSettingsType type) { bool CanTrackLastVisit(ContentSettingsType type) {
DCHECK(WebsiteSettingsRegistry::GetInstance()->Get(type)) << type; DCHECK(WebsiteSettingsRegistry::GetInstance()->Get(type)) << type;
@@ -261,10 +297,6 @@ const std::vector<ContentSettingsType>& GetTypesWithTemporaryGrants() { @@ -273,10 +309,6 @@ const std::vector<ContentSettingsType>& GetTypesWithTemporaryGrants() {
ContentSettingsType::CAPTURED_SURFACE_CONTROL, ContentSettingsType::CAPTURED_SURFACE_CONTROL,
#endif #endif
ContentSettingsType::KEYBOARD_LOCK, ContentSettingsType::KEYBOARD_LOCK,
@@ -376,7 +376,7 @@ diff --git a/components/content_settings/core/browser/content_settings_utils.cc
ContentSettingsType::HAND_TRACKING, ContentSettingsType::HAND_TRACKING,
ContentSettingsType::SMART_CARD_DATA, ContentSettingsType::SMART_CARD_DATA,
ContentSettingsType::AR, ContentSettingsType::AR,
@@ -280,10 +312,6 @@ const std::vector<ContentSettingsType>& GetTypesWithTemporaryGrantsInHcsm() { @@ -292,10 +324,6 @@ const std::vector<ContentSettingsType>& GetTypesWithTemporaryGrantsInHcsm() {
ContentSettingsType::CAPTURED_SURFACE_CONTROL, ContentSettingsType::CAPTURED_SURFACE_CONTROL,
#endif #endif
ContentSettingsType::KEYBOARD_LOCK, ContentSettingsType::KEYBOARD_LOCK,
@@ -425,34 +425,33 @@ 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 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 --- 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 +++ b/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoController.java
@@ -378,9 +378,9 @@ public class PageInfoController @@ -374,8 +374,8 @@ public class PageInfoController
String name, */
String nameMidSentence, @CalledByNative
int type, private void addPermissionSection(
- @ContentSettingValues int currentSettingValue) { - String name, String nameMidSentence, int type, boolean allowed) {
+ @ContentSettingValues int currentSettingValue, boolean is_user_session) { - mPermissionParamsListBuilder.addPermissionEntry(name, nameMidSentence, type, allowed);
mPermissionParamsListBuilder.addPermissionEntry( + String name, String nameMidSentence, int type, boolean allowed, boolean is_user_session) {
- name, nameMidSentence, type, currentSettingValue); + mPermissionParamsListBuilder.addPermissionEntry(name, nameMidSentence, type, allowed, is_user_session);
+ name, nameMidSentence, type, currentSettingValue, is_user_session);
} }
/** Update the permissions view based on the contents of mDisplayedPermissions. */ /** Update the permissions view based on the contents of mDisplayedPermissions. */
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 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 --- 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 +++ b/components/page_info/android/java/src/org/chromium/components/page_info/PermissionParamsListBuilder.java
@@ -48,8 +48,9 @@ public class PermissionParamsListBuilder { @@ -46,8 +46,9 @@ public class PermissionParamsListBuilder {
mEntries = new ArrayList<>();
} }
public void addPermissionEntry( - public void addPermissionEntry(String name, String nameMidSentence, int type, boolean allowed) {
- String name, String nameMidSentence, int type, @ContentSettingValues int value) { - mEntries.add(new PageInfoPermissionEntry(name, nameMidSentence, type, allowed));
- mEntries.add(new PageInfoPermissionEntry(name, nameMidSentence, type, value)); + public void addPermissionEntry(String name, String nameMidSentence, int type, boolean allowed,
+ String name, String nameMidSentence, int type, @ContentSettingValues int value,
+ boolean is_user_session) { + boolean is_user_session) {
+ mEntries.add(new PageInfoPermissionEntry(name, nameMidSentence, type, value, is_user_session)); + mEntries.add(new PageInfoPermissionEntry(name, nameMidSentence, type, allowed, is_user_session));
} }
public void clearPermissionEntries() { public void clearPermissionEntries() {
@@ -85,6 +86,10 @@ public class PermissionParamsListBuilder { @@ -84,6 +85,10 @@ public class PermissionParamsListBuilder {
} else { } else {
warningTextResource = R.string.page_info_android_permission_blocked; warningTextResource = R.string.page_info_android_permission_blocked;
} }
@@ -461,21 +460,20 @@ diff --git a/components/page_info/android/java/src/org/chromium/components/page_
+ R.string.page_info_android_permission_session_permission; + R.string.page_info_android_permission_session_permission;
+ } + }
} }
} else { }
assert permission.setting == ContentSettingValues.ASK
@@ -121,13 +126,15 @@ public class PermissionParamsListBuilder { @@ -112,12 +117,14 @@ public class PermissionParamsListBuilder {
public final String nameMidSentence; public final String nameMidSentence;
public final int type; public final int type;
public final @ContentSettingValues int setting; public final boolean allowed;
+ public final boolean is_user_session; + public final boolean is_user_session;
PageInfoPermissionEntry( - PageInfoPermissionEntry(String name, String nameMidSentence, int type, boolean allowed) {
- String name, String nameMidSentence, int type, @ContentSettingValues int setting) { + PageInfoPermissionEntry(String name, String nameMidSentence, int type, boolean allowed, boolean is_user_session) {
+ String name, String nameMidSentence, int type, @ContentSettingValues int setting, boolean is_user_session) {
this.name = name; this.name = name;
this.nameMidSentence = nameMidSentence; this.nameMidSentence = nameMidSentence;
this.type = type; this.type = type;
this.setting = setting; this.allowed = allowed;
+ this.is_user_session = is_user_session; + this.is_user_session = is_user_session;
} }
@@ -483,35 +481,35 @@ diff --git a/components/page_info/android/java/src/org/chromium/components/page_
diff --git a/components/page_info/android/page_info_controller_android.cc b/components/page_info/android/page_info_controller_android.cc diff --git a/components/page_info/android/page_info_controller_android.cc b/components/page_info/android/page_info_controller_android.cc
--- a/components/page_info/android/page_info_controller_android.cc --- a/components/page_info/android/page_info_controller_android.cc
+++ b/components/page_info/android/page_info_controller_android.cc +++ b/components/page_info/android/page_info_controller_android.cc
@@ -186,6 +186,8 @@ void PageInfoControllerAndroid::SetPermissionInfo( @@ -199,6 +199,8 @@ void PageInfoControllerAndroid::SetPermissionInfo(
std::map<ContentSettingsType, ContentSetting> std::map<ContentSettingsType, /*allowed*/ bool>
user_specified_settings_to_display; user_specified_settings_to_display;
+ std::map<ContentSettingsType, bool> + std::map<ContentSettingsType, bool>
+ user_specified_settings_is_user_session; + user_specified_settings_is_user_session;
for (const auto& permission : permission_info_list) { for (const auto& permission : permission_info_list) {
if (base::Contains(permissions_to_display, permission.type)) { if (base::Contains(permissions_to_display, permission.type)) {
@@ -194,6 +196,8 @@ void PageInfoControllerAndroid::SetPermissionInfo( @@ -211,6 +213,8 @@ void PageInfoControllerAndroid::SetPermissionInfo(
if (setting_to_display) {
user_specified_settings_to_display[permission.type] = user_specified_settings_to_display[permission.type] =
*setting_to_display; info->delegate().IsAnyPermissionAllowed(*setting_to_display);
+ user_specified_settings_is_user_session[permission.type] = + user_specified_settings_is_user_session[permission.type] =
+ permission.is_user_session; + permission.is_user_session;
} }
} }
} }
@@ -210,7 +214,8 @@ void PageInfoControllerAndroid::SetPermissionInfo( @@ -227,7 +231,8 @@ void PageInfoControllerAndroid::SetPermissionInfo(
ConvertUTF16ToJavaString(env, setting_title), ConvertUTF16ToJavaString(env, setting_title),
ConvertUTF16ToJavaString(env, setting_title_mid_sentence), ConvertUTF16ToJavaString(env, setting_title_mid_sentence),
static_cast<jint>(permission), static_cast<jint>(permission),
- static_cast<jint>(user_specified_settings_to_display[permission])); - user_specified_settings_to_display[permission]);
+ static_cast<jint>(user_specified_settings_to_display[permission]), + user_specified_settings_to_display[permission],
+ user_specified_settings_is_user_session[permission]); + user_specified_settings_is_user_session[permission]);
} }
} }
@@ -223,7 +228,8 @@ void PageInfoControllerAndroid::SetPermissionInfo( @@ -240,7 +245,8 @@ void PageInfoControllerAndroid::SetPermissionInfo(
env, controller_jobject_, ConvertUTF16ToJavaString(env, object_title), env, controller_jobject_, ConvertUTF16ToJavaString(env, object_title),
ConvertUTF16ToJavaString(env, object_title), ConvertUTF16ToJavaString(env, object_title),
static_cast<jint>(chosen_object->ui_info->content_settings_type), static_cast<jint>(chosen_object->ui_info->content_settings_type),
@@ -524,15 +522,15 @@ 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 diff --git a/components/page_info/page_info.cc b/components/page_info/page_info.cc
--- a/components/page_info/page_info.cc --- a/components/page_info/page_info.cc
+++ b/components/page_info/page_info.cc +++ b/components/page_info/page_info.cc
@@ -1256,6 +1256,8 @@ void PageInfo::PopulatePermissionInfo(PermissionInfo& permission_info, @@ -1293,6 +1293,8 @@ void PageInfo::PopulatePermissionInfo(PermissionInfo& permission_info,
permission_info.is_one_time = permission_info.is_one_time =
(info.metadata.session_model() == (info.metadata.session_model() ==
content_settings::mojom::SessionModel::ONE_TIME); content_settings::mojom::SessionModel::ONE_TIME);
+ permission_info.is_user_session = + permission_info.is_user_session =
+ (info.metadata.session_model() == content_settings::mojom::SessionModel::USER_SESSION); + (info.metadata.session_model() == content_settings::mojom::SessionModel::USER_SESSION);
auto* page_specific_content_settings = GetPageSpecificContentSettings(); auto* setting_info =
if (page_specific_content_settings && setting == CONTENT_SETTING_ALLOW) { content_settings::PermissionSettingsRegistry::GetInstance()->Get(
diff --git a/components/page_info/page_info.h b/components/page_info/page_info.h diff --git a/components/page_info/page_info.h b/components/page_info/page_info.h
--- a/components/page_info/page_info.h --- a/components/page_info/page_info.h
+++ b/components/page_info/page_info.h +++ b/components/page_info/page_info.h
@@ -962,7 +960,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
diff --git a/components/permissions/embedded_permission_prompt_flow_model.cc b/components/permissions/embedded_permission_prompt_flow_model.cc diff --git a/components/permissions/embedded_permission_prompt_flow_model.cc b/components/permissions/embedded_permission_prompt_flow_model.cc
--- a/components/permissions/embedded_permission_prompt_flow_model.cc --- a/components/permissions/embedded_permission_prompt_flow_model.cc
+++ b/components/permissions/embedded_permission_prompt_flow_model.cc +++ b/components/permissions/embedded_permission_prompt_flow_model.cc
@@ -295,7 +295,7 @@ void EmbeddedPermissionPromptFlowModel::SetDelegateAction( @@ -294,7 +294,7 @@ void EmbeddedPermissionPromptFlowModel::SetDelegateAction(
delegate_->Accept(); delegate_->Accept();
break; break;
case DelegateAction::kAllowThisTime: case DelegateAction::kAllowThisTime:
@@ -974,7 +972,7 @@ 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 diff --git a/components/permissions/permission_context_base.cc b/components/permissions/permission_context_base.cc
--- a/components/permissions/permission_context_base.cc --- a/components/permissions/permission_context_base.cc
+++ b/components/permissions/permission_context_base.cc +++ b/components/permissions/permission_context_base.cc
@@ -260,6 +260,17 @@ PermissionContextBase::CreatePermissionRequest( @@ -267,6 +267,17 @@ PermissionContextBase::CreatePermissionRequest(
std::move(request_finished_callback), UsesAutomaticEmbargo()); std::move(request_finished_callback), UsesAutomaticEmbargo());
} }
@@ -992,7 +990,7 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm
bool PermissionContextBase::UsesAutomaticEmbargo() const { bool PermissionContextBase::UsesAutomaticEmbargo() const {
return true; return true;
} }
@@ -551,7 +562,8 @@ void PermissionContextBase::DecidePermission( @@ -571,7 +582,8 @@ void PermissionContextBase::DecidePermission(
void PermissionContextBase::PermissionDecided( void PermissionContextBase::PermissionDecided(
PermissionDecision decision, PermissionDecision decision,
bool is_final_decision, bool is_final_decision,
@@ -1002,7 +1000,7 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm
UserMadePermissionDecision(request_data.id, request_data.requesting_origin, UserMadePermissionDecision(request_data.id, request_data.requesting_origin,
request_data.embedding_origin, decision); request_data.embedding_origin, decision);
@@ -564,11 +576,12 @@ void PermissionContextBase::PermissionDecided( @@ -584,11 +596,12 @@ void PermissionContextBase::PermissionDecided(
// missing if a permission prompt was preignored and we already notified an // missing if a permission prompt was preignored and we already notified an
// origin about it. // origin about it.
if (request->second.second) { if (request->second.second) {
@@ -1019,7 +1017,7 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm
} }
} }
@@ -653,6 +666,30 @@ void PermissionContextBase::NotifyPermissionSet( @@ -673,6 +686,30 @@ void PermissionContextBase::NotifyPermissionSet(
bool persist, bool persist,
PermissionDecision decision, PermissionDecision decision,
bool is_final_decision) { bool is_final_decision) {
@@ -1050,18 +1048,18 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm
DCHECK_CURRENTLY_ON(content::BrowserThread::UI); DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
// Note that rfh may be null, see crbug.com/426909787. // Note that rfh may be null, see crbug.com/426909787.
@@ -668,8 +705,8 @@ void PermissionContextBase::NotifyPermissionSet( @@ -688,8 +725,8 @@ void PermissionContextBase::NotifyPermissionSet(
if (persist) { if (persist) {
// Clone new value, because we need it again for the callback. // Clone new value, because we need it again for the callback.
- UpdateSetting(request_data, std::move(new_value), - UpdateSetting(request_data, new_value,
- decision == PermissionDecision::kAllowThisTime); - decision == PermissionDecision::kAllowThisTime);
+ UpdateSettingImpl(request_data, std::move(new_value), + UpdateSettingImpl(request_data, new_value,
+ decision == PermissionDecision::kAllowThisTime, use_lifetime_option, lifetime_option); + decision == PermissionDecision::kAllowThisTime, use_lifetime_option, lifetime_option);
} }
if (is_final_decision) { if (is_final_decision) {
@@ -706,6 +743,17 @@ void PermissionContextBase::UpdateSetting( @@ -727,6 +764,17 @@ void PermissionContextBase::UpdateSetting(
const PermissionRequestData& request_data, const PermissionRequestData& request_data,
PermissionSetting setting, PermissionSetting setting,
bool is_one_time) { bool is_one_time) {
@@ -1079,15 +1077,15 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm
DCHECK_EQ(request_data.requesting_origin, DCHECK_EQ(request_data.requesting_origin,
request_data.requesting_origin.DeprecatedGetOriginAsURL()); request_data.requesting_origin.DeprecatedGetOriginAsURL());
DCHECK_EQ(request_data.embedding_origin, DCHECK_EQ(request_data.embedding_origin,
@@ -715,6 +763,8 @@ void PermissionContextBase::UpdateSetting( @@ -736,6 +784,8 @@ void PermissionContextBase::UpdateSetting(
constraints.set_session_model( constraints.set_session_model(
is_one_time ? content_settings::mojom::SessionModel::ONE_TIME is_one_time ? content_settings::mojom::SessionModel::ONE_TIME
: content_settings::mojom::SessionModel::DURABLE); : content_settings::mojom::SessionModel::DURABLE);
+ if (use_lifetime_option) + if (use_lifetime_option)
+ constraints = content_settings::GetConstraintSessionExpiration(lifetime_option); + constraints = content_settings::GetConstraintSessionExpiration(lifetime_option);
// The Permissions module in Safety check will revoke permissions after // The unused permissions module in Safety check will revoke unused site
// a finite amount of time if the permission can be revoked. // permissions after a finite amount of time if the permission can be revoked.
diff --git a/components/permissions/permission_context_base.h b/components/permissions/permission_context_base.h diff --git a/components/permissions/permission_context_base.h b/components/permissions/permission_context_base.h
--- a/components/permissions/permission_context_base.h --- a/components/permissions/permission_context_base.h
+++ b/components/permissions/permission_context_base.h +++ b/components/permissions/permission_context_base.h
@@ -1276,7 +1274,7 @@ diff --git a/components/permissions/permission_request.h b/components/permission
diff --git a/components/permissions/permission_request_manager.cc b/components/permissions/permission_request_manager.cc diff --git a/components/permissions/permission_request_manager.cc b/components/permissions/permission_request_manager.cc
--- a/components/permissions/permission_request_manager.cc --- a/components/permissions/permission_request_manager.cc
+++ b/components/permissions/permission_request_manager.cc +++ b/components/permissions/permission_request_manager.cc
@@ -198,7 +198,7 @@ void PermissionRequestManager::AddRequest( @@ -201,7 +201,7 @@ void PermissionRequestManager::AddRequest(
if (base::CommandLine::ForCurrentProcess()->HasSwitch( if (base::CommandLine::ForCurrentProcess()->HasSwitch(
switches::kDenyPermissionPrompts)) { switches::kDenyPermissionPrompts)) {
@@ -1285,7 +1283,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
return; return;
} }
@@ -267,7 +267,7 @@ void PermissionRequestManager::AddRequest( @@ -270,7 +270,7 @@ void PermissionRequestManager::AddRequest(
if (should_auto_approve_request) { if (should_auto_approve_request) {
if (should_auto_approve_request == PermissionAction::GRANTED) { if (should_auto_approve_request == PermissionAction::GRANTED) {
@@ -1294,7 +1292,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
} }
return; return;
} }
@@ -626,7 +626,8 @@ void PermissionRequestManager::Accept() { @@ -597,7 +597,8 @@ void PermissionRequestManager::Accept() {
(*requests_iter)->request_type(), (*requests_iter)->request_type(),
PermissionAction::GRANTED); PermissionAction::GRANTED);
PermissionGrantedIncludingDuplicates(requests_iter->get(), PermissionGrantedIncludingDuplicates(requests_iter->get(),
@@ -1304,7 +1302,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
#if !BUILDFLAG(IS_ANDROID) #if !BUILDFLAG(IS_ANDROID)
std::optional<ContentSettingsType> content_settings_type = std::optional<ContentSettingsType> content_settings_type =
@@ -644,7 +645,7 @@ void PermissionRequestManager::Accept() { @@ -615,7 +616,7 @@ void PermissionRequestManager::Accept() {
CurrentRequestsDecided(PermissionAction::GRANTED); CurrentRequestsDecided(PermissionAction::GRANTED);
} }
@@ -1313,7 +1311,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
if (ignore_callbacks_from_prompt_) { if (ignore_callbacks_from_prompt_) {
return; return;
} }
@@ -658,7 +659,8 @@ void PermissionRequestManager::AcceptThisTime() { @@ -629,7 +630,8 @@ void PermissionRequestManager::AcceptThisTime() {
(*requests_iter)->request_type(), (*requests_iter)->request_type(),
PermissionAction::GRANTED_ONCE); PermissionAction::GRANTED_ONCE);
PermissionGrantedIncludingDuplicates(requests_iter->get(), PermissionGrantedIncludingDuplicates(requests_iter->get(),
@@ -1323,7 +1321,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
} }
NotifyRequestDecided(PermissionAction::GRANTED_ONCE); NotifyRequestDecided(PermissionAction::GRANTED_ONCE);
@@ -666,6 +668,15 @@ void PermissionRequestManager::AcceptThisTime() { @@ -637,6 +639,15 @@ void PermissionRequestManager::AcceptThisTime() {
} }
void PermissionRequestManager::Deny() { void PermissionRequestManager::Deny() {
@@ -1339,7 +1337,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
if (ignore_callbacks_from_prompt_) { if (ignore_callbacks_from_prompt_) {
return; return;
} }
@@ -688,7 +699,7 @@ void PermissionRequestManager::Deny() { @@ -659,7 +670,7 @@ void PermissionRequestManager::Deny() {
StorePermissionActionForUMA((*requests_iter)->requesting_origin(), StorePermissionActionForUMA((*requests_iter)->requesting_origin(),
(*requests_iter)->request_type(), (*requests_iter)->request_type(),
PermissionAction::DENIED); PermissionAction::DENIED);
@@ -1348,7 +1346,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
} }
NotifyRequestDecided(PermissionAction::DENIED); NotifyRequestDecided(PermissionAction::DENIED);
@@ -1300,32 +1311,32 @@ PermissionRequestManager::VisitDuplicateRequests( @@ -1283,32 +1294,32 @@ PermissionRequestManager::VisitDuplicateRequests(
void PermissionRequestManager::PermissionGrantedIncludingDuplicates( void PermissionRequestManager::PermissionGrantedIncludingDuplicates(
PermissionRequest* request, PermissionRequest* request,
@@ -1391,7 +1389,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
request); request);
} }
@@ -1596,7 +1607,7 @@ void PermissionRequestManager::DoAutoResponseForTesting() { @@ -1578,7 +1589,7 @@ void PermissionRequestManager::DoAutoResponseForTesting() {
} }
switch (auto_response_for_test_) { switch (auto_response_for_test_) {
case ACCEPT_ONCE: case ACCEPT_ONCE:
@@ -1403,7 +1401,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
diff --git a/components/permissions/permission_request_manager.h b/components/permissions/permission_request_manager.h diff --git a/components/permissions/permission_request_manager.h b/components/permissions/permission_request_manager.h
--- a/components/permissions/permission_request_manager.h --- a/components/permissions/permission_request_manager.h
+++ b/components/permissions/permission_request_manager.h +++ b/components/permissions/permission_request_manager.h
@@ -166,8 +166,10 @@ class PermissionRequestManager @@ -168,8 +168,10 @@ class PermissionRequestManager
GURL GetRequestingOrigin() const override; GURL GetRequestingOrigin() const override;
GURL GetEmbeddingOrigin() const override; GURL GetEmbeddingOrigin() const override;
void Accept() override; void Accept() override;
@@ -1415,7 +1413,7 @@ diff --git a/components/permissions/permission_request_manager.h b/components/pe
void Dismiss() override; void Dismiss() override;
void Ignore() override; void Ignore() override;
void FinalizeCurrentRequests() override; void FinalizeCurrentRequests() override;
@@ -413,9 +415,12 @@ class PermissionRequestManager @@ -419,9 +421,12 @@ class PermissionRequestManager
// Calls PermissionGranted on a request and all its duplicates. // Calls PermissionGranted on a request and all its duplicates.
void PermissionGrantedIncludingDuplicates(PermissionRequest* request, void PermissionGrantedIncludingDuplicates(PermissionRequest* request,
@@ -16,6 +16,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../dialogs/DownloadLocationCustomView.java | 4 +- .../dialogs/DownloadLocationCustomView.java | 4 +-
.../strings/android_chrome_strings.grd | 3 ++ .../strings/android_chrome_strings.grd | 3 ++
.../bookmark_ui_operations_helper.cc | 2 + .../bookmark_ui_operations_helper.cc | 2 +
.../bookmark_bar_page_handler.cc | 2 +
components/bookmark_bar_strings.grdp | 6 +++ components/bookmark_bar_strings.grdp | 6 +++
.../bookmarks/browser/bookmark_codec.cc | 20 +++++++-- .../bookmarks/browser/bookmark_codec.cc | 20 +++++++--
components/bookmarks/browser/bookmark_codec.h | 7 ++- components/bookmarks/browser/bookmark_codec.h | 7 ++-
@@ -30,12 +31,12 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
components/bookmarks/browser/bookmark_uuids.h | 1 + components/bookmarks/browser/bookmark_uuids.h | 1 +
components/bookmarks/browser/model_loader.cc | 9 +++- components/bookmarks/browser/model_loader.cc | 9 +++-
.../bookmark_specifics_conversions.cc | 1 + .../bookmark_specifics_conversions.cc | 1 +
26 files changed, 255 insertions(+), 14 deletions(-) 27 files changed, 257 insertions(+), 14 deletions(-)
diff --git a/chrome/android/java/res/values/ids.xml b/chrome/android/java/res/values/ids.xml diff --git a/chrome/android/java/res/values/ids.xml b/chrome/android/java/res/values/ids.xml
--- a/chrome/android/java/res/values/ids.xml --- a/chrome/android/java/res/values/ids.xml
+++ b/chrome/android/java/res/values/ids.xml +++ b/chrome/android/java/res/values/ids.xml
@@ -180,6 +180,7 @@ found in the LICENSE file. @@ -187,6 +187,7 @@ found in the LICENSE file.
<item type="id" name="menu_select_tabs" /> <item type="id" name="menu_select_tabs" />
<item type="id" name="menu_item_content_filter_divider_line_id" /> <item type="id" name="menu_item_content_filter_divider_line_id" />
<item type="id" name="menu_item_content_filter_help_center_id" /> <item type="id" name="menu_item_content_filter_help_center_id" />
@@ -46,7 +47,7 @@ diff --git a/chrome/android/java/res/values/ids.xml b/chrome/android/java/res/va
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
@@ -103,6 +103,7 @@ import org.chromium.chrome.browser.bookmarks.BookmarkPane; @@ -102,6 +102,7 @@ import org.chromium.chrome.browser.bookmarks.BookmarkPane;
import org.chromium.chrome.browser.bookmarks.BookmarkUtils; import org.chromium.chrome.browser.bookmarks.BookmarkUtils;
import org.chromium.chrome.browser.browserservices.intents.WebappConstants; import org.chromium.chrome.browser.browserservices.intents.WebappConstants;
import org.chromium.chrome.browser.compositor.CompositorViewHolder; import org.chromium.chrome.browser.compositor.CompositorViewHolder;
@@ -54,7 +55,7 @@ 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.Layout;
import org.chromium.chrome.browser.compositor.layouts.LayoutManagerChrome; import org.chromium.chrome.browser.compositor.layouts.LayoutManagerChrome;
import org.chromium.chrome.browser.compositor.layouts.LayoutManagerChromePhone; import org.chromium.chrome.browser.compositor.layouts.LayoutManagerChromePhone;
@@ -287,6 +288,9 @@ import org.chromium.chrome.browser.ui.browser_window.ChromeAndroidTaskTrackerFac @@ -292,6 +293,9 @@ import org.chromium.chrome.browser.ui.browser_window.ChromeAndroidTaskTrackerFac
import org.chromium.chrome.browser.ui.desktop_windowing.AppHeaderUtils; 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.edge_to_edge.EdgeToEdgeUtils;
import org.chromium.chrome.browser.ui.extensions.windowing.ExtensionWindowControllerBridgeFactory; import org.chromium.chrome.browser.ui.extensions.windowing.ExtensionWindowControllerBridgeFactory;
@@ -64,25 +65,25 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
import org.chromium.chrome.browser.ui.searchactivityutils.SearchActivityClient; import org.chromium.chrome.browser.ui.searchactivityutils.SearchActivityClient;
import org.chromium.chrome.browser.ui.searchactivityutils.SearchActivityExtras.IntentOrigin; import org.chromium.chrome.browser.ui.searchactivityutils.SearchActivityExtras.IntentOrigin;
import org.chromium.chrome.browser.ui.signin.BottomSheetSigninAndHistorySyncConfig; import org.chromium.chrome.browser.ui.signin.BottomSheetSigninAndHistorySyncConfig;
@@ -298,6 +302,8 @@ import org.chromium.chrome.browser.usage_stats.UsageStatsService; @@ -303,6 +307,8 @@ import org.chromium.chrome.browser.usage_stats.UsageStatsService;
import org.chromium.chrome.browser.util.ChromeAccessibilityUtil; import org.chromium.chrome.browser.util.ChromeAccessibilityUtil;
import org.chromium.chrome.browser.xr.scenecore.XrSceneCoreSessionInitializerImpl; import org.chromium.chrome.browser.xr.scenecore.XrSceneCoreSessionInitializerImpl;
import org.chromium.chrome.browser.xr.scenecore.XrSceneCoreSessionManagerImpl; import org.chromium.chrome.browser.xr.scenecore.XrSceneCoreSessionManagerImpl;
+import org.chromium.components.bookmarks.BookmarkId; +import org.chromium.components.bookmarks.BookmarkId;
+import org.chromium.components.bookmarks.BookmarkItem; +import org.chromium.components.bookmarks.BookmarkItem;
import org.chromium.components.browser_ui.bottomsheet.BottomSheetController; import org.chromium.components.browser_ui.bottomsheet.BottomSheetController;
import org.chromium.components.browser_ui.edge_to_edge.SystemBarColorHelper; import org.chromium.components.browser_ui.util.BrowserControlsVisibilityDelegate;
import org.chromium.components.browser_ui.edge_to_edge.TabbedSystemBarColorHelper; import org.chromium.components.browser_ui.util.ComposedBrowserControlsVisibilityDelegate;
@@ -3724,6 +3730,8 @@ public class ChromeTabbedActivity extends ChromeActivity { @@ -3848,6 +3854,8 @@ public class ChromeTabbedActivity extends ChromeActivity {
getTabModelSelectorSupplier().get(), CloseAllTabsDialog.show(
closeAllTabsRunnable); this, getModalDialogManagerSupplier(), tabModelSelector, closeAllTabsRunnable);
RecordUserAction.record("MobileMenuCloseAllTabs"); RecordUserAction.record("MobileMenuCloseAllTabs");
+ } else if (id == R.id.bookmark_all_tabs_menu_id) { + } else if (id == R.id.bookmark_all_tabs_menu_id) {
+ bookmarkAllTabs(); + bookmarkAllTabs();
} else if (id == R.id.close_all_incognito_tabs_menu_id) { } else if (id == R.id.close_all_incognito_tabs_menu_id) {
boolean allowUndo = TabClosureParamsUtils.shouldAllowUndo(triggeringMotion); boolean allowUndo = TabClosureParamsUtils.shouldAllowUndo(triggeringMotion);
@@ -3848,6 +3856,41 @@ public class ChromeTabbedActivity extends ChromeActivity { @@ -3970,6 +3978,41 @@ public class ChromeTabbedActivity extends ChromeActivity {
getTabModalLifetimeHandler().onOmniboxFocusChanged(hasFocus); getTabModalLifetimeHandler().onOmniboxFocusChanged(hasFocus);
} }
@@ -127,7 +128,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
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 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 --- 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 +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java
@@ -270,6 +270,14 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm @@ -271,6 +271,14 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm
// Bookmarks // Bookmarks
modelList.add(buildBookmarksItem()); modelList.add(buildBookmarksItem());
@@ -142,7 +143,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab
// Recent Tabs // Recent Tabs
if (shouldShowRecentTabsItem()) modelList.add(buildRecentTabsItem()); if (shouldShowRecentTabsItem()) modelList.add(buildRecentTabsItem());
@@ -434,6 +442,13 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm @@ -448,6 +456,13 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm
} }
modelList.add(buildCloseAllTabsItem()); modelList.add(buildCloseAllTabsItem());
if (shouldShowTinkerTank()) modelList.add(buildTinkerTankItem()); if (shouldShowTinkerTank()) modelList.add(buildTinkerTankItem());
@@ -459,7 +460,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 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 --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -4482,6 +4482,9 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>delete the Chrome d @@ -4431,6 +4431,9 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>delete the Chrome d
<message name="IDS_MENU_SELECT_TABS" desc="Menu item for bulk editing tabs. [CHAR_LIMIT=27]"> <message name="IDS_MENU_SELECT_TABS" desc="Menu item for bulk editing tabs. [CHAR_LIMIT=27]">
Select tabs Select tabs
</message> </message>
@@ -481,6 +482,18 @@ diff --git a/chrome/browser/ui/bookmarks/bookmark_ui_operations_helper.cc b/chro
case bookmarks::BookmarkNode::URL: case bookmarks::BookmarkNode::URL:
NOTREACHED(); NOTREACHED();
case bookmarks::BookmarkNode::FOLDER: case bookmarks::BookmarkNode::FOLDER:
diff --git a/chrome/browser/ui/webui_browser/bookmark_bar_page_handler.cc b/chrome/browser/ui/webui_browser/bookmark_bar_page_handler.cc
--- a/chrome/browser/ui/webui_browser/bookmark_bar_page_handler.cc
+++ b/chrome/browser/ui/webui_browser/bookmark_bar_page_handler.cc
@@ -37,6 +37,8 @@ bookmark_bar::mojom::BookmarkType ConvertType(
return bookmark_bar::mojom::BookmarkType::OTHER_NODE;
case bookmarks::BookmarkNode::MOBILE:
return bookmark_bar::mojom::BookmarkType::MOBILE;
+ case bookmarks::BookmarkNode::TABS_COLLECTION:
+ NOTREACHED();
}
NOTREACHED();
}
diff --git a/components/bookmark_bar_strings.grdp b/components/bookmark_bar_strings.grdp diff --git a/components/bookmark_bar_strings.grdp b/components/bookmark_bar_strings.grdp
--- a/components/bookmark_bar_strings.grdp --- a/components/bookmark_bar_strings.grdp
+++ b/components/bookmark_bar_strings.grdp +++ b/components/bookmark_bar_strings.grdp
@@ -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/values/ids.xml b/chrome/android/java/res/values/ids.xml diff --git a/chrome/android/java/res/values/ids.xml b/chrome/android/java/res/values/ids.xml
--- a/chrome/android/java/res/values/ids.xml --- a/chrome/android/java/res/values/ids.xml
+++ b/chrome/android/java/res/values/ids.xml +++ b/chrome/android/java/res/values/ids.xml
@@ -129,6 +129,7 @@ found in the LICENSE file. @@ -131,6 +131,7 @@ found in the LICENSE file.
<item type="id" name="update_menu_id" /> <item type="id" name="update_menu_id" />
<item type="id" name="new_tab_menu_id" /> <item type="id" name="new_tab_menu_id" />
<item type="id" name="new_incognito_tab_menu_id" /> <item type="id" name="new_incognito_tab_menu_id" />
@@ -27,7 +27,7 @@ diff --git a/chrome/android/java/res/values/ids.xml b/chrome/android/java/res/va
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
@@ -3764,6 +3764,8 @@ public class ChromeTabbedActivity extends ChromeActivity { @@ -3884,6 +3884,8 @@ public class ChromeTabbedActivity extends ChromeActivity {
NewTabPageUma.recordAction(NewTabPageUma.ACTION_OPENED_DOWNLOADS_MANAGER); NewTabPageUma.recordAction(NewTabPageUma.ACTION_OPENED_DOWNLOADS_MANAGER);
} }
RecordUserAction.record("MobileMenuDownloadManager"); RecordUserAction.record("MobileMenuDownloadManager");
@@ -39,7 +39,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 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
@@ -2602,6 +2602,11 @@ public abstract class ChromeActivity extends AsyncInitializationActivity @@ -2638,6 +2638,11 @@ public abstract class ChromeActivity extends AsyncInitializationActivity
return doOpenWebApk(currentTab); return doOpenWebApk(currentTab);
} }
@@ -54,7 +54,7 @@ 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 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 --- 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 +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java
@@ -957,6 +957,30 @@ public abstract class AppMenuPropertiesDelegateImpl implements AppMenuProperties @@ -974,6 +974,30 @@ public abstract class AppMenuPropertiesDelegateImpl implements AppMenuProperties
return false; return false;
} }
@@ -101,7 +101,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/tabbed_mode/TabbedAppMenuPropertiesDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java 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 --- 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 +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java
@@ -334,6 +334,9 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm @@ -338,6 +338,9 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm
modelList.add(buildAddToHomescreenListItem(currentTab, shouldShowIconBeforeItem())); modelList.add(buildAddToHomescreenListItem(currentTab, shouldShowIconBeforeItem()));
} }
@@ -15,7 +15,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridViewBinder.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridViewBinder.java diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridViewBinder.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridViewBinder.java
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridViewBinder.java --- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridViewBinder.java
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridViewBinder.java +++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridViewBinder.java
@@ -480,7 +480,12 @@ class TabGridViewBinder { @@ -497,7 +497,12 @@ class TabGridViewBinder {
if (result != null) { if (result != null) {
TabUtils.setDrawableAndUpdateImageMatrix(thumbnail, result, thumbnailSize); TabUtils.setDrawableAndUpdateImageMatrix(thumbnail, result, thumbnailSize);
} else { } else {
@@ -29,7 +29,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
} }
}; };
if (sThumbnailFetcherForTesting != null) { if (sThumbnailFetcherForTesting != null) {
@@ -518,6 +523,7 @@ class TabGridViewBinder { @@ -535,6 +540,7 @@ class TabGridViewBinder {
*/ */
private static void setFavicon( private static void setFavicon(
ImageView faviconView, PropertyModel model, @Nullable TabFavicon favicon) { ImageView faviconView, PropertyModel model, @Nullable TabFavicon favicon) {
@@ -40,7 +40,7 @@ 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/TabProperties.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabProperties.java diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabProperties.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabProperties.java
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabProperties.java --- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabProperties.java
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabProperties.java +++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabProperties.java
@@ -127,6 +127,9 @@ public class TabProperties { @@ -129,6 +129,9 @@ public class TabProperties {
public static final WritableBooleanPropertyKey FAVICON_FETCHED = public static final WritableBooleanPropertyKey FAVICON_FETCHED =
new WritableBooleanPropertyKey(); new WritableBooleanPropertyKey();
@@ -50,7 +50,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
/** Property for lazily fetching favicons when required by an item in a UI. */ /** Property for lazily fetching favicons when required by an item in a UI. */
public static final WritableObjectPropertyKey<TabListFaviconProvider.TabFaviconFetcher> public static final WritableObjectPropertyKey<TabListFaviconProvider.TabFaviconFetcher>
FAVICON_FETCHER = new WritableObjectPropertyKey<>(); FAVICON_FETCHER = new WritableObjectPropertyKey<>();
@@ -220,6 +223,7 @@ public class TabProperties { @@ -223,6 +226,7 @@ public class TabProperties {
CARD_TYPE, CARD_TYPE,
CONTENT_DESCRIPTION_TEXT_RESOLVER, CONTENT_DESCRIPTION_TEXT_RESOLVER,
ACTION_BUTTON_DESCRIPTION_TEXT_RESOLVER, ACTION_BUTTON_DESCRIPTION_TEXT_RESOLVER,
@@ -58,7 +58,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
QUICK_DELETE_ANIMATION_STATUS, QUICK_DELETE_ANIMATION_STATUS,
TAB_GROUP_COLOR_VIEW_PROVIDER, TAB_GROUP_COLOR_VIEW_PROVIDER,
TAB_GROUP_CARD_COLOR, TAB_GROUP_CARD_COLOR,
@@ -259,6 +263,7 @@ public class TabProperties { @@ -263,6 +267,7 @@ public class TabProperties {
TAB_ACTION_BUTTON_DATA, TAB_ACTION_BUTTON_DATA,
FAVICON_FETCHED, FAVICON_FETCHED,
FAVICON_FETCHER, FAVICON_FETCHER,
@@ -84,7 +84,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/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
@@ -147,6 +147,7 @@ import org.chromium.chrome.browser.preferences.ChromeSharedPreferences; @@ -150,6 +150,7 @@ import org.chromium.chrome.browser.preferences.ChromeSharedPreferences;
import org.chromium.chrome.browser.preferences.Pref; import org.chromium.chrome.browser.preferences.Pref;
import org.chromium.chrome.browser.price_tracking.PriceDropNotificationManagerFactory; import org.chromium.chrome.browser.price_tracking.PriceDropNotificationManagerFactory;
import org.chromium.chrome.browser.printing.TabPrinter; import org.chromium.chrome.browser.printing.TabPrinter;
@@ -92,7 +92,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
import org.chromium.chrome.browser.profiles.Profile; import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.profiles.ProfileManager; import org.chromium.chrome.browser.profiles.ProfileManager;
import org.chromium.chrome.browser.profiles.ProfileProvider; import org.chromium.chrome.browser.profiles.ProfileProvider;
@@ -641,7 +642,8 @@ public abstract class ChromeActivity extends AsyncInitializationActivity @@ -653,7 +654,8 @@ public abstract class ChromeActivity extends AsyncInitializationActivity
new TabContentManager( new TabContentManager(
this, this,
mBrowserControlsManagerSupplier.get(), mBrowserControlsManagerSupplier.get(),
@@ -112,8 +112,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
+import org.chromium.base.supplier.Supplier; +import org.chromium.base.supplier.Supplier;
import org.chromium.base.supplier.ObservableSupplier; import org.chromium.base.supplier.ObservableSupplier;
import org.chromium.base.supplier.ObservableSupplierImpl; import org.chromium.base.supplier.ObservableSupplierImpl;
import org.chromium.build.annotations.Nullable; import org.chromium.build.annotations.NullMarked;
@@ -98,12 +99,26 @@ import org.chromium.chrome.browser.preferences.ChromeSharedPreferences; @@ -98,13 +99,27 @@ import org.chromium.chrome.browser.preferences.ChromeSharedPreferences;
import org.chromium.components.browser_ui.settings.ChromeSwitchPreference; import org.chromium.components.browser_ui.settings.ChromeSwitchPreference;
import org.chromium.components.browser_ui.settings.ManagedPreferenceDelegate; import org.chromium.components.browser_ui.settings.ManagedPreferenceDelegate;
@@ -126,6 +126,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
import java.util.List; import java.util.List;
/** Fragment to keep track of the all the privacy related preferences. */ /** Fragment to keep track of the all the privacy related preferences. */
@NullMarked
public class PrivacySettings extends ChromeBaseSettingsFragment public class PrivacySettings extends ChromeBaseSettingsFragment
- implements Preference.OnPreferenceChangeListener { - implements Preference.OnPreferenceChangeListener {
+ implements Preference.OnPreferenceChangeListener, INeedSnackbarManager { + implements Preference.OnPreferenceChangeListener, INeedSnackbarManager {
@@ -141,7 +142,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
private static final String PREF_CAN_MAKE_PAYMENT = "can_make_payment"; private static final String PREF_CAN_MAKE_PAYMENT = "can_make_payment";
private static final String PREF_PRELOAD_PAGES = "preload_pages"; private static final String PREF_PRELOAD_PAGES = "preload_pages";
private static final String PREF_HTTPS_FIRST_MODE = "https_first_mode"; private static final String PREF_HTTPS_FIRST_MODE = "https_first_mode";
@@ -215,6 +230,21 @@ public class PrivacySettings extends ChromeBaseSettingsFragment @@ -216,6 +231,21 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
} }
} }
@@ -155,7 +156,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
+ ApplicationLifetime.terminate(true); + ApplicationLifetime.terminate(true);
+ } + }
+ }, Snackbar.TYPE_NOTIFICATION, Snackbar.UMA_UNKNOWN) + }, Snackbar.TYPE_NOTIFICATION, Snackbar.UMA_UNKNOWN)
+ .setSingleLine(false) + .setDefaultLines(false)
+ .setAction(getActivity().getString(R.string.relaunch), + .setAction(getActivity().getString(R.string.relaunch),
+ /*actionData*/null) + /*actionData*/null)
+ .setDuration(/*durationMs*/70000); + .setDuration(/*durationMs*/70000);
@@ -199,7 +200,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 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 --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -6194,6 +6194,14 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>delete the Chrome d @@ -6146,6 +6146,14 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>delete the Chrome d
Your <ph name="FQDN">%1$s<ex>www.amazon.com</ex></ph> timer ran out. It'll start again tomorrow. Your <ph name="FQDN">%1$s<ex>www.amazon.com</ex></ph> timer ran out. It'll start again tomorrow.
</message> </message>
@@ -99,15 +99,15 @@ diff --git a/chrome/android/java/res/values/dimens.xml b/chrome/android/java/res
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java
@@ -63,6 +63,7 @@ import org.chromium.chrome.browser.ui.edge_to_edge.EdgeToEdgeController; @@ -62,6 +62,7 @@ import org.chromium.chrome.browser.ui.edge_to_edge.EdgeToEdgeController;
import org.chromium.chrome.browser.ui.edge_to_edge.EdgeToEdgeControllerCreator; import org.chromium.chrome.browser.ui.edge_to_edge.EdgeToEdgeControllerCreator;
import org.chromium.chrome.browser.ui.edge_to_edge.EdgeToEdgeFieldTrialImpl; import org.chromium.chrome.browser.ui.edge_to_edge.EdgeToEdgeFieldTrialImpl;
import org.chromium.chrome.browser.ui.edge_to_edge.EdgeToEdgeUtils; import org.chromium.chrome.browser.ui.edge_to_edge.EdgeToEdgeUtils;
+import org.chromium.chrome.browser.preferences.ChromeSharedPreferences; +import org.chromium.chrome.browser.preferences.ChromeSharedPreferences;
import org.chromium.chrome.browser.ui.edge_to_edge.SimpleEdgeToEdgeController; import org.chromium.chrome.browser.ui.edge_to_edge.SimpleEdgeToEdgeController;
import org.chromium.components.browser_ui.edge_to_edge.EdgeToEdgeManager; import org.chromium.components.browser_ui.styles.SemanticColorUtils;
import org.chromium.components.browser_ui.edge_to_edge.EdgeToEdgeStateProvider; import org.chromium.components.browser_ui.util.AutomotiveUtils;
@@ -145,6 +146,8 @@ public class ChromeBaseAppCompatActivity extends AppCompatActivity @@ -142,6 +143,8 @@ public class ChromeBaseAppCompatActivity extends AppCompatActivity
protected void attachBaseContext(Context newBase) { protected void attachBaseContext(Context newBase) {
super.attachBaseContext(newBase); super.attachBaseContext(newBase);
@@ -119,15 +119,15 @@ 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 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/WarmupManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/WarmupManager.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/WarmupManager.java
@@ -69,6 +69,7 @@ import org.chromium.content_public.browser.WebContents; @@ -63,6 +63,7 @@ import org.chromium.chrome.browser.toolbar.ControlContainer;
import org.chromium.content_public.browser.WebContentsObserver; import org.chromium.components.embedder_support.util.UrlConstants;
import org.chromium.net.NetId; import org.chromium.content_public.browser.WebContents;
import org.chromium.ui.LayoutInflaterUtils; import org.chromium.ui.LayoutInflaterUtils;
+import org.chromium.ui.base.DeviceFormFactor; +import org.chromium.ui.base.DeviceFormFactor;
import org.chromium.ui.base.WindowAndroid; import org.chromium.ui.base.WindowAndroid;
import org.chromium.ui.display.DisplayUtil; import org.chromium.ui.display.DisplayUtil;
import org.chromium.url.GURL; import org.chromium.url.GURL;
@@ -491,7 +492,9 @@ public class WarmupManager { @@ -472,7 +473,9 @@ public class WarmupManager {
ControlContainer controlContainer = mainView.findViewById(R.id.control_container); ControlContainer controlContainer = mainView.findViewById(R.id.control_container);
if (toolbarId != ActivityUtils.NO_RESOURCE_ID && controlContainer != null) { if (toolbarId != ActivityUtils.NO_RESOURCE_ID && controlContainer != null) {
@@ -170,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 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
@@ -791,7 +791,9 @@ public abstract class ChromeActivity extends AsyncInitializationActivity @@ -803,7 +803,9 @@ public abstract class ChromeActivity extends AsyncInitializationActivity
// Inflate the correct toolbar layout for the device. // Inflate the correct toolbar layout for the device.
int toolbarLayoutId = getToolbarLayoutId(); int toolbarLayoutId = getToolbarLayoutId();
if (toolbarLayoutId != ActivityUtils.NO_RESOURCE_ID && controlContainer != null) { if (toolbarLayoutId != ActivityUtils.NO_RESOURCE_ID && controlContainer != null) {
@@ -184,7 +184,7 @@ 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 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 --- 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 +++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelper.java
@@ -127,6 +127,7 @@ import org.chromium.components.tab_group_sync.TabGroupSyncService; @@ -130,6 +130,7 @@ import org.chromium.components.tab_group_sync.TabGroupSyncService;
import org.chromium.components.tab_group_sync.TriggerSource; import org.chromium.components.tab_group_sync.TriggerSource;
import org.chromium.components.tab_groups.TabGroupColorId; import org.chromium.components.tab_groups.TabGroupColorId;
import org.chromium.ui.accessibility.AccessibilityState; import org.chromium.ui.accessibility.AccessibilityState;
@@ -192,7 +192,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over
import org.chromium.ui.base.LocalizationUtils; import org.chromium.ui.base.LocalizationUtils;
import org.chromium.ui.base.WindowAndroid; import org.chromium.ui.base.WindowAndroid;
import org.chromium.ui.util.ColorUtils; import org.chromium.ui.util.ColorUtils;
@@ -4955,8 +4956,13 @@ public class StripLayoutHelper @@ -5147,8 +5148,13 @@ public class StripLayoutHelper
mCloseButtonMenu.setAnchorView(tabView); mCloseButtonMenu.setAnchorView(tabView);
// 3. Set the vertical offset to align the close button menu with bottom of the tab strip // 3. Set the vertical offset to align the close button menu with bottom of the tab strip
int tabHeight = mManagerHost.getHeight(); int tabHeight = mManagerHost.getHeight();
@@ -219,7 +219,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over
import org.chromium.ui.base.LocalizationUtils; import org.chromium.ui.base.LocalizationUtils;
import org.chromium.ui.base.PageTransition; import org.chromium.ui.base.PageTransition;
import org.chromium.ui.base.WindowAndroid; import org.chromium.ui.base.WindowAndroid;
@@ -495,7 +496,10 @@ public class StripLayoutHelperManager @@ -498,7 +499,10 @@ public class StripLayoutHelperManager
mIsLayoutOptimizationsEnabled = mIsLayoutOptimizationsEnabled =
ToolbarFeatures.isTabStripWindowLayoutOptimizationEnabled( ToolbarFeatures.isTabStripWindowLayoutOptimizationEnabled(
/* isTablet= */ true, DisplayUtil.isContextInDefaultDisplay(mContext)); /* isTablet= */ true, DisplayUtil.isContextInDefaultDisplay(mContext));
@@ -234,7 +234,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over
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 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 --- 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 +++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/TabStripSceneLayer.java
@@ -111,6 +111,14 @@ public class TabStripSceneLayer extends SceneOverlayLayer { @@ -120,6 +120,14 @@ public class TabStripSceneLayer extends SceneOverlayLayer {
if (mNativePtr == 0) return; if (mNativePtr == 0) return;
final boolean visible = yOffset > -layoutHelper.getHeight(); final boolean visible = yOffset > -layoutHelper.getHeight();
@@ -252,15 +252,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/scen
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 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrowserInitializer.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrowserInitializer.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrowserInitializer.java
@@ -16,6 +16,7 @@ import org.chromium.base.library_loader.LibraryProcessType; @@ -18,6 +18,7 @@ import org.chromium.base.task.TaskTraits;
import org.chromium.base.task.ChainedTasks; import org.chromium.build.annotations.NullMarked;
import org.chromium.base.task.TaskTraits; import org.chromium.build.annotations.Nullable;
import org.chromium.chrome.browser.flags.ChromeSwitches; import org.chromium.chrome.browser.flags.ChromeSwitches;
+import org.chromium.chrome.browser.preferences.ChromeSharedPreferences; +import org.chromium.chrome.browser.preferences.ChromeSharedPreferences;
import org.chromium.chrome.browser.profiles.ProfileManager; import org.chromium.chrome.browser.profiles.ProfileManager;
import org.chromium.chrome.browser.signin.SigninCheckerProvider; import org.chromium.chrome.browser.signin.SigninCheckerProvider;
import org.chromium.components.background_task_scheduler.BackgroundTaskSchedulerFactory; import org.chromium.components.background_task_scheduler.BackgroundTaskSchedulerFactory;
@@ -106,6 +107,7 @@ public class ChromeBrowserInitializer { @@ -109,6 +110,7 @@ public class ChromeBrowserInitializer {
public void handlePreNativeStartupAndLoadLibraries(final BrowserParts parts) { public void handlePreNativeStartupAndLoadLibraries(final BrowserParts parts) {
ThreadUtils.checkUiThread(); ThreadUtils.checkUiThread();
if (parts.isActivityFinishingOrDestroyed()) return; if (parts.isActivityFinishingOrDestroyed()) return;
@@ -271,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 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 --- 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 +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java
@@ -747,7 +747,9 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { @@ -762,7 +762,9 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator {
@Override @Override
public int getControlContainerHeightResource() { public int getControlContainerHeightResource() {
@@ -285,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 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java
@@ -108,6 +108,8 @@ import org.chromium.chrome.browser.paint_preview.DemoPaintPreview; @@ -107,6 +107,8 @@ import org.chromium.chrome.browser.paint_preview.DemoPaintPreview;
import org.chromium.chrome.browser.password_manager.ManagePasswordsReferrer; import org.chromium.chrome.browser.password_manager.ManagePasswordsReferrer;
import org.chromium.chrome.browser.password_manager.PasswordManagerLauncher; import org.chromium.chrome.browser.password_manager.PasswordManagerLauncher;
import org.chromium.chrome.browser.pdf.PdfPage; import org.chromium.chrome.browser.pdf.PdfPage;
@@ -319,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 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 --- 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 +++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
@@ -317,6 +317,7 @@ public final class ChromePreferenceKeys { @@ -321,6 +321,7 @@ public final class ChromePreferenceKeys {
/** Whether the app-specific history info text was already seen by users. */ /** Whether the app-specific history info text was already seen by users. */
public static final String HISTORY_APP_SPECIFIC_INFO_SEEN = public static final String HISTORY_APP_SPECIFIC_INFO_SEEN =
"Chrome.History.AppSpecificInfoSeen"; "Chrome.History.AppSpecificInfoSeen";
@@ -371,8 +371,8 @@ diff --git a/chrome/browser/ui/android/desktop_windowing/java/src/org/chromium/c
--- a/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 +++ b/chrome/browser/ui/android/desktop_windowing/java/src/org/chromium/chrome/browser/ui/desktop_windowing/AppHeaderCoordinator.java
@@ -42,6 +42,7 @@ import org.chromium.components.browser_ui.desktop_windowing.DesktopWindowStateMa @@ -42,6 +42,7 @@ import org.chromium.components.browser_ui.desktop_windowing.DesktopWindowStateMa
import org.chromium.components.browser_ui.edge_to_edge.EdgeToEdgeStateProvider;
import org.chromium.ui.display.DisplayUtil; import org.chromium.ui.display.DisplayUtil;
import org.chromium.ui.edge_to_edge.EdgeToEdgeStateProvider;
import org.chromium.ui.insets.CaptionBarInsetsRectProvider; import org.chromium.ui.insets.CaptionBarInsetsRectProvider;
+import org.chromium.ui.base.DeviceFormFactor; +import org.chromium.ui.base.DeviceFormFactor;
import org.chromium.ui.insets.InsetObserver; import org.chromium.ui.insets.InsetObserver;
@@ -389,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 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 --- 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 +++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java
@@ -833,7 +833,7 @@ public class LocationBarCoordinator @@ -862,7 +862,7 @@ public class LocationBarCoordinator
} }
private boolean isTabletWindow() { private boolean isTabletWindow() {
@@ -401,7 +401,7 @@ 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 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 --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -1531,6 +1531,13 @@ Your Google account may have other forms of browsing history like searches and a @@ -1483,6 +1483,13 @@ Your Google account may have other forms of browsing history like searches and a
Privacy guide explanation closed Privacy guide explanation closed
</message> </message>
@@ -422,24 +422,25 @@ diff --git a/chrome/browser/ui/android/toolbar/java/res/layout/control_container
android:id="@+id/control_container" android:id="@+id/control_container"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
- android:minHeight="@dimen/control_container_height" > - android:minHeight="@dimen/control_container_height">
+ android:minHeight="@dimen/control_container_height_cromite" > + android:minHeight="@dimen/control_container_height_cromite">
<view <view
class="org.chromium.chrome.browser.toolbar.top.ToolbarControlContainer$ToolbarViewResourceFrameLayout" class="org.chromium.chrome.browser.toolbar.top.ToolbarControlContainer$ToolbarViewResourceCoordinatorLayout"
@@ -20,20 +20,20 @@ found in the LICENSE file. @@ -20,7 +20,7 @@ found in the LICENSE file.
<ViewStub <ViewStub
android:id="@+id/toolbar_stub" android:id="@+id/toolbar_stub"
android:layout_width="match_parent" android:layout_width="match_parent"
- android:layout_marginTop="@dimen/tab_strip_height" - android:layout_marginTop="@dimen/tab_strip_height"
+ android:layout_marginTop="@dimen/tab_strip_height_cromite" + android:layout_marginTop="@dimen/tab_strip_height_cromite"
android:layout_marginBottom="@dimen/toolbar_hairline_height"
android:layout_height="@dimen/toolbar_height_no_shadow" /> android:layout_height="@dimen/toolbar_height_no_shadow" />
<org.chromium.chrome.browser.toolbar.ToolbarHairlineView @@ -29,13 +29,13 @@ found in the LICENSE file.
android:id="@+id/toolbar_hairline"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
- android:layout_marginTop="@dimen/control_container_height" /> app:layout_anchorGravity="bottom"
- />
+ android:layout_marginTop="@dimen/control_container_height_cromite" /> + android:layout_marginTop="@dimen/control_container_height_cromite" />
<ViewStub <ViewStub
@@ -491,11 +492,11 @@ diff --git a/chrome/browser/ui/android/toolbar/java/res/values/dimens.xml b/chro
+ <dimen name="tab_strip_reserved_top_padding_tabletui">2dp</dimen> + <dimen name="tab_strip_reserved_top_padding_tabletui">2dp</dimen>
<dimen name="ntp_search_box_height">64dp</dimen> <dimen name="ntp_search_box_height">64dp</dimen>
<dimen name="ntp_search_box_height_tall">72dp</dimen>
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 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 --- 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 +++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/ControlContainer.java
@@ -27,7 +27,7 @@ public interface ControlContainer { @@ -26,7 +26,7 @@ public interface ControlContainer {
* *
* @param toolbarLayoutId The ID of the toolbar layout to use. * @param toolbarLayoutId The ID of the toolbar layout to use.
*/ */
@@ -515,7 +516,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow
import android.graphics.Canvas; import android.graphics.Canvas;
import android.graphics.Color; import android.graphics.Color;
import android.graphics.PorterDuff; import android.graphics.PorterDuff;
@@ -163,8 +164,25 @@ public class ToolbarControlContainer extends OptimizedFrameLayout @@ -165,8 +166,25 @@ public class ToolbarControlContainer extends OptimizedFrameLayout
@Override @Override
@Initializer @Initializer
@@ -545,7 +546,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/ToolbarLayout.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarLayout.java 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 --- 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 +++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarLayout.java
@@ -66,6 +66,7 @@ import org.chromium.chrome.browser.util.BrowserUiUtils.ModuleTypeOnStartAndNtp; @@ -64,6 +64,7 @@ import org.chromium.chrome.browser.util.BrowserUiUtils.ModuleTypeOnStartAndNtp;
import org.chromium.components.feature_engagement.Tracker; import org.chromium.components.feature_engagement.Tracker;
import org.chromium.ui.base.ViewUtils; import org.chromium.ui.base.ViewUtils;
import org.chromium.ui.util.MotionEventUtils; import org.chromium.ui.util.MotionEventUtils;
@@ -553,7 +554,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow
import org.chromium.ui.util.TokenHolder; import org.chromium.ui.util.TokenHolder;
import org.chromium.url.GURL; import org.chromium.url.GURL;
@@ -594,7 +595,9 @@ public abstract class ToolbarLayout extends FrameLayout @@ -581,7 +582,9 @@ public abstract class ToolbarLayout extends FrameLayout
* not have a tab strip. * not have a tab strip.
*/ */
protected int getTabStripHeightFromResource() { protected int getTabStripHeightFromResource() {
@@ -4,11 +4,11 @@ Subject: Add option to not persist tabs across sessions
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
--- ---
.../android/java/res/xml/privacy_preferences.xml | 5 +++++ .../android/java/res/xml/privacy_preferences.xml | 5 +++++
.../chrome/browser/ChromeTabbedActivity.java | 5 ++++- .../chrome/browser/ChromeTabbedActivity.java | 5 ++++-
.../privacy/settings/PrivacySettings.java | 16 +++++++++++++++- .../browser/privacy/settings/PrivacySettings.java | 15 ++++++++++++++-
.../android/strings/android_chrome_strings.grd | 6 ++++++ .../ui/android/strings/android_chrome_strings.grd | 6 ++++++
4 files changed, 30 insertions(+), 2 deletions(-) 4 files changed, 29 insertions(+), 2 deletions(-)
diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml 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 --- a/chrome/android/java/res/xml/privacy_preferences.xml
@@ -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.IntentUtils;
import org.chromium.base.Log; import org.chromium.base.Log;
import org.chromium.base.MemoryPressureListener; import org.chromium.base.MemoryPressureListener;
@@ -2086,8 +2087,10 @@ public class ChromeTabbedActivity extends ChromeActivity { @@ -2151,8 +2152,10 @@ public class ChromeTabbedActivity extends ChromeActivity {
boolean hadCipherData = boolean hadCipherData =
CipherLazyHolder.sCipherInstance.restoreFromBundle(getSavedInstanceState()); CipherLazyHolder.sCipherInstance.restoreFromBundle(getSavedInstanceState());
@@ -51,7 +51,7 @@ 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 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 --- 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 +++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
@@ -8,6 +8,7 @@ import static org.chromium.components.content_settings.PrefNames.COOKIE_CONTROLS @@ -9,6 +9,7 @@ import static org.chromium.components.content_settings.PrefNames.COOKIE_CONTROLS
import android.content.Context; import android.content.Context;
import android.content.Intent; import android.content.Intent;
@@ -59,17 +59,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
import android.graphics.drawable.Drawable; import android.graphics.drawable.Drawable;
import android.os.Bundle; import android.os.Bundle;
import android.text.SpannableString; import android.text.SpannableString;
@@ -20,7 +21,9 @@ import android.view.View; @@ -22,6 +23,7 @@ import androidx.annotation.VisibleForTesting;
import androidx.annotation.VisibleForTesting;
import androidx.preference.Preference; import androidx.preference.Preference;
+import org.chromium.base.BuildInfo;
import org.chromium.base.Callback; import org.chromium.base.Callback;
+import org.chromium.base.ContextUtils; +import org.chromium.base.ContextUtils;
import org.chromium.base.IntentUtils; import org.chromium.base.IntentUtils;
import org.chromium.base.metrics.RecordHistogram; import org.chromium.base.metrics.RecordHistogram;
import org.chromium.base.metrics.RecordUserAction; import org.chromium.base.metrics.RecordUserAction;
@@ -112,6 +115,8 @@ public class PrivacySettings extends ChromeBaseSettingsFragment @@ -114,6 +116,8 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
private final SharedPreferencesManager mSharedPreferencesManager = private final SharedPreferencesManager mSharedPreferencesManager =
ChromeSharedPreferences.getInstance(); ChromeSharedPreferences.getInstance();
@@ -78,7 +76,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
private ManagedPreferenceDelegate mManagedPreferenceDelegate; private ManagedPreferenceDelegate mManagedPreferenceDelegate;
@VisibleForTesting static final String PREF_THIRD_PARTY_COOKIES = "third_party_cookies"; @VisibleForTesting static final String PREF_THIRD_PARTY_COOKIES = "third_party_cookies";
@VisibleForTesting static final String PREF_TRACKING_PROTECTION = "tracking_protection"; @VisibleForTesting static final String PREF_TRACKING_PROTECTION = "tracking_protection";
@@ -381,7 +386,11 @@ public class PrivacySettings extends ChromeBaseSettingsFragment @@ -382,7 +386,11 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
@Override @Override
public boolean onPreferenceChange(Preference preference, Object newValue) { public boolean onPreferenceChange(Preference preference, Object newValue) {
String key = preference.getKey(); String key = preference.getKey();
@@ -91,7 +89,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
UserPrefs.get(getProfile()) UserPrefs.get(getProfile())
.setBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED, (boolean) newValue); .setBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED, (boolean) newValue);
} else if (PREF_HTTPS_FIRST_MODE_LEGACY.equals(key)) { } else if (PREF_HTTPS_FIRST_MODE_LEGACY.equals(key)) {
@@ -441,6 +450,11 @@ public class PrivacySettings extends ChromeBaseSettingsFragment @@ -442,6 +450,11 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
getContext(), getProfile())); getContext(), getProfile()));
} }
@@ -106,7 +104,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 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 --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -2901,6 +2901,12 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>delete the Chrome d @@ -2850,6 +2850,12 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>delete the Chrome d
<message name="IDS_ACCESSIBILITY_TAB_SWITCHER_TITLE" desc="Accessibility label of the current window when Grid Tab Switcher is shown."> <message name="IDS_ACCESSIBILITY_TAB_SWITCHER_TITLE" desc="Accessibility label of the current window when Grid Tab Switcher is shown.">
All tabs All tabs
</message> </message>
@@ -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 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 --- 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 +++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridDialogMediator.java
@@ -120,6 +120,9 @@ import java.util.Objects; @@ -120,6 +120,9 @@ import java.util.Optional;
import java.util.Optional;
import java.util.Set; import java.util.Set;
import java.util.function.Supplier;
+import org.chromium.chrome.browser.homepage.HomepageManager; +import org.chromium.chrome.browser.homepage.HomepageManager;
+import org.chromium.url.GURL; +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' * A mediator for the TabGridDialog component, responsible for communicating with the components'
* coordinator as well as managing the business logic for dialog show/hide. * coordinator as well as managing the business logic for dialog show/hide.
@@ -1035,9 +1038,15 @@ public class TabGridDialogMediator @@ -1028,9 +1031,15 @@ public class TabGridDialogMediator
return; return;
} }
@@ -48,13 +48,13 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
assumeNonNull(mCurrentTabGroupModelFilterSupplier.get()), assumeNonNull(mCurrentTabGroupModelFilterSupplier.get()),
- UrlConstants.NTP_URL, - UrlConstants.NTP_URL,
+ url, + url,
currentTab.getId(), tabsInGroup.get(tabsInGroup.size() - 1).getId(),
TabLaunchType.FROM_TAB_GROUP_UI); TabLaunchType.FROM_TAB_GROUP_UI);
RecordUserAction.record("MobileNewTabOpened." + mComponentName); RecordUserAction.record("MobileNewTabOpened." + mComponentName);
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 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 --- 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 +++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupUiMediator.java
@@ -36,6 +36,7 @@ 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.SharedImageTilesConfig;
import org.chromium.chrome.browser.data_sharing.ui.shared_image_tiles.SharedImageTilesCoordinator; import org.chromium.chrome.browser.data_sharing.ui.shared_image_tiles.SharedImageTilesCoordinator;
import org.chromium.chrome.browser.layouts.LayoutStateProvider; import org.chromium.chrome.browser.layouts.LayoutStateProvider;
@@ -97,9 +97,9 @@ 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 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 --- 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 +++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/TabGroupContextMenuCoordinator.java
@@ -75,6 +75,9 @@ import org.chromium.ui.text.EmptyTextWatcher; @@ -84,6 +84,9 @@ import org.chromium.ui.widget.RectProvider;
import org.chromium.ui.widget.AnchoredPopupWindow.HorizontalOrientation;
import org.chromium.ui.widget.RectProvider; import java.util.function.Supplier;
+import org.chromium.chrome.browser.homepage.HomepageManager; +import org.chromium.chrome.browser.homepage.HomepageManager;
+import org.chromium.url.GURL; +import org.chromium.url.GURL;
@@ -107,7 +107,7 @@ 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 * 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. * responsible for creating a list of menu items, setting up the menu and displaying the menu.
@@ -215,9 +218,15 @@ public class TabGroupContextMenuCoordinator extends TabGroupOverflowMenuCoordina @@ -228,9 +231,15 @@ public class TabGroupContextMenuCoordinator extends TabGroupOverflowMenuCoordina
/* didCloseCallback= */ null); /* didCloseCallback= */ null);
RecordUserAction.record("MobileToolbarTabGroupMenu.DeleteGroup"); RecordUserAction.record("MobileToolbarTabGroupMenu.DeleteGroup");
} else if (menuId == R.id.open_new_tab_in_group) { } else if (menuId == R.id.open_new_tab_in_group) {
@@ -127,7 +127,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over
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 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java
@@ -258,6 +258,22 @@ public class HomepageManager @@ -257,6 +257,22 @@ public class HomepageManager
notifyHomepageUpdated(); notifyHomepageUpdated();
} }
@@ -170,8 +170,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/settin
private HomepageManager mHomepageManager; private HomepageManager mHomepageManager;
private RadioButtonGroupHomepagePreference mRadioButtons; private RadioButtonGroupHomepagePreference mRadioButtons;
private final ObservableSupplierImpl<String> mPageTitle = new ObservableSupplierImpl<>(); private final ObservableSupplierImpl<String> mPageTitle = new ObservableSupplierImpl<>();
@@ -78,6 +81,15 @@ public class HomepageSettings extends ChromeBaseSettingsFragment { @@ -102,6 +105,15 @@ public class HomepageSettings extends ChromeBaseSettingsFragment {
}); mRadioButtons.setOnHomepagePreferenceChangeListener(this::onRadioButtonGroupChanged);
mRadioButtons.setupPreferenceValues(createPreferenceValuesForRadioGroup()); mRadioButtons.setupPreferenceValues(createPreferenceValuesForRadioGroup());
+ ChromeSwitchPreference mNTPIsHomepageSwitch = + ChromeSwitchPreference mNTPIsHomepageSwitch =
@@ -200,7 +200,7 @@ 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 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java
@@ -27,6 +27,7 @@ import org.chromium.chrome.browser.app.tab_activity_glue.ReparentingTask; @@ -26,6 +26,7 @@ import org.chromium.chrome.browser.app.tab_activity_glue.ReparentingTask;
import org.chromium.chrome.browser.compositor.CompositorViewHolder; import org.chromium.chrome.browser.compositor.CompositorViewHolder;
import org.chromium.chrome.browser.flags.ChromeFeatureList; import org.chromium.chrome.browser.flags.ChromeFeatureList;
import org.chromium.chrome.browser.multiwindow.MultiInstanceManager; import org.chromium.chrome.browser.multiwindow.MultiInstanceManager;
@@ -208,7 +208,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
import org.chromium.chrome.browser.prefetch.settings.PreloadPagesSettingsBridge; import org.chromium.chrome.browser.prefetch.settings.PreloadPagesSettingsBridge;
import org.chromium.chrome.browser.prefetch.settings.PreloadPagesState; import org.chromium.chrome.browser.prefetch.settings.PreloadPagesState;
import org.chromium.chrome.browser.profiles.Profile; import org.chromium.chrome.browser.profiles.Profile;
@@ -565,6 +566,13 @@ public class ChromeTabCreator extends TabCreator @@ -569,6 +570,13 @@ public class ChromeTabCreator extends TabCreator
*/ */
public @Nullable Tab launchUrl( public @Nullable Tab launchUrl(
String url, @TabLaunchType int type, @Nullable Intent intent, long intentTimestamp) { String url, @TabLaunchType int type, @Nullable 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 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 --- 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 +++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
@@ -330,6 +330,7 @@ public final class ChromePreferenceKeys { @@ -334,6 +334,7 @@ public final class ChromePreferenceKeys {
public static final String HOMEPAGE_USE_CHROME_NTP = "Chrome.Homepage.UseNTP"; public static final String HOMEPAGE_USE_CHROME_NTP = "Chrome.Homepage.UseNTP";
public static final String HOMEPAGE_USE_DEFAULT_URI = "homepage_partner_enabled"; public static final String HOMEPAGE_USE_DEFAULT_URI = "homepage_partner_enabled";
@@ -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 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 --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -1357,6 +1357,9 @@ Your Google account may have other forms of browsing history like searches and a @@ -1324,6 +1324,9 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_CLEAR_BROWSING_DATA_TAB_PERIOD_HOUR" desc="The option to delete browsing data from the last hour."> <message name="IDS_CLEAR_BROWSING_DATA_TAB_PERIOD_HOUR" desc="The option to delete browsing data from the last hour.">
Last hour Last hour
</message> </message>
@@ -260,7 +260,7 @@ 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 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 --- a/chrome/browser/ui/browser_ui_prefs.cc
+++ b/chrome/browser/ui/browser_ui_prefs.cc +++ b/chrome/browser/ui/browser_ui_prefs.cc
@@ -111,6 +111,8 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistrySyncable* registry) { @@ -115,6 +115,8 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistrySyncable* registry) {
registry->RegisterBooleanPref(prefs::kPinSplitTabButton, false, registry->RegisterBooleanPref(prefs::kPinSplitTabButton, false,
pref_registration_flags); pref_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 diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h
--- a/chrome/common/pref_names.h --- a/chrome/common/pref_names.h
+++ b/chrome/common/pref_names.h +++ b/chrome/common/pref_names.h
@@ -1327,6 +1327,10 @@ inline constexpr char kPinSplitTabButton[] = "browser.pin_split_tab_button"; @@ -1345,6 +1345,10 @@ inline constexpr char kSplitViewDragAndDropNudgeUsedCount[] =
// by enterprise policy. // by enterprise policy.
inline constexpr char kGeminiSettings[] = "browser.gemini_settings"; inline constexpr char kGeminiSettings[] = "browser.gemini_settings";
+7 -8
View File
@@ -141,7 +141,7 @@ new file mode 100644
diff --git a/components/search_engines/search_engine_choice/search_engine_choice_utils.cc b/components/search_engines/search_engine_choice/search_engine_choice_utils.cc diff --git a/components/search_engines/search_engine_choice/search_engine_choice_utils.cc b/components/search_engines/search_engine_choice/search_engine_choice_utils.cc
--- a/components/search_engines/search_engine_choice/search_engine_choice_utils.cc --- a/components/search_engines/search_engine_choice/search_engine_choice_utils.cc
+++ b/components/search_engines/search_engine_choice/search_engine_choice_utils.cc +++ b/components/search_engines/search_engine_choice/search_engine_choice_utils.cc
@@ -155,10 +155,7 @@ void RecordChoiceScreenDefaultSearchProviderType( @@ -172,10 +172,7 @@ void RecordChoiceScreenDefaultSearchProviderType(
} }
void RecordChoiceScreenSelectedIndex(int selected_engine_index) { void RecordChoiceScreenSelectedIndex(int selected_engine_index) {
@@ -212,17 +212,16 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
std::unique_ptr<TemplateURLData> GetPrepopulatedEngine( std::unique_ptr<TemplateURLData> GetPrepopulatedEngine(
PrefService& prefs, PrefService& prefs,
std::vector<const TemplateURLPrepopulateData::PrepopulatedEngine*> std::vector<const TemplateURLPrepopulateData::PrepopulatedEngine*>
@@ -159,11 +172,15 @@ std::vector<std::unique_ptr<TemplateURLData>> GetLocalPrepopulatedEngines( @@ -159,10 +172,14 @@ std::vector<std::unique_ptr<TemplateURLData>> GetLocalPrepopulatedEngines(
return std::vector<std::unique_ptr<TemplateURLData>>(); return std::vector<std::unique_ptr<TemplateURLData>>();
} }
- return base::ToVector( - return base::ToVector(regional_capabilities::GetPrepopulatedEngines(
+ std::vector<std::unique_ptr<TemplateURLData>> t_urls = + std::vector<std::unique_ptr<TemplateURLData>> t_urls =
+ base::ToVector( + base::ToVector(regional_capabilities::GetPrepopulatedEngines(
regional_capabilities::GetPrepopulatedEngines( country_id, prefs,
country_id, prefs, regional_capabilities::SearchEngineListType::kTopN),
regional_capabilities::SearchEngineListType::kTopFive), &PrepopulatedEngineToTemplateURLData);
&PrepopulatedEngineToTemplateURLData);
+ t_urls.push_back(TemplateURLDataFromPrepopulatedEngine(googleen)); + t_urls.push_back(TemplateURLDataFromPrepopulatedEngine(googleen));
+ t_urls.push_back(TemplateURLDataFromPrepopulatedEngine(duckduckgo_light)); + t_urls.push_back(TemplateURLDataFromPrepopulatedEngine(duckduckgo_light));
+ return t_urls; + return t_urls;
@@ -48,7 +48,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni
--- a/chrome/android/chrome_java_sources.gni --- a/chrome/android/chrome_java_sources.gni
+++ b/chrome/android/chrome_java_sources.gni +++ b/chrome/android/chrome_java_sources.gni
@@ -262,6 +262,7 @@ chrome_java_sources = [ @@ -264,6 +264,7 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/browsing_data/ClearBrowsingDataCheckBoxPreference.java", "java/src/org/chromium/chrome/browser/browsing_data/ClearBrowsingDataCheckBoxPreference.java",
"java/src/org/chromium/chrome/browser/browsing_data/ClearBrowsingDataFetcher.java", "java/src/org/chromium/chrome/browser/browsing_data/ClearBrowsingDataFetcher.java",
"java/src/org/chromium/chrome/browser/browsing_data/ClearBrowsingDataFragment.java", "java/src/org/chromium/chrome/browser/browsing_data/ClearBrowsingDataFragment.java",
@@ -82,7 +82,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
import org.chromium.chrome.browser.read_later.ReadingListBackPressHandler; import org.chromium.chrome.browser.read_later.ReadingListBackPressHandler;
import org.chromium.chrome.browser.recent_tabs.CrossDevicePaneFactory; import org.chromium.chrome.browser.recent_tabs.CrossDevicePaneFactory;
import org.chromium.chrome.browser.reengagement.ReengagementNotificationController; import org.chromium.chrome.browser.reengagement.ReengagementNotificationController;
@@ -2091,7 +2092,11 @@ public class ChromeTabbedActivity extends ChromeActivity { @@ -2157,7 +2158,11 @@ public class ChromeTabbedActivity extends ChromeActivity {
Intent intent = getIntent(); Intent intent = getIntent();
boolean hadCipherData = boolean hadCipherData =
@@ -334,7 +334,7 @@ new file mode 100644
diff --git a/chrome/app/settings_strings.grdp b/chrome/app/settings_strings.grdp diff --git a/chrome/app/settings_strings.grdp b/chrome/app/settings_strings.grdp
--- a/chrome/app/settings_strings.grdp --- a/chrome/app/settings_strings.grdp
+++ b/chrome/app/settings_strings.grdp +++ b/chrome/app/settings_strings.grdp
@@ -2054,6 +2054,16 @@ @@ -2036,6 +2036,16 @@
<message name="IDS_SETTINGS_CLEAR_BROWSING_DATA" desc="Text for delete browsing data button in Privacy options"> <message name="IDS_SETTINGS_CLEAR_BROWSING_DATA" desc="Text for delete browsing data button in Privacy options">
Delete browsing data Delete browsing data
</message> </message>
@@ -354,7 +354,7 @@ diff --git a/chrome/app/settings_strings.grdp b/chrome/app/settings_strings.grdp
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc --- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc
@@ -107,6 +107,7 @@ @@ -108,6 +108,7 @@
#include "components/enterprise/data_controls/core/browser/features.h" #include "components/enterprise/data_controls/core/browser/features.h"
#include "components/enterprise/obfuscation/core/utils.h" #include "components/enterprise/obfuscation/core/utils.h"
#include "components/error_page/common/error_page_switches.h" #include "components/error_page/common/error_page_switches.h"
@@ -467,7 +467,7 @@ diff --git a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.
~content::BrowsingDataRemover::DATA_TYPE_AVOID_CLOSING_CONNECTIONS & ~content::BrowsingDataRemover::DATA_TYPE_AVOID_CLOSING_CONNECTIONS &
~constants::FILTERABLE_DATA_TYPES) == 0) || ~constants::FILTERABLE_DATA_TYPES) == 0) ||
filter_builder->MatchesAllOriginsAndDomains()); filter_builder->MatchesAllOriginsAndDomains());
@@ -457,6 +458,9 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData( @@ -453,6 +454,9 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData(
CreateTaskCompletionClosure(TracingDataType::kHistory), CreateTaskCompletionClosure(TracingDataType::kHistory),
&history_task_tracker_); &history_task_tracker_);
} }
@@ -477,7 +477,7 @@ diff --git a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.
if (ClipboardRecentContent::GetInstance()) if (ClipboardRecentContent::GetInstance())
ClipboardRecentContent::GetInstance()->SuppressClipboardContent(); ClipboardRecentContent::GetInstance()->SuppressClipboardContent();
@@ -565,6 +569,11 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData( @@ -561,6 +565,11 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData(
// and SSL host state are scoped to hosts and represent them as std::string. // and SSL host state are scoped to hosts and represent them as std::string.
// Rename the method to indicate its more general usage. // Rename the method to indicate its more general usage.
if (profile_->GetSSLHostStateDelegate()) { if (profile_->GetSSLHostStateDelegate()) {
@@ -489,7 +489,7 @@ diff --git a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.
profile_->GetSSLHostStateDelegate()->Clear( profile_->GetSSLHostStateDelegate()->Clear(
filter_builder->MatchesAllOriginsAndDomains() filter_builder->MatchesAllOriginsAndDomains()
? base::RepeatingCallback<bool(const std::string&)>() ? base::RepeatingCallback<bool(const std::string&)>()
@@ -593,9 +602,13 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData( @@ -589,9 +598,13 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData(
} }
device_event_log::Clear(delete_begin_, delete_end_); device_event_log::Clear(delete_begin_, delete_end_);
@@ -503,7 +503,7 @@ diff --git a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.
content::BackgroundTracingManager::GetInstance().DeleteTracesInDateRange( content::BackgroundTracingManager::GetInstance().DeleteTracesInDateRange(
delete_begin_, delete_end_); delete_begin_, delete_end_);
@@ -1320,6 +1333,8 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData( @@ -1306,6 +1319,8 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData(
if (should_clear_zero_suggest_and_session_token && template_url_service) if (should_clear_zero_suggest_and_session_token && template_url_service)
template_url_service->ClearSessionToken(); template_url_service->ClearSessionToken();
@@ -515,7 +515,7 @@ diff --git a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.
diff --git a/chrome/browser/extensions/api/settings_private/prefs_util.cc b/chrome/browser/extensions/api/settings_private/prefs_util.cc diff --git a/chrome/browser/extensions/api/settings_private/prefs_util.cc b/chrome/browser/extensions/api/settings_private/prefs_util.cc
--- a/chrome/browser/extensions/api/settings_private/prefs_util.cc --- a/chrome/browser/extensions/api/settings_private/prefs_util.cc
+++ b/chrome/browser/extensions/api/settings_private/prefs_util.cc +++ b/chrome/browser/extensions/api/settings_private/prefs_util.cc
@@ -550,6 +550,23 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlistedKeys() { @@ -554,6 +554,23 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlistedKeys() {
(*s_allowlist)[browsing_data::prefs::kLastClearBrowsingDataTab] = (*s_allowlist)[browsing_data::prefs::kLastClearBrowsingDataTab] =
settings_api::PrefType::kNumber; settings_api::PrefType::kNumber;
@@ -574,7 +574,7 @@ diff --git a/chrome/browser/profiles/android/profile_manager_utils.cc b/chrome/b
diff --git a/chrome/browser/profiles/profile_manager.cc b/chrome/browser/profiles/profile_manager.cc diff --git a/chrome/browser/profiles/profile_manager.cc b/chrome/browser/profiles/profile_manager.cc
--- a/chrome/browser/profiles/profile_manager.cc --- a/chrome/browser/profiles/profile_manager.cc
+++ b/chrome/browser/profiles/profile_manager.cc +++ b/chrome/browser/profiles/profile_manager.cc
@@ -1441,6 +1441,19 @@ void ProfileManager::DoFinalInit(ProfileInfo* profile_info, @@ -1434,6 +1434,19 @@ void ProfileManager::DoFinalInit(ProfileInfo* profile_info,
} }
} }
@@ -594,7 +594,7 @@ diff --git a/chrome/browser/profiles/profile_manager.cc b/chrome/browser/profile
void ProfileManager::DoFinalInitForServices(Profile* profile, void ProfileManager::DoFinalInitForServices(Profile* profile,
bool go_off_the_record) { bool go_off_the_record) {
if (!do_final_services_init_ || if (!do_final_services_init_ ||
@@ -2102,7 +2115,7 @@ void ProfileManager::OnBrowserClosed(Browser* browser) { @@ -2095,7 +2108,7 @@ void ProfileManager::OnBrowserClosed(Browser* browser) {
Profile* original_profile = profile->GetOriginalProfile(); Profile* original_profile = profile->GetOriginalProfile();
// Do nothing if the closed window is not the last window of the same profile. // Do nothing if the closed window is not the last window of the same profile.
for (Browser* browser_iter : *BrowserList::GetInstance()) { for (Browser* browser_iter : *BrowserList::GetInstance()) {
@@ -691,7 +691,7 @@ diff --git a/chrome/browser/resources/settings/clear_browsing_data_dialog/clear_
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd 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 --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -1452,6 +1452,9 @@ Your Google account may have other forms of browsing history like searches and a @@ -1419,6 +1419,9 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_ANDROID_APP_HISTORY_OPEN_FULL_OTHER_FORMS" desc="The informational message at the top of the history page letting users know that app-specific history may be missing some entries, followed by the info on the other forms of browing history."> <message name="IDS_ANDROID_APP_HISTORY_OPEN_FULL_OTHER_FORMS" desc="The informational message at the top of the history page letting users know that app-specific history may be missing some entries, followed by the info on the other forms of browing history.">
Some of your history might not show up here. To see all your Chrome history, open full Chrome history. Also, your Google Account may have other forms of browsing history at <ph name="BEGIN_LINK">&lt;link&gt;</ph>myactivity.google.com<ph name="END_LINK">&lt;/link&gt;</ph>. Some of your history might not show up here. To see all your Chrome history, open full Chrome history. Also, your Google Account may have other forms of browsing history at <ph name="BEGIN_LINK">&lt;link&gt;</ph>myactivity.google.com<ph name="END_LINK">&lt;/link&gt;</ph>.
</message> </message>
@@ -718,7 +718,7 @@ new file mode 100644
diff --git a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc diff --git a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc
--- a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc --- a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc
+++ b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc +++ b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc
@@ -2021,6 +2021,7 @@ void AddPrivacyStrings(content::WebUIDataSource* html_source, @@ -2028,6 +2028,7 @@ void AddPrivacyStrings(content::WebUIDataSource* html_source,
{"clearedData", IDS_SETTINGS_CLEARED_DATA}, {"clearedData", IDS_SETTINGS_CLEARED_DATA},
{"clearBrowsingData", IDS_SETTINGS_CLEAR_BROWSING_DATA}, {"clearBrowsingData", IDS_SETTINGS_CLEAR_BROWSING_DATA},
{"clearBrowsingDataDescription", IDS_SETTINGS_CLEAR_DATA_DESCRIPTION}, {"clearBrowsingDataDescription", IDS_SETTINGS_CLEAR_DATA_DESCRIPTION},
@@ -976,7 +976,7 @@ diff --git a/components/search_engines/template_url_service.cc b/components/sear
diff --git a/content/browser/btm/btm_service_impl.cc b/content/browser/btm/btm_service_impl.cc diff --git a/content/browser/btm/btm_service_impl.cc b/content/browser/btm/btm_service_impl.cc
--- a/content/browser/btm/btm_service_impl.cc --- a/content/browser/btm/btm_service_impl.cc
+++ b/content/browser/btm/btm_service_impl.cc +++ b/content/browser/btm/btm_service_impl.cc
@@ -212,7 +212,7 @@ class StateClearer : public BrowsingDataRemover::Observer { @@ -262,7 +262,7 @@ class StateClearer : public BrowsingDataRemover::Observer {
remove_mask &= ~BrowsingDataRemover::DATA_TYPE_PRIVACY_SANDBOX; remove_mask &= ~BrowsingDataRemover::DATA_TYPE_PRIVACY_SANDBOX;
remover->RemoveWithFilterAndReply( remover->RemoveWithFilterAndReply(
base::Time::Min(), base::Time::Max(), base::Time::Min(), base::Time::Max(),
@@ -0,0 +1,336 @@
From: uazo <uazo@users.noreply.github.com>
Date: Thu, 9 Oct 2025 09:11:01 +0000
Subject: Add setting to enable Credman for passkeys
Enables Credential Manager for passkey management on A14+ devices via a switch
in the settings. By default, the feature is disabled.
In other versions of Android, webauthn appears to be enabled on websites but
always returns a timeout error as per specifications.
Conditional immediate support is disabled.
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
.../settings/PasswordSettings.java | 27 +++++++++++++++++
...etting-to-enable-Credman-for-passkeys.grdp | 12 ++++++++
.../webauthn/AuthenticatorImpl.java | 29 +++++++------------
.../components/webauthn/WebauthnFeatures.java | 2 ++
.../cred_man/CredManSupportProvider.java | 27 +++++------------
.../webauthn/android/webauthn_feature_map.cc | 1 +
components/webauthn/features.cc | 4 +++
components/webauthn/features.h | 3 ++
device/fido/features.cc | 2 ++
.../authentication_credentials_container.cc | 5 ++++
10 files changed, 75 insertions(+), 37 deletions(-)
create mode 100644 chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Add-setting-to-enable-Credman-for-passkeys.grdp
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java
@@ -10,6 +10,7 @@ import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
+import android.os.Build;
import android.os.Bundle;
import android.text.SpannableString;
import android.text.style.ForegroundColorSpan;
@@ -64,6 +65,10 @@ import org.chromium.chrome.browser.ui.messages.snackbar.INeedSnackbarManager;
import org.chromium.chrome.browser.ui.messages.snackbar.Snackbar;
import org.chromium.chrome.browser.lifetime.ApplicationLifetime;
+import org.chromium.chrome.browser.flags.CromiteNativeUtils;
+import org.chromium.components.webauthn.WebauthnFeatureMap;
+import org.chromium.components.webauthn.WebauthnFeatures;
+
/**
* The "Passwords" screen in Settings, which allows the user to enable or disable password saving,
* to view saved passwords (just the username and URL), and to delete saved passwords.
@@ -322,6 +327,7 @@ public class PasswordSettings extends ChromeBaseSettingsFragment
createSavePasswordsSwitch();
createAutoSignInCheckbox();
createEnableAndroidAutofillSwitch();
+ createCredManSwitch();
PasswordManagerHandlerProvider.getForProfile(getProfile())
.getPasswordManagerHandler()
@@ -673,6 +679,27 @@ public class PasswordSettings extends ChromeBaseSettingsFragment
getPrefService().getBoolean(Pref.CREDENTIALS_ENABLE_AUTOSIGNIN));
}
+ private void createCredManSwitch() {
+ ChromeSwitchPreference credManSwitch =
+ new ChromeSwitchPreference(getStyledContext(), null);
+ credManSwitch.setTitle(R.string.enable_android_credman_title);
+ credManSwitch.setOrder(0);
+ credManSwitch.setSummary(R.string.enable_android_credman_summary);
+ credManSwitch.setChecked(
+ WebauthnFeatureMap.getInstance().isEnabled(WebauthnFeatures.WEBAUTHN_ANDROID_PASSKEY));
+ if (Build.VERSION.SDK_INT < Build.VERSION_CODES.UPSIDE_DOWN_CAKE) {
+ credManSwitch.setSummary(R.string.enable_android_credman_disabled_summary);
+ credManSwitch.setEnabled(false);
+ }
+ credManSwitch.setOnPreferenceChangeListener((preference, newValue) -> {
+ CromiteNativeUtils.setFlagEnabled("WebAuthenticationAndroidPasskey", (boolean)newValue);
+ if (!mSnackbarManagerSupplier.get().isShowing())
+ mSnackbarManagerSupplier.get().showSnackbar(mSnackbar);
+ return true;
+ });
+ getPreferenceScreen().addPreference(credManSwitch);
+ }
+
private void displayManageAccountLink() {
SyncService syncService = SyncServiceFactory.getForProfile(getProfile());
if (syncService == null || !syncService.isEngineInitialized()) {
diff --git a/chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Add-setting-to-enable-Credman-for-passkeys.grdp b/chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Add-setting-to-enable-Credman-for-passkeys.grdp
new file mode 100644
--- /dev/null
+++ b/chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Add-setting-to-enable-Credman-for-passkeys.grdp
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="utf-8"?>
+<grit-part>
+ <message name="IDS_ENABLE_ANDROID_CREDMAN_TITLE" desc="" formatter_data="android_java">
+ Enable Android Credential Manager
+ </message>
+ <message name="IDS_ENABLE_ANDROID_CREDMAN_SUMMARY" desc="" formatter_data="android_java">
+ Enable support for Android Credential Manager
+ </message>
+ <message name="IDS_ENABLE_ANDROID_CREDMAN_DISABLED_SUMMARY" desc="" formatter_data="android_java">
+ Not supported on your device (require A14+)
+ </message>
+</grit-part>
diff --git a/components/webauthn/android/java/src/org/chromium/components/webauthn/AuthenticatorImpl.java b/components/webauthn/android/java/src/org/chromium/components/webauthn/AuthenticatorImpl.java
--- a/components/webauthn/android/java/src/org/chromium/components/webauthn/AuthenticatorImpl.java
+++ b/components/webauthn/android/java/src/org/chromium/components/webauthn/AuthenticatorImpl.java
@@ -34,6 +34,8 @@ import org.chromium.blink.mojom.PublicKeyCredentialReportOptions;
import org.chromium.blink.mojom.WebAuthnClientCapability;
import org.chromium.build.annotations.NullMarked;
import org.chromium.build.annotations.Nullable;
+import org.chromium.components.webauthn.CredManSupport;
+import org.chromium.components.webauthn.cred_man.CredManSupportProvider;
import org.chromium.components.ukm.UkmRecorder;
import org.chromium.content_public.browser.RenderFrameHost;
import org.chromium.content_public.browser.WebContents;
@@ -169,8 +171,7 @@ public final class AuthenticatorImpl implements Authenticator, AuthenticationCon
mIsPaymentRequest = options.isPaymentCredentialCreation;
mMakeCredentialCallback = callback;
mIsOperationPending = true;
- if (!GmsCoreUtils.isWebauthnSupported()
- || (!isChrome(mWebContents) && !GmsCoreUtils.isResultReceiverSupported())) {
+ if (CredManSupportProvider.getCredManSupport() == CredManSupport.DISABLED) {
recordOutcomeEvent(MakeCredentialOutcome.OTHER_FAILURE);
onError(AuthenticatorStatus.NOT_IMPLEMENTED);
return;
@@ -234,8 +235,7 @@ public final class AuthenticatorImpl implements Authenticator, AuthenticationCon
mIsConditionalRequest = options.mediation == Mediation.CONDITIONAL;
mIsImmediateRequest = options.mediation == Mediation.IMMEDIATE;
- if (!GmsCoreUtils.isWebauthnSupported()
- || (!isChrome(mWebContents) && !GmsCoreUtils.isResultReceiverSupported())
+ if (CredManSupportProvider.getCredManSupport() == CredManSupport.DISABLED
|| options.publicKey == null) {
recordOutcomeEvent(GetAssertionOutcome.OTHER_FAILURE);
onError(AuthenticatorStatus.NOT_IMPLEMENTED);
@@ -260,12 +260,11 @@ public final class AuthenticatorImpl implements Authenticator, AuthenticationCon
}
private boolean couldSupportConditionalMediation() {
- return GmsCoreUtils.isWebauthnSupported() && isChrome(mWebContents);
+ return isChrome(mWebContents);
}
private boolean couldSupportUvpaa() {
- return GmsCoreUtils.isWebauthnSupported()
- && (isChrome(mWebContents) || GmsCoreUtils.isResultReceiverSupported());
+ return isChrome(mWebContents);
}
@Override
@@ -329,26 +328,20 @@ public final class AuthenticatorImpl implements Authenticator, AuthenticationCon
capabilities.add(
createWebAuthnClientCapability(
AuthenticatorConstants.CAPABILITY_CONDITIONAL_GET,
- couldSupportConditionalMediation() && isUvpaa));
+ true));
capabilities.add(
createWebAuthnClientCapability(
AuthenticatorConstants.CAPABILITY_UVPAA,
- couldSupportUvpaa() && isUvpaa));
- boolean conditionalCreateEnabled =
- couldSupportConditionalMediation()
- && DeviceFeatureMap.isEnabled(
- DeviceFeatureList.WEBAUTHN_PASSKEY_UPGRADE);
+ true));
capabilities.add(
createWebAuthnClientCapability(
AuthenticatorConstants.CAPABILITY_CONDITIONAL_CREATE,
- isUvpaa && conditionalCreateEnabled));
+ DeviceFeatureMap.isEnabled(
+ DeviceFeatureList.WEBAUTHN_PASSKEY_UPGRADE)));
capabilities.add(
createWebAuthnClientCapability(
AuthenticatorConstants.CAPABILITY_IMMEDIATE_GET,
- DeviceFeatureMap.isEnabled(
- DeviceFeatureList
- .WEBAUTHN_IMMEDIATE_GET)
- && isUvpaa));
+ false));
callback.call(capabilities.toArray(new WebAuthnClientCapability[0]));
});
}
diff --git a/components/webauthn/android/java/src/org/chromium/components/webauthn/WebauthnFeatures.java b/components/webauthn/android/java/src/org/chromium/components/webauthn/WebauthnFeatures.java
--- a/components/webauthn/android/java/src/org/chromium/components/webauthn/WebauthnFeatures.java
+++ b/components/webauthn/android/java/src/org/chromium/components/webauthn/WebauthnFeatures.java
@@ -16,4 +16,6 @@ import org.chromium.build.annotations.NullMarked;
public abstract class WebauthnFeatures {
public static final String WEBAUTHN_ANDROID_PASSKEY_CACHE_MIGRATION =
"WebAuthenticationAndroidPasskeyCacheMigration";
+ public static final String WEBAUTHN_ANDROID_PASSKEY =
+ "WebAuthenticationAndroidPasskey";
}
diff --git a/components/webauthn/android/java/src/org/chromium/components/webauthn/cred_man/CredManSupportProvider.java b/components/webauthn/android/java/src/org/chromium/components/webauthn/cred_man/CredManSupportProvider.java
--- a/components/webauthn/android/java/src/org/chromium/components/webauthn/cred_man/CredManSupportProvider.java
+++ b/components/webauthn/android/java/src/org/chromium/components/webauthn/cred_man/CredManSupportProvider.java
@@ -19,9 +19,11 @@ import org.chromium.base.version_info.VersionInfo;
import org.chromium.build.annotations.NullMarked;
import org.chromium.build.annotations.Nullable;
import org.chromium.components.webauthn.CredManSupport;
-import org.chromium.components.webauthn.GmsCoreUtils;
import org.chromium.components.webauthn.WebauthnMode;
import org.chromium.components.webauthn.WebauthnModeProvider;
+import org.chromium.components.webauthn.WebauthnFeatureMap;
+import org.chromium.components.webauthn.WebauthnFeatures;
+import org.chromium.components.webauthn.WebauthnLogger;
@NullMarked
public class CredManSupportProvider {
@@ -57,12 +59,12 @@ public class CredManSupportProvider {
}
if (getAndroidVersion() < Build.VERSION_CODES.UPSIDE_DOWN_CAKE) {
sCredManSupport = CredManSupport.DISABLED;
- log(TAG, "Disabled because of Android version.");
+ WebauthnLogger.logError(TAG, "Disabled because of Android version.");
return sCredManSupport;
}
- if (notSkippedBecauseInTests() && hasOldGmsVersion()) {
+ if (!WebauthnFeatureMap.getInstance().isEnabled(WebauthnFeatures.WEBAUTHN_ANDROID_PASSKEY)) {
sCredManSupport = CredManSupport.DISABLED;
- log(TAG, "Disabled because of old GMS version.");
+ WebauthnLogger.logError(TAG, "Disabled because of user.");
return sCredManSupport;
}
if (notSkippedBecauseInTests()
@@ -70,14 +72,14 @@ public class CredManSupportProvider {
== null) {
sCredManSupport = CredManSupport.DISABLED;
recordCredManAvailability(/*available*/ false);
- log(TAG, "Disabled because CredentialManager is not available.");
+ WebauthnLogger.logError(TAG, "Disabled because CredentialManager is not available.");
return sCredManSupport;
}
recordCredManAvailability(/*available*/ true);
final CredManUiRecommender recommender =
ServiceLoaderUtil.maybeCreate(CredManUiRecommender.class);
- boolean customUiRecommended = recommender != null && recommender.recommendsCustomUi();
+ boolean customUiRecommended = true;
boolean gpmInCredMan =
sOverrideForcesGpm != null ? sOverrideForcesGpm : customUiRecommended;
boolean isChrome3pPwmMode =
@@ -116,13 +118,6 @@ public class CredManSupportProvider {
"WebAuthentication.Android.CredManAvailability", available);
}
- private static boolean hasOldGmsVersion() {
- assert sOverrideAndroidVersion == null : "Don't use in testing!";
- // The check works for unavailable and low GMS versions. `getGmsCoreVersion()` is -1 if the
- // GMS version can't be retrieved. Chrome assumes an insufficient GMS availability then.
- return GmsCoreUtils.getGmsCoreVersion() < getMinGmsVersionForCurrentChannel();
- }
-
private static int getAndroidVersion() {
return sOverrideAndroidVersion == null ? Build.VERSION.SDK_INT : sOverrideAndroidVersion;
}
@@ -130,10 +125,4 @@ public class CredManSupportProvider {
private static boolean notSkippedBecauseInTests() {
return sOverrideForcesGpm == null && sOverrideAndroidVersion == null;
}
-
- private static int getMinGmsVersionForCurrentChannel() {
- return (VersionInfo.isBetaBuild() || VersionInfo.isStableBuild())
- ? GMSCORE_MIN_VERSION_BETA_STABLE
- : GMSCORE_MIN_VERSION_CANARY_DEV;
- }
}
diff --git a/components/webauthn/android/webauthn_feature_map.cc b/components/webauthn/android/webauthn_feature_map.cc
--- a/components/webauthn/android/webauthn_feature_map.cc
+++ b/components/webauthn/android/webauthn_feature_map.cc
@@ -16,6 +16,7 @@ namespace {
// Array of features exposed through the Java WebauthnFeatureMap API.
const base::Feature* const kFeaturesExposedToJava[] = {
&kWebAuthnAndroidPasskeyCacheMigration,
+ &kWebAuthnAndroidPasskey,
};
// static
diff --git a/components/webauthn/features.cc b/components/webauthn/features.cc
--- a/components/webauthn/features.cc
+++ b/components/webauthn/features.cc
@@ -16,6 +16,10 @@ BASE_FEATURE(kWebAuthnAndroidPasskeyCacheMigration,
"WebAuthenticationAndroidPasskeyCacheMigration",
base::FEATURE_DISABLED_BY_DEFAULT);
+CROMITE_FEATURE(kWebAuthnAndroidPasskey,
+ "WebAuthenticationAndroidPasskey",
+ base::FEATURE_DISABLED_BY_DEFAULT);
+
#endif // BUILDFLAG(IS_ANDROID)
} // namespace webauthn::features
diff --git a/components/webauthn/features.h b/components/webauthn/features.h
--- a/components/webauthn/features.h
+++ b/components/webauthn/features.h
@@ -20,6 +20,9 @@ namespace webauthn::features {
COMPONENT_EXPORT(WEBAUTHN)
BASE_DECLARE_FEATURE(kWebAuthnAndroidPasskeyCacheMigration);
+COMPONENT_EXPORT(WEBAUTHN)
+BASE_DECLARE_FEATURE(kWebAuthnAndroidPasskey);
+
#endif // BUILDFLAG(IS_ANDROID)
} // namespace webauthn::features
diff --git a/device/fido/features.cc b/device/fido/features.cc
--- a/device/fido/features.cc
+++ b/device/fido/features.cc
@@ -163,6 +163,7 @@ BASE_FEATURE(kWebAuthnImmediateGet,
#else
base::FEATURE_ENABLED_BY_DEFAULT);
#endif // BUILDFLAG(IS_ANDROID)
+SET_CROMITE_FEATURE_DISABLED(kWebAuthnImmediateGet);
BASE_FEATURE_PARAM(int,
kWebAuthnImmediateMediationTimeoutMilliseconds,
@@ -175,6 +176,7 @@ BASE_FEATURE_PARAM(int,
BASE_FEATURE(kWebAuthnImmediateGetAutoselect,
"WebAuthenticationImmediateGetAutoselect",
base::FEATURE_ENABLED_BY_DEFAULT);
+SET_CROMITE_FEATURE_DISABLED(kWebAuthnImmediateGetAutoselect);
#if BUILDFLAG(IS_MAC)
// Default enabled in M139. Remove in or after M142.
diff --git a/third_party/blink/renderer/modules/credentialmanagement/authentication_credentials_container.cc b/third_party/blink/renderer/modules/credentialmanagement/authentication_credentials_container.cc
--- a/third_party/blink/renderer/modules/credentialmanagement/authentication_credentials_container.cc
+++ b/third_party/blink/renderer/modules/credentialmanagement/authentication_credentials_container.cc
@@ -1057,6 +1057,11 @@ DOMException* AuthenticatorStatusToDOMException(
const WebAuthnDOMExceptionDetailsPtr& dom_exception_details) {
DCHECK_EQ(status != AuthenticatorStatus::ERROR_WITH_DOM_EXCEPTION_DETAILS,
dom_exception_details.is_null());
+ if (status == AuthenticatorStatus::UNKNOWN_ERROR ||
+ status == AuthenticatorStatus::NOT_IMPLEMENTED) {
+ status = AuthenticatorStatus::NOT_ALLOWED_ERROR;
+ base::PlatformThread::Sleep(base::Milliseconds(base::RandInt(1000, 6000)));
+ }
switch (status) {
case AuthenticatorStatus::SUCCESS:
NOTREACHED();
--
@@ -59,7 +59,7 @@ diff --git a/android_webview/java/src/org/chromium/android_webview/contextmenu/A
diff --git a/chrome/android/java/res/values/ids.xml b/chrome/android/java/res/values/ids.xml diff --git a/chrome/android/java/res/values/ids.xml b/chrome/android/java/res/values/ids.xml
--- a/chrome/android/java/res/values/ids.xml --- a/chrome/android/java/res/values/ids.xml
+++ b/chrome/android/java/res/values/ids.xml +++ b/chrome/android/java/res/values/ids.xml
@@ -105,6 +105,7 @@ found in the LICENSE file. @@ -107,6 +107,7 @@ found in the LICENSE file.
<!-- Menu item IDs for FullscreenActivities --> <!-- Menu item IDs for FullscreenActivities -->
<item type="id" name="contextmenu_open_in_chrome" /> <item type="id" name="contextmenu_open_in_chrome" />
@@ -98,18 +98,18 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/s
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuItem.java b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuItem.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuItem.java b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuItem.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuItem.java --- a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuItem.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuItem.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuItem.java
@@ -128,8 +128,9 @@ class ChromeContextMenuItem { @@ -132,8 +132,9 @@ class ChromeContextMenuItem {
int PRINT_PAGE = 38; int PRINT_PAGE = 40;
// Developer Group // Developer Group
int INSPECT_ELEMENT = 39; int INSPECT_ELEMENT = 41;
+ int FOLLOW_LINK = 40; + int FOLLOW_LINK = 42;
// ALWAYS UPDATE! // ALWAYS UPDATE!
- int NUM_ENTRIES = 40; - int NUM_ENTRIES = 42;
+ int NUM_ENTRIES = 41; + int NUM_ENTRIES = 43;
} }
/** Mapping from {@link Item} to the ID found in the ids.xml. */ /** Mapping from {@link Item} to the ID found in the ids.xml. */
@@ -174,6 +175,7 @@ class ChromeContextMenuItem { @@ -180,6 +181,7 @@ class ChromeContextMenuItem {
R.id.contextmenu_share_page, // Item.SHARE_PAGE R.id.contextmenu_share_page, // Item.SHARE_PAGE
R.id.contextmenu_print_page, // Item.PRINT_PAGE R.id.contextmenu_print_page, // Item.PRINT_PAGE
R.id.contextmenu_inspect_element, // Item.INSPECT_ELEMENT R.id.contextmenu_inspect_element, // Item.INSPECT_ELEMENT
@@ -117,7 +117,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr
}; };
/** Mapping from {@link Item} to the ID of the string that describes the action of the item. */ /** Mapping from {@link Item} to the ID of the string that describes the action of the item. */
@@ -218,6 +220,7 @@ class ChromeContextMenuItem { @@ -226,6 +228,7 @@ class ChromeContextMenuItem {
R.string.contextmenu_share_page, // Item.SHARE_PAGE R.string.contextmenu_share_page, // Item.SHARE_PAGE
R.string.contextmenu_print_page, // Item.PRINT_PAGE R.string.contextmenu_print_page, // Item.PRINT_PAGE
R.string.contextmenu_inspect_element, // Item.INSPECT_ELEMENT R.string.contextmenu_inspect_element, // Item.INSPECT_ELEMENT
@@ -128,7 +128,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr
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 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java
@@ -442,6 +442,9 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator { @@ -447,6 +447,9 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
} }
if (mParams.isAnchor()) { if (mParams.isAnchor()) {
ModelList linkGroup = new ModelList(); ModelList linkGroup = new ModelList();
@@ -138,7 +138,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr
if (FirstRunStatus.getFirstRunFlowComplete() if (FirstRunStatus.getFirstRunFlowComplete()
&& !isEmptyUrl(mParams.getUrl()) && !isEmptyUrl(mParams.getUrl())
&& UrlUtilities.isAcceptedScheme(mParams.getUrl())) { && UrlUtilities.isAcceptedScheme(mParams.getUrl())) {
@@ -1026,6 +1029,8 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator { @@ -1039,6 +1042,8 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
getProfile(), getProfile(),
false); false);
}); });
@@ -150,7 +150,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java
@@ -369,6 +369,14 @@ public class TabContextMenuItemDelegate implements ContextMenuItemDelegate { @@ -370,6 +370,14 @@ public class TabContextMenuItemDelegate implements ContextMenuItemDelegate {
mTab.loadUrl(loadUrlParams); mTab.loadUrl(loadUrlParams);
} }
@@ -168,7 +168,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextM
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc 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 --- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc +++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -419,6 +419,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { @@ -429,6 +429,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
&kTabGroupParityBottomSheetAndroid, &kTabGroupParityBottomSheetAndroid,
&kTabModelInitFixes, &kTabModelInitFixes,
&kTabStorageSqlitePrototype, &kTabStorageSqlitePrototype,
@@ -179,7 +179,7 @@ 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 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 --- 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 +++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
@@ -494,6 +494,8 @@ public abstract class ChromeFeatureList { @@ -503,6 +503,8 @@ public abstract class ChromeFeatureList {
"DisableToolbarSwipeUp"; "DisableToolbarSwipeUp";
public static final String MOVE_TOP_TOOLBAR_TO_BOTTOM = public static final String MOVE_TOP_TOOLBAR_TO_BOTTOM =
"MoveTopToolbarToBottom"; "MoveTopToolbarToBottom";
@@ -188,7 +188,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
public static final String NEW_TAB_PAGE_CUSTOMIZATION_TOOLBAR_BUTTON = public static final String NEW_TAB_PAGE_CUSTOMIZATION_TOOLBAR_BUTTON =
"NewTabPageCustomizationToolbarButton"; "NewTabPageCustomizationToolbarButton";
public static final String NEW_TAB_PAGE_CUSTOMIZATION_V2 = "NewTabPageCustomizationV2"; public static final String NEW_TAB_PAGE_CUSTOMIZATION_V2 = "NewTabPageCustomizationV2";
@@ -988,6 +990,8 @@ public abstract class ChromeFeatureList { @@ -1035,6 +1037,8 @@ public abstract class ChromeFeatureList {
newCachedFlag(DISABLE_TOOLBAR_SWIPE_UP, false); newCachedFlag(DISABLE_TOOLBAR_SWIPE_UP, false);
public static final CachedFlag sMoveTopToolbarToBottom = public static final CachedFlag sMoveTopToolbarToBottom =
newCachedFlag(MOVE_TOP_TOOLBAR_TO_BOTTOM, false); newCachedFlag(MOVE_TOP_TOOLBAR_TO_BOTTOM, false);
@@ -197,7 +197,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
public static final CachedFlag sPaintPreviewDemo = newCachedFlag(PAINT_PREVIEW_DEMO, false); public static final CachedFlag sPaintPreviewDemo = newCachedFlag(PAINT_PREVIEW_DEMO, false);
public static final CachedFlag sPostGetMyMemoryStateToBackground = public static final CachedFlag sPostGetMyMemoryStateToBackground =
newCachedFlag(POST_GET_MEMORY_PRESSURE_TO_BACKGROUND, true); newCachedFlag(POST_GET_MEMORY_PRESSURE_TO_BACKGROUND, true);
@@ -1228,6 +1232,7 @@ public abstract class ChromeFeatureList { @@ -1289,6 +1293,7 @@ public abstract class ChromeFeatureList {
sTopControlsRefactor, sTopControlsRefactor,
sTouchToSearchCallout, sTouchToSearchCallout,
sTraceBinderIpc, sTraceBinderIpc,
@@ -208,7 +208,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd 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 --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -1596,6 +1596,12 @@ Your Google account may have other forms of browsing history like searches and a @@ -1548,6 +1548,12 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_DISABLE_TOOLBAR_SWIPE_UP" desc="Summary of the preference that allows the user to disable toolbar swipeup."> <message name="IDS_DISABLE_TOOLBAR_SWIPE_UP" desc="Summary of the preference that allows the user to disable toolbar swipeup.">
Disable toolbar swipe up Disable toolbar swipe up
</message> </message>
@@ -221,7 +221,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
<!-- Safety check --> <!-- Safety check -->
<message name="IDS_PREFS_SAFETY_CHECK" desc="Title of the Safety check element in settings, allowing the user to check multiple areas of browser safety. [CHAR_LIMIT=32]"> <message name="IDS_PREFS_SAFETY_CHECK" desc="Title of the Safety check element in settings, allowing the user to check multiple areas of browser safety. [CHAR_LIMIT=32]">
@@ -3237,6 +3243,9 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>delete the Chrome d @@ -3189,6 +3195,9 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>delete the Chrome d
<message name="IDS_CONTEXTMENU_OPEN_IN_NEW_CHROME_TAB" desc="Context sensitive menu item to open the selected link in a new Chrome tab from Chrome Custom Tab. [CHAR_LIMIT=30]"> <message name="IDS_CONTEXTMENU_OPEN_IN_NEW_CHROME_TAB" desc="Context sensitive menu item to open the selected link in a new Chrome tab from Chrome Custom Tab. [CHAR_LIMIT=30]">
Open in new Chrome tab Open in new Chrome tab
</message> </message>
@@ -344,7 +344,7 @@ new file mode 100644
diff --git a/third_party/blink/renderer/core/html/html_anchor_element.cc b/third_party/blink/renderer/core/html/html_anchor_element.cc diff --git a/third_party/blink/renderer/core/html/html_anchor_element.cc b/third_party/blink/renderer/core/html/html_anchor_element.cc
--- a/third_party/blink/renderer/core/html/html_anchor_element.cc --- a/third_party/blink/renderer/core/html/html_anchor_element.cc
+++ b/third_party/blink/renderer/core/html/html_anchor_element.cc +++ b/third_party/blink/renderer/core/html/html_anchor_element.cc
@@ -66,6 +66,7 @@ @@ -67,6 +67,7 @@
#include "third_party/blink/renderer/core/loader/render_blocking_resource_manager.h" #include "third_party/blink/renderer/core/loader/render_blocking_resource_manager.h"
#include "third_party/blink/renderer/core/navigation_api/navigation_api.h" #include "third_party/blink/renderer/core/navigation_api/navigation_api.h"
#include "third_party/blink/renderer/core/page/chrome_client.h" #include "third_party/blink/renderer/core/page/chrome_client.h"
@@ -352,7 +352,7 @@ diff --git a/third_party/blink/renderer/core/html/html_anchor_element.cc b/third
#include "third_party/blink/renderer/core/page/page.h" #include "third_party/blink/renderer/core/page/page.h"
#include "third_party/blink/renderer/core/scroll/scroll_into_view_util.h" #include "third_party/blink/renderer/core/scroll/scroll_into_view_util.h"
#include "third_party/blink/renderer/core/speculation_rules/document_speculation_rules.h" #include "third_party/blink/renderer/core/speculation_rules/document_speculation_rules.h"
@@ -501,6 +502,17 @@ void HTMLAnchorElementBase::NavigateToHyperlink( @@ -467,6 +468,17 @@ void HTMLAnchorElementBase::NavigateToHyperlink(
bool is_trusted, bool is_trusted,
base::TimeTicks platform_time_stamp, base::TimeTicks platform_time_stamp,
KURL completed_url) { KURL completed_url) {
@@ -370,7 +370,7 @@ diff --git a/third_party/blink/renderer/core/html/html_anchor_element.cc b/third
LocalDOMWindow* window = GetDocument().domWindow(); LocalDOMWindow* window = GetDocument().domWindow();
if (!window) { if (!window) {
return; return;
@@ -591,6 +603,15 @@ void HTMLAnchorElementBase::NavigateToHyperlink( @@ -557,6 +569,15 @@ void HTMLAnchorElementBase::NavigateToHyperlink(
frame_request.SetImpression(impression); frame_request.SetImpression(impression);
} }
@@ -386,7 +386,7 @@ diff --git a/third_party/blink/renderer/core/html/html_anchor_element.cc b/third
Frame* target_frame = Frame* target_frame =
frame->Tree().FindOrCreateFrameForNavigation(frame_request, target).frame; frame->Tree().FindOrCreateFrameForNavigation(frame_request, target).frame;
@@ -634,7 +655,7 @@ Element* HTMLAnchorElementBase::InterestForElement() const { @@ -600,7 +621,7 @@ Element* HTMLAnchorElementBase::InterestForElement() const {
html_names::kInterestforAttr); html_names::kInterestforAttr);
} }
@@ -395,25 +395,25 @@ diff --git a/third_party/blink/renderer/core/html/html_anchor_element.cc b/third
event.SetDefaultHandled(); event.SetDefaultHandled();
LocalDOMWindow* window = GetDocument().domWindow(); LocalDOMWindow* window = GetDocument().domWindow();
@@ -730,13 +751,12 @@ void HTMLAnchorElementBase::HandleClick(MouseEvent& event) { @@ -658,13 +679,12 @@ void HTMLAnchorElementBase::HandleClick(MouseEvent& event) {
return; return;
} }
- base::OnceClosure navigate_closure = WTF::BindOnce( - base::OnceClosure navigate_closure = blink::BindOnce(
- &HTMLAnchorElementBase::NavigateToHyperlink, WrapWeakPersistent(this), - &HTMLAnchorElementBase::NavigateToHyperlink, WrapWeakPersistent(this),
- std::move(request), navigation_policy, event.isTrusted(), - std::move(request), navigation_policy, event.isTrusted(),
- event.PlatformTimeStamp(), std::move(completed_url)); - event.PlatformTimeStamp(), std::move(completed_url));
- -
if (navigation_policy == kNavigationPolicyDownload || if (navigation_policy == kNavigationPolicyDownload ||
navigation_policy == kNavigationPolicyLinkPreview) { navigation_policy == kNavigationPolicyLinkPreview) {
+ base::OnceClosure navigate_closure = WTF::BindOnce( + base::OnceClosure navigate_closure = blink::BindOnce(
+ &HTMLAnchorElementBase::NavigateToHyperlink, WrapWeakPersistent(this), + &HTMLAnchorElementBase::NavigateToHyperlink, WrapWeakPersistent(this),
+ std::move(request), navigation_policy, event.isTrusted(), + std::move(request), navigation_policy, event.isTrusted(),
+ event.PlatformTimeStamp(), std::move(completed_url)); + event.PlatformTimeStamp(), std::move(completed_url));
// We distinguish single/double click with some modifiers. // We distinguish single/double click with some modifiers.
// See the comment of `EventHandler.delayed_navigation_task_handle_`. // See the comment of `EventHandler.delayed_navigation_task_handle_`.
auto task_handle = PostDelayedCancellableTask( auto task_handle = PostDelayedCancellableTask(
@@ -746,7 +766,9 @@ void HTMLAnchorElementBase::HandleClick(MouseEvent& event) { @@ -674,7 +694,9 @@ void HTMLAnchorElementBase::HandleClick(MouseEvent& event) {
frame->GetEventHandler().SetDelayedNavigationTaskHandle( frame->GetEventHandler().SetDelayedNavigationTaskHandle(
std::move(task_handle)); std::move(task_handle));
} else { } else {
@@ -459,7 +459,7 @@ diff --git a/third_party/blink/renderer/core/html/html_image_element.cc b/third_
#include "third_party/blink/renderer/core/frame/attribution_src_loader.h" #include "third_party/blink/renderer/core/frame/attribution_src_loader.h"
#include "third_party/blink/renderer/core/frame/deprecation/deprecation.h" #include "third_party/blink/renderer/core/frame/deprecation/deprecation.h"
#include "third_party/blink/renderer/core/frame/local_dom_window.h" #include "third_party/blink/renderer/core/frame/local_dom_window.h"
@@ -64,6 +65,7 @@ @@ -65,6 +66,7 @@
#include "third_party/blink/renderer/core/media_type_names.h" #include "third_party/blink/renderer/core/media_type_names.h"
#include "third_party/blink/renderer/core/page/chrome_client.h" #include "third_party/blink/renderer/core/page/chrome_client.h"
#include "third_party/blink/renderer/core/page/page.h" #include "third_party/blink/renderer/core/page/page.h"
@@ -467,7 +467,7 @@ diff --git a/third_party/blink/renderer/core/html/html_image_element.cc b/third_
#include "third_party/blink/renderer/core/paint/timing/paint_timing.h" #include "third_party/blink/renderer/core/paint/timing/paint_timing.h"
#include "third_party/blink/renderer/core/probe/core_probes.h" #include "third_party/blink/renderer/core/probe/core_probes.h"
#include "third_party/blink/renderer/core/resize_observer/resize_observer_entry.h" #include "third_party/blink/renderer/core/resize_observer/resize_observer_entry.h"
@@ -815,6 +817,21 @@ void HTMLImageElement::DidFinishLifecycleUpdate( @@ -786,6 +788,21 @@ void HTMLImageElement::DidFinishLayout() {
} }
} }
@@ -492,7 +492,7 @@ diff --git a/third_party/blink/renderer/core/html/html_image_element.cc b/third_
diff --git a/third_party/blink/renderer/core/html/html_image_element.h b/third_party/blink/renderer/core/html/html_image_element.h diff --git a/third_party/blink/renderer/core/html/html_image_element.h b/third_party/blink/renderer/core/html/html_image_element.h
--- a/third_party/blink/renderer/core/html/html_image_element.h --- a/third_party/blink/renderer/core/html/html_image_element.h
+++ b/third_party/blink/renderer/core/html/html_image_element.h +++ b/third_party/blink/renderer/core/html/html_image_element.h
@@ -215,6 +215,8 @@ class CORE_EXPORT HTMLImageElement @@ -216,6 +216,8 @@ class CORE_EXPORT HTMLImageElement
void DidAddUserAgentShadowRoot(ShadowRoot&) override; void DidAddUserAgentShadowRoot(ShadowRoot&) override;
void AdjustStyle(ComputedStyleBuilder&) override; void AdjustStyle(ComputedStyleBuilder&) override;
@@ -504,7 +504,7 @@ diff --git a/third_party/blink/renderer/core/html/html_image_element.h b/third_p
diff --git a/third_party/blink/renderer/core/page/context_menu_controller.cc b/third_party/blink/renderer/core/page/context_menu_controller.cc diff --git a/third_party/blink/renderer/core/page/context_menu_controller.cc b/third_party/blink/renderer/core/page/context_menu_controller.cc
--- a/third_party/blink/renderer/core/page/context_menu_controller.cc --- a/third_party/blink/renderer/core/page/context_menu_controller.cc
+++ b/third_party/blink/renderer/core/page/context_menu_controller.cc +++ b/third_party/blink/renderer/core/page/context_menu_controller.cc
@@ -200,14 +200,16 @@ void ContextMenuController::DocumentDetached(Document* document) { @@ -200,15 +200,17 @@ void ContextMenuController::DocumentDetached(Document* document) {
} }
} }
@@ -514,7 +514,8 @@ diff --git a/third_party/blink/renderer/core/page/context_menu_controller.cc b/t
+ if (!base::FeatureList::IsEnabled(features::kShowAlwaysContextMenuOnLinks)) { + if (!base::FeatureList::IsEnabled(features::kShowAlwaysContextMenuOnLinks)) {
+ DCHECK(mouse_event->type() == event_type_names::kContextmenu); + DCHECK(mouse_event->type() == event_type_names::kContextmenu);
+ } + }
LocalFrame* frame = mouse_event->target()->ToNode()->GetDocument().GetFrame(); LocalFrame* frame =
mouse_event->RawTarget()->ToNode()->GetDocument().GetFrame();
PhysicalOffset location = PhysicalOffset location =
PhysicalOffset::FromPointFRound(mouse_event->AbsoluteLocation()); PhysicalOffset::FromPointFRound(mouse_event->AbsoluteLocation());
@@ -524,7 +525,7 @@ diff --git a/third_party/blink/renderer/core/page/context_menu_controller.cc b/t
mouse_event->SetDefaultHandled(); mouse_event->SetDefaultHandled();
} }
@@ -432,7 +434,8 @@ bool ContextMenuController::ShouldShowContextMenuFromTouch( @@ -433,7 +435,8 @@ bool ContextMenuController::ShouldShowContextMenuFromTouch(
bool ContextMenuController::ShowContextMenu(LocalFrame* frame, bool ContextMenuController::ShowContextMenu(LocalFrame* frame,
const PhysicalOffset& point, const PhysicalOffset& point,
WebMenuSourceType source_type, WebMenuSourceType source_type,
@@ -534,7 +535,7 @@ diff --git a/third_party/blink/renderer/core/page/context_menu_controller.cc b/t
// Displaying the context menu in this function is a big hack as we don't // Displaying the context menu in this function is a big hack as we don't
// have context, i.e. whether this is being invoked via a script or in // have context, i.e. whether this is being invoked via a script or in
// response to user input (Mouse event WM_RBUTTONDOWN, // response to user input (Mouse event WM_RBUTTONDOWN,
@@ -455,6 +458,16 @@ bool ContextMenuController::ShowContextMenu(LocalFrame* frame, @@ -456,6 +459,16 @@ bool ContextMenuController::ShowContextMenu(LocalFrame* frame,
if (!result.InnerNodeOrImageMapImage()) if (!result.InnerNodeOrImageMapImage())
return false; return false;
@@ -551,7 +552,7 @@ diff --git a/third_party/blink/renderer/core/page/context_menu_controller.cc b/t
// Clear any previously set cached results if we are resetting the hit test // Clear any previously set cached results if we are resetting the hit test
// result. // result.
image_selection_cached_result_ = nullptr; image_selection_cached_result_ = nullptr;
@@ -825,7 +838,7 @@ bool ContextMenuController::ShowContextMenu(LocalFrame* frame, @@ -837,7 +850,7 @@ bool ContextMenuController::ShowContextMenu(LocalFrame* frame,
SetAutofillData(result.InnerNode(), data); SetAutofillData(result.InnerNode(), data);
+3 -3
View File
@@ -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 diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc --- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc
@@ -166,6 +166,7 @@ @@ -169,6 +169,7 @@
#include "components/sensitive_content/features.h" #include "components/sensitive_content/features.h"
#include "components/services/heap_profiling/public/cpp/switches.h" #include "components/services/heap_profiling/public/cpp/switches.h"
#include "components/services/storage/public/cpp/buckets/bucket_info.h" #include "components/services/storage/public/cpp/buckets/bucket_info.h"
@@ -88,7 +88,7 @@ diff --git a/components/feature_engagement/internal/tracker_impl.cc b/components
diff --git a/components/feature_engagement/public/feature_configurations.cc b/components/feature_engagement/public/feature_configurations.cc diff --git a/components/feature_engagement/public/feature_configurations.cc b/components/feature_engagement/public/feature_configurations.cc
--- a/components/feature_engagement/public/feature_configurations.cc --- a/components/feature_engagement/public/feature_configurations.cc
+++ b/components/feature_engagement/public/feature_configurations.cc +++ b/components/feature_engagement/public/feature_configurations.cc
@@ -11,6 +11,7 @@ @@ -6,6 +6,7 @@
#include "base/strings/string_util.h" #include "base/strings/string_util.h"
#include "build/build_config.h" #include "build/build_config.h"
@@ -96,7 +96,7 @@ diff --git a/components/feature_engagement/public/feature_configurations.cc b/co
#include "components/feature_engagement/public/configuration.h" #include "components/feature_engagement/public/configuration.h"
#include "components/feature_engagement/public/event_constants.h" #include "components/feature_engagement/public/event_constants.h"
#include "components/feature_engagement/public/feature_constants.h" #include "components/feature_engagement/public/feature_constants.h"
@@ -118,6 +119,12 @@ std::optional<FeatureConfig> GetClientSideFeatureConfig( @@ -113,6 +114,12 @@ std::optional<FeatureConfig> GetClientSideFeatureConfig(
} }
#endif // BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) #endif // BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN)
@@ -12,7 +12,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/settings/SettingsActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java
@@ -54,6 +54,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.BottomSheetController;
import org.chromium.components.browser_ui.bottomsheet.BottomSheetControllerFactory; import org.chromium.components.browser_ui.bottomsheet.BottomSheetControllerFactory;
import org.chromium.components.browser_ui.bottomsheet.ManagedBottomSheetController; import org.chromium.components.browser_ui.bottomsheet.ManagedBottomSheetController;
@@ -20,7 +20,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Settin
import org.chromium.components.browser_ui.modaldialog.AppModalPresenter; import org.chromium.components.browser_ui.modaldialog.AppModalPresenter;
import org.chromium.components.browser_ui.settings.EmbeddableSettingsPage; import org.chromium.components.browser_ui.settings.EmbeddableSettingsPage;
import org.chromium.components.browser_ui.settings.SettingsFragment; import org.chromium.components.browser_ui.settings.SettingsFragment;
@@ -469,8 +470,12 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity @@ -485,8 +486,12 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity
finishCurrentSettings(mainFragment); finishCurrentSettings(mainFragment);
return true; return true;
} else if (item.getItemId() == R.id.menu_id_general_help) { } else if (item.getItemId() == R.id.menu_id_general_help) {
@@ -15,7 +15,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/base/android/content_uri_utils.cc b/base/android/content_uri_utils.cc diff --git a/base/android/content_uri_utils.cc b/base/android/content_uri_utils.cc
--- a/base/android/content_uri_utils.cc --- a/base/android/content_uri_utils.cc
+++ b/base/android/content_uri_utils.cc +++ b/base/android/content_uri_utils.cc
@@ -136,6 +136,16 @@ void JNI_ContentUriUtils_AddFileInfoToVector(JNIEnv* env, @@ -137,6 +137,16 @@ void JNI_ContentUriUtils_AddFileInfoToVector(JNIEnv* env,
Time::FromMillisecondsSinceUnixEpoch(last_modified)); Time::FromMillisecondsSinceUnixEpoch(last_modified));
} }
+10 -10
View File
@@ -52,7 +52,7 @@ new file mode 100644
+import org.chromium.components.browser_ui.site_settings.BromiteCustomContentSetting; +import org.chromium.components.browser_ui.site_settings.BromiteCustomContentSetting;
+import org.chromium.components.browser_ui.site_settings.ContentSettingsResources; +import org.chromium.components.browser_ui.site_settings.ContentSettingsResources;
+import org.chromium.components.browser_ui.site_settings.SiteSettingsCategory; +import org.chromium.components.browser_ui.site_settings.SiteSettingsCategory;
+import org.chromium.components.content_settings.ContentSettingValues; +import org.chromium.components.content_settings.ContentSetting;
+import org.chromium.components.content_settings.ContentSettingsType; +import org.chromium.components.content_settings.ContentSettingsType;
+import org.chromium.content_public.browser.BrowserContextHandle; +import org.chromium.content_public.browser.BrowserContextHandle;
+ +
@@ -65,8 +65,8 @@ new file mode 100644
+public class BromiteWebGLContentSetting extends BromiteCustomContentSetting { +public class BromiteWebGLContentSetting extends BromiteCustomContentSetting {
+ public BromiteWebGLContentSetting() { + public BromiteWebGLContentSetting() {
+ super(/*contentSettingsType*/ ContentSettingsType.WEBGL, + super(/*contentSettingsType*/ ContentSettingsType.WEBGL,
+ /*defaultEnabledValue*/ ContentSettingValues.ALLOW, + /*defaultEnabledValue*/ ContentSetting.ALLOW,
+ /*defaultDisabledValue*/ ContentSettingValues.BLOCK, + /*defaultDisabledValue*/ ContentSetting.BLOCK,
+ /*allowException*/ true, + /*allowException*/ true,
+ /*preferenceKey*/ "webgl", + /*preferenceKey*/ "webgl",
+ /*profilePrefKey*/ "webgl"); + /*profilePrefKey*/ "webgl");
@@ -85,11 +85,11 @@ new file mode 100644
+ } + }
+ +
+ @Override + @Override
+ public int getCategorySummary(@Nullable @ContentSettingValues int value) { + public int getCategorySummary(@Nullable @ContentSetting int value) {
+ switch (value) { + switch (value) {
+ case ContentSettingValues.ALLOW: + case ContentSetting.ALLOW:
+ return R.string.website_settings_category_webgl_enabled; + return R.string.website_settings_category_webgl_enabled;
+ case ContentSettingValues.BLOCK: + case ContentSetting.BLOCK:
+ return R.string.website_settings_category_webgl_disabled; + return R.string.website_settings_category_webgl_disabled;
+ default: + default:
+ return 0; + return 0;
@@ -117,8 +117,8 @@ new file mode 100644
+ } + }
+ +
+ @Override + @Override
+ public @Nullable Boolean considerException(SiteSettingsCategory category, @ContentSettingValues int value) { + public @Nullable Boolean considerException(SiteSettingsCategory category, @ContentSetting int value) {
+ return value != ContentSettingValues.BLOCK; + return value != ContentSetting.BLOCK;
+ } + }
+} +}
diff --git a/components/browser_ui/strings/bromite_content_settings/webgl.grdp b/components/browser_ui/strings/bromite_content_settings/webgl.grdp diff --git a/components/browser_ui/strings/bromite_content_settings/webgl.grdp b/components/browser_ui/strings/bromite_content_settings/webgl.grdp
@@ -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(), FormatWebGLStatusString("ErrorMessage", info.error_message.Utf8().c_str(),
builder); builder);
builder.Append('.'); builder.Append('.');
@@ -693,6 +681,12 @@ WebGLRenderingContextBase::CreateWebGraphicsContext3DProvider( @@ -694,6 +682,12 @@ WebGLRenderingContextBase::CreateWebGraphicsContext3DProvider(
const CanvasContextCreationAttributesCore& attributes, const CanvasContextCreationAttributesCore& attributes,
Platform::ContextType context_type, Platform::ContextType context_type,
Platform::GraphicsInfo* graphics_info) { 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 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 --- a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.h
+++ b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.h +++ b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.h
@@ -1951,6 +1951,8 @@ class MODULES_EXPORT WebGLRenderingContextBase @@ -1959,6 +1959,8 @@ class MODULES_EXPORT WebGLRenderingContextBase
DOMArrayBufferView* pixels, DOMArrayBufferView* pixels,
int64_t offset); int64_t offset);
+11 -11
View File
@@ -49,7 +49,7 @@ new file mode 100644
+import org.chromium.components.browser_ui.site_settings.BromiteCustomContentSetting; +import org.chromium.components.browser_ui.site_settings.BromiteCustomContentSetting;
+import org.chromium.components.browser_ui.site_settings.ContentSettingsResources; +import org.chromium.components.browser_ui.site_settings.ContentSettingsResources;
+import org.chromium.components.browser_ui.site_settings.SiteSettingsCategory; +import org.chromium.components.browser_ui.site_settings.SiteSettingsCategory;
+import org.chromium.components.content_settings.ContentSettingValues; +import org.chromium.components.content_settings.ContentSetting;
+import org.chromium.components.content_settings.ContentSettingsType; +import org.chromium.components.content_settings.ContentSettingsType;
+import org.chromium.content_public.browser.BrowserContextHandle; +import org.chromium.content_public.browser.BrowserContextHandle;
+ +
@@ -62,8 +62,8 @@ new file mode 100644
+public class BromiteWebRTCContentSetting extends BromiteCustomContentSetting { +public class BromiteWebRTCContentSetting extends BromiteCustomContentSetting {
+ public BromiteWebRTCContentSetting() { + public BromiteWebRTCContentSetting() {
+ super(/*contentSettingsType*/ ContentSettingsType.WEBRTC, + super(/*contentSettingsType*/ ContentSettingsType.WEBRTC,
+ /*defaultEnabledValue*/ ContentSettingValues.ALLOW, + /*defaultEnabledValue*/ ContentSetting.ALLOW,
+ /*defaultDisabledValue*/ ContentSettingValues.BLOCK, + /*defaultDisabledValue*/ ContentSetting.BLOCK,
+ /*allowException*/ true, + /*allowException*/ true,
+ /*preferenceKey*/ "webrtc", + /*preferenceKey*/ "webrtc",
+ /*profilePrefKey*/ "webrtc"); + /*profilePrefKey*/ "webrtc");
@@ -82,11 +82,11 @@ new file mode 100644
+ } + }
+ +
+ @Override + @Override
+ public int getCategorySummary(@Nullable @ContentSettingValues int value) { + public int getCategorySummary(@Nullable @ContentSetting int value) {
+ switch (value) { + switch (value) {
+ case ContentSettingValues.ALLOW: + case ContentSetting.ALLOW:
+ return R.string.website_settings_category_webrtc_enabled; + return R.string.website_settings_category_webrtc_enabled;
+ case ContentSettingValues.BLOCK: + case ContentSetting.BLOCK:
+ return R.string.website_settings_category_webrtc_disabled; + return R.string.website_settings_category_webrtc_disabled;
+ default: + default:
+ // this will cause a runtime exception + // this will cause a runtime exception
@@ -115,8 +115,8 @@ new file mode 100644
+ } + }
+ +
+ @Override + @Override
+ public @Nullable Boolean considerException(SiteSettingsCategory category, @ContentSettingValues int value) { + public @Nullable Boolean considerException(SiteSettingsCategory category, @ContentSetting int value) {
+ return value != ContentSettingValues.BLOCK; + return value != ContentSetting.BLOCK;
+ } + }
+} +}
diff --git a/components/browser_ui/strings/bromite_content_settings/webrtc.grdp b/components/browser_ui/strings/bromite_content_settings/webrtc.grdp diff --git a/components/browser_ui/strings/bromite_content_settings/webrtc.grdp b/components/browser_ui/strings/bromite_content_settings/webrtc.grdp
@@ -195,7 +195,7 @@ diff --git a/third_party/blink/renderer/modules/peerconnection/peer_connection_d
#include "third_party/blink/public/platform/web_url.h" #include "third_party/blink/public/platform/web_url.h"
#include "third_party/blink/public/web/modules/mediastream/media_stream_video_source.h" #include "third_party/blink/public/web/modules/mediastream/media_stream_video_source.h"
#include "third_party/blink/public/web/web_document.h" #include "third_party/blink/public/web/web_document.h"
@@ -1062,6 +1063,11 @@ PeerConnectionDependencyFactory::CreatePortAllocator( @@ -1023,6 +1024,11 @@ PeerConnectionDependencyFactory::CreatePortAllocator(
// |request_multiple_routes|. Whether local IP addresses could be // |request_multiple_routes|. Whether local IP addresses could be
// collected depends on if mic/camera permission is granted for this // collected depends on if mic/camera permission is granted for this
// origin. // origin.
@@ -220,7 +220,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/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_insertable_streams.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_rtc_rtcp_parameters.h" #include "third_party/blink/renderer/bindings/modules/v8/v8_rtc_rtcp_parameters.h"
@@ -288,6 +291,14 @@ RTCRtpCapabilities* RTCRtpReceiver::getCapabilities(ScriptState* state, @@ -287,6 +290,14 @@ RTCRtpCapabilities* RTCRtpReceiver::getCapabilities(ScriptState* state,
if (kind != "audio" && kind != "video") if (kind != "audio" && kind != "video")
return nullptr; return nullptr;
@@ -248,7 +248,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/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_encoding_options.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_rtc_insertable_streams.h" #include "third_party/blink/renderer/bindings/modules/v8/v8_rtc_insertable_streams.h"
@@ -1035,6 +1038,14 @@ RTCRtpCapabilities* RTCRtpSender::getCapabilities(ScriptState* state, @@ -1034,6 +1037,14 @@ RTCRtpCapabilities* RTCRtpSender::getCapabilities(ScriptState* state,
if (kind != "audio" && kind != "video") if (kind != "audio" && kind != "video")
return nullptr; return nullptr;
@@ -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 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 --- a/content/browser/devtools/protocol/network_handler.cc
+++ b/content/browser/devtools/protocol/network_handler.cc +++ b/content/browser/devtools/protocol/network_handler.cc
@@ -1496,6 +1496,7 @@ String BuildReportStatus(const net::ReportingReport::Status status) { @@ -1516,6 +1516,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<GURL> ComputeReportingURLs(RenderFrameHostImpl* frame_host) { std::vector<GURL> ComputeReportingURLs(RenderFrameHostImpl* frame_host) {
std::vector<GURL> urls; std::vector<GURL> urls;
frame_host->ForEachRenderFrameHostImplWithAction( frame_host->ForEachRenderFrameHostImplWithAction(
@@ -1509,6 +1510,7 @@ std::vector<GURL> ComputeReportingURLs(RenderFrameHostImpl* frame_host) { @@ -1529,6 +1530,7 @@ std::vector<GURL> ComputeReportingURLs(RenderFrameHostImpl* frame_host) {
}); });
return urls; return urls;
} }
@@ -126,7 +126,7 @@ 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 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 --- a/content/browser/renderer_host/render_frame_host_impl.cc
+++ b/content/browser/renderer_host/render_frame_host_impl.cc +++ b/content/browser/renderer_host/render_frame_host_impl.cc
@@ -16153,12 +16153,6 @@ void RenderFrameHostImpl::MaybeGenerateCrashReport( @@ -16185,12 +16185,6 @@ void RenderFrameHostImpl::MaybeGenerateCrashReport(
} }
} }
} }
@@ -308,7 +308,7 @@ diff --git a/net/reporting/reporting_service.cc b/net/reporting/reporting_servic
diff --git a/services/network/network_context.h b/services/network/network_context.h diff --git a/services/network/network_context.h b/services/network/network_context.h
--- a/services/network/network_context.h --- a/services/network/network_context.h
+++ b/services/network/network_context.h +++ b/services/network/network_context.h
@@ -494,14 +494,14 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext @@ -501,14 +501,14 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext
const GURL& url, const GURL& url,
const std::optional<base::UnguessableToken>& reporting_source, const std::optional<base::UnguessableToken>& reporting_source,
const net::NetworkAnonymizationKey& network_anonymization_key, const net::NetworkAnonymizationKey& network_anonymization_key,
@@ -351,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 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 --- a/services/network/public/mojom/network_context.mojom
+++ b/services/network/public/mojom/network_context.mojom +++ b/services/network/public/mojom/network_context.mojom
@@ -1240,6 +1240,7 @@ interface NetworkContext { @@ -1264,6 +1264,7 @@ interface NetworkContext {
// provided `network_anonymization_key`. // provided `network_anonymization_key`.
// //
// Spec: https://w3c.github.io/reporting/#concept-reports // Spec: https://w3c.github.io/reporting/#concept-reports
@@ -359,7 +359,7 @@ diff --git a/services/network/public/mojom/network_context.mojom b/services/netw
QueueReport(string type, QueueReport(string type,
string group, string group,
url.mojom.Url url, url.mojom.Url url,
@@ -1247,6 +1248,7 @@ interface NetworkContext { @@ -1271,6 +1272,7 @@ interface NetworkContext {
NetworkAnonymizationKey network_anonymization_key, NetworkAnonymizationKey network_anonymization_key,
mojo_base.mojom.DictionaryValue body); mojo_base.mojom.DictionaryValue body);
@@ -367,7 +367,7 @@ diff --git a/services/network/public/mojom/network_context.mojom b/services/netw
QueueEnterpriseReport(string type, QueueEnterpriseReport(string type,
string group, string group,
url.mojom.Url url, url.mojom.Url url,
@@ -1257,6 +1259,7 @@ interface NetworkContext { @@ -1281,6 +1283,7 @@ interface NetworkContext {
// Note that this queued report will never be delivered if no reporting // Note that this queued report will never be delivered if no reporting
// endpoint matching is registered for with the provided // endpoint matching is registered for with the provided
// `network_anonymization_key`. // `network_anonymization_key`.
@@ -386,7 +386,7 @@ diff --git a/third_party/blink/renderer/core/frame/csp/content_security_policy.c
#include "base/containers/contains.h" #include "base/containers/contains.h"
#include "base/debug/dump_without_crashing.h" #include "base/debug/dump_without_crashing.h"
#include "base/feature_list.h" #include "base/feature_list.h"
@@ -1344,6 +1345,7 @@ void ContentSecurityPolicy::ReportViolation( @@ -1356,6 +1357,7 @@ void ContentSecurityPolicy::ReportViolation(
ShouldBypassContentSecurityPolicy(KURL(violation_data->sourceFile()))) { ShouldBypassContentSecurityPolicy(KURL(violation_data->sourceFile()))) {
return; return;
} }
@@ -394,7 +394,7 @@ diff --git a/third_party/blink/renderer/core/frame/csp/content_security_policy.c
PostViolationReport(violation_data, context_frame, report_endpoints, PostViolationReport(violation_data, context_frame, report_endpoints,
use_reporting_api); use_reporting_api);
@@ -1351,6 +1353,7 @@ void ContentSecurityPolicy::ReportViolation( @@ -1363,6 +1365,7 @@ void ContentSecurityPolicy::ReportViolation(
// `context_frame` (i.e. we're not processing 'frame-ancestors'). // `context_frame` (i.e. we're not processing 'frame-ancestors').
if (delegate_ && !context_frame) if (delegate_ && !context_frame)
delegate_->DispatchViolationEvent(*violation_data, element); delegate_->DispatchViolationEvent(*violation_data, element);
@@ -413,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/cpp/features.h"
#include "services/network/public/mojom/content_security_policy.mojom-blink.h" #include "services/network/public/mojom/content_security_policy.mojom-blink.h"
#include "services/network/public/mojom/source_location.mojom-blink.h" #include "services/network/public/mojom/source_location.mojom-blink.h"
@@ -2836,9 +2837,11 @@ DocumentResourceCoordinator* LocalFrame::GetDocumentResourceCoordinator() { @@ -2860,9 +2861,11 @@ DocumentResourceCoordinator* LocalFrame::GetDocumentResourceCoordinator() {
return CHECK_DEREF(GetDocument()).GetResourceCoordinator(); return CHECK_DEREF(GetDocument()).GetResourceCoordinator();
} }
@@ -547,7 +547,7 @@ diff --git a/third_party/blink/renderer/core/frame/reporting_context.h b/third_p
diff --git a/third_party/blink/renderer/core/frame/reporting_observer.cc b/third_party/blink/renderer/core/frame/reporting_observer.cc diff --git a/third_party/blink/renderer/core/frame/reporting_observer.cc b/third_party/blink/renderer/core/frame/reporting_observer.cc
--- a/third_party/blink/renderer/core/frame/reporting_observer.cc --- a/third_party/blink/renderer/core/frame/reporting_observer.cc
+++ b/third_party/blink/renderer/core/frame/reporting_observer.cc +++ b/third_party/blink/renderer/core/frame/reporting_observer.cc
@@ -62,8 +62,7 @@ void ReportingObserver::QueueReport(Report* report) { @@ -61,8 +61,7 @@ void ReportingObserver::QueueReport(Report* report) {
} }
bool ReportingObserver::ObservedType(const String& type) { bool ReportingObserver::ObservedType(const String& type) {
@@ -24,7 +24,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 diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
--- a/chrome/android/BUILD.gn --- a/chrome/android/BUILD.gn
+++ b/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn
@@ -819,7 +819,6 @@ if (_is_default_toolchain) { @@ -820,7 +820,6 @@ if (_is_default_toolchain) {
"//components/offline_pages/core:offline_page_model_enums_java", "//components/offline_pages/core:offline_page_model_enums_java",
"//components/sharing_message:sharing_dialog_type_generated_enum", "//components/sharing_message:sharing_dialog_type_generated_enum",
"//components/sharing_message:sharing_send_message_result_generated_enum", "//components/sharing_message:sharing_send_message_result_generated_enum",
@@ -65,7 +65,7 @@ diff --git a/chrome/browser/feedback/android/BUILD.gn b/chrome/browser/feedback/
diff --git a/chrome/browser/prefs/chrome_pref_service_factory.cc b/chrome/browser/prefs/chrome_pref_service_factory.cc 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 --- a/chrome/browser/prefs/chrome_pref_service_factory.cc
+++ b/chrome/browser/prefs/chrome_pref_service_factory.cc +++ b/chrome/browser/prefs/chrome_pref_service_factory.cc
@@ -319,7 +319,7 @@ void PrepareFactory( @@ -324,7 +324,7 @@ void PrepareFactory(
policy::BrowserPolicyConnector* policy_connector) { policy::BrowserPolicyConnector* policy_connector) {
factory->SetManagedPolicies(policy_service, policy_connector); factory->SetManagedPolicies(policy_service, policy_connector);
factory->SetRecommendedPolicies(policy_service, policy_connector); factory->SetRecommendedPolicies(policy_service, policy_connector);
@@ -77,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 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 --- a/chrome/browser/profiles/profile_attributes_entry.cc
+++ b/chrome/browser/profiles/profile_attributes_entry.cc +++ b/chrome/browser/profiles/profile_attributes_entry.cc
@@ -471,7 +471,7 @@ bool ProfileAttributesEntry::IsSigninRequired() const { @@ -476,7 +476,7 @@ bool ProfileAttributesEntry::IsSigninRequired() const {
} }
std::string ProfileAttributesEntry::GetSupervisedUserId() const { std::string ProfileAttributesEntry::GetSupervisedUserId() const {
@@ -89,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 diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/profile_impl.cc
--- a/chrome/browser/profiles/profile_impl.cc --- a/chrome/browser/profiles/profile_impl.cc
+++ b/chrome/browser/profiles/profile_impl.cc +++ b/chrome/browser/profiles/profile_impl.cc
@@ -684,10 +684,6 @@ void ProfileImpl::DoFinalInit(CreateMode create_mode) { @@ -683,10 +683,6 @@ void ProfileImpl::DoFinalInit(CreateMode create_mode) {
prefs->SetTime(prefs::kProfileCreationTime, path_creation_time_); prefs->SetTime(prefs::kProfileCreationTime, path_creation_time_);
pref_change_registrar_.Init(prefs); pref_change_registrar_.Init(prefs);
@@ -100,7 +100,7 @@ diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/p
// Changes in the profile avatar. // Changes in the profile avatar.
pref_change_registrar_.Add( pref_change_registrar_.Add(
@@ -1624,6 +1620,7 @@ GURL ProfileImpl::GetHomePage() { @@ -1623,6 +1619,7 @@ GURL ProfileImpl::GetHomePage() {
} }
void ProfileImpl::UpdateSupervisedUserIdInStorage() { void ProfileImpl::UpdateSupervisedUserIdInStorage() {
@@ -111,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 diff --git a/chrome/browser/profiles/profile_manager.cc b/chrome/browser/profiles/profile_manager.cc
--- a/chrome/browser/profiles/profile_manager.cc --- a/chrome/browser/profiles/profile_manager.cc
+++ b/chrome/browser/profiles/profile_manager.cc +++ b/chrome/browser/profiles/profile_manager.cc
@@ -1192,10 +1192,6 @@ void ProfileManager::InitProfileUserPrefs(Profile* profile) { @@ -1190,10 +1190,6 @@ void ProfileManager::InitProfileUserPrefs(Profile* profile) {
profile->GetPrefs()->SetString(prefs::kProfileName, profile_name); profile->GetPrefs()->SetString(prefs::kProfileName, profile_name);
} }
@@ -122,7 +122,7 @@ diff --git a/chrome/browser/profiles/profile_manager.cc b/chrome/browser/profile
} }
void ProfileManager::RegisterTestingProfile(std::unique_ptr<Profile> profile, void ProfileManager::RegisterTestingProfile(std::unique_ptr<Profile> profile,
@@ -1962,9 +1958,6 @@ void ProfileManager::AddProfileToStorage(Profile* profile) { @@ -1955,9 +1951,6 @@ void ProfileManager::AddProfileToStorage(Profile* profile) {
init_params.icon_index = init_params.icon_index =
profile->GetPrefs()->GetInteger(prefs::kProfileAvatarIndex); profile->GetPrefs()->GetInteger(prefs::kProfileAvatarIndex);
@@ -160,7 +160,7 @@ diff --git a/chrome/browser/ui/webui/managed_ui_handler.cc b/chrome/browser/ui/w
diff --git a/chrome/browser/ui/webui/management/management_ui_handler.cc b/chrome/browser/ui/webui/management/management_ui_handler.cc diff --git a/chrome/browser/ui/webui/management/management_ui_handler.cc b/chrome/browser/ui/webui/management/management_ui_handler.cc
--- a/chrome/browser/ui/webui/management/management_ui_handler.cc --- a/chrome/browser/ui/webui/management/management_ui_handler.cc
+++ b/chrome/browser/ui/webui/management/management_ui_handler.cc +++ b/chrome/browser/ui/webui/management/management_ui_handler.cc
@@ -617,10 +617,6 @@ bool ManagementUIHandler::managed() const { @@ -623,10 +623,6 @@ bool ManagementUIHandler::managed() const {
void ManagementUIHandler::RegisterPrefChange( void ManagementUIHandler::RegisterPrefChange(
PrefChangeRegistrar& pref_registrar) { PrefChangeRegistrar& pref_registrar) {
@@ -174,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 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 --- a/components/supervised_user/core/browser/supervised_user_pref_store.cc
+++ b/components/supervised_user/core/browser/supervised_user_pref_store.cc +++ b/components/supervised_user/core/browser/supervised_user_pref_store.cc
@@ -175,6 +175,7 @@ void SupervisedUserPrefStore::OnNewContentFiltersStateAvailable( @@ -172,6 +172,7 @@ void SupervisedUserPrefStore::OnNewContentFiltersStateAvailable(
void SupervisedUserPrefStore::OnNewSettingsAvailable( void SupervisedUserPrefStore::OnNewSettingsAvailable(
const base::Value::Dict& settings) { const base::Value::Dict& settings) {
@@ -185,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 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 --- a/components/supervised_user/core/browser/supervised_user_preferences.cc
+++ b/components/supervised_user/core/browser/supervised_user_preferences.cc +++ b/components/supervised_user/core/browser/supervised_user_preferences.cc
@@ -164,6 +164,10 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) { @@ -160,6 +160,10 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) {
} }
void EnableParentalControls(PrefService& pref_service) { void EnableParentalControls(PrefService& pref_service) {
@@ -196,7 +196,7 @@ diff --git a/components/supervised_user/core/browser/supervised_user_preferences
pref_service.SetString(prefs::kSupervisedUserId, pref_service.SetString(prefs::kSupervisedUserId,
supervised_user::kChildAccountSUID); supervised_user::kChildAccountSUID);
#if BUILDFLAG(IS_CHROMEOS) #if BUILDFLAG(IS_CHROMEOS)
@@ -197,7 +201,7 @@ bool IsSafeSitesEnabled(const PrefService& pref_service) { @@ -187,7 +191,7 @@ bool IsSafeSitesEnabled(const PrefService& pref_service) {
} }
bool IsSubjectToParentalControls(const PrefService& pref_service) { bool IsSubjectToParentalControls(const PrefService& pref_service) {
@@ -208,7 +208,7 @@ diff --git a/components/supervised_user/core/browser/supervised_user_preferences
diff --git a/components/supervised_user/core/browser/supervised_user_service.cc b/components/supervised_user/core/browser/supervised_user_service.cc 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 --- a/components/supervised_user/core/browser/supervised_user_service.cc
+++ b/components/supervised_user/core/browser/supervised_user_service.cc +++ b/components/supervised_user/core/browser/supervised_user_service.cc
@@ -249,6 +249,7 @@ SupervisedUserService::SupervisedUserService( @@ -248,6 +248,7 @@ SupervisedUserService::SupervisedUserService(
} }
void SupervisedUserService::SetSettingsServiceActive(bool active) { void SupervisedUserService::SetSettingsServiceActive(bool active) {
@@ -227,7 +227,7 @@ diff --git a/components/supervised_user/core/common/features.cc b/components/sup
#if BUILDFLAG(IS_IOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ #if BUILDFLAG(IS_IOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
BUILDFLAG(IS_WIN) BUILDFLAG(IS_WIN)
const int kLocalWebApprovalBottomSheetLoadTimeoutDefaultValueMs = 5000; const int kLocalWebApprovalBottomSheetLoadTimeoutDefaultValueMs = 5000;
@@ -170,4 +169,5 @@ bool ClassifyUrlWithoutCredentialsForLocalSupervision() { @@ -164,4 +163,5 @@ bool ClassifyUrlWithoutCredentialsForLocalSupervision() {
#endif #endif
@@ -24,9 +24,9 @@ diff --git a/third_party/blink/renderer/platform/media/web_media_player_impl.cc
void WebMediaPlayerImpl::EnabledAudioTracksChanged( void WebMediaPlayerImpl::EnabledAudioTracksChanged(
std::optional<WebMediaPlayer::TrackId> enabled_track_id) { std::optional<WebMediaPlayer::TrackId> enabled_track_id) {
DCHECK(main_task_runner_->BelongsToCurrentThread()); DCHECK(main_task_runner_->BelongsToCurrentThread());
@@ -3683,7 +3689,10 @@ bool WebMediaPlayerImpl::ShouldPausePlaybackWhenHidden() const { @@ -3679,7 +3685,10 @@ bool WebMediaPlayerImpl::ShouldPausePlaybackWhenHidden() const {
: HasAudio();
const bool preserve_audio = HasUnmutedAudio() || audio_source_provider_->IsAudioBeingCaptured();
// Audio only stream is allowed to play when in background. // Audio only stream is allowed to play when in background.
- if (!HasVideo() && preserve_audio) - if (!HasVideo() && preserve_audio)
+ //pipeline_metadata_.has_video is true for MediaPlayerRenderer, + //pipeline_metadata_.has_video is true for MediaPlayerRenderer,
@@ -39,7 +39,7 @@ diff --git a/third_party/blink/renderer/platform/media/web_media_player_impl.cc
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 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 --- a/third_party/blink/renderer/platform/media/web_media_player_impl.h
+++ b/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 HasVideo() const override;
bool HasAudio() const override; bool HasAudio() const override;
@@ -10,15 +10,15 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java
@@ -24,6 +24,7 @@ import org.chromium.base.metrics.RecordUserAction; @@ -23,6 +23,7 @@ import org.chromium.base.PackageManagerUtils;
import org.chromium.base.supplier.Supplier; import org.chromium.base.metrics.RecordUserAction;
import org.chromium.build.annotations.NullMarked; import org.chromium.build.annotations.NullMarked;
import org.chromium.build.annotations.Nullable; import org.chromium.build.annotations.Nullable;
+import org.chromium.cc.input.BrowserControlsState; +import org.chromium.cc.input.BrowserControlsState;
import org.chromium.chrome.browser.DefaultBrowserInfo; import org.chromium.chrome.browser.DefaultBrowserInfo;
import org.chromium.chrome.browser.IntentHandler; import org.chromium.chrome.browser.IntentHandler;
import org.chromium.chrome.browser.bookmarks.BookmarkManagerOpenerImpl; import org.chromium.chrome.browser.bookmarks.BookmarkManagerOpenerImpl;
@@ -43,6 +44,7 @@ import org.chromium.chrome.browser.preferences.Pref; @@ -42,6 +43,7 @@ import org.chromium.chrome.browser.preferences.Pref;
import org.chromium.chrome.browser.price_tracking.PriceDropNotificationManagerFactory; import org.chromium.chrome.browser.price_tracking.PriceDropNotificationManagerFactory;
import org.chromium.chrome.browser.printing.TabPrinter; import org.chromium.chrome.browser.printing.TabPrinter;
import org.chromium.chrome.browser.profiles.Profile; import org.chromium.chrome.browser.profiles.Profile;
@@ -26,7 +26,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextM
import org.chromium.chrome.browser.tabmodel.TabModelSelector; import org.chromium.chrome.browser.tabmodel.TabModelSelector;
import org.chromium.chrome.browser.tabmodel.document.ChromeAsyncTabLauncher; import org.chromium.chrome.browser.tabmodel.document.ChromeAsyncTabLauncher;
import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager; import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager;
@@ -303,6 +305,7 @@ public class TabContextMenuItemDelegate implements ContextMenuItemDelegate { @@ -304,6 +306,7 @@ public class TabContextMenuItemDelegate implements ContextMenuItemDelegate {
@Nullable Referrer referrer, @Nullable Referrer referrer,
boolean navigateToTab, boolean navigateToTab,
@Nullable AdditionalNavigationParams additionalNavigationParams) { @Nullable AdditionalNavigationParams additionalNavigationParams) {
@@ -34,7 +34,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextM
RecordUserAction.record("MobileNewTabOpened"); RecordUserAction.record("MobileNewTabOpened");
RecordUserAction.record("LinkOpenedInNewTab"); RecordUserAction.record("LinkOpenedInNewTab");
LoadUrlParams loadUrlParams = new LoadUrlParams(url.getSpec()); LoadUrlParams loadUrlParams = new LoadUrlParams(url.getSpec());
@@ -323,6 +326,7 @@ public class TabContextMenuItemDelegate implements ContextMenuItemDelegate { @@ -324,6 +327,7 @@ public class TabContextMenuItemDelegate implements ContextMenuItemDelegate {
* @param url The URL to open. * @param url The URL to open.
*/ */
public void onOpenInNewTabInGroup(GURL url, @Nullable Referrer referrer) { public void onOpenInNewTabInGroup(GURL url, @Nullable Referrer referrer) {
@@ -7,19 +7,19 @@ Ignore any partner-provided home page.
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
--- ---
.../org/chromium/chrome/browser/homepage/HomepageManager.java | 4 ---- .../org/chromium/chrome/browser/homepage/HomepageManager.java | 4 ----
.../chrome/browser/new_tab_url/DseNewTabUrlManager.java | 1 + .../chrome/browser/new_tab_url/DseNewTabUrlManager.java | 2 +-
.../partnerbookmarks/PartnerBookmarksProviderIterator.java | 1 + .../partnerbookmarks/PartnerBookmarksProviderIterator.java | 1 +
.../partnercustomizations/PartnerBrowserCustomizations.java | 2 +- .../partnercustomizations/PartnerBrowserCustomizations.java | 2 +-
.../org/chromium/components/search_engines/TemplateUrl.java | 1 + .../org/chromium/components/search_engines/TemplateUrl.java | 1 +
.../search_engines/android/template_url_service_android.cc | 1 + .../search_engines/android/template_url_service_android.cc | 1 +
.../always-use-new-tab-page-for-default-home-page.inc | 1 + .../always-use-new-tab-page-for-default-home-page.inc | 1 +
7 files changed, 6 insertions(+), 5 deletions(-) 7 files changed, 6 insertions(+), 6 deletions(-)
create mode 100755 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/always-use-new-tab-page-for-default-home-page.inc 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 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java
@@ -160,10 +160,6 @@ public class HomepageManager @@ -159,10 +159,6 @@ public class HomepageManager
* tab page if the homepage button is force enabled via flag. * tab page if the homepage button is force enabled via flag.
*/ */
public GURL getDefaultHomepageGurl() { public GURL getDefaultHomepageGurl() {
@@ -33,14 +33,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/Homepa
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 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 --- 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 +++ b/chrome/android/java/src/org/chromium/chrome/browser/new_tab_url/DseNewTabUrlManager.java
@@ -60,6 +60,7 @@ public class DseNewTabUrlManager { @@ -59,7 +59,7 @@ public class DseNewTabUrlManager {
/** Returns whether the feature NewTabSearchEngineUrlAndroid is enabled. */ /** Returns whether the feature NewTabSearchEngineUrlAndroid is enabled. */
public static boolean isNewTabSearchEngineUrlAndroidEnabled() { public static boolean isNewTabSearchEngineUrlAndroidEnabled() {
+ if ((true)) return false; - return true;
return ChromeSharedPreferences.getInstance() + return false;
.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 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 --- 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 +++ b/chrome/browser/partnerbookmarks/android/java/src/org/chromium/chrome/browser/partnerbookmarks/PartnerBookmarksProviderIterator.java
File diff suppressed because it is too large Load Diff
@@ -18,7 +18,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/chrome/browser/browser_controls/android/java/src/org/chromium/chrome/browser/browser_controls/BrowserStateBrowserControlsVisibilityDelegate.java b/chrome/browser/browser_controls/android/java/src/org/chromium/chrome/browser/browser_controls/BrowserStateBrowserControlsVisibilityDelegate.java diff --git a/chrome/browser/browser_controls/android/java/src/org/chromium/chrome/browser/browser_controls/BrowserStateBrowserControlsVisibilityDelegate.java b/chrome/browser/browser_controls/android/java/src/org/chromium/chrome/browser/browser_controls/BrowserStateBrowserControlsVisibilityDelegate.java
--- a/chrome/browser/browser_controls/android/java/src/org/chromium/chrome/browser/browser_controls/BrowserStateBrowserControlsVisibilityDelegate.java --- a/chrome/browser/browser_controls/android/java/src/org/chromium/chrome/browser/browser_controls/BrowserStateBrowserControlsVisibilityDelegate.java
+++ b/chrome/browser/browser_controls/android/java/src/org/chromium/chrome/browser/browser_controls/BrowserStateBrowserControlsVisibilityDelegate.java +++ b/chrome/browser/browser_controls/android/java/src/org/chromium/chrome/browser/browser_controls/BrowserStateBrowserControlsVisibilityDelegate.java
@@ -40,6 +40,7 @@ public class BrowserStateBrowserControlsVisibilityDelegate extends BrowserContro @@ -41,6 +41,7 @@ public class BrowserStateBrowserControlsVisibilityDelegate extends BrowserContro
private final Supplier<Boolean> mPersistentFullscreenMode; private final Supplier<Boolean> mPersistentFullscreenMode;
private long mCurrentShowingStartTime; private long mCurrentShowingStartTime;
@@ -26,7 +26,7 @@ diff --git a/chrome/browser/browser_controls/android/java/src/org/chromium/chrom
/** /**
* Constructs a BrowserControlsVisibilityDelegate designed to deal with overrides driven by * Constructs a BrowserControlsVisibilityDelegate designed to deal with overrides driven by
@@ -65,7 +66,8 @@ public class BrowserStateBrowserControlsVisibilityDelegate extends BrowserContro @@ -66,7 +67,8 @@ public class BrowserStateBrowserControlsVisibilityDelegate extends BrowserContro
long currentShowingTime = SystemClock.uptimeMillis() - mCurrentShowingStartTime; long currentShowingTime = SystemClock.uptimeMillis() - mCurrentShowingStartTime;
if (currentShowingTime >= MINIMUM_SHOW_DURATION_MS) return; if (currentShowingTime >= MINIMUM_SHOW_DURATION_MS) return;
@@ -38,11 +38,11 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
.../skia/src/ports/SkFontConfigInterface.cpp | 4 + .../skia/src/ports/SkFontConfigInterface.cpp | 4 +
.../ports/SkFontConfigInterface_direct.cpp | 5 + .../ports/SkFontConfigInterface_direct.cpp | 5 +
.../src/ports/SkFontConfigInterface_direct.h | 1 + .../src/ports/SkFontConfigInterface_direct.h | 1 +
.../skia/src/ports/SkFontMgr_android.cpp | 279 ++- .../skia/src/ports/SkFontMgr_android.cpp | 277 ++-
.../skia/src/ports/SkFontMgr_android_data.cpp | 1640 +++++++++++++++++ .../skia/src/ports/SkFontMgr_android_data.cpp | 1640 +++++++++++++++++
.../src/ports/SkFontMgr_android_parser.cpp | 49 +- .../src/ports/SkFontMgr_android_parser.cpp | 49 +-
.../skia/src/ports/SkFontMgr_android_parser.h | 5 +- .../skia/src/ports/SkFontMgr_android_parser.h | 5 +-
36 files changed, 2415 insertions(+), 76 deletions(-) 36 files changed, 2414 insertions(+), 75 deletions(-)
create mode 100644 chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Android-fonts-fingerprinting-mitigation.grdp create mode 100644 chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Android-fonts-fingerprinting-mitigation.grdp
create mode 100644 components/component_updater/installer_policies/fonts_pack_component_installer.cc create mode 100644 components/component_updater/installer_policies/fonts_pack_component_installer.cc
create mode 100644 components/component_updater/installer_policies/fonts_pack_component_installer.h create mode 100644 components/component_updater/installer_policies/fonts_pack_component_installer.h
@@ -54,7 +54,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/android_webview/java/src/org/chromium/android_webview/common/ProductionSupportedFlagList.java b/android_webview/java/src/org/chromium/android_webview/common/ProductionSupportedFlagList.java diff --git a/android_webview/java/src/org/chromium/android_webview/common/ProductionSupportedFlagList.java b/android_webview/java/src/org/chromium/android_webview/common/ProductionSupportedFlagList.java
--- a/android_webview/java/src/org/chromium/android_webview/common/ProductionSupportedFlagList.java --- a/android_webview/java/src/org/chromium/android_webview/common/ProductionSupportedFlagList.java
+++ b/android_webview/java/src/org/chromium/android_webview/common/ProductionSupportedFlagList.java +++ b/android_webview/java/src/org/chromium/android_webview/common/ProductionSupportedFlagList.java
@@ -1007,6 +1007,9 @@ public final class ProductionSupportedFlagList { @@ -1009,6 +1009,9 @@ public final class ProductionSupportedFlagList {
"Hides user preference on the system keyboard by setting the standard " "Hides user preference on the system keyboard by setting the standard "
+ "eng layout and removing the layout information from the " + "eng layout and removing the layout information from the "
+ "javascript keyboard events."), + "javascript keyboard events."),
@@ -106,7 +106,7 @@ diff --git a/chrome/android/java/res/xml/developer_preferences.xml b/chrome/andr
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn
@@ -7951,6 +7951,13 @@ static_library("browser") { @@ -8005,6 +8005,13 @@ static_library("browser") {
} }
} }
@@ -161,7 +161,7 @@ new file mode 100644
diff --git a/chrome/renderer/BUILD.gn b/chrome/renderer/BUILD.gn diff --git a/chrome/renderer/BUILD.gn b/chrome/renderer/BUILD.gn
--- a/chrome/renderer/BUILD.gn --- a/chrome/renderer/BUILD.gn
+++ b/chrome/renderer/BUILD.gn +++ b/chrome/renderer/BUILD.gn
@@ -258,6 +258,10 @@ static_library("renderer") { @@ -264,6 +264,10 @@ static_library("renderer") {
deps += [ "//components/strings" ] deps += [ "//components/strings" ]
} }
@@ -615,7 +615,7 @@ diff --git a/components/services/font/public/mojom/font_service.mojom b/componen
diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn
--- a/content/browser/BUILD.gn --- a/content/browser/BUILD.gn
+++ b/content/browser/BUILD.gn +++ b/content/browser/BUILD.gn
@@ -2600,6 +2600,17 @@ source_set("browser") { @@ -2614,6 +2614,17 @@ source_set("browser") {
] ]
} }
@@ -633,7 +633,7 @@ diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn
if (is_linux || is_chromeos) { if (is_linux || is_chromeos) {
sources -= sources -=
[ "file_system_access/file_path_watcher/file_path_watcher_stub.cc" ] [ "file_system_access/file_path_watcher/file_path_watcher_stub.cc" ]
@@ -2645,6 +2656,13 @@ source_set("browser") { @@ -2659,6 +2670,13 @@ source_set("browser") {
] ]
} }
@@ -696,7 +696,7 @@ diff --git a/content/child/BUILD.gn b/content/child/BUILD.gn
diff --git a/content/renderer/BUILD.gn b/content/renderer/BUILD.gn diff --git a/content/renderer/BUILD.gn b/content/renderer/BUILD.gn
--- a/content/renderer/BUILD.gn --- a/content/renderer/BUILD.gn
+++ b/content/renderer/BUILD.gn +++ b/content/renderer/BUILD.gn
@@ -346,6 +346,10 @@ target(link_target_type, "renderer") { @@ -347,6 +347,10 @@ target(link_target_type, "renderer") {
deps += [ "//services/screen_ai/public/mojom" ] deps += [ "//services/screen_ai/public/mojom" ]
} }
@@ -734,7 +734,7 @@ diff --git a/content/renderer/renderer_blink_platform_impl.cc b/content/renderer
using blink::Platform; using blink::Platform;
using blink::WebAudioDevice; using blink::WebAudioDevice;
using blink::WebAudioLatencyHint; using blink::WebAudioLatencyHint;
@@ -180,6 +197,37 @@ gpu::ContextType ToGpuContextType(blink::Platform::ContextType type) { @@ -174,6 +191,37 @@ gpu::ContextType ToGpuContextType(blink::Platform::ContextType type) {
NOTREACHED(); NOTREACHED();
} }
@@ -772,7 +772,7 @@ diff --git a/content/renderer/renderer_blink_platform_impl.cc b/content/renderer
} // namespace } // namespace
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
@@ -193,18 +241,21 @@ RendererBlinkPlatformImpl::RendererBlinkPlatformImpl( @@ -187,18 +235,21 @@ RendererBlinkPlatformImpl::RendererBlinkPlatformImpl(
is_locked_to_site_(false), is_locked_to_site_(false),
main_thread_scheduler_(main_thread_scheduler), main_thread_scheduler_(main_thread_scheduler),
next_frame_sink_id_(uint32_t{std::numeric_limits<int32_t>::max()} + 1) { next_frame_sink_id_(uint32_t{std::numeric_limits<int32_t>::max()} + 1) {
@@ -838,7 +838,7 @@ new file mode 100644
diff --git a/skia/BUILD.gn b/skia/BUILD.gn diff --git a/skia/BUILD.gn b/skia/BUILD.gn
--- a/skia/BUILD.gn --- a/skia/BUILD.gn
+++ b/skia/BUILD.gn +++ b/skia/BUILD.gn
@@ -463,6 +463,18 @@ component("skia") { @@ -467,6 +467,18 @@ component("skia") {
sources += skia_ports_fci_sources sources += skia_ports_fci_sources
} }
@@ -1257,7 +1257,7 @@ diff --git a/third_party/skia/src/ports/SkFontMgr_android.cpp b/third_party/skia
: fScanner(std::move(scanner)) { : fScanner(std::move(scanner)) {
+ custom_ = std::move(custom_in); + custom_ = std::move(custom_in);
+ auto* custom = custom_.get(); + auto* custom = custom_.get();
SkTDArray<FontFamily*> families; std::vector<std::unique_ptr<FontFamily>> families;
if (custom && SkFontMgr_Android_CustomFonts::kPreferSystem != custom->fSystemFontUse) { if (custom && SkFontMgr_Android_CustomFonts::kPreferSystem != custom->fSystemFontUse) {
SkString base(custom->fBasePath); SkString base(custom->fBasePath);
SkFontMgr_Android_Parser::GetCustomFontFamilies( SkFontMgr_Android_Parser::GetCustomFontFamilies(
@@ -1278,22 +1278,24 @@ diff --git a/third_party/skia/src/ports/SkFontMgr_android.cpp b/third_party/skia
} }
this->buildNameToFamilyMap(families, custom ? custom->fIsolated : false); this->buildNameToFamilyMap(families, custom ? custom->fIsolated : false);
this->findDefaultStyleSet(); this->findDefaultStyleSet();
@@ -309,33 +449,53 @@ protected: @@ -306,12 +446,12 @@ protected:
return sset->matchStyle(style);
} }
enum class NameType { Self, Fallback };
- static sk_sp<SkTypeface_AndroidSystem> find_family_style_character( - static sk_sp<SkTypeface_AndroidSystem> find_family_style_character(
+ sk_sp<SkTypeface> find_family_style_character( + sk_sp<SkTypeface> find_family_style_character(
const SkString& familyName, const SkString& familyName,
const TArray<NameToFamily, true>& fallbackNameToFamilyMap, const TArray<NameToFamily, true>& nameToFamilyMap,
NameType nameType,
const SkFontStyle& style, bool elegant, const SkFontStyle& style, bool elegant,
- const SkString& langTag, SkUnichar character) - const SkString& langTag, SkUnichar character)
+ const SkString& langTag, SkUnichar character) const + const SkString& langTag, SkUnichar character) const
{ {
for (int i = 0; i < fallbackNameToFamilyMap.size(); ++i) { for (auto&& nameToFamily : nameToFamilyMap) {
SkFontStyleSet_Android* family = fallbackNameToFamilyMap[i].styleSet; SkFontStyleSet_Android* family = nameToFamily.styleSet;
if (familyName != family->fFallbackFor) { @@ -322,22 +462,42 @@ protected:
continue; continue;
}
} }
- sk_sp<SkTypeface_AndroidSystem> face(family->matchAStyle(style)); - sk_sp<SkTypeface_AndroidSystem> face(family->matchAStyle(style));
+ if (custom_) { + if (custom_) {
@@ -1334,38 +1336,29 @@ diff --git a/third_party/skia/src/ports/SkFontMgr_android.cpp b/third_party/skia
+ { + {
+ continue; + continue;
+ } + }
+
+ if (SkToBool(face->fVariantStyle & kElegant_FontVariant) != elegant) {
+ continue;
+ }
- if (face->unicharToGlyph(character) != 0) { - if (face->unicharToGlyph(character) != 0) {
- return face; - return face;
+ if (SkToBool(face->fVariantStyle & kElegant_FontVariant) != elegant) {
+ continue;
+ }
+
+ if (face->unicharToGlyph(character) != 0) { + if (face->unicharToGlyph(character) != 0) {
+ return face; + return face;
+ } + }
} }
} }
return nullptr; return nullptr;
@@ -358,7 +518,7 @@ protected: @@ -352,7 +512,7 @@ protected:
for (int bcp47Index = bcp47Count; bcp47Index --> 0;) { // The variant 'default' means 'compact and elegant'.
SkLanguage lang(bcp47[bcp47Index]); // As a result, it is not possible to know the variant context from the font alone.
while (!lang.getTag().isEmpty()) { // TODO: add 'is_elegant' and 'is_compact' bits to 'style' request.
- sk_sp<SkTypeface_AndroidSystem> matchingTypeface = - sk_sp<SkTypeface_AndroidSystem> matchingTypeface;
+ sk_sp<SkTypeface> matchingTypeface = + sk_sp<SkTypeface> matchingTypeface;
find_family_style_character(currentFamilyName, fFallbackNameToFamilyMap, SkString familyNameString(familyName);
style, SkToBool(elegant), for (const SkString& currentFamilyName : { familyNameString, SkString() }) {
lang.getTag(), character); // The first time match anything elegant, second time anything not elegant.
@@ -369,7 +529,7 @@ protected: @@ -432,6 +592,7 @@ protected:
lang = lang.getParent();
}
}
- sk_sp<SkTypeface_AndroidSystem> matchingTypeface =
+ sk_sp<SkTypeface> matchingTypeface =
find_family_style_character(currentFamilyName, fFallbackNameToFamilyMap,
style, SkToBool(elegant),
SkString(), character);
@@ -420,6 +580,7 @@ protected:
private: private:
std::unique_ptr<SkFontScanner> fScanner; std::unique_ptr<SkFontScanner> fScanner;
@@ -1373,7 +1366,7 @@ diff --git a/third_party/skia/src/ports/SkFontMgr_android.cpp b/third_party/skia
TArray<sk_sp<SkFontStyleSet_Android>> fStyleSets; TArray<sk_sp<SkFontStyleSet_Android>> fStyleSets;
sk_sp<SkFontStyleSet> fDefaultStyleSet; sk_sp<SkFontStyleSet> fDefaultStyleSet;
@@ -441,7 +602,7 @@ private: @@ -453,7 +614,7 @@ private:
} }
sk_sp<SkFontStyleSet_Android> newSet = sk_sp<SkFontStyleSet_Android> newSet =
@@ -1382,7 +1375,7 @@ diff --git a/third_party/skia/src/ports/SkFontMgr_android.cpp b/third_party/skia
if (0 == newSet->count()) { if (0 == newSet->count()) {
return; return;
} }
@@ -486,7 +647,11 @@ static char const * const gSystemFontUseStrings[] = { @@ -499,7 +660,11 @@ static char const * const gSystemFontUseStrings[] = {
} // namespace } // namespace
@@ -1395,7 +1388,7 @@ diff --git a/third_party/skia/src/ports/SkFontMgr_android.cpp b/third_party/skia
if (custom) { if (custom) {
SkASSERT(0 <= custom->fSystemFontUse); SkASSERT(0 <= custom->fSystemFontUse);
SkASSERT(custom->fSystemFontUse < std::size(gSystemFontUseStrings)); SkASSERT(custom->fSystemFontUse < std::size(gSystemFontUseStrings));
@@ -496,5 +661,5 @@ sk_sp<SkFontMgr> SkFontMgr_New_Android(const SkFontMgr_Android_CustomFonts* cust @@ -509,5 +674,5 @@ sk_sp<SkFontMgr> SkFontMgr_New_Android(const SkFontMgr_Android_CustomFonts* cust
custom->fFontsXml, custom->fFontsXml,
custom->fFallbackFontsXml); custom->fFallbackFontsXml);
} }
@@ -3050,10 +3043,10 @@ new file mode 100644
diff --git a/third_party/skia/src/ports/SkFontMgr_android_parser.cpp b/third_party/skia/src/ports/SkFontMgr_android_parser.cpp diff --git a/third_party/skia/src/ports/SkFontMgr_android_parser.cpp b/third_party/skia/src/ports/SkFontMgr_android_parser.cpp
--- a/third_party/skia/src/ports/SkFontMgr_android_parser.cpp --- a/third_party/skia/src/ports/SkFontMgr_android_parser.cpp
+++ b/third_party/skia/src/ports/SkFontMgr_android_parser.cpp +++ b/third_party/skia/src/ports/SkFontMgr_android_parser.cpp
@@ -652,14 +652,27 @@ static const XML_Memory_Handling_Suite sk_XML_alloc = { @@ -654,14 +654,27 @@ static const XML_Memory_Handling_Suite sk_XML_alloc = {
* families array. Returns the version of the file, negative if the file does not exist.
*/ */
static int parse_config_file(const char* filename, SkTDArray<FontFamily*>& families, static int parse_config_file(const char* filename,
std::vector<std::unique_ptr<FontFamily>>& families,
- const SkString& basePath, bool isFallback) - const SkString& basePath, bool isFallback)
+ const SkString& basePath, bool isFallback, + const SkString& basePath, bool isFallback,
+ const SkFontMgr_Android_CustomFonts* custom = nullptr) + const SkFontMgr_Android_CustomFonts* custom = nullptr)
@@ -3084,7 +3077,7 @@ diff --git a/third_party/skia/src/ports/SkFontMgr_android_parser.cpp b/third_par
return -1; return -1;
} }
@@ -691,8 +704,8 @@ static int parse_config_file(const char* filename, SkTDArray<FontFamily*>& famil @@ -693,8 +706,8 @@ static int parse_config_file(const char* filename,
SkDebugf(SK_FONTMGR_ANDROID_PARSER_PREFIX "could not buffer enough to continue\n"); SkDebugf(SK_FONTMGR_ANDROID_PARSER_PREFIX "could not buffer enough to continue\n");
return -1; return -1;
} }
@@ -3095,57 +3088,59 @@ diff --git a/third_party/skia/src/ports/SkFontMgr_android_parser.cpp b/third_par
XML_Status status = XML_ParseBuffer(parser, len, done); XML_Status status = XML_ParseBuffer(parser, len, done);
if (XML_STATUS_ERROR == status) { if (XML_STATUS_ERROR == status) {
XML_Error error = XML_GetErrorCode(parser); XML_Error error = XML_GetErrorCode(parser);
@@ -765,8 +778,10 @@ static void append_fallback_font_families_for_locale(SkTDArray<FontFamily*>& fal @@ -768,8 +781,10 @@ static void append_fallback_font_families_for_locale(
}
static void append_system_fallback_font_families(SkTDArray<FontFamily*>& fallbackFonts, static void append_system_fallback_font_families(
- const SkString& basePath) std::vector<std::unique_ptr<FontFamily>>& fallbackFonts,
+ const SkString& basePath, - const SkString& basePath)
+ const SkString& basePath,
+ const SkFontMgr_Android_CustomFonts* custom) + const SkFontMgr_Android_CustomFonts* custom)
{ {
+ if (custom) return; + if (custom) return;
parse_config_file(FALLBACK_FONTS_FILE, fallbackFonts, basePath, true); parse_config_file(FALLBACK_FONTS_FILE, fallbackFonts, basePath, true);
append_fallback_font_families_for_locale(fallbackFonts, append_fallback_font_families_for_locale(fallbackFonts,
LOCALE_FALLBACK_FONTS_SYSTEM_DIR, LOCALE_FALLBACK_FONTS_SYSTEM_DIR,
@@ -774,8 +789,10 @@ static void append_system_fallback_font_families(SkTDArray<FontFamily*>& fallbac @@ -778,8 +793,10 @@ static void append_system_fallback_font_families(
}
static void mixin_vendor_fallback_font_families(SkTDArray<FontFamily*>& fallbackFonts, static void mixin_vendor_fallback_font_families(
- const SkString& basePath) std::vector<std::unique_ptr<FontFamily>>& fallbackFonts,
+ const SkString& basePath, - const SkString& basePath)
+ const SkString& basePath,
+ const SkFontMgr_Android_CustomFonts* custom) + const SkFontMgr_Android_CustomFonts* custom)
{ {
+ if (custom) return; + if (custom) return;
SkTDArray<FontFamily*> vendorFonts; std::vector<std::unique_ptr<FontFamily>> vendorFonts;
parse_config_file(VENDOR_FONTS_FILE, vendorFonts, basePath, true); parse_config_file(VENDOR_FONTS_FILE, vendorFonts, basePath, true);
append_fallback_font_families_for_locale(vendorFonts, append_fallback_font_families_for_locale(vendorFonts,
@@ -806,7 +823,8 @@ static void mixin_vendor_fallback_font_families(SkTDArray<FontFamily*>& fallback @@ -811,7 +828,8 @@ static void mixin_vendor_fallback_font_families(
}
} }
-void SkFontMgr_Android_Parser::GetSystemFontFamilies(SkTDArray<FontFamily*>& fontFamilies) { void SkFontMgr_Android_Parser::GetSystemFontFamilies(
+void SkFontMgr_Android_Parser::GetSystemFontFamilies(SkTDArray<FontFamily*>& fontFamilies, - std::vector<std::unique_ptr<FontFamily>>& fontFamilies)
+ const SkFontMgr_Android_CustomFonts* custom) { + std::vector<std::unique_ptr<FontFamily>>& fontFamilies,
+ const SkFontMgr_Android_CustomFonts* custom)
{
// Version 21 of the system font configuration does not need any fallback configuration files. // Version 21 of the system font configuration does not need any fallback configuration files.
SkString basePath(getenv("ANDROID_ROOT")); SkString basePath(getenv("ANDROID_ROOT"));
basePath.append(SK_FONT_FILE_PREFIX, sizeof(SK_FONT_FILE_PREFIX) - 1); @@ -823,8 +841,8 @@ void SkFontMgr_Android_Parser::GetSystemFontFamilies(
@@ -817,22 +835,23 @@ void SkFontMgr_Android_Parser::GetSystemFontFamilies(SkTDArray<FontFamily*>& fon
// Append all the fallback fonts to system fonts // Append all the fallback fonts to system fonts
SkTDArray<FontFamily*> fallbackFonts; std::vector<std::unique_ptr<FontFamily>> fallbackFonts;
- append_system_fallback_font_families(fallbackFonts, basePath); - append_system_fallback_font_families(fallbackFonts, basePath);
- mixin_vendor_fallback_font_families(fallbackFonts, basePath); - mixin_vendor_fallback_font_families(fallbackFonts, basePath);
+ append_system_fallback_font_families(fallbackFonts, basePath, custom); + append_system_fallback_font_families(fallbackFonts, basePath, custom);
+ mixin_vendor_fallback_font_families(fallbackFonts, basePath, custom); + mixin_vendor_fallback_font_families(fallbackFonts, basePath, custom);
fontFamilies.append(fallbackFonts.size(), fallbackFonts.begin()); fontFamilies.insert(fontFamilies.end(),
} std::make_move_iterator(fallbackFonts.begin()),
std::make_move_iterator(fallbackFonts.end()));
void SkFontMgr_Android_Parser::GetCustomFontFamilies(SkTDArray<FontFamily*>& fontFamilies, @@ -833,15 +851,16 @@ void SkFontMgr_Android_Parser::GetSystemFontFamilies(
const SkString& basePath, void SkFontMgr_Android_Parser::GetCustomFontFamilies(
+ const SkFontMgr_Android_CustomFonts* custom, std::vector<std::unique_ptr<FontFamily>>& fontFamilies,
const char* fontsXml, const SkString& basePath,
const char* fallbackFontsXml, + const SkFontMgr_Android_CustomFonts* custom,
const char* langFallbackFontsDir) const char* fontsXml,
const char* fallbackFontsXml,
const char* langFallbackFontsDir)
{ {
if (fontsXml) { if (fontsXml) {
- parse_config_file(fontsXml, fontFamilies, basePath, false); - parse_config_file(fontsXml, fontFamilies, basePath, false);
@@ -3160,7 +3155,7 @@ diff --git a/third_party/skia/src/ports/SkFontMgr_android_parser.cpp b/third_par
diff --git a/third_party/skia/src/ports/SkFontMgr_android_parser.h b/third_party/skia/src/ports/SkFontMgr_android_parser.h diff --git a/third_party/skia/src/ports/SkFontMgr_android_parser.h b/third_party/skia/src/ports/SkFontMgr_android_parser.h
--- a/third_party/skia/src/ports/SkFontMgr_android_parser.h --- a/third_party/skia/src/ports/SkFontMgr_android_parser.h
+++ b/third_party/skia/src/ports/SkFontMgr_android_parser.h +++ b/third_party/skia/src/ports/SkFontMgr_android_parser.h
@@ -15,6 +15,7 @@ @@ -17,6 +17,7 @@
#include "include/private/base/SkTArray.h" #include "include/private/base/SkTArray.h"
#include "include/private/base/SkTDArray.h" #include "include/private/base/SkTDArray.h"
#include "src/core/SkTHash.h" #include "src/core/SkTHash.h"
@@ -3168,16 +3163,16 @@ diff --git a/third_party/skia/src/ports/SkFontMgr_android_parser.h b/third_party
#include <climits> #include <climits>
#include <limits> #include <limits>
@@ -105,11 +106,13 @@ struct FontFamily { @@ -109,11 +110,13 @@ struct FontFamily {
namespace SkFontMgr_Android_Parser { namespace SkFontMgr_Android_Parser {
/** Parses system font configuration files and appends result to fontFamilies. */ /** Parses system font configuration files and appends result to fontFamilies. */
-void GetSystemFontFamilies(SkTDArray<FontFamily*>& fontFamilies); -void GetSystemFontFamilies(std::vector<std::unique_ptr<FontFamily>>& fontFamilies);
+void GetSystemFontFamilies(SkTDArray<FontFamily*>& fontFamilies, +void GetSystemFontFamilies(std::vector<std::unique_ptr<FontFamily>>& fontFamilies,
+ const SkFontMgr_Android_CustomFonts* custom); + const SkFontMgr_Android_CustomFonts* custom);
/** Parses font configuration files and appends result to fontFamilies. */ /** Parses font configuration files and appends result to fontFamilies. */
void GetCustomFontFamilies(SkTDArray<FontFamily*>& fontFamilies, void GetCustomFontFamilies(std::vector<std::unique_ptr<FontFamily>>& fontFamilies,
const SkString& basePath, const SkString& basePath,
+ const SkFontMgr_Android_CustomFonts* custom, + const SkFontMgr_Android_CustomFonts* custom,
const char* fontsXml, const char* fontsXml,
@@ -87,7 +87,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/net/connectivit
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/indicator/OfflineDetector.java b/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/indicator/OfflineDetector.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/indicator/OfflineDetector.java b/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/indicator/OfflineDetector.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/indicator/OfflineDetector.java --- a/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/indicator/OfflineDetector.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/indicator/OfflineDetector.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/indicator/OfflineDetector.java
@@ -23,17 +23,39 @@ import org.chromium.build.annotations.Nullable; @@ -22,10 +22,31 @@ import org.chromium.build.annotations.Nullable;
import org.chromium.chrome.browser.flags.ChromeFeatureList; import org.chromium.chrome.browser.flags.ChromeFeatureList;
import org.chromium.chrome.browser.net.connectivitydetector.ConnectivityDetector; import org.chromium.chrome.browser.net.connectivitydetector.ConnectivityDetector;
import org.chromium.chrome.browser.net.connectivitydetector.ConnectivityDetector.ConnectionState; import org.chromium.chrome.browser.net.connectivitydetector.ConnectivityDetector.ConnectionState;
@@ -118,9 +118,10 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/in
+import org.chromium.content_public.browser.WebContents; +import org.chromium.content_public.browser.WebContents;
+import org.chromium.net.NetworkChangeNotifier; +import org.chromium.net.NetworkChangeNotifier;
+ +
import java.util.function.Supplier;
/** /**
* Class that detects if the network is offline. Waits for the network to stablize before notifying @@ -34,7 +55,8 @@ import java.util.function.Supplier;
* the observer.
*/ */
@NullMarked @NullMarked
class OfflineDetector class OfflineDetector
@@ -130,7 +131,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/in
// If the connection is online, then we report that immediately via |mIsOfflineCallback|. // If the connection is online, then we report that immediately via |mIsOfflineCallback|.
// |STATUS_INDICATOR_WAIT_ON_OFFLINE_DURATION_MS| and // |STATUS_INDICATOR_WAIT_ON_OFFLINE_DURATION_MS| and
// |mStatusIndicatorWaitOnSwitchOnlineToOfflineDurationMs| control the duration before // |mStatusIndicatorWaitOnSwitchOnlineToOfflineDurationMs| control the duration before
@@ -119,6 +141,11 @@ class OfflineDetector @@ -120,6 +142,11 @@ class OfflineDetector
private static final String TAG = "OfflineDetector"; private static final String TAG = "OfflineDetector";
@@ -142,7 +143,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/in
/** /**
* Constructs the offline indicator. * Constructs the offline indicator.
* @param isOfflineCallback The {@link Callback} is invoked when the connectivity status is * @param isOfflineCallback The {@link Callback} is invoked when the connectivity status is
@@ -130,7 +157,13 @@ class OfflineDetector @@ -131,7 +158,13 @@ class OfflineDetector
OfflineDetector( OfflineDetector(
Callback<Boolean> isOfflineCallback, Callback<Boolean> isOfflineCallback,
Callback<Boolean> isForegroundCallback, Callback<Boolean> isForegroundCallback,
@@ -157,7 +158,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/in
mIsOfflineCallback = isOfflineCallback; mIsOfflineCallback = isOfflineCallback;
mIsForegroundCallback = isForegroundCallback; mIsForegroundCallback = isForegroundCallback;
mContext = context; mContext = context;
@@ -234,6 +267,75 @@ class OfflineDetector @@ -235,6 +268,75 @@ class OfflineDetector
updateState(); updateState();
} }
@@ -198,7 +199,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/in
+ Snackbar snackbar = Snackbar.make( + Snackbar snackbar = Snackbar.make(
+ mContext.getString(R.string.ask_to_restart_on_connection_change_restart), + mContext.getString(R.string.ask_to_restart_on_connection_change_restart),
+ /* snackbarController */ this, Snackbar.TYPE_PERSISTENT, Snackbar.UMA_UNKNOWN) + /* snackbarController */ this, Snackbar.TYPE_PERSISTENT, Snackbar.UMA_UNKNOWN)
+ .setSingleLine(false) + .setDefaultLines(false)
+ .setAction(mContext.getString(R.string.relaunch), /*actionData*/0) + .setAction(mContext.getString(R.string.relaunch), /*actionData*/0)
+ .setDismissAction(mContext.getString(R.string.ask_to_restart_on_connection_change_close_notification), /*actionData*/1); + .setDismissAction(mContext.getString(R.string.ask_to_restart_on_connection_change_close_notification), /*actionData*/1);
+ SnackbarManager snackbarManager = mSnackbarManagerSupplier.get(); + SnackbarManager snackbarManager = mSnackbarManagerSupplier.get();
@@ -233,7 +234,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/in
private void logToAdbConsoleNow(String prefix) { private void logToAdbConsoleNow(String prefix) {
Log.i( Log.i(
TAG, TAG,
@@ -320,6 +422,7 @@ class OfflineDetector @@ -321,6 +423,7 @@ class OfflineDetector
** Calls |mUpdateOfflineStatusIndicatorDelayedRunnable| to update the connection state. ** Calls |mUpdateOfflineStatusIndicatorDelayedRunnable| to update the connection state.
*/ */
private void updateState() { private void updateState() {
@@ -244,9 +245,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/in
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/indicator/OfflineIndicatorControllerV2.java b/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/indicator/OfflineIndicatorControllerV2.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/indicator/OfflineIndicatorControllerV2.java b/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/indicator/OfflineIndicatorControllerV2.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/indicator/OfflineIndicatorControllerV2.java --- a/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/indicator/OfflineIndicatorControllerV2.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/indicator/OfflineIndicatorControllerV2.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/indicator/OfflineIndicatorControllerV2.java
@@ -31,6 +31,11 @@ import org.chromium.content_public.common.ContentSwitches; @@ -31,6 +31,11 @@ import java.lang.annotation.Retention;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy; import java.lang.annotation.RetentionPolicy;
import java.util.function.Supplier;
+import org.chromium.base.supplier.ObservableSupplierImpl; +import org.chromium.base.supplier.ObservableSupplierImpl;
+import org.chromium.chrome.browser.layouts.LayoutManager; +import org.chromium.chrome.browser.layouts.LayoutManager;
@@ -283,7 +284,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/in
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 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 --- 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 +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java
@@ -1417,7 +1417,10 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { @@ -1439,7 +1439,10 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator {
mActivity, mActivity,
mStatusIndicatorCoordinator, mStatusIndicatorCoordinator,
isUrlBarFocusedSupplier, isUrlBarFocusedSupplier,
@@ -298,7 +299,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/TabModelSelectorBase.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorBase.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorBase.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorBase.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorBase.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorBase.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorBase.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorBase.java
@@ -198,6 +198,13 @@ public abstract class TabModelSelectorBase @@ -199,6 +199,13 @@ public abstract class TabModelSelectorBase
return null; return null;
} }
@@ -364,7 +365,7 @@ diff --git a/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browse
diff --git a/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelUtils.java b/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelUtils.java diff --git a/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelUtils.java b/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelUtils.java
--- a/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelUtils.java --- a/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelUtils.java
+++ b/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelUtils.java +++ b/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelUtils.java
@@ -16,12 +16,16 @@ import org.chromium.build.annotations.Nullable; @@ -15,6 +15,7 @@ import org.chromium.build.annotations.Nullable;
import org.chromium.chrome.browser.tab.Tab; import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.tab.TabSelectionType; import org.chromium.chrome.browser.tab.TabSelectionType;
import org.chromium.content_public.browser.WebContents; import org.chromium.content_public.browser.WebContents;
@@ -372,16 +373,17 @@ diff --git a/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browse
import org.chromium.ui.base.WindowAndroid; import org.chromium.ui.base.WindowAndroid;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collection; @@ -22,6 +23,9 @@ import java.util.Collection;
import java.util.List; import java.util.List;
import java.util.function.Predicate; import java.util.function.Predicate;
import java.util.function.Supplier;
+import java.util.Collections; +import java.util.Collections;
+import java.util.stream.IntStream; +import java.util.stream.IntStream;
+import java.util.stream.Collectors; +import java.util.stream.Collectors;
/** /**
* A set of convenience methods used for interacting with {@link TabList}s and {@link TabModel}s. * A set of convenience methods used for interacting with {@link TabList}s and {@link TabModel}s.
@@ -55,6 +59,20 @@ public class TabModelUtils { @@ -54,6 +58,20 @@ public class TabModelUtils {
return TabModel.INVALID_TAB_INDEX; return TabModel.INVALID_TAB_INDEX;
} }
@@ -405,7 +407,7 @@ diff --git a/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browse
diff --git a/chrome/browser/tabwindow/android/java/src/org/chromium/chrome/browser/tabwindow/TabWindowManager.java b/chrome/browser/tabwindow/android/java/src/org/chromium/chrome/browser/tabwindow/TabWindowManager.java diff --git a/chrome/browser/tabwindow/android/java/src/org/chromium/chrome/browser/tabwindow/TabWindowManager.java b/chrome/browser/tabwindow/android/java/src/org/chromium/chrome/browser/tabwindow/TabWindowManager.java
--- a/chrome/browser/tabwindow/android/java/src/org/chromium/chrome/browser/tabwindow/TabWindowManager.java --- a/chrome/browser/tabwindow/android/java/src/org/chromium/chrome/browser/tabwindow/TabWindowManager.java
+++ b/chrome/browser/tabwindow/android/java/src/org/chromium/chrome/browser/tabwindow/TabWindowManager.java +++ b/chrome/browser/tabwindow/android/java/src/org/chromium/chrome/browser/tabwindow/TabWindowManager.java
@@ -133,6 +133,8 @@ public interface TabWindowManager { @@ -135,6 +135,8 @@ public interface TabWindowManager {
/** Returns the total number of incognito tabs across all tab model selectors. */ /** Returns the total number of incognito tabs across all tab model selectors. */
int getIncognitoTabCount(); int getIncognitoTabCount();
@@ -417,7 +419,7 @@ diff --git a/chrome/browser/tabwindow/android/java/src/org/chromium/chrome/brows
diff --git a/chrome/browser/tabwindow/internal/android/java/src/org/chromium/chrome/browser/tabwindow/TabWindowManagerImpl.java b/chrome/browser/tabwindow/internal/android/java/src/org/chromium/chrome/browser/tabwindow/TabWindowManagerImpl.java diff --git a/chrome/browser/tabwindow/internal/android/java/src/org/chromium/chrome/browser/tabwindow/TabWindowManagerImpl.java b/chrome/browser/tabwindow/internal/android/java/src/org/chromium/chrome/browser/tabwindow/TabWindowManagerImpl.java
--- a/chrome/browser/tabwindow/internal/android/java/src/org/chromium/chrome/browser/tabwindow/TabWindowManagerImpl.java --- a/chrome/browser/tabwindow/internal/android/java/src/org/chromium/chrome/browser/tabwindow/TabWindowManagerImpl.java
+++ b/chrome/browser/tabwindow/internal/android/java/src/org/chromium/chrome/browser/tabwindow/TabWindowManagerImpl.java +++ b/chrome/browser/tabwindow/internal/android/java/src/org/chromium/chrome/browser/tabwindow/TabWindowManagerImpl.java
@@ -546,6 +546,16 @@ public class TabWindowManagerImpl implements TabWindowManager { @@ -551,6 +551,16 @@ public class TabWindowManagerImpl implements TabWindowManager {
return tabGroupModelFilter.getTabsInGroup(tabGroupId); return tabGroupModelFilter.getTabsInGroup(tabGroupId);
} }
@@ -503,8 +505,8 @@ diff --git a/chrome/browser/ui/messages/android/java/src/org/chromium/chrome/bro
+ private Object mDismissActionData; + private Object mDismissActionData;
private int mBackgroundColor; private int mBackgroundColor;
private int mTextApperanceResId; private int mTextApperanceResId;
private boolean mSingleLine = true; private boolean mDefaultLines = true;
@@ -241,6 +243,20 @@ public class Snackbar { @@ -242,6 +244,20 @@ public class Snackbar {
return this; return this;
} }
@@ -544,7 +546,7 @@ diff --git a/chrome/browser/ui/messages/android/java/src/org/chromium/chrome/bro
diff --git a/chrome/browser/ui/messages/android/java/src/org/chromium/chrome/browser/ui/messages/snackbar/SnackbarView.java b/chrome/browser/ui/messages/android/java/src/org/chromium/chrome/browser/ui/messages/snackbar/SnackbarView.java diff --git a/chrome/browser/ui/messages/android/java/src/org/chromium/chrome/browser/ui/messages/snackbar/SnackbarView.java b/chrome/browser/ui/messages/android/java/src/org/chromium/chrome/browser/ui/messages/snackbar/SnackbarView.java
--- a/chrome/browser/ui/messages/android/java/src/org/chromium/chrome/browser/ui/messages/snackbar/SnackbarView.java --- a/chrome/browser/ui/messages/android/java/src/org/chromium/chrome/browser/ui/messages/snackbar/SnackbarView.java
+++ b/chrome/browser/ui/messages/android/java/src/org/chromium/chrome/browser/ui/messages/snackbar/SnackbarView.java +++ b/chrome/browser/ui/messages/android/java/src/org/chromium/chrome/browser/ui/messages/snackbar/SnackbarView.java
@@ -55,6 +55,7 @@ public class SnackbarView implements InsetObserver.WindowInsetObserver { @@ -56,6 +56,7 @@ public class SnackbarView implements InsetObserver.WindowInsetObserver {
protected final ViewGroup mSnackbarView; protected final ViewGroup mSnackbarView;
protected final TemplatePreservingTextView mMessageView; protected final TemplatePreservingTextView mMessageView;
private final TextView mActionButtonView; private final TextView mActionButtonView;
@@ -552,7 +554,7 @@ diff --git a/chrome/browser/ui/messages/android/java/src/org/chromium/chrome/bro
private final ImageView mProfileImageView; private final ImageView mProfileImageView;
private final int mAnimationDuration; private final int mAnimationDuration;
private final boolean mIsTablet; private final boolean mIsTablet;
@@ -101,11 +102,12 @@ public class SnackbarView implements InsetObserver.WindowInsetObserver { @@ -102,11 +103,12 @@ public class SnackbarView implements InsetObserver.WindowInsetObserver {
public SnackbarView( public SnackbarView(
Activity activity, Activity activity,
OnClickListener listener, OnClickListener listener,
@@ -566,7 +568,7 @@ diff --git a/chrome/browser/ui/messages/android/java/src/org/chromium/chrome/bro
} }
/** /**
@@ -124,6 +126,7 @@ public class SnackbarView implements InsetObserver.WindowInsetObserver { @@ -125,6 +127,7 @@ public class SnackbarView implements InsetObserver.WindowInsetObserver {
public SnackbarView( public SnackbarView(
Activity activity, Activity activity,
OnClickListener listener, OnClickListener listener,
@@ -574,7 +576,7 @@ diff --git a/chrome/browser/ui/messages/android/java/src/org/chromium/chrome/bro
Snackbar snackbar, Snackbar snackbar,
ViewGroup parentView, ViewGroup parentView,
@Nullable WindowAndroid windowAndroid, @Nullable WindowAndroid windowAndroid,
@@ -154,6 +157,8 @@ public class SnackbarView implements InsetObserver.WindowInsetObserver { @@ -155,6 +158,8 @@ public class SnackbarView implements InsetObserver.WindowInsetObserver {
(TemplatePreservingTextView) mContainerView.findViewById(R.id.snackbar_message); (TemplatePreservingTextView) mContainerView.findViewById(R.id.snackbar_message);
mActionButtonView = (TextView) mContainerView.findViewById(R.id.snackbar_button); mActionButtonView = (TextView) mContainerView.findViewById(R.id.snackbar_button);
mActionButtonView.setOnClickListener(listener); mActionButtonView.setOnClickListener(listener);
@@ -583,7 +585,7 @@ diff --git a/chrome/browser/ui/messages/android/java/src/org/chromium/chrome/bro
mProfileImageView = (ImageView) mContainerView.findViewById(R.id.snackbar_profile_image); mProfileImageView = (ImageView) mContainerView.findViewById(R.id.snackbar_profile_image);
mEdgeToEdgeSupplier = edgeToEdgeSupplier; mEdgeToEdgeSupplier = edgeToEdgeSupplier;
if (SnackbarManager.isFloatingSnackbarEnabled()) { if (SnackbarManager.isFloatingSnackbarEnabled()) {
@@ -428,6 +433,12 @@ public class SnackbarView implements InsetObserver.WindowInsetObserver { @@ -429,6 +434,12 @@ public class SnackbarView implements InsetObserver.WindowInsetObserver {
mActionButtonView.setVisibility(View.VISIBLE); mActionButtonView.setVisibility(View.VISIBLE);
mActionButtonView.setContentDescription(snackbar.getActionText()); mActionButtonView.setContentDescription(snackbar.getActionText());
setViewText(mActionButtonView, snackbar.getActionText(), animate); setViewText(mActionButtonView, snackbar.getActionText(), animate);
@@ -599,7 +601,7 @@ diff --git a/chrome/browser/ui/messages/android/java/src/org/chromium/chrome/bro
diff --git a/content/browser/web_contents/web_contents_android.cc b/content/browser/web_contents/web_contents_android.cc diff --git a/content/browser/web_contents/web_contents_android.cc b/content/browser/web_contents/web_contents_android.cc
--- a/content/browser/web_contents/web_contents_android.cc --- a/content/browser/web_contents/web_contents_android.cc
+++ b/content/browser/web_contents/web_contents_android.cc +++ b/content/browser/web_contents/web_contents_android.cc
@@ -903,6 +903,22 @@ void WebContentsAndroid::SetFocus(JNIEnv* env, jboolean focused) { @@ -904,6 +904,22 @@ void WebContentsAndroid::SetFocus(JNIEnv* env, jboolean focused) {
view->SetFocus(focused); view->SetFocus(focused);
} }
@@ -636,7 +638,7 @@ diff --git a/content/browser/web_contents/web_contents_android.h b/content/brows
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
--- a/content/browser/web_contents/web_contents_impl.cc --- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc
@@ -4080,8 +4080,10 @@ void WebContentsImpl::Stop() { @@ -4076,8 +4076,10 @@ void WebContentsImpl::Stop() {
void WebContentsImpl::SetPageFrozen(bool frozen) { void WebContentsImpl::SetPageFrozen(bool frozen) {
TRACE_EVENT1("content", "WebContentsImpl::SetPageFrozen", "frozen", frozen); TRACE_EVENT1("content", "WebContentsImpl::SetPageFrozen", "frozen", frozen);
@@ -663,7 +665,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/webcon
@Override @Override
public void setDisplayCutoutSafeArea(Rect insets) { public void setDisplayCutoutSafeArea(Rect insets) {
if (mNativeWebContentsAndroid == 0) return; if (mNativeWebContentsAndroid == 0) return;
@@ -1447,6 +1453,8 @@ public class WebContentsImpl @@ -1460,6 +1466,8 @@ public class WebContentsImpl
void setFocus(long nativeWebContentsAndroid, boolean focused); void setFocus(long nativeWebContentsAndroid, boolean focused);
@@ -732,7 +734,7 @@ new file mode 100644
diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink/renderer/core/dom/document.cc diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink/renderer/core/dom/document.cc
--- a/third_party/blink/renderer/core/dom/document.cc --- a/third_party/blink/renderer/core/dom/document.cc
+++ b/third_party/blink/renderer/core/dom/document.cc +++ b/third_party/blink/renderer/core/dom/document.cc
@@ -4614,6 +4614,7 @@ void Document::DispatchUnloadEvents(UnloadEventTimingInfo* unload_timing_info) { @@ -4630,6 +4630,7 @@ void Document::DispatchUnloadEvents(UnloadEventTimingInfo* unload_timing_info) {
} }
void Document::DispatchFreezeEvent() { void Document::DispatchFreezeEvent() {
@@ -743,7 +745,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink
diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc
--- a/third_party/blink/renderer/core/frame/local_frame.cc --- a/third_party/blink/renderer/core/frame/local_frame.cc
+++ b/third_party/blink/renderer/core/frame/local_frame.cc +++ b/third_party/blink/renderer/core/frame/local_frame.cc
@@ -3273,6 +3273,7 @@ void LocalFrame::DidFreeze() { @@ -3312,6 +3312,7 @@ void LocalFrame::DidFreeze() {
LoaderFreezeMode freeze_mode = GetLoaderFreezeMode(); LoaderFreezeMode freeze_mode = GetLoaderFreezeMode();
GetDocument()->Fetcher()->SetDefersLoading(freeze_mode); GetDocument()->Fetcher()->SetDefersLoading(freeze_mode);
Loader().SetDefersLoading(freeze_mode); Loader().SetDefersLoading(freeze_mode);
@@ -751,7 +753,7 @@ diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/
} }
void LocalFrame::DidResume() { void LocalFrame::DidResume() {
@@ -3287,6 +3288,7 @@ void LocalFrame::DidResume() { @@ -3326,6 +3327,7 @@ void LocalFrame::DidResume() {
GetDocument()->Fetcher()->SetDefersLoading(LoaderFreezeMode::kNone); GetDocument()->Fetcher()->SetDefersLoading(LoaderFreezeMode::kNone);
Loader().SetDefersLoading(LoaderFreezeMode::kNone); Loader().SetDefersLoading(LoaderFreezeMode::kNone);
@@ -15,9 +15,9 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../modules/webaudio/base_audio_context.cc | 12 ++++++++++++ .../modules/webaudio/base_audio_context.cc | 12 ++++++++++++
.../renderer/modules/webaudio/base_audio_context.h | 2 ++ .../renderer/modules/webaudio/base_audio_context.h | 2 ++
.../modules/webaudio/offline_audio_context.cc | 1 + .../modules/webaudio/offline_audio_context.cc | 1 +
.../renderer/modules/webaudio/realtime_analyser.cc | 9 ++++++++- .../renderer/modules/webaudio/realtime_analyser.cc | 13 ++++++++++---
.../platform/runtime_enabled_features.json5 | 5 ++--- .../platform/runtime_enabled_features.json5 | 5 ++---
11 files changed, 57 insertions(+), 5 deletions(-) 11 files changed, 59 insertions(+), 7 deletions(-)
create mode 100644 cromite_flags/chrome/browser/about_flags_cc/AudioBuffer-AnalyserNode-fp-mitigations.inc create mode 100644 cromite_flags/chrome/browser/about_flags_cc/AudioBuffer-AnalyserNode-fp-mitigations.inc
create mode 100644 cromite_flags/third_party/blink/common/features_cc/AudioBuffer-AnalyserNode-fp-mitigations.inc create mode 100644 cromite_flags/third_party/blink/common/features_cc/AudioBuffer-AnalyserNode-fp-mitigations.inc
create mode 100644 cromite_flags/third_party/blink/common/features_h/AudioBuffer-AnalyserNode-fp-mitigations.inc create mode 100644 cromite_flags/third_party/blink/common/features_h/AudioBuffer-AnalyserNode-fp-mitigations.inc
@@ -88,7 +88,7 @@ diff --git a/third_party/blink/renderer/modules/webaudio/audio_buffer.h b/third_
diff --git a/third_party/blink/renderer/modules/webaudio/audio_context.cc b/third_party/blink/renderer/modules/webaudio/audio_context.cc diff --git a/third_party/blink/renderer/modules/webaudio/audio_context.cc b/third_party/blink/renderer/modules/webaudio/audio_context.cc
--- a/third_party/blink/renderer/modules/webaudio/audio_context.cc --- a/third_party/blink/renderer/modules/webaudio/audio_context.cc
+++ b/third_party/blink/renderer/modules/webaudio/audio_context.cc +++ b/third_party/blink/renderer/modules/webaudio/audio_context.cc
@@ -16,6 +16,7 @@ @@ -17,6 +17,7 @@
#include "third_party/blink/public/common/features.h" #include "third_party/blink/public/common/features.h"
#include "third_party/blink/public/common/mediastream/media_devices.h" #include "third_party/blink/public/common/mediastream/media_devices.h"
#include "third_party/blink/public/platform/browser_interface_broker_proxy.h" #include "third_party/blink/public/platform/browser_interface_broker_proxy.h"
@@ -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/modules/webrtc/webrtc_logging.h"
#include "third_party/blink/public/platform/web_audio_latency_hint.h" #include "third_party/blink/public/platform/web_audio_latency_hint.h"
#include "third_party/blink/renderer/bindings/core/v8/script_promise_resolver.h" #include "third_party/blink/renderer/bindings/core/v8/script_promise_resolver.h"
@@ -678,7 +679,9 @@ double AudioContext::baseLatency() const { @@ -850,7 +851,9 @@ double AudioContext::baseLatency() const {
DCHECK_CALLED_ON_VALID_SEQUENCE(main_thread_sequence_checker_); DCHECK_CALLED_ON_VALID_SEQUENCE(main_thread_sequence_checker_);
DCHECK(destination()); 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/devtools/console_message.mojom-blink.h"
#include "third_party/blink/public/mojom/frame/lifecycle.mojom-shared.h" #include "third_party/blink/public/mojom/frame/lifecycle.mojom-shared.h"
#include "third_party/blink/public/platform/platform.h" #include "third_party/blink/public/platform/platform.h"
@@ -710,6 +711,17 @@ LocalDOMWindow* BaseAudioContext::GetWindow() const { @@ -774,6 +775,17 @@ LocalDOMWindow* BaseAudioContext::GetWindow() const {
return To<LocalDOMWindow>(GetExecutionContext()); return To<LocalDOMWindow>(GetExecutionContext());
} }
@@ -170,25 +170,22 @@ diff --git a/third_party/blink/renderer/modules/webaudio/realtime_analyser.cc b/
#include "third_party/blink/renderer/platform/audio/audio_bus.h" #include "third_party/blink/renderer/platform/audio/audio_bus.h"
#include "third_party/blink/renderer/platform/audio/audio_utilities.h" #include "third_party/blink/renderer/platform/audio/audio_utilities.h"
#include "third_party/blink/renderer/platform/audio/vector_math.h" #include "third_party/blink/renderer/platform/audio/vector_math.h"
@@ -156,6 +157,7 @@ void RealtimeAnalyser::GetFloatTimeDomainData( @@ -117,7 +118,8 @@ void RealtimeAnalyser::GetFloatFrequencyData(DOMFloat32Array* destination_array,
input_buffer[(i + write_index - fft_size + kInputBufferSize) % for (unsigned i = 0; i < len; ++i) {
kInputBufferSize]); const float linear_value = UNSAFE_TODO(source[i]);
const double db_mag = audio_utilities::LinearToDecibels(linear_value);
+ value = BaseAudioContext::ShuffleAudioData(value, i); - UNSAFE_TODO(destination[i]) = static_cast<float>(db_mag);
UNSAFE_TODO(destination[i]) = value; + auto v = static_cast<float>(db_mag);
+ UNSAFE_TODO(destination[i]) = BaseAudioContext::ShuffleAudioData(v, i);
} }
} }
@@ -183,6 +185,8 @@ void RealtimeAnalyser::GetByteTimeDomainData(DOMUint8Array* destination_array) { }
input_buffer[(i + write_index - fft_size + kInputBufferSize) % @@ -155,9 +157,11 @@ void RealtimeAnalyser::GetByteFrequencyData(DOMUint8Array* destination_array,
kInputBufferSize]);
+ value = BaseAudioContext::ShuffleAudioData(value, i); // The range m_minDecibels to m_maxDecibels will be scaled to byte values
+ // from 0 to UCHAR_MAX.
// Scale from nominal -1 -> +1 to unsigned byte. - const double scaled_value =
double scaled_value = 128 * (value + 1); + double scaled_value =
@@ -306,6 +310,8 @@ void RealtimeAnalyser::ConvertToByteData(DOMUint8Array* destination_array) {
double scaled_value =
UCHAR_MAX * (db_mag - min_decibels) * range_scale_factor; UCHAR_MAX * (db_mag - min_decibels) * range_scale_factor;
+ scaled_value = BaseAudioContext::ShuffleAudioData(scaled_value, i); + scaled_value = BaseAudioContext::ShuffleAudioData(scaled_value, i);
@@ -196,20 +193,32 @@ diff --git a/third_party/blink/renderer/modules/webaudio/realtime_analyser.cc b/
// Clip to valid range. // Clip to valid range.
UNSAFE_TODO(destination[i]) = UNSAFE_TODO(destination[i]) =
static_cast<unsigned char>(ClampTo(scaled_value, 0, UCHAR_MAX)); static_cast<unsigned char>(ClampTo(scaled_value, 0, UCHAR_MAX));
@@ -324,7 +330,8 @@ void RealtimeAnalyser::ConvertFloatToDb(DOMFloat32Array* destination_array) { @@ -188,6 +192,7 @@ void RealtimeAnalyser::GetFloatTimeDomainData(
for (unsigned i = 0; i < len; ++i) { input_buffer[(i + write_index - fft_size + kInputBufferSize) %
float linear_value = UNSAFE_TODO(source[i]); kInputBufferSize]);
double db_mag = audio_utilities::LinearToDecibels(linear_value);
- UNSAFE_TODO(destination[i]) = static_cast<float>(db_mag); + value = BaseAudioContext::ShuffleAudioData(value, i);
+ auto v = static_cast<float>(db_mag); UNSAFE_TODO(destination[i]) = value;
+ UNSAFE_TODO(destination[i]) = BaseAudioContext::ShuffleAudioData(v, i);
} }
} }
} @@ -211,10 +216,12 @@ void RealtimeAnalyser::GetByteTimeDomainData(DOMUint8Array* destination_array) {
for (unsigned i = 0; i < len; ++i) {
// Buffer access is protected due to modulo operation.
- const float value = UNSAFE_TODO(
+ float value = UNSAFE_TODO(
input_buffer[(i + write_index - fft_size + kInputBufferSize) %
kInputBufferSize]);
+ value = BaseAudioContext::ShuffleAudioData(value, i);
+
// Scale from nominal -1 -> +1 to unsigned byte.
const double scaled_value = 128 * (value + 1);
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 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 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -575,9 +575,8 @@ @@ -594,9 +594,8 @@
{ {
// AudioContext.playoutStats interface. // AudioContext.playoutStats interface.
// https://chromestatus.com/feature/5172818344148992 // https://chromestatus.com/feature/5172818344148992
@@ -23,7 +23,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/third_party/blink/renderer/core/execution_context/execution_context.h b/third_party/blink/renderer/core/execution_context/execution_context.h diff --git a/third_party/blink/renderer/core/execution_context/execution_context.h b/third_party/blink/renderer/core/execution_context/execution_context.h
--- a/third_party/blink/renderer/core/execution_context/execution_context.h --- a/third_party/blink/renderer/core/execution_context/execution_context.h
+++ b/third_party/blink/renderer/core/execution_context/execution_context.h +++ b/third_party/blink/renderer/core/execution_context/execution_context.h
@@ -395,6 +395,7 @@ class CORE_EXPORT ExecutionContext : public Supplementable<ExecutionContext>, @@ -397,6 +397,7 @@ class CORE_EXPORT ExecutionContext : public Supplementable<ExecutionContext>,
void SetAddressSpace(network::mojom::blink::IPAddressSpace ip_address_space); void SetAddressSpace(network::mojom::blink::IPAddressSpace ip_address_space);
HeapObserverList<ContextLifecycleObserver>& ContextLifecycleObserverSet(); HeapObserverList<ContextLifecycleObserver>& ContextLifecycleObserverSet();
@@ -25,7 +25,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc 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 --- a/content/browser/renderer_host/render_frame_host_impl.cc
+++ b/content/browser/renderer_host/render_frame_host_impl.cc +++ b/content/browser/renderer_host/render_frame_host_impl.cc
@@ -5133,7 +5133,17 @@ void RenderFrameHostImpl::SetLastCommittedOrigin( @@ -5141,7 +5141,17 @@ void RenderFrameHostImpl::SetLastCommittedOrigin(
} }
void RenderFrameHostImpl::SetInheritedBaseUrl(const GURL& inherited_base_url) { void RenderFrameHostImpl::SetInheritedBaseUrl(const GURL& inherited_base_url) {
@@ -118,7 +118,7 @@ diff --git a/third_party/blink/renderer/core/loader/document_loader.cc b/third_p
return referrer_; return referrer_;
} }
@@ -2898,6 +2903,13 @@ void DocumentLoader::CommitNavigation() { @@ -2901,6 +2906,13 @@ void DocumentLoader::CommitNavigation() {
response_.HttpHeaderField(http_names::kDocumentPolicyReportOnly)); response_.HttpHeaderField(http_names::kDocumentPolicyReportOnly));
} }
@@ -93,7 +93,7 @@ diff --git a/components/omnibox/browser/autocomplete_input.cc b/components/omnib
diff --git a/components/url_formatter/url_fixer.cc b/components/url_formatter/url_fixer.cc diff --git a/components/url_formatter/url_fixer.cc b/components/url_formatter/url_fixer.cc
--- a/components/url_formatter/url_fixer.cc --- a/components/url_formatter/url_fixer.cc
+++ b/components/url_formatter/url_fixer.cc +++ b/components/url_formatter/url_fixer.cc
@@ -602,6 +602,10 @@ GURL FixupURLInternal(const std::string& text, @@ -598,6 +598,10 @@ GURL FixupURLInternal(const std::string& text,
} }
} }
@@ -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 diff --git a/net/BUILD.gn b/net/BUILD.gn
--- a/net/BUILD.gn --- a/net/BUILD.gn
+++ b/net/BUILD.gn +++ b/net/BUILD.gn
@@ -1127,6 +1127,8 @@ component("net") { @@ -1137,6 +1137,8 @@ component("net") {
"url_request/url_request_http_job.cc", "url_request/url_request_http_job.cc",
"url_request/url_request_http_job.h", "url_request/url_request_http_job.h",
"url_request/url_request_interceptor.cc", "url_request/url_request_interceptor.cc",
+41 -41
View File
@@ -71,7 +71,7 @@ diff --git a/build/android/java/templates/BuildConfig.template b/build/android/j
diff --git a/build/config/android/rules.gni b/build/config/android/rules.gni diff --git a/build/config/android/rules.gni b/build/config/android/rules.gni
--- a/build/config/android/rules.gni --- a/build/config/android/rules.gni
+++ b/build/config/android/rules.gni +++ b/build/config/android/rules.gni
@@ -1945,6 +1945,9 @@ if (!is_robolectric && enable_java_templates) { @@ -1954,6 +1954,9 @@ if (!is_robolectric && enable_java_templates) {
sources = [ "//build/android/java/templates/BuildConfig.template" ] sources = [ "//build/android/java/templates/BuildConfig.template" ]
defines = [] defines = []
@@ -84,7 +84,7 @@ diff --git a/build/config/android/rules.gni b/build/config/android/rules.gni
diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni
--- a/chrome/android/chrome_java_sources.gni --- a/chrome/android/chrome_java_sources.gni
+++ b/chrome/android/chrome_java_sources.gni +++ b/chrome/android/chrome_java_sources.gni
@@ -833,6 +833,8 @@ chrome_java_sources = [ @@ -839,6 +839,8 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/omaha/OmahaBase.java", "java/src/org/chromium/chrome/browser/omaha/OmahaBase.java",
"java/src/org/chromium/chrome/browser/omaha/OmahaDelegate.java", "java/src/org/chromium/chrome/browser/omaha/OmahaDelegate.java",
"java/src/org/chromium/chrome/browser/omaha/OmahaDelegateBase.java", "java/src/org/chromium/chrome/browser/omaha/OmahaDelegateBase.java",
@@ -121,7 +121,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/about_settings/
+ +
/** Settings fragment that displays information about Chrome. */ /** Settings fragment that displays information about Chrome. */
@NullMarked @NullMarked
public class AboutChromeSettings extends PreferenceFragmentCompat public class AboutChromeSettings extends ChromeBaseSettingsFragment
- implements EmbeddableSettingsPage, Preference.OnPreferenceClickListener { - implements EmbeddableSettingsPage, Preference.OnPreferenceClickListener {
+ implements EmbeddableSettingsPage, Preference.OnPreferenceClickListener, + implements EmbeddableSettingsPage, Preference.OnPreferenceClickListener,
+ Preference.OnPreferenceChangeListener { + Preference.OnPreferenceChangeListener {
@@ -132,7 +132,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/about_settings/
private static final String PREF_OS_VERSION = "os_version"; private static final String PREF_OS_VERSION = "os_version";
private static final String PREF_LEGAL_INFORMATION = "legal_information"; private static final String PREF_LEGAL_INFORMATION = "legal_information";
@@ -72,6 +78,13 @@ public class AboutChromeSettings extends PreferenceFragmentCompat @@ -72,6 +78,13 @@ public class AboutChromeSettings extends ChromeBaseSettingsFragment
assumeNonNull(p); assumeNonNull(p);
int currentYear = Calendar.getInstance().get(Calendar.YEAR); int currentYear = Calendar.getInstance().get(Calendar.YEAR);
p.setSummary(getString(R.string.legal_information_summary, currentYear)); p.setSummary(getString(R.string.legal_information_summary, currentYear));
@@ -146,7 +146,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/about_settings/
} }
@Override @Override
@@ -142,6 +155,19 @@ public class AboutChromeSettings extends PreferenceFragmentCompat @@ -142,6 +155,19 @@ public class AboutChromeSettings extends ChromeBaseSettingsFragment
return true; return true;
} }
@@ -246,7 +246,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/UpdateMen
import android.view.Choreographer; import android.view.Choreographer;
+import androidx.annotation.StringRes; +import androidx.annotation.StringRes;
import org.chromium.base.BuildInfo; import org.chromium.base.ApkInfo;
import org.chromium.base.Callback; import org.chromium.base.Callback;
@@ -23,6 +24,7 @@ import org.chromium.build.annotations.Nullable; @@ -23,6 +24,7 @@ import org.chromium.build.annotations.Nullable;
import org.chromium.chrome.R; import org.chromium.chrome.R;
@@ -312,7 +312,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/UpdateMen
// The badge is hidden if the update menu item has been clicked until there is an // The badge is hidden if the update menu item has been clicked until there is an
// even newer version of Chrome available. // even newer version of Chrome available.
showBadge |= showBadge |=
@@ -255,6 +270,72 @@ public class UpdateMenuItemHelper { @@ -254,6 +269,72 @@ public class UpdateMenuItemHelper {
mMenuUiState.itemState.icon = R.drawable.ic_error_24dp_filled; mMenuUiState.itemState.icon = R.drawable.ic_error_24dp_filled;
mMenuUiState.itemState.enabled = false; mMenuUiState.itemState.enabled = false;
break; break;
@@ -678,7 +678,7 @@ new file mode 100644
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn
@@ -2685,6 +2685,12 @@ static_library("browser") { @@ -2674,6 +2674,12 @@ static_library("browser") {
} }
if (is_android) { if (is_android) {
@@ -1091,7 +1091,7 @@ new file mode 100644
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc 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 --- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc +++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -363,6 +363,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { @@ -372,6 +372,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
&kProtectedTabsAndroid, &kProtectedTabsAndroid,
&kPwaRestoreUi, &kPwaRestoreUi,
&kPwaRestoreUiAtStartup, &kPwaRestoreUiAtStartup,
@@ -1102,10 +1102,10 @@ 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 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 --- 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 +++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
@@ -453,6 +453,7 @@ public abstract class ChromeFeatureList { @@ -462,6 +462,7 @@ public abstract class ChromeFeatureList {
public static final String HUB_BACK_BUTTON = "HubBackButton";
public static final String HUB_SLIDE_ANIMATION = "HubSlideAnimation"; public static final String HUB_SLIDE_ANIMATION = "HubSlideAnimation";
public static final String INCOGNITO_SCREENSHOT = "IncognitoScreenshot"; public static final String INCOGNITO_SCREENSHOT = "IncognitoScreenshot";
public static final String INCOGNITO_THEME_OVERLAY_TESTING = "IncognitoThemeOverlayTesting";
+ public static final String INLINE_UPDATE_FLOW = "InlineUpdateFlow"; + public static final String INLINE_UPDATE_FLOW = "InlineUpdateFlow";
public static final String INSTANCE_SWITCHER_V2 = "InstanceSwitcherV2"; public static final String INSTANCE_SWITCHER_V2 = "InstanceSwitcherV2";
public static final String IP_PROTECTION_UX = "IpProtectionUx"; public static final String IP_PROTECTION_UX = "IpProtectionUx";
@@ -1282,10 +1282,10 @@ diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/o
+import org.chromium.base.ActivityState; +import org.chromium.base.ActivityState;
+import org.chromium.base.ApplicationStatus; +import org.chromium.base.ApplicationStatus;
+import org.chromium.base.ApplicationStatus.ActivityStateListener; +import org.chromium.base.ApplicationStatus.ActivityStateListener;
import org.chromium.base.BuildInfo; import org.chromium.base.ApkInfo;
import org.chromium.base.Callback; import org.chromium.base.Callback;
import org.chromium.base.ObserverList; import org.chromium.base.DeviceInfo;
@@ -30,6 +33,7 @@ import org.chromium.base.task.TaskTraits; @@ -31,6 +34,7 @@ import org.chromium.base.task.TaskTraits;
import org.chromium.build.annotations.NullMarked; import org.chromium.build.annotations.NullMarked;
import org.chromium.build.annotations.Nullable; import org.chromium.build.annotations.Nullable;
import org.chromium.build.annotations.RequiresNonNull; import org.chromium.build.annotations.RequiresNonNull;
@@ -1293,7 +1293,7 @@ diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/o
import org.chromium.chrome.browser.omaha.metrics.UpdateSuccessMetrics; import org.chromium.chrome.browser.omaha.metrics.UpdateSuccessMetrics;
import org.chromium.chrome.browser.preferences.ChromePreferenceKeys; import org.chromium.chrome.browser.preferences.ChromePreferenceKeys;
import org.chromium.chrome.browser.preferences.ChromeSharedPreferences; import org.chromium.chrome.browser.preferences.ChromeSharedPreferences;
@@ -39,6 +43,11 @@ import java.io.File; @@ -40,6 +44,11 @@ import java.io.File;
import java.lang.annotation.Retention; import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy; import java.lang.annotation.RetentionPolicy;
@@ -1305,7 +1305,7 @@ diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/o
/** /**
* Provides the current update state for Chrome. This update state is asynchronously determined and * Provides the current update state for Chrome. This update state is asynchronously determined and
* can change as Chrome runs. * can change as Chrome runs.
@@ -46,24 +55,26 @@ import java.lang.annotation.RetentionPolicy; @@ -47,24 +56,26 @@ import java.lang.annotation.RetentionPolicy;
* For manually testing this functionality, see {@link UpdateConfigs}. * For manually testing this functionality, see {@link UpdateConfigs}.
*/ */
@NullMarked @NullMarked
@@ -1340,7 +1340,7 @@ diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/o
} }
/** A set of properties that represent the current update state for Chrome. */ /** A set of properties that represent the current update state for Chrome. */
@@ -97,6 +108,12 @@ public class UpdateStatusProvider { @@ -98,6 +109,12 @@ public class UpdateStatusProvider {
*/ */
private boolean mIsSimulated; private boolean mIsSimulated;
@@ -1353,7 +1353,7 @@ diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/o
public UpdateStatus() {} public UpdateStatus() {}
UpdateStatus(UpdateStatus other) { UpdateStatus(UpdateStatus other) {
@@ -105,11 +122,13 @@ public class UpdateStatusProvider { @@ -106,11 +123,13 @@ public class UpdateStatusProvider {
latestVersion = other.latestVersion; latestVersion = other.latestVersion;
latestUnsupportedVersion = other.latestUnsupportedVersion; latestUnsupportedVersion = other.latestUnsupportedVersion;
mIsSimulated = other.mIsSimulated; mIsSimulated = other.mIsSimulated;
@@ -1367,7 +1367,7 @@ diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/o
private final UpdateQuery mOmahaQuery; private final UpdateQuery mOmahaQuery;
private final UpdateSuccessMetrics mMetrics; private final UpdateSuccessMetrics mMetrics;
private @Nullable UpdateStatus mStatus; private @Nullable UpdateStatus mStatus;
@@ -117,11 +136,6 @@ public class UpdateStatusProvider { @@ -118,11 +137,6 @@ public class UpdateStatusProvider {
/** Whether or not we've recorded the initial update status yet. */ /** Whether or not we've recorded the initial update status yet. */
private boolean mRecordedInitialStatus; private boolean mRecordedInitialStatus;
@@ -1379,7 +1379,7 @@ diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/o
/** /**
* Adds {@code observer} to notify about update state changes. It is safe to call this multiple * Adds {@code observer} to notify about update state changes. It is safe to call this multiple
* times with the same {@code observer}. This method will always notify {@code observer} of the * times with the same {@code observer}. This method will always notify {@code observer} of the
@@ -177,6 +191,30 @@ public class UpdateStatusProvider { @@ -178,6 +192,30 @@ public class UpdateStatusProvider {
pingObservers(); pingObservers();
} }
@@ -1410,7 +1410,7 @@ diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/o
/** /**
* Starts the intent update process, if possible * Starts the intent update process, if possible
* @param context An {@link Context} that will be used to fire off the update intent. * @param context An {@link Context} that will be used to fire off the update intent.
@@ -184,12 +222,11 @@ public class UpdateStatusProvider { @@ -185,12 +223,11 @@ public class UpdateStatusProvider {
* @return Whether or not the update intent was sent and had a valid handler. * @return Whether or not the update intent was sent and had a valid handler.
*/ */
public boolean startIntentUpdate(Context context, boolean newTask) { public boolean startIntentUpdate(Context context, boolean newTask) {
@@ -1424,7 +1424,7 @@ diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/o
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(mStatus.updateUrl)); Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(mStatus.updateUrl));
if (newTask) intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); if (newTask) intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent); context.startActivity(intent);
@@ -200,9 +237,15 @@ public class UpdateStatusProvider { @@ -201,9 +238,15 @@ public class UpdateStatusProvider {
return true; return true;
} }
@@ -1442,7 +1442,7 @@ diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/o
} }
@RequiresNonNull("mStatus") @RequiresNonNull("mStatus")
@@ -211,35 +254,52 @@ public class UpdateStatusProvider { @@ -212,35 +255,52 @@ public class UpdateStatusProvider {
} }
private void resolveStatus() { private void resolveStatus() {
@@ -1504,7 +1504,7 @@ diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/o
mCallback = resultReceiver; mCallback = resultReceiver;
} }
@@ -251,7 +311,7 @@ public class UpdateStatusProvider { @@ -252,7 +312,7 @@ public class UpdateStatusProvider {
protected UpdateStatus doInBackground() { protected UpdateStatus doInBackground() {
UpdateStatus testStatus = getTestStatus(); UpdateStatus testStatus = getTestStatus();
if (testStatus != null) return testStatus; if (testStatus != null) return testStatus;
@@ -1513,7 +1513,7 @@ diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/o
} }
@Override @Override
@@ -269,6 +329,8 @@ public class UpdateStatusProvider { @@ -270,6 +330,8 @@ public class UpdateStatusProvider {
status.mIsSimulated = true; status.mIsSimulated = true;
status.updateState = forcedUpdateState; status.updateState = forcedUpdateState;
@@ -1522,7 +1522,7 @@ diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/o
// Push custom configurations for certain update states. // Push custom configurations for certain update states.
switch (forcedUpdateState) { switch (forcedUpdateState) {
case UpdateState.UPDATE_AVAILABLE: case UpdateState.UPDATE_AVAILABLE:
@@ -286,31 +348,33 @@ public class UpdateStatusProvider { @@ -287,31 +349,33 @@ public class UpdateStatusProvider {
return status; return status;
} }
@@ -1537,7 +1537,7 @@ diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/o
- boolean allowedToUpdate = - boolean allowedToUpdate =
- checkForSufficientStorage() - checkForSufficientStorage()
- // Disable the version update check for automotive. See b/297925838. - // Disable the version update check for automotive. See b/297925838.
- && !BuildInfo.getInstance().isAutomotive - && !DeviceInfo.isAutomotive()
- && PackageUtils.isPackageInstalled( - && PackageUtils.isPackageInstalled(
- GooglePlayServicesUtil.GOOGLE_PLAY_STORE_PACKAGE); - GooglePlayServicesUtil.GOOGLE_PLAY_STORE_PACKAGE);
- status.updateState = - status.updateState =
@@ -1680,7 +1680,7 @@ diff --git a/chrome/browser/safety_hub/android/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 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 --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -2324,6 +2324,12 @@ Your Google account may have other forms of browsing history like searches and a @@ -2273,6 +2273,12 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_DEPRECATION_WARNING" desc="Warning about Chrome updates no longer being supported"> <message name="IDS_DEPRECATION_WARNING" desc="Warning about Chrome updates no longer being supported">
Chrome updates are no longer supported for this version of Android Chrome updates are no longer supported for this version of Android
</message> </message>
@@ -1693,7 +1693,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
<!-- Account management UI strings. --> <!-- Account management UI strings. -->
<message name="IDS_ACCOUNT_MANAGEMENT_TITLE" desc="Header title for the account management screen. [CHAR_LIMIT=32]"> <message name="IDS_ACCOUNT_MANAGEMENT_TITLE" desc="Header title for the account management screen. [CHAR_LIMIT=32]">
@@ -4288,7 +4294,10 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>delete the Chrome d @@ -4249,7 +4255,10 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>delete the Chrome d
<!-- Main menu items --> <!-- Main menu items -->
<message name="IDS_MENU_UPDATE" desc="Menu item for updating chrome. [CHAR_LIMIT=24]"> <message name="IDS_MENU_UPDATE" desc="Menu item for updating chrome. [CHAR_LIMIT=24]">
@@ -1705,7 +1705,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
</message> </message>
<message name="IDS_MENU_UPDATE_SUMMARY_DEFAULT" desc="Summary string for update menu item explaining that a newer version of Chrome is available. [CHAR_LIMIT=30]"> <message name="IDS_MENU_UPDATE_SUMMARY_DEFAULT" desc="Summary string for update menu item explaining that a newer version of Chrome is available. [CHAR_LIMIT=30]">
Newer version is available Newer version is available
@@ -4299,6 +4308,18 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>delete the Chrome d @@ -4260,6 +4269,18 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>delete the Chrome d
<message name="IDS_MENU_UPDATE_UNSUPPORTED_SUMMARY_DEFAULT" desc="Summary string for update menu item explaining that the Android version on the device is unsupported. [CHAR_LIMIT=30]"> <message name="IDS_MENU_UPDATE_UNSUPPORTED_SUMMARY_DEFAULT" desc="Summary string for update menu item explaining that the Android version on the device is unsupported. [CHAR_LIMIT=30]">
Android version is unsupported Android version is unsupported
</message> </message>
@@ -1727,7 +1727,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
diff --git a/chrome/browser/ui/lens/lens_overlay_query_controller.cc b/chrome/browser/ui/lens/lens_overlay_query_controller.cc diff --git a/chrome/browser/ui/lens/lens_overlay_query_controller.cc b/chrome/browser/ui/lens/lens_overlay_query_controller.cc
--- a/chrome/browser/ui/lens/lens_overlay_query_controller.cc --- a/chrome/browser/ui/lens/lens_overlay_query_controller.cc
+++ b/chrome/browser/ui/lens/lens_overlay_query_controller.cc +++ b/chrome/browser/ui/lens/lens_overlay_query_controller.cc
@@ -802,6 +802,7 @@ LensOverlayQueryController::CreateEndpointFetcher( @@ -712,6 +712,7 @@ LensOverlayQueryController::CreateEndpointFetcher(
/*post_data=*/std::move(request_string), /*post_data=*/std::move(request_string),
/*headers=*/request_headers, /*headers=*/request_headers,
/*cors_exempt_headers=*/cors_exempt_headers, chrome::GetChannel(), /*cors_exempt_headers=*/cors_exempt_headers, chrome::GetChannel(),
@@ -1966,7 +1966,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.cc b/components/endpoi
diff --git a/components/endpoint_fetcher/endpoint_fetcher.h b/components/endpoint_fetcher/endpoint_fetcher.h diff --git a/components/endpoint_fetcher/endpoint_fetcher.h b/components/endpoint_fetcher/endpoint_fetcher.h
--- a/components/endpoint_fetcher/endpoint_fetcher.h --- a/components/endpoint_fetcher/endpoint_fetcher.h
+++ b/components/endpoint_fetcher/endpoint_fetcher.h +++ b/components/endpoint_fetcher/endpoint_fetcher.h
@@ -21,6 +21,8 @@ @@ -23,6 +23,8 @@
namespace base { namespace base {
class TimeDelta; class TimeDelta;
} // namespace base } // namespace base
@@ -1975,7 +1975,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.h b/components/endpoin
namespace network { namespace network {
class SimpleURLLoader; class SimpleURLLoader;
@@ -59,6 +61,7 @@ enum class HttpMethod { @@ -60,6 +62,7 @@ enum class HttpMethod {
kGet = 0, kGet = 0,
kPost = 1, kPost = 1,
kDelete = 2, kDelete = 2,
@@ -1983,7 +1983,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.h b/components/endpoin
}; };
enum AuthType { enum AuthType {
@@ -72,6 +75,8 @@ enum AuthType { @@ -73,6 +76,8 @@ enum AuthType {
struct EndpointResponse { struct EndpointResponse {
std::string response; std::string response;
@@ -1992,7 +1992,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.h b/components/endpoin
int http_status_code{-1}; int http_status_code{-1};
std::optional<FetchErrorType> error_type; std::optional<FetchErrorType> error_type;
}; };
@@ -359,6 +364,7 @@ class EndpointFetcher { @@ -360,6 +365,7 @@ class EndpointFetcher {
const std::vector<std::string>& headers, const std::vector<std::string>& headers,
const std::vector<std::string>& cors_exempt_headers, const std::vector<std::string>& cors_exempt_headers,
version_info::Channel channel, version_info::Channel channel,
@@ -2000,7 +2000,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.h b/components/endpoin
const RequestParams request_params); const RequestParams request_params);
// Less preferred convenience constructor for requests requiring no // Less preferred convenience constructor for requests requiring no
@@ -375,6 +381,14 @@ class EndpointFetcher { @@ -376,6 +382,14 @@ class EndpointFetcher {
const GURL& url, const GURL& url,
const net::NetworkTrafficAnnotationTag& annotation_tag); const net::NetworkTrafficAnnotationTag& annotation_tag);
@@ -2015,7 +2015,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.h b/components/endpoin
// Used internally. Can be used if caller constructs their own // Used internally. Can be used if caller constructs their own
// url_loader_factory and identity_manager. // url_loader_factory and identity_manager.
EndpointFetcher( EndpointFetcher(
@@ -424,11 +438,17 @@ class EndpointFetcher { @@ -425,11 +439,17 @@ class EndpointFetcher {
void OnSanitizationResult(std::unique_ptr<EndpointResponse> response, void OnSanitizationResult(std::unique_ptr<EndpointResponse> response,
EndpointFetcherCallback endpoint_fetcher_callback, EndpointFetcherCallback endpoint_fetcher_callback,
data_decoder::JsonSanitizer::Result result); data_decoder::JsonSanitizer::Result result);
@@ -2033,7 +2033,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.h b/components/endpoin
// Members set in constructor // Members set in constructor
const scoped_refptr<network::SharedURLLoaderFactory> url_loader_factory_; const scoped_refptr<network::SharedURLLoaderFactory> url_loader_factory_;
@@ -436,6 +456,8 @@ class EndpointFetcher { @@ -437,6 +457,8 @@ class EndpointFetcher {
// this case, callers should invoke `PerformRequest` directly). // this case, callers should invoke `PerformRequest` directly).
const raw_ptr<signin::IdentityManager> identity_manager_; const raw_ptr<signin::IdentityManager> identity_manager_;
@@ -2042,7 +2042,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.h b/components/endpoin
// The complete definition of the specific network request to be performed. // The complete definition of the specific network request to be performed.
// Contains authentication details and response handling preferences. // Contains authentication details and response handling preferences.
const RequestParams request_params_; const RequestParams request_params_;
@@ -445,6 +467,9 @@ class EndpointFetcher { @@ -446,6 +468,9 @@ class EndpointFetcher {
access_token_fetcher_; access_token_fetcher_;
std::unique_ptr<network::SimpleURLLoader> simple_url_loader_; std::unique_ptr<network::SimpleURLLoader> simple_url_loader_;
@@ -2055,7 +2055,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.h b/components/endpoin
diff --git a/components/manta/base_provider.cc b/components/manta/base_provider.cc diff --git a/components/manta/base_provider.cc b/components/manta/base_provider.cc
--- a/components/manta/base_provider.cc --- a/components/manta/base_provider.cc
+++ b/components/manta/base_provider.cc +++ b/components/manta/base_provider.cc
@@ -163,6 +163,7 @@ std::unique_ptr<EndpointFetcher> BaseProvider::CreateEndpointFetcherForDemoMode( @@ -164,6 +164,7 @@ std::unique_ptr<EndpointFetcher> BaseProvider::CreateEndpointFetcherForDemoMode(
/*cors_exempt_headers=*/std::vector<std::string>(), /*cors_exempt_headers=*/std::vector<std::string>(),
// ChromeOS always uses the stable channel API key // ChromeOS always uses the stable channel API key
version_info::Channel::STABLE, version_info::Channel::STABLE,
@@ -2066,7 +2066,7 @@ diff --git a/components/manta/base_provider.cc b/components/manta/base_provider.
diff --git a/components/omnibox/composebox/composebox_query_controller.cc b/components/omnibox/composebox/composebox_query_controller.cc diff --git a/components/omnibox/composebox/composebox_query_controller.cc b/components/omnibox/composebox/composebox_query_controller.cc
--- a/components/omnibox/composebox/composebox_query_controller.cc --- a/components/omnibox/composebox/composebox_query_controller.cc
+++ b/components/omnibox/composebox/composebox_query_controller.cc +++ b/components/omnibox/composebox/composebox_query_controller.cc
@@ -314,7 +314,7 @@ ComposeboxQueryController::CreateEndpointFetcher( @@ -434,7 +434,7 @@ ComposeboxQueryController::CreateEndpointFetcher(
/*post_data=*/std::move(request_string), /*post_data=*/std::move(request_string),
/*headers=*/request_headers, /*headers=*/request_headers,
/*cors_exempt_headers=*/cors_exempt_headers, /*cors_exempt_headers=*/cors_exempt_headers,
@@ -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 diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
--- a/chrome/android/BUILD.gn --- a/chrome/android/BUILD.gn
+++ b/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn
@@ -325,6 +325,7 @@ if (_is_default_toolchain) { @@ -324,6 +324,7 @@ if (_is_default_toolchain) {
"//chrome/android/features/tab_ui/public:ui_java_resources", "//chrome/android/features/tab_ui/public:ui_java_resources",
"//chrome/android/modules/stack_unwinder/provider:java", "//chrome/android/modules/stack_unwinder/provider:java",
"//chrome/android/webapk/libs/client:client_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 diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_java_resources.gni
--- a/chrome/android/chrome_java_resources.gni --- a/chrome/android/chrome_java_resources.gni
+++ b/chrome/android/chrome_java_resources.gni +++ b/chrome/android/chrome_java_resources.gni
@@ -419,6 +419,7 @@ chrome_java_resources = [ @@ -424,6 +424,7 @@ chrome_java_resources = [
"java/res/layout/account_divider_preference.xml", "java/res/layout/account_divider_preference.xml",
"java/res/layout/account_management_account_row.xml", "java/res/layout/account_management_account_row.xml",
"java/res/layout/app_history_filter.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/auto_sign_in_first_run_dialog.xml",
"java/res/layout/autofill_billing_address_dropdown.xml", "java/res/layout/autofill_billing_address_dropdown.xml",
"java/res/layout/autofill_card_name_and_number.xml", "java/res/layout/autofill_card_name_and_number.xml",
@@ -608,6 +609,7 @@ chrome_java_resources = [ @@ -613,6 +614,7 @@ chrome_java_resources = [
"java/res/xml/account_management_preferences.xml", "java/res/xml/account_management_preferences.xml",
"java/res/xml/ad_services_config.xml", "java/res/xml/ad_services_config.xml",
"java/res/xml/appearance_preferences.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 diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni
--- a/chrome/android/chrome_java_sources.gni --- a/chrome/android/chrome_java_sources.gni
+++ b/chrome/android/chrome_java_sources.gni +++ b/chrome/android/chrome_java_sources.gni
@@ -903,6 +903,8 @@ chrome_java_sources = [ @@ -909,6 +909,8 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/permissions/PermissionBlockedDialog.java", "java/src/org/chromium/chrome/browser/permissions/PermissionBlockedDialog.java",
"java/src/org/chromium/chrome/browser/permissions/PermissionUpdateRequester.java", "java/src/org/chromium/chrome/browser/permissions/PermissionUpdateRequester.java",
"java/src/org/chromium/chrome/browser/photo_picker/DecoderServiceImpl.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 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 --- a/chrome/android/java/res/values/styles.xml
+++ b/chrome/android/java/res/values/styles.xml +++ b/chrome/android/java/res/values/styles.xml
@@ -273,6 +273,24 @@ found in the LICENSE file. @@ -311,6 +311,24 @@ found in the LICENSE file.
<item name="android:textSize">20sp</item> </item>
</style> </style>
+ <style name="ButtonBarTopSpacer" parent="ButtonBarTopSpacerLight"> + <style name="ButtonBarTopSpacer" parent="ButtonBarTopSpacerLight">
@@ -252,7 +252,7 @@ new file mode 100644
diff --git a/chrome/android/java/res/xml/main_preferences.xml b/chrome/android/java/res/xml/main_preferences.xml diff --git a/chrome/android/java/res/xml/main_preferences.xml b/chrome/android/java/res/xml/main_preferences.xml
--- a/chrome/android/java/res/xml/main_preferences.xml --- a/chrome/android/java/res/xml/main_preferences.xml
+++ b/chrome/android/java/res/xml/main_preferences.xml +++ b/chrome/android/java/res/xml/main_preferences.xml
@@ -120,6 +120,11 @@ for the previous order (main_preferences_legacy). --> @@ -111,6 +111,11 @@ found in the LICENSE file.
android:key="toolbar_shortcut" android:key="toolbar_shortcut"
android:order="21" android:order="21"
android:title="@string/toolbar_shortcut"/> android:title="@string/toolbar_shortcut"/>
@@ -442,7 +442,7 @@ new file mode 100644
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 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 --- a/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java
@@ -72,6 +72,8 @@ import org.chromium.ui.modaldialog.ModalDialogManager.ModalDialogType; @@ -75,6 +75,8 @@ import org.chromium.ui.modaldialog.ModalDialogManager.ModalDialogType;
import java.lang.ref.WeakReference; import java.lang.ref.WeakReference;
import java.util.Locale; import java.util.Locale;
@@ -451,7 +451,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Settin
/** /**
* The Chrome settings activity. * The Chrome settings activity.
* *
@@ -683,6 +685,7 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity @@ -698,6 +700,7 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity
if (!MAIN_FRAGMENT_TAG.equals(fragment.getTag())) { if (!MAIN_FRAGMENT_TAG.equals(fragment.getTag())) {
return; return;
} }
@@ -462,7 +462,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Settin
diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources.grd diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources.grd
--- a/chrome/app/generated_resources.grd --- a/chrome/app/generated_resources.grd
+++ b/chrome/app/generated_resources.grd +++ b/chrome/app/generated_resources.grd
@@ -16888,6 +16888,16 @@ Please help our engineers fix this problem. Tell us what happened right before y @@ -17032,6 +17032,16 @@ Please help our engineers fix this problem. Tell us what happened right before y
Never show this again. Never show this again.
</message> </message>
@@ -533,7 +533,7 @@ diff --git a/chrome/browser/browser_process.h b/chrome/browser/browser_process.h
diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_process_impl.cc diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_process_impl.cc
--- a/chrome/browser/browser_process_impl.cc --- a/chrome/browser/browser_process_impl.cc
+++ b/chrome/browser/browser_process_impl.cc +++ b/chrome/browser/browser_process_impl.cc
@@ -1273,6 +1273,34 @@ BrowserProcessImpl::component_updater() { @@ -1270,6 +1270,34 @@ BrowserProcessImpl::component_updater() {
return component_updater_.get(); return component_updater_.get();
} }
@@ -590,7 +590,7 @@ diff --git a/chrome/browser/browser_process_impl.h b/chrome/browser/browser_proc
diff --git a/chrome/browser/chrome_browser_main.cc b/chrome/browser/chrome_browser_main.cc diff --git a/chrome/browser/chrome_browser_main.cc b/chrome/browser/chrome_browser_main.cc
--- a/chrome/browser/chrome_browser_main.cc --- a/chrome/browser/chrome_browser_main.cc
+++ b/chrome/browser/chrome_browser_main.cc +++ b/chrome/browser/chrome_browser_main.cc
@@ -384,6 +384,9 @@ StartupProfileInfo CreateInitialProfile( @@ -387,6 +387,9 @@ StartupProfileInfo CreateInitialProfile(
// missing code in the above test. // missing code in the above test.
CHECK(profile_info.profile) << "Cannot get default profile."; CHECK(profile_info.profile) << "Cannot get default profile.";
@@ -701,7 +701,7 @@ new file mode 100755
diff --git a/chrome/browser/net/system_network_context_manager.cc b/chrome/browser/net/system_network_context_manager.cc 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 --- a/chrome/browser/net/system_network_context_manager.cc
+++ b/chrome/browser/net/system_network_context_manager.cc +++ b/chrome/browser/net/system_network_context_manager.cc
@@ -721,6 +721,10 @@ void SystemNetworkContextManager::RegisterPrefs(PrefRegistrySimple* registry) { @@ -717,6 +717,10 @@ void SystemNetworkContextManager::RegisterPrefs(PrefRegistrySimple* registry) {
DefaultDnsOverHttpsConfigSource::RegisterPrefs(registry); DefaultDnsOverHttpsConfigSource::RegisterPrefs(registry);
NetworkProcessLaunchWatcher::RegisterPrefs(registry); NetworkProcessLaunchWatcher::RegisterPrefs(registry);
@@ -756,7 +756,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h
--- a/chrome/common/pref_names.h --- a/chrome/common/pref_names.h
+++ b/chrome/common/pref_names.h +++ b/chrome/common/pref_names.h
@@ -2907,6 +2907,11 @@ inline constexpr char kAudioCaptureAllowed[] = "hardware.audio_capture_enabled"; @@ -2919,6 +2919,11 @@ inline constexpr char kAudioCaptureAllowed[] = "hardware.audio_capture_enabled";
inline constexpr char kAudioCaptureAllowedUrls[] = inline constexpr char kAudioCaptureAllowedUrls[] =
"hardware.audio_capture_allowed_urls"; "hardware.audio_capture_allowed_urls";
@@ -771,7 +771,7 @@ diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h
diff --git a/components/browser_ui/strings/android/site_settings.grdp b/components/browser_ui/strings/android/site_settings.grdp diff --git a/components/browser_ui/strings/android/site_settings.grdp b/components/browser_ui/strings/android/site_settings.grdp
--- a/components/browser_ui/strings/android/site_settings.grdp --- a/components/browser_ui/strings/android/site_settings.grdp
+++ b/components/browser_ui/strings/android/site_settings.grdp +++ b/components/browser_ui/strings/android/site_settings.grdp
@@ -391,6 +391,9 @@ @@ -403,6 +403,9 @@
<message name="IDS_INTRUSIVE_ADS_INFORMATION" desc="The extra information at the top of the Site Details page when the site tends to show intrusive ads"> <message name="IDS_INTRUSIVE_ADS_INFORMATION" desc="The extra information at the top of the Site Details page when the site tends to show intrusive ads">
This site shows intrusive or misleading ads This site shows intrusive or misleading ads
</message> </message>
@@ -33,9 +33,9 @@ diff --git a/chrome/browser/ui/views/toolbar/reload_button.cc b/chrome/browser/u
diff --git a/ui/views/widget/widget.h b/ui/views/widget/widget.h diff --git a/ui/views/widget/widget.h b/ui/views/widget/widget.h
--- a/ui/views/widget/widget.h --- a/ui/views/widget/widget.h
+++ b/ui/views/widget/widget.h +++ b/ui/views/widget/widget.h
@@ -1456,6 +1456,19 @@ class VIEWS_EXPORT Widget : public internal::NativeWidgetDelegate, @@ -1479,6 +1479,19 @@ class VIEWS_EXPORT Widget : public internal::NativeWidgetDelegate,
// initialized.
WidgetAXManager* ax_manager() { return ax_manager_.get(); } void SaveWindowPlacementIfNeeded();
+ // Type of ways to ignore activation changes. + // Type of ways to ignore activation changes.
+ enum class DisableActivationChangeHandlingType { + enum class DisableActivationChangeHandlingType {
@@ -53,8 +53,8 @@ diff --git a/ui/views/widget/widget.h b/ui/views/widget/widget.h
protected: protected:
// Creates the RootView to be used within this Widget. Subclasses may override // Creates the RootView to be used within this Widget. Subclasses may override
// to create custom RootViews that do specialized event processing. // to create custom RootViews that do specialized event processing.
@@ -1494,13 +1507,6 @@ class VIEWS_EXPORT Widget : public internal::NativeWidgetDelegate, @@ -1519,13 +1532,6 @@ class VIEWS_EXPORT Widget : public internal::NativeWidgetDelegate,
ui::ColorProviderKey GetColorProviderKey() const override; void set_widget_closed() { widget_closed_ = true; }
private: private:
- // Type of ways to ignore activation changes. - // Type of ways to ignore activation changes.
@@ -67,7 +67,7 @@ diff --git a/ui/views/widget/widget.h b/ui/views/widget/widget.h
class PaintAsActiveLockImpl; class PaintAsActiveLockImpl;
friend class ButtonTest; friend class ButtonTest;
@@ -1511,11 +1517,6 @@ class VIEWS_EXPORT Widget : public internal::NativeWidgetDelegate, @@ -1536,11 +1542,6 @@ class VIEWS_EXPORT Widget : public internal::NativeWidgetDelegate,
friend class ui_devtools::BubbleLocking; friend class ui_devtools::BubbleLocking;
friend void DisableActivationChangeHandlingForTests(); friend void DisableActivationChangeHandlingForTests();
@@ -160,7 +160,7 @@ new file mode 100644
+import org.chromium.components.browser_ui.site_settings.BromiteCustomContentSetting; +import org.chromium.components.browser_ui.site_settings.BromiteCustomContentSetting;
+import org.chromium.components.browser_ui.site_settings.ContentSettingsResources; +import org.chromium.components.browser_ui.site_settings.ContentSettingsResources;
+import org.chromium.components.browser_ui.site_settings.SiteSettingsCategory; +import org.chromium.components.browser_ui.site_settings.SiteSettingsCategory;
+import org.chromium.components.content_settings.ContentSettingValues; +import org.chromium.components.content_settings.ContentSetting;
+import org.chromium.components.content_settings.ContentSettingsType; +import org.chromium.components.content_settings.ContentSettingsType;
+import org.chromium.content_public.browser.BrowserContextHandle; +import org.chromium.content_public.browser.BrowserContextHandle;
+ +
@@ -173,8 +173,8 @@ new file mode 100644
+public class BromitePopupContentSetting extends BromiteCustomContentSetting { +public class BromitePopupContentSetting extends BromiteCustomContentSetting {
+ public BromitePopupContentSetting() { + public BromitePopupContentSetting() {
+ super(/*contentSettingsType*/ ContentSettingsType.POPUPS, + super(/*contentSettingsType*/ ContentSettingsType.POPUPS,
+ /*defaultEnabledValue*/ ContentSettingValues.ALLOW, + /*defaultEnabledValue*/ ContentSetting.ALLOW,
+ /*defaultDisabledValue*/ ContentSettingValues.BLOCK, + /*defaultDisabledValue*/ ContentSetting.BLOCK,
+ /*allowException*/ true, + /*allowException*/ true,
+ /*preferenceKey*/ "popups", + /*preferenceKey*/ "popups",
+ /*profilePrefKey*/ "popups"); + /*profilePrefKey*/ "popups");
@@ -193,13 +193,13 @@ new file mode 100644
+ } + }
+ +
+ @Override + @Override
+ public int getCategorySummary(@Nullable @ContentSettingValues int value) { + public int getCategorySummary(@Nullable @ContentSetting int value) {
+ switch (value) { + switch (value) {
+ case ContentSettingValues.ALLOW: + case ContentSetting.ALLOW:
+ return R.string.website_settings_category_popup_allowed; + return R.string.website_settings_category_popup_allowed;
+ case ContentSettingValues.BLOCK: + case ContentSetting.BLOCK:
+ return R.string.website_settings_category_popup_blocked; + return R.string.website_settings_category_popup_blocked;
+ case ContentSettingValues.ASK: + case ContentSetting.ASK:
+ return R.string.website_settings_category_popup_block_all; + return R.string.website_settings_category_popup_block_all;
+ default: + default:
+ return 0; + return 0;
@@ -236,8 +236,8 @@ new file mode 100644
+ } + }
+ +
+ @Override + @Override
+ public @Nullable Boolean considerException(SiteSettingsCategory category, @ContentSettingValues int value) { + public @Nullable Boolean considerException(SiteSettingsCategory category, @ContentSetting int value) {
+ return ContentSettingValues.ALLOW != value; + return ContentSetting.ALLOW != value;
+ } + }
+} +}
diff --git a/components/browser_ui/strings/bromite_content_settings/popups.grdp b/components/browser_ui/strings/bromite_content_settings/popups.grdp diff --git a/components/browser_ui/strings/bromite_content_settings/popups.grdp b/components/browser_ui/strings/bromite_content_settings/popups.grdp
+78 -77
View File
@@ -46,10 +46,10 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
.../browser/updater/extension_downloader.h | 1 - .../browser/updater/extension_downloader.h | 1 -
.../browser/updater/manifest_fetch_data.cc | 8 +-- .../browser/updater/manifest_fetch_data.cc | 8 +--
.../browser/updater/safe_manifest_parser.cc | 1 + .../browser/updater/safe_manifest_parser.cc | 1 +
extensions/common/extension_features.cc | 14 +++++ extensions/common/extension_features.cc | 7 +++
extensions/common/extension_features.h | 2 + extensions/common/extension_features.h | 10 +++
.../definitions/developer_private.d.ts | 2 + .../definitions/developer_private.d.ts | 2 +
36 files changed, 253 insertions(+), 107 deletions(-) 36 files changed, 254 insertions(+), 107 deletions(-)
create mode 100644 cromite_flags/chrome/browser/about_flags_cc/Webstore-protection.inc create mode 100644 cromite_flags/chrome/browser/about_flags_cc/Webstore-protection.inc
diff --git a/chrome/app/extensions_strings.grdp b/chrome/app/extensions_strings.grdp diff --git a/chrome/app/extensions_strings.grdp b/chrome/app/extensions_strings.grdp
@@ -129,7 +129,7 @@ diff --git a/chrome/browser/extensions/api/developer_private/developer_private_a
diff --git a/chrome/browser/extensions/api/developer_private/developer_private_functions_shared.cc b/chrome/browser/extensions/api/developer_private/developer_private_functions_shared.cc diff --git a/chrome/browser/extensions/api/developer_private/developer_private_functions_shared.cc b/chrome/browser/extensions/api/developer_private/developer_private_functions_shared.cc
--- a/chrome/browser/extensions/api/developer_private/developer_private_functions_shared.cc --- a/chrome/browser/extensions/api/developer_private/developer_private_functions_shared.cc
+++ b/chrome/browser/extensions/api/developer_private/developer_private_functions_shared.cc +++ b/chrome/browser/extensions/api/developer_private/developer_private_functions_shared.cc
@@ -354,6 +354,7 @@ ExtensionFunction::ResponseAction DeveloperPrivateAutoUpdateFunction::Run() { @@ -361,6 +361,7 @@ ExtensionFunction::ResponseAction DeveloperPrivateAutoUpdateFunction::Run() {
ExtensionUpdater::CheckParams params; ExtensionUpdater::CheckParams params;
params.fetch_priority = DownloadFetchPriority::kForeground; params.fetch_priority = DownloadFetchPriority::kForeground;
params.install_immediately = true; params.install_immediately = true;
@@ -137,7 +137,7 @@ diff --git a/chrome/browser/extensions/api/developer_private/developer_private_f
params.callback = params.callback =
base::BindOnce(&DeveloperPrivateAutoUpdateFunction::OnComplete, this); base::BindOnce(&DeveloperPrivateAutoUpdateFunction::OnComplete, this);
updater->CheckNow(std::move(params)); updater->CheckNow(std::move(params));
@@ -490,7 +491,7 @@ DeveloperPrivateUpdateProfileConfigurationFunction::Run() { @@ -497,7 +498,7 @@ DeveloperPrivateUpdateProfileConfigurationFunction::Run() {
const developer::ProfileConfigurationUpdate& update = params->update; const developer::ProfileConfigurationUpdate& update = params->update;
@@ -146,7 +146,7 @@ diff --git a/chrome/browser/extensions/api/developer_private/developer_private_f
Profile* profile = Profile::FromBrowserContext(browser_context()); Profile* profile = Profile::FromBrowserContext(browser_context());
CHECK(profile); CHECK(profile);
if (supervised_user::AreExtensionsPermissionsEnabled(profile)) { if (supervised_user::AreExtensionsPermissionsEnabled(profile)) {
@@ -504,6 +505,11 @@ DeveloperPrivateUpdateProfileConfigurationFunction::Run() { @@ -511,6 +512,11 @@ DeveloperPrivateUpdateProfileConfigurationFunction::Run() {
->MarkNoticeAsAcknowledgedGlobally(); ->MarkNoticeAsAcknowledgedGlobally();
} }
@@ -181,7 +181,7 @@ diff --git a/chrome/browser/extensions/api/developer_private/profile_info_genera
diff --git a/chrome/browser/extensions/api/webstore_private/webstore_private_api.cc b/chrome/browser/extensions/api/webstore_private/webstore_private_api.cc diff --git a/chrome/browser/extensions/api/webstore_private/webstore_private_api.cc b/chrome/browser/extensions/api/webstore_private/webstore_private_api.cc
--- a/chrome/browser/extensions/api/webstore_private/webstore_private_api.cc --- a/chrome/browser/extensions/api/webstore_private/webstore_private_api.cc
+++ b/chrome/browser/extensions/api/webstore_private/webstore_private_api.cc +++ b/chrome/browser/extensions/api/webstore_private/webstore_private_api.cc
@@ -63,6 +63,7 @@ @@ -65,6 +65,7 @@
#include "extensions/browser/extension_util.h" #include "extensions/browser/extension_util.h"
#include "extensions/browser/extensions_browser_client.h" #include "extensions/browser/extensions_browser_client.h"
#include "extensions/common/extension.h" #include "extensions/common/extension.h"
@@ -189,7 +189,7 @@ diff --git a/chrome/browser/extensions/api/webstore_private/webstore_private_api
#include "extensions/common/manifest.h" #include "extensions/common/manifest.h"
#include "extensions/common/manifest_constants.h" #include "extensions/common/manifest_constants.h"
#include "extensions/common/manifest_handlers/permissions_parser.h" #include "extensions/common/manifest_handlers/permissions_parser.h"
@@ -224,6 +225,8 @@ WebstorePrivateApi::Delegate* test_delegate = nullptr; @@ -225,6 +226,8 @@ WebstorePrivateApi::Delegate* test_delegate = nullptr;
// there was previously stored data, or an empty string otherwise. The Set will // there was previously stored data, or an empty string otherwise. The Set will
// overwrite any previous login. // overwrite any previous login.
std::string GetWebstoreLogin(Profile* profile) { std::string GetWebstoreLogin(Profile* profile) {
@@ -198,7 +198,7 @@ diff --git a/chrome/browser/extensions/api/webstore_private/webstore_private_api
if (profile->GetPrefs()->HasPrefPath(kWebstoreLogin)) { if (profile->GetPrefs()->HasPrefPath(kWebstoreLogin)) {
return profile->GetPrefs()->GetString(kWebstoreLogin); return profile->GetPrefs()->GetString(kWebstoreLogin);
} }
@@ -231,11 +234,15 @@ std::string GetWebstoreLogin(Profile* profile) { @@ -232,11 +235,15 @@ std::string GetWebstoreLogin(Profile* profile) {
} }
void SetWebstoreLogin(Profile* profile, const std::string& login) { void SetWebstoreLogin(Profile* profile, const std::string& login) {
@@ -214,7 +214,7 @@ diff --git a/chrome/browser/extensions/api/webstore_private/webstore_private_api
switch (status) { switch (status) {
case kCanRequest: case kCanRequest:
return api::webstore_private::ExtensionInstallStatus::kCanRequest; return api::webstore_private::ExtensionInstallStatus::kCanRequest;
@@ -1158,7 +1165,8 @@ ExtensionFunction::ResponseAction @@ -1178,7 +1185,8 @@ ExtensionFunction::ResponseAction
WebstorePrivateIsInIncognitoModeFunction::Run() { WebstorePrivateIsInIncognitoModeFunction::Run() {
Profile* profile = Profile::FromBrowserContext(browser_context()); Profile* profile = Profile::FromBrowserContext(browser_context());
return RespondNow(ArgumentList(IsInIncognitoMode::Results::Create( return RespondNow(ArgumentList(IsInIncognitoMode::Results::Create(
@@ -224,7 +224,7 @@ diff --git a/chrome/browser/extensions/api/webstore_private/webstore_private_api
} }
WebstorePrivateIsPendingCustodianApprovalFunction:: WebstorePrivateIsPendingCustodianApprovalFunction::
@@ -1254,11 +1262,14 @@ WebstorePrivateGetReferrerChainFunction::Run() { @@ -1275,11 +1283,14 @@ WebstorePrivateGetReferrerChainFunction::Run() {
request.mutable_referrer_chain_options()->set_recent_navigations_to_collect( request.mutable_referrer_chain_options()->set_recent_navigations_to_collect(
recent_navigations_to_collect); recent_navigations_to_collect);
@@ -267,7 +267,7 @@ diff --git a/chrome/browser/extensions/cws_info_service_factory.cc b/chrome/brow
diff --git a/chrome/browser/extensions/extension_management.cc b/chrome/browser/extensions/extension_management.cc diff --git a/chrome/browser/extensions/extension_management.cc b/chrome/browser/extensions/extension_management.cc
--- a/chrome/browser/extensions/extension_management.cc --- a/chrome/browser/extensions/extension_management.cc
+++ b/chrome/browser/extensions/extension_management.cc +++ b/chrome/browser/extensions/extension_management.cc
@@ -424,6 +424,7 @@ bool ExtensionManagement::IsExemptFromMV2DeprecationByPolicy( @@ -417,6 +417,7 @@ bool ExtensionManagement::IsExemptFromMV2DeprecationByPolicy(
bool ExtensionManagement::IsAllowedByUnpublishedAvailabilityPolicy( bool ExtensionManagement::IsAllowedByUnpublishedAvailabilityPolicy(
const Extension* extension) { const Extension* extension) {
@@ -331,7 +331,7 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
#include "extensions/common/extension_set.h" #include "extensions/common/extension_set.h"
#include "extensions/common/extension_updater_uma.h" #include "extensions/common/extension_updater_uma.h"
#include "extensions/common/extension_urls.h" #include "extensions/common/extension_urls.h"
@@ -228,6 +229,10 @@ void ExtensionUpdater::Start() { @@ -226,6 +227,10 @@ void ExtensionUpdater::Start() {
DCHECK(!weak_ptr_factory_.HasWeakPtrs()); DCHECK(!weak_ptr_factory_.HasWeakPtrs());
DCHECK(registry_); DCHECK(registry_);
alive_ = true; alive_ = true;
@@ -341,8 +341,8 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
+ } + }
// Check soon, and set up the first delayed check. // Check soon, and set up the first delayed check.
if (!g_skip_scheduled_checks_for_tests) { if (!g_skip_scheduled_checks_for_tests) {
if (g_should_immediately_update) CheckSoon();
@@ -385,7 +390,8 @@ void ExtensionUpdater::AddToDownloader( @@ -377,7 +382,8 @@ void ExtensionUpdater::AddToDownloader(
const Extension& extension = **extension_iter; const Extension& extension = **extension_iter;
const ExtensionId& extension_id = extension.id(); const ExtensionId& extension_id = extension.id();
if (!Manifest::IsAutoUpdateableLocation(extension.location())) { if (!Manifest::IsAutoUpdateableLocation(extension.location())) {
@@ -352,7 +352,7 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
continue; continue;
} }
// An extension might be overwritten by policy, and have its update url // An extension might be overwritten by policy, and have its update url
@@ -399,7 +405,7 @@ void ExtensionUpdater::AddToDownloader( @@ -392,7 +398,7 @@ void ExtensionUpdater::AddToDownloader(
continue; continue;
} }
@@ -361,7 +361,7 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
update_check_params->update_info[extension_id] = update_check_params->update_info[extension_id] =
GetExtensionUpdateData(extension_id); GetExtensionUpdateData(extension_id);
} else if (AddExtensionToDownloader(extension, request_id, } else if (AddExtensionToDownloader(extension, request_id,
@@ -436,6 +442,12 @@ bool ExtensionUpdater::AddExtensionToDownloader( @@ -430,6 +436,12 @@ bool ExtensionUpdater::AddExtensionToDownloader(
} }
void ExtensionUpdater::CheckNow(CheckParams params) { void ExtensionUpdater::CheckNow(CheckParams params) {
@@ -374,16 +374,16 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
CHECK(enabled_); CHECK(enabled_);
if (params.ids.empty()) { if (params.ids.empty()) {
// Checking all extensions. Cancel pending DoCheckSoon() call if there's // Checking all extensions. Cancel pending DoCheckSoon() call if there's
@@ -445,7 +457,7 @@ void ExtensionUpdater::CheckNow(CheckParams params) { @@ -439,7 +451,7 @@ void ExtensionUpdater::CheckNow(CheckParams params) {
int request_id = next_request_id_++; int request_id = next_request_id_++;
- VLOG(2) << "Starting update check " << request_id; - VLOG(2) << "Starting update check " << request_id;
+ LOG(INFO) << "Starting extensions update check id: " << request_id; + LOG(INFO) << "Starting extensions update check id: " << request_id;
if (params.ids.empty()) if (params.ids.empty()) {
NotifyStarted(); NotifyStarted();
}
@@ -513,7 +525,7 @@ void ExtensionUpdater::CheckNow(CheckParams params) { @@ -509,7 +521,7 @@ void ExtensionUpdater::CheckNow(CheckParams params) {
update_check_params.update_info[pending_id] = update_check_params.update_info[pending_id] =
GetExtensionUpdateData(pending_id); GetExtensionUpdateData(pending_id);
} else if (!Manifest::IsAutoUpdateableLocation(info->install_source())) { } else if (!Manifest::IsAutoUpdateableLocation(info->install_source())) {
@@ -392,7 +392,7 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
continue; continue;
} }
// We have to mark high-priority extensions (such as policy-forced // We have to mark high-priority extensions (such as policy-forced
@@ -523,7 +535,7 @@ void ExtensionUpdater::CheckNow(CheckParams params) { @@ -519,7 +531,7 @@ void ExtensionUpdater::CheckNow(CheckParams params) {
// See https://crbug.com/904600 and https://crbug.com/965686. // See https://crbug.com/904600 and https://crbug.com/965686.
const bool is_high_priority_extension_pending = const bool is_high_priority_extension_pending =
pending_extension_manager->HasHighPriorityPendingExtension(); pending_extension_manager->HasHighPriorityPendingExtension();
@@ -401,7 +401,7 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
update_check_params.update_info[pending_id] = update_check_params.update_info[pending_id] =
GetExtensionUpdateData(pending_id); GetExtensionUpdateData(pending_id);
update_check_params.update_info[pending_id].is_corrupt_reinstall = update_check_params.update_info[pending_id].is_corrupt_reinstall =
@@ -546,6 +558,8 @@ void ExtensionUpdater::CheckNow(CheckParams params) { @@ -542,6 +554,8 @@ void ExtensionUpdater::CheckNow(CheckParams params) {
LOG(WARNING) << "Corrupt extension with id " << pending_id LOG(WARNING) << "Corrupt extension with id " << pending_id
<< " will be reinstalled with ExtensionDownloader."; << " will be reinstalled with ExtensionDownloader.";
} }
@@ -410,7 +410,7 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
} else { } else {
InstallStageTracker::Get(profile_)->ReportFailure( InstallStageTracker::Get(profile_)->ReportFailure(
pending_id, pending_id,
@@ -558,13 +572,6 @@ void ExtensionUpdater::CheckNow(CheckParams params) { @@ -554,13 +568,6 @@ void ExtensionUpdater::CheckNow(CheckParams params) {
AddToDownloader(&registry_->disabled_extensions(), pending_ids, request_id, AddToDownloader(&registry_->disabled_extensions(), pending_ids, request_id,
params.fetch_priority, &update_check_params); params.fetch_priority, &update_check_params);
ExtensionSet remotely_disabled_extensions; ExtensionSet remotely_disabled_extensions;
@@ -424,7 +424,7 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
AddToDownloader(&remotely_disabled_extensions, pending_ids, request_id, AddToDownloader(&remotely_disabled_extensions, pending_ids, request_id,
params.fetch_priority, &update_check_params); params.fetch_priority, &update_check_params);
} else { } else {
@@ -572,7 +579,7 @@ void ExtensionUpdater::CheckNow(CheckParams params) { @@ -568,7 +575,7 @@ void ExtensionUpdater::CheckNow(CheckParams params) {
const Extension* extension = const Extension* extension =
registry_->GetExtensionById(id, ExtensionRegistry::EVERYTHING); registry_->GetExtensionById(id, ExtensionRegistry::EVERYTHING);
if (extension) { if (extension) {
@@ -433,7 +433,7 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
update_check_params.update_info[id] = GetExtensionUpdateData(id); update_check_params.update_info[id] = GetExtensionUpdateData(id);
} else if (AddExtensionToDownloader(*extension, request_id, } else if (AddExtensionToDownloader(*extension, request_id,
params.fetch_priority)) { params.fetch_priority)) {
@@ -716,7 +723,7 @@ void ExtensionUpdater::OnExtensionDownloadFinished( @@ -712,7 +719,7 @@ void ExtensionUpdater::OnExtensionDownloadFinished(
file.extension_id, InstallStageTracker::Stage::INSTALLING); file.extension_id, InstallStageTracker::Stage::INSTALLING);
UpdatePingData(file.extension_id, ping); UpdatePingData(file.extension_id, ping);
@@ -442,7 +442,7 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
FetchedCRXFile fetched(file, file_ownership_passed, request_ids, FetchedCRXFile fetched(file, file_ownership_passed, request_ids,
std::move(callback)); std::move(callback));
@@ -727,6 +734,7 @@ void ExtensionUpdater::OnExtensionDownloadFinished( @@ -723,6 +730,7 @@ void ExtensionUpdater::OnExtensionDownloadFinished(
bool ExtensionUpdater::GetPingDataForExtension(const ExtensionId& id, bool ExtensionUpdater::GetPingDataForExtension(const ExtensionId& id,
DownloadPingData* ping_data) { DownloadPingData* ping_data) {
@@ -450,7 +450,7 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
DCHECK(alive_); DCHECK(alive_);
ping_data->rollcall_days = ping_data->rollcall_days =
CalculatePingDaysForExtension(extension_prefs_->LastPingDay(id)); CalculatePingDaysForExtension(extension_prefs_->LastPingDay(id));
@@ -839,7 +847,7 @@ bool ExtensionUpdater::CanUseUpdateService( @@ -842,7 +850,7 @@ bool ExtensionUpdater::CanUseUpdateService(
void ExtensionUpdater::InstallCRXFile(FetchedCRXFile crx_file) { void ExtensionUpdater::InstallCRXFile(FetchedCRXFile crx_file) {
std::set<int> request_ids; std::set<int> request_ids;
@@ -459,15 +459,15 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
<< crx_file.info.path.value(); << crx_file.info.path.value();
// The delegate is now responsible for cleaning up the temp file at // The delegate is now responsible for cleaning up the temp file at
@@ -1046,7 +1054,7 @@ void ExtensionUpdater::NotifyIfFinished(int request_id) { @@ -1051,7 +1059,7 @@ void ExtensionUpdater::NotifyIfFinished(int request_id) {
InProgressCheck& request = requests_in_progress_[request_id]; if (!request.in_progress_ids.empty() || request.awaiting_update_service) {
if (!request.in_progress_ids.empty() || request.awaiting_update_service)
return; // This request is not done yet. return; // This request is not done yet.
}
- VLOG(2) << "Finished update check " << request_id; - VLOG(2) << "Finished update check " << request_id;
+ LOG(INFO) << "Finished update check id: " << request_id; + LOG(INFO) << "Finished update check id: " << request_id;
if (!request.callback.is_null()) if (!request.callback.is_null()) {
std::move(request.callback).Run(); std::move(request.callback).Run();
requests_in_progress_.erase(request_id); }
diff --git a/chrome/browser/extensions/updater/extension_updater.h b/chrome/browser/extensions/updater/extension_updater.h diff --git a/chrome/browser/extensions/updater/extension_updater.h b/chrome/browser/extensions/updater/extension_updater.h
--- a/chrome/browser/extensions/updater/extension_updater.h --- a/chrome/browser/extensions/updater/extension_updater.h
+++ b/chrome/browser/extensions/updater/extension_updater.h +++ b/chrome/browser/extensions/updater/extension_updater.h
@@ -480,7 +480,7 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.h b/chrome/brow
// An extension update check can be originated by a user or by a scheduled // An extension update check can be originated by a user or by a scheduled
// task. When the value of |fetch_priority| is FOREGROUND, the update // task. When the value of |fetch_priority| is FOREGROUND, the update
// request was initiated by a user. // request was initiated by a user.
@@ -401,6 +403,8 @@ class ExtensionUpdater : public KeyedService, @@ -397,6 +399,8 @@ class ExtensionUpdater : public KeyedService,
base::TimeDelta frequency_; base::TimeDelta frequency_;
bool will_check_soon_ = false; bool will_check_soon_ = false;
@@ -556,7 +556,7 @@ diff --git a/chrome/browser/resources/extensions/manager.ts b/chrome/browser/res
diff --git a/chrome/browser/resources/extensions/service.ts b/chrome/browser/resources/extensions/service.ts diff --git a/chrome/browser/resources/extensions/service.ts b/chrome/browser/resources/extensions/service.ts
--- a/chrome/browser/resources/extensions/service.ts --- a/chrome/browser/resources/extensions/service.ts
+++ b/chrome/browser/resources/extensions/service.ts +++ b/chrome/browser/resources/extensions/service.ts
@@ -320,6 +320,11 @@ export class Service implements ServiceInterface { @@ -341,6 +341,11 @@ export class Service implements ServiceInterface {
{inDeveloperMode: inDevMode}); {inDeveloperMode: inDevMode});
} }
@@ -689,7 +689,7 @@ diff --git a/chrome/browser/ui/webui/extensions/extensions_ui.cc b/chrome/browse
#include "chrome/browser/extensions/manifest_v2_experiment_manager.h" #include "chrome/browser/extensions/manifest_v2_experiment_manager.h"
#include "chrome/browser/extensions/mv2_experiment_stage.h" #include "chrome/browser/extensions/mv2_experiment_stage.h"
#include "chrome/browser/extensions/permissions_url_constants.h" #include "chrome/browser/extensions/permissions_url_constants.h"
@@ -380,6 +381,8 @@ content::WebUIDataSource* CreateAndAddExtensionsSource(Profile* profile, @@ -381,6 +382,8 @@ content::WebUIDataSource* CreateAndAddExtensionsSource(Profile* profile,
{"itemSuspiciousInstallLearnMore", {"itemSuspiciousInstallLearnMore",
IDS_EXTENSIONS_ADDED_WITHOUT_KNOWLEDGE_LEARN_MORE}, IDS_EXTENSIONS_ADDED_WITHOUT_KNOWLEDGE_LEARN_MORE},
{"toolbarDevMode", IDS_EXTENSIONS_DEVELOPER_MODE}, {"toolbarDevMode", IDS_EXTENSIONS_DEVELOPER_MODE},
@@ -698,7 +698,7 @@ diff --git a/chrome/browser/ui/webui/extensions/extensions_ui.cc b/chrome/browse
{"toolbarLoadUnpacked", IDS_EXTENSIONS_TOOLBAR_LOAD_UNPACKED}, {"toolbarLoadUnpacked", IDS_EXTENSIONS_TOOLBAR_LOAD_UNPACKED},
{"toolbarLoadUnpackedDone", IDS_EXTENSIONS_TOOLBAR_LOAD_UNPACKED_DONE}, {"toolbarLoadUnpackedDone", IDS_EXTENSIONS_TOOLBAR_LOAD_UNPACKED_DONE},
{"toolbarPack", IDS_EXTENSIONS_TOOLBAR_PACK}, {"toolbarPack", IDS_EXTENSIONS_TOOLBAR_PACK},
@@ -464,6 +467,10 @@ content::WebUIDataSource* CreateAndAddExtensionsSource(Profile* profile, @@ -466,6 +469,10 @@ content::WebUIDataSource* CreateAndAddExtensionsSource(Profile* profile,
"hostPermissionsLearnMoreLink", "hostPermissionsLearnMoreLink",
extension_permissions_constants::kRuntimeHostPermissionsHelpURL); extension_permissions_constants::kRuntimeHostPermissionsHelpURL);
source->AddBoolean(kInDevModeKey, in_dev_mode); source->AddBoolean(kInDevModeKey, in_dev_mode);
@@ -735,7 +735,7 @@ diff --git a/chrome/browser/update_client/chrome_update_query_params_delegate.cc
diff --git a/chrome/common/extensions/api/developer_private.idl b/chrome/common/extensions/api/developer_private.idl diff --git a/chrome/common/extensions/api/developer_private.idl b/chrome/common/extensions/api/developer_private.idl
--- a/chrome/common/extensions/api/developer_private.idl --- a/chrome/common/extensions/api/developer_private.idl
+++ b/chrome/common/extensions/api/developer_private.idl +++ b/chrome/common/extensions/api/developer_private.idl
@@ -272,6 +272,7 @@ namespace developerPrivate { @@ -273,6 +273,7 @@ namespace developerPrivate {
boolean isIncognitoAvailable; boolean isIncognitoAvailable;
boolean isChildAccount; boolean isChildAccount;
boolean isMv2DeprecationNoticeDismissed; boolean isMv2DeprecationNoticeDismissed;
@@ -743,7 +743,7 @@ diff --git a/chrome/common/extensions/api/developer_private.idl b/chrome/common/
}; };
dictionary GetExtensionsInfoOptions { dictionary GetExtensionsInfoOptions {
@@ -295,6 +296,7 @@ namespace developerPrivate { @@ -296,6 +297,7 @@ namespace developerPrivate {
dictionary ProfileConfigurationUpdate { dictionary ProfileConfigurationUpdate {
boolean? inDeveloperMode; boolean? inDeveloperMode;
boolean? isMv2DeprecationNoticeDismissed; boolean? isMv2DeprecationNoticeDismissed;
@@ -889,7 +889,7 @@ diff --git a/extensions/browser/api/management/management_api.cc b/extensions/br
if (!extension) { if (!extension) {
return RespondNow(Error(keys::kNoExtensionError, params->id)); return RespondNow(Error(keys::kNoExtensionError, params->id));
} }
@@ -547,8 +573,8 @@ void ManagementSetEnabledFunction::CheckPermissionsIncrease() { @@ -545,8 +571,8 @@ void ManagementSetEnabledFunction::CheckPermissionsIncrease() {
// Extension could have been uninstalled externally while previous check was // Extension could have been uninstalled externally while previous check was
// happening. // happening.
const Extension* extension = const Extension* extension =
@@ -900,7 +900,7 @@ diff --git a/extensions/browser/api/management/management_api.cc b/extensions/br
if (!extension) { if (!extension) {
FinishEnable(Error(keys::kNoExtensionError)); FinishEnable(Error(keys::kNoExtensionError));
return; return;
@@ -591,8 +617,8 @@ void ManagementSetEnabledFunction::CheckManifestV2Deprecation() { @@ -589,8 +615,8 @@ void ManagementSetEnabledFunction::CheckManifestV2Deprecation() {
// Extension can be uninstalled externally while the previous check was // Extension can be uninstalled externally while the previous check was
// happening async. // happening async.
const Extension* extension = const Extension* extension =
@@ -911,7 +911,7 @@ diff --git a/extensions/browser/api/management/management_api.cc b/extensions/br
if (!extension) { if (!extension) {
FinishEnable(Error(keys::kNoExtensionError)); FinishEnable(Error(keys::kNoExtensionError));
return; return;
@@ -736,8 +762,8 @@ void ManagementSetEnabledFunction::OnSupervisedExtensionApprovalDone( @@ -734,8 +760,8 @@ void ManagementSetEnabledFunction::OnSupervisedExtensionApprovalDone(
} }
const Extension* ManagementSetEnabledFunction::GetExtension() { const Extension* ManagementSetEnabledFunction::GetExtension() {
@@ -922,7 +922,7 @@ diff --git a/extensions/browser/api/management/management_api.cc b/extensions/br
} }
ManagementUninstallFunctionBase::ManagementUninstallFunctionBase() = default; ManagementUninstallFunctionBase::ManagementUninstallFunctionBase() = default;
@@ -762,8 +788,7 @@ ExtensionFunction::ResponseAction ManagementUninstallFunctionBase::Uninstall( @@ -760,8 +786,7 @@ ExtensionFunction::ResponseAction ManagementUninstallFunctionBase::Uninstall(
->GetDelegate(); ->GetDelegate();
target_extension_id_ = target_extension_id; target_extension_id_ = target_extension_id;
const Extension* target_extension = const Extension* target_extension =
@@ -932,7 +932,7 @@ diff --git a/extensions/browser/api/management/management_api.cc b/extensions/br
ExtensionRegistry::EVERYTHING); ExtensionRegistry::EVERYTHING);
if (!target_extension || !ShouldExposeViaManagementAPI(*target_extension)) { if (!target_extension || !ShouldExposeViaManagementAPI(*target_extension)) {
return RespondNow(Error(keys::kNoExtensionError, target_extension_id_)); return RespondNow(Error(keys::kNoExtensionError, target_extension_id_));
@@ -828,8 +853,7 @@ void ManagementUninstallFunctionBase::UninstallExtension() { @@ -826,8 +851,7 @@ void ManagementUninstallFunctionBase::UninstallExtension() {
// The extension can be uninstalled in another window while the UI was // The extension can be uninstalled in another window while the UI was
// showing. Do nothing in that case. // showing. Do nothing in that case.
const Extension* target_extension = const Extension* target_extension =
@@ -942,7 +942,7 @@ diff --git a/extensions/browser/api/management/management_api.cc b/extensions/br
ExtensionRegistry::EVERYTHING); ExtensionRegistry::EVERYTHING);
std::string error; std::string error;
bool success = false; bool success = false;
@@ -909,8 +933,7 @@ ExtensionFunction::ResponseAction ManagementCreateAppShortcutFunction::Run() { @@ -907,8 +931,7 @@ ExtensionFunction::ResponseAction ManagementCreateAppShortcutFunction::Run() {
management::CreateAppShortcut::Params::Create(args()); management::CreateAppShortcut::Params::Create(args());
EXTENSION_FUNCTION_VALIDATE(params); EXTENSION_FUNCTION_VALIDATE(params);
const Extension* extension = const Extension* extension =
@@ -952,7 +952,7 @@ diff --git a/extensions/browser/api/management/management_api.cc b/extensions/br
if (!extension) { if (!extension) {
return RespondNow(Error( return RespondNow(Error(
ErrorUtils::FormatErrorMessage(keys::kNoExtensionError, params->id))); ErrorUtils::FormatErrorMessage(keys::kNoExtensionError, params->id)));
@@ -964,8 +987,7 @@ ExtensionFunction::ResponseAction ManagementSetLaunchTypeFunction::Run() { @@ -962,8 +985,7 @@ ExtensionFunction::ResponseAction ManagementSetLaunchTypeFunction::Run() {
management::SetLaunchType::Params::Create(args()); management::SetLaunchType::Params::Create(args());
EXTENSION_FUNCTION_VALIDATE(params); EXTENSION_FUNCTION_VALIDATE(params);
const Extension* extension = const Extension* extension =
@@ -965,7 +965,7 @@ diff --git a/extensions/browser/api/management/management_api.cc b/extensions/br
diff --git a/extensions/browser/updater/extension_downloader.cc b/extensions/browser/updater/extension_downloader.cc diff --git a/extensions/browser/updater/extension_downloader.cc b/extensions/browser/updater/extension_downloader.cc
--- a/extensions/browser/updater/extension_downloader.cc --- a/extensions/browser/updater/extension_downloader.cc
+++ b/extensions/browser/updater/extension_downloader.cc +++ b/extensions/browser/updater/extension_downloader.cc
@@ -494,8 +494,8 @@ void ExtensionDownloader::CreateManifestLoader() { @@ -491,8 +491,8 @@ void ExtensionDownloader::CreateManifestLoader() {
std::vector<std::string_view> id_vector(extension_ids.begin(), std::vector<std::string_view> id_vector(extension_ids.begin(),
extension_ids.end()); extension_ids.end());
std::string id_list = base::JoinString(id_vector, ","); std::string id_list = base::JoinString(id_vector, ",");
@@ -976,7 +976,7 @@ diff --git a/extensions/browser/updater/extension_downloader.cc b/extensions/bro
<< (active_request->foreground_check() << (active_request->foreground_check()
? kUpdateInteractivityForeground ? kUpdateInteractivityForeground
: kUpdateInteractivityBackground); : kUpdateInteractivityBackground);
@@ -520,7 +520,7 @@ void ExtensionDownloader::CreateManifestLoader() { @@ -517,7 +517,7 @@ void ExtensionDownloader::CreateManifestLoader() {
destination: WEBSITE destination: WEBSITE
} }
policy { policy {
@@ -985,7 +985,7 @@ diff --git a/extensions/browser/updater/extension_downloader.cc b/extensions/bro
cookies_store: "user" cookies_store: "user"
setting: setting:
"This feature cannot be disabled. It is only enabled when the user " "This feature cannot be disabled. It is only enabled when the user "
@@ -537,6 +537,7 @@ void ExtensionDownloader::CreateManifestLoader() { @@ -534,6 +534,7 @@ void ExtensionDownloader::CreateManifestLoader() {
auto resource_request = std::make_unique<network::ResourceRequest>(); auto resource_request = std::make_unique<network::ResourceRequest>();
resource_request->url = active_request->full_url(), resource_request->url = active_request->full_url(),
resource_request->load_flags = net::LOAD_DISABLE_CACHE; resource_request->load_flags = net::LOAD_DISABLE_CACHE;
@@ -993,7 +993,7 @@ diff --git a/extensions/browser/updater/extension_downloader.cc b/extensions/bro
if (active_request->fetch_priority() == DownloadFetchPriority::kForeground) { if (active_request->fetch_priority() == DownloadFetchPriority::kForeground) {
resource_request->priority = net::MEDIUM; resource_request->priority = net::MEDIUM;
@@ -545,10 +546,6 @@ void ExtensionDownloader::CreateManifestLoader() { @@ -542,10 +543,6 @@ void ExtensionDownloader::CreateManifestLoader() {
// Send traffic-management headers to the webstore, and omit credentials. // Send traffic-management headers to the webstore, and omit credentials.
// https://bugs.chromium.org/p/chromium/issues/detail?id=647516 // https://bugs.chromium.org/p/chromium/issues/detail?id=647516
if (extension_urls::IsWebstoreUpdateUrl(active_request->full_url())) { if (extension_urls::IsWebstoreUpdateUrl(active_request->full_url())) {
@@ -1004,7 +1004,7 @@ diff --git a/extensions/browser/updater/extension_downloader.cc b/extensions/bro
resource_request->headers.SetHeader(kUpdateAppIdHeader, id_list); resource_request->headers.SetHeader(kUpdateAppIdHeader, id_list);
resource_request->headers.SetHeader( resource_request->headers.SetHeader(
kUpdateUpdaterHeader, kUpdateUpdaterHeader,
@@ -833,20 +830,6 @@ void ExtensionDownloader::HandleManifestResults( @@ -830,20 +827,6 @@ void ExtensionDownloader::HandleManifestResults(
update.second->info); update.second->info);
} }
@@ -1025,7 +1025,7 @@ diff --git a/extensions/browser/updater/extension_downloader.cc b/extensions/bro
ExtensionIdSet extension_ids_with_errors; ExtensionIdSet extension_ids_with_errors;
for (const auto& failure : failures) for (const auto& failure : failures)
extension_ids_with_errors.insert(failure.first.id); extension_ids_with_errors.insert(failure.first.id);
@@ -868,7 +851,7 @@ ExtensionDownloader::GetUpdateAvailability( @@ -865,7 +848,7 @@ ExtensionDownloader::GetUpdateAvailability(
// extensions that have already existed in the system. // extensions that have already existed in the system.
if (!delegate_->GetExtensionExistingVersion(extension_id, if (!delegate_->GetExtensionExistingVersion(extension_id,
&extension_version)) { &extension_version)) {
@@ -1034,7 +1034,7 @@ diff --git a/extensions/browser/updater/extension_downloader.cc b/extensions/bro
return UpdateAvailability::kBadUpdateSpecification; return UpdateAvailability::kBadUpdateSpecification;
} }
VLOG(2) << extension_id << " is at '" << extension_version << "'"; VLOG(2) << extension_id << " is at '" << extension_version << "'";
@@ -879,11 +862,11 @@ ExtensionDownloader::GetUpdateAvailability( @@ -876,11 +859,11 @@ ExtensionDownloader::GetUpdateAvailability(
const std::string& update_version_str = update->version; const std::string& update_version_str = update->version;
if (VLOG_IS_ON(2)) { if (VLOG_IS_ON(2)) {
if (update_version_str.empty()) if (update_version_str.empty())
@@ -1048,7 +1048,7 @@ diff --git a/extensions/browser/updater/extension_downloader.cc b/extensions/bro
<< " latest version is '" << update_version_str << "'"; << " latest version is '" << update_version_str << "'";
} }
@@ -893,21 +876,21 @@ ExtensionDownloader::GetUpdateAvailability( @@ -890,21 +873,21 @@ ExtensionDownloader::GetUpdateAvailability(
// we don't want it. // we don't want it.
if (update_version_str.empty()) { if (update_version_str.empty()) {
// If update manifest doesn't have version number => no update. // If update manifest doesn't have version number => no update.
@@ -1073,7 +1073,7 @@ diff --git a/extensions/browser/updater/extension_downloader.cc b/extensions/bro
<< update_version_str << "'"; << update_version_str << "'";
bool can_rollback = bool can_rollback =
update_version.CompareTo(existing_version) < 0 && update_version.CompareTo(existing_version) < 0 &&
@@ -934,7 +917,9 @@ ExtensionDownloader::GetUpdateAvailability( @@ -931,7 +914,9 @@ ExtensionDownloader::GetUpdateAvailability(
} }
// Stop checking as soon as an update for |extension_id| is found. // Stop checking as soon as an update for |extension_id| is found.
@@ -1084,7 +1084,7 @@ diff --git a/extensions/browser/updater/extension_downloader.cc b/extensions/bro
*update_result_out = const_cast<UpdateManifestResult*>(update); *update_result_out = const_cast<UpdateManifestResult*>(update);
return UpdateAvailability::kAvailable; return UpdateAvailability::kAvailable;
} }
@@ -1179,7 +1164,7 @@ void ExtensionDownloader::CreateExtensionLoader() { @@ -1176,7 +1161,7 @@ void ExtensionDownloader::CreateExtensionLoader() {
int load_flags = net::LOAD_DISABLE_CACHE; int load_flags = net::LOAD_DISABLE_CACHE;
bool is_secure = fetch->url.SchemeIsCryptographic(); bool is_secure = fetch->url.SchemeIsCryptographic();
extension_loader_resource_request_->load_flags = load_flags; extension_loader_resource_request_->load_flags = load_flags;
@@ -1093,7 +1093,7 @@ diff --git a/extensions/browser/updater/extension_downloader.cc b/extensions/bro
extension_loader_resource_request_->credentials_mode = extension_loader_resource_request_->credentials_mode =
network::mojom::CredentialsMode::kOmit; network::mojom::CredentialsMode::kOmit;
} else { } else {
@@ -1187,7 +1172,7 @@ void ExtensionDownloader::CreateExtensionLoader() { @@ -1184,7 +1169,7 @@ void ExtensionDownloader::CreateExtensionLoader() {
net::SiteForCookies::FromUrl(fetch->url); net::SiteForCookies::FromUrl(fetch->url);
} }
@@ -1102,7 +1102,7 @@ diff --git a/extensions/browser/updater/extension_downloader.cc b/extensions/bro
is_secure) { is_secure) {
if (access_token_.empty()) { if (access_token_.empty()) {
// We should try OAuth2, but we have no token cached. This // We should try OAuth2, but we have no token cached. This
@@ -1212,7 +1197,7 @@ void ExtensionDownloader::CreateExtensionLoader() { @@ -1207,7 +1192,7 @@ void ExtensionDownloader::CreateExtensionLoader() {
base::StringPrintf("Bearer %s", access_token_.c_str())); base::StringPrintf("Bearer %s", access_token_.c_str()));
} }
@@ -1111,7 +1111,7 @@ diff --git a/extensions/browser/updater/extension_downloader.cc b/extensions/bro
StartExtensionLoader(); StartExtensionLoader();
} }
@@ -1234,7 +1219,7 @@ void ExtensionDownloader::StartExtensionLoader() { @@ -1229,7 +1214,7 @@ void ExtensionDownloader::StartExtensionLoader() {
destination: WEBSITE destination: WEBSITE
} }
policy { policy {
@@ -1120,7 +1120,7 @@ diff --git a/extensions/browser/updater/extension_downloader.cc b/extensions/bro
cookies_store: "user" cookies_store: "user"
setting: setting:
"This feature cannot be disabled. It is only enabled when the user " "This feature cannot be disabled. It is only enabled when the user "
@@ -1305,6 +1290,7 @@ void ExtensionDownloader::OnExtensionLoadComplete(base::FilePath crx_path) { @@ -1300,6 +1285,7 @@ void ExtensionDownloader::OnExtensionLoadComplete(base::FilePath crx_path) {
RETRY_HISTOGRAM("CrxFetchSuccess", RETRY_HISTOGRAM("CrxFetchSuccess",
extensions_queue_.active_request_failure_count(), extensions_queue_.active_request_failure_count(),
url); url);
@@ -1128,7 +1128,7 @@ diff --git a/extensions/browser/updater/extension_downloader.cc b/extensions/bro
std::unique_ptr<ExtensionFetch> fetch_data = std::unique_ptr<ExtensionFetch> fetch_data =
std::move(extensions_queue_.reset_active_request().fetch); std::move(extensions_queue_.reset_active_request().fetch);
delegate_->OnExtensionDownloadStageChanged( delegate_->OnExtensionDownloadStageChanged(
@@ -1325,7 +1311,7 @@ void ExtensionDownloader::OnExtensionLoadComplete(base::FilePath crx_path) { @@ -1320,7 +1306,7 @@ void ExtensionDownloader::OnExtensionLoadComplete(base::FilePath crx_path) {
} else { } else {
const std::set<int> request_ids = active_request.GetRequestIds(); const std::set<int> request_ids = active_request.GetRequestIds();
const ExtensionDownloaderDelegate::PingResult& ping = ping_results_[id]; const ExtensionDownloaderDelegate::PingResult& ping = ping_results_[id];
@@ -1137,7 +1137,7 @@ diff --git a/extensions/browser/updater/extension_downloader.cc b/extensions/bro
<< "' response code:" << response_code; << "' response code:" << response_code;
if (ShouldRetryRequest(extension_loader_.get()) && if (ShouldRetryRequest(extension_loader_.get()) &&
extensions_queue_.active_request_failure_count() < kMaxRetries) { extensions_queue_.active_request_failure_count() < kMaxRetries) {
@@ -1419,6 +1405,7 @@ void ExtensionDownloader::NotifyExtensionsDownloadFailedWithList( @@ -1414,6 +1400,7 @@ void ExtensionDownloader::NotifyExtensionsDownloadFailedWithList(
bool ExtensionDownloader::IterateFetchCredentialsAfterFailure( bool ExtensionDownloader::IterateFetchCredentialsAfterFailure(
ExtensionFetch* fetch, ExtensionFetch* fetch,
int response_code) { int response_code) {
@@ -1201,21 +1201,14 @@ diff --git a/extensions/browser/updater/safe_manifest_parser.cc b/extensions/bro
diff --git a/extensions/common/extension_features.cc b/extensions/common/extension_features.cc diff --git a/extensions/common/extension_features.cc b/extensions/common/extension_features.cc
--- a/extensions/common/extension_features.cc --- a/extensions/common/extension_features.cc
+++ b/extensions/common/extension_features.cc +++ b/extensions/common/extension_features.cc
@@ -242,4 +242,18 @@ BASE_FEATURE(kAvoidCloneArgsOnExtensionFunctionDispatch, @@ -178,4 +178,11 @@ BASE_FEATURE(OneTimeMessageUnserializableResponseClosesChannel,
"AvoidCloneArgsOnExtensionFunctionDispatch", BASE_FEATURE(ContentVerifyJobUseJobVersionForHashing,
base::FEATURE_DISABLED_BY_DEFAULT); base::FEATURE_ENABLED_BY_DEFAULT);
+// Activates the auto update of extensions.
+// the only data provided by default is the list of extensions.
+CROMITE_FEATURE(kEnableExtensionAutoupdate, +CROMITE_FEATURE(kEnableExtensionAutoupdate,
+ "EnableExtensionAutoupdate", + "EnableExtensionAutoupdate",
+ base::FEATURE_DISABLED_BY_DEFAULT); + base::FEATURE_DISABLED_BY_DEFAULT);
+ +
+// Modifies "management" and "webstorePrivate" extension api
+// by not allowing access to the list of installed extensions
+// and reading or changing status.
+// Allows the installation of new extensions.
+// If active, exposes all features to the chrome web store like chromium.
+CROMITE_FEATURE(kEnableExtensionManagementToChromeStore, +CROMITE_FEATURE(kEnableExtensionManagementToChromeStore,
+ "EnableExtensionToChromeStore", + "EnableExtensionToChromeStore",
+ base::FEATURE_DISABLED_BY_DEFAULT); + base::FEATURE_DISABLED_BY_DEFAULT);
@@ -1223,11 +1216,19 @@ diff --git a/extensions/common/extension_features.cc b/extensions/common/extensi
diff --git a/extensions/common/extension_features.h b/extensions/common/extension_features.h diff --git a/extensions/common/extension_features.h b/extensions/common/extension_features.h
--- a/extensions/common/extension_features.h --- a/extensions/common/extension_features.h
+++ b/extensions/common/extension_features.h +++ b/extensions/common/extension_features.h
@@ -271,6 +271,8 @@ BASE_DECLARE_FEATURE(kOptimizeServiceWorkerStartRequests); @@ -287,6 +287,16 @@ BASE_DECLARE_FEATURE(kOneTimeMessageUnserializableResponseClosesChannel);
// TODO(crbug.com/424432184): Clean up when experiment is complete. // these inconsistencies.
BASE_DECLARE_FEATURE(kAvoidCloneArgsOnExtensionFunctionDispatch); BASE_DECLARE_FEATURE(kContentVerifyJobUseJobVersionForHashing);
+// Activates the auto update of extensions.
+// the only data provided by default is the list of extensions.
+BASE_DECLARE_FEATURE(kEnableExtensionAutoupdate); +BASE_DECLARE_FEATURE(kEnableExtensionAutoupdate);
+
+// Modifies "management" and "webstorePrivate" extension api
+// by not allowing access to the list of installed extensions
+// and reading or changing status.
+// Allows the installation of new extensions.
+// If active, exposes all features to the chrome web store like chromium.
+BASE_DECLARE_FEATURE(kEnableExtensionManagementToChromeStore); +BASE_DECLARE_FEATURE(kEnableExtensionManagementToChromeStore);
} // namespace extensions_features } // namespace extensions_features
@@ -1235,7 +1236,7 @@ diff --git a/extensions/common/extension_features.h b/extensions/common/extensio
diff --git a/tools/typescript/definitions/developer_private.d.ts b/tools/typescript/definitions/developer_private.d.ts diff --git a/tools/typescript/definitions/developer_private.d.ts b/tools/typescript/definitions/developer_private.d.ts
--- a/tools/typescript/definitions/developer_private.d.ts --- a/tools/typescript/definitions/developer_private.d.ts
+++ b/tools/typescript/definitions/developer_private.d.ts +++ b/tools/typescript/definitions/developer_private.d.ts
@@ -264,6 +264,7 @@ declare global { @@ -265,6 +265,7 @@ declare global {
isIncognitoAvailable: boolean; isIncognitoAvailable: boolean;
isChildAccount: boolean; isChildAccount: boolean;
isMv2DeprecationNoticeDismissed: boolean; isMv2DeprecationNoticeDismissed: boolean;
@@ -1243,7 +1244,7 @@ diff --git a/tools/typescript/definitions/developer_private.d.ts b/tools/typescr
} }
export interface ExtensionConfigurationUpdate { export interface ExtensionConfigurationUpdate {
@@ -281,6 +282,7 @@ declare global { @@ -282,6 +283,7 @@ declare global {
export interface ProfileConfigurationUpdate { export interface ProfileConfigurationUpdate {
inDeveloperMode?: boolean; inDeveloperMode?: boolean;
isMv2DeprecationNoticeDismissed?: boolean; isMv2DeprecationNoticeDismissed?: boolean;
@@ -79,7 +79,7 @@ diff --git a/services/network/cors/preflight_result.cc b/services/network/cors/p
diff --git a/services/network/network_context.cc b/services/network/network_context.cc diff --git a/services/network/network_context.cc b/services/network/network_context.cc
--- a/services/network/network_context.cc --- a/services/network/network_context.cc
+++ b/services/network/network_context.cc +++ b/services/network/network_context.cc
@@ -1374,6 +1374,7 @@ void NetworkContext::ClearHttpCache(base::Time start_time, @@ -1372,6 +1372,7 @@ void NetworkContext::ClearHttpCache(base::Time start_time,
base::Time end_time, base::Time end_time,
mojom::ClearDataFilterPtr filter, mojom::ClearDataFilterPtr filter,
ClearHttpCacheCallback callback) { ClearHttpCacheCallback callback) {
+10 -10
View File
@@ -52,7 +52,7 @@ diff --git a/content/browser/client_hints/client_hints.cc b/content/browser/clie
#include "ui/display/display.h" #include "ui/display/display.h"
#include "ui/display/screen.h" #include "ui/display/screen.h"
#include "url/origin.h" #include "url/origin.h"
@@ -703,7 +704,8 @@ void UpdateNavigationRequestClientUaHeadersImpl( @@ -705,7 +706,8 @@ void UpdateNavigationRequestClientUaHeadersImpl(
// value, disable them. This overwrites previous decision from UI. // value, disable them. This overwrites previous decision from UI.
disable_due_to_custom_ua = !ua_metadata.has_value(); disable_due_to_custom_ua = !ua_metadata.has_value();
} }
@@ -62,24 +62,24 @@ diff --git a/content/browser/client_hints/client_hints.cc b/content/browser/clie
if (!disable_due_to_custom_ua) { if (!disable_due_to_custom_ua) {
if (!ua_metadata.has_value()) if (!ua_metadata.has_value())
ua_metadata = delegate->GetUserAgentMetadata(); ua_metadata = delegate->GetUserAgentMetadata();
@@ -885,10 +887,12 @@ void AddRequestClientHintsHeaders( @@ -897,10 +899,12 @@ void AddRequestClientHintsHeaders(
AddEctHeader(headers, network_quality_tracker, url); AddEctHeader(headers, network_quality_tracker, url);
} }
- UpdateNavigationRequestClientUaHeadersImpl( - UpdateNavigationRequestClientUaHeadersImpl(
- delegate, is_ua_override_on, frame_tree_node, - delegate, is_ua_override_on, frame_tree_node,
- ClientUaHeaderCallType::kDuringCreation, headers, container_policy, - ClientUaHeaderCallType::kDuringCreation, headers, container_policy, data,
- request_url, data); - ftn_for_devtools_override);
+ if (blink::RuntimeEnabledFeatures::UserAgentClientHintEnabled()) { + if (blink::RuntimeEnabledFeatures::UserAgentClientHintEnabled()) {
+ UpdateNavigationRequestClientUaHeadersImpl( + UpdateNavigationRequestClientUaHeadersImpl(
+ delegate, is_ua_override_on, frame_tree_node, + delegate, is_ua_override_on, frame_tree_node,
+ ClientUaHeaderCallType::kDuringCreation, headers, container_policy, + ClientUaHeaderCallType::kDuringCreation, headers, container_policy, data,
+ request_url, data); + ftn_for_devtools_override);
+ } + }
if (ShouldAddClientHint(data, WebClientHintsType::kPrefersColorScheme)) { if (ShouldAddClientHint(data, WebClientHintsType::kPrefersColorScheme)) {
AddPrefersColorSchemeHeader(headers, frame_tree_node); AddPrefersColorSchemeHeader(headers, frame_tree_node);
@@ -969,6 +973,7 @@ ParseAndPersistAcceptCHForNavigation( @@ -988,6 +992,7 @@ ParseAndPersistAcceptCHForNavigation(
BrowserContext* context, BrowserContext* context,
ClientHintsControllerDelegate* delegate, ClientHintsControllerDelegate* delegate,
FrameTreeNode* frame_tree_node) { FrameTreeNode* frame_tree_node) {
@@ -90,7 +90,7 @@ diff --git a/content/browser/client_hints/client_hints.cc b/content/browser/clie
diff --git a/content/browser/loader/navigation_url_loader_impl.cc b/content/browser/loader/navigation_url_loader_impl.cc diff --git a/content/browser/loader/navigation_url_loader_impl.cc b/content/browser/loader/navigation_url_loader_impl.cc
--- a/content/browser/loader/navigation_url_loader_impl.cc --- a/content/browser/loader/navigation_url_loader_impl.cc
+++ b/content/browser/loader/navigation_url_loader_impl.cc +++ b/content/browser/loader/navigation_url_loader_impl.cc
@@ -1674,6 +1674,11 @@ void NavigationURLLoaderImpl::OnAcceptCHFrameReceived( @@ -1737,6 +1737,11 @@ void NavigationURLLoaderImpl::OnAcceptCHFrameReceived(
return; return;
} }
@@ -255,7 +255,7 @@ diff --git a/third_party/blink/renderer/core/loader/frame_fetch_context.cc b/thi
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 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 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -532,6 +532,11 @@ @@ -551,6 +551,11 @@
name: "AriaNotifyV2", name: "AriaNotifyV2",
status: {"Android": "test", "Win": "test", "Mac": "test", "Linux": "test"}, status: {"Android": "test", "Win": "test", "Mac": "test", "Linux": "test"},
}, },
@@ -267,7 +267,7 @@ diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5
{ {
name: "AriaRowColIndexText", name: "AriaRowColIndexText",
status: "stable", status: "stable",
@@ -924,8 +929,7 @@ @@ -946,8 +951,7 @@
// Allows top-level sites to restrict collection of high-entropy UA client // Allows top-level sites to restrict collection of high-entropy UA client
// hints (from 3Ps, or itself) via the getHighEntropyValues API. // hints (from 3Ps, or itself) via the getHighEntropyValues API.
// crbug.com/385161047 // crbug.com/385161047
@@ -22,7 +22,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/components/network_session_configurator/browser/network_session_configurator.cc b/components/network_session_configurator/browser/network_session_configurator.cc diff --git a/components/network_session_configurator/browser/network_session_configurator.cc b/components/network_session_configurator/browser/network_session_configurator.cc
--- a/components/network_session_configurator/browser/network_session_configurator.cc --- a/components/network_session_configurator/browser/network_session_configurator.cc
+++ b/components/network_session_configurator/browser/network_session_configurator.cc +++ b/components/network_session_configurator/browser/network_session_configurator.cc
@@ -222,9 +222,8 @@ quic::QuicTagVector GetQuicClientConnectionOptions( @@ -221,9 +221,8 @@ quic::QuicTagVector GetQuicClientConnectionOptions(
bool ShouldQuicCloseSessionsOnIpChange( bool ShouldQuicCloseSessionsOnIpChange(
const VariationParameters& quic_trial_params) { const VariationParameters& quic_trial_params) {
@@ -34,7 +34,7 @@ diff --git a/components/network_session_configurator/browser/network_session_con
} }
bool ShouldQuicGoAwaySessionsOnIpChange( bool ShouldQuicGoAwaySessionsOnIpChange(
@@ -305,11 +304,8 @@ bool ShouldQuicEstimateInitialRtt( @@ -304,11 +303,8 @@ bool ShouldQuicEstimateInitialRtt(
bool ShouldQuicMigrateSessionsOnNetworkChangeV2( bool ShouldQuicMigrateSessionsOnNetworkChangeV2(
const VariationParameters& quic_trial_params) { const VariationParameters& quic_trial_params) {
@@ -88,7 +88,7 @@ new file mode 100644
diff --git a/net/base/features.cc b/net/base/features.cc diff --git a/net/base/features.cc b/net/base/features.cc
--- a/net/base/features.cc --- a/net/base/features.cc
+++ b/net/base/features.cc +++ b/net/base/features.cc
@@ -581,7 +581,7 @@ BASE_FEATURE(kRelatedWebsitePartitionAPI, @@ -495,7 +495,7 @@ BASE_FEATURE(RelatedWebsitePartitionAPI, base::FEATURE_DISABLED_BY_DEFAULT);
// NetworkChangeNotifier::AreNetworkHandlesSupported). // NetworkChangeNotifier::AreNetworkHandlesSupported).
#if BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_ANDROID)
inline constexpr auto kMigrateSessionsOnNetworkChangeV2Default = inline constexpr auto kMigrateSessionsOnNetworkChangeV2Default =
File diff suppressed because it is too large Load Diff
@@ -8,17 +8,17 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
--- ---
chrome/android/chrome_java_resources.gni | 2 +- chrome/android/chrome_java_resources.gni | 2 +-
.../android/java/res/xml/main_preferences.xml | 4 +- .../android/java/res/xml/main_preferences.xml | 4 +-
.../res/xml/privacy_preferences_cromite.xml | 191 ++++++++++++++++++ .../res/xml/privacy_preferences_cromite.xml | 197 ++++++++++++++++++
.../privacy/settings/PrivacySettings.java | 6 +- .../privacy/settings/PrivacySettings.java | 6 +-
.../Cromite-settings-ui.grdp | 15 ++ .../Cromite-settings-ui.grdp | 15 ++
5 files changed, 213 insertions(+), 5 deletions(-) 5 files changed, 219 insertions(+), 5 deletions(-)
create mode 100644 chrome/android/java/res/xml/privacy_preferences_cromite.xml create mode 100644 chrome/android/java/res/xml/privacy_preferences_cromite.xml
create mode 100644 chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Cromite-settings-ui.grdp create mode 100644 chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Cromite-settings-ui.grdp
diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_java_resources.gni diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_java_resources.gni
--- a/chrome/android/chrome_java_resources.gni --- a/chrome/android/chrome_java_resources.gni
+++ b/chrome/android/chrome_java_resources.gni +++ b/chrome/android/chrome_java_resources.gni
@@ -634,7 +634,7 @@ chrome_java_resources = [ @@ -638,7 +638,7 @@ chrome_java_resources = [
"java/res/xml/manage_sync_preferences.xml", "java/res/xml/manage_sync_preferences.xml",
"java/res/xml/personalize_google_services_preferences.xml", "java/res/xml/personalize_google_services_preferences.xml",
"java/res/xml/incognito_preferences.xml", "java/res/xml/incognito_preferences.xml",
@@ -30,7 +30,7 @@ diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_ja
diff --git a/chrome/android/java/res/xml/main_preferences.xml b/chrome/android/java/res/xml/main_preferences.xml diff --git a/chrome/android/java/res/xml/main_preferences.xml b/chrome/android/java/res/xml/main_preferences.xml
--- a/chrome/android/java/res/xml/main_preferences.xml --- a/chrome/android/java/res/xml/main_preferences.xml
+++ b/chrome/android/java/res/xml/main_preferences.xml +++ b/chrome/android/java/res/xml/main_preferences.xml
@@ -15,7 +15,7 @@ for the previous order (main_preferences_legacy). --> @@ -11,7 +11,7 @@ found in the LICENSE file.
<!-- `order=0` is reserved and it will be added in code. --> <!-- `order=0` is reserved and it will be added in code. -->
<!-- TODO(crbug.com/364906215): Move SettingsPromoCardPreference here once SyncPromoPreference is removed --> <!-- TODO(crbug.com/364906215): Move SettingsPromoCardPreference here once SyncPromoPreference is removed -->
<PreferenceCategory <PreferenceCategory
@@ -39,7 +39,7 @@ diff --git a/chrome/android/java/res/xml/main_preferences.xml b/chrome/android/j
android:order="1001" android:order="1001"
android:title="@string/prefs_section_account_and_google_services"/> android:title="@string/prefs_section_account_and_google_services"/>
<org.chromium.chrome.browser.sync.settings.SignInPreference <org.chromium.chrome.browser.sync.settings.SignInPreference
@@ -28,7 +28,7 @@ for the previous order (main_preferences_legacy). --> @@ -24,7 +24,7 @@ found in the LICENSE file.
android:layout="@layout/account_management_account_row" android:layout="@layout/account_management_account_row"
android:title="@string/sync_category_title"/> android:title="@string/sync_category_title"/>
<org.chromium.components.browser_ui.settings.ChromeBasePreference <org.chromium.components.browser_ui.settings.ChromeBasePreference
@@ -52,7 +52,7 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences_cromite.xml b/chrom
new file mode 100644 new file mode 100644
--- /dev/null --- /dev/null
+++ b/chrome/android/java/res/xml/privacy_preferences_cromite.xml +++ b/chrome/android/java/res/xml/privacy_preferences_cromite.xml
@@ -0,0 +1,191 @@ @@ -0,0 +1,197 @@
+<?xml version="1.0" encoding="utf-8"?><!-- +<?xml version="1.0" encoding="utf-8"?><!--
+Copyright 2022 The Chromium Authors +Copyright 2022 The Chromium Authors
+Use of this source code is governed by a BSD-style license that can be +Use of this source code is governed by a BSD-style license that can be
@@ -108,6 +108,12 @@ new file mode 100644
+ android:key="can_make_payment" + android:key="can_make_payment"
+ android:title="@string/can_make_payment_title" + android:title="@string/can_make_payment_title"
+ android:summary="@string/settings_can_make_payment_toggle_label" /> + android:summary="@string/settings_can_make_payment_toggle_label" />
+ <org.chromium.components.browser_ui.settings.ChromeSwitchPreference
+ android:key="throttle_main_thread_to_60hz"
+ android:title="@string/throttle_main_thread_to_60hz_title"
+ android:summary="@string/throttle_main_thread_to_60hz_summary"
+ app:featureName="throttle-main-thread-to-60hz"
+ app:needRestart="true" />
+ +
+ <PreferenceCategory + <PreferenceCategory
+ android:title="@string/data_exposed_to_device_section_title"/> + android:title="@string/data_exposed_to_device_section_title"/>
@@ -247,7 +253,7 @@ new file mode 100644
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 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 --- 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 +++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
@@ -193,7 +193,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment @@ -194,7 +194,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
public void onCreatePreferencesCromite(@Nullable Bundle savedInstanceState, @Nullable String rootKey) { public void onCreatePreferencesCromite(@Nullable Bundle savedInstanceState, @Nullable String rootKey) {
mPageTitle.set(getString(R.string.prefs_privacy_security)); mPageTitle.set(getString(R.string.prefs_privacy_security));
@@ -256,7 +262,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
Preference incognitoTrackingProtectionsPreference = Preference incognitoTrackingProtectionsPreference =
findPreference(PREF_INCOGNITO_TRACKING_PROTECTIONS); findPreference(PREF_INCOGNITO_TRACKING_PROTECTIONS);
@@ -289,7 +289,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment @@ -290,7 +290,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
ChromeSwitchPreference passwordLeakTogglePref = ChromeSwitchPreference passwordLeakTogglePref =
(ChromeSwitchPreference) findPreference(PREF_PASSWORD_LEAK_DETECTION); (ChromeSwitchPreference) findPreference(PREF_PASSWORD_LEAK_DETECTION);
+55 -28
View File
@@ -26,6 +26,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
.../mipmap-xxxhdpi/layered_app_icon.png | Bin 3652 -> 29220 bytes .../mipmap-xxxhdpi/layered_app_icon.png | Bin 3652 -> 29220 bytes
.../layered_app_icon_background.png | Bin 3519 -> 142032 bytes .../layered_app_icon_background.png | Bin 3519 -> 142032 bytes
.../values/channel_constants.xml | 8 +- .../values/channel_constants.xml | 8 +-
.../ChromeContextMenuPopulator.java | 2 +-
.../browser/fullscreen/FullscreenToast.java | 2 +- .../browser/fullscreen/FullscreenToast.java | 2 +-
.../inline/BromiteInlineUpdateController.java | 19 +++- .../inline/BromiteInlineUpdateController.java | 19 +++-
chrome/app/extensions_strings.grdp | 4 +- chrome/app/extensions_strings.grdp | 4 +-
@@ -36,12 +37,12 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
.../theme/chromium/win/tiles/SmallLogo.png | Bin 9784 -> 12363 bytes .../theme/chromium/win/tiles/SmallLogo.png | Bin 9784 -> 12363 bytes
.../chromium/product_logo_32.png | Bin 822 -> 2301 bytes .../chromium/product_logo_32.png | Bin 822 -> 2301 bytes
chrome/browser/BUILD.gn | 1 + chrome/browser/BUILD.gn | 1 +
.../browser/flags/ChromeFeatureList.java | 2 +-
.../chrome/browser/omaha/UpdateConfigs.java | 2 +- .../chrome/browser/omaha/UpdateConfigs.java | 2 +-
chrome/browser/prefs/BUILD.gn | 1 + chrome/browser/prefs/BUILD.gn | 1 +
.../prefs/chrome_pref_service_factory.cc | 6 +- .../prefs/chrome_pref_service_factory.cc | 6 +-
.../profiles/profile_shortcut_manager_win.cc | 2 +- .../profiles/profile_shortcut_manager_win.cc | 2 +-
.../settings/settings_menu/settings_menu.html | 14 ++- .../settings/settings_menu/settings_menu.html | 14 ++-
.../OmniboxSuggestionsContainer.java | 8 +-
.../strings/android_chrome_strings.grd | 2 +- .../strings/android_chrome_strings.grd | 2 +-
.../toolbar/chrome_labs/chrome_labs_utils.cc | 1 + .../toolbar/chrome_labs/chrome_labs_utils.cc | 1 +
chrome/common/url_constants.h | 4 +- chrome/common/url_constants.h | 4 +-
@@ -62,7 +63,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
content/child/runtime_features.cc | 44 ++++----- content/child/runtime_features.cc | 44 ++++-----
.../Cromite-Branding.inc | 1 + .../Cromite-Branding.inc | 1 +
tools/grit/grit/grd_reader.py | 35 +++++++ tools/grit/grit/grd_reader.py | 35 +++++++
58 files changed, 204 insertions(+), 130 deletions(-) 59 files changed, 210 insertions(+), 132 deletions(-)
create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Cromite-Branding.inc create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Cromite-Branding.inc
diff --git a/build/BUILD.gn b/build/BUILD.gn diff --git a/build/BUILD.gn b/build/BUILD.gn
@@ -86,7 +87,7 @@ diff --git a/build/BUILD.gn b/build/BUILD.gn
diff --git a/build/config/BUILDCONFIG.gn b/build/config/BUILDCONFIG.gn diff --git a/build/config/BUILDCONFIG.gn b/build/config/BUILDCONFIG.gn
--- a/build/config/BUILDCONFIG.gn --- a/build/config/BUILDCONFIG.gn
+++ b/build/config/BUILDCONFIG.gn +++ b/build/config/BUILDCONFIG.gn
@@ -194,6 +194,10 @@ declare_args() { @@ -187,6 +187,10 @@ declare_args() {
clang_warning_suppression_file = "" clang_warning_suppression_file = ""
} }
@@ -132,7 +133,7 @@ diff --git a/chrome/android/java/res/xml/legal_information_preferences.xml b/chr
diff --git a/chrome/android/java/res/xml/main_preferences.xml b/chrome/android/java/res/xml/main_preferences.xml diff --git a/chrome/android/java/res/xml/main_preferences.xml b/chrome/android/java/res/xml/main_preferences.xml
--- a/chrome/android/java/res/xml/main_preferences.xml --- a/chrome/android/java/res/xml/main_preferences.xml
+++ b/chrome/android/java/res/xml/main_preferences.xml +++ b/chrome/android/java/res/xml/main_preferences.xml
@@ -16,20 +16,20 @@ for the previous order (main_preferences_legacy). --> @@ -12,20 +12,20 @@ found in the LICENSE file.
<!-- TODO(crbug.com/364906215): Move SettingsPromoCardPreference here once SyncPromoPreference is removed --> <!-- TODO(crbug.com/364906215): Move SettingsPromoCardPreference here once SyncPromoPreference is removed -->
<PreferenceCategory <PreferenceCategory
android:key="account_and_google_services_section" android:key="account_and_google_services_section"
@@ -9138,10 +9139,23 @@ diff --git a/chrome/android/java/res_chromium_base/values/channel_constants.xml
+ <string name="search_widget_title" translatable="false">Cromite search</string> + <string name="search_widget_title" translatable="false">Cromite search</string>
+ <string name="quick_action_search_widget_title" translatable="false">Cromite quick action search</string> + <string name="quick_action_search_widget_title" translatable="false">Cromite quick action search</string>
</resources> </resources>
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
@@ -454,8 +454,8 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
&& !isEmptyUrl(mParams.getUrl())
&& UrlUtilities.isAcceptedScheme(mParams.getUrl())) {
if (mMode == ContextMenuMode.NORMAL) {
- linkGroup.add(createListItem(Item.OPEN_IN_NEW_TAB));
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));
}
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/fullscreen/FullscreenToast.java b/chrome/android/java/src/org/chromium/chrome/browser/fullscreen/FullscreenToast.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/fullscreen/FullscreenToast.java b/chrome/android/java/src/org/chromium/chrome/browser/fullscreen/FullscreenToast.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/fullscreen/FullscreenToast.java --- a/chrome/android/java/src/org/chromium/chrome/browser/fullscreen/FullscreenToast.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/fullscreen/FullscreenToast.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/fullscreen/FullscreenToast.java
@@ -108,7 +108,7 @@ interface FullscreenToast { @@ -109,7 +109,7 @@ interface FullscreenToast {
mNotificationToast = mNotificationToast =
Toast.makeTextWithPriority( Toast.makeTextWithPriority(
mActivity, toastTextId, Toast.LENGTH_LONG, ToastPriority.HIGH); mActivity, toastTextId, Toast.LENGTH_LONG, ToastPriority.HIGH);
@@ -9196,7 +9210,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/Br
diff --git a/chrome/app/extensions_strings.grdp b/chrome/app/extensions_strings.grdp diff --git a/chrome/app/extensions_strings.grdp b/chrome/app/extensions_strings.grdp
--- a/chrome/app/extensions_strings.grdp --- a/chrome/app/extensions_strings.grdp
+++ b/chrome/app/extensions_strings.grdp +++ b/chrome/app/extensions_strings.grdp
@@ -398,7 +398,7 @@ @@ -404,7 +404,7 @@
No recent activities No recent activities
</message> </message>
<message name="IDS_EXTENSIONS_NO_INSTALLED_ITEMS" desc="The message shown to the user on the Extensions settings page when there are no extensions or apps installed."> <message name="IDS_EXTENSIONS_NO_INSTALLED_ITEMS" desc="The message shown to the user on the Extensions settings page when there are no extensions or apps installed.">
@@ -9205,7 +9219,7 @@ diff --git a/chrome/app/extensions_strings.grdp b/chrome/app/extensions_strings.
</message> </message>
<message name="IDS_EXTENSIONS_NO_DESCRIPTION" desc="The message shown to the user when an extension does not have any description."> <message name="IDS_EXTENSIONS_NO_DESCRIPTION" desc="The message shown to the user when an extension does not have any description.">
No description provided No description provided
@@ -536,7 +536,7 @@ @@ -542,7 +542,7 @@
My extensions My extensions
</message> </message>
<message name="IDS_EXTENSIONS_SIDEBAR_DISCOVER_MORE" desc="The text displayed in the sidebar of the chrome://extensions page to open the Chrome Web Store to get more extensions."> <message name="IDS_EXTENSIONS_SIDEBAR_DISCOVER_MORE" desc="The text displayed in the sidebar of the chrome://extensions page to open the Chrome Web Store to get more extensions.">
@@ -13171,7 +13185,7 @@ e)fqMZZ`3a)Ds&5H<cfp<0000<MNUMnLSTYHt&Yn8
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn
@@ -1914,6 +1914,7 @@ static_library("browser") { @@ -1886,6 +1886,7 @@ static_library("browser") {
"//build/config/chromebox_for_meetings:buildflags", "//build/config/chromebox_for_meetings:buildflags",
"//build/config/compiler:compiler_buildflags", "//build/config/compiler:compiler_buildflags",
"//build/config/linux/dbus:buildflags", "//build/config/linux/dbus:buildflags",
@@ -13179,18 +13193,6 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
"//cc", "//cc",
"//chrome:extra_resources", "//chrome:extra_resources",
"//chrome:resources", "//chrome:resources",
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
@@ -1340,7 +1340,7 @@ public abstract class ChromeFeatureList {
public static final MutableFlagWithSafeDefault sSuppressToolbarCapturesAtGestureEnd =
newMutableFlagWithSafeDefault(SUPPRESS_TOOLBAR_CAPTURES_AT_GESTURE_END, false);
public static final MutableFlagWithSafeDefault sSwapNewTabAndNewTabInGroupAndroid =
- newMutableFlagWithSafeDefault(SWAP_NEW_TAB_AND_NEW_TAB_IN_GROUP_ANDROID, false);
+ newMutableFlagWithSafeDefault(SWAP_NEW_TAB_AND_NEW_TAB_IN_GROUP_ANDROID, true);
public static final MutableFlagWithSafeDefault sTabArchivalDragDropAndroid =
newMutableFlagWithSafeDefault(TAB_ARCHIVAL_DRAG_DROP_ANDROID, true);
public static final MutableFlagWithSafeDefault sTabCollectionAndroid =
diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/omaha/UpdateConfigs.java b/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/omaha/UpdateConfigs.java diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/omaha/UpdateConfigs.java b/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/omaha/UpdateConfigs.java
--- a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/omaha/UpdateConfigs.java --- a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/omaha/UpdateConfigs.java
+++ b/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/omaha/UpdateConfigs.java +++ b/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/omaha/UpdateConfigs.java
@@ -13225,7 +13227,7 @@ diff --git a/chrome/browser/prefs/chrome_pref_service_factory.cc b/chrome/browse
#include "chrome/browser/browser_process.h" #include "chrome/browser/browser_process.h"
#include "chrome/browser/enterprise/signin/enterprise_signin_prefs.h" #include "chrome/browser/enterprise/signin/enterprise_signin_prefs.h"
#include "chrome/browser/policy/chrome_browser_policy_connector.h" #include "chrome/browser/policy/chrome_browser_policy_connector.h"
@@ -281,10 +282,7 @@ std::unique_ptr<ProfilePrefStoreManager> CreateProfilePrefStoreManager( @@ -286,10 +287,7 @@ std::unique_ptr<ProfilePrefStoreManager> CreateProfilePrefStoreManager(
const base::FilePath& profile_path) { const base::FilePath& profile_path) {
std::string seed; std::string seed;
CHECK(ui::ResourceBundle::HasSharedInstance()); CHECK(ui::ResourceBundle::HasSharedInstance());
@@ -13280,10 +13282,35 @@ diff --git a/chrome/browser/resources/settings/settings_menu/settings_menu.html
$i18n{aboutPageTitle} $i18n{aboutPageTitle}
<cr-ripple></cr-ripple> <cr-ripple></cr-ripple>
</a> </a>
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/OmniboxSuggestionsContainer.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/OmniboxSuggestionsContainer.java
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/OmniboxSuggestionsContainer.java
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/OmniboxSuggestionsContainer.java
@@ -34,6 +34,7 @@ import org.chromium.components.omnibox.OmniboxFeatures;
import org.chromium.ui.KeyboardVisibilityDelegate;
import org.chromium.ui.base.DeviceFormFactor;
import org.chromium.ui.base.ViewUtils;
+import org.chromium.ui.KeyboardUtils;
import java.util.Optional;
@@ -104,8 +105,11 @@ public class OmniboxSuggestionsContainer extends FrameLayout {
// Omnibox.
// Making the container `clickable=true` achieves similar goal, but this consumes all
// activators, including keyboard <Enter> key.
- super.onTouchEvent(event);
- return true;
+ if (KeyboardUtils.isAndroidSoftKeyboardShowing(this)) {
+ KeyboardUtils.hideAndroidSoftKeyboard(this);
+ return true;
+ }
+ return false;
}
private void maybeUpdateLayoutParams(int topMargin) {
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd 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 --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -2389,7 +2389,7 @@ Your Google account may have other forms of browsing history like searches and a @@ -2338,7 +2338,7 @@ Your Google account may have other forms of browsing history like searches and a
About Chrome About Chrome
</message> </message>
<message name="IDS_LEGAL_INFORMATION_SUMMARY" desc="Summary for legal information" meaning="Android"> <message name="IDS_LEGAL_INFORMATION_SUMMARY" desc="Summary for legal information" meaning="Android">
@@ -13339,7 +13366,7 @@ diff --git a/chrome/install_static/chromium_install_modes.cc b/chrome/install_st
diff --git a/components/browser_ui/strings/android/browser_ui_strings.grd b/components/browser_ui/strings/android/browser_ui_strings.grd diff --git a/components/browser_ui/strings/android/browser_ui_strings.grd b/components/browser_ui/strings/android/browser_ui_strings.grd
--- a/components/browser_ui/strings/android/browser_ui_strings.grd --- a/components/browser_ui/strings/android/browser_ui_strings.grd
+++ b/components/browser_ui/strings/android/browser_ui_strings.grd +++ b/components/browser_ui/strings/android/browser_ui_strings.grd
@@ -1005,7 +1005,7 @@ @@ -1008,7 +1008,7 @@
<!-- Accessibility preferences --> <!-- Accessibility preferences -->
<message name="IDS_PREFS_ACCESSIBILITY" desc="Title of Accessibility settings, which allows the user to change webpage font sizes. [CHAR_LIMIT=32]"> <message name="IDS_PREFS_ACCESSIBILITY" desc="Title of Accessibility settings, which allows the user to change webpage font sizes. [CHAR_LIMIT=32]">
@@ -18985,7 +19012,7 @@ diff --git a/components/webui/version/resources/about_version_mobile.css b/compo
diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.cc diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.cc
--- a/content/child/runtime_features.cc --- a/content/child/runtime_features.cc
+++ b/content/child/runtime_features.cc +++ b/content/child/runtime_features.cc
@@ -568,19 +568,22 @@ void ResolveInvalidConfigurations() { @@ -571,19 +571,22 @@ void ResolveInvalidConfigurations() {
base::FeatureList::IsEnabled( base::FeatureList::IsEnabled(
features::kPrivacySandboxAdsAPIsM1Override)) && features::kPrivacySandboxAdsAPIsM1Override)) &&
!base::FeatureList::IsEnabled(blink::features::kFencedFrames)) { !base::FeatureList::IsEnabled(blink::features::kFencedFrames)) {
@@ -19012,7 +19039,7 @@ diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.
<< "Fenced frames must be enabled in order to enable local " << "Fenced frames must be enabled in order to enable local "
"unpartitioned " "unpartitioned "
<< "data access. Use --" << switches::kEnableFeatures << "=" << "data access. Use --" << switches::kEnableFeatures << "="
@@ -588,12 +591,14 @@ void ResolveInvalidConfigurations() { @@ -591,12 +594,14 @@ void ResolveInvalidConfigurations() {
WebRuntimeFeatures::EnableFeatureFromString( WebRuntimeFeatures::EnableFeatureFromString(
"FencedFramesLocalUnpartitionedDataAccess", false); "FencedFramesLocalUnpartitionedDataAccess", false);
} }
@@ -19028,7 +19055,7 @@ diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.
<< "Topics cannot be enabled in this configuration. Use --" << "Topics cannot be enabled in this configuration. Use --"
<< switches::kEnableFeatures << "=" << switches::kEnableFeatures << "="
<< network::features::kBrowsingTopics.name << " in addition."; << network::features::kBrowsingTopics.name << " in addition.";
@@ -601,30 +606,23 @@ void ResolveInvalidConfigurations() { @@ -604,30 +609,23 @@ void ResolveInvalidConfigurations() {
WebRuntimeFeatures::EnableTopicsDocumentAPI(false); WebRuntimeFeatures::EnableTopicsDocumentAPI(false);
WebRuntimeFeatures::EnableTopicsImgAPI(false); WebRuntimeFeatures::EnableTopicsImgAPI(false);
} else { } else {
@@ -19065,7 +19092,7 @@ diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.
<< "AttributionReporting cannot be enabled in this " << "AttributionReporting cannot be enabled in this "
"configuration. Use --" "configuration. Use --"
<< switches::kEnableFeatures << "=" << switches::kEnableFeatures << "="
@@ -632,23 +630,25 @@ void ResolveInvalidConfigurations() { @@ -635,23 +633,25 @@ void ResolveInvalidConfigurations() {
<< " in addition."; << " in addition.";
WebRuntimeFeatures::EnableAttributionReporting(false); WebRuntimeFeatures::EnableAttributionReporting(false);
} }
@@ -19100,7 +19127,7 @@ new file mode 100644
--- /dev/null --- /dev/null
+++ b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Cromite-Branding.inc +++ b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Cromite-Branding.inc
@@ -0,0 +1 @@ @@ -0,0 +1 @@
+SET_CROMITE_FEATURE_DISABLED(kSwapNewTabAndNewTabInGroupAndroid); +// Empty file
diff --git a/tools/grit/grit/grd_reader.py b/tools/grit/grit/grd_reader.py diff --git a/tools/grit/grit/grd_reader.py b/tools/grit/grit/grd_reader.py
--- a/tools/grit/grit/grd_reader.py --- a/tools/grit/grit/grd_reader.py
+++ b/tools/grit/grit/grd_reader.py +++ b/tools/grit/grit/grd_reader.py
+16 -16
View File
@@ -62,7 +62,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/tab_activity_glue/ActivityTabWebContentsDelegateAndroid.java b/chrome/android/java/src/org/chromium/chrome/browser/app/tab_activity_glue/ActivityTabWebContentsDelegateAndroid.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/tab_activity_glue/ActivityTabWebContentsDelegateAndroid.java b/chrome/android/java/src/org/chromium/chrome/browser/app/tab_activity_glue/ActivityTabWebContentsDelegateAndroid.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/tab_activity_glue/ActivityTabWebContentsDelegateAndroid.java --- a/chrome/android/java/src/org/chromium/chrome/browser/app/tab_activity_glue/ActivityTabWebContentsDelegateAndroid.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/tab_activity_glue/ActivityTabWebContentsDelegateAndroid.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/tab_activity_glue/ActivityTabWebContentsDelegateAndroid.java
@@ -258,6 +258,14 @@ public class ActivityTabWebContentsDelegateAndroid extends TabWebContentsDelegat @@ -271,6 +271,14 @@ public class ActivityTabWebContentsDelegateAndroid extends TabWebContentsDelegat
// Skip opening a new Tab if it doesn't make sense. // Skip opening a new Tab if it doesn't make sense.
if (mTab.isClosing()) return false; if (mTab.isClosing()) return false;
@@ -77,7 +77,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/tab_activit
WindowAndroid window = mTab.getWindowAndroid(); WindowAndroid window = mTab.getWindowAndroid();
boolean openingPopup = boolean openingPopup =
window != null window != null
@@ -288,7 +296,7 @@ public class ActivityTabWebContentsDelegateAndroid extends TabWebContentsDelegat @@ -301,7 +309,7 @@ public class ActivityTabWebContentsDelegateAndroid extends TabWebContentsDelegat
mTab, mTab,
/* shouldPin= */ false, /* shouldPin= */ false,
webContents, webContents,
@@ -97,7 +97,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layo
import org.chromium.base.ObserverList; import org.chromium.base.ObserverList;
import org.chromium.base.TraceEvent; import org.chromium.base.TraceEvent;
import org.chromium.base.supplier.ObservableSupplier; import org.chromium.base.supplier.ObservableSupplier;
@@ -246,6 +247,13 @@ public class LayoutManagerImpl @@ -247,6 +248,13 @@ public class LayoutManagerImpl
!= TabLaunchType != TabLaunchType
.FROM_COLLABORATION_BACKGROUND_IN_GROUP) .FROM_COLLABORATION_BACKGROUND_IN_GROUP)
|| (!getTabModelSelector().isIncognitoSelected() && incognito); || (!getTabModelSelector().isIncognitoSelected() && incognito);
@@ -114,7 +114,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layo
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java
@@ -385,8 +385,13 @@ public class TabContextMenuItemDelegate implements ContextMenuItemDelegate { @@ -386,8 +386,13 @@ public class TabContextMenuItemDelegate implements ContextMenuItemDelegate {
public void onOpenImageInNewTab(GURL url, @Nullable Referrer referrer) { public void onOpenImageInNewTab(GURL url, @Nullable Referrer referrer) {
LoadUrlParams loadUrlParams = new LoadUrlParams(url.getSpec()); LoadUrlParams loadUrlParams = new LoadUrlParams(url.getSpec());
loadUrlParams.setReferrer(referrer); loadUrlParams.setReferrer(referrer);
@@ -133,9 +133,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordi
--- a/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 +++ b/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java
@@ -30,6 +30,7 @@ import androidx.core.view.WindowInsetsCompat; @@ -30,6 +30,7 @@ import androidx.core.view.WindowInsetsCompat;
import org.chromium.base.BuildInfo;
import org.chromium.base.Callback; import org.chromium.base.Callback;
import org.chromium.base.CallbackController; import org.chromium.base.CallbackController;
import org.chromium.base.DeviceInfo;
+import org.chromium.base.ContextUtils; +import org.chromium.base.ContextUtils;
import org.chromium.base.TraceEvent; import org.chromium.base.TraceEvent;
import org.chromium.base.lifetime.Destroyable; import org.chromium.base.lifetime.Destroyable;
@@ -355,7 +355,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/select
} }
@Retention(RetentionPolicy.SOURCE) @Retention(RetentionPolicy.SOURCE)
@@ -196,7 +243,7 @@ public class SelectActionMenuHelper { @@ -200,7 +247,7 @@ public class SelectActionMenuHelper {
} }
SelectionMenuGroup primaryAssistGroup = SelectionMenuGroup primaryAssistGroup =
new SelectionMenuGroup( new SelectionMenuGroup(
@@ -364,7 +364,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/select
View.OnClickListener clickListener = null; View.OnClickListener clickListener = null;
if (classificationResult.onClickListener != null) { if (classificationResult.onClickListener != null) {
clickListener = classificationResult.onClickListener; clickListener = classificationResult.onClickListener;
@@ -223,7 +270,7 @@ public class SelectActionMenuHelper { @@ -227,7 +274,7 @@ public class SelectActionMenuHelper {
String selectedText) { String selectedText) {
SelectionMenuGroup defaultGroup = SelectionMenuGroup defaultGroup =
new SelectionMenuGroup( new SelectionMenuGroup(
@@ -373,7 +373,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/select
List<SelectionMenuItem.Builder> menuItemBuilders = new ArrayList<>(); List<SelectionMenuItem.Builder> menuItemBuilders = new ArrayList<>();
menuItemBuilders.add(cut(delegate.canCut())); menuItemBuilders.add(cut(delegate.canCut()));
menuItemBuilders.add(copy(delegate.canCopy())); menuItemBuilders.add(copy(delegate.canCopy()));
@@ -251,7 +298,7 @@ public class SelectActionMenuHelper { @@ -255,7 +302,7 @@ public class SelectActionMenuHelper {
// menu items if there is selected text. // menu items if there is selected text.
@IdRes int groupId = selectedText.isEmpty() ? Menu.NONE : android.R.id.textAssist; @IdRes int groupId = selectedText.isEmpty() ? Menu.NONE : android.R.id.textAssist;
SelectionMenuGroup secondaryAssistItems = SelectionMenuGroup secondaryAssistItems =
@@ -382,7 +382,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/select
if (selectedText.isEmpty() && selectionActionMenuDelegate != null) { if (selectedText.isEmpty() && selectionActionMenuDelegate != null) {
List<SelectionMenuItem> additionalMenuItems = List<SelectionMenuItem> additionalMenuItems =
@@ -313,7 +360,7 @@ public class SelectActionMenuHelper { @@ -317,7 +364,7 @@ public class SelectActionMenuHelper {
SelectionMenuGroup textProcessingItems = SelectionMenuGroup textProcessingItems =
new SelectionMenuGroup( new SelectionMenuGroup(
R.id.select_action_menu_text_processing_items, R.id.select_action_menu_text_processing_items,
@@ -391,7 +391,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/select
if (isSelectionPassword || intentHandler == null) { if (isSelectionPassword || intentHandler == null) {
addAdditionalTextProcessingItems(textProcessingItems, selectionActionMenuDelegate); addAdditionalTextProcessingItems(textProcessingItems, selectionActionMenuDelegate);
return textProcessingItems; return textProcessingItems;
@@ -415,7 +462,7 @@ public class SelectActionMenuHelper { @@ -419,7 +466,7 @@ public class SelectActionMenuHelper {
.setId(R.id.select_action_menu_cut) .setId(R.id.select_action_menu_cut)
.setIconAttr(android.R.attr.actionModeCutDrawable) .setIconAttr(android.R.attr.actionModeCutDrawable)
.setAlphabeticShortcut(ItemKeyShortcuts.CUT) .setAlphabeticShortcut(ItemKeyShortcuts.CUT)
@@ -400,7 +400,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/select
.setShowAsActionFlags( .setShowAsActionFlags(
MenuItem.SHOW_AS_ACTION_ALWAYS | MenuItem.SHOW_AS_ACTION_WITH_TEXT) MenuItem.SHOW_AS_ACTION_ALWAYS | MenuItem.SHOW_AS_ACTION_WITH_TEXT)
.setIsEnabled(isEnabled) .setIsEnabled(isEnabled)
@@ -427,7 +474,7 @@ public class SelectActionMenuHelper { @@ -431,7 +478,7 @@ public class SelectActionMenuHelper {
.setId(R.id.select_action_menu_copy) .setId(R.id.select_action_menu_copy)
.setIconAttr(android.R.attr.actionModeCopyDrawable) .setIconAttr(android.R.attr.actionModeCopyDrawable)
.setAlphabeticShortcut(ItemKeyShortcuts.COPY) .setAlphabeticShortcut(ItemKeyShortcuts.COPY)
@@ -409,7 +409,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/select
.setShowAsActionFlags( .setShowAsActionFlags(
MenuItem.SHOW_AS_ACTION_ALWAYS | MenuItem.SHOW_AS_ACTION_WITH_TEXT) MenuItem.SHOW_AS_ACTION_ALWAYS | MenuItem.SHOW_AS_ACTION_WITH_TEXT)
.setIsEnabled(isEnabled) .setIsEnabled(isEnabled)
@@ -439,7 +486,7 @@ public class SelectActionMenuHelper { @@ -443,7 +490,7 @@ public class SelectActionMenuHelper {
.setId(R.id.select_action_menu_paste) .setId(R.id.select_action_menu_paste)
.setIconAttr(android.R.attr.actionModePasteDrawable) .setIconAttr(android.R.attr.actionModePasteDrawable)
.setAlphabeticShortcut(ItemKeyShortcuts.PASTE) .setAlphabeticShortcut(ItemKeyShortcuts.PASTE)
@@ -418,7 +418,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/select
.setShowAsActionFlags( .setShowAsActionFlags(
MenuItem.SHOW_AS_ACTION_ALWAYS | MenuItem.SHOW_AS_ACTION_WITH_TEXT) MenuItem.SHOW_AS_ACTION_ALWAYS | MenuItem.SHOW_AS_ACTION_WITH_TEXT)
.setIsEnabled(isEnabled) .setIsEnabled(isEnabled)
@@ -453,7 +500,7 @@ public class SelectActionMenuHelper { @@ -457,7 +504,7 @@ public class SelectActionMenuHelper {
return new SelectionMenuItem.Builder(context.getString(R.string.actionbar_share)) return new SelectionMenuItem.Builder(context.getString(R.string.actionbar_share))
.setId(R.id.select_action_menu_share) .setId(R.id.select_action_menu_share)
.setIconAttr(android.R.attr.actionModeShareDrawable) .setIconAttr(android.R.attr.actionModeShareDrawable)
@@ -427,7 +427,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/select
.setShowAsActionFlags( .setShowAsActionFlags(
MenuItem.SHOW_AS_ACTION_ALWAYS | MenuItem.SHOW_AS_ACTION_WITH_TEXT) MenuItem.SHOW_AS_ACTION_ALWAYS | MenuItem.SHOW_AS_ACTION_WITH_TEXT)
.setIsEnabled(isEnabled) .setIsEnabled(isEnabled)
@@ -465,7 +512,7 @@ public class SelectActionMenuHelper { @@ -469,7 +516,7 @@ public class SelectActionMenuHelper {
.setId(R.id.select_action_menu_select_all) .setId(R.id.select_action_menu_select_all)
.setIconAttr(android.R.attr.actionModeSelectAllDrawable) .setIconAttr(android.R.attr.actionModeSelectAllDrawable)
.setAlphabeticShortcut(ItemKeyShortcuts.SELECT_ALL) .setAlphabeticShortcut(ItemKeyShortcuts.SELECT_ALL)
@@ -436,7 +436,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/select
.setShowAsActionFlags( .setShowAsActionFlags(
MenuItem.SHOW_AS_ACTION_ALWAYS | MenuItem.SHOW_AS_ACTION_WITH_TEXT) MenuItem.SHOW_AS_ACTION_ALWAYS | MenuItem.SHOW_AS_ACTION_WITH_TEXT)
.setIsEnabled(isEnabled) .setIsEnabled(isEnabled)
@@ -477,7 +524,7 @@ public class SelectActionMenuHelper { @@ -481,7 +528,7 @@ public class SelectActionMenuHelper {
SelectionMenuItem.Builder builder = SelectionMenuItem.Builder builder =
new SelectionMenuItem.Builder(android.R.string.paste_as_plain_text) new SelectionMenuItem.Builder(android.R.string.paste_as_plain_text)
.setId(R.id.select_action_menu_paste_as_plain_text) .setId(R.id.select_action_menu_paste_as_plain_text)
@@ -445,7 +445,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/select
.setShowAsActionFlags( .setShowAsActionFlags(
MenuItem.SHOW_AS_ACTION_ALWAYS | MenuItem.SHOW_AS_ACTION_WITH_TEXT) MenuItem.SHOW_AS_ACTION_ALWAYS | MenuItem.SHOW_AS_ACTION_WITH_TEXT)
.setIsEnabled(isEnabled); .setIsEnabled(isEnabled);
@@ -497,7 +544,7 @@ public class SelectActionMenuHelper { @@ -501,7 +548,7 @@ public class SelectActionMenuHelper {
return new SelectionMenuItem.Builder(context.getString(R.string.actionbar_web_search)) return new SelectionMenuItem.Builder(context.getString(R.string.actionbar_web_search))
.setId(R.id.select_action_menu_web_search) .setId(R.id.select_action_menu_web_search)
.setIconAttr(android.R.attr.actionModeWebSearchDrawable) .setIconAttr(android.R.attr.actionModeWebSearchDrawable)
@@ -10,24 +10,25 @@ Original License: BSD-3-Clause - https://spdx.org/licenses/BSD-3-Clause.html
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
--- ---
chrome/android/java/res/layout/url_bar.xml | 1 + chrome/android/java/res/layout/url_bar.xml | 1 +
.../browser/omnibox/LocationBarMediator.java | 13 ++++++++-- .../browser/omnibox/LocationBarMediator.java | 14 ++++++++---
.../chrome/browser/omnibox/UrlBar.java | 24 +++++++++++++++++++ .../chrome/browser/omnibox/UrlBar.java | 24 +++++++++++++++++++
3 files changed, 36 insertions(+), 2 deletions(-) 3 files changed, 36 insertions(+), 3 deletions(-)
diff --git a/chrome/android/java/res/layout/url_bar.xml b/chrome/android/java/res/layout/url_bar.xml diff --git a/chrome/android/java/res/layout/url_bar.xml b/chrome/android/java/res/layout/url_bar.xml
--- a/chrome/android/java/res/layout/url_bar.xml --- a/chrome/android/java/res/layout/url_bar.xml
+++ b/chrome/android/java/res/layout/url_bar.xml +++ b/chrome/android/java/res/layout/url_bar.xml
@@ -15,5 +15,6 @@ found in the LICENSE file. @@ -16,6 +16,7 @@ found in the LICENSE file.
android:singleLine="true" android:singleLine="true"
android:imeOptions="actionGo|flagNoExtractUi|flagNoFullscreen" android:imeOptions="actionGo|flagNoExtractUi|flagNoFullscreen"
android:textAppearance="@style/TextAppearance.SearchBoxText" android:textAppearance="@style/TextAppearance.SearchBoxText"
+ android:inputType="textUri" + android:inputType="textUri"
android:hint="@string/omnibox_empty_hint" android:hint="@string/omnibox_empty_hint"
android:importantForAutofill="no"/> app:layout_constraintStart_toEndOf="@id/location_bar_status"
app:layout_constraintEnd_toStartOf="@id/url_action_container"
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 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 --- 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 +++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java
@@ -307,8 +307,17 @@ class LocationBarMediator @@ -322,8 +322,17 @@ class LocationBarMediator
if (!mUrlFocusedWithPastedText if (!mUrlFocusedWithPastedText
&& !shouldRetainOmniboxOnFocus && !shouldRetainOmniboxOnFocus
&& mLocationBarLayout.shouldClearTextOnFocus()) { && mLocationBarLayout.shouldClearTextOnFocus()) {
@@ -36,7 +37,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow
+ UrlBarData data = mLocationBarDataProvider.getUrlBarData(); + UrlBarData data = mLocationBarDataProvider.getUrlBarData();
+ @SelectionState int selectionState = SelectionState.SELECT_ALL; + @SelectionState int selectionState = SelectionState.SELECT_ALL;
+ GURL url = mLocationBarDataProvider.getUrlBarData().url; + GURL url = mLocationBarDataProvider.getUrlBarData().url;
+ if (url != null && mTemplateUrlServiceSupplier.hasValue()) { + if (url != null && mTemplateUrlServiceSupplier.get() != null) {
+ String searchParams = + String searchParams =
+ mTemplateUrlServiceSupplier.get().getSearchQueryForUrl(url); + mTemplateUrlServiceSupplier.get().getSearchQueryForUrl(url);
+ if (searchParams != null && !searchParams.isEmpty()) { + if (searchParams != null && !searchParams.isEmpty()) {
@@ -47,6 +48,14 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow
} else if (shouldRetainOmniboxOnFocus) { } else if (shouldRetainOmniboxOnFocus) {
mUrlCoordinator.setSelectAllOnFocus(true); mUrlCoordinator.setSelectAllOnFocus(true);
} }
@@ -1642,7 +1651,6 @@ class LocationBarMediator
mUrlCoordinator.setKeyboardVisibility(true, false);
}
-
// UrlBarDelegate implementation.
@Override
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBar.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBar.java diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBar.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBar.java
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBar.java --- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBar.java
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBar.java +++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBar.java
@@ -66,7 +75,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow
private boolean mPendingScroll; private boolean mPendingScroll;
private boolean mIsInCct; private boolean mIsInCct;
@@ -352,6 +354,28 @@ public class UrlBar extends AutocompleteEditText { @@ -339,6 +341,28 @@ public class UrlBar extends AutocompleteEditText {
fixupTextDirection(); fixupTextDirection();
mShouldSendTypingStartedEvent = focused; mShouldSendTypingStartedEvent = focused;
@@ -14,7 +14,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/android/java/res/xml/main_preferences.xml b/chrome/android/java/res/xml/main_preferences.xml diff --git a/chrome/android/java/res/xml/main_preferences.xml b/chrome/android/java/res/xml/main_preferences.xml
--- a/chrome/android/java/res/xml/main_preferences.xml --- a/chrome/android/java/res/xml/main_preferences.xml
+++ b/chrome/android/java/res/xml/main_preferences.xml +++ b/chrome/android/java/res/xml/main_preferences.xml
@@ -106,7 +106,8 @@ for the previous order (main_preferences_legacy). --> @@ -96,7 +96,8 @@ found in the LICENSE file.
android:fragment="org.chromium.chrome.browser.tasks.tab_management.TabsSettings" android:fragment="org.chromium.chrome.browser.tasks.tab_management.TabsSettings"
android:key="tabs" android:key="tabs"
android:order="18" android:order="18"
@@ -16,7 +16,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/third_party/blink/renderer/core/css/parser/css_supports_parser.cc b/third_party/blink/renderer/core/css/parser/css_supports_parser.cc diff --git a/third_party/blink/renderer/core/css/parser/css_supports_parser.cc b/third_party/blink/renderer/core/css/parser/css_supports_parser.cc
--- a/third_party/blink/renderer/core/css/parser/css_supports_parser.cc --- a/third_party/blink/renderer/core/css/parser/css_supports_parser.cc
+++ b/third_party/blink/renderer/core/css/parser/css_supports_parser.cc +++ b/third_party/blink/renderer/core/css/parser/css_supports_parser.cc
@@ -397,7 +397,7 @@ bool CSSSupportsParser::ConsumeBlinkFeatureFn(CSSParserTokenStream& stream) { @@ -400,7 +400,7 @@ bool CSSSupportsParser::ConsumeBlinkFeatureFn(CSSParserTokenStream& stream) {
feature_name.Value().Utf8()) && feature_name.Value().Utf8()) &&
guard.Release()) { guard.Release()) {
stream.ConsumeWhitespace(); stream.ConsumeWhitespace();
@@ -15,7 +15,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 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 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -1288,7 +1288,7 @@ @@ -1316,7 +1316,7 @@
}, },
{ {
name: "CSSDynamicRangeLimit", name: "CSSDynamicRangeLimit",
+3 -3
View File
@@ -13,7 +13,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn
@@ -8414,6 +8414,12 @@ static_library("browser") { @@ -8468,6 +8468,12 @@ static_library("browser") {
deps += [ "//components/segmentation_platform/internal:optimization_guide_segmentation_handler" ] deps += [ "//components/segmentation_platform/internal:optimization_guide_segmentation_handler" ]
} }
@@ -26,7 +26,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
if (enable_compose) { if (enable_compose) {
sources += [ sources += [
"compose/chrome_compose_client.cc", "compose/chrome_compose_client.cc",
@@ -8429,7 +8435,6 @@ static_library("browser") { @@ -8483,7 +8489,6 @@ static_library("browser") {
] ]
deps += [ deps += [
@@ -34,7 +34,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
"//chrome/common/compose", "//chrome/common/compose",
"//chrome/common/compose:mojo_bindings", "//chrome/common/compose:mojo_bindings",
"//components/autofill/content/browser", "//components/autofill/content/browser",
@@ -8888,7 +8893,7 @@ source_set("font_pref") { @@ -8943,7 +8948,7 @@ source_set("font_pref") {
deps = [ "//chrome/common" ] deps = [ "//chrome/common" ]
} }
@@ -10,7 +10,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 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 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -1031,12 +1031,14 @@ @@ -1065,12 +1065,14 @@
} }
}, },
{ {
@@ -10,7 +10,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/chrome/browser/device_api/device_service_impl.cc b/chrome/browser/device_api/device_service_impl.cc diff --git a/chrome/browser/device_api/device_service_impl.cc b/chrome/browser/device_api/device_service_impl.cc
--- a/chrome/browser/device_api/device_service_impl.cc --- a/chrome/browser/device_api/device_service_impl.cc
+++ b/chrome/browser/device_api/device_service_impl.cc +++ b/chrome/browser/device_api/device_service_impl.cc
@@ -166,6 +166,7 @@ bool IsPermissionsPolicyFeatureEnabled() { @@ -154,6 +154,7 @@ bool IsPermissionsPolicyFeatureEnabled() {
bool IsTrustedContext(content::RenderFrameHost& host, bool IsTrustedContext(content::RenderFrameHost& host,
const url::Origin& origin) { const url::Origin& origin) {
@@ -18,7 +18,7 @@ diff --git a/chrome/browser/device_api/device_service_impl.cc b/chrome/browser/d
// Do not create the service for the incognito mode. // Do not create the service for the incognito mode.
if (GetProfile(host)->IsIncognitoProfile()) { if (GetProfile(host)->IsIncognitoProfile()) {
return false; return false;
@@ -361,6 +362,10 @@ void DeviceServiceImpl::GetAnnotatedLocation( @@ -349,6 +350,10 @@ void DeviceServiceImpl::GetAnnotatedLocation(
void DeviceServiceImpl::GetDeviceAttribute( void DeviceServiceImpl::GetDeviceAttribute(
void (DeviceAttributeApi::*method)(DeviceAttributeCallback callback), void (DeviceAttributeApi::*method)(DeviceAttributeCallback callback),
DeviceAttributeCallback callback) { DeviceAttributeCallback callback) {
+1 -1
View File
@@ -39,7 +39,7 @@ new file mode 100644
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 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 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -2093,7 +2093,7 @@ @@ -2118,7 +2118,7 @@
{ {
name: "FedCm", name: "FedCm",
public: true, public: true,
+13 -13
View File
@@ -17,7 +17,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/base/android/java/src/org/chromium/base/PackageUtils.java b/base/android/java/src/org/chromium/base/PackageUtils.java diff --git a/base/android/java/src/org/chromium/base/PackageUtils.java b/base/android/java/src/org/chromium/base/PackageUtils.java
--- a/base/android/java/src/org/chromium/base/PackageUtils.java --- a/base/android/java/src/org/chromium/base/PackageUtils.java
+++ b/base/android/java/src/org/chromium/base/PackageUtils.java +++ b/base/android/java/src/org/chromium/base/PackageUtils.java
@@ -165,6 +165,7 @@ public class PackageUtils { @@ -185,6 +185,7 @@ public class PackageUtils {
* @return Package name of assistant app, or null if unable to get. * @return Package name of assistant app, or null if unable to get.
*/ */
public static @Nullable String getDefaultAssistantPackageName(Context context) { public static @Nullable String getDefaultAssistantPackageName(Context context) {
@@ -28,7 +28,7 @@ diff --git a/base/android/java/src/org/chromium/base/PackageUtils.java b/base/an
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java b/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java b/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java --- a/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java
@@ -47,7 +47,6 @@ import org.chromium.chrome.browser.document.ChromeLauncherActivity; @@ -49,7 +49,6 @@ import org.chromium.chrome.browser.document.ChromeLauncherActivity;
import org.chromium.chrome.browser.externalnav.IntentWithRequestMetadataHandler; import org.chromium.chrome.browser.externalnav.IntentWithRequestMetadataHandler;
import org.chromium.chrome.browser.externalnav.IntentWithRequestMetadataHandler.RequestMetadata; import org.chromium.chrome.browser.externalnav.IntentWithRequestMetadataHandler.RequestMetadata;
import org.chromium.chrome.browser.flags.ChromeFeatureList; import org.chromium.chrome.browser.flags.ChromeFeatureList;
@@ -36,17 +36,17 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.j
import org.chromium.chrome.browser.omnibox.suggestions.AutocompleteCoordinator; import org.chromium.chrome.browser.omnibox.suggestions.AutocompleteCoordinator;
import org.chromium.chrome.browser.pdf.PdfUtils; import org.chromium.chrome.browser.pdf.PdfUtils;
import org.chromium.chrome.browser.profiles.Profile; import org.chromium.chrome.browser.profiles.Profile;
@@ -293,9 +292,6 @@ public class IntentHandler { @@ -297,9 +296,6 @@ public class IntentHandler {
public static final String EXTRA_CCT_EARLY_NAV = "org.chromium.chrome.browser.cct_early_nav"; public static final String EXTRA_CCT_EARLY_NAV = "org.chromium.chrome.browser.cct_early_nav";
- /** The package name for the Google Search App. */ - /** The package name for the Google Search App. */
- public static final String PACKAGE_GSA = GSAUtils.GSA_PACKAGE_NAME; - public static final String PACKAGE_GSA = GSAUtils.GSA_PACKAGE_NAME;
- -
private static Pair<Integer, String> sPendingReferrer; private static @Nullable Pair<Integer, String> sPendingReferrer;
private static int sReferrerId; private static int sReferrerId;
private static String sPendingIncognitoUrl; private static @Nullable String sPendingIncognitoUrl;
@@ -588,8 +584,6 @@ public class IntentHandler { @@ -592,8 +588,6 @@ public class IntentHandler {
return ExternalAppId.LINE; return ExternalAppId.LINE;
} else if (packageName.equals(PACKAGE_WHATSAPP)) { } else if (packageName.equals(PACKAGE_WHATSAPP)) {
return ExternalAppId.WHATSAPP; return ExternalAppId.WHATSAPP;
@@ -58,15 +58,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.j
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils.java --- a/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils.java
@@ -9,7 +9,6 @@ import android.content.Context; @@ -10,7 +10,6 @@ import org.chromium.base.ResettersForTesting;
import org.chromium.base.ResettersForTesting; import org.chromium.build.annotations.NullMarked;
import org.chromium.chrome.browser.IntentHandler; import org.chromium.chrome.browser.IntentHandler;
import org.chromium.chrome.browser.flags.ChromeFeatureList; import org.chromium.chrome.browser.flags.ChromeFeatureList;
-import org.chromium.chrome.browser.gsa.GSAUtils; -import org.chromium.chrome.browser.gsa.GSAUtils;
import org.chromium.components.externalauth.ExternalAuthUtils; import org.chromium.components.externalauth.ExternalAuthUtils;
/** This class provides utilities for intenting into Google Lens. */ /** This class provides utilities for intenting into Google Lens. */
@@ -48,12 +47,7 @@ public class LensUtils { @@ -50,12 +49,7 @@ public class LensUtils {
if (context == null) { if (context == null) {
return ""; return "";
} }
@@ -79,7 +79,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils
} }
} }
@@ -76,15 +70,11 @@ public class LensUtils { @@ -78,15 +72,11 @@ public class LensUtils {
* @return Whether the package is valid. * @return Whether the package is valid.
*/ */
public static boolean isValidAgsaPackage() { public static boolean isValidAgsaPackage() {
@@ -186,7 +186,7 @@ diff --git a/chrome/browser/ui/android/google_bottom_bar/java/src/org/chromium/c
import static org.chromium.chrome.browser.ui.google_bottom_bar.GoogleBottomBarLogger.GoogleBottomBarButtonEvent.SEARCHBOX_HOME; import static org.chromium.chrome.browser.ui.google_bottom_bar.GoogleBottomBarLogger.GoogleBottomBarButtonEvent.SEARCHBOX_HOME;
import static org.chromium.chrome.browser.ui.google_bottom_bar.GoogleBottomBarLogger.GoogleBottomBarButtonEvent.SEARCHBOX_LENS; import static org.chromium.chrome.browser.ui.google_bottom_bar.GoogleBottomBarLogger.GoogleBottomBarButtonEvent.SEARCHBOX_LENS;
import static org.chromium.chrome.browser.ui.google_bottom_bar.GoogleBottomBarLogger.GoogleBottomBarButtonEvent.SEARCHBOX_SEARCH; import static org.chromium.chrome.browser.ui.google_bottom_bar.GoogleBottomBarLogger.GoogleBottomBarButtonEvent.SEARCHBOX_SEARCH;
@@ -105,11 +102,6 @@ class GoogleBottomBarActionsHandler { @@ -106,11 +103,6 @@ class GoogleBottomBarActionsHandler {
} }
void onSearchboxMicTap() { void onSearchboxMicTap() {
@@ -198,7 +198,7 @@ diff --git a/chrome/browser/ui/android/google_bottom_bar/java/src/org/chromium/c
} }
void onSearchboxLensTap(View buttonView) { void onSearchboxLensTap(View buttonView) {
@@ -148,21 +140,13 @@ class GoogleBottomBarActionsHandler { @@ -149,21 +141,13 @@ class GoogleBottomBarActionsHandler {
} }
private void openGoogleAppSearch() { private void openGoogleAppSearch() {
@@ -221,7 +221,7 @@ diff --git a/chrome/browser/ui/android/google_bottom_bar/java/src/org/chromium/c
intent.putExtra(EXTRA_IS_LAUNCHED_FROM_CHROME_SEARCH_ENTRYPOINT, true); intent.putExtra(EXTRA_IS_LAUNCHED_FROM_CHROME_SEARCH_ENTRYPOINT, true);
if (PackageManagerUtils.canResolveActivity(intent)) { if (PackageManagerUtils.canResolveActivity(intent)) {
@@ -274,6 +258,7 @@ class GoogleBottomBarActionsHandler { @@ -275,6 +259,7 @@ class GoogleBottomBarActionsHandler {
} }
private void sendPendingIntentWithUrl(PendingIntent pendingIntent) { private void sendPendingIntentWithUrl(PendingIntent pendingIntent) {
@@ -58,7 +58,7 @@ new file mode 100644
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 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 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -2795,9 +2795,8 @@ @@ -2844,9 +2844,8 @@
status: "stable", status: "stable",
}, },
{ {
@@ -10,7 +10,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/paint_preview/StartupPaintPreviewHelper.java b/chrome/android/java/src/org/chromium/chrome/browser/paint_preview/StartupPaintPreviewHelper.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/paint_preview/StartupPaintPreviewHelper.java b/chrome/android/java/src/org/chromium/chrome/browser/paint_preview/StartupPaintPreviewHelper.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/paint_preview/StartupPaintPreviewHelper.java --- a/chrome/android/java/src/org/chromium/chrome/browser/paint_preview/StartupPaintPreviewHelper.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/paint_preview/StartupPaintPreviewHelper.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/paint_preview/StartupPaintPreviewHelper.java
@@ -118,7 +118,7 @@ public class StartupPaintPreviewHelper implements Destroyable { @@ -119,7 +119,7 @@ public class StartupPaintPreviewHelper implements Destroyable {
/** Enables Paint Preview show attempt on restoration of a tab. */ /** Enables Paint Preview show attempt on restoration of a tab. */
public static void enableShowOnRestore() { public static void enableShowOnRestore() {
+2 -2
View File
@@ -13,7 +13,7 @@ Real-box is search box in ntp
diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc
--- a/chrome/browser/prefs/browser_prefs.cc --- a/chrome/browser/prefs/browser_prefs.cc
+++ b/chrome/browser/prefs/browser_prefs.cc +++ b/chrome/browser/prefs/browser_prefs.cc
@@ -2272,7 +2272,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry, @@ -2359,7 +2359,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
registry->RegisterBooleanPref( registry->RegisterBooleanPref(
prefs::kLensRegionSearchEnabled, true, prefs::kLensRegionSearchEnabled, true,
user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
@@ -46,7 +46,7 @@ diff --git a/chrome/browser/resources/new_tab_page/app.html b/chrome/browser/res
diff --git a/chrome/browser/ui/webui/searchbox/searchbox_handler.cc b/chrome/browser/ui/webui/searchbox/searchbox_handler.cc diff --git a/chrome/browser/ui/webui/searchbox/searchbox_handler.cc b/chrome/browser/ui/webui/searchbox/searchbox_handler.cc
--- a/chrome/browser/ui/webui/searchbox/searchbox_handler.cc --- a/chrome/browser/ui/webui/searchbox/searchbox_handler.cc
+++ b/chrome/browser/ui/webui/searchbox/searchbox_handler.cc +++ b/chrome/browser/ui/webui/searchbox/searchbox_handler.cc
@@ -452,6 +452,7 @@ void SearchboxHandler::SetupWebUIDataSource(content::WebUIDataSource* source, @@ -463,6 +463,7 @@ void SearchboxHandler::SetupWebUIDataSource(content::WebUIDataSource* source,
Profile* profile, Profile* profile,
bool enable_voice_search, bool enable_voice_search,
bool enable_lens_search) { bool enable_lens_search) {
+6 -6
View File
@@ -90,7 +90,7 @@ diff --git a/net/http/http_network_session.cc b/net/http/http_network_session.cc
diff --git a/net/quic/quic_session_pool.cc b/net/quic/quic_session_pool.cc diff --git a/net/quic/quic_session_pool.cc b/net/quic/quic_session_pool.cc
--- a/net/quic/quic_session_pool.cc --- a/net/quic/quic_session_pool.cc
+++ b/net/quic/quic_session_pool.cc +++ b/net/quic/quic_session_pool.cc
@@ -86,6 +86,7 @@ @@ -87,6 +87,7 @@
#include "net/third_party/quiche/src/quiche/quic/platform/api/quic_flags.h" #include "net/third_party/quiche/src/quiche/quic/platform/api/quic_flags.h"
#include "net/traffic_annotation/network_traffic_annotation.h" #include "net/traffic_annotation/network_traffic_annotation.h"
#include "third_party/boringssl/src/include/openssl/aead.h" #include "third_party/boringssl/src/include/openssl/aead.h"
@@ -98,7 +98,7 @@ diff --git a/net/quic/quic_session_pool.cc b/net/quic/quic_session_pool.cc
#include "url/gurl.h" #include "url/gurl.h"
#include "url/scheme_host_port.h" #include "url/scheme_host_port.h"
#include "url/url_constants.h" #include "url/url_constants.h"
@@ -372,6 +373,38 @@ void LogSessionKeyMismatch(QuicSessionKeyPartialMatchResult result, @@ -377,6 +378,38 @@ base::TimeDelta GetAdditionalDelayForMainJob() {
} // namespace } // namespace
@@ -137,7 +137,7 @@ diff --git a/net/quic/quic_session_pool.cc b/net/quic/quic_session_pool.cc
QuicSessionRequest::QuicSessionRequest(QuicSessionPool* pool) : pool_(pool) {} QuicSessionRequest::QuicSessionRequest(QuicSessionPool* pool) : pool_(pool) {}
QuicSessionRequest::~QuicSessionRequest() { QuicSessionRequest::~QuicSessionRequest() {
@@ -2373,7 +2406,7 @@ QuicSessionPool::CreateCryptoConfigHandle(QuicCryptoClientConfigKey key) { @@ -2387,7 +2420,7 @@ QuicSessionPool::CreateCryptoConfigHandle(QuicCryptoClientConfigKey key) {
cert_verifier_, transport_security_state_, sct_auditing_delegate_, cert_verifier_, transport_security_state_, sct_auditing_delegate_,
HostsFromOrigins(params_.origins_to_force_quic_on), HostsFromOrigins(params_.origins_to_force_quic_on),
key.network_anonymization_key), key.network_anonymization_key),
@@ -183,7 +183,7 @@ diff --git a/net/socket/ssl_client_socket_impl.cc b/net/socket/ssl_client_socket
Disconnect(); Disconnect();
} }
@@ -700,6 +726,8 @@ int SSLClientSocketImpl::Init() { @@ -703,6 +729,8 @@ int SSLClientSocketImpl::Init() {
} }
if (session) if (session)
SSL_set_session(ssl_.get(), session.get()); SSL_set_session(ssl_.get(), session.get());
@@ -192,7 +192,7 @@ diff --git a/net/socket/ssl_client_socket_impl.cc b/net/socket/ssl_client_socket
} }
transport_adapter_ = std::make_unique<SocketBIOAdapter>( transport_adapter_ = std::make_unique<SocketBIOAdapter>(
@@ -985,6 +1013,35 @@ int SSLClientSocketImpl::DoHandshakeComplete(int result) { @@ -972,6 +1000,35 @@ int SSLClientSocketImpl::DoHandshakeComplete(int result) {
: SSLHandshakeDetails::kTLS13Full; : SSLHandshakeDetails::kTLS13Full;
} }
} }
@@ -228,7 +228,7 @@ diff --git a/net/socket/ssl_client_socket_impl.cc b/net/socket/ssl_client_socket
UMA_HISTOGRAM_ENUMERATION("Net.SSLHandshakeDetails", details); UMA_HISTOGRAM_ENUMERATION("Net.SSLHandshakeDetails", details);
// Measure TLS connections that implement the renegotiation_info and EMS // Measure TLS connections that implement the renegotiation_info and EMS
@@ -1624,6 +1681,8 @@ bool SSLClientSocketImpl::IsRenegotiationAllowed() const { @@ -1611,6 +1668,8 @@ bool SSLClientSocketImpl::IsRenegotiationAllowed() const {
} }
bool SSLClientSocketImpl::IsCachingEnabled() const { bool SSLClientSocketImpl::IsCachingEnabled() const {
@@ -21,7 +21,7 @@ new file mode 100644
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 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 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -5317,8 +5317,7 @@ @@ -5335,8 +5335,7 @@
status: "stable", status: "stable",
}, },
{ {
+4 -4
View File
@@ -12,7 +12,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.cc diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.cc
--- a/content/child/runtime_features.cc --- a/content/child/runtime_features.cc
+++ b/content/child/runtime_features.cc +++ b/content/child/runtime_features.cc
@@ -547,6 +547,8 @@ void SetCustomizedRuntimeFeaturesFromCombinedArgs( @@ -550,6 +550,8 @@ void SetCustomizedRuntimeFeaturesFromCombinedArgs(
WebRuntimeFeatures::EnableRemotePlayback(false); WebRuntimeFeatures::EnableRemotePlayback(false);
@@ -24,7 +24,7 @@ diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.
diff --git a/gpu/config/gpu_finch_features.cc b/gpu/config/gpu_finch_features.cc diff --git a/gpu/config/gpu_finch_features.cc b/gpu/config/gpu_finch_features.cc
--- a/gpu/config/gpu_finch_features.cc --- a/gpu/config/gpu_finch_features.cc
+++ b/gpu/config/gpu_finch_features.cc +++ b/gpu/config/gpu_finch_features.cc
@@ -235,7 +235,7 @@ BASE_FEATURE(kEnableDrDc, @@ -199,7 +199,7 @@ BASE_FEATURE(EnableDrDc,
// enabled by default on supported platforms. // enabled by default on supported platforms.
#if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS) || \ #if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS) || \
BUILDFLAG(IS_ANDROID) BUILDFLAG(IS_ANDROID)
@@ -36,7 +36,7 @@ diff --git a/gpu/config/gpu_finch_features.cc b/gpu/config/gpu_finch_features.cc
diff --git a/third_party/blink/renderer/modules/webgpu/gpu.cc b/third_party/blink/renderer/modules/webgpu/gpu.cc diff --git a/third_party/blink/renderer/modules/webgpu/gpu.cc b/third_party/blink/renderer/modules/webgpu/gpu.cc
--- a/third_party/blink/renderer/modules/webgpu/gpu.cc --- a/third_party/blink/renderer/modules/webgpu/gpu.cc
+++ b/third_party/blink/renderer/modules/webgpu/gpu.cc +++ b/third_party/blink/renderer/modules/webgpu/gpu.cc
@@ -159,6 +159,8 @@ GPU::GPU(NavigatorBase& navigator) @@ -161,6 +161,8 @@ GPU::GPU(NavigatorBase& navigator)
GPU::~GPU() = default; GPU::~GPU() = default;
WGSLLanguageFeatures* GPU::wgslLanguageFeatures() const { WGSLLanguageFeatures* GPU::wgslLanguageFeatures() const {
@@ -45,7 +45,7 @@ diff --git a/third_party/blink/renderer/modules/webgpu/gpu.cc b/third_party/blin
return wgsl_language_features_.Get(); return wgsl_language_features_.Get();
} }
@@ -436,6 +438,7 @@ ScriptPromise<IDLNullable<GPUAdapter>> GPU::requestAdapter( @@ -444,6 +446,7 @@ ScriptPromise<IDLNullable<GPUAdapter>> GPU::requestAdapter(
"WebGPU is experimental on this platform. See " "WebGPU is experimental on this platform. See "
"https://github.com/gpuweb/gpuweb/wiki/" "https://github.com/gpuweb/gpuweb/wiki/"
"Implementation-Status#implementation-status")); "Implementation-Status#implementation-status"));
+236 -101
View File
@@ -16,6 +16,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../permissions/chrome_permissions_client.cc | 2 -- .../permissions/chrome_permissions_client.cc | 2 --
.../passage_embedder_delegate.cc | 2 ++ .../passage_embedder_delegate.cc | 2 ++
.../prediction_model_handler_provider.cc | 9 ++++++--- .../prediction_model_handler_provider.cc | 9 ++++++---
.../prediction_model_handler_provider.h | 2 ++
.../predictors/autocomplete_action_predictor.cc | 2 ++ .../predictors/autocomplete_action_predictor.cc | 2 ++
.../predictors/loading_predictor_config.cc | 4 ++-- .../predictors/loading_predictor_config.cc | 4 ++--
chrome/browser/predictors/predictors_features.cc | 3 +-- chrome/browser/predictors/predictors_features.cc | 3 +--
@@ -24,6 +25,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../chrome_browser_main_extra_parts_profiles.cc | 1 - .../chrome_browser_main_extra_parts_profiles.cc | 1 -
chrome/browser/safe_browsing/BUILD.gn | 1 - chrome/browser/safe_browsing/BUILD.gn | 1 -
...fication_content_detection_service_factory.cc | 6 ++++++ ...fication_content_detection_service_factory.cc | 6 ++++++
.../preloading/AndroidPrerenderManager.java | 1 +
.../ui/autofill/chrome_autofill_client.cc | 15 --------------- .../ui/autofill/chrome_autofill_client.cc | 15 ---------------
chrome/browser/ui/tab_helpers.cc | 1 - chrome/browser/ui/tab_helpers.cc | 1 -
.../autofill_ml_internals_page_handler.cc | 2 ++ .../autofill_ml_internals_page_handler.cc | 2 ++
@@ -36,10 +38,12 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
chrome/utility/BUILD.gn | 2 +- chrome/utility/BUILD.gn | 2 +-
chrome/utility/services.cc | 8 -------- chrome/utility/services.cc | 8 --------
components/BUILD.gn | 2 +- components/BUILD.gn | 2 +-
.../autofill_optimization_guide.cc | 5 +++-- .../core/browser/foundations/autofill_manager.cc | 2 ++
.../core/browser/foundations/autofill_manager.h | 3 +++
.../autofill_optimization_guide_decider.cc | 5 +++--
.../field_classification_model_handler.cc | 12 ++++++++---- .../field_classification_model_handler.cc | 12 ++++++++----
.../field_classification_model_handler.h | 10 ++++++---- .../field_classification_model_handler.h | 10 ++++++++--
.../omnibox/browser/aim_eligibility_service.cc | 1 + .../browser/aim_eligibility_service_features.cc | 1 +
.../omnibox/browser/autocomplete_controller.cc | 4 ++++ .../omnibox/browser/autocomplete_controller.cc | 4 ++++
.../omnibox/browser/base_search_provider.cc | 4 ++-- .../omnibox/browser/base_search_provider.cc | 4 ++--
.../prediction_model_download_manager.cc | 6 ++++-- .../prediction_model_download_manager.cc | 6 ++++--
@@ -59,13 +63,16 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../features_cc/Disable-all-predictors-code.inc | 1 + .../features_cc/Disable-all-predictors-code.inc | 1 +
.../features_cc/Disable-all-predictors-code.inc | 1 + .../features_cc/Disable-all-predictors-code.inc | 1 +
.../features_cc/Disable-all-predictors-code.inc | 2 ++ .../features_cc/Disable-all-predictors-code.inc | 2 ++
services/on_device_model/ml/BUILD.gn | 2 +-
services/on_device_model/ml/ts_model.cc | 4 ++--
services/on_device_model/safety/BUILD.gn | 2 +-
services/webnn/BUILD.gn | 2 +- services/webnn/BUILD.gn | 2 +-
services/webnn/features.gni | 2 +- services/webnn/features.gni | 2 +-
services/webnn/webnn_context_provider_impl.cc | 13 +------------ services/webnn/webnn_context_provider_impl.cc | 16 +---------------
.../core/html/parser/html_document_parser.cc | 1 + .../core/html/parser/html_document_parser.cc | 1 +
.../document_speculation_rules.cc | 1 + .../document_speculation_rules.cc | 1 +
.../platform/runtime_enabled_features.json5 | 2 +- .../platform/runtime_enabled_features.json5 | 2 +-
60 files changed, 151 insertions(+), 88 deletions(-) 67 files changed, 165 insertions(+), 93 deletions(-)
create mode 100644 cromite_flags/chrome/browser/browser_features_cc/Disable-all-predictors-code.inc create mode 100644 cromite_flags/chrome/browser/browser_features_cc/Disable-all-predictors-code.inc
create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Disable-all-predictors-code.inc create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Disable-all-predictors-code.inc
create mode 100644 cromite_flags/chrome/common/chrome_features_cc/Disable-all-predictors-code.inc create mode 100644 cromite_flags/chrome/common/chrome_features_cc/Disable-all-predictors-code.inc
@@ -77,7 +84,7 @@ 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 diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn
@@ -797,8 +797,6 @@ static_library("browser") { @@ -793,8 +793,6 @@ static_library("browser") {
"navigation_predictor/navigation_predictor_keyed_service_factory.h", "navigation_predictor/navigation_predictor_keyed_service_factory.h",
"navigation_predictor/navigation_predictor_metrics_document_data.cc", "navigation_predictor/navigation_predictor_metrics_document_data.cc",
"navigation_predictor/navigation_predictor_metrics_document_data.h", "navigation_predictor/navigation_predictor_metrics_document_data.h",
@@ -86,7 +93,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
"navigation_predictor/preloading_model_keyed_service.cc", "navigation_predictor/preloading_model_keyed_service.cc",
"navigation_predictor/preloading_model_keyed_service.h", "navigation_predictor/preloading_model_keyed_service.h",
"navigation_predictor/preloading_model_keyed_service_factory.cc", "navigation_predictor/preloading_model_keyed_service_factory.cc",
@@ -2400,7 +2398,7 @@ static_library("browser") { @@ -2381,7 +2379,7 @@ static_library("browser") {
"//components/resources", "//components/resources",
"//components/safe_browsing/content/browser", "//components/safe_browsing/content/browser",
"//components/safe_browsing/content/browser:safe_browsing_service", "//components/safe_browsing/content/browser:safe_browsing_service",
@@ -210,7 +217,7 @@ diff --git a/chrome/browser/optimization_guide/model_validator_keyed_service.cc
diff --git a/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc b/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc diff --git a/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc b/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc
--- a/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc --- a/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc
+++ b/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc +++ b/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc
@@ -410,7 +410,6 @@ void OptimizationGuideKeyedService::RemoveObserverForOptimizationTargetModel( @@ -409,7 +409,6 @@ void OptimizationGuideKeyedService::RemoveObserverForOptimizationTargetModel(
void OptimizationGuideKeyedService::RegisterOptimizationTypes( void OptimizationGuideKeyedService::RegisterOptimizationTypes(
const std::vector<optimization_guide::proto::OptimizationType>& const std::vector<optimization_guide::proto::OptimizationType>&
optimization_types) { optimization_types) {
@@ -233,7 +240,7 @@ diff --git a/chrome/browser/permissions/BUILD.gn b/chrome/browser/permissions/BU
diff --git a/chrome/browser/permissions/chrome_permissions_client.cc b/chrome/browser/permissions/chrome_permissions_client.cc diff --git a/chrome/browser/permissions/chrome_permissions_client.cc b/chrome/browser/permissions/chrome_permissions_client.cc
--- a/chrome/browser/permissions/chrome_permissions_client.cc --- a/chrome/browser/permissions/chrome_permissions_client.cc
+++ b/chrome/browser/permissions/chrome_permissions_client.cc +++ b/chrome/browser/permissions/chrome_permissions_client.cc
@@ -475,8 +475,6 @@ ChromePermissionsClient::CreatePermissionUiSelectors( @@ -474,8 +474,6 @@ ChromePermissionsClient::CreatePermissionUiSelectors(
#endif #endif
selectors.emplace_back(std::make_unique<PrefBasedQuietPermissionUiSelector>( selectors.emplace_back(std::make_unique<PrefBasedQuietPermissionUiSelector>(
Profile::FromBrowserContext(browser_context))); Profile::FromBrowserContext(browser_context)));
@@ -245,7 +252,7 @@ diff --git a/chrome/browser/permissions/chrome_permissions_client.cc b/chrome/br
diff --git a/chrome/browser/permissions/prediction_service/passage_embedder_delegate.cc b/chrome/browser/permissions/prediction_service/passage_embedder_delegate.cc diff --git a/chrome/browser/permissions/prediction_service/passage_embedder_delegate.cc b/chrome/browser/permissions/prediction_service/passage_embedder_delegate.cc
--- a/chrome/browser/permissions/prediction_service/passage_embedder_delegate.cc --- a/chrome/browser/permissions/prediction_service/passage_embedder_delegate.cc
+++ b/chrome/browser/permissions/prediction_service/passage_embedder_delegate.cc +++ b/chrome/browser/permissions/prediction_service/passage_embedder_delegate.cc
@@ -17,11 +17,13 @@ PassageEmbedderDelegate::PassageEmbedderDelegate(Profile* profile) @@ -17,6 +17,7 @@ PassageEmbedderDelegate::PassageEmbedderDelegate(Profile* profile)
: profile_(profile) {} : profile_(profile) {}
Embedder* PassageEmbedderDelegate::get_passage_embedder() { Embedder* PassageEmbedderDelegate::get_passage_embedder() {
@@ -253,8 +260,10 @@ diff --git a/chrome/browser/permissions/prediction_service/passage_embedder_dele
if (auto* prediction_model_handler_provider = if (auto* prediction_model_handler_provider =
PredictionModelHandlerProviderFactory::GetForBrowserContext( PredictionModelHandlerProviderFactory::GetForBrowserContext(
profile_)) { profile_)) {
@@ -30,6 +31,7 @@ Embedder* PassageEmbedderDelegate::get_passage_embedder() {
return prediction_model_handler_provider->GetPassageEmbedder(); return prediction_model_handler_provider->GetPassageEmbedder();
} }
PermissionUmaUtil::RecordPassageEmbedderMetadataValid(false);
+#endif +#endif
return nullptr; return nullptr;
} }
@@ -276,18 +285,33 @@ diff --git a/chrome/browser/permissions/prediction_service/prediction_model_hand
#include "components/permissions/prediction_service/prediction_model_handler.h" #include "components/permissions/prediction_service/prediction_model_handler.h"
#endif // BUILDFLAG(BUILD_WITH_TFLITE_LIB) #endif // BUILDFLAG(BUILD_WITH_TFLITE_LIB)
@@ -26,7 +26,10 @@ namespace permissions { @@ -27,7 +27,10 @@ PredictionModelHandlerProvider::PredictionModelHandlerProvider(
PredictionModelHandlerProvider::PredictionModelHandlerProvider(
OptimizationGuideKeyedService* optimization_guide, OptimizationGuideKeyedService* optimization_guide,
passage_embeddings::EmbedderMetadataProvider* embedder_metadata_provider,
passage_embeddings::Embedder* passage_embedder) passage_embeddings::Embedder* passage_embedder)
- : passage_embedder_(passage_embedder) { - : passage_embedder_(passage_embedder) {
+#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB)
+ : passage_embedder_(passage_embedder) + : passage_embedder_(passage_embedder)
+#endif +#endif
+ { + {
VLOG(1) << "[PermissionsAI] PredictionModelHandlerProvider ctor"; VLOG(1) << "[PermissionsAI] PredictionModelHandlerProvider ctor "
// We set up model handlers if necessary in order of preference: "passage_embedder available: "
// Aiv4, Aiv3, Aiv1 << (passage_embedder ? "true" : "false");
diff --git a/chrome/browser/permissions/prediction_service/prediction_model_handler_provider.h b/chrome/browser/permissions/prediction_service/prediction_model_handler_provider.h
--- a/chrome/browser/permissions/prediction_service/prediction_model_handler_provider.h
+++ b/chrome/browser/permissions/prediction_service/prediction_model_handler_provider.h
@@ -59,9 +59,11 @@ class PredictionModelHandlerProvider
#endif // BUILDFLAG(BUILD_WITH_TFLITE_LIB)
private:
+#if BUILDFLAG(BUILD_WITH_TFLITE_LIB)
// EmbedderMetadataObserver:
void EmbedderMetadataUpdated(
passage_embeddings::EmbedderMetadata metadata) override;
+#endif
std::unique_ptr<PermissionsAiv1Handler> permissions_aiv1_handler_;
#if BUILDFLAG(BUILD_WITH_TFLITE_LIB)
diff --git a/chrome/browser/predictors/autocomplete_action_predictor.cc b/chrome/browser/predictors/autocomplete_action_predictor.cc diff --git a/chrome/browser/predictors/autocomplete_action_predictor.cc b/chrome/browser/predictors/autocomplete_action_predictor.cc
--- a/chrome/browser/predictors/autocomplete_action_predictor.cc --- a/chrome/browser/predictors/autocomplete_action_predictor.cc
+++ b/chrome/browser/predictors/autocomplete_action_predictor.cc +++ b/chrome/browser/predictors/autocomplete_action_predictor.cc
@@ -352,7 +376,7 @@ diff --git a/chrome/browser/preloading/prefetch/search_prefetch/search_prefetch_
diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
--- a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc --- a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
+++ b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc +++ b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
@@ -1196,7 +1196,6 @@ void ChromeBrowserMainExtraPartsProfiles:: @@ -1201,7 +1201,6 @@ void ChromeBrowserMainExtraPartsProfiles::
base::FeatureList::IsEnabled( base::FeatureList::IsEnabled(
permissions::features::kPermissionOnDeviceGeolocationPredictions) || permissions::features::kPermissionOnDeviceGeolocationPredictions) ||
base::FeatureList::IsEnabled(permissions::features::kPermissionsAIv1)) { base::FeatureList::IsEnabled(permissions::features::kPermissionsAIv1)) {
@@ -363,14 +387,14 @@ diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
diff --git a/chrome/browser/safe_browsing/BUILD.gn b/chrome/browser/safe_browsing/BUILD.gn diff --git a/chrome/browser/safe_browsing/BUILD.gn b/chrome/browser/safe_browsing/BUILD.gn
--- a/chrome/browser/safe_browsing/BUILD.gn --- a/chrome/browser/safe_browsing/BUILD.gn
+++ b/chrome/browser/safe_browsing/BUILD.gn +++ b/chrome/browser/safe_browsing/BUILD.gn
@@ -49,7 +49,6 @@ static_library("safe_browsing") { @@ -52,7 +52,6 @@ static_library("safe_browsing") {
"//components/resources:components_resources_grit", "//components/resources:components_resources_grit",
"//components/safe_browsing:buildflags", "//components/safe_browsing:buildflags",
"//components/safe_browsing/content/browser", "//components/safe_browsing/content/browser",
- "//components/safe_browsing/content/browser/notification_content_detection", - "//components/safe_browsing/content/browser/notification_content_detection",
"//components/safe_browsing/content/browser/triggers:suspicious_site_trigger", "//components/safe_browsing/content/browser/triggers:suspicious_site_trigger",
"//components/safe_browsing/content/browser/web_ui", "//components/safe_browsing/content/browser/web_ui",
"//components/safe_browsing/content/browser/web_ui:local_state_delegate", "//components/safe_browsing/core/browser",
diff --git a/chrome/browser/safe_browsing/notification_content_detection/notification_content_detection_service_factory.cc b/chrome/browser/safe_browsing/notification_content_detection/notification_content_detection_service_factory.cc diff --git a/chrome/browser/safe_browsing/notification_content_detection/notification_content_detection_service_factory.cc b/chrome/browser/safe_browsing/notification_content_detection/notification_content_detection_service_factory.cc
--- a/chrome/browser/safe_browsing/notification_content_detection/notification_content_detection_service_factory.cc --- a/chrome/browser/safe_browsing/notification_content_detection/notification_content_detection_service_factory.cc
+++ b/chrome/browser/safe_browsing/notification_content_detection/notification_content_detection_service_factory.cc +++ b/chrome/browser/safe_browsing/notification_content_detection/notification_content_detection_service_factory.cc
@@ -408,10 +432,21 @@ diff --git a/chrome/browser/safe_browsing/notification_content_detection/notific
} }
} // namespace safe_browsing } // namespace safe_browsing
diff --git a/chrome/browser/ui/android/preloading/java/src/org/chromium/chrome/browser/preloading/AndroidPrerenderManager.java b/chrome/browser/ui/android/preloading/java/src/org/chromium/chrome/browser/preloading/AndroidPrerenderManager.java
--- a/chrome/browser/ui/android/preloading/java/src/org/chromium/chrome/browser/preloading/AndroidPrerenderManager.java
+++ b/chrome/browser/ui/android/preloading/java/src/org/chromium/chrome/browser/preloading/AndroidPrerenderManager.java
@@ -89,6 +89,7 @@ public class AndroidPrerenderManager {
* @param prerenderUrl The url to be prerendered.
*/
public void startPrerendering(GURL prerenderUrl) {
+ if ((true)) return;
if (mNativeAndroidPrerenderManager == 0 || mWebContents == null) return;
AndroidPrerenderManagerJni.get()
.startPrerendering(mNativeAndroidPrerenderManager, prerenderUrl, mWebContents);
diff --git a/chrome/browser/ui/autofill/chrome_autofill_client.cc b/chrome/browser/ui/autofill/chrome_autofill_client.cc 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 --- a/chrome/browser/ui/autofill/chrome_autofill_client.cc
+++ b/chrome/browser/ui/autofill/chrome_autofill_client.cc +++ b/chrome/browser/ui/autofill/chrome_autofill_client.cc
@@ -516,11 +516,7 @@ void ChromeAutofillClient::GetAiPageContent(GetAiPageContentCallback callback) { @@ -509,11 +509,7 @@ void ChromeAutofillClient::GetAiPageContent(GetAiPageContentCallback callback) {
} }
AutofillAiManager* ChromeAutofillClient::GetAutofillAiManager() { AutofillAiManager* ChromeAutofillClient::GetAutofillAiManager() {
@@ -423,7 +458,7 @@ diff --git a/chrome/browser/ui/autofill/chrome_autofill_client.cc b/chrome/brows
} }
AutofillAiModelCache* ChromeAutofillClient::GetAutofillAiModelCache() { AutofillAiModelCache* ChromeAutofillClient::GetAutofillAiModelCache() {
@@ -1206,18 +1202,7 @@ void ChromeAutofillClient::TriggerPlusAddressUserPerceptionSurvey( @@ -1199,18 +1195,7 @@ void ChromeAutofillClient::TriggerPlusAddressUserPerceptionSurvey(
optimization_guide::ModelQualityLogsUploaderService* optimization_guide::ModelQualityLogsUploaderService*
ChromeAutofillClient::GetMqlsUploadService() { ChromeAutofillClient::GetMqlsUploadService() {
@@ -445,7 +480,7 @@ diff --git a/chrome/browser/ui/autofill/chrome_autofill_client.cc b/chrome/brows
diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc
--- a/chrome/browser/ui/tab_helpers.cc --- a/chrome/browser/ui/tab_helpers.cc
+++ b/chrome/browser/ui/tab_helpers.cc +++ b/chrome/browser/ui/tab_helpers.cc
@@ -443,7 +443,6 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) { @@ -449,7 +449,6 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) {
} }
MixedContentSettingsTabHelper::CreateForWebContents(web_contents); MixedContentSettingsTabHelper::CreateForWebContents(web_contents);
NavigationMetricsRecorder::CreateForWebContents(web_contents); NavigationMetricsRecorder::CreateForWebContents(web_contents);
@@ -458,7 +493,7 @@ diff --git a/chrome/browser/ui/webui/autofill_ml_internals/autofill_ml_internals
+++ b/chrome/browser/ui/webui/autofill_ml_internals/autofill_ml_internals_page_handler.cc +++ b/chrome/browser/ui/webui/autofill_ml_internals/autofill_ml_internals_page_handler.cc
@@ -12,9 +12,11 @@ AutofillMlInternalsPageHandlerImpl::AutofillMlInternalsPageHandlerImpl( @@ -12,9 +12,11 @@ AutofillMlInternalsPageHandlerImpl::AutofillMlInternalsPageHandlerImpl(
mojo::PendingReceiver<autofill_ml_internals::mojom::PageHandler> receiver, mojo::PendingReceiver<autofill_ml_internals::mojom::PageHandler> receiver,
autofill::MLLogRouter* log_router) autofill::MlLogRouter* log_router)
: receiver_(this, std::move(receiver)) { : receiver_(this, std::move(receiver)) {
+#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB)
if (log_router) { if (log_router) {
@@ -484,7 +519,7 @@ diff --git a/chrome/browser/ui/webui/autofill_ml_internals/autofill_ml_internals
mojo::Receiver<autofill_ml_internals::mojom::PageHandler> receiver_; mojo::Receiver<autofill_ml_internals::mojom::PageHandler> receiver_;
mojo::Remote<autofill_ml_internals::mojom::Page> page_; mojo::Remote<autofill_ml_internals::mojom::Page> page_;
+#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB)
base::ScopedObservation<autofill::MLLogRouter, autofill::MLLogReceiver> base::ScopedObservation<autofill::MlLogRouter, autofill::MlLogReceiver>
log_router_observation_{this}; log_router_observation_{this};
+#endif +#endif
}; };
@@ -507,7 +542,7 @@ diff --git a/chrome/browser/ui/webui/autofill_ml_internals/autofill_ml_internals
mojo::PendingReceiver<autofill_ml_internals::mojom::PageHandler> receiver) { mojo::PendingReceiver<autofill_ml_internals::mojom::PageHandler> receiver) {
+#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB)
page_handler_ = std::make_unique<AutofillMlInternalsPageHandlerImpl>( page_handler_ = std::make_unique<AutofillMlInternalsPageHandlerImpl>(
std::move(receiver), autofill::MLLogRouterFactory::GetForProfile( std::move(receiver), autofill::MlLogRouterFactory::GetForProfile(
Profile::FromWebUI(web_ui()))); Profile::FromWebUI(web_ui())));
+#endif +#endif
} }
@@ -542,7 +577,7 @@ diff --git a/chrome/renderer/accessibility/read_anything/read_aloud_app_model.cc
} // namespace } // namespace
@@ -154,10 +158,13 @@ void ReadAloudAppModel::PreprocessTextForSpeech( @@ -153,10 +157,13 @@ void ReadAloudAppModel::PreprocessTextForSpeech(
} }
} }
@@ -556,7 +591,7 @@ diff --git a/chrome/renderer/accessibility/read_anything/read_aloud_app_model.cc
void ReadAloudAppModel::CalculatePhrases( void ReadAloudAppModel::CalculatePhrases(
a11y::ReadAloudCurrentGranularity& granularity) { a11y::ReadAloudCurrentGranularity& granularity) {
if (!features::IsReadAnythingReadAloudPhraseHighlightingEnabled()) { if (!features::IsReadAnythingReadAloudPhraseHighlightingEnabled()) {
@@ -214,19 +221,23 @@ void ReadAloudAppModel::CalculatePhrases( @@ -213,19 +220,23 @@ void ReadAloudAppModel::CalculatePhrases(
base::BindOnce(&ReadAloudAppModel::UpdatePhraseBoundaries, base::BindOnce(&ReadAloudAppModel::UpdatePhraseBoundaries,
weak_ptr_factory_.GetWeakPtr(), phrase_tokens)); weak_ptr_factory_.GetWeakPtr(), phrase_tokens));
} }
@@ -582,7 +617,7 @@ diff --git a/chrome/renderer/accessibility/read_anything/read_aloud_app_model.cc
// Reset the phrase calculation flag, so that the next phrase calculation can // Reset the phrase calculation flag, so that the next phrase calculation can
// be scheduled, if needed. // be scheduled, if needed.
is_calculating_phrases = false; is_calculating_phrases = false;
@@ -288,6 +299,7 @@ void ReadAloudAppModel::UpdatePhraseBoundaries(std::vector<std::string> tokens, @@ -287,6 +298,7 @@ void ReadAloudAppModel::UpdatePhraseBoundaries(std::vector<std::string> tokens,
current_phrase_calculation_index_ = -1; current_phrase_calculation_index_ = -1;
LOG(WARNING) << "All phrases calculated!"; LOG(WARNING) << "All phrases calculated!";
} }
@@ -604,7 +639,7 @@ diff --git a/chrome/renderer/accessibility/read_anything/read_aloud_app_model.h
#include "chrome/renderer/accessibility/read_anything/read_aloud_traversal_utils.h" #include "chrome/renderer/accessibility/read_anything/read_aloud_traversal_utils.h"
#include "ui/accessibility/ax_node_position.h" #include "ui/accessibility/ax_node_position.h"
@@ -122,8 +125,10 @@ class ReadAloudAppModel { @@ -119,8 +122,10 @@ class ReadAloudAppModel {
bool is_docs, bool is_docs,
const std::set<ui::AXNodeID>* current_nodes); const std::set<ui::AXNodeID>* current_nodes);
@@ -615,7 +650,7 @@ diff --git a/chrome/renderer/accessibility/read_anything/read_aloud_app_model.h
// Increments the processed_granularity_index_, updating ReadAloud's state of // Increments the processed_granularity_index_, updating ReadAloud's state of
// the current granularity to refer to the next granularity. The current // the current granularity to refer to the next granularity. The current
@@ -282,9 +287,11 @@ class ReadAloudAppModel { @@ -291,9 +296,11 @@ class ReadAloudAppModel {
// still needs to be read. // still needs to be read.
bool NoValidTextRemainingInCurrentNode(bool is_pdf, bool is_docs) const; bool NoValidTextRemainingInCurrentNode(bool is_pdf, bool is_docs) const;
@@ -627,7 +662,7 @@ diff --git a/chrome/renderer/accessibility/read_anything/read_aloud_app_model.h
// Once the phrase segmentation has completed for a given sentence, update the // Once the phrase segmentation has completed for a given sentence, update the
// granularity with the phrase boundaries, and calculate phrases for the next // granularity with the phrase boundaries, and calculate phrases for the next
@@ -358,7 +365,7 @@ class ReadAloudAppModel { @@ -367,7 +374,7 @@ class ReadAloudAppModel {
// Whether a phrase calculation for a sentence is currently underway. (We // Whether a phrase calculation for a sentence is currently underway. (We
// do not initiate a second calculation before the first has completed.) // do not initiate a second calculation before the first has completed.)
@@ -639,7 +674,7 @@ diff --git a/chrome/renderer/accessibility/read_anything/read_aloud_app_model.h
diff --git a/chrome/renderer/accessibility/read_anything/read_anything_app_controller.cc b/chrome/renderer/accessibility/read_anything/read_anything_app_controller.cc diff --git a/chrome/renderer/accessibility/read_anything/read_anything_app_controller.cc b/chrome/renderer/accessibility/read_anything/read_anything_app_controller.cc
--- a/chrome/renderer/accessibility/read_anything/read_anything_app_controller.cc --- a/chrome/renderer/accessibility/read_anything/read_anything_app_controller.cc
+++ b/chrome/renderer/accessibility/read_anything/read_anything_app_controller.cc +++ b/chrome/renderer/accessibility/read_anything/read_anything_app_controller.cc
@@ -30,7 +30,9 @@ @@ -26,7 +26,9 @@
#include "build/build_config.h" #include "build/build_config.h"
#include "chrome/common/read_anything/read_anything_util.h" #include "chrome/common/read_anything/read_anything_util.h"
#include "chrome/renderer/accessibility/ax_tree_distiller.h" #include "chrome/renderer/accessibility/ax_tree_distiller.h"
@@ -649,7 +684,7 @@ diff --git a/chrome/renderer/accessibility/read_anything/read_anything_app_contr
#include "chrome/renderer/accessibility/read_anything/read_aloud_traversal_utils.h" #include "chrome/renderer/accessibility/read_anything/read_aloud_traversal_utils.h"
#include "chrome/renderer/accessibility/read_anything/read_anything_app_model.h" #include "chrome/renderer/accessibility/read_anything/read_anything_app_model.h"
#include "chrome/renderer/accessibility/read_anything/read_anything_node_utils.h" #include "chrome/renderer/accessibility/read_anything/read_anything_node_utils.h"
@@ -1733,6 +1735,7 @@ void ReadAnythingAppController::OnConnected() { @@ -1754,6 +1756,7 @@ void ReadAnythingAppController::OnConnected() {
render_frame()->GetBrowserInterfaceBroker().GetInterface( render_frame()->GetBrowserInterfaceBroker().GetInterface(
std::move(page_handler_factory_receiver)); std::move(page_handler_factory_receiver));
@@ -657,7 +692,7 @@ diff --git a/chrome/renderer/accessibility/read_anything/read_anything_app_contr
// Get the dependency parser model used by phrase-based highlighting. // Get the dependency parser model used by phrase-based highlighting.
if (read_aloud_model_.GetDependencyParserModel().IsAvailable()) { if (read_aloud_model_.GetDependencyParserModel().IsAvailable()) {
return; return;
@@ -1741,6 +1744,7 @@ void ReadAnythingAppController::OnConnected() { @@ -1762,6 +1765,7 @@ void ReadAnythingAppController::OnConnected() {
page_handler_->GetDependencyParserModel( page_handler_->GetDependencyParserModel(
base::BindOnce(&ReadAnythingAppController::UpdateDependencyParserModel, base::BindOnce(&ReadAnythingAppController::UpdateDependencyParserModel,
weak_ptr_factory_.GetWeakPtr())); weak_ptr_factory_.GetWeakPtr()));
@@ -665,7 +700,7 @@ diff --git a/chrome/renderer/accessibility/read_anything/read_anything_app_contr
} }
void ReadAnythingAppController::OnCopy() const { void ReadAnythingAppController::OnCopy() const {
@@ -1972,8 +1976,10 @@ std::vector<ui::AXNodeID> ReadAnythingAppController::GetCurrentText() { @@ -2003,8 +2007,10 @@ std::u16string ReadAnythingAppController::GetCurrentTextContent() {
} }
void ReadAnythingAppController::PreprocessTextForSpeech() { void ReadAnythingAppController::PreprocessTextForSpeech() {
@@ -676,7 +711,7 @@ diff --git a/chrome/renderer/accessibility/read_anything/read_anything_app_contr
} }
void ReadAnythingAppController::MovePositionToNextGranularity() { void ReadAnythingAppController::MovePositionToNextGranularity() {
@@ -2196,14 +2202,18 @@ bool ReadAnythingAppController::IsDocsLoadMoreButtonVisible() const { @@ -2257,14 +2263,18 @@ bool ReadAnythingAppController::IsDocsLoadMoreButtonVisible() const {
void ReadAnythingAppController::UpdateDependencyParserModel( void ReadAnythingAppController::UpdateDependencyParserModel(
base::File model_file) { base::File model_file) {
@@ -708,7 +743,7 @@ diff --git a/chrome/renderer/accessibility/read_anything/read_anything_app_contr
class ReadAnythingAppControllerTest; class ReadAnythingAppControllerTest;
class ReadAnythingAppControllerScreen2xDataCollectionModeTest; class ReadAnythingAppControllerScreen2xDataCollectionModeTest;
@@ -303,7 +305,9 @@ class ReadAnythingAppController @@ -304,7 +306,9 @@ class ReadAnythingAppController
// available. // available.
void UpdateDependencyParserModel(base::File model_file); void UpdateDependencyParserModel(base::File model_file);
@@ -758,7 +793,7 @@ diff --git a/chrome/utility/services.cc b/chrome/utility/services.cc
diff --git a/components/BUILD.gn b/components/BUILD.gn diff --git a/components/BUILD.gn b/components/BUILD.gn
--- a/components/BUILD.gn --- a/components/BUILD.gn
+++ b/components/BUILD.gn +++ b/components/BUILD.gn
@@ -613,7 +613,7 @@ test("components_unittests") { @@ -617,7 +617,7 @@ test("components_unittests") {
"//components/media_router/common/providers/cast/channel:unit_tests", "//components/media_router/common/providers/cast/channel:unit_tests",
"//components/page_info:unit_tests", "//components/page_info:unit_tests",
"//components/permissions:unit_tests", "//components/permissions:unit_tests",
@@ -767,18 +802,62 @@ diff --git a/components/BUILD.gn b/components/BUILD.gn
"//components/privacy_sandbox/privacy_sandbox_attestations:unit_tests", "//components/privacy_sandbox/privacy_sandbox_attestations:unit_tests",
"//components/safety_check:unit_tests", "//components/safety_check:unit_tests",
"//components/security_interstitials/content:unit_tests", "//components/security_interstitials/content:unit_tests",
diff --git a/components/autofill/core/browser/integrators/optimization_guide/autofill_optimization_guide.cc b/components/autofill/core/browser/integrators/optimization_guide/autofill_optimization_guide.cc 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/integrators/optimization_guide/autofill_optimization_guide.cc --- a/components/autofill/core/browser/foundations/autofill_manager.cc
+++ b/components/autofill/core/browser/integrators/optimization_guide/autofill_optimization_guide.cc +++ b/components/autofill/core/browser/foundations/autofill_manager.cc
@@ -264,6 +264,7 @@ void AutofillOptimizationGuide::OnDidParseForm( @@ -895,6 +895,7 @@ void AutofillManager::LogCurrentFieldTypes(const FormStructure& form) {
}
}
+#if BUILDFLAG(BUILD_WITH_TFLITE_LIB)
void AutofillManager::SubscribeToMlModelChanges(
FieldClassificationModelHandler& handler,
optimization_guide::proto::OptimizationTarget optimization_target) {
@@ -919,5 +920,6 @@ void AutofillManager::SubscribeToMlModelChanges(
NOTREACHED();
}
}
+#endif
} // namespace autofill
diff --git a/components/autofill/core/browser/foundations/autofill_manager.h b/components/autofill/core/browser/foundations/autofill_manager.h
--- a/components/autofill/core/browser/foundations/autofill_manager.h
+++ b/components/autofill/core/browser/foundations/autofill_manager.h
@@ -38,6 +38,7 @@
#include "components/autofill/core/common/signatures.h"
#include "components/autofill/core/common/unique_ids.h"
#include "components/optimization_guide/proto/models.pb.h"
+#include "components/optimization_guide/machine_learning_tflite_buildflags.h"
#include "components/translate/core/browser/translate_driver.h"
namespace autofill {
@@ -355,12 +356,14 @@ class AutofillManager
// Reparses all known forms.
void ReparseKnownForms();
+#if BUILDFLAG(BUILD_WITH_TFLITE_LIB)
// After subscribing, FieldClassificationModelHandler::OnModelUpdated() will
// trigger ReparseKnownForms(). There may be a handler for Autofill and/or
// Password Manager.
void SubscribeToMlModelChanges(
FieldClassificationModelHandler& handler,
optimization_guide::proto::OptimizationTarget optimization_target);
+#endif
protected:
explicit AutofillManager(AutofillDriver* driver);
diff --git a/components/autofill/core/browser/integrators/optimization_guide/autofill_optimization_guide_decider.cc b/components/autofill/core/browser/integrators/optimization_guide/autofill_optimization_guide_decider.cc
--- a/components/autofill/core/browser/integrators/optimization_guide/autofill_optimization_guide_decider.cc
+++ b/components/autofill/core/browser/integrators/optimization_guide/autofill_optimization_guide_decider.cc
@@ -258,6 +258,7 @@ void AutofillOptimizationGuideDecider::OnPaymentsDataLoaded(
// If we do not have any optimization types to register, do not do anything. // If we do not have any optimization types to register, do not do anything.
if (!optimization_types.empty()) { if (!optimization_types.empty()) {
// Register all optimization types that we need based on `form_structure`.
+ if (decider_) + if (decider_)
decider_->RegisterOptimizationTypes( decider_->RegisterOptimizationTypes(
std::vector<optimization_guide::proto::OptimizationType>( std::vector<optimization_guide::proto::OptimizationType>(
std::move(optimization_types).extract())); std::move(optimization_types).extract()));
@@ -331,7 +332,7 @@ bool AutofillOptimizationGuide::ShouldBlockSingleFieldSuggestions( @@ -365,7 +366,7 @@ bool AutofillOptimizationGuideDecider::ShouldBlockSingleFieldSuggestions(
const AutofillField* field) const { const AutofillField* field) const {
// If the field's storable type is `IBAN_VALUE`, check whether IBAN // If the field's storable type is `IBAN_VALUE`, check whether IBAN
// suggestions should be blocked based on `url`. // suggestions should be blocked based on `url`.
@@ -787,7 +866,7 @@ diff --git a/components/autofill/core/browser/integrators/optimization_guide/aut
optimization_guide::OptimizationGuideDecision decision = optimization_guide::OptimizationGuideDecision decision =
decider_->CanApplyOptimization( decider_->CanApplyOptimization(
url, optimization_guide::proto::IBAN_AUTOFILL_BLOCKED, url, optimization_guide::proto::IBAN_AUTOFILL_BLOCKED,
@@ -357,7 +358,7 @@ bool AutofillOptimizationGuide::ShouldBlockFormFieldSuggestion( @@ -391,7 +392,7 @@ bool AutofillOptimizationGuideDecider::ShouldBlockFormFieldSuggestion(
const CreditCard& card) const { const CreditCard& card) const {
if (auto optimization_type = if (auto optimization_type =
GetVcnMerchantOptOutOptimizationTypeForCard(card); GetVcnMerchantOptOutOptimizationTypeForCard(card);
@@ -799,17 +878,17 @@ diff --git a/components/autofill/core/browser/integrators/optimization_guide/aut
diff --git a/components/autofill/core/browser/ml_model/field_classification_model_handler.cc b/components/autofill/core/browser/ml_model/field_classification_model_handler.cc diff --git a/components/autofill/core/browser/ml_model/field_classification_model_handler.cc b/components/autofill/core/browser/ml_model/field_classification_model_handler.cc
--- a/components/autofill/core/browser/ml_model/field_classification_model_handler.cc --- a/components/autofill/core/browser/ml_model/field_classification_model_handler.cc
+++ b/components/autofill/core/browser/ml_model/field_classification_model_handler.cc +++ b/components/autofill/core/browser/ml_model/field_classification_model_handler.cc
@@ -97,8 +97,7 @@ bool ParsingSupportsMultipleFieldsOfType(FieldType type) { @@ -101,8 +101,7 @@ bool ParsingSupportsMultipleFieldsOfType(FieldType type) {
FieldClassificationModelHandler::FieldClassificationModelHandler( FieldClassificationModelHandler::FieldClassificationModelHandler(
optimization_guide::OptimizationGuideModelProvider* model_provider, optimization_guide::OptimizationGuideModelProvider* model_provider,
- optimization_guide::proto::OptimizationTarget optimization_target, - optimization_guide::proto::OptimizationTarget optimization_target,
- autofill::MLLogRouter* log_router) - MlLogRouter* log_router)
+ optimization_guide::proto::OptimizationTarget optimization_target) + optimization_guide::proto::OptimizationTarget optimization_target)
: optimization_guide::ModelHandler< : optimization_guide::ModelHandler<
FieldClassificationModelEncoder::ModelOutput, FieldClassificationModelEncoder::ModelOutput,
const FieldClassificationModelEncoder::ModelInput&>( const FieldClassificationModelEncoder::ModelInput&>(
@@ -110,8 +109,7 @@ FieldClassificationModelHandler::FieldClassificationModelHandler( @@ -114,8 +113,7 @@ FieldClassificationModelHandler::FieldClassificationModelHandler(
optimization_target, optimization_target,
CreateModelMetadata()), CreateModelMetadata()),
optimization_target_(optimization_target), optimization_target_(optimization_target),
@@ -819,52 +898,52 @@ diff --git a/components/autofill/core/browser/ml_model/field_classification_mode
// Store the model in memory as soon as it is available and keep it loaded for // Store the model in memory as soon as it is available and keep it loaded for
// the whole browser session since we query predictions very regularly. // the whole browser session since we query predictions very regularly.
// TODO(crbug.com/40276177): Maybe change both back to default behavior if we // TODO(crbug.com/40276177): Maybe change both back to default behavior if we
@@ -160,6 +158,7 @@ void FieldClassificationModelHandler::ApplySmallFormRules( @@ -167,6 +165,7 @@ void FieldClassificationModelHandler::ApplySmallFormRules(
} }
} }
+#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB)
autofill_ml_internals::mojom::MLPredictionLogPtr autofill_ml_internals::mojom::MlPredictionLogPtr
FieldClassificationModelHandler::CreateMLPredictionLog( FieldClassificationModelHandler::CreateMlPredictionLog(
const FormStructure& form_structure) const { const FormData& form) const {
@@ -231,6 +230,7 @@ FieldClassificationModelHandler::CreateMLPredictionLog( @@ -239,6 +238,7 @@ FieldClassificationModelHandler::CreateMlPredictionLog(
prediction_log->start_time = base::Time::Now(); prediction_log->start_time = base::Time::Now();
return prediction_log; return prediction_log;
} }
+#endif +#endif
void PopulateMLPredictionLogAfterInference( void PopulateMlPredictionLogAfterInference(
autofill_ml_internals::mojom::MLPredictionLog& prediction_log, autofill_ml_internals::mojom::MlPredictionLog& prediction_log,
@@ -259,9 +259,11 @@ void FieldClassificationModelHandler::GetModelPredictionsForForm( @@ -268,9 +268,11 @@ void FieldClassificationModelHandler::GetModelPredictionsForForm(
std::optional<autofill_ml_internals::mojom::MLPredictionLogPtr> std::optional<autofill_ml_internals::mojom::MlPredictionLogPtr>
prediction_log = std::nullopt; prediction_log = std::nullopt;
+#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB)
if (log_router_ && log_router_->HasReceivers()) { if (log_router_ && log_router_->HasReceivers()) {
prediction_log = CreateMLPredictionLog(*form_structure); prediction_log = CreateMlPredictionLog(form);
} }
+#endif +#endif
// TODO(crbug.com/428686605) Set tokenized representation in `prediction_log`. // TODO(crbug.com/428686605) Set tokenized representation in `prediction_log`.
FieldClassificationModelEncoder::ModelInput encoded_input = FieldClassificationModelEncoder::ModelInput encoded_input =
@@ -312,11 +314,13 @@ void FieldClassificationModelHandler::GetModelPredictionsForForm( @@ -325,11 +327,13 @@ void FieldClassificationModelHandler::GetModelPredictionsForForm(
predicted_types); predicted_types);
} }
} }
+#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB)
if (self && output && prediction_log && self->log_router_) { if (output && prediction_log && self->log_router_) {
PopulateMLPredictionLogAfterInference(*(prediction_log.value()), PopulateMlPredictionLogAfterInference(*prediction_log.value(),
output.value()); output.value());
self->log_router_->ProcessLog(std::move(*prediction_log)); self->log_router_->ProcessLog(std::move(*prediction_log));
} }
+#endif +#endif
std::move(callback).Run(std::move(form_structure)); std::move(callback).Run(std::move(predictions));
}, },
weak_ptr_factory_.GetWeakPtr(), std::move(prediction_log), weak_ptr_factory_.GetWeakPtr(), std::move(prediction_log),
diff --git a/components/autofill/core/browser/ml_model/field_classification_model_handler.h b/components/autofill/core/browser/ml_model/field_classification_model_handler.h diff --git a/components/autofill/core/browser/ml_model/field_classification_model_handler.h b/components/autofill/core/browser/ml_model/field_classification_model_handler.h
--- a/components/autofill/core/browser/ml_model/field_classification_model_handler.h --- a/components/autofill/core/browser/ml_model/field_classification_model_handler.h
+++ b/components/autofill/core/browser/ml_model/field_classification_model_handler.h +++ b/components/autofill/core/browser/ml_model/field_classification_model_handler.h
@@ -15,8 +15,11 @@ @@ -17,8 +17,11 @@
#include "components/autofill/core/browser/field_types.h" #include "components/autofill/core/browser/field_types.h"
#include "components/autofill/core/browser/form_structure.h" #include "components/autofill/core/browser/form_structure.h"
#include "components/autofill/core/browser/ml_model/field_classification_model_encoder.h" #include "components/autofill/core/browser/ml_model/field_classification_model_encoder.h"
@@ -873,43 +952,51 @@ diff --git a/components/autofill/core/browser/ml_model/field_classification_mode
#include "components/autofill/core/browser/ml_model/logging/autofill_ml_internals.mojom.h" #include "components/autofill/core/browser/ml_model/logging/autofill_ml_internals.mojom.h"
#include "components/autofill/core/browser/ml_model/logging/ml_log_router.h" #include "components/autofill/core/browser/ml_model/logging/ml_log_router.h"
+#endif +#endif
#include "components/autofill/core/browser/ml_model/model_predictions.h"
#include "components/keyed_service/core/keyed_service.h" #include "components/keyed_service/core/keyed_service.h"
#include "components/optimization_guide/core/delivery/optimization_guide_model_provider.h" #include "components/optimization_guide/core/delivery/optimization_guide_model_provider.h"
#include "components/optimization_guide/core/inference/model_handler.h" @@ -50,8 +53,7 @@ class FieldClassificationModelHandler
@@ -42,8 +45,7 @@ class FieldClassificationModelHandler
FieldClassificationModelHandler( FieldClassificationModelHandler(
optimization_guide::OptimizationGuideModelProvider* model_provider, optimization_guide::OptimizationGuideModelProvider* model_provider,
- optimization_guide::proto::OptimizationTarget optimization_target, - optimization_guide::proto::OptimizationTarget optimization_target,
- autofill::MLLogRouter* log_router = nullptr); - autofill::MlLogRouter* log_router = nullptr);
+ optimization_guide::proto::OptimizationTarget optimization_target); + optimization_guide::proto::OptimizationTarget optimization_target);
~FieldClassificationModelHandler() override; ~FieldClassificationModelHandler() override;
// This function asynchronously queries predictions for the `form_structure` // This function asynchronously queries predictions for the `form_structure`
@@ -136,10 +138,10 @@ class FieldClassificationModelHandler @@ -132,8 +134,10 @@ class FieldClassificationModelHandler
// Cached model classifications. ModelInputHash CalculateModelInputHash(
base::LRUCache<ModelInputHash, std::vector<FieldType>> predictions_cache_; const FieldClassificationModelEncoder::ModelInput& input);
- raw_ptr<autofill::MLLogRouter> log_router_ = nullptr;
-
+#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) +#if BUILDFLAG(BUILD_WITH_TFLITE_LIB)
autofill_ml_internals::mojom::MLPredictionLogPtr CreateMLPredictionLog( autofill_ml_internals::mojom::MlPredictionLogPtr CreateMlPredictionLog(
const FormStructure& form_structure) const; const FormData& form_structure) const;
+#endif
struct ModelState {
optimization_guide::proto::AutofillFieldClassificationModelMetadata
@@ -155,7 +159,9 @@ class FieldClassificationModelHandler
ModelChangeCallbackList model_change_callback_list_;
+#if BUILDFLAG(BUILD_WITH_TFLITE_LIB)
raw_ptr<autofill::MlLogRouter> log_router_ = nullptr;
+#endif +#endif
base::WeakPtrFactory<FieldClassificationModelHandler> weak_ptr_factory_{this}; base::WeakPtrFactory<FieldClassificationModelHandler> weak_ptr_factory_{this};
}; };
diff --git a/components/omnibox/browser/aim_eligibility_service.cc b/components/omnibox/browser/aim_eligibility_service.cc diff --git a/components/omnibox/browser/aim_eligibility_service_features.cc b/components/omnibox/browser/aim_eligibility_service_features.cc
--- a/components/omnibox/browser/aim_eligibility_service.cc --- a/components/omnibox/browser/aim_eligibility_service_features.cc
+++ b/components/omnibox/browser/aim_eligibility_service.cc +++ b/components/omnibox/browser/aim_eligibility_service_features.cc
@@ -41,6 +41,7 @@ namespace { @@ -9,6 +9,7 @@
namespace omnibox {
// If disabled, AIM is completely turned off (kill switch).
BASE_FEATURE(kAimEnabled, "AimEnabled", base::FEATURE_ENABLED_BY_DEFAULT); BASE_FEATURE(kAimEnabled, "AimEnabled", base::FEATURE_ENABLED_BY_DEFAULT);
+SET_CROMITE_FEATURE_DISABLED(kAimEnabled); // Disable AI Mode starter pack +SET_CROMITE_FEATURE_DISABLED(kAimEnabled); // Disable AI Mode starter pack
// If enabled, uses the server response for AIM eligibility for English locales. BASE_FEATURE(kAimServerEligibilityEnabled,
// Has no effect if kAimServerEligibilityEnabled is enabled. "AimServerEligibilityEnabled",
diff --git a/components/omnibox/browser/autocomplete_controller.cc b/components/omnibox/browser/autocomplete_controller.cc diff --git a/components/omnibox/browser/autocomplete_controller.cc b/components/omnibox/browser/autocomplete_controller.cc
--- a/components/omnibox/browser/autocomplete_controller.cc --- a/components/omnibox/browser/autocomplete_controller.cc
+++ b/components/omnibox/browser/autocomplete_controller.cc +++ b/components/omnibox/browser/autocomplete_controller.cc
@@ -962,7 +1049,7 @@ diff --git a/components/omnibox/browser/base_search_provider.cc b/components/omn
diff --git a/components/optimization_guide/core/delivery/prediction_model_download_manager.cc b/components/optimization_guide/core/delivery/prediction_model_download_manager.cc diff --git a/components/optimization_guide/core/delivery/prediction_model_download_manager.cc b/components/optimization_guide/core/delivery/prediction_model_download_manager.cc
--- a/components/optimization_guide/core/delivery/prediction_model_download_manager.cc --- a/components/optimization_guide/core/delivery/prediction_model_download_manager.cc
+++ b/components/optimization_guide/core/delivery/prediction_model_download_manager.cc +++ b/components/optimization_guide/core/delivery/prediction_model_download_manager.cc
@@ -44,7 +44,7 @@ namespace { @@ -51,7 +51,7 @@ const char kDisableModelDownloadsForBenchmarking[] =
// we require models to come from. // we require models to come from.
constexpr std::array<uint8_t, crypto::hash::kSha256Size> kPublisherKeyHash = { constexpr std::array<uint8_t, crypto::hash::kSha256Size> kPublisherKeyHash = {
0x66, 0xa1, 0xd9, 0x3e, 0x4e, 0x5a, 0x66, 0x8a, 0x0f, 0xd3, 0xfa, 0x66, 0xa1, 0xd9, 0x3e, 0x4e, 0x5a, 0x66, 0x8a, 0x0f, 0xd3, 0xfa,
@@ -971,7 +1058,7 @@ diff --git a/components/optimization_guide/core/delivery/prediction_model_downlo
0x5c, 0x7f, 0xd0, 0x0c, 0xa1, 0x6e, 0xef, 0xdd, 0x63, 0x7a}; 0x5c, 0x7f, 0xd0, 0x0c, 0xa1, 0x6e, 0xef, 0xdd, 0x63, 0x7a};
const net::NetworkTrafficAnnotationTag const net::NetworkTrafficAnnotationTag
kOptimizationGuidePredictionModelsTrafficAnnotation = kOptimizationGuidePredictionModelsTrafficAnnotation =
@@ -104,7 +104,7 @@ PredictionModelDownloadManager::PredictionModelDownloadManager( @@ -111,7 +111,7 @@ PredictionModelDownloadManager::PredictionModelDownloadManager(
unzip::UnzipperFactory unzipper_factory, unzip::UnzipperFactory unzipper_factory,
scoped_refptr<base::SequencedTaskRunner> background_task_runner) scoped_refptr<base::SequencedTaskRunner> background_task_runner)
: download_service_(download_service), : download_service_(download_service),
@@ -980,7 +1067,7 @@ diff --git a/components/optimization_guide/core/delivery/prediction_model_downlo
api_key_(features::GetOptimizationGuideServiceAPIKey()), api_key_(features::GetOptimizationGuideServiceAPIKey()),
get_base_model_dir_for_download_callback_( get_base_model_dir_for_download_callback_(
get_base_model_dir_for_download_callback), get_base_model_dir_for_download_callback),
@@ -117,6 +117,7 @@ PredictionModelDownloadManager::~PredictionModelDownloadManager() = default; @@ -124,6 +124,7 @@ PredictionModelDownloadManager::~PredictionModelDownloadManager() = default;
void PredictionModelDownloadManager::StartDownload( void PredictionModelDownloadManager::StartDownload(
const GURL& download_url, const GURL& download_url,
proto::OptimizationTarget optimization_target) { proto::OptimizationTarget optimization_target) {
@@ -988,7 +1075,7 @@ diff --git a/components/optimization_guide/core/delivery/prediction_model_downlo
download::DownloadParams download_params; download::DownloadParams download_params;
download_params.client = download_params.client =
download::DownloadClient::OPTIMIZATION_GUIDE_PREDICTION_MODELS; download::DownloadClient::OPTIMIZATION_GUIDE_PREDICTION_MODELS;
@@ -265,6 +266,7 @@ bool PredictionModelDownloadManager::VerifyDownload( @@ -276,6 +277,7 @@ bool PredictionModelDownloadManager::VerifyDownload(
const base::FilePath& download_file_path, const base::FilePath& download_file_path,
const base::FilePath& base_model_dir, const base::FilePath& base_model_dir,
bool delete_file_on_error) { bool delete_file_on_error) {
@@ -1038,7 +1125,7 @@ diff --git a/components/optimization_guide/core/hints/hints_manager.cc b/compone
diff --git a/components/optimization_guide/core/optimization_guide_features.cc b/components/optimization_guide/core/optimization_guide_features.cc diff --git a/components/optimization_guide/core/optimization_guide_features.cc b/components/optimization_guide/core/optimization_guide_features.cc
--- a/components/optimization_guide/core/optimization_guide_features.cc --- a/components/optimization_guide/core/optimization_guide_features.cc
+++ b/components/optimization_guide/core/optimization_guide_features.cc +++ b/components/optimization_guide/core/optimization_guide_features.cc
@@ -38,11 +38,7 @@ namespace features { @@ -39,11 +39,7 @@ namespace features {
namespace { namespace {
constexpr auto enabled_by_default_mobile_only = constexpr auto enabled_by_default_mobile_only =
@@ -1050,7 +1137,7 @@ diff --git a/components/optimization_guide/core/optimization_guide_features.cc b
} // namespace } // namespace
@@ -288,8 +284,7 @@ size_t MaxHostKeyedHintCacheSize() { @@ -289,8 +285,7 @@ size_t MaxHostKeyedHintCacheSize() {
} }
bool ShouldPersistHintsToDisk() { bool ShouldPersistHintsToDisk() {
@@ -1060,7 +1147,7 @@ diff --git a/components/optimization_guide/core/optimization_guide_features.cc b
} }
RequestContextSet GetAllowedContextsForPersonalizedMetadata() { RequestContextSet GetAllowedContextsForPersonalizedMetadata() {
@@ -692,5 +687,10 @@ bool IsPrivacyGuideAiSettingsEnabled() { @@ -699,5 +694,10 @@ bool IsPrivacyGuideAiSettingsEnabled() {
return base::FeatureList::IsEnabled(kPrivacyGuideAiSettings); return base::FeatureList::IsEnabled(kPrivacyGuideAiSettings);
} }
@@ -1087,8 +1174,8 @@ diff --git a/components/optimization_guide/features.gni b/components/optimizatio
diff --git a/components/page_content_annotations/core/page_content_annotations_features.cc b/components/page_content_annotations/core/page_content_annotations_features.cc diff --git a/components/page_content_annotations/core/page_content_annotations_features.cc b/components/page_content_annotations/core/page_content_annotations_features.cc
--- a/components/page_content_annotations/core/page_content_annotations_features.cc --- a/components/page_content_annotations/core/page_content_annotations_features.cc
+++ b/components/page_content_annotations/core/page_content_annotations_features.cc +++ b/components/page_content_annotations/core/page_content_annotations_features.cc
@@ -291,4 +291,8 @@ bool ShouldAnnotatedPageContentStudyIncludeInnerText() { @@ -298,4 +298,8 @@ std::string AnnotatedPageContentMode() {
return kAnnotatedPageContentStudyIncludeInnerText.Get(); return kAnnotatedPageContentMode.Get();
} }
+SET_CROMITE_FEATURE_DISABLED(kPageContentAnnotations); +SET_CROMITE_FEATURE_DISABLED(kPageContentAnnotations);
@@ -1110,7 +1197,7 @@ diff --git a/components/page_content_annotations/core/page_content_annotations_m
diff --git a/components/safe_browsing/content/browser/notification_content_detection/BUILD.gn b/components/safe_browsing/content/browser/notification_content_detection/BUILD.gn diff --git a/components/safe_browsing/content/browser/notification_content_detection/BUILD.gn b/components/safe_browsing/content/browser/notification_content_detection/BUILD.gn
--- a/components/safe_browsing/content/browser/notification_content_detection/BUILD.gn --- a/components/safe_browsing/content/browser/notification_content_detection/BUILD.gn
+++ b/components/safe_browsing/content/browser/notification_content_detection/BUILD.gn +++ b/components/safe_browsing/content/browser/notification_content_detection/BUILD.gn
@@ -40,6 +40,13 @@ source_set("notification_content_detection") { @@ -43,6 +43,13 @@ source_set("notification_content_detection") {
] ]
} }
@@ -1127,7 +1214,7 @@ diff --git a/components/safe_browsing/content/browser/notification_content_detec
diff --git a/content/browser/service_worker/service_worker_main_resource_loader.cc b/content/browser/service_worker/service_worker_main_resource_loader.cc diff --git a/content/browser/service_worker/service_worker_main_resource_loader.cc b/content/browser/service_worker/service_worker_main_resource_loader.cc
--- a/content/browser/service_worker/service_worker_main_resource_loader.cc --- a/content/browser/service_worker/service_worker_main_resource_loader.cc
+++ b/content/browser/service_worker/service_worker_main_resource_loader.cc +++ b/content/browser/service_worker/service_worker_main_resource_loader.cc
@@ -538,6 +538,7 @@ bool ServiceWorkerMainResourceLoader::MaybeStartAutoPreload( @@ -544,6 +544,7 @@ bool ServiceWorkerMainResourceLoader::MaybeStartAutoPreload(
bool ServiceWorkerMainResourceLoader::StartRaceNetworkRequest( bool ServiceWorkerMainResourceLoader::StartRaceNetworkRequest(
scoped_refptr<ServiceWorkerContextWrapper> context, scoped_refptr<ServiceWorkerContextWrapper> context,
scoped_refptr<ServiceWorkerVersion> version) { scoped_refptr<ServiceWorkerVersion> version) {
@@ -1140,14 +1227,14 @@ new file mode 100644
--- /dev/null --- /dev/null
+++ b/cromite_flags/chrome/browser/browser_features_cc/Disable-all-predictors-code.inc +++ b/cromite_flags/chrome/browser/browser_features_cc/Disable-all-predictors-code.inc
@@ -0,0 +1,2 @@ @@ -0,0 +1,2 @@
+SET_CROMITE_FEATURE_DISABLED(kBookmarkTriggerForPrerender2); +SET_CROMITE_FEATURE_ENABLED(kBookmarkTriggerForPrerender2KillSwitch);
+SET_CROMITE_FEATURE_DISABLED(kNewTabPageTriggerForPrerender2); +SET_CROMITE_FEATURE_DISABLED(kNewTabPageTriggerForPrerender2);
diff --git a/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Disable-all-predictors-code.inc b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Disable-all-predictors-code.inc diff --git a/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Disable-all-predictors-code.inc b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Disable-all-predictors-code.inc
new file mode 100644 new file mode 100644
--- /dev/null --- /dev/null
+++ b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Disable-all-predictors-code.inc +++ b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Disable-all-predictors-code.inc
@@ -0,0 +1 @@ @@ -0,0 +1 @@
+SET_CROMITE_FEATURE_DISABLED(kNewTabPageAndroidTriggerForPrerender2); +// Empty file
diff --git a/cromite_flags/chrome/common/chrome_features_cc/Disable-all-predictors-code.inc b/cromite_flags/chrome/common/chrome_features_cc/Disable-all-predictors-code.inc diff --git a/cromite_flags/chrome/common/chrome_features_cc/Disable-all-predictors-code.inc b/cromite_flags/chrome/common/chrome_features_cc/Disable-all-predictors-code.inc
new file mode 100644 new file mode 100644
--- /dev/null --- /dev/null
@@ -1181,10 +1268,55 @@ new file mode 100644
@@ -0,0 +1,2 @@ @@ -0,0 +1,2 @@
+SET_CROMITE_FEATURE_DISABLED(kNavigationPredictor); +SET_CROMITE_FEATURE_DISABLED(kNavigationPredictor);
+SET_CROMITE_FEATURE_DISABLED(kPreloadingHeuristicsMLModel); +SET_CROMITE_FEATURE_DISABLED(kPreloadingHeuristicsMLModel);
diff --git a/services/on_device_model/ml/BUILD.gn b/services/on_device_model/ml/BUILD.gn
--- a/services/on_device_model/ml/BUILD.gn
+++ b/services/on_device_model/ml/BUILD.gn
@@ -79,7 +79,7 @@ if (use_blink || (is_ios && build_with_internal_optimization_guide)) {
if (use_blink) {
deps += [ "//gpu/config" ]
}
- if (!is_fuchsia) {
+ if (build_with_tflite_lib && !is_fuchsia) {
deps += [ "//services/on_device_model/safety:bert_safety_model" ]
}
if (is_win || is_mac || is_linux) {
diff --git a/services/on_device_model/ml/ts_model.cc b/services/on_device_model/ml/ts_model.cc
--- a/services/on_device_model/ml/ts_model.cc
+++ b/services/on_device_model/ml/ts_model.cc
@@ -25,7 +25,7 @@
#include "services/on_device_model/public/mojom/on_device_model_service.mojom.h"
#include "services/on_device_model/safety/safety_util.h"
-#if !BUILDFLAG(IS_FUCHSIA)
+#if false && !BUILDFLAG(IS_FUCHSIA)
#include "services/on_device_model/safety/bert_safety_model.h"
#endif
@@ -189,7 +189,7 @@ void TsHolder::Reset(mojom::TextSafetyModelParamsPtr params,
mojo::PendingReceiver<mojom::TextSafetyModel> model) {
model_.Clear();
-#if !BUILDFLAG(IS_FUCHSIA)
+#if false && !BUILDFLAG(IS_FUCHSIA)
if (params->safety_assets->which() ==
mojom::SafetyModelAssets::Tag::kTsAssets) {
auto impl = TsModel::Create(*chrome_ml_, std::move(params));
diff --git a/services/on_device_model/safety/BUILD.gn b/services/on_device_model/safety/BUILD.gn
--- a/services/on_device_model/safety/BUILD.gn
+++ b/services/on_device_model/safety/BUILD.gn
@@ -4,7 +4,7 @@
import("//components/optimization_guide/features.gni")
-if (!is_fuchsia) {
+if (build_with_tflite_lib && !is_fuchsia) {
source_set("bert_safety_op_resolver") {
sources = [
"bert_safety_op_resolver.cc",
diff --git a/services/webnn/BUILD.gn b/services/webnn/BUILD.gn diff --git a/services/webnn/BUILD.gn b/services/webnn/BUILD.gn
--- a/services/webnn/BUILD.gn --- a/services/webnn/BUILD.gn
+++ b/services/webnn/BUILD.gn +++ b/services/webnn/BUILD.gn
@@ -170,7 +170,7 @@ component("webnn_service") { @@ -178,7 +178,7 @@ component("webnn_service") {
} }
} }
@@ -1208,30 +1340,33 @@ diff --git a/services/webnn/features.gni b/services/webnn/features.gni
diff --git a/services/webnn/webnn_context_provider_impl.cc b/services/webnn/webnn_context_provider_impl.cc diff --git a/services/webnn/webnn_context_provider_impl.cc b/services/webnn/webnn_context_provider_impl.cc
--- a/services/webnn/webnn_context_provider_impl.cc --- a/services/webnn/webnn_context_provider_impl.cc
+++ b/services/webnn/webnn_context_provider_impl.cc +++ b/services/webnn/webnn_context_provider_impl.cc
@@ -217,18 +217,7 @@ void WebNNContextProviderImpl::CreateWebNNContext( @@ -186,21 +186,7 @@ void WebNNContextProviderImpl::CreateWebNNContext(
RecordDeviceType(options->device); RecordDeviceType(options->device);
#if BUILDFLAG(IS_WIN) #if BUILDFLAG(IS_WIN)
- if (ort::ShouldCreateOrtContext(*options)) { - if (ort::ShouldCreateOrtContext(*options)) {
- base::expected<scoped_refptr<ort::Environment>, std::string> - base::expected<scoped_refptr<ort::Environment>, std::string>
- env_creation_results = ort::Environment::Create(gpu_info_); - env_creation_results = ort::Environment::GetInstance(gpu_info_);
- if (!env_creation_results.has_value()) { - if (!env_creation_results.has_value()) {
- LOG(ERROR) << "[WebNN] Failed to create ONNX Runtime context: " - LOG(ERROR) << "[WebNN] Failed to create ONNX Runtime context: "
- << env_creation_results.error(); - << env_creation_results.error();
- } else { - } else {
- context_impl = std::make_unique<ort::ContextImplOrt>( - context_impl = base::MakeRefCounted<ort::ContextImplOrt>(
- std::move(receiver), this, std::move(options), - std::move(receiver), this,
- std::move(env_creation_results.value())); - env_creation_results.value()->GetEpWorkarounds(options->device),
- std::move(options), std::move(env_creation_results.value()),
- command_buffer_id, std::move(sequence),
- std::move(scheduler_task_runner));
- } - }
- } else if (dml::ShouldCreateDmlContext(*options)) { - } else if (dml::ShouldCreateDmlContext(*options)) {
+ if (dml::ShouldCreateDmlContext(*options)) { + if (dml::ShouldCreateDmlContext(*options)) {
base::expected<std::unique_ptr<WebNNContextImpl>, mojom::ErrorPtr> base::expected<scoped_refptr<WebNNContextImpl>, mojom::ErrorPtr>
context_creation_results = dml::CreateContextFromOptions( context_creation_results = dml::CreateContextFromOptions(
std::move(options), gpu_feature_info_, gpu_info_, std::move(options), gpu_feature_info_, gpu_info_,
diff --git a/third_party/blink/renderer/core/html/parser/html_document_parser.cc b/third_party/blink/renderer/core/html/parser/html_document_parser.cc diff --git a/third_party/blink/renderer/core/html/parser/html_document_parser.cc b/third_party/blink/renderer/core/html/parser/html_document_parser.cc
--- a/third_party/blink/renderer/core/html/parser/html_document_parser.cc --- a/third_party/blink/renderer/core/html/parser/html_document_parser.cc
+++ b/third_party/blink/renderer/core/html/parser/html_document_parser.cc +++ b/third_party/blink/renderer/core/html/parser/html_document_parser.cc
@@ -1801,6 +1801,7 @@ ALWAYS_INLINE bool HTMLDocumentParser::ShouldCheckTimeBudget( @@ -1822,6 +1822,7 @@ ALWAYS_INLINE bool HTMLDocumentParser::ShouldCheckTimeBudget(
} }
bool HTMLDocumentParser::ShouldSkipPreloadScan() { bool HTMLDocumentParser::ShouldSkipPreloadScan() {
@@ -1253,7 +1388,7 @@ diff --git a/third_party/blink/renderer/core/speculation_rules/document_speculat
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 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 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -3734,7 +3734,7 @@ @@ -3762,7 +3762,7 @@
// //
// It also has some feature params defined throughout the codebase. // It also has some feature params defined throughout the codebase.
name: "Prerender2", name: "Prerender2",
@@ -18,7 +18,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
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 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 --- 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 +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java
@@ -1747,6 +1747,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { @@ -1769,6 +1769,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator {
} }
private boolean maybeShowPromo(Profile profile) { private boolean maybeShowPromo(Profile profile) {
@@ -29,7 +29,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab
diff --git a/chrome/browser/ui/browser_ui_prefs.cc b/chrome/browser/ui/browser_ui_prefs.cc 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 --- a/chrome/browser/ui/browser_ui_prefs.cc
+++ b/chrome/browser/ui/browser_ui_prefs.cc +++ b/chrome/browser/ui/browser_ui_prefs.cc
@@ -172,7 +172,7 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistrySyncable* registry) { @@ -176,7 +176,7 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistrySyncable* registry) {
registry->RegisterBooleanPref(prefs::kEnterpriseHardwarePlatformAPIEnabled, registry->RegisterBooleanPref(prefs::kEnterpriseHardwarePlatformAPIEnabled,
false); false);
@@ -63,7 +63,7 @@ diff --git a/chrome/browser/ui/views/user_education/impl/browser_feature_promo_c
diff --git a/chrome/browser/user_education/java/src/org/chromium/chrome/browser/user_education/UserEducationHelper.java b/chrome/browser/user_education/java/src/org/chromium/chrome/browser/user_education/UserEducationHelper.java diff --git a/chrome/browser/user_education/java/src/org/chromium/chrome/browser/user_education/UserEducationHelper.java b/chrome/browser/user_education/java/src/org/chromium/chrome/browser/user_education/UserEducationHelper.java
--- a/chrome/browser/user_education/java/src/org/chromium/chrome/browser/user_education/UserEducationHelper.java --- a/chrome/browser/user_education/java/src/org/chromium/chrome/browser/user_education/UserEducationHelper.java
+++ b/chrome/browser/user_education/java/src/org/chromium/chrome/browser/user_education/UserEducationHelper.java +++ b/chrome/browser/user_education/java/src/org/chromium/chrome/browser/user_education/UserEducationHelper.java
@@ -120,6 +120,7 @@ public class UserEducationHelper { @@ -122,6 +122,7 @@ public class UserEducationHelper {
} }
private void showIph(Tracker tracker, IphCommand iphCommand) { private void showIph(Tracker tracker, IphCommand iphCommand) {
@@ -53,7 +53,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/android_webview/browser/aw_content_browser_client.cc b/android_webview/browser/aw_content_browser_client.cc diff --git a/android_webview/browser/aw_content_browser_client.cc b/android_webview/browser/aw_content_browser_client.cc
--- a/android_webview/browser/aw_content_browser_client.cc --- a/android_webview/browser/aw_content_browser_client.cc
+++ b/android_webview/browser/aw_content_browser_client.cc +++ b/android_webview/browser/aw_content_browser_client.cc
@@ -1354,6 +1354,7 @@ network::mojom::AttributionSupport @@ -1357,6 +1357,7 @@ network::mojom::AttributionSupport
AwContentBrowserClient::GetAttributionSupport( AwContentBrowserClient::GetAttributionSupport(
AttributionReportingOsApiState state, AttributionReportingOsApiState state,
bool client_os_disabled) { bool client_os_disabled) {
@@ -61,7 +61,7 @@ diff --git a/android_webview/browser/aw_content_browser_client.cc b/android_webv
// WebView only supports OS-level attribution and not web-attribution. // WebView only supports OS-level attribution and not web-attribution.
switch (state) { switch (state) {
case AttributionReportingOsApiState::kDisabled: case AttributionReportingOsApiState::kDisabled:
@@ -1372,6 +1373,8 @@ bool AwContentBrowserClient::IsAttributionReportingOperationAllowed( @@ -1375,6 +1376,8 @@ bool AwContentBrowserClient::IsAttributionReportingOperationAllowed(
const url::Origin* destination_origin, const url::Origin* destination_origin,
const url::Origin* reporting_origin, const url::Origin* reporting_origin,
bool* can_bypass) { bool* can_bypass) {
@@ -73,7 +73,7 @@ diff --git a/android_webview/browser/aw_content_browser_client.cc b/android_webv
diff --git a/android_webview/java/src/org/chromium/android_webview/AwSettings.java b/android_webview/java/src/org/chromium/android_webview/AwSettings.java diff --git a/android_webview/java/src/org/chromium/android_webview/AwSettings.java b/android_webview/java/src/org/chromium/android_webview/AwSettings.java
--- a/android_webview/java/src/org/chromium/android_webview/AwSettings.java --- a/android_webview/java/src/org/chromium/android_webview/AwSettings.java
+++ b/android_webview/java/src/org/chromium/android_webview/AwSettings.java +++ b/android_webview/java/src/org/chromium/android_webview/AwSettings.java
@@ -177,7 +177,7 @@ public class AwSettings { @@ -207,7 +207,7 @@ public class AwSettings {
private boolean mSpatialNavigationEnabled; // Default depends on device features. private boolean mSpatialNavigationEnabled; // Default depends on device features.
private boolean mEnableSupportedHardwareAcceleratedFeatures; private boolean mEnableSupportedHardwareAcceleratedFeatures;
private int mMixedContentMode = WebSettings.MIXED_CONTENT_NEVER_ALLOW; private int mMixedContentMode = WebSettings.MIXED_CONTENT_NEVER_ALLOW;
@@ -82,7 +82,7 @@ diff --git a/android_webview/java/src/org/chromium/android_webview/AwSettings.ja
@SpeculativeLoadingAllowedFlags @SpeculativeLoadingAllowedFlags
private int mSpeculativeLoadingAllowedFlags = private int mSpeculativeLoadingAllowedFlags =
@@ -1804,7 +1804,7 @@ public class AwSettings { @@ -1834,7 +1834,7 @@ public class AwSettings {
public void setAttributionBehavior(@AttributionBehavior int behavior) { public void setAttributionBehavior(@AttributionBehavior int behavior) {
synchronized (mAwSettingsLock) { synchronized (mAwSettingsLock) {
if (mAttributionBehavior != behavior) { if (mAttributionBehavior != behavior) {
@@ -102,7 +102,7 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro
<uses-permission-sdk-23 android:name="android.permission.BLUETOOTH_ADMIN" android:maxSdkVersion="30"/> <uses-permission-sdk-23 android:name="android.permission.BLUETOOTH_ADMIN" android:maxSdkVersion="30"/>
<uses-permission-sdk-23 android:name="android.permission.BLUETOOTH_CONNECT"/> <uses-permission-sdk-23 android:name="android.permission.BLUETOOTH_CONNECT"/>
<!-- <!--
@@ -1179,9 +1178,6 @@ by a child template that "extends" this file. @@ -1188,9 +1187,6 @@ by a child template that "extends" this file.
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|mcc|mnc|screenLayout|smallestScreenSize" > android:configChanges="orientation|keyboardHidden|keyboard|screenSize|mcc|mnc|screenLayout|smallestScreenSize" >
</activity> </activity>
@@ -115,7 +115,7 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/site_settings/ChromeSiteSettingsDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/site_settings/ChromeSiteSettingsDelegate.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/site_settings/ChromeSiteSettingsDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/site_settings/ChromeSiteSettingsDelegate.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/site_settings/ChromeSiteSettingsDelegate.java --- a/chrome/android/java/src/org/chromium/chrome/browser/site_settings/ChromeSiteSettingsDelegate.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/site_settings/ChromeSiteSettingsDelegate.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/site_settings/ChromeSiteSettingsDelegate.java
@@ -150,6 +150,8 @@ public class ChromeSiteSettingsDelegate implements SiteSettingsDelegate { @@ -151,6 +151,8 @@ public class ChromeSiteSettingsDelegate implements SiteSettingsDelegate {
// not great to dynamically remove the preference in this way. // not great to dynamically remove the preference in this way.
case SiteSettingsCategory.Type.ADS: case SiteSettingsCategory.Type.ADS:
return SiteSettingsCategory.adsCategoryEnabled(); return SiteSettingsCategory.adsCategoryEnabled();
@@ -139,7 +139,7 @@ diff --git a/chrome/browser/k_anonymity_service/k_anonymity_trust_token_getter.c
diff --git a/chrome/browser/resources/settings/privacy_page/privacy_page.html b/chrome/browser/resources/settings/privacy_page/privacy_page.html diff --git a/chrome/browser/resources/settings/privacy_page/privacy_page.html b/chrome/browser/resources/settings/privacy_page/privacy_page.html
--- a/chrome/browser/resources/settings/privacy_page/privacy_page.html --- a/chrome/browser/resources/settings/privacy_page/privacy_page.html
+++ b/chrome/browser/resources/settings/privacy_page/privacy_page.html +++ b/chrome/browser/resources/settings/privacy_page/privacy_page.html
@@ -588,11 +588,6 @@ @@ -395,11 +395,6 @@
</category-setting-exceptions> </category-setting-exceptions>
</settings-subpage> </settings-subpage>
</template> </template>
@@ -154,7 +154,7 @@ diff --git a/chrome/browser/resources/settings/privacy_page/privacy_page.html b/
diff --git a/chrome/browser/resources/settings/route.ts b/chrome/browser/resources/settings/route.ts diff --git a/chrome/browser/resources/settings/route.ts b/chrome/browser/resources/settings/route.ts
--- a/chrome/browser/resources/settings/route.ts --- a/chrome/browser/resources/settings/route.ts
+++ b/chrome/browser/resources/settings/route.ts +++ b/chrome/browser/resources/settings/route.ts
@@ -84,7 +84,7 @@ function addPrivacyChildRoutes(r: Partial<SettingsRoutes>) { @@ -97,7 +97,7 @@ function addPrivacyChildRoutes(r: Partial<SettingsRoutes>) {
r.SITE_SETTINGS.createChild('smartCardReaders'); r.SITE_SETTINGS.createChild('smartCardReaders');
} }
// </if> // </if>
@@ -166,7 +166,7 @@ diff --git a/chrome/browser/resources/settings/route.ts b/chrome/browser/resourc
diff --git a/chrome/browser/resources/settings/site_settings_page/site_settings_page.ts b/chrome/browser/resources/settings/site_settings_page/site_settings_page.ts diff --git a/chrome/browser/resources/settings/site_settings_page/site_settings_page.ts b/chrome/browser/resources/settings/site_settings_page/site_settings_page.ts
--- a/chrome/browser/resources/settings/site_settings_page/site_settings_page.ts --- a/chrome/browser/resources/settings/site_settings_page/site_settings_page.ts
+++ b/chrome/browser/resources/settings/site_settings_page/site_settings_page.ts +++ b/chrome/browser/resources/settings/site_settings_page/site_settings_page.ts
@@ -62,6 +62,7 @@ function getCategoryItemMap(): Map<ContentSettingsTypes, CategoryListItem> { @@ -65,6 +65,7 @@ function getCategoryItemMap(): Map<ContentSettingsTypes, CategoryListItem> {
route: routes.SITE_SETTINGS_AUTO_VERIFY, route: routes.SITE_SETTINGS_AUTO_VERIFY,
id: Id.ANTI_ABUSE, id: Id.ANTI_ABUSE,
label: 'siteSettingsAntiAbuse', label: 'siteSettingsAntiAbuse',
@@ -264,7 +264,7 @@ diff --git a/content/browser/aggregation_service/aggregatable_report_sender.cc b
diff --git a/content/browser/attribution_reporting/attribution_data_host_manager_impl.cc b/content/browser/attribution_reporting/attribution_data_host_manager_impl.cc diff --git a/content/browser/attribution_reporting/attribution_data_host_manager_impl.cc b/content/browser/attribution_reporting/attribution_data_host_manager_impl.cc
--- a/content/browser/attribution_reporting/attribution_data_host_manager_impl.cc --- a/content/browser/attribution_reporting/attribution_data_host_manager_impl.cc
+++ b/content/browser/attribution_reporting/attribution_data_host_manager_impl.cc +++ b/content/browser/attribution_reporting/attribution_data_host_manager_impl.cc
@@ -821,11 +821,9 @@ class AttributionDataHostManagerImpl::PendingRegistrationData { @@ -803,11 +803,9 @@ class AttributionDataHostManagerImpl::PendingRegistrationData {
headers->GetNormalizedHeader( headers->GetNormalizedHeader(
attribution_reporting::kAttributionReportingRegisterTriggerHeader); attribution_reporting::kAttributionReportingRegisterTriggerHeader);
@@ -278,7 +278,7 @@ diff --git a/content/browser/attribution_reporting/attribution_data_host_manager
const bool has_source = const bool has_source =
web_source_header.has_value() || os_source_header.has_value(); web_source_header.has_value() || os_source_header.has_value();
@@ -1184,6 +1182,8 @@ void AttributionDataHostManagerImpl::ParseHeader( @@ -1166,6 +1164,8 @@ void AttributionDataHostManagerImpl::ParseHeader(
Registrations& registrations, Registrations& registrations,
HeaderPendingDecode pending_decode, HeaderPendingDecode pending_decode,
Registrar registrar) { Registrar registrar) {
@@ -396,7 +396,7 @@ diff --git a/content/browser/attribution_reporting/attribution_storage_sql.cc b/
diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc 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 --- a/content/browser/renderer_host/render_frame_host_impl.cc
+++ b/content/browser/renderer_host/render_frame_host_impl.cc +++ b/content/browser/renderer_host/render_frame_host_impl.cc
@@ -10465,6 +10465,7 @@ bool RenderFrameHostImpl::IsFencedFrameReportingFromRendererAllowed( @@ -10473,6 +10473,7 @@ bool RenderFrameHostImpl::IsFencedFrameReportingFromRendererAllowed(
return false; return false;
} }
@@ -404,7 +404,7 @@ diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/b
if (!IsActive()) { if (!IsActive()) {
// reportEvent is not allowed when this RenderFrameHost or one of its // reportEvent is not allowed when this RenderFrameHost or one of its
// ancestors is not active. // ancestors is not active.
@@ -14415,6 +14416,16 @@ void RenderFrameHostImpl::BindTrustTokenQueryAnswerer( @@ -14437,6 +14438,16 @@ void RenderFrameHostImpl::BindTrustTokenQueryAnswerer(
return; return;
} }
@@ -927,7 +927,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/Attrib
diff --git a/content/public/browser/content_browser_client.cc b/content/public/browser/content_browser_client.cc diff --git a/content/public/browser/content_browser_client.cc b/content/public/browser/content_browser_client.cc
--- a/content/public/browser/content_browser_client.cc --- a/content/public/browser/content_browser_client.cc
+++ b/content/public/browser/content_browser_client.cc +++ b/content/public/browser/content_browser_client.cc
@@ -631,6 +631,7 @@ void ContentBrowserClient::OnAuctionComplete( @@ -648,6 +648,7 @@ void ContentBrowserClient::OnAuctionComplete(
network::mojom::AttributionSupport ContentBrowserClient::GetAttributionSupport( network::mojom::AttributionSupport ContentBrowserClient::GetAttributionSupport(
AttributionReportingOsApiState state, AttributionReportingOsApiState state,
bool client_os_disabled) { bool client_os_disabled) {
@@ -935,7 +935,7 @@ diff --git a/content/public/browser/content_browser_client.cc b/content/public/b
switch (state) { switch (state) {
case AttributionReportingOsApiState::kDisabled: case AttributionReportingOsApiState::kDisabled:
return network::mojom::AttributionSupport::kWeb; return network::mojom::AttributionSupport::kWeb;
@@ -648,13 +649,13 @@ bool ContentBrowserClient::IsAttributionReportingOperationAllowed( @@ -665,13 +666,13 @@ bool ContentBrowserClient::IsAttributionReportingOperationAllowed(
const url::Origin* destination_origin, const url::Origin* destination_origin,
const url::Origin* reporting_origin, const url::Origin* reporting_origin,
bool* can_bypass) { bool* can_bypass) {
@@ -951,7 +951,7 @@ diff --git a/content/public/browser/content_browser_client.cc b/content/public/b
} }
bool ContentBrowserClient::IsAttributionReportingAllowedForContext( bool ContentBrowserClient::IsAttributionReportingAllowedForContext(
@@ -662,7 +663,7 @@ bool ContentBrowserClient::IsAttributionReportingAllowedForContext( @@ -679,7 +680,7 @@ bool ContentBrowserClient::IsAttributionReportingAllowedForContext(
content::RenderFrameHost* rfh, content::RenderFrameHost* rfh,
const url::Origin& context_origin, const url::Origin& context_origin,
const url::Origin& reporting_origin) { const url::Origin& reporting_origin) {
@@ -1005,7 +1005,7 @@ diff --git a/services/network/attribution/request_headers_internal.cc b/services
diff --git a/services/network/network_context.cc b/services/network/network_context.cc diff --git a/services/network/network_context.cc b/services/network/network_context.cc
--- a/services/network/network_context.cc --- a/services/network/network_context.cc
+++ b/services/network/network_context.cc +++ b/services/network/network_context.cc
@@ -1318,6 +1318,10 @@ void NetworkContext::ClearTrustTokenData(mojom::ClearDataFilterPtr filter, @@ -1316,6 +1316,10 @@ void NetworkContext::ClearTrustTokenData(mojom::ClearDataFilterPtr filter,
void NetworkContext::ClearTrustTokenSessionOnlyData( void NetworkContext::ClearTrustTokenSessionOnlyData(
ClearTrustTokenSessionOnlyDataCallback callback) { ClearTrustTokenSessionOnlyDataCallback callback) {
@@ -1016,7 +1016,7 @@ diff --git a/services/network/network_context.cc b/services/network/network_cont
// Only called when Private State Tokens is enabled, i.e., // Only called when Private State Tokens is enabled, i.e.,
// `trust_token_store_` is non-null. // `trust_token_store_` is non-null.
DCHECK(trust_token_store_); DCHECK(trust_token_store_);
@@ -2731,26 +2735,6 @@ URLRequestContextOwner NetworkContext::MakeURLRequestContext( @@ -2733,26 +2737,6 @@ URLRequestContextOwner NetworkContext::MakeURLRequestContext(
builder.set_network_quality_estimator( builder.set_network_quality_estimator(
network_service_->network_quality_estimator()); network_service_->network_quality_estimator());
} }
@@ -1077,7 +1077,7 @@ diff --git a/third_party/blink/renderer/core/frame/attribution_src_loader.cc b/t
diff --git a/third_party/blink/renderer/core/page/page.cc b/third_party/blink/renderer/core/page/page.cc diff --git a/third_party/blink/renderer/core/page/page.cc b/third_party/blink/renderer/core/page/page.cc
--- a/third_party/blink/renderer/core/page/page.cc --- a/third_party/blink/renderer/core/page/page.cc
+++ b/third_party/blink/renderer/core/page/page.cc +++ b/third_party/blink/renderer/core/page/page.cc
@@ -1604,7 +1604,7 @@ void Page::UpdateBrowsingContextGroup( @@ -1618,7 +1618,7 @@ void Page::UpdateBrowsingContextGroup(
void Page::SetAttributionSupport( void Page::SetAttributionSupport(
network::mojom::AttributionSupport attribution_support) { network::mojom::AttributionSupport attribution_support) {
@@ -1100,7 +1100,7 @@ diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5
origin_trial_feature_name: "AdInterestGroupAPI", origin_trial_feature_name: "AdInterestGroupAPI",
implied_by: ["Fledge", "Parakeet"], implied_by: ["Fledge", "Parakeet"],
public: true, public: true,
@@ -558,8 +558,8 @@ @@ -577,8 +577,8 @@
status: "stable", status: "stable",
}, },
{ {
@@ -1111,7 +1111,7 @@ diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5
base_feature: "none", base_feature: "none",
public: true, public: true,
}, },
@@ -3778,8 +3778,8 @@ @@ -3804,8 +3804,8 @@
base_feature: "none", base_feature: "none",
}, },
{ {
@@ -1122,7 +1122,7 @@ diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5
base_feature: "none", base_feature: "none",
public: true, public: true,
}, },
@@ -4983,16 +4983,16 @@ @@ -5019,16 +5019,16 @@
status: "stable", status: "stable",
}, },
{ {
+3 -3
View File
@@ -12,7 +12,7 @@ Subject: Disable crash reporting
diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc 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 --- a/chrome/browser/chrome_content_browser_client.cc
+++ b/chrome/browser/chrome_content_browser_client.cc +++ b/chrome/browser/chrome_content_browser_client.cc
@@ -2719,15 +2719,6 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches( @@ -2851,15 +2851,6 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches(
base::NumberToString(pid)); base::NumberToString(pid));
} }
#endif #endif
@@ -31,7 +31,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc 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 --- a/content/browser/renderer_host/render_frame_host_impl.cc
+++ b/content/browser/renderer_host/render_frame_host_impl.cc +++ b/content/browser/renderer_host/render_frame_host_impl.cc
@@ -16087,6 +16087,7 @@ void RenderFrameHostImpl::OnSameDocumentCommitProcessed( @@ -16119,6 +16119,7 @@ void RenderFrameHostImpl::OnSameDocumentCommitProcessed(
void RenderFrameHostImpl::MaybeGenerateCrashReport( void RenderFrameHostImpl::MaybeGenerateCrashReport(
base::TerminationStatus status, base::TerminationStatus status,
int exit_code) { int exit_code) {
@@ -42,7 +42,7 @@ diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/b
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
--- a/content/browser/web_contents/web_contents_impl.cc --- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc
@@ -10263,7 +10263,7 @@ void WebContentsImpl::RendererUnresponsive( @@ -10237,7 +10237,7 @@ void WebContentsImpl::RendererUnresponsive(
base::UmaHistogramEnumeration( base::UmaHistogramEnumeration(
"ReportingAndNEL.UnresponsiveRenderer.CrashReportOutcome", outcome); "ReportingAndNEL.UnresponsiveRenderer.CrashReportOutcome", outcome);
@@ -20,7 +20,7 @@ new file mode 100644
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 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 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -1436,8 +1436,7 @@ @@ -1478,8 +1478,7 @@
status: "test", status: "test",
}, },
{ {
@@ -39,7 +39,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/android_webview/browser/aw_browser_context.cc b/android_webview/browser/aw_browser_context.cc diff --git a/android_webview/browser/aw_browser_context.cc b/android_webview/browser/aw_browser_context.cc
--- a/android_webview/browser/aw_browser_context.cc --- a/android_webview/browser/aw_browser_context.cc
+++ b/android_webview/browser/aw_browser_context.cc +++ b/android_webview/browser/aw_browser_context.cc
@@ -514,6 +514,7 @@ AwBrowserContext::RetrieveInProgressDownloadManager() { @@ -515,6 +515,7 @@ AwBrowserContext::RetrieveInProgressDownloadManager() {
content::OriginTrialsControllerDelegate* content::OriginTrialsControllerDelegate*
AwBrowserContext::GetOriginTrialsControllerDelegate() { AwBrowserContext::GetOriginTrialsControllerDelegate() {
@@ -157,7 +157,7 @@ diff --git a/chrome/browser/metrics/chrome_browser_sampling_trials.cc b/chrome/b
diff --git a/chrome/browser/net/system_network_context_manager.cc b/chrome/browser/net/system_network_context_manager.cc 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 --- a/chrome/browser/net/system_network_context_manager.cc
+++ b/chrome/browser/net/system_network_context_manager.cc +++ b/chrome/browser/net/system_network_context_manager.cc
@@ -930,7 +930,6 @@ void SystemNetworkContextManager::AddSSLConfigToNetworkContextParams( @@ -926,7 +926,6 @@ void SystemNetworkContextManager::AddSSLConfigToNetworkContextParams(
void SystemNetworkContextManager::ConfigureDefaultNetworkContextParams( void SystemNetworkContextManager::ConfigureDefaultNetworkContextParams(
network::mojom::NetworkContextParams* network_context_params) { network::mojom::NetworkContextParams* network_context_params) {
@@ -272,7 +272,7 @@ diff --git a/components/variations/net/BUILD.gn b/components/variations/net/BUIL
diff --git a/components/variations/net/variations_http_headers.cc b/components/variations/net/variations_http_headers.cc diff --git a/components/variations/net/variations_http_headers.cc b/components/variations/net/variations_http_headers.cc
--- a/components/variations/net/variations_http_headers.cc --- a/components/variations/net/variations_http_headers.cc
+++ b/components/variations/net/variations_http_headers.cc +++ b/components/variations/net/variations_http_headers.cc
@@ -248,6 +248,8 @@ class VariationsHeaderHelper { @@ -252,6 +252,8 @@ class VariationsHeaderHelper {
VariationsHeaderHelper& operator=(const VariationsHeaderHelper&) = delete; VariationsHeaderHelper& operator=(const VariationsHeaderHelper&) = delete;
bool AppendHeaderIfNeeded(const GURL& url, InIncognito incognito) { bool AppendHeaderIfNeeded(const GURL& url, InIncognito incognito) {
@@ -292,8 +292,8 @@ diff --git a/components/variations/service/variations_field_trial_creator.cc b/c
// Determines whether the field trial testing config defined in // Determines whether the field trial testing config defined in
// testing/variations/fieldtrial_testing_config.json should be applied. If the // testing/variations/fieldtrial_testing_config.json should be applied. If the
// "disable_fieldtrial_testing_config" GN flag is set to true, then the testing // "disable_fieldtrial_testing_config" GN flag is set to true, then the testing
@@ -319,9 +320,6 @@ bool VariationsFieldTrialCreator::SetUpFieldTrials( @@ -334,9 +335,6 @@ bool VariationsFieldTrialCreator::SetUpFieldTrials(
std::move(client_filterable_state)); metrics_state_manager->GetLowEntropySource());
} }
- platform_field_trials->SetUpClientSideFieldTrials( - platform_field_trials->SetUpClientSideFieldTrials(
@@ -302,15 +302,15 @@ diff --git a/components/variations/service/variations_field_trial_creator.cc b/c
platform_field_trials->RegisterFeatureOverrides(feature_list.get()); platform_field_trials->RegisterFeatureOverrides(feature_list.get());
base::FeatureList::SetInstance(std::move(feature_list)); base::FeatureList::SetInstance(std::move(feature_list));
@@ -651,6 +649,7 @@ CreateTrialsResult VariationsFieldTrialCreator::CreateTrialsFromSeed( @@ -667,6 +665,7 @@ CreateTrialsResult VariationsFieldTrialCreator::CreateTrialsFromSeed(
base::FeatureList* feature_list, base::FeatureList* feature_list,
SafeSeedManagerBase* safe_seed_manager, SafeSeedManager* safe_seed_manager,
std::unique_ptr<ClientFilterableState> client_state) { std::unique_ptr<ClientFilterableState> client_state) {
+ if ((true)) return CreateTrialsResult{.applied_seed = false}; + if ((true)) return CreateTrialsResult{.applied_seed = false};
// This histogram name uses "VariationsFieldTrialCreator" rather than
// "VariationsFieldTrialCreator" for consistency with historical data
TRACE_EVENT0("startup", "VariationsFieldTrialCreator::CreateTrialsFromSeed"); TRACE_EVENT0("startup", "VariationsFieldTrialCreator::CreateTrialsFromSeed");
@@ -764,6 +763,7 @@ CreateTrialsResult VariationsFieldTrialCreator::CreateTrialsFromSeed( DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
CHECK(!create_trials_from_seed_called_);
@@ -780,6 +779,7 @@ CreateTrialsResult VariationsFieldTrialCreator::CreateTrialsFromSeed(
void VariationsFieldTrialCreator::LoadSeedFromJsonFile( void VariationsFieldTrialCreator::LoadSeedFromJsonFile(
const base::FilePath& json_seed_path) { const base::FilePath& json_seed_path) {
@@ -321,7 +321,7 @@ diff --git a/components/variations/service/variations_field_trial_creator.cc b/c
diff --git a/components/variations/service/variations_service.cc b/components/variations/service/variations_service.cc diff --git a/components/variations/service/variations_service.cc b/components/variations/service/variations_service.cc
--- a/components/variations/service/variations_service.cc --- a/components/variations/service/variations_service.cc
+++ b/components/variations/service/variations_service.cc +++ b/components/variations/service/variations_service.cc
@@ -223,22 +223,7 @@ bool GetInstanceManipulations(const net::HttpResponseHeaders* headers, @@ -224,22 +224,7 @@ bool GetInstanceManipulations(const net::HttpResponseHeaders* headers,
// Variations seed fetching is only enabled in official Chrome builds, if a URL // Variations seed fetching is only enabled in official Chrome builds, if a URL
// is specified on the command line, and for testing. // is specified on the command line, and for testing.
bool IsFetchingEnabled() { bool IsFetchingEnabled() {
@@ -345,7 +345,7 @@ diff --git a/components/variations/service/variations_service.cc b/components/va
} }
// Returns the already downloaded first run seed, and clear the seed from the // Returns the already downloaded first run seed, and clear the seed from the
@@ -626,7 +611,7 @@ bool VariationsService::DoFetchFromURL(const GURL& url, bool is_http_retry) { @@ -628,7 +613,7 @@ bool VariationsService::DoFetchFromURL(const GURL& url, bool is_http_retry) {
// debugger or if the machine was suspended) and OnURLFetchComplete() hasn't // debugger or if the machine was suspended) and OnURLFetchComplete() hasn't
// had a chance to run yet from the previous request. In this case, don't // had a chance to run yet from the previous request. In this case, don't
// start a new request and just let the previous one finish. // start a new request and just let the previous one finish.
@@ -393,7 +393,7 @@ diff --git a/content/browser/origin_trials/origin_trials_utils.cc b/content/brow
diff --git a/content/browser/renderer_host/navigation_request.cc b/content/browser/renderer_host/navigation_request.cc diff --git a/content/browser/renderer_host/navigation_request.cc b/content/browser/renderer_host/navigation_request.cc
--- a/content/browser/renderer_host/navigation_request.cc --- a/content/browser/renderer_host/navigation_request.cc
+++ b/content/browser/renderer_host/navigation_request.cc +++ b/content/browser/renderer_host/navigation_request.cc
@@ -843,6 +843,7 @@ void PersistOriginTrialsFromHeaders( @@ -836,6 +836,7 @@ void PersistOriginTrialsFromHeaders(
const network::mojom::URLResponseHead* response, const network::mojom::URLResponseHead* response,
BrowserContext* browser_context, BrowserContext* browser_context,
ukm::SourceId source_id) { ukm::SourceId source_id) {
+1 -1
View File
@@ -31,7 +31,7 @@ new file mode 100644
diff --git a/services/network/public/cpp/permissions_policy/permissions_policy_features.json5 b/services/network/public/cpp/permissions_policy/permissions_policy_features.json5 diff --git a/services/network/public/cpp/permissions_policy/permissions_policy_features.json5 b/services/network/public/cpp/permissions_policy/permissions_policy_features.json5
--- a/services/network/public/cpp/permissions_policy/permissions_policy_features.json5 --- a/services/network/public/cpp/permissions_policy/permissions_policy_features.json5
+++ b/services/network/public/cpp/permissions_policy/permissions_policy_features.json5 +++ b/services/network/public/cpp/permissions_policy/permissions_policy_features.json5
@@ -375,6 +375,7 @@ @@ -380,6 +380,7 @@
{ {
name: "IdleDetection", name: "IdleDetection",
permissions_policy_name: "idle-detection", permissions_policy_name: "idle-detection",
@@ -43,7 +43,7 @@ diff --git a/chrome/browser/media/router/media_router_feature.cc b/chrome/browse
diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/profile_impl.cc diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/profile_impl.cc
--- a/chrome/browser/profiles/profile_impl.cc --- a/chrome/browser/profiles/profile_impl.cc
+++ b/chrome/browser/profiles/profile_impl.cc +++ b/chrome/browser/profiles/profile_impl.cc
@@ -429,7 +429,7 @@ void ProfileImpl::RegisterProfilePrefs( @@ -428,7 +428,7 @@ void ProfileImpl::RegisterProfilePrefs(
#endif #endif
registry->RegisterBooleanPref(prefs::kForceEphemeralProfiles, false); registry->RegisterBooleanPref(prefs::kForceEphemeralProfiles, false);
@@ -55,7 +55,7 @@ diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/p
diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.cc diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.cc
--- a/content/child/runtime_features.cc --- a/content/child/runtime_features.cc
+++ b/content/child/runtime_features.cc +++ b/content/child/runtime_features.cc
@@ -540,6 +540,8 @@ void SetCustomizedRuntimeFeaturesFromCombinedArgs( @@ -543,6 +543,8 @@ void SetCustomizedRuntimeFeaturesFromCombinedArgs(
WebRuntimeFeatures::EnableV8IdleTasks(true); WebRuntimeFeatures::EnableV8IdleTasks(true);
} }
@@ -79,7 +79,7 @@ diff --git a/third_party/blink/renderer/modules/remoteplayback/remote_playback.c
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 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 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -3969,14 +3969,10 @@ @@ -4006,14 +4006,10 @@
base_feature: "none", base_feature: "none",
}, },
{ {
@@ -18,7 +18,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/share_sheet/ShareSheetBottomSheetContent.java b/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/share_sheet/ShareSheetBottomSheetContent.java diff --git a/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/share_sheet/ShareSheetBottomSheetContent.java b/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/share_sheet/ShareSheetBottomSheetContent.java
--- a/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/share_sheet/ShareSheetBottomSheetContent.java --- a/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/share_sheet/ShareSheetBottomSheetContent.java
+++ b/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/share_sheet/ShareSheetBottomSheetContent.java +++ b/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/share_sheet/ShareSheetBottomSheetContent.java
@@ -270,9 +270,7 @@ class ShareSheetBottomSheetContent implements BottomSheetContent, OnItemClickLis @@ -275,9 +275,7 @@ class ShareSheetBottomSheetContent implements BottomSheetContent, OnItemClickLis
ShareSheetLinkToggleCoordinator shareSheetLinkToggleCoordinator) { ShareSheetLinkToggleCoordinator shareSheetLinkToggleCoordinator) {
// Default preview is to show title + url. // Default preview is to show title + url.
String title = mParams.getTitle(); String title = mParams.getTitle();
@@ -56,7 +56,7 @@ diff --git a/chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.cc b/c
diff --git a/chrome/browser/ui/views/page_info/page_info_main_view.cc b/chrome/browser/ui/views/page_info/page_info_main_view.cc diff --git a/chrome/browser/ui/views/page_info/page_info_main_view.cc b/chrome/browser/ui/views/page_info/page_info_main_view.cc
--- a/chrome/browser/ui/views/page_info/page_info_main_view.cc --- a/chrome/browser/ui/views/page_info/page_info_main_view.cc
+++ b/chrome/browser/ui/views/page_info/page_info_main_view.cc +++ b/chrome/browser/ui/views/page_info/page_info_main_view.cc
@@ -628,39 +628,42 @@ void PageInfoMainView::ChildPreferredSizeChanged(views::View* child) { @@ -629,39 +629,42 @@ void PageInfoMainView::ChildPreferredSizeChanged(views::View* child) {
} }
std::unique_ptr<views::View> PageInfoMainView::CreateBubbleHeaderView() { std::unique_ptr<views::View> PageInfoMainView::CreateBubbleHeaderView() {
@@ -158,7 +158,7 @@ diff --git a/components/omnibox/browser/titled_url_match_utils.cc b/components/o
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 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 --- 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 +++ b/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoController.java
@@ -223,8 +223,7 @@ public class PageInfoController @@ -222,8 +222,7 @@ public class PageInfoController
OmniboxUrlEmphasizer.getOriginEndIndex( OmniboxUrlEmphasizer.getOriginEndIndex(
displayUrlBuilder.toString(), autocompleteSchemeClassifier); displayUrlBuilder.toString(), autocompleteSchemeClassifier);
autocompleteSchemeClassifier.destroy(); autocompleteSchemeClassifier.destroy();
@@ -10,7 +10,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc
--- a/third_party/blink/renderer/core/frame/local_frame.cc --- a/third_party/blink/renderer/core/frame/local_frame.cc
+++ b/third_party/blink/renderer/core/frame/local_frame.cc +++ b/third_party/blink/renderer/core/frame/local_frame.cc
@@ -2364,9 +2364,7 @@ const mojom::RendererContentSettingsPtr& LocalFrame::GetContentSettings() @@ -2382,9 +2382,7 @@ const mojom::RendererContentSettingsPtr& LocalFrame::GetContentSettings()
} }
PluginData* LocalFrame::GetPluginData() const { PluginData* LocalFrame::GetPluginData() const {
@@ -38,15 +38,15 @@ diff --git a/ui/gfx/animation/animation_linux.cc b/ui/gfx/animation/animation_li
diff --git a/ui/gfx/animation/animation_win.cc b/ui/gfx/animation/animation_win.cc diff --git a/ui/gfx/animation/animation_win.cc b/ui/gfx/animation/animation_win.cc
--- a/ui/gfx/animation/animation_win.cc --- a/ui/gfx/animation/animation_win.cc
+++ b/ui/gfx/animation/animation_win.cc +++ b/ui/gfx/animation/animation_win.cc
@@ -12,6 +12,7 @@ namespace gfx { @@ -17,6 +17,7 @@ std::optional<bool> Animation::has_reduced_motion_platform_parameter_{};
// static // static
bool Animation::ShouldRenderRichAnimationImpl() { bool Animation::ShouldRenderRichAnimationImpl() {
+ if ((true)) return true; + if ((true)) return true;
BOOL result; // WM_SETTINGCHANGE messages are broadcasted when SystemParametersInfo()
// Get "Turn off all unnecessary animations" value. // causes modifications. UpdatePrefersReducedMotion() is called when such an
if (::SystemParametersInfo(SPI_GETCLIENTAREAANIMATION, 0, &result, 0)) { // event is received.
@@ -27,6 +28,8 @@ bool Animation::ScrollAnimationsEnabledBySystem() { @@ -44,6 +45,8 @@ bool Animation::ScrollAnimationsEnabledBySystem() {
// static // static
void Animation::UpdatePrefersReducedMotion() { void Animation::UpdatePrefersReducedMotion() {
@@ -50,7 +50,7 @@ diff --git a/third_party/blink/renderer/core/preferences/preference_manager.idl
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 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 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -3726,6 +3726,10 @@ @@ -3754,6 +3754,10 @@
name: "PrefersReducedData", name: "PrefersReducedData",
status: "experimental", status: "experimental",
}, },
@@ -48,9 +48,9 @@ diff --git a/chrome/browser/password_manager/android/password_store_android_back
bool PasswordStoreAndroidBackendBridgeHelperImpl:: bool PasswordStoreAndroidBackendBridgeHelperImpl::
CanUseGetAllLoginsWithBrandingInfoAPI() { CanUseGetAllLoginsWithBrandingInfoAPI() {
+ if ((true)) return false; + if ((true)) return false;
base::android::BuildInfo* info = base::android::BuildInfo::GetInstance();
int current_gms_core_version; int current_gms_core_version;
if (!base::StringToInt(info->gms_version_code(), &current_gms_core_version)) { if (!base::StringToInt(base::android::device_info::gms_version_code(),
&current_gms_core_version)) {
diff --git a/chrome/browser/password_manager/factories/password_sender_service_factory.cc b/chrome/browser/password_manager/factories/password_sender_service_factory.cc diff --git a/chrome/browser/password_manager/factories/password_sender_service_factory.cc b/chrome/browser/password_manager/factories/password_sender_service_factory.cc
--- a/chrome/browser/password_manager/factories/password_sender_service_factory.cc --- a/chrome/browser/password_manager/factories/password_sender_service_factory.cc
+++ b/chrome/browser/password_manager/factories/password_sender_service_factory.cc +++ b/chrome/browser/password_manager/factories/password_sender_service_factory.cc
@@ -144,7 +144,7 @@ diff --git a/components/password_manager/core/browser/affiliation/password_affil
diff --git a/components/password_manager/core/browser/leak_detection/leak_detection_check_factory_impl.cc b/components/password_manager/core/browser/leak_detection/leak_detection_check_factory_impl.cc diff --git a/components/password_manager/core/browser/leak_detection/leak_detection_check_factory_impl.cc b/components/password_manager/core/browser/leak_detection/leak_detection_check_factory_impl.cc
--- a/components/password_manager/core/browser/leak_detection/leak_detection_check_factory_impl.cc --- a/components/password_manager/core/browser/leak_detection/leak_detection_check_factory_impl.cc
+++ b/components/password_manager/core/browser/leak_detection/leak_detection_check_factory_impl.cc +++ b/components/password_manager/core/browser/leak_detection/leak_detection_check_factory_impl.cc
@@ -41,6 +41,11 @@ LeakDetectionCheckFactoryImpl::TryCreateLeakCheck( @@ -45,6 +45,11 @@ LeakDetectionCheckFactoryImpl::TryCreateLeakCheck(
version_info::Channel channel) const { version_info::Channel channel) const {
CHECK(identity_manager); CHECK(identity_manager);
@@ -172,7 +172,7 @@ diff --git a/components/password_manager/core/browser/leak_detection/leak_detect
diff --git a/components/password_manager/core/browser/password_manager.cc b/components/password_manager/core/browser/password_manager.cc diff --git a/components/password_manager/core/browser/password_manager.cc b/components/password_manager/core/browser/password_manager.cc
--- a/components/password_manager/core/browser/password_manager.cc --- a/components/password_manager/core/browser/password_manager.cc
+++ b/components/password_manager/core/browser/password_manager.cc +++ b/components/password_manager/core/browser/password_manager.cc
@@ -575,7 +575,7 @@ void PasswordManager::RegisterProfilePrefs( @@ -582,7 +582,7 @@ void PasswordManager::RegisterProfilePrefs(
#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || \ #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || \
BUILDFLAG(IS_CHROMEOS) BUILDFLAG(IS_CHROMEOS)
registry->RegisterBooleanPref(prefs::kBiometricAuthenticationBeforeFilling, registry->RegisterBooleanPref(prefs::kBiometricAuthenticationBeforeFilling,
@@ -181,7 +181,7 @@ diff --git a/components/password_manager/core/browser/password_manager.cc b/comp
#endif // BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || #endif // BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) ||
// BUILDFLAG(IS_CHROMEOS) // BUILDFLAG(IS_CHROMEOS)
#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_IOS) // Desktop #if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_IOS) // Desktop
@@ -608,7 +608,7 @@ void PasswordManager::RegisterProfilePrefs( @@ -611,7 +611,7 @@ void PasswordManager::RegisterProfilePrefs(
registry->RegisterBooleanPref(prefs::kAccountStoreMigratedToOSCryptAsync, registry->RegisterBooleanPref(prefs::kAccountStoreMigratedToOSCryptAsync,
false); false);
registry->RegisterBooleanPref( registry->RegisterBooleanPref(
+25 -26
View File
@@ -15,7 +15,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../first_party_sets_navigation_throttle.cc | 2 +- .../first_party_sets_navigation_throttle.cc | 2 +-
.../first_party_sets_policy_service.cc | 3 ++- .../first_party_sets_policy_service.cc | 3 ++-
chrome/browser/privacy_sandbox/BUILD.gn | 1 - chrome/browser/privacy_sandbox/BUILD.gn | 1 -
.../privacy_sandbox_service_impl.cc | 4 ++-- .../privacy_sandbox_service_impl.cc | 3 ++-
.../privacy_sandbox_settings_delegate.cc | 1 + .../privacy_sandbox_settings_delegate.cc | 1 +
.../settings/privacy_page/cookies_page.ts | 2 +- .../settings/privacy_page/cookies_page.ts | 2 +-
chrome/test/BUILD.gn | 2 -- chrome/test/BUILD.gn | 2 --
@@ -36,7 +36,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../features_cc/Disable-privacy-sandbox.inc | 1 + .../features_cc/Disable-privacy-sandbox.inc | 1 +
.../features_cc/Disable-privacy-sandbox.inc | 1 + .../features_cc/Disable-privacy-sandbox.inc | 1 +
third_party/blink/common/features.cc | 1 + third_party/blink/common/features.cc | 1 +
26 files changed, 55 insertions(+), 47 deletions(-) 26 files changed, 55 insertions(+), 46 deletions(-)
create mode 100644 cromite_flags/content/common/features_cc/Disable-privacy-sandbox.inc create mode 100644 cromite_flags/content/common/features_cc/Disable-privacy-sandbox.inc
create mode 100644 cromite_flags/content/public/common/content_features_cc/Disable-privacy-sandbox.inc create mode 100644 cromite_flags/content/public/common/content_features_cc/Disable-privacy-sandbox.inc
create mode 100644 cromite_flags/services/network/public/cpp/features_cc/Disable-privacy-sandbox.inc create mode 100644 cromite_flags/services/network/public/cpp/features_cc/Disable-privacy-sandbox.inc
@@ -56,7 +56,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc 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 --- a/chrome/browser/chrome_content_browser_client.cc
+++ b/chrome/browser/chrome_content_browser_client.cc +++ b/chrome/browser/chrome_content_browser_client.cc
@@ -3486,6 +3486,9 @@ bool ChromeContentBrowserClient::IsAttributionReportingOperationAllowed( @@ -3619,6 +3619,9 @@ bool ChromeContentBrowserClient::IsAttributionReportingOperationAllowed(
const url::Origin* destination_origin, const url::Origin* destination_origin,
const url::Origin* reporting_origin, const url::Origin* reporting_origin,
bool* can_bypass) { bool* can_bypass) {
@@ -66,7 +66,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
Profile* profile = Profile::FromBrowserContext(browser_context); Profile* profile = Profile::FromBrowserContext(browser_context);
auto* privacy_sandbox_settings = auto* privacy_sandbox_settings =
@@ -7931,7 +7934,7 @@ bool ChromeContentBrowserClient::ShouldDisableOriginAgentClusterDefault( @@ -8113,7 +8116,7 @@ bool ChromeContentBrowserClient::ShouldDisableOriginAgentClusterDefault(
} }
bool ChromeContentBrowserClient::WillProvidePublicFirstPartySets() { bool ChromeContentBrowserClient::WillProvidePublicFirstPartySets() {
@@ -110,7 +110,7 @@ diff --git a/chrome/browser/first_party_sets/first_party_sets_policy_service.cc
diff --git a/chrome/browser/privacy_sandbox/BUILD.gn b/chrome/browser/privacy_sandbox/BUILD.gn diff --git a/chrome/browser/privacy_sandbox/BUILD.gn b/chrome/browser/privacy_sandbox/BUILD.gn
--- a/chrome/browser/privacy_sandbox/BUILD.gn --- a/chrome/browser/privacy_sandbox/BUILD.gn
+++ b/chrome/browser/privacy_sandbox/BUILD.gn +++ b/chrome/browser/privacy_sandbox/BUILD.gn
@@ -167,7 +167,6 @@ if (!is_android) { @@ -162,7 +162,6 @@ if (!is_android) {
"//components/privacy_sandbox:test_support", "//components/privacy_sandbox:test_support",
"//components/privacy_sandbox/privacy_sandbox_attestations", "//components/privacy_sandbox/privacy_sandbox_attestations",
"//components/privacy_sandbox/privacy_sandbox_attestations:metrics", "//components/privacy_sandbox/privacy_sandbox_attestations:metrics",
@@ -121,16 +121,15 @@ diff --git a/chrome/browser/privacy_sandbox/BUILD.gn b/chrome/browser/privacy_sa
diff --git a/chrome/browser/privacy_sandbox/privacy_sandbox_service_impl.cc b/chrome/browser/privacy_sandbox/privacy_sandbox_service_impl.cc diff --git a/chrome/browser/privacy_sandbox/privacy_sandbox_service_impl.cc b/chrome/browser/privacy_sandbox/privacy_sandbox_service_impl.cc
--- a/chrome/browser/privacy_sandbox/privacy_sandbox_service_impl.cc --- a/chrome/browser/privacy_sandbox/privacy_sandbox_service_impl.cc
+++ b/chrome/browser/privacy_sandbox/privacy_sandbox_service_impl.cc +++ b/chrome/browser/privacy_sandbox/privacy_sandbox_service_impl.cc
@@ -576,7 +576,7 @@ bool PrivacySandboxServiceImpl::UpdateAndGetSuppressionReason() { @@ -617,6 +617,7 @@ bool PrivacySandboxServiceImpl::UpdateAndGetSuppressionReason() {
}
PromptType PrivacySandboxServiceImpl::GetRequiredPromptType( bool PrivacySandboxServiceImpl::ShouldDisablePrompt() {
SurfaceType surface_type) { + if ((true)) return true;
-
+ if ((true)) return PromptType::kNone;
// If the profile isn't a regular profile, no prompt should ever be shown. // If the profile isn't a regular profile, no prompt should ever be shown.
if (!IsRegularProfile(profile_type_)) { if (!IsRegularProfile(profile_type_)) {
return PromptType::kNone; return true;
@@ -799,7 +799,7 @@ bool PrivacySandboxServiceImpl::IsRestrictedNoticeEnabled() { @@ -853,7 +854,7 @@ bool PrivacySandboxServiceImpl::IsRestrictedNoticeEnabled() {
void PrivacySandboxServiceImpl::SetRelatedWebsiteSetsDataAccessEnabled( void PrivacySandboxServiceImpl::SetRelatedWebsiteSetsDataAccessEnabled(
bool enabled) { bool enabled) {
pref_service_->SetBoolean(prefs::kPrivacySandboxRelatedWebsiteSetsEnabled, pref_service_->SetBoolean(prefs::kPrivacySandboxRelatedWebsiteSetsEnabled,
@@ -153,7 +152,7 @@ diff --git a/chrome/browser/privacy_sandbox/privacy_sandbox_settings_delegate.cc
diff --git a/chrome/browser/resources/settings/privacy_page/cookies_page.ts b/chrome/browser/resources/settings/privacy_page/cookies_page.ts diff --git a/chrome/browser/resources/settings/privacy_page/cookies_page.ts b/chrome/browser/resources/settings/privacy_page/cookies_page.ts
--- a/chrome/browser/resources/settings/privacy_page/cookies_page.ts --- a/chrome/browser/resources/settings/privacy_page/cookies_page.ts
+++ b/chrome/browser/resources/settings/privacy_page/cookies_page.ts +++ b/chrome/browser/resources/settings/privacy_page/cookies_page.ts
@@ -249,7 +249,7 @@ export class SettingsCookiesPageElement extends SettingsCookiesPageElementBase { @@ -225,7 +225,7 @@ export class SettingsCookiesPageElement extends SettingsCookiesPageElementBase {
} }
private relatedWebsiteSetsToggleDisabled_() { private relatedWebsiteSetsToggleDisabled_() {
@@ -165,7 +164,7 @@ diff --git a/chrome/browser/resources/settings/privacy_page/cookies_page.ts b/ch
diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn
--- a/chrome/test/BUILD.gn --- a/chrome/test/BUILD.gn
+++ b/chrome/test/BUILD.gn +++ b/chrome/test/BUILD.gn
@@ -1907,8 +1907,6 @@ if (is_android) { @@ -1936,8 +1936,6 @@ if (is_android) {
"//components/privacy_sandbox/privacy_sandbox_attestations", "//components/privacy_sandbox/privacy_sandbox_attestations",
"//components/privacy_sandbox/privacy_sandbox_attestations:metrics", "//components/privacy_sandbox/privacy_sandbox_attestations:metrics",
"//components/privacy_sandbox/privacy_sandbox_attestations:test_support", "//components/privacy_sandbox/privacy_sandbox_attestations:test_support",
@@ -177,7 +176,7 @@ diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn
diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/RwsCookieSettings.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/RwsCookieSettings.java diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/RwsCookieSettings.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/RwsCookieSettings.java
--- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/RwsCookieSettings.java --- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/RwsCookieSettings.java
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/RwsCookieSettings.java +++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/RwsCookieSettings.java
@@ -148,7 +148,7 @@ public class RwsCookieSettings extends BaseSiteSettingsFragment @@ -130,7 +130,7 @@ public class RwsCookieSettings extends BaseSiteSettingsFragment
mAllowRwsPreference.setChecked( mAllowRwsPreference.setChecked(
getSiteSettingsDelegate().isRelatedWebsiteSetsDataAccessEnabled()); getSiteSettingsDelegate().isRelatedWebsiteSetsDataAccessEnabled());
@@ -186,7 +185,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
mAllowRwsPreference.setEnabled(false); mAllowRwsPreference.setEnabled(false);
} }
mAllowRwsPreference.setOnPreferenceChangeListener(this); mAllowRwsPreference.setOnPreferenceChangeListener(this);
@@ -164,7 +164,7 @@ public class RwsCookieSettings extends BaseSiteSettingsFragment @@ -146,7 +146,7 @@ public class RwsCookieSettings extends BaseSiteSettingsFragment
public boolean onPreferenceChange(Preference preference, Object newValue) { public boolean onPreferenceChange(Preference preference, Object newValue) {
String key = preference.getKey(); String key = preference.getKey();
if (ALLOW_RWS_COOKIE_PREFERENCE.equals(key)) { if (ALLOW_RWS_COOKIE_PREFERENCE.equals(key)) {
@@ -198,7 +197,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
diff --git a/components/history/core/browser/history_backend.cc b/components/history/core/browser/history_backend.cc diff --git a/components/history/core/browser/history_backend.cc b/components/history/core/browser/history_backend.cc
--- a/components/history/core/browser/history_backend.cc --- a/components/history/core/browser/history_backend.cc
+++ b/components/history/core/browser/history_backend.cc +++ b/components/history/core/browser/history_backend.cc
@@ -664,18 +664,7 @@ void HistoryBackend::SetBrowsingTopicsAllowed(ContextID context_id, @@ -666,18 +666,7 @@ void HistoryBackend::SetBrowsingTopicsAllowed(ContextID context_id,
if (!visit_id) if (!visit_id)
return; return;
@@ -288,10 +287,10 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_attestations/privacy_san
diff --git a/components/privacy_sandbox/privacy_sandbox_features.cc b/components/privacy_sandbox/privacy_sandbox_features.cc diff --git a/components/privacy_sandbox/privacy_sandbox_features.cc b/components/privacy_sandbox/privacy_sandbox_features.cc
--- a/components/privacy_sandbox/privacy_sandbox_features.cc --- a/components/privacy_sandbox/privacy_sandbox_features.cc
+++ b/components/privacy_sandbox/privacy_sandbox_features.cc +++ b/components/privacy_sandbox/privacy_sandbox_features.cc
@@ -232,4 +232,7 @@ BASE_FEATURE(kPrivacySandboxMigratePrefsToSchemaV2, @@ -187,4 +187,7 @@ BASE_FEATURE(PrivacySandboxMigratePrefsToSchemaV2,
BASE_FEATURE(kPrivacySandboxNoticeFramework, base::FEATURE_ENABLED_BY_DEFAULT);
"PrivacySandboxNoticeFramework",
base::FEATURE_DISABLED_BY_DEFAULT); BASE_FEATURE(PrivacySandboxNoticeFramework, base::FEATURE_DISABLED_BY_DEFAULT);
+SET_CROMITE_FEATURE_DISABLED(kPrivacySandboxSettings4); +SET_CROMITE_FEATURE_DISABLED(kPrivacySandboxSettings4);
+SET_CROMITE_FEATURE_ENABLED(kDisablePrivacySandboxPrompts); +SET_CROMITE_FEATURE_ENABLED(kDisablePrivacySandboxPrompts);
+SET_CROMITE_FEATURE_DISABLED(kEnforcePrivacySandboxAttestations); +SET_CROMITE_FEATURE_DISABLED(kEnforcePrivacySandboxAttestations);
@@ -299,7 +298,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_features.cc b/components
diff --git a/components/privacy_sandbox/privacy_sandbox_prefs.cc b/components/privacy_sandbox/privacy_sandbox_prefs.cc diff --git a/components/privacy_sandbox/privacy_sandbox_prefs.cc b/components/privacy_sandbox/privacy_sandbox_prefs.cc
--- a/components/privacy_sandbox/privacy_sandbox_prefs.cc --- a/components/privacy_sandbox/privacy_sandbox_prefs.cc
+++ b/components/privacy_sandbox/privacy_sandbox_prefs.cc +++ b/components/privacy_sandbox/privacy_sandbox_prefs.cc
@@ -24,7 +24,7 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) { @@ -25,7 +25,7 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) {
registry->RegisterBooleanPref(prefs::kPrivacySandboxM1FledgeEnabled, false); registry->RegisterBooleanPref(prefs::kPrivacySandboxM1FledgeEnabled, false);
registry->RegisterBooleanPref(prefs::kPrivacySandboxM1AdMeasurementEnabled, registry->RegisterBooleanPref(prefs::kPrivacySandboxM1AdMeasurementEnabled,
false); false);
@@ -308,7 +307,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_prefs.cc b/components/pr
registry->RegisterTimePref(prefs::kPrivacySandboxTopicsDataAccessibleSince, registry->RegisterTimePref(prefs::kPrivacySandboxTopicsDataAccessibleSince,
base::Time()); base::Time());
@@ -49,7 +49,7 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) { @@ -50,7 +50,7 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) {
prefs::kPrivacySandboxRelatedWebsiteSetsDataAccessAllowedInitialized, prefs::kPrivacySandboxRelatedWebsiteSetsDataAccessAllowedInitialized,
false); false);
registry->RegisterBooleanPref( registry->RegisterBooleanPref(
@@ -413,7 +412,7 @@ diff --git a/components/privacy_sandbox/tracking_protection_prefs.cc b/component
diff --git a/components/signin/public/identity_manager/account_capabilities.cc b/components/signin/public/identity_manager/account_capabilities.cc diff --git a/components/signin/public/identity_manager/account_capabilities.cc b/components/signin/public/identity_manager/account_capabilities.cc
--- a/components/signin/public/identity_manager/account_capabilities.cc --- a/components/signin/public/identity_manager/account_capabilities.cc
+++ b/components/signin/public/identity_manager/account_capabilities.cc +++ b/components/signin/public/identity_manager/account_capabilities.cc
@@ -91,7 +91,7 @@ signin::Tribool AccountCapabilities::can_have_email_address_displayed() const { @@ -85,7 +85,7 @@ signin::Tribool AccountCapabilities::can_have_email_address_displayed() const {
signin::Tribool AccountCapabilities::can_run_chrome_privacy_sandbox_trials() signin::Tribool AccountCapabilities::can_run_chrome_privacy_sandbox_trials()
const { const {
@@ -444,7 +443,7 @@ diff --git a/content/browser/shared_storage/shared_storage_document_service_impl
diff --git a/content/public/browser/content_browser_client.cc b/content/public/browser/content_browser_client.cc diff --git a/content/public/browser/content_browser_client.cc b/content/public/browser/content_browser_client.cc
--- a/content/public/browser/content_browser_client.cc --- a/content/public/browser/content_browser_client.cc
+++ b/content/public/browser/content_browser_client.cc +++ b/content/public/browser/content_browser_client.cc
@@ -1676,7 +1676,7 @@ bool ContentBrowserClient::ShouldPreconnectNavigation( @@ -1699,7 +1699,7 @@ bool ContentBrowserClient::ShouldPreconnectNavigation(
} }
bool ContentBrowserClient::IsFirstPartySetsEnabled() { bool ContentBrowserClient::IsFirstPartySetsEnabled() {
@@ -480,7 +479,7 @@ new file mode 100644
diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/features.cc diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/features.cc
--- a/third_party/blink/common/features.cc --- a/third_party/blink/common/features.cc
+++ b/third_party/blink/common/features.cc +++ b/third_party/blink/common/features.cc
@@ -2871,6 +2871,7 @@ BASE_FEATURE(kXrDevice, "XrDevice", base::FEATURE_DISABLED_BY_DEFAULT); @@ -2513,6 +2513,7 @@ BASE_FEATURE(XrDevice, base::FEATURE_DISABLED_BY_DEFAULT);
// constants for features in the section above. // constants for features in the section above.
bool IsAllowURNsInIframeEnabled() { bool IsAllowURNsInIframeEnabled() {
@@ -15,7 +15,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/browser/resources/side_panel/read_anything/read_anything_toolbar.ts b/chrome/browser/resources/side_panel/read_anything/read_anything_toolbar.ts diff --git a/chrome/browser/resources/side_panel/read_anything/read_anything_toolbar.ts b/chrome/browser/resources/side_panel/read_anything/read_anything_toolbar.ts
--- a/chrome/browser/resources/side_panel/read_anything/read_anything_toolbar.ts --- a/chrome/browser/resources/side_panel/read_anything/read_anything_toolbar.ts
+++ b/chrome/browser/resources/side_panel/read_anything/read_anything_toolbar.ts +++ b/chrome/browser/resources/side_panel/read_anything/read_anything_toolbar.ts
@@ -380,9 +380,7 @@ export class ReadAnythingToolbarElement extends ReadAnythingToolbarElementBase { @@ -381,9 +381,7 @@ export class ReadAnythingToolbarElement extends ReadAnythingToolbarElementBase {
const link = document.createElement('link'); const link = document.createElement('link');
link.rel = 'preload'; link.rel = 'preload';
link.as = 'style'; link.as = 'style';
@@ -41,7 +41,7 @@ diff --git a/components/dom_distiller/content/browser/dom_distiller_viewer_sourc
diff --git a/components/dom_distiller/core/html/dom_distiller_viewer.html b/components/dom_distiller/core/html/dom_distiller_viewer.html diff --git a/components/dom_distiller/core/html/dom_distiller_viewer.html b/components/dom_distiller/core/html/dom_distiller_viewer.html
--- a/components/dom_distiller/core/html/dom_distiller_viewer.html --- a/components/dom_distiller/core/html/dom_distiller_viewer.html
+++ b/components/dom_distiller/core/html/dom_distiller_viewer.html +++ b/components/dom_distiller/core/html/dom_distiller_viewer.html
@@ -17,8 +17,6 @@ found in the LICENSE file. @@ -18,8 +18,6 @@ found in the LICENSE file.
<!-- Placeholder for CSP. --> <!-- Placeholder for CSP. -->
$1 $1
<title>$i18n{title}</title> <title>$i18n{title}</title>
@@ -65,7 +65,7 @@ diff --git a/components/dom_distiller/core/html/preview.html b/components/dom_di
diff --git a/components/dom_distiller/core/javascript/dom_distiller_viewer.js b/components/dom_distiller/core/javascript/dom_distiller_viewer.js diff --git a/components/dom_distiller/core/javascript/dom_distiller_viewer.js b/components/dom_distiller/core/javascript/dom_distiller_viewer.js
--- a/components/dom_distiller/core/javascript/dom_distiller_viewer.js --- a/components/dom_distiller/core/javascript/dom_distiller_viewer.js
+++ b/components/dom_distiller/core/javascript/dom_distiller_viewer.js +++ b/components/dom_distiller/core/javascript/dom_distiller_viewer.js
@@ -153,7 +153,7 @@ function maybeSetWebFont() { @@ -211,7 +211,7 @@ function maybeSetWebFont() {
} }
const e = document.createElement('link'); const e = document.createElement('link');
@@ -26,7 +26,7 @@ diff --git a/net/http/http_server_properties_manager.cc b/net/http/http_server_p
diff --git a/net/http/http_stream_factory_job_controller.cc b/net/http/http_stream_factory_job_controller.cc diff --git a/net/http/http_stream_factory_job_controller.cc b/net/http/http_stream_factory_job_controller.cc
--- a/net/http/http_stream_factory_job_controller.cc --- a/net/http/http_stream_factory_job_controller.cc
+++ b/net/http/http_stream_factory_job_controller.cc +++ b/net/http/http_stream_factory_job_controller.cc
@@ -1325,11 +1325,7 @@ HttpStreamFactory::JobController::GetAlternativeServiceInfoInternal( @@ -1301,11 +1301,7 @@ HttpStreamFactory::JobController::GetAlternativeServiceInfoInternal(
// single user on a multi-user system to hijack the alternate protocol. // single user on a multi-user system to hijack the alternate protocol.
// These systems also enforce ports <1024 as restricted ports. So don't // These systems also enforce ports <1024 as restricted ports. So don't
// allow protocol upgrades to user-controllable ports. // allow protocol upgrades to user-controllable ports.
@@ -34,21 +34,21 @@ diff --git a/net/http/http_stream_factory_job_controller.cc b/net/http/http_stre
- if (!session_->params().enable_user_alternate_protocol_ports && - if (!session_->params().enable_user_alternate_protocol_ports &&
- (alternative_service_info.alternative_service().port >= - (alternative_service_info.alternative_service().port >=
- kUnrestrictedPort && - kUnrestrictedPort &&
- original_url.EffectiveIntPort() < kUnrestrictedPort)) { - request_info.url.EffectiveIntPort() < kUnrestrictedPort)) {
+ if (alternative_service_info.alternative_service().port != 443) { + if (alternative_service_info.alternative_service().port != 443) {
continue; continue;
} }
@@ -1374,8 +1370,7 @@ HttpStreamFactory::JobController::GetAlternativeServiceInfoInternal( @@ -1349,8 +1345,7 @@ HttpStreamFactory::JobController::GetAlternativeServiceInfoInternal(
GURL destination = CreateAltSvcUrl( GURL destination = CreateAltSvcUrl(
original_url, alternative_service_info.GetHostPortPair()); request_info.url, alternative_service_info.GetHostPortPair());
- if (session_key.host() != destination.host_piece() && - if (session_key.host() != destination.host_piece() &&
- !session_->context().quic_context->params()->allow_remote_alt_svc) { - !session_->context().quic_context->params()->allow_remote_alt_svc) {
+ if (session_key.host() != destination.host_piece()) { + if (session_key.host() != destination.host_piece()) {
continue; continue;
} }
RewriteUrlWithHostMappingRules(destination);
diff --git a/net/quic/quic_context.h b/net/quic/quic_context.h diff --git a/net/quic/quic_context.h b/net/quic/quic_context.h
--- a/net/quic/quic_context.h --- a/net/quic/quic_context.h
+++ b/net/quic/quic_context.h +++ b/net/quic/quic_context.h
+30 -75
View File
@@ -6,25 +6,23 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
--- ---
chrome/android/BUILD.gn | 5 ---- chrome/android/BUILD.gn | 5 ----
chrome/android/chrome_java_sources.gni | 1 - chrome/android/chrome_java_sources.gni | 1 -
.../android/java/res/xml/main_preferences.xml | 3 +- .../android/java/res/xml/main_preferences.xml | 2 +-
.../PasswordCheckupLauncher.java | 25 ---------------- .../PasswordCheckupLauncher.java | 25 ----------------
.../settings/FragmentDependencyProvider.java | 30 ------------------- .../settings/FragmentDependencyProvider.java | 30 -------------------
.../chrome/browser/settings/MainSettings.java | 2 +- .../chrome/browser/settings/MainSettings.java | 2 +-
.../settings/SettingsNavigationImpl.java | 13 ++------ .../settings/SettingsNavigationImpl.java | 3 +-
chrome/browser/BUILD.gn | 1 - chrome/browser/BUILD.gn | 1 -
chrome/browser/safety_check/android/BUILD.gn | 2 -- chrome/browser/safety_check/android/BUILD.gn | 2 --
.../safety_check/SafetyCheckBridge.java | 4 +-- .../safety_check/SafetyCheckBridge.java | 4 +--
.../suggestions/action/OmniboxPedal.java | 3 -- .../suggestions/action/OmniboxPedal.java | 3 --
chrome/browser/ui/tab_helpers.cc | 2 +-
.../site_settings/SiteSettings.java | 2 +-
.../Disable-safety-check.inc | 1 + .../Disable-safety-check.inc | 1 +
14 files changed, 10 insertions(+), 84 deletions(-) 12 files changed, 6 insertions(+), 73 deletions(-)
create mode 100644 cromite_flags/chrome/common/chrome_features_cc/Disable-safety-check.inc create mode 100644 cromite_flags/chrome/common/chrome_features_cc/Disable-safety-check.inc
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
--- a/chrome/android/BUILD.gn --- a/chrome/android/BUILD.gn
+++ b/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn
@@ -459,7 +459,6 @@ if (_is_default_toolchain) { @@ -457,7 +457,6 @@ if (_is_default_toolchain) {
"//chrome/browser/recent_tabs:java", "//chrome/browser/recent_tabs:java",
"//chrome/browser/regional_capabilities/android:java", "//chrome/browser/regional_capabilities/android:java",
"//chrome/browser/safe_browsing/android:java", "//chrome/browser/safe_browsing/android:java",
@@ -32,7 +30,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
"//chrome/browser/safety_hub/android:java", "//chrome/browser/safety_hub/android:java",
"//chrome/browser/screenshot_monitor:java", "//chrome/browser/screenshot_monitor:java",
"//chrome/browser/search_engines/android:java", "//chrome/browser/search_engines/android:java",
@@ -1136,8 +1135,6 @@ if (_is_default_toolchain) { @@ -1138,8 +1137,6 @@ if (_is_default_toolchain) {
"//chrome/browser/recent_tabs:junit", "//chrome/browser/recent_tabs:junit",
"//chrome/browser/recent_tabs/internal:junit", "//chrome/browser/recent_tabs/internal:junit",
"//chrome/browser/safe_browsing/android:junit", "//chrome/browser/safe_browsing/android:junit",
@@ -41,7 +39,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
"//chrome/browser/search_engines/android:junit", "//chrome/browser/search_engines/android:junit",
"//chrome/browser/search_resumption:junit", "//chrome/browser/search_resumption:junit",
"//chrome/browser/serial/android:junit", "//chrome/browser/serial/android:junit",
@@ -1425,8 +1422,6 @@ if (_is_default_toolchain) { @@ -1426,8 +1423,6 @@ if (_is_default_toolchain) {
"//chrome/browser/quick_delete:javatests", "//chrome/browser/quick_delete:javatests",
"//chrome/browser/renderer_host/android:javatests", "//chrome/browser/renderer_host/android:javatests",
"//chrome/browser/safe_browsing/android:javatests", "//chrome/browser/safe_browsing/android:javatests",
@@ -53,7 +51,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni
--- a/chrome/android/chrome_java_sources.gni --- a/chrome/android/chrome_java_sources.gni
+++ b/chrome/android/chrome_java_sources.gni +++ b/chrome/android/chrome_java_sources.gni
@@ -942,7 +942,6 @@ chrome_java_sources = [ @@ -950,7 +950,6 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/safe_browsing/SafeBrowsingPasswordReuseDialogBridge.java", "java/src/org/chromium/chrome/browser/safe_browsing/SafeBrowsingPasswordReuseDialogBridge.java",
"java/src/org/chromium/chrome/browser/safe_browsing/SafeBrowsingReferringAppBridge.java", "java/src/org/chromium/chrome/browser/safe_browsing/SafeBrowsingReferringAppBridge.java",
"java/src/org/chromium/chrome/browser/safe_browsing/SafeBrowsingSettingsNavigation.java", "java/src/org/chromium/chrome/browser/safe_browsing/SafeBrowsingSettingsNavigation.java",
@@ -64,20 +62,19 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java
diff --git a/chrome/android/java/res/xml/main_preferences.xml b/chrome/android/java/res/xml/main_preferences.xml diff --git a/chrome/android/java/res/xml/main_preferences.xml b/chrome/android/java/res/xml/main_preferences.xml
--- a/chrome/android/java/res/xml/main_preferences.xml --- a/chrome/android/java/res/xml/main_preferences.xml
+++ b/chrome/android/java/res/xml/main_preferences.xml +++ b/chrome/android/java/res/xml/main_preferences.xml
@@ -58,7 +58,8 @@ for the previous order (main_preferences_legacy). --> @@ -54,7 +54,7 @@ found in the LICENSE file.
android:fragment="org.chromium.chrome.browser.safety_check.SafetyCheckSettingsFragment"
android:key="safety_check"
android:order="9"
- android:title="@string/prefs_safety_check"/>
+ android:title="@string/prefs_safety_check"
+ app:isPreferenceVisible="false" />
<Preference
android:fragment="org.chromium.chrome.browser.safety_hub.SafetyHubFragment" android:fragment="org.chromium.chrome.browser.safety_hub.SafetyHubFragment"
android:key="safety_hub" android:key="safety_hub"
android:order="10"
- android:title="@string/prefs_safety_check"/>
+ android:title="@string/prefs_safety_check" app:isPreferenceVisible="false"/>
<PreferenceCategory
android:key="autofill_section"
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/PasswordCheckupLauncher.java b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/PasswordCheckupLauncher.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/PasswordCheckupLauncher.java b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/PasswordCheckupLauncher.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/PasswordCheckupLauncher.java --- a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/PasswordCheckupLauncher.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/PasswordCheckupLauncher.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/PasswordCheckupLauncher.java
@@ -10,7 +10,6 @@ import org.chromium.base.supplier.ObservableSupplierImpl; @@ -8,7 +8,6 @@ import org.jni_zero.CalledByNative;
import org.chromium.build.annotations.NullMarked; import org.chromium.build.annotations.NullMarked;
import org.chromium.build.annotations.Nullable; import org.chromium.build.annotations.Nullable;
import org.chromium.chrome.browser.profiles.Profile; import org.chromium.chrome.browser.profiles.Profile;
@@ -85,7 +82,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage
import org.chromium.chrome.browser.settings.SettingsCustomTabLauncherImpl; import org.chromium.chrome.browser.settings.SettingsCustomTabLauncherImpl;
import org.chromium.chrome.browser.settings.SettingsNavigationFactory; import org.chromium.chrome.browser.settings.SettingsNavigationFactory;
import org.chromium.components.browser_ui.settings.SettingsNavigation.SettingsFragment; import org.chromium.components.browser_ui.settings.SettingsNavigation.SettingsFragment;
@@ -26,38 +25,14 @@ public class PasswordCheckupLauncher { @@ -23,37 +22,13 @@ public class PasswordCheckupLauncher {
WindowAndroid windowAndroid, WindowAndroid windowAndroid,
@PasswordCheckReferrer int passwordCheckReferrer, @PasswordCheckReferrer int passwordCheckReferrer,
@Nullable String accountEmail) { @Nullable String accountEmail) {
@@ -101,7 +98,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage
- passwordManagerHelper.showPasswordCheckup( - passwordManagerHelper.showPasswordCheckup(
- windowAndroid.getContext().get(), - windowAndroid.getContext().get(),
- passwordCheckReferrer, - passwordCheckReferrer,
- getModalDialogManagerSupplier(windowAndroid), - () -> windowAndroid.getModalDialogManager(),
- accountEmail, - accountEmail,
- new SettingsCustomTabLauncherImpl()); - new SettingsCustomTabLauncherImpl());
} }
@@ -122,12 +119,11 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage
- SettingsNavigationFactory.createSettingsNavigation() - SettingsNavigationFactory.createSettingsNavigation()
- .startSettings(windowAndroid.getContext().get(), SettingsFragment.SAFETY_CHECK); - .startSettings(windowAndroid.getContext().get(), SettingsFragment.SAFETY_CHECK);
} }
}
private static ObservableSupplier<ModalDialogManager> getModalDialogManagerSupplier(
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java --- a/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java
@@ -34,13 +34,6 @@ import org.chromium.chrome.browser.privacy_sandbox.ChromeTrackingProtectionDeleg @@ -35,13 +35,6 @@ import org.chromium.chrome.browser.privacy_sandbox.ChromeTrackingProtectionDeleg
import org.chromium.chrome.browser.privacy_sandbox.PrivacySandboxSettingsBaseFragment; import org.chromium.chrome.browser.privacy_sandbox.PrivacySandboxSettingsBaseFragment;
import org.chromium.chrome.browser.privacy_sandbox.TopicsManageFragment; import org.chromium.chrome.browser.privacy_sandbox.TopicsManageFragment;
import org.chromium.chrome.browser.profiles.Profile; import org.chromium.chrome.browser.profiles.Profile;
@@ -187,48 +183,31 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Fragme
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java
@@ -306,7 +306,7 @@ public class MainSettings extends ChromeBaseSettingsFragment @@ -312,7 +312,7 @@ public class MainSettings extends ChromeBaseSettingsFragment
removePreferenceIfPresent(PREF_UI_THEME); removePreferenceIfPresent(PREF_UI_THEME);
} }
- if (BuildInfo.getInstance().isAutomotive) { - if (DeviceInfo.isAutomotive()) {
+ if (((true)) || BuildInfo.getInstance().isAutomotive) { + if (((true)) || DeviceInfo.isAutomotive()) {
getPreferenceScreen().removePreference(findPreference(PREF_SAFETY_CHECK));
getPreferenceScreen().removePreference(findPreference(PREF_SAFETY_HUB)); getPreferenceScreen().removePreference(findPreference(PREF_SAFETY_HUB));
} else if (!ChromeFeatureList.sSafetyHub.isEnabled()) { } else {
findPreference(PREF_SAFETY_HUB)
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsNavigationImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsNavigationImpl.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsNavigationImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsNavigationImpl.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsNavigationImpl.java --- a/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsNavigationImpl.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsNavigationImpl.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsNavigationImpl.java
@@ -18,8 +18,6 @@ import org.chromium.chrome.browser.autofill.settings.FinancialAccountsManagement @@ -18,7 +18,6 @@ import org.chromium.chrome.browser.autofill.settings.AutofillPaymentMethodsFragm
import org.chromium.chrome.browser.autofill.settings.FinancialAccountsManagementFragment;
import org.chromium.chrome.browser.autofill.settings.NonCardPaymentMethodsManagementFragment; import org.chromium.chrome.browser.autofill.settings.NonCardPaymentMethodsManagementFragment;
import org.chromium.chrome.browser.browsing_data.ClearBrowsingDataFragment; import org.chromium.chrome.browser.browsing_data.ClearBrowsingDataFragment;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
-import org.chromium.chrome.browser.safety_check.SafetyCheckSettingsFragment;
-import org.chromium.chrome.browser.safety_hub.SafetyHubFragment; -import org.chromium.chrome.browser.safety_hub.SafetyHubFragment;
import org.chromium.chrome.browser.password_manager.settings.PasswordSettings; import org.chromium.chrome.browser.password_manager.settings.PasswordSettings;
import org.chromium.chrome.browser.sync.settings.GoogleServicesSettings; import org.chromium.chrome.browser.sync.settings.GoogleServicesSettings;
import org.chromium.chrome.browser.sync.settings.ManageSyncSettings; import org.chromium.chrome.browser.sync.settings.ManageSyncSettings;
@@ -47,10 +45,7 @@ public class SettingsNavigationImpl implements SettingsNavigation { @@ -106,7 +105,7 @@ public class SettingsNavigationImpl implements SettingsNavigation {
ClearBrowsingDataFragment.createFragmentArgs(context.getClass().getName());
break;
case SettingsFragment.SAFETY_CHECK:
- if (!ChromeFeatureList.sSafetyHub.isEnabled()) {
- fragmentArgs = SafetyCheckSettingsFragment.createBundle(true);
- }
- break;
+ return;
case SettingsFragment.MAIN:
case SettingsFragment.PAYMENT_METHODS:
case SettingsFragment.SITE:
@@ -110,11 +105,7 @@ public class SettingsNavigationImpl implements SettingsNavigation {
case SettingsFragment.PAYMENT_METHODS: case SettingsFragment.PAYMENT_METHODS:
return AutofillPaymentMethodsFragment.class; return AutofillPaymentMethodsFragment.class;
case SettingsFragment.SAFETY_CHECK: case SettingsFragment.SAFETY_CHECK:
- if (ChromeFeatureList.sSafetyHub.isEnabled()) { - return SafetyHubFragment.class;
- return SafetyHubFragment.class;
- } else {
- return SafetyCheckSettingsFragment.class;
- }
+ return null; + return null;
case SettingsFragment.SITE: case SettingsFragment.SITE:
return SiteSettings.class; return SiteSettings.class;
@@ -236,7 +215,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Settin
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn
@@ -3458,7 +3458,6 @@ static_library("browser") { @@ -3449,7 +3449,6 @@ static_library("browser") {
"//chrome/browser/recent_tabs:jni_headers", "//chrome/browser/recent_tabs:jni_headers",
"//chrome/browser/regional_capabilities", "//chrome/browser/regional_capabilities",
"//chrome/browser/safe_browsing/android:safe_browsing_enums", "//chrome/browser/safe_browsing/android:safe_browsing_enums",
@@ -297,34 +276,10 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow
case OmniboxPedalId.MANAGE_SITE_SETTINGS: case OmniboxPedalId.MANAGE_SITE_SETTINGS:
delegate.openSettingsPage(SettingsFragment.SITE); delegate.openSettingsPage(SettingsFragment.SITE);
break; break;
diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc
--- a/chrome/browser/ui/tab_helpers.cc
+++ b/chrome/browser/ui/tab_helpers.cc
@@ -571,7 +571,7 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) {
tpcd::trial::ValidityService::MaybeCreateForWebContents(web_contents);
TrustedVaultEncryptionKeysTabHelper::CreateForWebContents(web_contents);
#if BUILDFLAG(IS_ANDROID)
- if (base::FeatureList::IsEnabled(features::kSafetyHub)) {
+ if (((true)) || base::FeatureList::IsEnabled(features::kSafetyHub)) {
auto* service = RevokedPermissionsServiceFactory::GetForProfile(profile);
if (service) {
RevokedPermissionsService::TabHelper::CreateForWebContents(web_contents,
diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettings.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettings.java
--- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettings.java
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettings.java
@@ -96,7 +96,7 @@ public class SiteSettings extends BaseSiteSettingsFragment
}
// Remove the permission autorevocation preference if Safety Hub is not enabled.
- if (!getSiteSettingsDelegate().isSafetyHubEnabled()) {
+ if (((false)) && !getSiteSettingsDelegate().isSafetyHubEnabled()) {
Preference autorevocationPref =
findPreference(PERMISSION_AUTOREVOCATION_PREF);
getPreferenceScreen().removePreference(autorevocationPref);
diff --git a/cromite_flags/chrome/common/chrome_features_cc/Disable-safety-check.inc b/cromite_flags/chrome/common/chrome_features_cc/Disable-safety-check.inc diff --git a/cromite_flags/chrome/common/chrome_features_cc/Disable-safety-check.inc b/cromite_flags/chrome/common/chrome_features_cc/Disable-safety-check.inc
new file mode 100644 new file mode 100644
--- /dev/null --- /dev/null
+++ b/cromite_flags/chrome/common/chrome_features_cc/Disable-safety-check.inc +++ b/cromite_flags/chrome/common/chrome_features_cc/Disable-safety-check.inc
@@ -0,0 +1 @@ @@ -0,0 +1 @@
+SET_CROMITE_FEATURE_DISABLED(kSafetyHub); +// intentionally empty
-- --
@@ -45,7 +45,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextualsearc
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc 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 --- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc +++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -269,6 +269,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { @@ -274,6 +274,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
&kCCTExtendTrustedCdnPublisher, &kCCTExtendTrustedCdnPublisher,
&kCCTFixWarmup, &kCCTFixWarmup,
&kCCTFreInSameTask, &kCCTFreInSameTask,
@@ -56,8 +56,8 @@ 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 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 --- 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 +++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
@@ -595,6 +595,7 @@ public abstract class ChromeFeatureList { @@ -606,6 +606,7 @@ public abstract class ChromeFeatureList {
"SearchInCCTAlternateTapHandlingIfEnabledByEmbedder"; "SearchInCCTIfEnabledByEmbedder";
public static final String SEARCH_RESUMPTION_MODULE_ANDROID = "SearchResumptionModuleAndroid"; public static final String SEARCH_RESUMPTION_MODULE_ANDROID = "SearchResumptionModuleAndroid";
public static final String SEED_ACCOUNTS_REVAMP = "SeedAccountsRevamp"; public static final String SEED_ACCOUNTS_REVAMP = "SeedAccountsRevamp";
+ public static final String CHROME_SMART_SELECTION = "ChromeSmartSelection"; + public static final String CHROME_SMART_SELECTION = "ChromeSmartSelection";
@@ -67,7 +67,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
diff --git a/content/public/android/java/src/org/chromium/content/browser/selection/SelectionPopupControllerImpl.java b/content/public/android/java/src/org/chromium/content/browser/selection/SelectionPopupControllerImpl.java diff --git a/content/public/android/java/src/org/chromium/content/browser/selection/SelectionPopupControllerImpl.java b/content/public/android/java/src/org/chromium/content/browser/selection/SelectionPopupControllerImpl.java
--- a/content/public/android/java/src/org/chromium/content/browser/selection/SelectionPopupControllerImpl.java --- a/content/public/android/java/src/org/chromium/content/browser/selection/SelectionPopupControllerImpl.java
+++ b/content/public/android/java/src/org/chromium/content/browser/selection/SelectionPopupControllerImpl.java +++ b/content/public/android/java/src/org/chromium/content/browser/selection/SelectionPopupControllerImpl.java
@@ -1088,7 +1088,6 @@ public class SelectionPopupControllerImpl extends ActionModeCallbackHelper @@ -1100,7 +1100,6 @@ public class SelectionPopupControllerImpl extends ActionModeCallbackHelper
public boolean canWebSearch() { public boolean canWebSearch() {
return hasSelection() return hasSelection()
&& !isFocusedNodeEditable() && !isFocusedNodeEditable()
@@ -11,7 +11,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc 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 --- a/chrome/browser/chrome_content_browser_client.cc
+++ b/chrome/browser/chrome_content_browser_client.cc +++ b/chrome/browser/chrome_content_browser_client.cc
@@ -1430,7 +1430,7 @@ void ChromeContentBrowserClient::RegisterProfilePrefs( @@ -1473,7 +1473,7 @@ void ChromeContentBrowserClient::RegisterProfilePrefs(
site_isolation::prefs::kWebTriggeredIsolatedOrigins); site_isolation::prefs::kWebTriggeredIsolatedOrigins);
registry->RegisterDictionaryPref( registry->RegisterDictionaryPref(
prefs::kDevToolsBackgroundServicesExpirationDict); prefs::kDevToolsBackgroundServicesExpirationDict);
@@ -31,7 +31,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer/chrome_content_renderer_client.cc diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer/chrome_content_renderer_client.cc
--- a/chrome/renderer/chrome_content_renderer_client.cc --- a/chrome/renderer/chrome_content_renderer_client.cc
+++ b/chrome/renderer/chrome_content_renderer_client.cc +++ b/chrome/renderer/chrome_content_renderer_client.cc
@@ -1365,7 +1365,7 @@ ChromeContentRendererClient::CreateWorkerContentSettingsClient( @@ -1428,7 +1428,7 @@ ChromeContentRendererClient::CreateWorkerContentSettingsClient(
std::unique_ptr<media::SpeechRecognitionClient> std::unique_ptr<media::SpeechRecognitionClient>
ChromeContentRendererClient::CreateSpeechRecognitionClient( ChromeContentRendererClient::CreateSpeechRecognitionClient(
content::RenderFrame* render_frame) { content::RenderFrame* render_frame) {
@@ -22,7 +22,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/browser/ui/prefs/prefs_tab_helper.cc b/chrome/browser/ui/prefs/prefs_tab_helper.cc diff --git a/chrome/browser/ui/prefs/prefs_tab_helper.cc b/chrome/browser/ui/prefs/prefs_tab_helper.cc
--- a/chrome/browser/ui/prefs/prefs_tab_helper.cc --- a/chrome/browser/ui/prefs/prefs_tab_helper.cc
+++ b/chrome/browser/ui/prefs/prefs_tab_helper.cc +++ b/chrome/browser/ui/prefs/prefs_tab_helper.cc
@@ -382,7 +382,7 @@ void PrefsTabHelper::RegisterProfilePrefs( @@ -378,7 +378,7 @@ void PrefsTabHelper::RegisterProfilePrefs(
prefs::kEnableReferrers, prefs::kEnableReferrers,
!base::FeatureList::IsEnabled(features::kNoReferrers)); !base::FeatureList::IsEnabled(features::kNoReferrers));
registry->RegisterBooleanPref(prefs::kEnableEncryptedMedia, true); registry->RegisterBooleanPref(prefs::kEnableEncryptedMedia, true);
@@ -34,7 +34,7 @@ diff --git a/chrome/browser/ui/prefs/prefs_tab_helper.cc b/chrome/browser/ui/pre
diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.cc diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.cc
--- a/content/child/runtime_features.cc --- a/content/child/runtime_features.cc
+++ b/content/child/runtime_features.cc +++ b/content/child/runtime_features.cc
@@ -270,6 +270,8 @@ void SetRuntimeFeaturesFromChromiumFeatures() { @@ -275,6 +275,8 @@ void SetRuntimeFeaturesFromChromiumFeatures() {
{wf::EnableTouchDragAndDrop, raw_ref(features::kTouchDragAndDrop)}, {wf::EnableTouchDragAndDrop, raw_ref(features::kTouchDragAndDrop)},
{wf::EnableTouchDragAndContextMenu, {wf::EnableTouchDragAndContextMenu,
raw_ref(features::kTouchDragAndContextMenu)}, raw_ref(features::kTouchDragAndContextMenu)},
@@ -74,7 +74,7 @@ new file mode 100644
diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink/renderer/core/dom/document.cc diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink/renderer/core/dom/document.cc
--- a/third_party/blink/renderer/core/dom/document.cc --- a/third_party/blink/renderer/core/dom/document.cc
+++ b/third_party/blink/renderer/core/dom/document.cc +++ b/third_party/blink/renderer/core/dom/document.cc
@@ -4944,9 +4944,14 @@ void Document::SetURL(const KURL& url) { @@ -4960,9 +4960,14 @@ void Document::SetURL(const KURL& url) {
TRACE_EVENT_FLAG_FLOW_IN | TRACE_EVENT_FLAG_FLOW_OUT, TRACE_EVENT_FLAG_FLOW_IN | TRACE_EVENT_FLAG_FLOW_OUT,
"url", new_url.GetString().Utf8()); "url", new_url.GetString().Utf8());
@@ -92,7 +92,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 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 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -4916,10 +4916,9 @@ @@ -4947,10 +4947,9 @@
}, },
{ {
name: "TextFragmentIdentifiers", name: "TextFragmentIdentifiers",
@@ -76,7 +76,7 @@ diff --git a/components/embedder_support/origin_trials/origin_trial_policy_impl.
diff --git a/content/browser/renderer_host/navigation_request.cc b/content/browser/renderer_host/navigation_request.cc diff --git a/content/browser/renderer_host/navigation_request.cc b/content/browser/renderer_host/navigation_request.cc
--- a/content/browser/renderer_host/navigation_request.cc --- a/content/browser/renderer_host/navigation_request.cc
+++ b/content/browser/renderer_host/navigation_request.cc +++ b/content/browser/renderer_host/navigation_request.cc
@@ -9693,7 +9693,6 @@ void NavigationRequest::SetSourceSiteInstanceToInitiatorIfNeeded() { @@ -9636,7 +9636,6 @@ void NavigationRequest::SetSourceSiteInstanceToInitiatorIfNeeded() {
void NavigationRequest::ForceEnableOriginTrials( void NavigationRequest::ForceEnableOriginTrials(
const std::vector<std::string>& trials) { const std::vector<std::string>& trials) {
DCHECK(!HasCommitted()); DCHECK(!HasCommitted());
@@ -116,7 +116,7 @@ diff --git a/content/browser/renderer_host/origin_trial_state_host_impl.cc b/con
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
--- a/content/renderer/render_frame_impl.cc --- a/content/renderer/render_frame_impl.cc
+++ b/content/renderer/render_frame_impl.cc +++ b/content/renderer/render_frame_impl.cc
@@ -530,10 +530,6 @@ void FillNavigationParamsRequest( @@ -533,10 +533,6 @@ void FillNavigationParamsRequest(
common_params.initiator_origin.value(); common_params.initiator_origin.value();
} }
@@ -127,7 +127,7 @@ diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_fra
navigation_params->was_discarded = commit_params.was_discarded; navigation_params->was_discarded = commit_params.was_discarded;
navigation_params->document_ukm_source_id = navigation_params->document_ukm_source_id =
commit_params.document_ukm_source_id; commit_params.document_ukm_source_id;
@@ -556,8 +552,8 @@ void FillNavigationParamsRequest( @@ -559,8 +555,8 @@ void FillNavigationParamsRequest(
navigation_params->had_transient_user_activation = navigation_params->had_transient_user_activation =
common_params.has_user_gesture; common_params.has_user_gesture;
@@ -138,7 +138,7 @@ diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_fra
navigation_params->early_hints_preloaded_resources = base::ToVector( navigation_params->early_hints_preloaded_resources = base::ToVector(
commit_params.early_hints_preloaded_resources, blink::ToWebURL); commit_params.early_hints_preloaded_resources, blink::ToWebURL);
@@ -644,7 +640,7 @@ blink::mojom::CommonNavigationParamsPtr MakeCommonNavigationParams( @@ -647,7 +643,7 @@ blink::mojom::CommonNavigationParamsPtr MakeCommonNavigationParams(
info->url_request.HasUserGesture(), info->url_request.HasUserGesture(),
info->url_request.HasTextFragmentToken(), info->url_request.HasTextFragmentToken(),
info->should_check_main_world_content_security_policy, info->should_check_main_world_content_security_policy,
@@ -223,7 +223,7 @@ diff --git a/third_party/blink/renderer/core/loader/document_loader.cc b/third_p
} }
bool IsPagePopupRunningInWebTest(LocalFrame* frame) { bool IsPagePopupRunningInWebTest(LocalFrame* frame) {
@@ -3228,10 +3218,6 @@ void DocumentLoader::CreateParserPostCommit() { @@ -3238,10 +3228,6 @@ void DocumentLoader::CreateParserPostCommit() {
mojom::blink::OriginTrialFeature::kTouchEventFeatureDetection); mojom::blink::OriginTrialFeature::kTouchEventFeatureDetection);
} }

Some files were not shown because too many files have changed in this diff Show More