Adapted patches for 126

This commit is contained in:
Carmelo Messina
2024-06-09 14:30:40 +02:00
parent 0df4ec8855
commit a01284140d
27 changed files with 1298 additions and 465 deletions
@@ -342,7 +342,7 @@ diff --git a/base/feature_list.h b/base/feature_list.h
+} // namespace base
+
+#define CROMITE_FEATURE(feature, name, default_state) \
+ constinit const base::Feature feature(name, default_state, true, true); \
+ constinit const base::Feature feature(name, default_state, base::internal::FeatureMacroHandshake::kSecret, true, true); \
+ _Pragma("clang diagnostic push") \
+ _Pragma("clang diagnostic ignored \"-Wglobal-constructors\"") \
+ static const ::base::internal::FeatureDefaultStateOverrider \
@@ -162,7 +162,7 @@ new file mode 100644
+ }
+
+ @Override
+ protected List<Integer> getDialogOptions() {
+ protected List<Integer> getDialogOptions(Bundle fragmentArgs) {
+ return Arrays.asList(DialogOption.CLEAR_HISTORY, DialogOption.CLEAR_COOKIES_AND_SITE_DATA,
+ DialogOption.CLEAR_CACHE, DialogOption.CLEAR_PASSWORDS,
+ DialogOption.CLEAR_FORM_DATA, DialogOption.CLEAR_SITE_SETTINGS);
+335 -237
View File
@@ -10,36 +10,37 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
.../java/templates/BuildConfig.template | 2 +
build/config/android/rules.gni | 3 +
chrome/android/chrome_java_sources.gni | 3 +
chrome/android/chrome_java_sources.gni | 2 +
.../java/res/xml/about_chrome_preferences.xml | 5 +
.../about_settings/AboutChromeSettings.java | 28 +-
.../chrome/browser/omaha/OmahaBase.java | 56 +++-
.../browser/omaha/UpdateMenuItemHelper.java | 82 +++++-
.../inline/BromiteInlineUpdateController.java | 273 ++++++++++++++++++
.../omaha/inline/InlineUpdateController.java | 51 ++++
.../inline/InlineUpdateControllerFactory.java | 21 ++
.../omaha/CromiteUpdateStatusProvider.java | 42 +++
.../chrome/browser/omaha/OmahaBase.java | 7 +-
.../browser/omaha/UpdateMenuItemHelper.java | 89 +++++-
.../inline/BromiteInlineUpdateController.java | 285 ++++++++++++++++++
chrome/browser/BUILD.gn | 6 +
chrome/browser/endpoint_fetcher/BUILD.gn | 32 ++
chrome/browser/endpoint_fetcher/DEPS | 3 +
chrome/browser/endpoint_fetcher/OWNERS | 1 +
.../endpoint_fetcher_android.cc | 149 ++++++++++
.../endpoint_fetcher/EndpointFetcher.java | 116 ++++++++
.../endpoint_fetcher_android.cc | 149 +++++++++
.../endpoint_fetcher/EndpointFetcher.java | 116 +++++++
.../EndpointHeaderResponse.java | 31 ++
.../endpoint_fetcher/EndpointResponse.java | 30 ++
.../flags/android/chrome_feature_list.cc | 1 +
.../browser/flags/ChromeFeatureList.java | 1 +
chrome/browser/omaha/android/BUILD.gn | 3 +
.../chrome/browser/omaha/OmahaPrefUtils.java | 52 +++-
.../chrome/browser/omaha/UpdateConfigs.java | 27 +-
.../browser/omaha/UpdateStatusProvider.java | 167 ++++++++---
.../browser/omaha/UpdateStatusProvider.java | 168 +++++++----
.../browser/omaha/VersionNumberGetter.java | 3 +-
.../omaha/inline/InlineUpdateController.java | 57 ++++
.../strings/android_chrome_strings.grd | 23 +-
.../endpoint_fetcher/endpoint_fetcher.cc | 101 ++++++-
.../endpoint_fetcher/endpoint_fetcher.h | 23 +-
.../Bromite-auto-updater.inc | 3 +
.../Bromite-auto-updater.inc | 1 +
28 files changed, 1189 insertions(+), 53 deletions(-)
30 files changed, 1225 insertions(+), 69 deletions(-)
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/omaha/CromiteUpdateStatusProvider.java
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/BromiteInlineUpdateController.java
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/InlineUpdateController.java
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/InlineUpdateControllerFactory.java
create mode 100644 chrome/browser/endpoint_fetcher/BUILD.gn
create mode 100644 chrome/browser/endpoint_fetcher/DEPS
create mode 100644 chrome/browser/endpoint_fetcher/OWNERS
@@ -47,6 +48,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
create mode 100644 chrome/browser/endpoint_fetcher/java/src/org/chromium/chrome/browser/endpoint_fetcher/EndpointFetcher.java
create mode 100644 chrome/browser/endpoint_fetcher/java/src/org/chromium/chrome/browser/endpoint_fetcher/EndpointHeaderResponse.java
create mode 100644 chrome/browser/endpoint_fetcher/java/src/org/chromium/chrome/browser/endpoint_fetcher/EndpointResponse.java
create mode 100644 chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/omaha/inline/InlineUpdateController.java
create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Bromite-auto-updater.inc
create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_h/Bromite-auto-updater.inc
@@ -78,12 +80,11 @@ 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
--- a/chrome/android/chrome_java_sources.gni
+++ b/chrome/android/chrome_java_sources.gni
@@ -874,6 +874,9 @@ chrome_java_sources = [
@@ -874,6 +874,8 @@ chrome_java_sources = [
"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/OmahaDelegateBase.java",
+ "java/src/org/chromium/chrome/browser/omaha/inline/InlineUpdateController.java",
+ "java/src/org/chromium/chrome/browser/omaha/inline/InlineUpdateControllerFactory.java",
+ "java/src/org/chromium/chrome/browser/omaha/CromiteUpdateStatusProvider.java",
+ "java/src/org/chromium/chrome/browser/omaha/inline/BromiteInlineUpdateController.java",
"java/src/org/chromium/chrome/browser/omaha/OmahaService.java",
"java/src/org/chromium/chrome/browser/omaha/RequestData.java",
@@ -111,7 +112,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/about_settings/
import java.util.Calendar;
+import android.content.SharedPreferences;
+import org.chromium.chrome.browser.omaha.OmahaBase;
+import org.chromium.chrome.browser.omaha.OmahaPrefUtils;
+import org.chromium.components.browser_ui.settings.ChromeSwitchPreference;
+
/** Settings fragment that displays information about Chrome. */
@@ -134,8 +135,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/about_settings/
+ ChromeSwitchPreference allowInlineUpdate =
+ (ChromeSwitchPreference) findPreference(PREF_ALLOW_INLINE_UPDATE);
+ allowInlineUpdate.setChecked(
+ OmahaBase.getSharedPreferences()
+ .getBoolean(OmahaBase.PREF_ALLOW_INLINE_UPDATE, false));
+ OmahaPrefUtils.getSharedPreferences()
+ .getBoolean(OmahaPrefUtils.PREF_ALLOW_INLINE_UPDATE, false));
+ allowInlineUpdate.setOnPreferenceChangeListener(this);
}
@@ -149,39 +150,66 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/about_settings/
+ public boolean onPreferenceChange(Preference preference, Object newValue) {
+ String key = preference.getKey();
+ if (PREF_ALLOW_INLINE_UPDATE.equals(key)) {
+ SharedPreferences.Editor sharedPreferenceEditor = OmahaBase.getSharedPreferences().edit();
+ sharedPreferenceEditor.putBoolean(OmahaBase.PREF_ALLOW_INLINE_UPDATE, (boolean) newValue);
+ SharedPreferences.Editor sharedPreferenceEditor = OmahaPrefUtils.getSharedPreferences().edit();
+ sharedPreferenceEditor.putBoolean(OmahaPrefUtils.PREF_ALLOW_INLINE_UPDATE, (boolean) newValue);
+ sharedPreferenceEditor.apply();
+
+ OmahaBase.resetUpdatePrefs();
+ OmahaPrefUtils.resetUpdatePrefs();
+ }
+ return true;
+ }
}
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/CromiteUpdateStatusProvider.java b/chrome/android/java/src/org/chromium/chrome/browser/omaha/CromiteUpdateStatusProvider.java
new file mode 100644
--- /dev/null
+++ b/chrome/android/java/src/org/chromium/chrome/browser/omaha/CromiteUpdateStatusProvider.java
@@ -0,0 +1,42 @@
+package org.chromium.chrome.browser.omaha;
+
+import android.app.Activity;
+
+import org.chromium.base.ActivityState;
+import org.chromium.base.ApplicationStatus;
+
+import org.chromium.chrome.browser.app.ChromeActivity;
+
+import org.chromium.chrome.browser.omaha.UpdateStatusProvider;
+import org.chromium.chrome.browser.omaha.inline.BromiteInlineUpdateController;
+
+public class CromiteUpdateStatusProvider extends UpdateStatusProvider {
+ private static final class LazyHolder {
+ private static final UpdateStatusProvider INSTANCE = new CromiteUpdateStatusProvider();
+ }
+
+ private CromiteUpdateStatusProvider() {
+ super(new BromiteInlineUpdateController());
+ }
+
+ /** @return Returns a singleton of {@link UpdateStatusProvider}. */
+ public static UpdateStatusProvider getInstance() {
+ return LazyHolder.INSTANCE;
+ }
+
+ // ApplicationStateListener implementation.
+ @Override
+ public void onActivityStateChange(Activity changedActivity, @ActivityState int newState) {
+ boolean hasActiveActivity = false;
+
+ for (Activity activity : ApplicationStatus.getRunningActivities()) {
+ if (activity == null || !(activity instanceof ChromeActivity)) continue;
+
+ hasActiveActivity |=
+ ApplicationStatus.getStateForActivity(activity) == ActivityState.RESUMED;
+ if (hasActiveActivity) break;
+ }
+
+ mInlineController.setEnabled(hasActiveActivity);
+ }
+}
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/OmahaBase.java b/chrome/android/java/src/org/chromium/chrome/browser/omaha/OmahaBase.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/omaha/OmahaBase.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/omaha/OmahaBase.java
@@ -31,6 +31,8 @@ import java.net.HttpURLConnection;
import java.net.URL;
import java.util.Date;
+import org.chromium.build.BuildConfig;
+
/**
* Keeps tabs on the current state of Chrome, tracking if and when a request should be sent to the
* Omaha Server.
@@ -88,6 +90,10 @@ public class OmahaBase {
int OFFLINE = 2;
int FAILED = 3;
}
+ public static final String PREF_TIMESTAMP_OF_REQUEST = "timestampOfRequest";
+ public static final String PREF_LATEST_MODIFIED_VERSION = "latestModifiedVersion";
+ public static final String PREF_LATEST_UPSTREAM_VERSION = "latestUpstreamVersion";
+ public static final String PREF_ALLOW_INLINE_UPDATE = "allowInlineUpdate";
private static final int UNKNOWN_DATE = -2;
@@ -145,7 +151,8 @@ public class OmahaBase {
@@ -145,7 +145,8 @@ public class OmahaBase {
}
static boolean isDisabled() {
@@ -191,7 +219,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/OmahaBase
}
/**
@@ -585,6 +592,10 @@ public class OmahaBase {
@@ -585,6 +586,10 @@ public class OmahaBase {
/** Sends the request to the server and returns the response. */
static String sendRequestToServer(HttpURLConnection urlConnection, String request)
throws RequestFailureException {
@@ -202,54 +230,6 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/OmahaBase
try {
OutputStream out = new BufferedOutputStream(urlConnection.getOutputStream());
OutputStreamWriter writer = new OutputStreamWriter(out);
@@ -660,4 +671,47 @@ public class OmahaBase {
// updateStatus is only used for the on-demand check.
null);
}
+
+ public static boolean isNewVersionAvailableByVersion(VersionNumber latestVersion) {
+ VersionNumber mCurrentProductVersion = VersionNumber.fromString(VersionInfo.getProductVersion());
+ if (mCurrentProductVersion == null) {
+ Log.e(TAG, "BromiteUpdater: current product version is null");
+ return false;
+ }
+
+ Log.i(TAG, "BromiteUpdater: currentProductVersion=%s, latestVersion=%s",
+ mCurrentProductVersion.toString(), latestVersion.toString());
+
+ return mCurrentProductVersion.isSmallerThan(latestVersion);
+ }
+
+ public static void updateLastPushedTimeStamp(long timeMillis) {
+ SharedPreferences preferences = OmahaBase.getSharedPreferences();
+ SharedPreferences.Editor editor = preferences.edit();
+ editor.putLong(OmahaBase.PREF_TIMESTAMP_OF_REQUEST, timeMillis);
+ editor.apply();
+ }
+
+ public static void setLatestModifiedVersion(String version) {
+ SharedPreferences preferences = OmahaBase.getSharedPreferences();
+ SharedPreferences.Editor editor = preferences.edit();
+ editor.putString(OmahaBase.PREF_LATEST_MODIFIED_VERSION, version);
+ editor.apply();
+ }
+
+ public static void setLatestUpstreamVersion(String version) {
+ SharedPreferences preferences = OmahaBase.getSharedPreferences();
+ SharedPreferences.Editor editor = preferences.edit();
+ editor.putString(OmahaBase.PREF_LATEST_UPSTREAM_VERSION, version);
+ editor.apply();
+ }
+
+ public static void resetUpdatePrefs() {
+ SharedPreferences preferences = OmahaBase.getSharedPreferences();
+ SharedPreferences.Editor editor = preferences.edit();
+ editor.putLong(OmahaBase.PREF_TIMESTAMP_OF_REQUEST, 0);
+ editor.putString(OmahaBase.PREF_LATEST_MODIFIED_VERSION, "");
+ editor.putString(OmahaBase.PREF_LATEST_UPSTREAM_VERSION, "");
+ editor.apply();
+ }
}
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/UpdateMenuItemHelper.java b/chrome/android/java/src/org/chromium/chrome/browser/omaha/UpdateMenuItemHelper.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/omaha/UpdateMenuItemHelper.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/omaha/UpdateMenuItemHelper.java
@@ -261,20 +241,44 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/UpdateMen
import org.chromium.base.BuildInfo;
import org.chromium.base.Callback;
@@ -146,8 +147,21 @@ public class UpdateMenuItemHelper {
@@ -24,6 +25,7 @@ import org.chromium.base.task.TaskTraits;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.omaha.UpdateStatusProvider.UpdateState;
import org.chromium.chrome.browser.omaha.UpdateStatusProvider.UpdateStatus;
+import org.chromium.chrome.browser.omaha.CromiteUpdateStatusProvider;
import org.chromium.chrome.browser.preferences.Pref;
import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.profiles.ProfileKeyedMap;
@@ -115,7 +117,7 @@ public class UpdateMenuItemHelper {
return;
}
- UpdateStatusProvider.getInstance().addObserver(mUpdateCallback);
+ CromiteUpdateStatusProvider.getInstance().addObserver(mUpdateCallback);
}
/** Unregisters {@code observer} from menu state changes. */
@@ -140,14 +142,27 @@ public class UpdateMenuItemHelper {
if (TextUtils.isEmpty(mStatus.updateUrl)) return;
try {
- UpdateStatusProvider.getInstance()
+ CromiteUpdateStatusProvider.getInstance()
.startIntentUpdate(activity, /* newTask= */ false);
} catch (ActivityNotFoundException e) {
Log.e(TAG, "Failed to launch Activity for: %s", mStatus.updateUrl);
}
break;
+ case UpdateState.VULNERABLE_VERSION:
+ // Intentional fall through.
+ case UpdateState.INLINE_UPDATE_AVAILABLE:
+ UpdateStatusProvider.getInstance().startInlineUpdate(activity);
+ CromiteUpdateStatusProvider.getInstance().startInlineUpdate(activity);
+ break;
+ case UpdateState.INLINE_UPDATE_READY:
+ UpdateStatusProvider.getInstance().finishInlineUpdate();
+ CromiteUpdateStatusProvider.getInstance().finishInlineUpdate();
+ break;
+ case UpdateState.INLINE_UPDATE_FAILED:
+ UpdateStatusProvider.getInstance().retryInlineUpdate(activity);
+ CromiteUpdateStatusProvider.getInstance().retryInlineUpdate(activity);
+ break;
case UpdateState.UNSUPPORTED_OS_VERSION:
// Intentional fall through.
@@ -283,7 +287,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/UpdateMen
default:
return;
}
@@ -196,7 +210,7 @@ public class UpdateMenuItemHelper {
@@ -183,7 +198,7 @@ public class UpdateMenuItemHelper {
if (mStatus == null) return;
if (mStatus.updateState != UpdateState.UNSUPPORTED_OS_VERSION) return;
- UpdateStatusProvider.getInstance().updateLatestUnsupportedVersion();
+ CromiteUpdateStatusProvider.getInstance().updateLatestUnsupportedVersion();
}
private void handleStateChanged() {
@@ -196,7 +211,7 @@ public class UpdateMenuItemHelper {
mMenuUiState = new MenuUiState();
switch (mStatus.updateState) {
@@ -292,7 +305,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
// even newer version of Chrome available.
showBadge |=
@@ -255,6 +269,72 @@ public class UpdateMenuItemHelper {
@@ -255,6 +270,72 @@ public class UpdateMenuItemHelper {
mMenuUiState.itemState.icon = R.drawable.ic_error_24dp_filled;
mMenuUiState.itemState.enabled = false;
break;
@@ -369,7 +382,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/Br
new file mode 100644
--- /dev/null
+++ b/chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/BromiteInlineUpdateController.java
@@ -0,0 +1,273 @@
@@ -0,0 +1,285 @@
+// Copyright 2021 The Ungoogled Chromium Authors. All rights reserved.
+//
+// This file is part of Ungoogled Chromium Android.
@@ -407,8 +420,10 @@ new file mode 100644
+import org.chromium.base.task.TaskTraits;
+import org.chromium.chrome.browser.app.ChromeActivity;
+import org.chromium.chrome.browser.omaha.OmahaBase;
+import org.chromium.chrome.browser.omaha.OmahaPrefUtils;
+import org.chromium.chrome.browser.omaha.UpdateConfigs;
+import org.chromium.chrome.browser.omaha.UpdateStatusProvider;
+import org.chromium.chrome.browser.omaha.VersionNumber;
+import org.chromium.chrome.browser.profiles.Profile;
+import org.chromium.chrome.browser.profiles.ProfileManager;
+import org.chromium.chrome.browser.tab.TabLaunchType;
@@ -428,7 +443,6 @@ new file mode 100644
+
+import org.chromium.chrome.browser.endpoint_fetcher.EndpointFetcher;
+import org.chromium.chrome.browser.endpoint_fetcher.EndpointResponse;
+import org.chromium.chrome.browser.omaha.VersionNumber;
+
+public class BromiteInlineUpdateController implements InlineUpdateController {
+
@@ -438,10 +452,16 @@ new file mode 100644
+ private final String UPSTREAM_VERSION_URL = "https://www.bromite.org/upstream.txt";
+ public static final String VULNERABLE_VERSION_DOC_URL = "https://www.bromite.org/vulnerable-version";
+
+ public static String getDownloadUrl() {
+ @Override
+ public String getDownloadUrl() {
+ return UPDATE_VERSION_URL + BuildConfig.BUILD_TARGET_CPU + "_ChromePublic.apk";
+ }
+
+ @Override
+ public String getVulnerableVersionDocUrl() {
+ return VULNERABLE_VERSION_DOC_URL;
+ }
+
+ private static final NetworkTrafficAnnotationTag TRAFFIC_ANNOTATION =
+ NetworkTrafficAnnotationTag.createComplete("bromite_inline_update_controller",
+ "semantics {"
@@ -476,7 +496,10 @@ new file mode 100644
+ UpdateStatusProvider.UpdateState.NONE;
+ private String mUpdateUrl = "";
+
+ BromiteInlineUpdateController(Runnable callback) {
+ public BromiteInlineUpdateController() {}
+
+ @Override
+ public void setCallback(Runnable callback) {
+ mCallback = callback;
+ }
+
@@ -516,8 +539,8 @@ new file mode 100644
+ }
+
+ private void pullCurrentState() {
+ if (OmahaBase.getSharedPreferences()
+ .getBoolean(OmahaBase.PREF_ALLOW_INLINE_UPDATE, false) == false) {
+ if (OmahaPrefUtils.getSharedPreferences()
+ .getBoolean(OmahaPrefUtils.PREF_ALLOW_INLINE_UPDATE, false) == false) {
+ Log.i(TAG, "BromiteUpdater: disabled by user");
+ return;
+ }
@@ -533,16 +556,16 @@ new file mode 100644
+ case UpdateStatusProvider.UpdateState.INLINE_UPDATE_AVAILABLE:
+ break;
+ case UpdateStatusProvider.UpdateState.NONE:
+ OmahaBase.resetUpdatePrefs();
+ OmahaPrefUtils.resetUpdatePrefs();
+ checkLatestVersion((latestVersion) -> {
+ if (latestVersion == null) return;
+
+ if (OmahaBase.isNewVersionAvailableByVersion(latestVersion)) {
+ if (OmahaPrefUtils.isNewVersionAvailableByVersion(latestVersion)) {
+ postStatus(UpdateStatusProvider.UpdateState.INLINE_UPDATE_AVAILABLE, getDownloadUrl());
+ } else {
+ checkLatestUpstreamVersion((latestUpstreamVersion) -> {
+ if (latestUpstreamVersion == null) return;
+ if (OmahaBase.isNewVersionAvailableByVersion(latestUpstreamVersion)) {
+ if (OmahaPrefUtils.isNewVersionAvailableByVersion(latestUpstreamVersion)) {
+ postStatus(UpdateStatusProvider.UpdateState.VULNERABLE_VERSION, VULNERABLE_VERSION_DOC_URL);
+ }
+ });
@@ -566,8 +589,8 @@ new file mode 100644
+
+ private boolean shallUpdate() {
+ long currentTime = System.currentTimeMillis();
+ SharedPreferences preferences = OmahaBase.getSharedPreferences();
+ long lastPushedTimeStamp = preferences.getLong(OmahaBase.PREF_TIMESTAMP_OF_REQUEST, 0);
+ SharedPreferences preferences = OmahaPrefUtils.getSharedPreferences();
+ long lastPushedTimeStamp = preferences.getLong(OmahaPrefUtils.PREF_TIMESTAMP_OF_REQUEST, 0);
+ return currentTime - lastPushedTimeStamp >= getUpdateNotificationInterval();
+ }
+
@@ -590,7 +613,9 @@ new file mode 100644
+ VersionNumber version = VersionNumber.fromString(parts[0]);
+ if (version != null) {
+ versionFound = true;
+ OmahaBase.setLatestModifiedVersion(parts[0]);
+ if (UPSTREAM_VERSION_URL.equals(""))
+ OmahaPrefUtils.updateLastPushedTimeStamp(System.currentTimeMillis());
+ OmahaPrefUtils.setLatestModifiedVersion(parts[0]);
+ callback.onResult(version);
+ return;
+ }
@@ -599,7 +624,7 @@ new file mode 100644
+ }
+ if (!versionFound) {
+ // retry after 1 hour
+ OmahaBase.updateLastPushedTimeStamp(
+ OmahaPrefUtils.updateLastPushedTimeStamp(
+ System.currentTimeMillis() - getUpdateNotificationInterval() -
+ DateUtils.HOUR_IN_MILLIS);
+ Log.e(TAG, "BromiteUpdater: failed, will retry in 1 hour");
@@ -620,13 +645,13 @@ new file mode 100644
+ Log.i(TAG, "BromiteUpdater: obtained upstream version update response '%s'", response);
+ VersionNumber version = VersionNumber.fromString(response);
+ if (version != null) {
+ OmahaBase.updateLastPushedTimeStamp(System.currentTimeMillis());
+ OmahaBase.setLatestUpstreamVersion(response);
+ OmahaPrefUtils.updateLastPushedTimeStamp(System.currentTimeMillis());
+ OmahaPrefUtils.setLatestUpstreamVersion(response);
+ callback.onResult(version);
+ return;
+ }
+ // retry after 1 hour
+ OmahaBase.updateLastPushedTimeStamp(
+ OmahaPrefUtils.updateLastPushedTimeStamp(
+ System.currentTimeMillis() - getUpdateNotificationInterval() -
+ DateUtils.HOUR_IN_MILLIS);
+ Log.e(TAG, "BromiteUpdater: failed to fetch upstream version, will retry in 1 hour");
@@ -643,88 +668,6 @@ new file mode 100644
+ PostTask.postTask(TaskTraits.UI_DEFAULT, mCallback);
+ }
+}
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/InlineUpdateController.java b/chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/InlineUpdateController.java
new file mode 100644
--- /dev/null
+++ b/chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/InlineUpdateController.java
@@ -0,0 +1,51 @@
+// Copyright 2019 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+package org.chromium.chrome.browser.omaha.inline;
+
+import android.app.Activity;
+import android.content.Intent;
+
+import androidx.annotation.Nullable;
+
+import org.chromium.chrome.browser.omaha.UpdateStatusProvider;
+
+/**
+ * Helper for gluing interactions with the Play store's AppUpdateManager with Chrome. This
+ * involves hooking up to Play as a listener for install state changes, should only happen if we are
+ * in the foreground.
+ */
+public interface InlineUpdateController {
+ /**
+ * Enables or disables the controller. It will trigger an update check when previously disabled.
+ * @param enabled true iff the controller should be enabled.
+ */
+ void setEnabled(boolean enabled);
+
+ /**
+ * @return The current state of the inline update process. May be {@code null} if the state
+ * hasn't been determined yet.
+ */
+ @Nullable
+ @UpdateStatusProvider.UpdateState
+ Integer getStatus();
+
+ /**
+ * @return The current update URL for the inline update process. May be an empty string if the state
+ * hasn't been determined yet or if state does not specify one.
+ */
+ String getUpdateUrl();
+
+ /**
+ * Starts the update, if possible. This will send an {@link Intent} out to play, which may
+ * cause Chrome to move to the background.
+ * @param activity The {@link Activity} to use to interact with Play.
+ */
+ void startUpdate(Activity activity);
+
+ /**
+ * Completes the Play installation process, if possible. This may cause Chrome to restart.
+ */
+ void completeUpdate();
+}
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/InlineUpdateControllerFactory.java b/chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/InlineUpdateControllerFactory.java
new file mode 100644
--- /dev/null
+++ b/chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/InlineUpdateControllerFactory.java
@@ -0,0 +1,21 @@
+// Copyright 2019 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+package org.chromium.chrome.browser.omaha.inline;
+
+import org.chromium.base.ContextUtils;
+import org.chromium.chrome.browser.flags.ChromeFeatureList;
+import org.chromium.chrome.browser.omaha.UpdateConfigs;
+
+/**
+ * A factory that creates an {@link InlineUpdateController} instance.
+ */
+public class InlineUpdateControllerFactory {
+ /**
+ * @return A new {@link InlineUpdateController}.
+ */
+ public static InlineUpdateController create(Runnable callback) {
+ return new BromiteInlineUpdateController(callback);
+ }
+}
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -1160,6 +1103,89 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
public static final String INTEREST_FEED_V2_HEARTS = "InterestFeedV2Hearts";
public static final String IP_PROTECTION_V1 = "IpProtectionV1";
public static final String IP_PROTECTION_UX = "IpProtectionUx";
diff --git a/chrome/browser/omaha/android/BUILD.gn b/chrome/browser/omaha/android/BUILD.gn
--- a/chrome/browser/omaha/android/BUILD.gn
+++ b/chrome/browser/omaha/android/BUILD.gn
@@ -19,6 +19,9 @@ android_library("java") {
"java/src/org/chromium/chrome/browser/omaha/metrics/TrackingProvider.java",
"java/src/org/chromium/chrome/browser/omaha/metrics/UpdateSuccessMetrics.java",
]
+ sources += [
+ "java/src/org/chromium/chrome/browser/omaha/inline/InlineUpdateController.java",
+ ]
deps = [
":update_proto_java",
"//base:base_cached_flags_java",
diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/omaha/OmahaPrefUtils.java b/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/omaha/OmahaPrefUtils.java
--- a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/omaha/OmahaPrefUtils.java
+++ b/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/omaha/OmahaPrefUtils.java
@@ -7,7 +7,9 @@ package org.chromium.chrome.browser.omaha;
import android.content.Context;
import android.content.SharedPreferences;
+import org.chromium.base.Log;
import org.chromium.base.ContextUtils;
+import org.chromium.base.version_info.VersionInfo;
public class OmahaPrefUtils {
// Flags for retrieving the OmahaClient's state after it's written to disk.
@@ -22,7 +24,55 @@ public class OmahaPrefUtils {
static final String PREF_TIMESTAMP_FOR_NEW_REQUEST = "timestampForNewRequest";
static final String PREF_TIMESTAMP_FOR_NEXT_POST_ATTEMPT = "timestampForNextPostAttempt";
static final String PREF_TIMESTAMP_OF_INSTALL = "timestampOfInstall";
- static final String PREF_TIMESTAMP_OF_REQUEST = "timestampOfRequest";
+ public static final String PREF_TIMESTAMP_OF_REQUEST = "timestampOfRequest";
+ static final String PREF_LATEST_MODIFIED_VERSION = "latestModifiedVersion";
+ static final String PREF_LATEST_UPSTREAM_VERSION = "latestUpstreamVersion";
+ public static final String PREF_ALLOW_INLINE_UPDATE = "allowInlineUpdate";
+
+ static final String TAG = "omaha_utils";
+
+ public static boolean isNewVersionAvailableByVersion(VersionNumber latestVersion) {
+ VersionNumber mCurrentProductVersion = VersionNumber.fromString(VersionInfo.getProductVersion());
+ if (mCurrentProductVersion == null) {
+ Log.e(TAG, "BromiteUpdater: current product version is null");
+ return false;
+ }
+
+ Log.i(TAG, "BromiteUpdater: currentProductVersion=%s, latestVersion=%s",
+ mCurrentProductVersion.toString(), latestVersion.toString());
+
+ return mCurrentProductVersion.isSmallerThan(latestVersion);
+ }
+
+ public static void updateLastPushedTimeStamp(long timeMillis) {
+ SharedPreferences preferences = getSharedPreferences();
+ SharedPreferences.Editor editor = preferences.edit();
+ editor.putLong(PREF_TIMESTAMP_OF_REQUEST, timeMillis);
+ editor.apply();
+ }
+
+ public static void setLatestModifiedVersion(String version) {
+ SharedPreferences preferences = getSharedPreferences();
+ SharedPreferences.Editor editor = preferences.edit();
+ editor.putString(PREF_LATEST_MODIFIED_VERSION, version);
+ editor.apply();
+ }
+
+ public static void setLatestUpstreamVersion(String version) {
+ SharedPreferences preferences = getSharedPreferences();
+ SharedPreferences.Editor editor = preferences.edit();
+ editor.putString(PREF_LATEST_UPSTREAM_VERSION, version);
+ editor.apply();
+ }
+
+ public static void resetUpdatePrefs() {
+ SharedPreferences preferences = getSharedPreferences();
+ SharedPreferences.Editor editor = preferences.edit();
+ editor.putLong(PREF_TIMESTAMP_OF_REQUEST, 0);
+ editor.putString(PREF_LATEST_MODIFIED_VERSION, "");
+ editor.putString(PREF_LATEST_UPSTREAM_VERSION, "");
+ editor.apply();
+ }
/** Returns the Omaha SharedPreferences. */
public static SharedPreferences getSharedPreferences() {
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
+++ b/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/omaha/UpdateConfigs.java
@@ -1251,18 +1277,15 @@ diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/o
import org.chromium.base.BuildInfo;
import org.chromium.base.Callback;
import org.chromium.base.ObserverList;
@@ -27,6 +30,10 @@ import org.chromium.base.task.AsyncTask;
@@ -27,6 +30,7 @@ import org.chromium.base.task.AsyncTask;
import org.chromium.base.task.AsyncTask.Status;
import org.chromium.base.task.PostTask;
import org.chromium.base.task.TaskTraits;
+import org.chromium.chrome.browser.app.ChromeActivity;
+import org.chromium.chrome.browser.omaha.inline.BromiteInlineUpdateController;
+import org.chromium.chrome.browser.omaha.inline.InlineUpdateController;
+import org.chromium.chrome.browser.omaha.inline.InlineUpdateControllerFactory;
import org.chromium.chrome.browser.omaha.metrics.UpdateSuccessMetrics;
import org.chromium.chrome.browser.preferences.ChromePreferenceKeys;
import org.chromium.chrome.browser.preferences.ChromeSharedPreferences;
@@ -36,30 +43,37 @@ import java.io.File;
@@ -36,30 +40,37 @@ import java.io.File;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
@@ -1278,7 +1301,7 @@ diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/o
* For manually testing this functionality, see {@link UpdateConfigs}.
*/
-public class UpdateStatusProvider {
+public class UpdateStatusProvider implements ActivityStateListener {
+public abstract class UpdateStatusProvider implements ActivityStateListener {
/**
* Possible update states.
* Treat this as append only as it is used by UMA.
@@ -1308,7 +1331,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. */
@@ -93,6 +107,12 @@ public class UpdateStatusProvider {
@@ -93,6 +104,12 @@ public class UpdateStatusProvider {
*/
private boolean mIsSimulated;
@@ -1321,7 +1344,7 @@ diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/o
public UpdateStatus() {}
UpdateStatus(UpdateStatus other) {
@@ -101,11 +121,13 @@ public class UpdateStatusProvider {
@@ -101,11 +118,13 @@ public class UpdateStatusProvider {
latestVersion = other.latestVersion;
latestUnsupportedVersion = other.latestUnsupportedVersion;
mIsSimulated = other.mIsSimulated;
@@ -1331,11 +1354,23 @@ diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/o
private final ObserverList<Callback<UpdateStatus>> mObservers = new ObserverList<>();
+ private final InlineUpdateController mInlineController;
+ protected final InlineUpdateController mInlineController;
private final UpdateQuery mOmahaQuery;
private final UpdateSuccessMetrics mMetrics;
private @Nullable UpdateStatus mStatus;
@@ -173,6 +195,30 @@ public class UpdateStatusProvider {
@@ -113,11 +132,6 @@ public class UpdateStatusProvider {
/** Whether or not we've recorded the initial update status yet. */
private boolean mRecordedInitialStatus;
- /** @return Returns a singleton of {@link UpdateStatusProvider}. */
- public static UpdateStatusProvider getInstance() {
- return LazyHolder.INSTANCE;
- }
-
/**
* 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
@@ -173,6 +187,30 @@ public class UpdateStatusProvider {
pingObservers();
}
@@ -1366,7 +1401,7 @@ diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/o
/**
* Starts the intent update process, if possible
* @param context An {@link Context} that will be used to fire off the update intent.
@@ -180,12 +226,11 @@ public class UpdateStatusProvider {
@@ -180,12 +218,11 @@ public class UpdateStatusProvider {
* @return Whether or not the update intent was sent and had a valid handler.
*/
public boolean startIntentUpdate(Context context, boolean newTask) {
@@ -1380,29 +1415,17 @@ 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));
if (newTask) intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent);
@@ -196,9 +241,29 @@ public class UpdateStatusProvider {
@@ -196,9 +233,15 @@ public class UpdateStatusProvider {
return true;
}
+ // ApplicationStateListener implementation.
+ @Override
+ public void onActivityStateChange(Activity changedActivity, @ActivityState int newState) {
+ boolean hasActiveActivity = false;
- private UpdateStatusProvider() {
- mOmahaQuery = new UpdateQuery(this::resolveStatus);
+ protected UpdateStatusProvider(InlineUpdateController inlineController) {
+ mInlineController = inlineController;
+ mInlineController.setCallback(this::resolveStatus);
+
+ for (Activity activity : ApplicationStatus.getRunningActivities()) {
+ if (activity == null || !(activity instanceof ChromeActivity)) continue;
+
+ hasActiveActivity |=
+ ApplicationStatus.getStateForActivity(activity) == ActivityState.RESUMED;
+ if (hasActiveActivity) break;
+ }
+
+ mInlineController.setEnabled(hasActiveActivity);
+ }
+
private UpdateStatusProvider() {
+ mInlineController = InlineUpdateControllerFactory.create(this::resolveStatus);
mOmahaQuery = new UpdateQuery(this::resolveStatus);
+ mOmahaQuery = new UpdateQuery(mInlineController, this::resolveStatus);
mMetrics = new UpdateSuccessMetrics();
+
+ // Note that as a singleton this class never unregisters.
@@ -1410,7 +1433,7 @@ diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/o
}
private void pingObservers() {
@@ -206,19 +271,36 @@ public class UpdateStatusProvider {
@@ -206,35 +249,52 @@ public class UpdateStatusProvider {
}
private void resolveStatus() {
@@ -1451,15 +1474,28 @@ diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/o
mRecordedInitialStatus = true;
}
@@ -230,6 +312,7 @@ public class UpdateStatusProvider {
pingObservers();
}
- private static final class LazyHolder {
- private static final UpdateStatusProvider INSTANCE = new UpdateStatusProvider();
- }
-
private static final class UpdateQuery extends AsyncTask<UpdateStatus> {
+ static final String TAG = "UpdateStatusProvider";
private final Runnable mCallback;
private @Nullable UpdateStatus mStatus;
@@ -246,7 +329,7 @@ public class UpdateStatusProvider {
- public UpdateQuery(@NonNull Runnable resultReceiver) {
+ private InlineUpdateController mInlineController;
+
+ public UpdateQuery(InlineUpdateController inlineController, @NonNull Runnable resultReceiver) {
+ mInlineController = inlineController;
mCallback = resultReceiver;
}
@@ -246,7 +306,7 @@ public class UpdateStatusProvider {
protected UpdateStatus doInBackground() {
UpdateStatus testStatus = getTestStatus();
if (testStatus != null) return testStatus;
@@ -1468,7 +1504,7 @@ diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/o
}
@Override
@@ -264,6 +347,8 @@ public class UpdateStatusProvider {
@@ -264,6 +324,8 @@ public class UpdateStatusProvider {
status.mIsSimulated = true;
status.updateState = forcedUpdateState;
@@ -1477,7 +1513,7 @@ diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/o
// Push custom configurations for certain update states.
switch (forcedUpdateState) {
case UpdateState.UPDATE_AVAILABLE:
@@ -281,31 +366,33 @@ public class UpdateStatusProvider {
@@ -281,31 +343,33 @@ public class UpdateStatusProvider {
return status;
}
@@ -1507,26 +1543,26 @@ diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/o
- .readString(ChromePreferenceKeys.LATEST_UNSUPPORTED_VERSION, null);
- } else {
- status.updateState = UpdateState.NONE;
+ SharedPreferences preferences = OmahaBase.getSharedPreferences();
+ status.latestVersion = preferences.getString(OmahaBase.PREF_LATEST_MODIFIED_VERSION, "");
+ SharedPreferences preferences = OmahaPrefUtils.getSharedPreferences();
+ status.latestVersion = preferences.getString(OmahaPrefUtils.PREF_LATEST_MODIFIED_VERSION, "");
+
+ status.updateState = UpdateState.NONE;
+ if (status.latestVersion != null && status.latestVersion.length() != 0) {
+ VersionNumber latestVersion = VersionNumber.fromString(status.latestVersion);
+ if (latestVersion == null) {
+ Log.e(TAG, "BromiteUpdater: stored latest version '%s' is invalid", status.latestVersion);
+ } else if (OmahaBase.isNewVersionAvailableByVersion(latestVersion)) {
+ } else if (OmahaPrefUtils.isNewVersionAvailableByVersion(latestVersion)) {
+ status.updateState = UpdateState.INLINE_UPDATE_AVAILABLE;
+ status.updateUrl = BromiteInlineUpdateController.getDownloadUrl();
+ status.updateUrl = mInlineController.getDownloadUrl();
+ return status;
+ }
+ String latestUpstreamVersion = preferences.getString(OmahaBase.PREF_LATEST_UPSTREAM_VERSION, "");
+ String latestUpstreamVersion = preferences.getString(OmahaPrefUtils.PREF_LATEST_UPSTREAM_VERSION, "");
+ if (latestUpstreamVersion != null && latestUpstreamVersion.length() != 0) {
+ VersionNumber upstreamVersion = VersionNumber.fromString(latestUpstreamVersion);
+ if (upstreamVersion == null) {
+ Log.e(TAG, "BromiteUpdater: stored latest upstream version '%s' is invalid", latestUpstreamVersion);
+ } else if (OmahaBase.isNewVersionAvailableByVersion(upstreamVersion)) {
+ status.updateUrl = BromiteInlineUpdateController.VULNERABLE_VERSION_DOC_URL;
+ } else if (OmahaPrefUtils.isNewVersionAvailableByVersion(upstreamVersion)) {
+ status.updateUrl = mInlineController.getVulnerableVersionDocUrl();
+ status.updateState = UpdateState.VULNERABLE_VERSION;
+ return status;
+ }
@@ -1547,6 +1583,68 @@ diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/o
protected VersionNumberGetter() {}
diff --git a/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/omaha/inline/InlineUpdateController.java b/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/omaha/inline/InlineUpdateController.java
new file mode 100644
--- /dev/null
+++ b/chrome/browser/omaha/android/java/src/org/chromium/chrome/browser/omaha/inline/InlineUpdateController.java
@@ -0,0 +1,57 @@
+// Copyright 2019 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+package org.chromium.chrome.browser.omaha.inline;
+
+import android.app.Activity;
+import android.content.Intent;
+
+import androidx.annotation.Nullable;
+
+import org.chromium.chrome.browser.omaha.UpdateStatusProvider;
+
+/**
+ * Helper for gluing interactions with the Play store's AppUpdateManager with Chrome. This
+ * involves hooking up to Play as a listener for install state changes, should only happen if we are
+ * in the foreground.
+ */
+public interface InlineUpdateController {
+ void setCallback(Runnable callback);
+
+ /**
+ * Enables or disables the controller. It will trigger an update check when previously disabled.
+ * @param enabled true iff the controller should be enabled.
+ */
+ void setEnabled(boolean enabled);
+
+ /**
+ * @return The current state of the inline update process. May be {@code null} if the state
+ * hasn't been determined yet.
+ */
+ @Nullable
+ @UpdateStatusProvider.UpdateState
+ Integer getStatus();
+
+ /**
+ * @return The current update URL for the inline update process. May be an empty string if the state
+ * hasn't been determined yet or if state does not specify one.
+ */
+ String getUpdateUrl();
+
+ String getDownloadUrl();
+
+ String getVulnerableVersionDocUrl();
+
+ /**
+ * Starts the update, if possible. This will send an {@link Intent} out to play, which may
+ * cause Chrome to move to the background.
+ * @param activity The {@link Activity} to use to interact with Play.
+ */
+ void startUpdate(Activity activity);
+
+ /**
+ * Completes the Play installation process, if possible. This may cause Chrome to restart.
+ */
+ void completeUpdate();
+}
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -32,7 +32,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
chrome/browser/flags/BUILD.gn | 3 +
.../flags/android/adblock_native_gateway.cc | 31 ++
.../browser/flags/AdBlockNativeGateway.java | 30 ++
.../net/system_network_context_manager.cc | 8 +
.../net/system_network_context_manager.cc | 4 +
.../sessions/session_restore_android.cc | 6 +-
.../strings/android_chrome_strings.grd | 14 +
chrome/common/pref_names.h | 5 +
@@ -49,10 +49,10 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../unindexed_ruleset_stream_generator.cc | 3 +
.../core/browser/ruleset_version.h | 4 +
.../browser/subresource_filter_features.cc | 116 +-------
.../core/browser/verified_ruleset_dealer.cc | 3 +
.../core/browser/verified_ruleset_dealer.cc | 4 +
.../core/common/indexed_ruleset.cc | 5 +-
.../Bromite-subresource-adblocker.inc | 3 +
40 files changed, 1259 insertions(+), 127 deletions(-)
40 files changed, 1256 insertions(+), 127 deletions(-)
create mode 100644 chrome/android/java/res/layout/adblock_editor.xml
create mode 100644 chrome/android/java/res/xml/adblock_preferences.xml
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/settings/AdBlockEditor.java
@@ -672,15 +672,11 @@ new file mode 100755
diff --git a/chrome/browser/net/system_network_context_manager.cc b/chrome/browser/net/system_network_context_manager.cc
--- a/chrome/browser/net/system_network_context_manager.cc
+++ b/chrome/browser/net/system_network_context_manager.cc
@@ -642,6 +642,14 @@ SystemNetworkContextManager::~SystemNetworkContextManager() {
@@ -642,6 +642,10 @@ SystemNetworkContextManager::~SystemNetworkContextManager() {
void SystemNetworkContextManager::RegisterPrefs(PrefRegistrySimple* registry) {
StubResolverConfigReader::RegisterPrefs(registry);
+#if BUILDFLAG(IS_ANDROID)
+ registry->RegisterBooleanPref(prefs::kAdBlockEnabled, true);
+#else
+ registry->RegisterBooleanPref(prefs::kAdBlockEnabled, false);
+#endif
+ registry->RegisterStringPref(prefs::kAdBlockFiltersURL,
+ "https://www.bromite.org/filters/filters.dat");
+
@@ -1948,7 +1944,15 @@ diff --git a/components/subresource_filter/core/browser/subresource_filter_featu
diff --git a/components/subresource_filter/core/browser/verified_ruleset_dealer.cc b/components/subresource_filter/core/browser/verified_ruleset_dealer.cc
--- a/components/subresource_filter/core/browser/verified_ruleset_dealer.cc
+++ b/components/subresource_filter/core/browser/verified_ruleset_dealer.cc
@@ -38,6 +38,9 @@ RulesetFilePtr VerifiedRulesetDealer::OpenAndSetRulesetFile(
@@ -11,6 +11,7 @@
#include "base/functional/bind.h"
#include "base/functional/callback_helpers.h"
#include "base/location.h"
+#include "base/logging.h"
#include "base/notreached.h"
#include "base/task/sequenced_task_runner.h"
#include "base/trace_event/trace_event.h"
@@ -38,6 +39,9 @@ RulesetFilePtr VerifiedRulesetDealer::OpenAndSetRulesetFile(
TRACE_EVENT1(TRACE_DISABLED_BY_DEFAULT("loading"),
"VerifiedRulesetDealer::OpenAndSetRulesetFile", "file_valid",
file->IsValid());
@@ -40,7 +40,7 @@ Require: bromite-build-utils.patch
.../browser_ui/site_settings/android/BUILD.gn | 18 +
.../site_settings/AllSiteSettings.java | 5 +-
.../BromiteCustomContentSetting.java | 155 +++++++
.../BromiteCustomContentSettingImpl.java | 411 ++++++++++++++++++
.../BromiteCustomContentSettingImpl.java | 412 ++++++++++++++++++
...tomTriStateSiteSettingsPreferenceImpl.java | 24 +
.../ContentSettingsResources.java | 16 +-
.../site_settings/SingleCategorySettings.java | 50 ++-
@@ -83,7 +83,7 @@ Require: bromite-build-utils.patch
.../platform/web_content_settings_client.h | 9 +
.../execution_context/execution_context.cc | 16 +
.../execution_context/execution_context.h | 5 +
72 files changed, 1866 insertions(+), 95 deletions(-)
72 files changed, 1867 insertions(+), 95 deletions(-)
create mode 100644 components/browser_ui/settings/android/java/res/layout/preference_spinner_single_widget.xml
create mode 100644 components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/BromiteCustomContentSetting.java
create mode 100644 components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/BromiteCustomContentSettingImpl.java
@@ -1690,7 +1690,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
new file mode 100644
--- /dev/null
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/BromiteCustomContentSettingImpl.java
@@ -0,0 +1,411 @@
@@ -0,0 +1,412 @@
+/*
+ This file is part of Bromite.
+
@@ -1719,6 +1719,7 @@ new file mode 100644
+import org.chromium.components.browser_ui.site_settings.SiteSettingsCategory;
+import org.chromium.components.content_settings.ContentSettingValues;
+import org.chromium.components.content_settings.ContentSettingsType;
+import org.chromium.components.content_settings.ProviderType;
+import org.chromium.content_public.browser.BrowserContextHandle;
+import org.chromium.components.browser_ui.settings.ChromeBasePreference;
+
@@ -2050,7 +2051,7 @@ new file mode 100644
+ ContentSettingException exception = cs.createCustomException(type, value, websiteAddress);
+ if (exception == null) {
+ exception = new ContentSettingException(
+ cs.getContentSetting(), websiteAddress.getHost(), value, "",
+ cs.getContentSetting(), websiteAddress.getHost(), value, ProviderType.NONE,
+ /*isEmbargoed=*/false);
+ }
+ return exception;
+98 -15
View File
@@ -25,7 +25,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
.../mipmap-xxxhdpi/app_icon.png | Bin 9667 -> 20837 bytes
.../mipmap-xxxhdpi/layered_app_icon.png | Bin 3652 -> 29220 bytes
.../layered_app_icon_background.png | Bin 3519 -> 142032 bytes
.../inline/BromiteInlineUpdateController.java | 21 +++-
.../inline/BromiteInlineUpdateController.java | 19 +++-
chrome/app/extensions_strings.grdp | 4 +-
chrome/app/settings_strings.grdp | 2 +-
chrome/app/theme/chromium/BRANDING | 8 +-
@@ -51,9 +51,10 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
.../chromium/product_logo_white.png | Bin 1417 -> 3040 bytes
.../chromium/product_logo.png | Bin 2714 -> 7923 bytes
.../chromium/product_logo_white.png | Bin 2512 -> 6790 bytes
content/child/runtime_features.cc | 23 +++--
tools/grit/grit/grd_reader.py | 35 +++++++
ui/base/ui_base_features.cc | 3 +
49 files changed, 166 insertions(+), 99 deletions(-)
50 files changed, 175 insertions(+), 111 deletions(-)
diff --git a/build/BUILD.gn b/build/BUILD.gn
--- a/build/BUILD.gn
@@ -9115,7 +9116,7 @@ W=g!Ha2?pSwIRxeC=1^|uclqCxqvpf_
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/BromiteInlineUpdateController.java b/chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/BromiteInlineUpdateController.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/BromiteInlineUpdateController.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/BromiteInlineUpdateController.java
@@ -61,10 +61,10 @@ import org.chromium.chrome.browser.omaha.VersionNumber;
@@ -62,10 +62,10 @@ import org.chromium.chrome.browser.endpoint_fetcher.EndpointResponse;
public class BromiteInlineUpdateController implements InlineUpdateController {
private static final String TAG = "BromiteInlineUpdateController";
@@ -9128,9 +9129,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/Br
+ private final String UPSTREAM_VERSION_URL = "";
+ public static final String VULNERABLE_VERSION_DOC_URL = "";
public static String getDownloadUrl() {
return UPDATE_VERSION_URL + BuildConfig.BUILD_TARGET_CPU + "_ChromePublic.apk";
@@ -213,11 +213,20 @@ public class BromiteInlineUpdateController implements InlineUpdateController {
@Override
public String getDownloadUrl() {
@@ -223,6 +223,13 @@ public class BromiteInlineUpdateController implements InlineUpdateController {
Log.i(TAG, "BromiteUpdater: obtained response '%s' and redirect URL '%s'", endpointResponse.getResponseString(), redirectURL);
if (redirectURL.indexOf(REDIRECT_URL_PREFIX) == 0) {
redirectURL = redirectURL.substring(REDIRECT_URL_PREFIX.length());
@@ -9144,14 +9145,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/Br
String[] parts = redirectURL.split(Pattern.quote("/"));
if (parts.length > 0) {
VersionNumber version = VersionNumber.fromString(parts[0]);
if (version != null) {
versionFound = true;
+ if (UPSTREAM_VERSION_URL.equals(""))
+ OmahaBase.updateLastPushedTimeStamp(System.currentTimeMillis());
OmahaBase.setLatestModifiedVersion(parts[0]);
callback.onResult(version);
return;
@@ -240,6 +249,10 @@ public class BromiteInlineUpdateController implements InlineUpdateController {
@@ -252,6 +259,10 @@ public class BromiteInlineUpdateController implements InlineUpdateController {
}
private void checkLatestUpstreamVersion(final Callback<VersionNumber> callback) {
@@ -18868,6 +18862,95 @@ z%lwlC#@8v20MrdyXS4Cd9v0(a*!707Mi)DWKCPo$-?g#BRX!@}3RwzBwgOM1&^{Rc
z3=3bI32q;3&^A^#@RQ;k{^t41Rq+f34W3u|*@1288y{>q;|6&;qJI})ZE0^oH1|#U
EKU(of)Bpeg
diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.cc
--- a/content/child/runtime_features.cc
+++ b/content/child/runtime_features.cc
@@ -616,7 +616,7 @@ void ResolveInvalidConfigurations() {
base::FeatureList::IsEnabled(
features::kPrivacySandboxAdsAPIsM1Override)) &&
!base::FeatureList::IsEnabled(blink::features::kFencedFrames)) {
- LOG_IF(WARNING, WebRuntimeFeatures::IsFencedFramesEnabled())
+ CHECK(!WebRuntimeFeatures::IsFencedFramesEnabled())
<< "Fenced frames cannot be enabled in this configuration. Use --"
<< switches::kEnableFeatures << "="
<< blink::features::kFencedFrames.name << " instead.";
@@ -626,9 +626,8 @@ void ResolveInvalidConfigurations() {
if (!base::FeatureList::IsEnabled(blink::features::kFencedFrames) &&
base::FeatureList::IsEnabled(
blink::features::kFencedFramesLocalUnpartitionedDataAccess)) {
- LOG_IF(
- WARNING,
- WebRuntimeFeatures::IsFencedFramesLocalUnpartitionedDataAccessEnabled())
+ CHECK(
+ !WebRuntimeFeatures::IsFencedFramesLocalUnpartitionedDataAccessEnabled())
<< "Fenced frames must be enabled in order to enable local "
"unpartitioned "
<< "data access. Use --" << switches::kEnableFeatures << "="
@@ -641,7 +640,7 @@ void ResolveInvalidConfigurations() {
// The Document API should be additionally gated by the
// `kBrowsingTopicsDocumentAPI` feature.
if (!base::FeatureList::IsEnabled(blink::features::kBrowsingTopics)) {
- LOG_IF(WARNING, WebRuntimeFeatures::IsTopicsAPIEnabled())
+ CHECK(!WebRuntimeFeatures::IsTopicsAPIEnabled())
<< "Topics cannot be enabled in this configuration. Use --"
<< switches::kEnableFeatures << "="
<< blink::features::kBrowsingTopics.name << " in addition.";
@@ -661,7 +660,7 @@ void ResolveInvalidConfigurations() {
}
if (!base::FeatureList::IsEnabled(blink::features::kSharedStorageAPI)) {
- LOG_IF(WARNING, WebRuntimeFeatures::IsSharedStorageAPIEnabled())
+ CHECK(!WebRuntimeFeatures::IsSharedStorageAPIEnabled())
<< "SharedStorage cannot be enabled in this "
"configuration. Use --"
<< switches::kEnableFeatures << "="
@@ -671,7 +670,7 @@ void ResolveInvalidConfigurations() {
if (!base::FeatureList::IsEnabled(blink::features::kSharedStorageAPIM118) ||
!base::FeatureList::IsEnabled(blink::features::kSharedStorageAPI)) {
- LOG_IF(WARNING, WebRuntimeFeatures::IsSharedStorageAPIM118Enabled())
+ CHECK(!WebRuntimeFeatures::IsSharedStorageAPIM118Enabled())
<< "SharedStorage for M118+ cannot be enabled in this "
"configuration. Use --"
<< switches::kEnableFeatures << "="
@@ -682,7 +681,7 @@ void ResolveInvalidConfigurations() {
if (!base::FeatureList::IsEnabled(blink::features::kSharedStorageAPIM125) ||
!base::FeatureList::IsEnabled(blink::features::kSharedStorageAPI)) {
- LOG_IF(WARNING, WebRuntimeFeatures::IsSharedStorageAPIM125Enabled())
+ CHECK(!WebRuntimeFeatures::IsSharedStorageAPIM125Enabled())
<< "SharedStorage for M125+ cannot be enabled in this "
"configuration. Use --"
<< switches::kEnableFeatures << "="
@@ -693,7 +692,7 @@ void ResolveInvalidConfigurations() {
if (!base::FeatureList::IsEnabled(
attribution_reporting::features::kConversionMeasurement)) {
- LOG_IF(WARNING, WebRuntimeFeatures::IsAttributionReportingEnabled())
+ CHECK(!WebRuntimeFeatures::IsAttributionReportingEnabled())
<< "AttributionReporting cannot be enabled in this "
"configuration. Use --"
<< switches::kEnableFeatures << "="
@@ -706,8 +705,8 @@ void ResolveInvalidConfigurations() {
attribution_reporting::features::kConversionMeasurement) ||
!base::FeatureList::IsEnabled(
network::features::kAttributionReportingCrossAppWeb)) {
- LOG_IF(WARNING,
- WebRuntimeFeatures::IsAttributionReportingCrossAppWebEnabled())
+ CHECK(
+ !WebRuntimeFeatures::IsAttributionReportingCrossAppWebEnabled())
<< "AttributionReportingCrossAppWeb cannot be enabled in this "
"configuration. Use --"
<< switches::kEnableFeatures << "="
@@ -718,7 +717,7 @@ void ResolveInvalidConfigurations() {
}
if (!base::FeatureList::IsEnabled(blink::features::kInterestGroupStorage)) {
- LOG_IF(WARNING, WebRuntimeFeatures::IsAdInterestGroupAPIEnabled())
+ CHECK(!WebRuntimeFeatures::IsAdInterestGroupAPIEnabled())
<< "AdInterestGroupAPI cannot be enabled in this "
"configuration. Use --"
<< switches::kEnableFeatures << "="
diff --git a/tools/grit/grit/grd_reader.py b/tools/grit/grit/grd_reader.py
--- a/tools/grit/grit/grd_reader.py
+++ b/tools/grit/grit/grd_reader.py
@@ -18929,6 +19012,6 @@ diff --git a/ui/base/ui_base_features.cc b/ui/base/ui_base_features.cc
base::FEATURE_ENABLED_BY_DEFAULT);
+
+SET_CROMITE_FEATURE_ENABLED(kChromeRefresh2023);
+SET_CROMITE_FEATURE_ENABLED(kChromeWebuiRefresh2023);
+SET_CROMITE_FEATURE_ENABLED(kChromeRefreshSecondary2023);
} // namespace features
--
@@ -19,9 +19,11 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../privacy_sandbox/privacy_sandbox_prefs.cc | 2 +-
.../privacy_sandbox_settings_impl.cc | 19 ++++++++++++++-----
.../identity_manager/account_capabilities.cc | 2 +-
.../Disable-FLoC-and-privacy-sandbox.inc | 1 +
.../Disable-FLoC-and-privacy-sandbox.inc | 4 ++++
third_party/blink/common/features.cc | 1 +
12 files changed, 32 insertions(+), 22 deletions(-)
13 files changed, 33 insertions(+), 22 deletions(-)
create mode 100644 cromite_flags/content/common/features_cc/Disable-FLoC-and-privacy-sandbox.inc
create mode 100644 cromite_flags/third_party/blink/common/features_cc/Disable-FLoC-and-privacy-sandbox.inc
diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc
@@ -219,6 +221,12 @@ diff --git a/components/signin/public/identity_manager/account_capabilities.cc b
}
signin::Tribool AccountCapabilities::is_opted_in_to_parental_supervision()
diff --git a/cromite_flags/content/common/features_cc/Disable-FLoC-and-privacy-sandbox.inc b/cromite_flags/content/common/features_cc/Disable-FLoC-and-privacy-sandbox.inc
new file mode 100644
--- /dev/null
+++ b/cromite_flags/content/common/features_cc/Disable-FLoC-and-privacy-sandbox.inc
@@ -0,0 +1 @@
+SET_CROMITE_FEATURE_DISABLED(kPrivacySandboxAdsAPIsM1Override);
diff --git a/cromite_flags/third_party/blink/common/features_cc/Disable-FLoC-and-privacy-sandbox.inc b/cromite_flags/third_party/blink/common/features_cc/Disable-FLoC-and-privacy-sandbox.inc
new file mode 100644
--- /dev/null
+10 -3
View File
@@ -4,17 +4,24 @@ Subject: Disable FedCm
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
.../content/public/common/content_features_cc/Disable-FedCm.inc | 2 ++
.../content/public/common/content_features_cc/Disable-FedCm.inc | 1 +
.../third_party/blink/common/features_cc/Disable-FedCm.inc | 1 +
.../blink/renderer/platform/runtime_enabled_features.json5 | 2 +-
2 files changed, 3 insertions(+), 1 deletion(-)
3 files changed, 3 insertions(+), 1 deletion(-)
create mode 100644 cromite_flags/content/public/common/content_features_cc/Disable-FedCm.inc
create mode 100644 cromite_flags/third_party/blink/common/features_cc/Disable-FedCm.inc
diff --git a/cromite_flags/content/public/common/content_features_cc/Disable-FedCm.inc b/cromite_flags/content/public/common/content_features_cc/Disable-FedCm.inc
new file mode 100644
--- /dev/null
+++ b/cromite_flags/content/public/common/content_features_cc/Disable-FedCm.inc
@@ -0,0 +1,2 @@
@@ -0,0 +1 @@
+SET_CROMITE_FEATURE_DISABLED(kFedCm);
diff --git a/cromite_flags/third_party/blink/common/features_cc/Disable-FedCm.inc b/cromite_flags/third_party/blink/common/features_cc/Disable-FedCm.inc
new file mode 100644
--- /dev/null
+++ b/cromite_flags/third_party/blink/common/features_cc/Disable-FedCm.inc
@@ -0,0 +1 @@
+SET_CROMITE_FEATURE_DISABLED(kFedCmWithStorageAccessAPI);
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
@@ -9,7 +9,9 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
.../browser/privacy_sandbox/privacy_sandbox_service_impl.cc | 2 +-
components/privacy_sandbox/privacy_sandbox_prefs.cc | 2 +-
components/privacy_sandbox/tracking_protection_prefs.cc | 4 ++--
5 files changed, 7 insertions(+), 6 deletions(-)
.../Disable-FirstPartySets-and-StorageAccessAPI.inc | 1 +
6 files changed, 8 insertions(+), 6 deletions(-)
create mode 100644 cromite_flags/third_party/blink/common/features_cc/Disable-FirstPartySets-and-StorageAccessAPI.inc
diff --git a/chrome/browser/first_party_sets/first_party_sets_navigation_throttle.cc b/chrome/browser/first_party_sets/first_party_sets_navigation_throttle.cc
--- a/chrome/browser/first_party_sets/first_party_sets_navigation_throttle.cc
@@ -87,4 +89,10 @@ diff --git a/components/privacy_sandbox/tracking_protection_prefs.cc b/component
registry->RegisterBooleanPref(
prefs::kIpProtectionEnabled, false,
user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
diff --git a/cromite_flags/third_party/blink/common/features_cc/Disable-FirstPartySets-and-StorageAccessAPI.inc b/cromite_flags/third_party/blink/common/features_cc/Disable-FirstPartySets-and-StorageAccessAPI.inc
new file mode 100644
--- /dev/null
+++ b/cromite_flags/third_party/blink/common/features_cc/Disable-FirstPartySets-and-StorageAccessAPI.inc
@@ -0,0 +1 @@
+SET_CROMITE_FEATURE_DISABLED(kSharedStorageAPI);
--
@@ -15,6 +15,8 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
chrome/browser/predictors/predictors_features.cc | 3 +--
chrome/browser/ui/tab_helpers.cc | 1 -
.../ui/webui/omnibox/omnibox_page_handler.cc | 2 ++
chrome/utility/BUILD.gn | 2 +-
chrome/utility/services.cc | 7 -------
.../core/browser/autofill_optimization_guide.cc | 5 +++--
.../omnibox/browser/autocomplete_controller.cc | 4 ++++
.../optimization_guide/core/hints_fetcher.cc | 1 +
@@ -29,9 +31,10 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../Disable-all-predictors-code.inc | 1 +
.../features_cc/Disable-all-predictors-code.inc | 4 ++++
.../features_cc/Disable-all-predictors-code.inc | 2 ++
services/webnn/features.gni | 2 +-
.../document_speculation_rules.cc | 1 +
.../platform/runtime_enabled_features.json5 | 2 +-
26 files changed, 64 insertions(+), 25 deletions(-)
29 files changed, 66 insertions(+), 34 deletions(-)
create mode 100644 cromite_flags/chrome/browser/browser_features_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/components/permissions/features_cc/Disable-all-predictors-code.inc
@@ -210,6 +213,42 @@ diff --git a/chrome/browser/ui/webui/omnibox/omnibox_page_handler.cc b/chrome/br
#include "components/optimization_guide/machine_learning_tflite_buildflags.h"
#include "components/search_engines/template_url.h"
#include "content/public/browser/web_ui.h"
diff --git a/chrome/utility/BUILD.gn b/chrome/utility/BUILD.gn
--- a/chrome/utility/BUILD.gn
+++ b/chrome/utility/BUILD.gn
@@ -65,7 +65,7 @@ static_library("utility") {
"//printing/buildflags",
"//services/data_decoder:lib",
"//services/network:network_service",
- "//services/passage_embeddings:passage_embeddings",
+ # "//services/passage_embeddings:passage_embeddings",
"//services/passage_embeddings/public/mojom",
"//services/screen_ai/buildflags",
"//services/service_manager/public/cpp",
diff --git a/chrome/utility/services.cc b/chrome/utility/services.cc
--- a/chrome/utility/services.cc
+++ b/chrome/utility/services.cc
@@ -222,12 +222,6 @@ auto RunMacNotificationService(
#endif // BUILDFLAG(IS_MAC)
#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
-auto RunPassageEmbeddingsService(
- mojo::PendingReceiver<passage_embeddings::mojom::PassageEmbeddingsService>
- receiver) {
- return std::make_unique<passage_embeddings::PassageEmbeddingsService>(
- std::move(receiver));
-}
auto RunSystemSignalsService(
mojo::PendingReceiver<device_signals::mojom::SystemSignalsService>
@@ -495,7 +489,6 @@ void RegisterMainThreadServices(mojo::ServiceFactory& services) {
#endif // BUILDFLAG(IS_WIN)
#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
- services.Add(RunPassageEmbeddingsService);
services.Add(RunSystemSignalsService);
#endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
diff --git a/components/autofill/core/browser/autofill_optimization_guide.cc b/components/autofill/core/browser/autofill_optimization_guide.cc
--- a/components/autofill/core/browser/autofill_optimization_guide.cc
+++ b/components/autofill/core/browser/autofill_optimization_guide.cc
@@ -463,6 +502,18 @@ new file mode 100644
@@ -0,0 +1,2 @@
+SET_CROMITE_FEATURE_DISABLED(kNavigationPredictor);
+SET_CROMITE_FEATURE_DISABLED(kPreloadingHeuristicsMLModel);
diff --git a/services/webnn/features.gni b/services/webnn/features.gni
--- a/services/webnn/features.gni
+++ b/services/webnn/features.gni
@@ -5,7 +5,7 @@
import("//build/config/features.gni")
declare_args() {
- webnn_use_tflite = is_android || is_chromeos || is_linux
+ webnn_use_tflite = false #is_android || is_chromeos || is_linux
# Enable logging of TFLite profiling information on MLGraph destruction.
webnn_enable_tflite_profiler = false
diff --git a/third_party/blink/renderer/core/speculation_rules/document_speculation_rules.cc b/third_party/blink/renderer/core/speculation_rules/document_speculation_rules.cc
--- a/third_party/blink/renderer/core/speculation_rules/document_speculation_rules.cc
+++ b/third_party/blink/renderer/core/speculation_rules/document_speculation_rules.cc
@@ -36,8 +36,9 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../attribution/request_headers_internal.cc | 1 +
.../network/public/cpp/attribution_utils.cc | 2 +
third_party/blink/renderer/core/page/page.cc | 2 +-
.../platform/runtime_enabled_features.json5 | 1 +
ui/events/android/motion_event_android.cc | 6 +-
26 files changed, 72 insertions(+), 375 deletions(-)
27 files changed, 73 insertions(+), 375 deletions(-)
create mode 100644 cromite_flags/content/common/features_cc/Disable-conversion-measurement-api.inc
create mode 100644 cromite_flags/content/public/common/content_features_cc/Disable-conversion-measurement-api.inc
create mode 100644 cromite_flags/services/network/public/cpp/features_cc/Disable-conversion-measurement-api.inc
@@ -882,6 +883,17 @@ diff --git a/third_party/blink/renderer/core/page/page.cc b/third_party/blink/re
}
template class CORE_TEMPLATE_EXPORT Supplement<Page>;
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -3976,6 +3976,7 @@
},
{
name: "TopicsAPI",
+ status: "experimental",
base_feature: "none",
origin_trial_feature_name: "PrivacySandboxAdsAPIs",
origin_trial_allows_third_party: true,
diff --git a/ui/events/android/motion_event_android.cc b/ui/events/android/motion_event_android.cc
--- a/ui/events/android/motion_event_android.cc
+++ b/ui/events/android/motion_event_android.cc
@@ -4,12 +4,109 @@ Subject: Disable feeds support by default
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
chrome/browser/prefs/browser_prefs.cc | 4 ++--
components/feed/core/common/pref_names.cc | 13 +------------
components/feed/core/shared_prefs/pref_names.cc | 2 +-
components/feed/feed_feature_list.cc | 3 +++
4 files changed, 7 insertions(+), 15 deletions(-)
chrome/browser/BUILD.gn | 9 +++++++++
chrome/browser/feed/android/web_feed_bridge.cc | 18 ++++++++++++++++++
chrome/browser/prefs/browser_prefs.cc | 4 ++--
components/feed/core/common/pref_names.cc | 13 +------------
.../feed/core/shared_prefs/pref_names.cc | 2 +-
components/feed/feed_feature_list.cc | 3 +++
6 files changed, 34 insertions(+), 15 deletions(-)
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -2682,6 +2682,15 @@ static_library("browser") {
]
}
+ if (is_android && !enable_feed_v2) {
+ sources += [
+ "feed/feed_service_factory.cc",
+ "feed/feed_service_factory.h",
+ ]
+ deps += [
+ "//components/feed:feature_list",
+ ]
+ }
if (enable_feed_v2) {
sources += [
"feed/feed_service_factory.cc",
diff --git a/chrome/browser/feed/android/web_feed_bridge.cc b/chrome/browser/feed/android/web_feed_bridge.cc
--- a/chrome/browser/feed/android/web_feed_bridge.cc
+++ b/chrome/browser/feed/android/web_feed_bridge.cc
@@ -25,6 +25,7 @@
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/profiles/profile_manager.h"
#include "components/country_codes/country_codes.h"
+#include "components/feed/buildflags.h"
#include "components/feed/core/v2/config.h"
#include "components/feed/core/v2/public/feed_service.h"
#include "components/feed/core/v2/public/types.h"
@@ -78,10 +79,14 @@ base::android::ScopedJavaLocalRef<jbyteArray> ToJavaWebFeedId(
}
WebFeedSubscriptions* GetSubscriptions() {
+#if BUILDFLAG(ENABLE_FEED_V2)
Profile* profile = ProfileManager::GetLastUsedProfile();
if (!profile)
return nullptr;
return GetSubscriptionsForProfile(profile);
+#else
+ return nullptr;
+#endif
}
FeedApi* GetStream() {
@@ -217,10 +222,14 @@ static void JNI_WebFeedBridge_FollowWebFeed(
return;
}
+#if BUILDFLAG(ENABLE_FEED_V2)
FollowWebFeed(
page_info.web_contents,
static_cast<feedwire::webfeed::WebFeedChangeReason>(change_reason),
std::move(callback));
+#else
+ std::move(callback).Run({});
+#endif
}
static jboolean JNI_WebFeedBridge_IsCormorantEnabledForLocale(JNIEnv* env) {
@@ -264,11 +273,16 @@ static void JNI_WebFeedBridge_UnfollowWebFeed(
auto callback =
AdaptCallbackForJava<WebFeedSubscriptions::UnfollowWebFeedResult>(
env, j_callback);
+
+#if BUILDFLAG(ENABLE_FEED_V2)
UnfollowWebFeed(
ToNativeWebFeedId(env, webFeedId),
/*is_durable_request=*/is_durable,
static_cast<feedwire::webfeed::WebFeedChangeReason>(change_reason),
std::move(callback));
+#else
+ std::move(callback).Run({});
+#endif
}
static void JNI_WebFeedBridge_FindWebFeedInfoForPage(
@@ -280,6 +294,7 @@ static void JNI_WebFeedBridge_FindWebFeedInfoForPage(
AdaptCallbackForJava<WebFeedMetadata>(env, j_callback);
PageInformation page_info = ToNativePageInformation(env, pageInfo);
+#if BUILDFLAG(ENABLE_FEED_V2)
// Make sure web_contents is not NULL since the user might navigate away from
// the current tab that is requested to find info.
if (!page_info.web_contents) {
@@ -290,6 +305,9 @@ static void JNI_WebFeedBridge_FindWebFeedInfoForPage(
page_info.web_contents,
static_cast<WebFeedPageInformationRequestReason>(reason),
std::move(callback));
+#else
+ std::move(callback).Run({});
+#endif
}
static void JNI_WebFeedBridge_FindWebFeedInfoForWebFeedId(
diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc
--- a/chrome/browser/prefs/browser_prefs.cc
+++ b/chrome/browser/prefs/browser_prefs.cc
@@ -9,9 +9,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
.../toolbar/chrome_location_bar_model_delegate.cc | 2 +-
components/url_formatter/url_formatter.cc | 14 +++++++-------
...disable-omission-of-URL-elements-in-Omnibox.inc | 1 +
3 files changed, 9 insertions(+), 8 deletions(-)
create mode 100755 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/disable-omission-of-URL-elements-in-Omnibox.inc
2 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.cc b/chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.cc
--- a/chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.cc
@@ -47,10 +45,4 @@ diff --git a/components/url_formatter/url_formatter.cc b/components/url_formatte
const FormatUrlType kFormatUrlOmitMailToScheme = 1 << 8;
const FormatUrlType kFormatUrlOmitMobilePrefix = 1 << 9;
diff --git a/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/disable-omission-of-URL-elements-in-Omnibox.inc b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/disable-omission-of-URL-elements-in-Omnibox.inc
new file mode 100755
--- /dev/null
+++ b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/disable-omission-of-URL-elements-in-Omnibox.inc
@@ -0,0 +1 @@
+SET_CROMITE_FEATURE_DISABLED(kAndroidVisibleUrlTruncationV2);
--
@@ -4,18 +4,10 @@ Subject: Disable some signed exchange features
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
.../common/features_cc/Disable-some-signed-exchange-features.inc | 1 +
.../Disable-some-signed-exchange-features.inc | 1 +
2 files changed, 2 insertions(+)
create mode 100644 cromite_flags/content/common/features_cc/Disable-some-signed-exchange-features.inc
1 file changed, 1 insertion(+)
create mode 100644 cromite_flags/content/public/common/content_features_cc/Disable-some-signed-exchange-features.inc
diff --git a/cromite_flags/content/common/features_cc/Disable-some-signed-exchange-features.inc b/cromite_flags/content/common/features_cc/Disable-some-signed-exchange-features.inc
new file mode 100644
--- /dev/null
+++ b/cromite_flags/content/common/features_cc/Disable-some-signed-exchange-features.inc
@@ -0,0 +1 @@
+SET_CROMITE_FEATURE_DISABLED(kSignedExchangeReportingForDistributors);
diff --git a/cromite_flags/content/public/common/content_features_cc/Disable-some-signed-exchange-features.inc b/cromite_flags/content/public/common/content_features_cc/Disable-some-signed-exchange-features.inc
new file mode 100644
--- /dev/null
@@ -20,11 +20,12 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../chromium/chrome/browser/tab/TabImpl.java | 43 ++++++++--
chrome/browser/about_flags.cc | 22 -----
chrome/browser/android/tab_android.cc | 3 +-
.../autofill/AutofillClientProviderUtils.java | 1 +
chrome/browser/autofill/android/BUILD.gn | 2 +-
.../autofill/AutofillClientProviderUtils.java | 2 +-
chrome/browser/flag_descriptions.cc | 6 --
chrome/browser/flag_descriptions.h | 3 -
.../strings/android_chrome_strings.grd | 6 ++
.../ui/autofill/autofill_client_provider.cc | 31 +------
.../ui/autofill/autofill_client_provider.cc | 32 +-------
.../ui/autofill/autofill_client_provider.h | 6 --
chrome/browser/ui/tab_helpers.cc | 4 +-
components/android_autofill/browser/BUILD.gn | 1 +
@@ -33,7 +34,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../autofill/AutofillManagerWrapper.java | 5 +-
.../components/autofill/AutofillProvider.java | 7 ++
.../BrowserSelectionActionMenuDelegate.java | 62 ++++++++++++++
.../browser/content_autofill_driver.cc | 55 +++++++++++++
.../browser/content_autofill_driver.cc | 59 +++++++++++++
.../content/browser/content_autofill_driver.h | 10 +++
.../content_autofill_driver_factory.cc | 12 +++
.../content/renderer/autofill_agent.cc | 6 ++
@@ -46,7 +47,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../autofill/core/common/autofill_features.h | 4 -
.../autofill/core/common/autofill_prefs.cc | 4 +-
.../autofill/core/common/autofill_prefs.h | 5 ++
31 files changed, 309 insertions(+), 91 deletions(-)
32 files changed, 314 insertions(+), 94 deletions(-)
create mode 100644 components/android_autofill/browser/java/src/org/chromium/components/autofill/BrowserSelectionActionMenuDelegate.java
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
@@ -332,12 +333,26 @@ diff --git a/chrome/browser/android/tab_android.cc b/chrome/browser/android/tab_
// We need to initialize the keyboard suppressor before creating any
// AutofillManagers and after the autofill client is available.
diff --git a/chrome/browser/autofill/android/BUILD.gn b/chrome/browser/autofill/android/BUILD.gn
--- a/chrome/browser/autofill/android/BUILD.gn
+++ b/chrome/browser/autofill/android/BUILD.gn
@@ -124,7 +124,7 @@ android_library("bottom_sheet_utils_java") {
generate_jni("jni_headers") {
sources = [
"java/src/org/chromium/chrome/browser/autofill/AddressNormalizerFactory.java",
- "java/src/org/chromium/chrome/browser/autofill/AutofillClientProviderUtils.java",
+ #"java/src/org/chromium/chrome/browser/autofill/AutofillClientProviderUtils.java",
"java/src/org/chromium/chrome/browser/autofill/AutofillImageFetcher.java",
"java/src/org/chromium/chrome/browser/autofill/AutofillProfileBridge.java",
"java/src/org/chromium/chrome/browser/autofill/PersonalDataManager.java",
diff --git a/chrome/browser/autofill/android/java/src/org/chromium/chrome/browser/autofill/AutofillClientProviderUtils.java b/chrome/browser/autofill/android/java/src/org/chromium/chrome/browser/autofill/AutofillClientProviderUtils.java
--- a/chrome/browser/autofill/android/java/src/org/chromium/chrome/browser/autofill/AutofillClientProviderUtils.java
+++ b/chrome/browser/autofill/android/java/src/org/chromium/chrome/browser/autofill/AutofillClientProviderUtils.java
@@ -39,6 +39,7 @@ public class AutofillClientProviderUtils {
@@ -37,8 +37,8 @@ public class AutofillClientProviderUtils {
* Android: The AutofillManager exists, is enabled, and its provider is not Autofill with
* Google.
*/
@CalledByNative
- @CalledByNative
public static boolean isAllowedToUseAndroidAutofillFramework() {
+ if ((true)) return true;
if (sAllowedToUseAutofillFrameworkForTesting != null) {
@@ -391,7 +406,15 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
diff --git a/chrome/browser/ui/autofill/autofill_client_provider.cc b/chrome/browser/ui/autofill/autofill_client_provider.cc
--- a/chrome/browser/ui/autofill/autofill_client_provider.cc
+++ b/chrome/browser/ui/autofill/autofill_client_provider.cc
@@ -21,32 +21,13 @@
@@ -13,7 +13,6 @@
#if BUILDFLAG(IS_ANDROID)
#include "base/android/jni_android.h"
-#include "chrome/browser/autofill/android/jni_headers/AutofillClientProviderUtils_jni.h"
#include "chrome/browser/keyboard_accessory/android/manual_filling_controller_impl.h"
#include "components/android_autofill/browser/android_autofill_client.h"
#endif // BUILDFLAG(IS_ANDROID)
@@ -21,32 +20,13 @@
namespace autofill {
namespace {
@@ -426,7 +449,7 @@ diff --git a/chrome/browser/ui/autofill/autofill_client_provider.cc b/chrome/bro
#endif // BUILDFLAG(IS_ANDROID)
}
@@ -54,15 +35,7 @@ AutofillClientProvider::~AutofillClientProvider() = default;
@@ -54,15 +34,7 @@ AutofillClientProvider::~AutofillClientProvider() = default;
void AutofillClientProvider::CreateClientForWebContents(
content::WebContents* web_contents) {
@@ -667,51 +690,62 @@ diff --git a/components/autofill/content/browser/content_autofill_driver.cc b/co
});
}
@@ -475,6 +483,10 @@ void ContentAutofillDriver::TextFieldDidChange(const FormData& raw_form,
@@ -457,6 +465,10 @@ void ContentAutofillDriver::CaretMovedInFormField(
const FormFieldData& field, const gfx::Rect& caret_bounds) {
target->GetAutofillManager().OnCaretMovedInFormField(
WithNewVersion(form), field, caret_bounds);
+ if (target->secondary_autofill_manager()) {
+ target->secondary_autofill_manager()->OnCaretMovedInFormField(
+ WithNewVersion(form), field, caret_bounds);
+ }
});
}
@@ -475,6 +487,10 @@ void ContentAutofillDriver::TextFieldDidChange(const FormData& raw_form,
const FormFieldData& field, base::TimeTicks timestamp) {
target->GetAutofillManager().OnTextFieldDidChange(WithNewVersion(form),
field, timestamp);
+ if (target->secondary_autofill_manager()) {
+ target->secondary_autofill_manager()->OnTextFieldDidChange(
+ WithNewVersion(form), field, bounding_box, timestamp);
+ WithNewVersion(form), field, timestamp);
+ }
});
}
@@ -492,6 +504,10 @@ void ContentAutofillDriver::TextFieldDidScroll(const FormData& raw_form,
@@ -492,6 +508,10 @@ void ContentAutofillDriver::TextFieldDidScroll(const FormData& raw_form,
const FormFieldData& field) {
target->GetAutofillManager().OnTextFieldDidScroll(WithNewVersion(form),
field);
+ if (target->secondary_autofill_manager()) {
+ target->secondary_autofill_manager()->OnTextFieldDidScroll(
+ WithNewVersion(form), field, bounding_box);
+ WithNewVersion(form), field);
+ }
});
}
@@ -510,6 +526,10 @@ void ContentAutofillDriver::SelectControlDidChange(
@@ -510,6 +530,10 @@ void ContentAutofillDriver::SelectControlDidChange(
const FormFieldData& field) {
target->GetAutofillManager().OnSelectControlDidChange(
WithNewVersion(form), field);
+ if (target->secondary_autofill_manager()) {
+ target->secondary_autofill_manager()->OnSelectControlDidChange(
+ WithNewVersion(form), field, bounding_box);
+ WithNewVersion(form), field);
+ }
});
}
@@ -532,6 +552,10 @@ void ContentAutofillDriver::AskForValuesToFill(
@@ -532,6 +556,10 @@ void ContentAutofillDriver::AskForValuesToFill(
AutofillSuggestionTriggerSource trigger_source) {
target->GetAutofillManager().OnAskForValuesToFill(
WithNewVersion(form), field, caret_bounds, trigger_source);
+ if (target->secondary_autofill_manager()) {
+ target->secondary_autofill_manager()->OnAskForValuesToFill(
+ WithNewVersion(form), field, bounding_box, trigger_source);
+ WithNewVersion(form), field, caret_bounds, trigger_source);
+ }
});
}
@@ -543,6 +567,8 @@ void ContentAutofillDriver::HidePopup() {
@@ -543,6 +571,8 @@ void ContentAutofillDriver::HidePopup() {
DCHECK(!target->IsPrerendering())
<< "We should never affect UI while prerendering";
target->GetAutofillManager().OnHidePopup();
@@ -720,33 +754,33 @@ diff --git a/components/autofill/content/browser/content_autofill_driver.cc b/co
});
}
@@ -554,6 +580,8 @@ void ContentAutofillDriver::FocusOnNonFormField(bool had_interacted_form) {
@@ -554,6 +584,8 @@ void ContentAutofillDriver::FocusOnNonFormField(bool had_interacted_form) {
this, had_interacted_form,
[](autofill::AutofillDriver* target, bool had_interacted_form) {
target->GetAutofillManager().OnFocusOnNonFormField(had_interacted_form);
+ if (target->secondary_autofill_manager())
+ target->secondary_autofill_manager()->OnFocusNoLongerOnForm(had_interacted_form);
+ target->secondary_autofill_manager()->OnFocusOnNonFormField(had_interacted_form);
});
}
@@ -571,9 +599,16 @@ void ContentAutofillDriver::FocusOnFormField(const FormData& raw_form,
@@ -571,9 +603,16 @@ void ContentAutofillDriver::FocusOnFormField(const FormData& raw_form,
const FormFieldData& field) {
target->GetAutofillManager().OnFocusOnFormField(WithNewVersion(form),
field);
+ if (target->secondary_autofill_manager()) {
+ target->secondary_autofill_manager()->OnFocusOnFormField(
+ WithNewVersion(form), field, bounding_box);
+ WithNewVersion(form), field);
+ }
},
[](autofill::AutofillDriver* target) {
target->GetAutofillManager().OnFocusOnNonFormField(true);
+ if (target->secondary_autofill_manager()) {
+ target->secondary_autofill_manager()->OnFocusNoLongerOnForm(true);
+ target->secondary_autofill_manager()->OnFocusOnNonFormField(true);
+ }
});
}
@@ -588,6 +623,10 @@ void ContentAutofillDriver::DidFillAutofillFormData(const FormData& raw_form,
@@ -588,6 +627,10 @@ void ContentAutofillDriver::DidFillAutofillFormData(const FormData& raw_form,
base::TimeTicks timestamp) {
target->GetAutofillManager().OnDidFillAutofillFormData(
WithNewVersion(form), timestamp);
@@ -757,7 +791,7 @@ diff --git a/components/autofill/content/browser/content_autofill_driver.cc b/co
});
}
@@ -597,6 +636,8 @@ void ContentAutofillDriver::DidEndTextFieldEditing() {
@@ -597,6 +640,8 @@ void ContentAutofillDriver::DidEndTextFieldEditing() {
}
router().DidEndTextFieldEditing(this, [](autofill::AutofillDriver* target) {
target->GetAutofillManager().OnDidEndTextFieldEditing();
@@ -766,7 +800,7 @@ diff --git a/components/autofill/content/browser/content_autofill_driver.cc b/co
});
}
@@ -611,6 +652,10 @@ void ContentAutofillDriver::SelectOrSelectListFieldOptionsDidChange(
@@ -611,6 +656,10 @@ void ContentAutofillDriver::SelectOrSelectListFieldOptionsDidChange(
cast(target)
->GetAutofillManager()
.OnSelectOrSelectListFieldOptionsDidChange(WithNewVersion(form));
@@ -777,18 +811,18 @@ diff --git a/components/autofill/content/browser/content_autofill_driver.cc b/co
});
}
@@ -632,6 +677,10 @@ void ContentAutofillDriver::JavaScriptChangedAutofilledValue(
@@ -632,6 +681,10 @@ void ContentAutofillDriver::JavaScriptChangedAutofilledValue(
bool formatting_only) {
target->GetAutofillManager().OnJavaScriptChangedAutofilledValue(
WithNewVersion(form), field, old_value, formatting_only);
+ if (target->secondary_autofill_manager()) {
+ target->secondary_autofill_manager()->OnJavaScriptChangedAutofilledValue(
+ WithNewVersion(form), field, old_value);
+ WithNewVersion(form), field, old_value, formatting_only);
+ }
});
}
@@ -639,6 +688,8 @@ void ContentAutofillDriver::Reset() {
@@ -639,6 +692,8 @@ void ContentAutofillDriver::Reset() {
owner_->router().UnregisterDriver(this,
/*driver_is_dying=*/false);
autofill_manager_->Reset();
@@ -797,7 +831,7 @@ diff --git a/components/autofill/content/browser/content_autofill_driver.cc b/co
}
const mojo::AssociatedRemote<mojom::AutofillAgent>&
@@ -651,6 +702,10 @@ ContentAutofillDriver::GetAutofillAgent() {
@@ -651,6 +706,10 @@ ContentAutofillDriver::GetAutofillAgent() {
return autofill_agent_;
}
@@ -845,7 +879,7 @@ diff --git a/components/autofill/content/browser/content_autofill_driver_factory
+#if BUILDFLAG(IS_ANDROID)
+#include "components/android_autofill/browser/android_autofill_manager.h"
+#include "components/android_autofill/browser/autofill_provider.h"
+#include "components/android_autofill/browser/autofill_provider_android.h"
+#include "components/android_autofill/browser/android_autofill_provider.h"
+#endif
+
namespace autofill {
@@ -40,9 +40,9 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
.../webui/settings/search_engines_handler.cc | 28 +-
.../webui/settings/search_engines_handler.h | 3 +-
.../settings_localized_strings_provider.cc | 8 +
...ings_localized_strings_provider_android.cc | 197 +++++++++++++
...ings_localized_strings_provider_android.cc | 198 +++++++++++++
...tings_localized_strings_provider_android.h | 19 ++
.../ui/webui/settings/settings_ui_android.cc | 135 +++++++++
.../ui/webui/settings/settings_ui_android.cc | 134 +++++++++
.../ui/webui/settings/settings_ui_android.h | 127 +++++++++
chrome/chrome_paks.gni | 11 +
.../browser_ui/settings/SettingsLauncher.java | 2 +
@@ -408,7 +408,7 @@ new file mode 100644
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -3773,6 +3773,9 @@ static_library("browser") {
@@ -3782,6 +3782,9 @@ static_library("browser") {
"//components/user_scripts/android",
]
}
@@ -1283,7 +1283,7 @@ diff --git a/chrome/browser/ui/webui/settings/settings_localized_strings_provide
new file mode 100644
--- /dev/null
+++ b/chrome/browser/ui/webui/settings/settings_localized_strings_provider_android.cc
@@ -0,0 +1,197 @@
@@ -0,0 +1,198 @@
+#include "chrome/browser/ui/webui/settings/settings_localized_strings_provider.h"
+
+#include <string>
@@ -1471,6 +1471,7 @@ new file mode 100644
+void AddLocalizedStringsAndroid(content::WebUIDataSource* html_source,
+ Profile* profile,
+ content::WebContents* web_contents) {
+ html_source->AddString("chromeAndroid", "chrome-android");
+ AddCommonStrings(html_source, profile);
+ AddSearchStrings(html_source);
+ AddSearchEnginesStrings(html_source);
@@ -1509,7 +1510,7 @@ diff --git a/chrome/browser/ui/webui/settings/settings_ui_android.cc b/chrome/br
new file mode 100644
--- /dev/null
+++ b/chrome/browser/ui/webui/settings/settings_ui_android.cc
@@ -0,0 +1,135 @@
@@ -0,0 +1,134 @@
+// Copyright 2015 The Chromium Authors
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
@@ -1598,7 +1599,6 @@ new file mode 100644
+ base::make_span(kSettingsSharedResources, kSettingsSharedResourcesSize));
+#endif
+
+ webui::SetupChromeRefresh2023(html_source);
+ AddLocalizedStringsAndroid(html_source, profile, web_ui->GetWebContents());
+
+ content::URLDataSource::Add(
+14 -1
View File
@@ -86,6 +86,7 @@ deactivation of all pop-ups (default disabled)
.../core/converter/parser/url_filter.cc | 10 +-
.../converter/parser/url_filter_options.cc | 21 +-
.../serializer/flatbuffer_serializer.cc | 75 +-
components/adblock/core/features.cc | 3 +-
components/adblock/core/hash/schema_hash.h | 10 +
.../adblock/core/sitekey_storage_impl.cc | 7 +
.../core/subscription/conversion_executors.h | 1 +
@@ -130,7 +131,7 @@ deactivation of all pop-ups (default disabled)
.../blink/renderer/core/css/style_engine.h | 1 +
.../renderer/core/exported/web_document.cc | 15 +-
.../definitions/adblock_private.d.ts | 14 +
120 files changed, 9293 insertions(+), 1289 deletions(-)
121 files changed, 9294 insertions(+), 1291 deletions(-)
create mode 100644 chrome/browser/resources/settings/adblock_page/adblock_page.html
create mode 100644 chrome/browser/resources/settings/adblock_page/adblock_page.ts
rename components/adblock/android/java/res/xml/{adblock_preferences.xml => eyeo_adblock_preferences.xml} (56%)
@@ -4592,6 +4593,18 @@ diff --git a/components/adblock/core/converter/serializer/flatbuffer_serializer.
return;
}
diff --git a/components/adblock/core/features.cc b/components/adblock/core/features.cc
--- a/components/adblock/core/features.cc
+++ b/components/adblock/core/features.cc
@@ -19,7 +19,6 @@
namespace adblock {
-const base::Feature kAdblockPlusFeature{"AdblockPlus",
- base::FEATURE_ENABLED_BY_DEFAULT};
+CROMITE_FEATURE(kAdblockPlus, "AdblockPlus", base::FEATURE_ENABLED_BY_DEFAULT);
}
diff --git a/components/adblock/core/hash/schema_hash.h b/components/adblock/core/hash/schema_hash.h
new file mode 100644
--- /dev/null
+127 -62
View File
@@ -11,6 +11,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
chrome/browser/BUILD.gn | 1 +
chrome/browser/about_flags.cc | 1 +
.../download/android/download_controller.cc | 32 +-
.../downloads/offline_page_download_bridge.cc | 32 +-
.../content/internal/context_menu_download.cc | 32 +-
.../webapk/webapk_single_icon_hasher.cc | 32 +-
@@ -25,12 +26,12 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
services/firewall/public/firewall_service.cc | 46 ++
services/firewall/public/firewall_service.h | 57 ++
services/firewall/tools/annotation_model.py | 49 ++
services/firewall/tools/annotations.xml | 489 ++++++++++++++++++
services/firewall/tools/annotations.xml | 503 ++++++++++++++++++
services/firewall/tools/builders_template.py | 72 +++
services/firewall/tools/codegen.py | 82 +++
services/firewall/tools/decode_template.py | 85 +++
services/firewall/tools/gen_builders.py | 65 +++
services/firewall/tools/rules.xml | 92 ++++
services/firewall/tools/rules.xml | 93 ++++
services/firewall/tools/rules_model.py | 35 ++
services/network/network_context.cc | 73 +++
.../network/public/cpp/simple_url_loader.cc | 18 +
@@ -39,7 +40,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
.../loader/fetch/url_loader/url_loader.cc | 4 +-
.../scripts/auditor/auditor.py | 1 +
.../scripts/auditor/util.py | 1 +
30 files changed, 1646 insertions(+), 23 deletions(-)
31 files changed, 1692 insertions(+), 24 deletions(-)
create mode 100644 cromite_flags/chrome/browser/about_flags_cc/Internal-firewall.inc
create mode 100644 services/firewall/public/BUILD.gn
create mode 100644 services/firewall/public/firewall_features.cc
@@ -77,6 +78,55 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
#include "services/media_session/public/cpp/features.h"
#include "services/network/public/cpp/features.h"
#include "services/network/public/cpp/network_switches.h"
diff --git a/chrome/browser/download/android/download_controller.cc b/chrome/browser/download/android/download_controller.cc
--- a/chrome/browser/download/android/download_controller.cc
+++ b/chrome/browser/download/android/download_controller.cc
@@ -164,6 +164,36 @@ bool ShouldOpenPdfInline(DownloadItem* item) {
!item->IsMustDownload() && item->IsTransient();
}
+const net::NetworkTrafficAnnotationTag traffic_annotation =
+ net::DefineNetworkTrafficAnnotation("download_via_toolbar_menu", R"(
+ semantics {
+ sender: "Cromite"
+ description:
+ "Download via toolbar menu"
+ trigger: "Manual from user."
+ data:
+ "binary format"
+ destination: LOCAL
+ internal {
+ contacts {
+ email: "uazo@users.noreply.github.com"
+ }
+ contacts {
+ email: "uazo@users.noreply.github.com"
+ }
+ }
+ user_data {
+ type: NONE
+ }
+ last_reviewed: "2024-08-06"
+ }
+ policy {
+ cookies_allowed: NO
+ setting:
+ "No setting."
+ policy_exception_justification: "Not implemented."
+ })");
+
} // namespace
static void JNI_DownloadController_OnAcquirePermissionResult(
@@ -210,7 +240,7 @@ static void JNI_DownloadController_DownloadUrl(JNIEnv* env,
if (download_manager) {
auto dl_params = std::make_unique<download::DownloadUrlParameters>(
GURL(url),
- TRAFFIC_ANNOTATION_WITHOUT_PROTO("Download via toolbar menu"));
+ traffic_annotation);
dl_params->set_content_initiated(false);
dl_params->set_download_source(download::DownloadSource::TOOLBAR_MENU);
download_manager->DownloadUrl(std::move(dl_params));
diff --git a/chrome/browser/offline_pages/android/downloads/offline_page_download_bridge.cc b/chrome/browser/offline_pages/android/downloads/offline_page_download_bridge.cc
--- a/chrome/browser/offline_pages/android/downloads/offline_page_download_bridge.cc
+++ b/chrome/browser/offline_pages/android/downloads/offline_page_download_bridge.cc
@@ -628,7 +678,7 @@ diff --git a/services/firewall/tools/annotations.xml b/services/firewall/tools/a
new file mode 100644
--- /dev/null
+++ b/services/firewall/tools/annotations.xml
@@ -0,0 +1,489 @@
@@ -0,0 +1,503 @@
+<?xml version="1.0"?>
+<!--
+ This file is part of Bromite.
@@ -680,7 +730,6 @@ new file mode 100644
+ <item id="cablev2_websocket_from_client" added_in_milestone="86" hash_code="3464399" content_hash_code="06f37377" os_list="windows,linux,chromeos" file_path="device/fido/cable/fido_tunnel_device.cc" />
+ <item id="captive_portal_service" added_in_milestone="62" hash_code="88754904" content_hash_code="04375eac" os_list="linux,windows,chromeos" file_path="components/captive_portal/content/captive_portal_service.cc" />
+ <item id="cast_socket" added_in_milestone="66" hash_code="115192205" content_hash_code="01cbc995" os_list="linux,windows,chromeos,android" file_path="components/media_router/common/providers/cast/channel/cast_socket.cc" />
+ <item id="cast_udp_transport" added_in_milestone="65" hash_code="5576536" content_hash_code="066a8189" os_list="linux,windows,chromeos,android" file_path="media/cast/net/udp_transport_impl.cc" />
+ <item id="certificate_verifier_url_loader" added_in_milestone="80" hash_code="80134684" content_hash_code="05856cc0" os_list="linux,windows,chromeos,android" file_path="services/cert_verifier/cert_net_url_loader/cert_net_fetcher_url_loader.cc" />
+ <item id="certificate_verifier_url_request" added_in_milestone="80" hash_code="85988208" content_hash_code="03884604" os_list="linux,windows,chromeos,android" file_path="net/cert_net/cert_net_fetcher_url_request.cc" />
+ <item id="chrome_apps_socket_api" added_in_milestone="65" hash_code="8591273" content_hash_code="07ca7795" os_list="linux,windows,chromeos" file_path="extensions/browser/api/socket/socket.cc" />
@@ -700,7 +749,7 @@ new file mode 100644
+ <item id="devtools_handle_front_end_messages" added_in_milestone="62" hash_code="135636011" content_hash_code="04940191" os_list="linux,windows,chromeos,android" file_path="content/shell/browser/shell_devtools_bindings.cc" />
+ <item id="devtools_hard_coded_data_source" added_in_milestone="62" hash_code="111565057" content_hash_code="073b9777" os_list="linux,windows,chromeos" file_path="chrome/browser/ui/webui/devtools/devtools_ui_data_source.cc" />
+ <item id="devtools_http_handler" added_in_milestone="66" hash_code="49160454" content_hash_code="054518b9" os_list="linux,windows,chromeos,android" file_path="content/browser/devtools/devtools_http_handler.cc" />
+ <item id="devtools_network_resource" added_in_milestone="62" hash_code="129652775" content_hash_code="01f4a4af" os_list="linux,windows,chromeos" file_path="chrome/browser/devtools/devtools_ui_bindings.cc" />
+ <item id="devtools_network_resource" added_in_milestone="62" hash_code="129652775" content_hash_code="06958290" os_list="linux,windows,chromeos" file_path="chrome/browser/devtools/devtools_ui_bindings.cc" />
+ <item id="devtools_proxy_config" added_in_milestone="85" hash_code="79904729" content_hash_code="01e83c36" os_list="linux,windows,chromeos,android" file_path="content/browser/devtools/protocol/target_handler.cc" />
+ <item id="dial_url_fetcher" added_in_milestone="67" hash_code="41424546" content_hash_code="07bd0650" os_list="linux,windows,chromeos" file_path="chrome/browser/media/router/discovery/dial/dial_url_fetcher.cc" />
+ <item id="digital_asset_links" added_in_milestone="90" hash_code="134272131" content_hash_code="00ced49e" os_list="linux,windows,chromeos,android" file_path="components/content_relationship_verification/digital_asset_links_handler.cc" />
@@ -715,8 +764,8 @@ new file mode 100644
+ <item id="downloads_api_run_async" added_in_milestone="62" hash_code="121068967" content_hash_code="008d9d92" os_list="linux,windows,chromeos" file_path="chrome/browser/extensions/api/downloads/downloads_api.cc" />
+ <item id="downloads_dom_handler" added_in_milestone="73" hash_code="95951029" content_hash_code="082cc10b" os_list="linux,windows,chromeos" file_path="chrome/browser/ui/webui/downloads/downloads_dom_handler.cc" />
+ <item id="drag_download_file" added_in_milestone="62" hash_code="95910019" content_hash_code="078a20ba" os_list="linux,windows,chromeos,android" file_path="content/browser/download/drag_download_file.cc" />
+ <item id="drive_service" added_in_milestone="90" hash_code="56074781" content_hash_code="059e2023" os_list="linux,windows,chromeos" file_path="chrome/browser/new_tab_page/modules/drive/drive_service.cc" />
+ <item id="early_hints_preload" added_in_milestone="91" hash_code="35266994" content_hash_code="028fe27a" os_list="linux,windows,chromeos,android" file_path="content/browser/loader/navigation_early_hints_manager.cc" />
+ <item id="drive_service" added_in_milestone="90" hash_code="56074781" content_hash_code="059e2023" os_list="linux,windows,chromeos" file_path="chrome/browser/new_tab_page/modules/file_suggestion/drive_service.cc" />
+ <item id="early_hints_preload" added_in_milestone="91" hash_code="35266994" content_hash_code="075686e5" os_list="linux,windows,chromeos,android" file_path="content/browser/loader/navigation_early_hints_manager.cc" />
+ <item id="enterprise_safe_browsing_realtime_url_lookup" added_in_milestone="86" hash_code="22262963" content_hash_code="00d66dca" os_list="linux,windows,chromeos" file_path="chrome/browser/safe_browsing/chrome_enterprise_url_lookup_service.cc" />
+ <item id="extension_blacklist" added_in_milestone="62" hash_code="59592717" content_hash_code="06f7911b" os_list="linux,windows,chromeos" file_path="chrome/browser/extensions/blocklist_state_fetcher.cc" />
+ <item id="extension_crx_fetcher" added_in_milestone="62" hash_code="21145003" content_hash_code="05d3e86d" os_list="linux,windows,chromeos" file_path="extensions/browser/updater/extension_downloader.cc" />
@@ -766,8 +815,8 @@ new file mode 100644
+ <item id="lookup_single_password_leak" added_in_milestone="78" hash_code="16927377" content_hash_code="000d99a9" os_list="linux,windows,chromeos,android" file_path="components/password_manager/core/browser/leak_detection/leak_detection_request.cc" />
+ <item id="managed_configuration_loader" added_in_milestone="89" hash_code="77734467" content_hash_code="060dc999" os_list="linux,windows,chromeos" file_path="chrome/browser/device_api/managed_configuration_api.cc" />
+ <item id="media_router_global_media_controls_image" added_in_milestone="81" hash_code="95983790" content_hash_code="02e96911" os_list="linux,windows,chromeos" file_path="chrome/browser/ui/global_media_controls/cast_media_notification_item.cc" />
+ <item id="metrics_report_ukm" added_in_milestone="62" hash_code="727478" content_hash_code="05fe6617" os_list="linux,windows,chromeos,android" file_path="components/metrics/net/net_metrics_log_uploader.cc" />
+ <item id="metrics_report_uma" added_in_milestone="62" hash_code="727528" content_hash_code="01d3863c" os_list="linux,windows,chromeos,android" file_path="components/metrics/net/net_metrics_log_uploader.cc" />
+ <item id="metrics_report_ukm" added_in_milestone="62" hash_code="727478" content_hash_code="037b649c" os_list="linux,windows,chromeos,android" file_path="components/metrics/net/net_metrics_log_uploader.cc" />
+ <item id="metrics_report_uma" added_in_milestone="62" hash_code="727528" content_hash_code="00e50cfe" os_list="linux,windows,chromeos,android" file_path="components/metrics/net/net_metrics_log_uploader.cc" />
+ <item id="missing" added_in_milestone="62" reserved="1" hash_code="77012883" os_list="linux,windows" file_path="" />
+ <item id="navigation_url_loader" added_in_milestone="62" hash_code="63171670" content_hash_code="060edd12" os_list="linux,windows,chromeos,android" file_path="content/browser/loader/navigation_url_loader_impl.cc" />
+ <item id="network_location_provider" added_in_milestone="64" type="partial" second_id="network_location_request" hash_code="23472048" content_hash_code="0272f3e8" os_list="linux,windows,chromeos" semantics_fields="1" policy_fields="3,4" file_path="services/device/geolocation/network_location_provider.cc" />
@@ -796,9 +845,9 @@ new file mode 100644
+ <item id="password_protection_request" added_in_milestone="62" hash_code="66322287" content_hash_code="01869413" os_list="linux,windows,chromeos,android" file_path="components/safe_browsing/core/browser/password_protection/password_protection_request.cc" />
+ <item id="password_requirements_spec_fetch" added_in_milestone="69" hash_code="69585116" content_hash_code="005550dc" os_list="linux,windows,chromeos,android" file_path="components/password_manager/core/browser/generation/password_requirements_spec_fetcher_impl.cc" />
+ <item id="payment_manifest_downloader" added_in_milestone="62" hash_code="84045030" content_hash_code="01266484" os_list="linux,windows,chromeos,android" file_path="components/payments/core/payment_manifest_downloader.cc" />
+ <item id="payments_sync_cards" added_in_milestone="62" hash_code="95588446" content_hash_code="027dd4a5" os_list="linux,windows,chromeos,android" file_path="components/autofill/core/browser/payments/payments_network_interface_base.cc" />
+ <item id="payments_sync_cards" added_in_milestone="62" hash_code="95588446" content_hash_code="047ff35d" os_list="linux,windows,chromeos,android" file_path="components/autofill/core/browser/payments/payments_network_interface_base.cc" />
+ <item id="pdf_plugin_placeholder" added_in_milestone="63" hash_code="56866367" content_hash_code="0101fbd5" os_list="linux,windows,chromeos" file_path="chrome/browser/plugins/plugin_observer.cc" />
+ <item id="per_user_topic_registration_request" added_in_milestone="68" hash_code="10498172" content_hash_code="0367425f" os_list="linux,windows,chromeos,android" file_path="components/invalidation/impl/per_user_topic_subscription_request.cc" />
+ <item id="per_user_topic_registration_request" added_in_milestone="68" hash_code="10498172" content_hash_code="04531c3a" os_list="linux,windows,chromeos,android" file_path="components/invalidation/impl/per_user_topic_subscription_request.cc" />
+ <item id="permission_predictions" added_in_milestone="88" hash_code="89492280" content_hash_code="0556d9f7" os_list="linux,windows,chromeos,android" file_path="components/permissions/prediction_service/prediction_service.cc" />
+ <item id="photos_service" added_in_milestone="94" hash_code="100936478" content_hash_code="0573af72" os_list="linux,windows,chromeos" file_path="chrome/browser/new_tab_page/modules/photos/photos_service.cc" />
+ <item id="popular_sites_fetch" added_in_milestone="62" hash_code="50755044" content_hash_code="00697083" os_list="linux,windows,chromeos,android" file_path="components/ntp_tiles/popular_sites_impl.cc" />
@@ -859,8 +908,8 @@ new file mode 100644
+ <item id="signed_in_profile_avatar" added_in_milestone="62" hash_code="108903331" content_hash_code="064a36f4" os_list="linux,windows,chromeos,android" file_path="chrome/browser/profiles/profile_downloader.cc" />
+ <item id="socket_bio_adapter" added_in_milestone="66" hash_code="516551" content_hash_code="014a4058" os_list="linux,windows,chromeos,android" file_path="net/socket/socket_bio_adapter.cc" />
+ <item id="spdy_session_control" added_in_milestone="66" hash_code="57143548" content_hash_code="01c6f3f0" os_list="linux,windows,chromeos,android" file_path="net/spdy/spdy_session.cc" />
+ <item id="speech_recognition_downstream" added_in_milestone="62" hash_code="26096088" content_hash_code="07323e31" os_list="linux,windows,chromeos" file_path="content/browser/speech/speech_recognition_engine.cc" />
+ <item id="speech_recognition_upstream" added_in_milestone="62" hash_code="66846958" content_hash_code="0075966b" os_list="linux,windows,chromeos" file_path="content/browser/speech/speech_recognition_engine.cc" />
+ <item id="speech_recognition_downstream" added_in_milestone="123" hash_code="26096088" content_hash_code="07a72205" os_list="linux,windows,chromeos" file_path="content/browser/speech/network_speech_recognition_engine_impl.cc" />
+ <item id="speech_recognition_upstream" added_in_milestone="123" hash_code="66846958" content_hash_code="0798290a" os_list="linux,windows,chromeos" file_path="content/browser/speech/network_speech_recognition_engine_impl.cc" />
+ <item id="spellcheck_hunspell_dictionary" added_in_milestone="62" hash_code="117649486" content_hash_code="02b8bb18" os_list="linux,windows,chromeos,android" file_path="chrome/browser/spellchecker/spellcheck_hunspell_dictionary.cc" />
+ <item id="spellcheck_lookup" added_in_milestone="62" hash_code="132553989" content_hash_code="072d1525" os_list="linux,windows,chromeos" file_path="components/spellcheck/browser/spelling_service_client.cc" />
+ <item id="ssl_hmac_channel_authenticator" added_in_milestone="66" hash_code="106124561" content_hash_code="0695685d" os_list="linux,windows,chromeos,android" file_path="remoting/protocol/ssl_hmac_channel_authenticator.cc" />
@@ -894,7 +943,7 @@ new file mode 100644
+ <item id="webrtc_peer_connection" added_in_milestone="66" hash_code="63497370" content_hash_code="039bf82b" os_list="linux,windows,chromeos,android" file_path="third_party/blink/renderer/modules/peerconnection/peer_connection_dependency_factory.cc" />
+ <item id="websocket_basic_stream" added_in_milestone="66" hash_code="51586722" content_hash_code="040f7353" os_list="linux,windows,chromeos,android" file_path="net/websockets/websocket_basic_stream.cc" />
+ <item id="websocket_stream" added_in_milestone="62" hash_code="17188928" content_hash_code="006ea358" os_list="linux,windows,chromeos,android" file_path="content/browser/websockets/websocket_connector_impl.cc" />
+ <item id="webstore_data_fetcher" added_in_milestone="62" hash_code="26302604" content_hash_code="016e38ea" os_list="linux,windows,chromeos" file_path="chrome/browser/extensions/webstore_data_fetcher.cc" />
+ <item id="webstore_data_fetcher" added_in_milestone="62" hash_code="26302604" content_hash_code="07acefcc" os_list="linux,windows,chromeos" file_path="chrome/browser/extensions/webstore_data_fetcher.cc" />
+ <item id="webstore_install_helper" added_in_milestone="62" hash_code="25921771" content_hash_code="009bbc99" os_list="linux,windows,chromeos" file_path="chrome/browser/extensions/webstore_install_helper.cc" />
+ <item id="webstore_installer" added_in_milestone="62" hash_code="18764319" content_hash_code="04396870" os_list="linux,windows,chromeos" file_path="chrome/browser/extensions/webstore_installer.cc" />
+ <item id="webui_content_scripts_download" added_in_milestone="62" hash_code="100545943" content_hash_code="07257fcb" os_list="linux,windows,chromeos" file_path="extensions/browser/guest_view/web_view/web_ui/web_ui_url_fetcher.cc" />
@@ -922,7 +971,7 @@ new file mode 100644
+ <item id="tachyon_ice_config_fetcher" added_in_milestone="98" hash_code="6216086" content_hash_code="01e878b0" os_list="chromeos" file_path="chrome/browser/nearby_sharing/tachyon_ice_config_fetcher.cc" />
+ <item id="launcher_item_suggest" added_in_milestone="98" hash_code="102930932" content_hash_code="04a4041e" os_list="chromeos" file_path="chrome/browser/ash/file_suggest/item_suggest_cache.cc" />
+ <item id="ambient_client" added_in_milestone="98" hash_code="46775600" content_hash_code="062d821f" os_list="chromeos" file_path="chrome/browser/ui/ash/ambient/ambient_client_impl.cc" />
+ <item id="calendar_get_events" added_in_milestone="98" hash_code="86429515" content_hash_code="0757d834" os_list="chromeos" file_path="chrome/browser/ui/ash/calendar/calendar_keyed_service.cc" />
+ <item id="calendar_get_events" added_in_milestone="98" hash_code="86429515" content_hash_code="03c75d6f" os_list="chromeos" file_path="chrome/browser/ui/ash/calendar/calendar_keyed_service.cc" />
+ <item id="edu_account_login_profile_image_fetcher" added_in_milestone="98" hash_code="59209756" content_hash_code="0689301c" os_list="chromeos" file_path="chrome/browser/ui/webui/ash/edu_account_login_handler.cc" />
+ <item id="management_ui_customer_logo" added_in_milestone="98" hash_code="25740183" content_hash_code="01a17a58" os_list="chromeos" file_path="chrome/browser/ui/webui/management/management_ui_handler_chromeos.cc" />
+ <item id="gaia_reauth_token_fetcher" added_in_milestone="98" hash_code="61554754" content_hash_code="04ff463d" os_list="chromeos" file_path="chrome/browser/ash/login/gaia_reauth_token_fetcher.cc" />
@@ -930,7 +979,7 @@ new file mode 100644
+ <item id="contextual_search_resolve" added_in_milestone="98" hash_code="91714136" content_hash_code="01a5751f" os_list="linux,windows,chromeos,android" file_path="components/contextual_search/core/browser/contextual_search_delegate_impl.cc" />
+ <item id="contextual_search_thumbnail" added_in_milestone="99" hash_code="72946735" content_hash_code="06c5c621" os_list="android" file_path="chrome/browser/android/compositor/scene_layer/contextual_search_scene_layer.cc" />
+ <item id="customtabs_parallel_request" added_in_milestone="98" hash_code="100314494" content_hash_code="02c6bf11" os_list="android" file_path="chrome/browser/android/customtabs/detached_resource_request.cc" />
+ <item id="rlz" added_in_milestone="98" hash_code="113024" content_hash_code="0839c21d" os_list="android" file_path="chrome/browser/android/rlz/rlz_ping_handler.cc" />
+ <item id="rlz" added_in_milestone="98" hash_code="113024" content_hash_code="02fd92fb" os_list="android" file_path="chrome/browser/android/rlz/rlz_ping_handler.cc" />
+ <item id="download_bitmap" added_in_milestone="98" hash_code="43552293" content_hash_code="0632ef37" os_list="android" file_path="chrome/browser/share/bitmap_download_request.cc" />
+ <item id="supervised_user_classify_url" added_in_milestone="98" hash_code="106097207" content_hash_code="05877932" os_list="android,chromeos,linux,windows" file_path="components/supervised_user/core/browser/fetcher_config.cc" />
+ <item id="supervised_user_list_family_members" added_in_milestone="98" hash_code="80285221" content_hash_code="00627698" os_list="android,chromeos,linux,windows" file_path="components/supervised_user/core/browser/fetcher_config.cc" />
@@ -969,7 +1018,6 @@ new file mode 100644
+ <item id="speculation_rules_prefetch" added_in_milestone="103" hash_code="78769907" content_hash_code="015fd398" os_list="linux,windows,android,chromeos" file_path="content/browser/preloading/prefetch/prefetch_service.cc" />
+ <item id="fast_pair_image_decoder" added_in_milestone="103" hash_code="120532644" content_hash_code="03a98cf1" os_list="chromeos" file_path="ash/quick_pair/repository/fast_pair/fast_pair_image_decoder_impl.cc" />
+ <item id="drivefs_http_client" added_in_milestone="104" hash_code="134416995" content_hash_code="042b8f2c" os_list="chromeos" file_path="chromeos/ash/components/drivefs/drivefs_http_client.cc" />
+ <item id="pending_beacon_api" added_in_milestone="105" hash_code="32555720" content_hash_code="02288864" os_list="linux,windows,android,chromeos" file_path="content/browser/renderer_host/pending_beacon_service.cc" />
+ <item id="printing_server_printers_query" added_in_milestone="106" hash_code="83120842" content_hash_code="06f4759c" os_list="chromeos" file_path="chrome/browser/ash/printing/server_printers_fetcher.cc" />
+ <item id="download_bubble_retry_download" added_in_milestone="105" hash_code="19923003" content_hash_code="000b1439" os_list="linux,windows,chromeos" file_path="chrome/browser/download/bubble/download_bubble_ui_controller.cc" />
+ <item id="quick_answers_loader" added_in_milestone="105" hash_code="46208118" content_hash_code="06f129c2" os_list="chromeos" file_path="chromeos/components/quick_answers/result_loader.cc" />
@@ -979,6 +1027,7 @@ new file mode 100644
+ <item id="chrome_commerce_subscriptions_delete" added_in_milestone="105" hash_code="27525598" content_hash_code="05f47d4b" os_list="windows,android,linux,chromeos" file_path="components/commerce/core/subscriptions/subscriptions_server_proxy.cc" />
+ <item id="chrome_commerce_subscriptions_get" added_in_milestone="105" hash_code="47569255" content_hash_code="02f49372" os_list="windows,android,linux,chromeos" file_path="components/commerce/core/subscriptions/subscriptions_server_proxy.cc" />
+ <item id="cryptauth_get_my_devices" added_in_milestone="112" type="partial" second_id="oauth2_api_call_flow" hash_code="136498680" content_hash_code="04b33199" os_list="chromeos" semantics_fields="1,2,3,4,5" policy_fields="3,4" file_path="chromeos/ash/services/device_sync/cryptauth_device_manager_impl.cc" />
+ <item id="favicon_fetcher_get_favicon" added_in_milestone="106" hash_code="53662907" content_hash_code="0640ce11" os_list="android" file_path="chrome/browser/supervised_user/android/favicon_fetcher.cc" />
+ <item id="k_anonymity_service_get_token" added_in_milestone="106" hash_code="83317579" content_hash_code="02bc56b0" os_list="linux,windows,android,chromeos" file_path="chrome/browser/k_anonymity_service/k_anonymity_trust_token_getter.cc" />
+ <item id="enhanced_network_tts" added_in_milestone="103" hash_code="13093731" content_hash_code="03c12345" os_list="chromeos" file_path="chrome/browser/ash/enhanced_network_tts/enhanced_network_tts_impl.cc" />
+ <item id="chrome_commerce_price_email_pref_fetcher" added_in_milestone="107" hash_code="36312281" content_hash_code="03bbefb2" os_list="linux,windows,android,chromeos" file_path="components/commerce/core/account_checker.cc" />
@@ -987,7 +1036,7 @@ new file mode 100644
+ <item id="send_message_express" added_in_milestone="108" hash_code="23527666" content_hash_code="01b40a32" os_list="chromeos" file_path="chrome/browser/nearby_sharing/instantmessaging/send_message_express.cc" />
+ <item id="cryptohome_recovery_fetch_epoch" added_in_milestone="108" hash_code="86369097" content_hash_code="06e195ad" os_list="chromeos" file_path="chromeos/ash/components/login/auth/recovery/cryptohome_recovery_service_client.cc" />
+ <item id="cryptohome_recovery_fetch_recovery_response" added_in_milestone="108" hash_code="47761423" content_hash_code="01b13324" os_list="chromeos" file_path="chromeos/ash/components/login/auth/recovery/cryptohome_recovery_service_client.cc" />
+ <item id="app_preload_service" added_in_milestone="108" hash_code="69313298" content_hash_code="00720713" os_list="chromeos" file_path="chrome/browser/apps/app_preload_service/app_preload_server_connector.cc" />
+ <item id="app_preload_service" added_in_milestone="108" hash_code="69313298" content_hash_code="03b0b13e" os_list="chromeos" file_path="chrome/browser/apps/app_preload_service/app_preload_almanac_endpoint.cc" />
+ <item id="search_and_assistant_enabled_checker" added_in_milestone="106" hash_code="113915724" content_hash_code="003a5b64" os_list="chromeos" file_path="chrome/browser/ui/ash/assistant/search_and_assistant_enabled_checker.cc" />
+ <item id="user_image_downloader" added_in_milestone="108" hash_code="70015846" content_hash_code="07c2217f" os_list="chromeos" file_path="chrome/browser/ash/login/users/avatar/user_image_loader.cc" />
+ <item id="supervised_user_favicon_request" added_in_milestone="108" hash_code="7601706" content_hash_code="06636c2a" os_list="chromeos" file_path="chrome/browser/supervised_user/chromeos/supervised_user_favicon_request_handler.cc" />
@@ -995,13 +1044,13 @@ new file mode 100644
+ <item id="nearby_share_contacts" added_in_milestone="108" type="partial" second_id="oauth2_api_call_flow" hash_code="91999155" content_hash_code="0473989a" os_list="chromeos" semantics_fields="1,2,3,4,5" policy_fields="3,4" file_path="chrome/browser/nearby_sharing/client/nearby_share_client_impl.cc" />
+ <item id="nearby_share_list_public_certificates" added_in_milestone="108" type="partial" second_id="oauth2_api_call_flow" hash_code="123714070" content_hash_code="01706e8a" os_list="chromeos" semantics_fields="1,2,3,4,5" policy_fields="3,4" file_path="chrome/browser/nearby_sharing/client/nearby_share_client_impl.cc" />
+ <item id="nearby_presence_update_device" added_in_milestone="115" type="partial" second_id="oauth2_api_call_flow" hash_code="67052785" content_hash_code="048617a8" os_list="chromeos" semantics_fields="1,2,3,4,5" policy_fields="3,4" file_path="chromeos/ash/components/nearby/presence/credentials/nearby_presence_server_client_impl.cc" />
+ <item id="nearby_presence_list_public_certificates" added_in_milestone="115" type="partial" second_id="oauth2_api_call_flow" hash_code="137414685" content_hash_code="003d17c8" os_list="chromeos" semantics_fields="1,2,3,4,5" policy_fields="3,4" file_path="chromeos/ash/components/nearby/presence/credentials/nearby_presence_server_client_impl.cc" />
+ <item id="nearby_presence_list_shared_credentials" added_in_milestone="115" type="partial" second_id="oauth2_api_call_flow" hash_code="108851681" content_hash_code="05445a54" os_list="chromeos" semantics_fields="1,2,3,4,5" policy_fields="3,4" file_path="chromeos/ash/components/nearby/presence/credentials/nearby_presence_server_client_impl.cc" />
+ <item id="k_anonymity_service_join_set" added_in_milestone="108" hash_code="49233370" content_hash_code="0033f523" os_list="linux,windows,android,chromeos" file_path="chrome/browser/k_anonymity_service/k_anonymity_service_client.cc" />
+ <item id="k_anonymity_service_query_set" added_in_milestone="108" hash_code="128095075" content_hash_code="00eab10a" os_list="linux,windows,android,chromeos" file_path="chrome/browser/k_anonymity_service/k_anonymity_service_client.cc" />
+ <item id="managed_acccount_signin_restrictions_secure_connect_chromeos" added_in_milestone="109" hash_code="98011496" content_hash_code="05958d4c" os_list="chromeos" file_path="chrome/browser/ui/webui/signin/ash/user_cloud_signin_restriction_policy_fetcher.cc" />
+ <item id="ntp_custom_background" added_in_milestone="109" hash_code="92125886" content_hash_code="08080082" os_list="linux,windows,chromeos" file_path="chrome/browser/search/background/ntp_custom_background_service.cc" />
+ <item id="iwa_policy_update_manifest" added_in_milestone="110" second_id="iwa_update_manifest_fetcher" hash_code="6075566" content_hash_code="0288998e" os_list="chromeos" file_path="chrome/browser/web_applications/isolated_web_apps/policy/isolated_web_app_policy_manager.cc" />
+ <item id="iwa_policy_signed_web_bundle" added_in_milestone="110" second_id="iwa_bundle_downloader" hash_code="130449762" content_hash_code="04925c61" os_list="chromeos" file_path="chrome/browser/web_applications/isolated_web_apps/policy/isolated_web_app_policy_manager.cc" />
+ <item id="iwa_policy_update_manifest" added_in_milestone="110" type="partial" second_id="iwa_update_manifest_fetcher" hash_code="6075566" content_hash_code="0288998e" os_list="chromeos" file_path="chrome/browser/web_applications/isolated_web_apps/policy/isolated_web_app_policy_manager.cc" />
+ <item id="iwa_policy_signed_web_bundle" added_in_milestone="110" type="partial" second_id="iwa_bundle_downloader" hash_code="130449762" content_hash_code="04925c61" os_list="chromeos" file_path="chrome/browser/web_applications/isolated_web_apps/policy/isolated_web_app_policy_manager.cc" />
+ <item id="quick_start_challenge_bytes_fetcher" added_in_milestone="110" hash_code="47569675" content_hash_code="0546c0a2" os_list="chromeos" file_path="chrome/browser/ash/login/oobe_quick_start/second_device_auth_broker.cc" />
+ <item id="customization_document" added_in_milestone="110" hash_code="117635540" content_hash_code="007a3dda" os_list="chromeos" file_path="chrome/browser/ash/customization/customization_document.cc" />
+ <item id="nearby_webrtc_connection" added_in_milestone="110" hash_code="37994740" content_hash_code="070e1f72" os_list="chromeos" file_path="chrome/services/sharing/nearby/platform/webrtc.cc" />
@@ -1022,7 +1071,7 @@ new file mode 100644
+ <item id="gstatic_fast_checkout_funnels" added_in_milestone="111" hash_code="101773906" content_hash_code="0531d118" os_list="android" file_path="chrome/browser/fast_checkout/fast_checkout_capabilities_fetcher_impl.cc" />
+ <item id="chromeos_emoji_picker_posts_fetcher" added_in_milestone="111" hash_code="1679005" content_hash_code="06c44c7e" os_list="chromeos" file_path="chrome/browser/ui/webui/ash/emoji/gif_tenor_api_fetcher.cc" />
+ <item id="webapk_minter_install_request" added_in_milestone="111" hash_code="103752936" content_hash_code="042fed33" os_list="chromeos" file_path="chrome/browser/apps/app_service/webapk/webapk_install_task.cc" />
+ <item id="deduplication_service" added_in_milestone="111" hash_code="93071089" content_hash_code="06a77ea3" os_list="chromeos" file_path="chrome/browser/apps/app_deduplication_service/app_deduplication_server_connector.cc" />
+ <item id="deduplication_service" added_in_milestone="111" hash_code="93071089" content_hash_code="06a77ea3" os_list="chromeos" file_path="chrome/browser/apps/app_deduplication_service/app_deduplication_almanac_endpoint.cc" />
+ <item id="network_portal_detector" added_in_milestone="111" hash_code="98230690" content_hash_code="023cdc21" os_list="chromeos" file_path="chrome/browser/ash/net/network_portal_detector_impl.cc" />
+ <item id="android_feedback_connectivity_checker" added_in_milestone="111" hash_code="45568446" content_hash_code="0011753d" os_list="android" file_path="chrome/android/java/src/org/chromium/chrome/browser/feedback/ConnectivityChecker.java" />
+ <item id="printer_config_fetch" added_in_milestone="111" hash_code="111634920" content_hash_code="042f8883" os_list="chromeos" file_path="chromeos/printing/printer_config_cache.cc" />
@@ -1030,9 +1079,9 @@ new file mode 100644
+ <item id="wallpaper_download_google_photo" added_in_milestone="102" hash_code="50127013" content_hash_code="0565daa5" os_list="chromeos" file_path="ash/wallpaper/wallpaper_image_downloader.cc" />
+ <item id="wallpaper_online_downloader" added_in_milestone="110" hash_code="62882705" content_hash_code="00286fc5" os_list="chromeos" file_path="ash/wallpaper/wallpaper_image_downloader.cc" />
+ <item id="chrome_support_tool_file_upload" added_in_milestone="113" hash_code="78911807" content_hash_code="04a07122" os_list="chromeos" file_path="chrome/browser/policy/messaging_layer/upload/file_upload_impl.cc" />
+ <item id="service_worker_race_network_request" added_in_milestone="113" hash_code="103366441" content_hash_code="0090e590" os_list="linux,windows,android,chromeos" file_path="content/common/service_worker/race_network_request_url_loader_client.cc" />
+ <item id="service_worker_race_network_request" added_in_milestone="113" hash_code="103366441" content_hash_code="01177377" os_list="linux,windows,android,chromeos" file_path="content/common/service_worker/race_network_request_url_loader_client.cc" />
+ <item id="safe_browsing_ohttp_key_fetch" added_in_milestone="113" hash_code="105394965" content_hash_code="0572fe6f" os_list="linux,windows,android,chromeos" file_path="components/safe_browsing/core/browser/hashprefix_realtime/ohttp_key_service.cc" />
+ <item id="glanceables_tasks_integration" added_in_milestone="113" hash_code="63925488" content_hash_code="033ddfed" os_list="chromeos" file_path="chrome/browser/ui/ash/glanceables/glanceables_keyed_service.cc" />
+ <item id="glanceables_tasks_integration" added_in_milestone="113" hash_code="63925488" content_hash_code="01d7b518" os_list="chromeos" file_path="chrome/browser/ui/ash/glanceables/glanceables_keyed_service.cc" />
+ <item id="bookmarks_image_fetcher" added_in_milestone="114" hash_code="103266695" content_hash_code="01dd68ad" os_list="chromeos,linux,windows" file_path="chrome/browser/ui/views/bookmarks/bookmark_bubble_view.cc" />
+ <item id="screensaver_image_downloader" added_in_milestone="114" hash_code="133896355" content_hash_code="04a94c90" os_list="chromeos" file_path="ash/ambient/managed/screensaver_image_downloader.cc" />
+ <item id="back_navigation_cache_query" added_in_milestone="114" hash_code="122067755" content_hash_code="052f4fec" os_list="linux,windows,android,chromeos" file_path="content/browser/preloading/prerender/prerender_host_registry.cc" />
@@ -1042,7 +1091,7 @@ new file mode 100644
+ <item id="gaia_auth_rotate_bound_cookies" added_in_milestone="115" hash_code="92759840" content_hash_code="064e7f51" os_list="linux,windows" file_path="chrome/browser/signin/bound_session_credentials/bound_session_refresh_cookie_fetcher_impl.cc" />
+ <item id="unified_state_determination_kill_switch" added_in_milestone="115" hash_code="110792988" content_hash_code="01f51d8e" os_list="chromeos" file_path="chrome/browser/ash/policy/enrollment/auto_enrollment_type_checker.cc" />
+ <item id="crash_file_uploader" added_in_milestone="115" hash_code="9074605" content_hash_code="05f6902f" os_list="linux" file_path="remoting/host/crash/crash_file_uploader.cc" />
+ <item id="glanceables_classroom_integration" added_in_milestone="115" hash_code="51270420" content_hash_code="04025a83" os_list="chromeos" file_path="chrome/browser/ui/ash/glanceables/glanceables_classroom_client_impl.cc" />
+ <item id="glanceables_classroom_integration" added_in_milestone="115" hash_code="51270420" content_hash_code="048f5ccb" os_list="chromeos" file_path="chrome/browser/ui/ash/glanceables/glanceables_classroom_client_impl.cc" />
+ <item id="promise_app_service_download_icon" added_in_milestone="115" hash_code="94708347" content_hash_code="00521032" os_list="chromeos" file_path="chrome/browser/apps/app_service/promise_apps/promise_app_service.cc" />
+ <item id="iwa_update_manifest_fetcher" added_in_milestone="116" type="completing" hash_code="6840632" content_hash_code="06867096" os_list="linux,windows,chromeos" semantics_fields="4,5,7,8,9" policy_fields="-1" file_path="chrome/browser/web_applications/isolated_web_apps/update_manifest/update_manifest_fetcher.cc" />
+ <item id="iwa_bundle_downloader" added_in_milestone="116" type="completing" hash_code="97291258" content_hash_code="04d2beae" os_list="linux,windows,chromeos" semantics_fields="4,5,7,8,9" policy_fields="-1" file_path="chrome/browser/web_applications/isolated_web_apps/isolated_web_app_downloader.cc" />
@@ -1055,39 +1104,38 @@ new file mode 100644
+ <item id="passkey_enclave_client" added_in_milestone="117" hash_code="67454139" content_hash_code="06c3fa70" os_list="linux,windows,chromeos" file_path="device/fido/enclave/enclave_websocket_client.cc" />
+ <item id="iwa_update_discovery_update_manifest" added_in_milestone="117" type="partial" second_id="iwa_update_manifest_fetcher" hash_code="80925652" content_hash_code="07a5fb37" os_list="linux,windows,chromeos" semantics_fields="1,2,3,7,8,9" policy_fields="3,4" file_path="chrome/browser/web_applications/isolated_web_apps/isolated_web_app_update_discovery_task.cc" />
+ <item id="iwa_update_discovery_web_bundle" added_in_milestone="117" type="partial" second_id="iwa_bundle_downloader" hash_code="59207886" content_hash_code="0144c7d3" os_list="linux,windows,chromeos" semantics_fields="1,2,3,7,8,9" policy_fields="3,4" file_path="chrome/browser/web_applications/isolated_web_apps/isolated_web_app_update_discovery_task.cc" />
+ <item id="almanac_launcher_app" added_in_milestone="118" hash_code="14410833" content_hash_code="0556e032" os_list="chromeos" file_path="chrome/browser/apps/app_discovery_service/launcher_app_almanac_connector.cc" />
+ <item id="ip_protection_service_get_proxy_config" added_in_milestone="118" hash_code="137553406" content_hash_code="025110db" os_list="windows,android,linux,chromeos" file_path="chrome/browser/ip_protection/ip_protection_config_http.cc" />
+ <item id="almanac_launcher_app" added_in_milestone="118" hash_code="14410833" content_hash_code="0556e032" os_list="chromeos" file_path="chrome/browser/apps/app_discovery_service/launcher_app_almanac_endpoint.cc" />
+ <item id="ip_protection_service_get_proxy_config" added_in_milestone="118" hash_code="137553406" content_hash_code="025110db" os_list="windows,android,linux,chromeos" file_path="components/ip_protection/ip_protection_proxy_config_retriever.cc" />
+ <item id="chrome_commerce_parcels_status" added_in_milestone="119" hash_code="18763100" content_hash_code="0740f7f7" os_list="linux,windows,android,chromeos" file_path="components/commerce/core/parcel/parcels_server_proxy.cc" />
+ <item id="chrome_commerce_start_tracking_parcel" added_in_milestone="119" hash_code="1111315" content_hash_code="023a4c27" os_list="linux,windows,android,chromeos" file_path="components/commerce/core/parcel/parcels_server_proxy.cc" />
+ <item id="chrome_commerce_stop_tracking_parcel" added_in_milestone="119" hash_code="74390342" content_hash_code="0510af3a" os_list="linux,windows,android,chromeos" file_path="components/commerce/core/parcel/parcels_server_proxy.cc" />
+ <item id="chrome_commerce_stop_tracking_all_parcel" added_in_milestone="119" hash_code="24697216" content_hash_code="0714c6f8" os_list="linux,windows,android,chromeos" file_path="components/commerce/core/parcel/parcels_server_proxy.cc" />
+ <item id="get_all_plus_addresses" added_in_milestone="119" hash_code="109754005" content_hash_code="057af967" os_list="linux,windows,android,chromeos" file_path="components/plus_addresses/plus_address_http_client.cc" />
+ <item id="get_all_plus_addresses" added_in_milestone="119" hash_code="109754005" content_hash_code="057af967" os_list="linux,windows,android,chromeos" file_path="components/plus_addresses/plus_address_http_client_impl.cc" />
+ <item id="report_check_membership" added_in_milestone="119" hash_code="75994647" content_hash_code="07849280" os_list="chromeos" file_path="chromeos/ash/components/report/device_metrics/use_case/use_case.cc" />
+ <item id="report_check_in" added_in_milestone="119" hash_code="100947802" content_hash_code="02080b2e" os_list="chromeos" file_path="chromeos/ash/components/report/device_metrics/use_case/use_case.cc" />
+ <item id="plus_address_reservation" added_in_milestone="119" hash_code="79066711" content_hash_code="07081e5f" os_list="linux,windows,android,chromeos" file_path="components/plus_addresses/plus_address_http_client.cc" />
+ <item id="plus_address_confirmation" added_in_milestone="119" hash_code="18728066" content_hash_code="0578a939" os_list="linux,windows,android,chromeos" file_path="components/plus_addresses/plus_address_http_client.cc" />
+ <item id="plus_address_reservation" added_in_milestone="119" hash_code="79066711" content_hash_code="07081e5f" os_list="linux,windows,android,chromeos" file_path="components/plus_addresses/plus_address_http_client_impl.cc" />
+ <item id="plus_address_confirmation" added_in_milestone="119" hash_code="18728066" content_hash_code="0578a939" os_list="linux,windows,android,chromeos" file_path="components/plus_addresses/plus_address_http_client_impl.cc" />
+ <item id="wallpaper_search_handler_descriptors_fetcher" added_in_milestone="120" hash_code="89588122" content_hash_code="010138f0" os_list="linux,windows,chromeos" file_path="chrome/browser/ui/webui/side_panel/customize_chrome/wallpaper_search/wallpaper_search_handler.cc" />
+ <item id="wallpaper_search_handler_inspirations_fetcher" added_in_milestone="121" hash_code="30929660" content_hash_code="06ce0495" os_list="linux,windows,chromeos" file_path="chrome/browser/ui/webui/side_panel/customize_chrome/wallpaper_search/wallpaper_search_handler.cc" />
+ <item id="wallpaper_search_handler_inspiration_image_downloader" added_in_milestone="121" hash_code="61113817" content_hash_code="06c830c9" os_list="linux,windows,chromeos" file_path="chrome/browser/ui/webui/side_panel/customize_chrome/wallpaper_search/wallpaper_search_handler.cc" />
+ <item id="almanac_icon_cache" added_in_milestone="120" hash_code="17201124" content_hash_code="04ca8028" os_list="chromeos" file_path="chrome/browser/apps/almanac_api_client/almanac_icon_cache.cc" />
+ <item id="remoting_provision_corp_machine" added_in_milestone="120" hash_code="107186941" content_hash_code="0347f2e2" os_list="linux,windows,android,chromeos" file_path="remoting/base/corp_service_client.cc" />
+ <item id="blink_fetch_later_manager" added_in_milestone="120" hash_code="68163855" content_hash_code="00cb800a" os_list="linux,windows,android,chromeos" file_path="third_party/blink/renderer/core/fetch/fetch_manager.cc" />
+ <item id="carrier_lock_manager_fetch_configuration" added_in_milestone="120" hash_code="4144149" content_hash_code="05a883cb" os_list="chromeos" file_path="chromeos/ash/components/carrier_lock/provisioning_config_fetcher_impl.cc" />
+ <item id="carrier_lock_manager_fetch_configuration" added_in_milestone="120" hash_code="4144149" content_hash_code="05c49ee5" os_list="chromeos" file_path="chromeos/ash/components/carrier_lock/provisioning_config_fetcher_impl.cc" />
+ <item id="carrier_lock_manager_check_membership" added_in_milestone="120" hash_code="126065853" content_hash_code="0471f29c" os_list="chromeos" file_path="chromeos/ash/components/carrier_lock/psm_claim_verifier_impl.cc" />
+ <item id="carrier_lock_manager_fcm_topic" added_in_milestone="120" hash_code="77127127" content_hash_code="00c05900" os_list="chromeos" file_path="chromeos/ash/components/carrier_lock/topic_subscription_request.cc" />
+ <item id="almanac_app_install" added_in_milestone="120" hash_code="65872728" content_hash_code="048af8ba" os_list="chromeos" file_path="chrome/browser/apps/app_service/app_install/app_install_almanac_connector.cc" />
+ <item id="carrier_lock_manager_fcm_topic" added_in_milestone="120" hash_code="77127127" content_hash_code="0389ee17" os_list="chromeos" file_path="chromeos/ash/components/carrier_lock/topic_subscription_request.cc" />
+ <item id="almanac_app_install" added_in_milestone="120" hash_code="65872728" content_hash_code="048af8ba" os_list="chromeos" file_path="chrome/browser/apps/app_service/app_install/app_install_almanac_endpoint.cc" />
+ <item id="remoting_report_provisioning_error" added_in_milestone="120" hash_code="59366988" content_hash_code="01928ee5" os_list="linux,windows,android,chromeos" file_path="remoting/base/corp_service_client.cc" />
+ <item id="webauthn_rp_id_check" added_in_milestone="121" hash_code="117976395" content_hash_code="048c3faa" os_list="linux,windows,android,chromeos" file_path="content/browser/webauth/webauth_request_security_checker.cc" />
+ <item id="devtools_cdp_console_insights" added_in_milestone="121" hash_code="136157359" content_hash_code="051d2911" os_list="linux,windows,chromeos" file_path="chrome/browser/devtools/aida_client.cc" />
+ <item id="tasks_integration" added_in_milestone="121" hash_code="55210858" content_hash_code="0189cea5" os_list="chromeos" file_path="chrome/browser/ui/ash/api/tasks/chrome_tasks_delegate.cc" />
+ <item id="metrics_report_appkm" added_in_milestone="121" hash_code="128776350" content_hash_code="009cd329" os_list="linux,windows,android,chromeos" file_path="components/metrics/net/net_metrics_log_uploader.cc" />
+ <item id="metrics_report_ukm_and_appkm" added_in_milestone="121" hash_code="4198971" content_hash_code="04f393e8" os_list="linux,windows,android,chromeos" file_path="components/metrics/net/net_metrics_log_uploader.cc" />
+ <item id="devtools_cdp_console_insights" added_in_milestone="121" hash_code="136157359" content_hash_code="051d2911" os_list="linux,windows,chromeos" file_path="chrome/browser/devtools/devtools_ui_bindings.cc" />
+ <item id="tasks_integration" added_in_milestone="121" hash_code="55210858" content_hash_code="06b37a3d" os_list="chromeos" file_path="chrome/browser/ui/ash/api/tasks/chrome_tasks_delegate.cc" />
+ <item id="metrics_report_appkm" added_in_milestone="121" hash_code="128776350" content_hash_code="07bcd252" os_list="linux,windows,android,chromeos" file_path="components/metrics/net/net_metrics_log_uploader.cc" />
+ <item id="metrics_report_ukm_and_appkm" added_in_milestone="121" hash_code="4198971" content_hash_code="0579d480" os_list="linux,windows,android,chromeos" file_path="components/metrics/net/net_metrics_log_uploader.cc" />
+ <item id="search_engine_adapter" added_in_milestone="121" hash_code="30547065" content_hash_code="07bed22d" os_list="android" file_path="chrome/browser/search_engines/android/java/src/org/chromium/chrome/browser/search_engines/settings/SearchEngineAdapter.java" />
+ <item id="launcher_manatee" added_in_milestone="122" hash_code="49979877" content_hash_code="044566df" os_list="chromeos" file_path="chrome/browser/ash/app_list/search/manatee/manatee_cache.cc" />
+ <item id="prewarm_http_disk_cache" added_in_milestone="122" hash_code="13426815" content_hash_code="0797a094" os_list="windows,android,chromeos,linux" file_path="chrome/browser/predictors/lcp_critical_path_predictor/prewarm_http_disk_cache_manager.cc" />
+ <item id="admin_specified_ppd_fetch" added_in_milestone="122" hash_code="57876361" content_hash_code="009beea1" os_list="chromeos" file_path="chromeos/printing/remote_ppd_fetcher.cc" />
+ <item id="shopping_list_ui_image_fetcher" added_in_milestone="107" hash_code="53113303" content_hash_code="068247d7" os_list="windows,chromeos,linux" file_path="chrome/browser/ui/commerce/price_tracking_page_action_controller.cc" />
+ <item id="model_quality_logging" added_in_milestone="121" hash_code="91425305" content_hash_code="0282aed0" os_list="linux,windows,android,chromeos" file_path="components/optimization_guide/core/model_quality/model_quality_logs_uploader_service.cc" />
+ <item id="model_quality_logging" added_in_milestone="121" hash_code="91425305" content_hash_code="03422580" os_list="linux,windows,android,chromeos" file_path="components/optimization_guide/core/model_quality/model_quality_logs_uploader_service.cc" />
+ <item id="wallpaper_create_themes_model_execution" added_in_milestone="121" hash_code="97923267" content_hash_code="01b58bbb" os_list="linux,windows,chromeos,android" file_path="components/optimization_guide/core/model_execution/model_execution_fetcher.cc" />
+ <item id="tab_organizer_model_execution" added_in_milestone="121" hash_code="29376954" content_hash_code="06b6c6d3" os_list="linux,windows,chromeos,android" file_path="components/optimization_guide/core/model_execution/model_execution_fetcher.cc" />
+ <item id="help_me_write_model_execution" added_in_milestone="121" hash_code="8182600" content_hash_code="069a7ee5" os_list="linux,windows,chromeos,android" file_path="components/optimization_guide/core/model_execution/model_execution_fetcher.cc" />
@@ -1096,27 +1144,43 @@ new file mode 100644
+ <item id="pepper_tcp_socket" added_in_milestone="123" hash_code="120623198" content_hash_code="01a37664" os_list="chromeos" file_path="content/browser/renderer_host/pepper/pepper_socket_utils.cc" />
+ <item id="pepper_udp_socket" added_in_milestone="123" hash_code="53512439" content_hash_code="006ee842" os_list="chromeos" file_path="content/browser/renderer_host/pepper/pepper_socket_utils.cc" />
+ <item id="app_install_service_web_app_installer" added_in_milestone="123" hash_code="81910136" content_hash_code="0790ca69" os_list="chromeos" file_path="chrome/browser/apps/app_service/app_install/web_app_installer.cc" />
+ <item id="remoting_corp_session_authz_generate_host_token" added_in_milestone="123" hash_code="95549013" content_hash_code="045bc7d9" os_list="linux,windows,android" file_path="remoting/base/corp_session_authz_service_client.cc" />
+ <item id="remoting_corp_session_authz_verify_session_token" added_in_milestone="123" hash_code="137447984" content_hash_code="04127f42" os_list="linux,windows,android" file_path="remoting/base/corp_session_authz_service_client.cc" />
+ <item id="remoting_corp_session_reauthorize_host" added_in_milestone="123" hash_code="112634908" content_hash_code="0731c945" os_list="linux,windows,android" file_path="remoting/base/corp_session_authz_service_client.cc" />
+ <item id="chromeos_picker_gif_media_fetcher" added_in_milestone="123" hash_code="47232979" content_hash_code="04463bd0" os_list="chromeos" file_path="ash/picker/picker_asset_fetcher_impl.cc" />
+ <item id="bromite_inline_update_controller" added_in_milestone="123" hash_code="88618481" content_hash_code="061ad1b5" os_list="linux,windows,android" file_path="chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/BromiteInlineUpdateController.java" />
+ <item id="offline_pages_download_file" added_in_milestone="123" hash_code="94580999" content_hash_code="01ae83d8" os_list="linux,windows,android" file_path="chrome/browser/offline_pages/android/downloads/offline_page_download_bridge.cc" />
+ <item id="adblock_subscription_download" added_in_milestone="123" hash_code="8807068" content_hash_code="03359a90" os_list="linux,windows,android" file_path="components/adblock/core/subscription/ongoing_subscription_request_impl.cc" />
+ <item id="filters_update" added_in_milestone="123" hash_code="51960264" content_hash_code="070edef5" os_list="linux,windows,android" file_path="components/component_updater/download_filters_task.cc" />
+ <item id="download_via_context_menu" added_in_milestone="123" hash_code="64427392" content_hash_code="01089191" os_list="linux,windows,android" file_path="components/download/content/internal/context_menu_download.cc" />
+ <item id="keep_alive_url_loader" added_in_milestone="123" hash_code="1371386" content_hash_code="04f40c27" os_list="linux,windows,android" file_path="content/browser/loader/keep_alive_url_loader.cc" />
+ <item id="webapk_icon_hasher" added_in_milestone="123" hash_code="61933932" content_hash_code="079c7adb" os_list="linux,windows,android" file_path="components/webapps/browser/android/webapk/webapk_icon_hasher.cc" />
+ <item id="blink_resource_loader_webidentity" added_in_milestone="123" hash_code="37712640" content_hash_code="04fd614e" os_list="linux,windows,android" file_path="third_party/blink/renderer/platform/loader/fetch/fetch_utils.cc" />
+ <item id="blink_resource_loader_workers" added_in_milestone="123" hash_code="71243337" content_hash_code="0150f3b2" os_list="linux,windows,android" file_path="third_party/blink/renderer/platform/loader/fetch/fetch_utils.cc" />
+ <item id="blink_resource_loader_report" added_in_milestone="123" hash_code="76900237" content_hash_code="016f40bc" os_list="linux,windows,android" file_path="third_party/blink/renderer/platform/loader/fetch/fetch_utils.cc" />
+ <item id="blink_resource_loader_worklet" added_in_milestone="123" hash_code="71249662" content_hash_code="070205e2" os_list="linux,windows,android" file_path="third_party/blink/renderer/platform/loader/fetch/fetch_utils.cc" />
+ <item id="blink_resource_loader_webbundle" added_in_milestone="123" hash_code="115582637" content_hash_code="0331ecaf" os_list="linux,windows,android" file_path="third_party/blink/renderer/platform/loader/fetch/fetch_utils.cc" />
+ <item id="blink_resource_loader_manifest" added_in_milestone="123" hash_code="70686768" content_hash_code="046ea9cd" os_list="linux,windows,android" file_path="third_party/blink/renderer/platform/loader/fetch/fetch_utils.cc" />
+ <item id="blink_resource_speculation_rules" added_in_milestone="123" hash_code="27165615" content_hash_code="04bdd044" os_list="linux,windows,android" file_path="third_party/blink/renderer/platform/loader/fetch/fetch_utils.cc" />
+ <item id="blink_resource_loader_xslt" added_in_milestone="123" hash_code="35024334" content_hash_code="029ecdad" os_list="linux,windows,android" file_path="third_party/blink/renderer/platform/loader/fetch/fetch_utils.cc" />
+ <item id="blink_resource_loader_dictionary" added_in_milestone="123" hash_code="72296456" content_hash_code="04fa88f8" os_list="linux,windows,android" file_path="third_party/blink/renderer/platform/loader/fetch/fetch_utils.cc" />
+ <item id="blink_extension_resource_loader_embed" added_in_milestone="123" hash_code="95145213" content_hash_code="03788d28" os_list="linux,windows,android" file_path="third_party/blink/renderer/platform/loader/fetch/fetch_utils.cc" />
+ <item id="remoting_corp_session_authz_generate_host_token" added_in_milestone="123" hash_code="95549013" content_hash_code="045bc7d9" os_list="linux,windows,android,chromeos" file_path="remoting/base/corp_session_authz_service_client.cc" />
+ <item id="remoting_corp_session_authz_verify_session_token" added_in_milestone="123" hash_code="137447984" content_hash_code="04127f42" os_list="linux,windows,android,chromeos" file_path="remoting/base/corp_session_authz_service_client.cc" />
+ <item id="remoting_corp_session_reauthorize_host" added_in_milestone="123" hash_code="112634908" content_hash_code="0731c945" os_list="linux,windows,android,chromeos" file_path="remoting/base/corp_session_authz_service_client.cc" />
+ <item id="weather_icon" added_in_milestone="123" hash_code="89497506" content_hash_code="07bd5365" os_list="chromeos" file_path="ash/birch/birch_weather_provider.cc" />
+ <item id="chromeos_picker_gif_media_fetcher" added_in_milestone="124" hash_code="47232979" content_hash_code="0674a2dd" os_list="chromeos" file_path="ash/picker/picker_asset_fetcher_impl.cc" />
+ <item id="birch_calendar_provider" added_in_milestone="124" hash_code="27104117" content_hash_code="07af9ecc" os_list="chromeos" file_path="chrome/browser/ui/ash/birch/birch_calendar_fetcher.cc" />
+ <item id="recovery_key_store_fetch" added_in_milestone="124" hash_code="96131248" content_hash_code="05d9dc45" os_list="linux,windows,chromeos" file_path="chrome/browser/webauthn/enclave_manager.cc" />
+ <item id="product_specifications_fetcher" added_in_milestone="123" hash_code="54042784" content_hash_code="050058ef" os_list="linux,windows,android,chromeos" file_path="components/commerce/core/compare/product_specifications_server_proxy.cc" />
+ <item id="enterprise_logo_fetcher" added_in_milestone="124" hash_code="94158874" content_hash_code="000f6a7b" os_list="linux,windows,android,chromeos" file_path="chrome/browser/enterprise/browser_management/browser_management_service.cc" />
+ <item id="remoting_corp_logging_report_session_disconnected" added_in_milestone="124" hash_code="85924840" content_hash_code="04807b73" os_list="windows,android,linux,chromeos" file_path="remoting/base/corp_logging_service_client.cc" />
+ <item id="focus_mode_sounds_image_downloader" added_in_milestone="124" hash_code="41079522" content_hash_code="04a5f9e5" os_list="chromeos" file_path="ash/system/focus_mode/sounds/focus_mode_sounds_controller.cc" />
+ <item id="help_me_write_request" added_in_milestone="124" hash_code="46134289" content_hash_code="0612864d" os_list="chromeos" file_path="components/manta/orca_provider.cc" />
+ <item id="camera_background_request" added_in_milestone="125" hash_code="78245807" content_hash_code="0415bdde" os_list="chromeos" file_path="chrome/browser/ash/wallpaper_handlers/sea_pen_fetcher.cc" />
+ <item id="wallpaper_request" added_in_milestone="125" hash_code="135056222" content_hash_code="0192ac19" os_list="chromeos" file_path="chrome/browser/ash/wallpaper_handlers/sea_pen_fetcher.cc" />
+ <item id="cws_fetch_item_snippet" added_in_milestone="124" hash_code="24981637" content_hash_code="05d82ce1" os_list="linux,windows,chromeos" file_path="chrome/browser/extensions/webstore_data_fetcher.cc" />
+ <item id="remoting_cloud_provision_gce_instance" added_in_milestone="125" hash_code="121443670" content_hash_code="020ad462" os_list="linux,windows,android,chromeos" file_path="remoting/base/cloud_service_client.cc" />
+ <item id="lens_overlay" added_in_milestone="125" hash_code="111866169" content_hash_code="004895e8" os_list="linux,windows,chromeos" file_path="chrome/browser/ui/lens/lens_overlay_query_controller.cc" />
+ <item id="register_push_notification_service" added_in_milestone="124" type="partial" second_id="oauth2_api_call_flow" hash_code="119649246" content_hash_code="04e0c60d" os_list="chromeos" semantics_fields="1,2,3,4,5,7,8,9" policy_fields="3,4" file_path="chrome/browser/push_notification/server_client/push_notification_server_client_desktop_impl.cc" />
+ <item id="bromite_inline_update_controller" added_in_milestone="126" hash_code="88618481" content_hash_code="061ad1b5" os_list="linux,windows,android" file_path="chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/BromiteInlineUpdateController.java" />
+ <item id="download_via_toolbar_menu" added_in_milestone="126" hash_code="90651153" content_hash_code="072e7af3" os_list="linux,windows,android" file_path="chrome/browser/download/android/download_controller.cc" />
+ <item id="offline_pages_download_file" added_in_milestone="126" hash_code="94580999" content_hash_code="01ae83d8" os_list="linux,windows,android" file_path="chrome/browser/offline_pages/android/downloads/offline_page_download_bridge.cc" />
+ <item id="adblock_subscription_download" added_in_milestone="126" hash_code="8807068" content_hash_code="03359a90" os_list="linux,windows,android" file_path="components/adblock/core/subscription/ongoing_subscription_request_impl.cc" />
+ <item id="filters_update" added_in_milestone="126" hash_code="51960264" content_hash_code="070edef5" os_list="linux,windows,android" file_path="components/component_updater/download_filters_task.cc" />
+ <item id="download_via_context_menu" added_in_milestone="126" hash_code="64427392" content_hash_code="01089191" os_list="linux,windows,android" file_path="components/download/content/internal/context_menu_download.cc" />
+ <item id="webapk_icon_hasher" added_in_milestone="126" hash_code="61933932" content_hash_code="079c7adb" os_list="linux,windows,android" file_path="components/webapps/browser/android/webapk/webapk_single_icon_hasher.cc" />
+ <item id="keep_alive_url_loader" added_in_milestone="126" hash_code="1371386" content_hash_code="04f40c27" os_list="linux,windows,android" file_path="content/browser/loader/keep_alive_url_loader.cc" />
+ <item id="blink_resource_loader_sharedstorage_worklet" added_in_milestone="126" hash_code="132623057" content_hash_code="074212a5" os_list="linux,windows,android" file_path="third_party/blink/renderer/platform/loader/fetch/fetch_utils.cc" />
+ <item id="blink_resource_loader_webidentity" added_in_milestone="126" hash_code="37712640" content_hash_code="04fd614e" os_list="linux,windows,android" file_path="third_party/blink/renderer/platform/loader/fetch/fetch_utils.cc" />
+ <item id="blink_resource_loader_workers" added_in_milestone="126" hash_code="71243337" content_hash_code="0150f3b2" os_list="linux,windows,android" file_path="third_party/blink/renderer/platform/loader/fetch/fetch_utils.cc" />
+ <item id="blink_resource_loader_report" added_in_milestone="126" hash_code="76900237" content_hash_code="016f40bc" os_list="linux,windows,android" file_path="third_party/blink/renderer/platform/loader/fetch/fetch_utils.cc" />
+ <item id="blink_resource_loader_worklet" added_in_milestone="126" hash_code="71249662" content_hash_code="070205e2" os_list="linux,windows,android" file_path="third_party/blink/renderer/platform/loader/fetch/fetch_utils.cc" />
+ <item id="blink_resource_loader_webbundle" added_in_milestone="126" hash_code="115582637" content_hash_code="0331ecaf" os_list="linux,windows,android" file_path="third_party/blink/renderer/platform/loader/fetch/fetch_utils.cc" />
+ <item id="blink_resource_loader_manifest" added_in_milestone="126" hash_code="70686768" content_hash_code="046ea9cd" os_list="linux,windows,android" file_path="third_party/blink/renderer/platform/loader/fetch/fetch_utils.cc" />
+ <item id="blink_resource_speculation_rules" added_in_milestone="126" hash_code="27165615" content_hash_code="04bdd044" os_list="linux,windows,android" file_path="third_party/blink/renderer/platform/loader/fetch/fetch_utils.cc" />
+ <item id="blink_resource_loader_xslt" added_in_milestone="126" hash_code="35024334" content_hash_code="029ecdad" os_list="linux,windows,android" file_path="third_party/blink/renderer/platform/loader/fetch/fetch_utils.cc" />
+ <item id="blink_resource_loader_dictionary" added_in_milestone="126" hash_code="72296456" content_hash_code="04fa88f8" os_list="linux,windows,android" file_path="third_party/blink/renderer/platform/loader/fetch/fetch_utils.cc" />
+ <item id="blink_extension_resource_loader_embed" added_in_milestone="126" hash_code="95145213" content_hash_code="03788d28" os_list="linux,windows,android" file_path="third_party/blink/renderer/platform/loader/fetch/fetch_utils.cc" />
+</annotations>
diff --git a/services/firewall/tools/builders_template.py b/services/firewall/tools/builders_template.py
new file mode 100644
@@ -1446,7 +1510,7 @@ diff --git a/services/firewall/tools/rules.xml b/services/firewall/tools/rules.x
new file mode 100644
--- /dev/null
+++ b/services/firewall/tools/rules.xml
@@ -0,0 +1,92 @@
@@ -0,0 +1,93 @@
+<?xml version="1.0"?>
+<!--
+ This file is part of Bromite.
@@ -1476,6 +1540,7 @@ new file mode 100644
+ <item id="offline_pages_download_file" allowed="1"/>
+ <item id="download_web_contents_frame" allowed="1"/>
+ <item id="save_file_manager" allowed="1"/>
+ <item id="download_via_toolbar_menu" allowed="1"/>
+
+ <!-- Disallow temporarily controlling the revoked list,
+ suffers from possible privacy problems -->
@@ -19,7 +19,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
cc/trees/layer_tree_host_impl.cc | 3 +
.../start_surface/StartSurfaceMediator.java | 4 +
.../tab_management/TabGroupUiCoordinator.java | 7 +-
.../tab_management/TabGroupUiMediator.java | 50 +++++-
.../tab_management/TabGroupUiMediator.java | 56 ++++++-
.../tab_management/TabGroupUiProperties.java | 7 +-
.../tab_management/TabGroupUiToolbarView.java | 17 ++
.../tab_management/TabGroupUiViewBinder.java | 3 +
@@ -87,7 +87,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../AccessibilitySettingsDelegate.java | 7 +
.../render_widget_host_view_android.cc | 3 +
.../Move-navigation-bar-to-bottom.inc | 17 ++
74 files changed, 1013 insertions(+), 87 deletions(-)
74 files changed, 1017 insertions(+), 89 deletions(-)
create mode 100644 cromite_flags/chrome/browser/about_flags_cc/Move-navigation-bar-to-bottom.inc
diff --git a/cc/base/features.cc b/cc/base/features.cc
@@ -204,7 +204,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
mTabGridDialogControllerSupplier,
- mOmniboxFocusStateSupplier);
+ mOmniboxFocusStateSupplier,
+ topUiThemeColorProvider, tabSupplier);
+ topUiThemeColorProvider, tabSupplier);
TabGroupUtils.startObservingForCreationIPH();
@@ -236,7 +236,27 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
TabGroupUiMediator(
Context context,
BottomControlsVisibilityController visibilityController,
@@ -161,7 +172,9 @@ public class TabGroupUiMediator implements BackPressHandler {
@@ -130,7 +141,8 @@ public class TabGroupUiMediator implements BackPressHandler {
@Nullable
LazyOneshotSupplier<TabGridDialogMediator.DialogController>
dialogControllerSupplier,
- ObservableSupplier<Boolean> omniboxFocusStateSupplier) {
+ ObservableSupplier<Boolean> omniboxFocusStateSupplier,
+ TopUiThemeColorProvider topUiThemeColorProvider, ObservableSupplier<Tab> tabSupplier) {
this(
context,
visibilityController,
@@ -143,7 +155,8 @@ public class TabGroupUiMediator implements BackPressHandler {
dialogControllerSupplier,
omniboxFocusStateSupplier,
SemanticColorUtils.getDialogBgColor(context),
- context.getColor(org.chromium.chrome.R.color.dialog_bg_color_dark_baseline));
+ context.getColor(org.chromium.chrome.R.color.dialog_bg_color_dark_baseline),
+ topUiThemeColorProvider, tabSupplier);
}
@VisibleForTesting
@@ -161,7 +174,9 @@ public class TabGroupUiMediator implements BackPressHandler {
dialogControllerSupplier,
ObservableSupplier<Boolean> omniboxFocusStateSupplier,
@ColorInt int primaryBackgroundColor,
@@ -247,7 +267,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
mContext = context;
mResetHandler = resetHandler;
mModel = model;
@@ -185,11 +198,30 @@ public class TabGroupUiMediator implements BackPressHandler {
@@ -185,11 +200,30 @@ public class TabGroupUiMediator implements BackPressHandler {
mIsShowingOverViewMode = true;
}
@@ -278,7 +298,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
if (getTabsToShowForId(lastId).contains(tab)) {
return;
}
@@ -251,6 +283,7 @@ public class TabGroupUiMediator implements BackPressHandler {
@@ -251,6 +285,7 @@ public class TabGroupUiMediator implements BackPressHandler {
return;
}
resetTabStripWithRelatedTabsForId(currentTab.getId());
@@ -286,7 +306,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
}
@Override
@@ -378,6 +411,8 @@ public class TabGroupUiMediator implements BackPressHandler {
@@ -378,6 +413,8 @@ public class TabGroupUiMediator implements BackPressHandler {
resetTabStripWithRelatedTabsForId(tab.getId());
}
@@ -295,7 +315,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
mBackPressStateSupplier = new ObservableSupplierImpl<>();
if (mTabGridDialogControllerSupplier != null) {
mTabGridDialogControllerSupplier.onAvailable(
@@ -400,6 +435,18 @@ public class TabGroupUiMediator implements BackPressHandler {
@@ -400,6 +437,18 @@ public class TabGroupUiMediator implements BackPressHandler {
mModel.set(TabGroupUiProperties.LEFT_BUTTON_DRAWABLE_ID, drawableId);
}
@@ -314,7 +334,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
void setupLeftButtonOnClickListener(View.OnClickListener listener) {
mModel.set(TabGroupUiProperties.LEFT_BUTTON_ON_CLICK_LISTENER, listener);
}
@@ -526,6 +573,7 @@ public class TabGroupUiMediator implements BackPressHandler {
@@ -526,6 +575,7 @@ public class TabGroupUiMediator implements BackPressHandler {
}
public void destroy() {
@@ -375,7 +395,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
+ return;
+
+ // change the background color of the bottom bar if the top toolbar is below
+ setPrimaryColor(color);
+ setContentBackgroundColor(color);
+
+ // and adjust the tint
+ boolean useLightTint = ColorUtils.shouldUseLightForegroundOnBackground(color);
@@ -1032,7 +1052,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layo
if (mSupportSwipeDown && mScrollDirection == ScrollDirection.DOWN) {
RecordUserAction.record("MobileToolbarSwipeOpenStackView");
showLayout(LayoutType.TAB_SWITCHER, true);
+ } else if (mSupportSwipeUp && isTabSwitcherReady()
+ } else if (mSupportSwipeUp
+ && mScrollDirection == ScrollDirection.UP
+ && !ChromeFeatureList.sDisableToolbarSwipeUp.isEnabled()) {
+ showLayout(LayoutType.TAB_SWITCHER, true);
@@ -1598,7 +1618,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsP
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/searchwidget/SearchActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/searchwidget/SearchActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/searchwidget/SearchActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/searchwidget/SearchActivity.java
@@ -86,6 +86,11 @@ import org.chromium.url.GURL;
@@ -85,6 +85,11 @@ import org.chromium.url.GURL;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
@@ -1610,25 +1630,25 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/searchwidget/Se
import java.lang.ref.WeakReference;
/** Queries the user's default search engine and shows autocomplete suggestions. */
@@ -293,6 +298,12 @@ public class SearchActivity extends AsyncInitializationActivity
@@ -292,6 +297,12 @@ public class SearchActivity extends AsyncInitializationActivity
(SearchActivityLocationBarLayout)
contentView.findViewById(R.id.search_location_bar);
View anchorView = contentView.findViewById(R.id.toolbar);
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
+ CoordinatorLayout.LayoutParams layoutParams = (CoordinatorLayout.LayoutParams)
+ mAnchorView.getLayoutParams();
+ anchorView.getLayoutParams();
+ layoutParams.gravity = Gravity.START | Gravity.BOTTOM;
+ mAnchorView.setLayoutParams(layoutParams);
+ anchorView.setLayoutParams(layoutParams);
+ }
// Update the status bar's color based on the toolbar color.
Drawable anchorViewBackground = anchorView.getBackground();
@@ -309,7 +320,7 @@ public class SearchActivity extends AsyncInitializationActivity
@@ -308,7 +319,7 @@ public class SearchActivity extends AsyncInitializationActivity
mLocationBarCoordinator =
new LocationBarCoordinator(
- mSearchBox,
+ mSearchBox, mAnchorView,
+ mSearchBox, anchorView,
anchorView,
mProfileSupplier,
PrivacyPreferencesManagerImpl.getInstance(),
@@ -2233,7 +2253,7 @@ diff --git a/chrome/browser/ui/android/appmenu/internal/java/src/org/chromium/ch
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java
@@ -91,6 +91,7 @@ public class LocationBarCoordinator
@@ -90,6 +90,7 @@ public class LocationBarCoordinator
private StatusCoordinator mStatusCoordinator;
private WindowDelegate mWindowDelegate;
private WindowAndroid mWindowAndroid;
@@ -2241,7 +2261,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow
private LocationBarMediator mLocationBarMediator;
private View mUrlBar;
private View mDeleteButton;
@@ -149,7 +150,7 @@ public class LocationBarCoordinator
@@ -148,7 +149,7 @@ public class LocationBarCoordinator
*/
public LocationBarCoordinator(
View locationBarLayout,
@@ -2250,7 +2270,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow
ObservableSupplier<Profile> profileObservableSupplier,
PrivacyPreferencesManager privacyPreferencesManager,
LocationBarDataProvider locationBarDataProvider,
@@ -188,6 +189,7 @@ public class LocationBarCoordinator
@@ -187,6 +188,7 @@ public class LocationBarCoordinator
mWindowAndroid = windowAndroid;
mActivityLifecycleDispatcher = activityLifecycleDispatcher;
mActivityLifecycleDispatcher.register(this);
@@ -2258,7 +2278,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow
Context context = mLocationBarLayout.getContext();
OneshotSupplierImpl<TemplateUrlService> templateUrlServiceSupplier =
new OneshotSupplierImpl<>();
@@ -198,7 +200,8 @@ public class LocationBarCoordinator
@@ -197,7 +199,8 @@ public class LocationBarCoordinator
autocompleteAnchorView,
mLocationBarLayout,
uiOverrides.isForcedPhoneStyleOmnibox(),
@@ -2649,16 +2669,16 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow
mRootFrameLayout = root;
root.setConstraintsSupplier(constraintsSupplier);
PropertyModel model = new PropertyModel(BottomControlsProperties.ALL_KEYS);
@@ -136,7 +142,8 @@ public class BottomControlsCoordinator implements BackPressHandler {
if (mContentDelegate != null) {
mContentDelegate.initializeWithNative(
activity,
- new BottomControlsVisibilityController() {
+ new BottomControlsVisibilityController(,
+ topUiThemeColorProvider, tabSupplier) {
@Override
public void setBottomControlsVisible(boolean isVisible) {
mMediator.setBottomControlsVisible(isVisible);
@@ -147,7 +153,8 @@ public class BottomControlsCoordinator implements BackPressHandler {
mMediator.setBottomControlsColor(color);
}
},
- root::onModelTokenChange);
+ root::onModelTokenChange,
+ topUiThemeColorProvider, tabSupplier);
}
}
diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/bottom/BottomControlsMediator.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/bottom/BottomControlsMediator.java
--- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/bottom/BottomControlsMediator.java
+++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/bottom/BottomControlsMediator.java
@@ -79,7 +79,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../media_router/caf/CafMessageHandler.java | 102 +--
.../media_router/caf/CastMediaSource.java | 10 +-
.../media_router/caf/CastOptionsProvider.java | 22 +-
.../caf/CastSessionController.java | 84 ---
.../caf/CastSessionController.java | 84 --
.../media_router/caf/CastUtils.java | 8 -
.../CafExpandedControllerActivity.java | 35 +-
.../CafRemotingMediaRouteProvider.java | 4 +-
@@ -104,11 +104,11 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
services/BUILD.gn | 9 -
services/device/geolocation/BUILD.gn | 4 -
services/shape_detection/BUILD.gn | 2 -
third_party/android_deps/BUILD.gn | 664 +-----------------
third_party/android_deps/BUILD.gn | 728 +-----------------
.../preconditions/javatests/BUILD.gn | 1 -
.../gms/ChromiumPlayServicesAvailability.java | 10 +-
third_party/cardboard/BUILD.gn | 4 -
84 files changed, 117 insertions(+), 2164 deletions(-)
84 files changed, 117 insertions(+), 2228 deletions(-)
create mode 100644 components/webauthn/android/java/src/org/chromium/components/webauthn/ConditionalUiState.java
diff --git a/android_webview/expectations/system_webview_bundle.AndroidManifest.expected b/android_webview/expectations/system_webview_bundle.AndroidManifest.expected
@@ -3681,7 +3681,37 @@ diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD.
}
# TODO(crbug.com/1366370) Remove this once all depencencies are updated to
@@ -781,237 +772,6 @@ if (!limit_android_deps) {
@@ -737,29 +728,6 @@ if (!limit_android_deps) {
]
}
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- android_aar_prebuilt("com_android_support_support_core_ui_java") {
- aar_path =
- "libs/com_android_support_support_core_ui/support-core-ui-28.0.0.aar"
- info_path = "libs/com_android_support_support_core_ui/com_android_support_support_core_ui.info"
- enable_bytecode_checks = false
- deps = [
- ":com_android_support_asynclayoutinflater_java",
- ":com_android_support_coordinatorlayout_java",
- ":com_android_support_cursoradapter_java",
- ":com_android_support_customview_java",
- ":com_android_support_drawerlayout_java",
- ":com_android_support_interpolator_java",
- ":com_android_support_slidingpanelayout_java",
- ":com_android_support_support_annotations_java",
- ":com_android_support_support_compat_java",
- ":com_android_support_support_core_utils_java",
- ":com_android_support_swiperefreshlayout_java",
- ":com_android_support_viewpager_java",
- ]
- resource_overlay = true
- }
-
# This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
android_aar_prebuilt(
"com_google_android_apps_common_testing_accessibility_framework_accessibility_test_framework_java") {
@@ -781,237 +749,6 @@ if (!limit_android_deps) {
]
}
@@ -3919,7 +3949,7 @@ diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD.
# This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
if (!defined(material_design_target)) {
android_aar_prebuilt("com_google_android_material_material_java") {
@@ -1060,73 +820,6 @@ if (!limit_android_deps) {
@@ -1060,73 +797,6 @@ if (!limit_android_deps) {
}
}
@@ -3993,7 +4023,28 @@ diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD.
# This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
if (!defined(guava_android_target)) {
java_prebuilt("com_google_guava_guava_android_java") {
@@ -1897,361 +1590,6 @@ if (!limit_android_deps) {
@@ -1244,20 +914,6 @@ if (!limit_android_deps) {
requires_android = true
}
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- android_aar_prebuilt("io_grpc_grpc_binder_java") {
- aar_path = "libs/io_grpc_grpc_binder/grpc-binder-1.49.0.aar"
- info_path = "libs/io_grpc_grpc_binder/io_grpc_grpc_binder.info"
- enable_bytecode_checks = false
- deps = [
- ":io_grpc_grpc_core_java",
- "//third_party/android_deps:guava_android_java",
- "//third_party/androidx:androidx_annotation_annotation_java",
- "//third_party/androidx:androidx_core_core_java",
- "//third_party/androidx:androidx_lifecycle_lifecycle_common_java",
- ]
- }
-
# This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
java_prebuilt("io_grpc_grpc_context_java") {
jar_path = "libs/io_grpc_grpc_context/grpc-context-1.49.0.jar"
@@ -1897,361 +1553,6 @@ if (!limit_android_deps) {
"androidx/*",
]
}
@@ -4355,6 +4406,40 @@ diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD.
# This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
java_prebuilt("com_squareup_javawriter_java") {
jar_path = "libs/com_squareup_javawriter/javawriter-2.1.1.jar"
@@ -2305,33 +1606,6 @@ if (!limit_android_deps) {
deps = [ "//third_party/kotlin_stdlib:kotlin_stdlib_java" ]
}
- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
- java_prebuilt("io_grpc_grpc_core_java") {
- jar_path = "libs/io_grpc_grpc_core/grpc-core-1.49.0.jar"
- output_name = "io_grpc_grpc_core"
- supports_android = true
- enable_bytecode_checks = false
-
- # To remove visibility constraint, add this dependency to
- # //third_party/android_deps/build.gradle.
- visibility = [
- ":*",
- "//third_party/androidx:*",
- ]
- deps = [
- ":com_google_android_annotations_java",
- ":com_google_code_gson_gson_java",
- ":com_google_errorprone_error_prone_annotations_java",
- ":io_grpc_grpc_api_java",
- ":io_perfmark_perfmark_api_java",
- ":org_codehaus_mojo_animal_sniffer_annotations_java",
- "//third_party/android_deps:guava_android_java",
- ]
-
- # https://crbug.com/1412551
- requires_android = true
- }
-
# This is generated, do not edit. Update BuildConfigGenerator.groovy instead.
java_prebuilt("io_perfmark_perfmark_api_java") {
jar_path = "libs/io_perfmark_perfmark_api/perfmark-api-0.25.0.jar"
diff --git a/third_party/android_deps/local_modifications/preconditions/javatests/BUILD.gn b/third_party/android_deps/local_modifications/preconditions/javatests/BUILD.gn
--- a/third_party/android_deps/local_modifications/preconditions/javatests/BUILD.gn
+++ b/third_party/android_deps/local_modifications/preconditions/javatests/BUILD.gn
@@ -8,8 +8,8 @@ Original License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
.../chrome_browser_main_extra_parts_segmentation_platform.cc | 4 ++++
components/segmentation_platform/public/features.cc | 2 ++
2 files changed, 6 insertions(+)
components/segmentation_platform/public/features.cc | 3 +++
2 files changed, 7 insertions(+)
diff --git a/chrome/browser/segmentation_platform/chrome_browser_main_extra_parts_segmentation_platform.cc b/chrome/browser/segmentation_platform/chrome_browser_main_extra_parts_segmentation_platform.cc
--- a/chrome/browser/segmentation_platform/chrome_browser_main_extra_parts_segmentation_platform.cc
@@ -47,11 +47,12 @@ diff --git a/chrome/browser/segmentation_platform/chrome_browser_main_extra_part
diff --git a/components/segmentation_platform/public/features.cc b/components/segmentation_platform/public/features.cc
--- a/components/segmentation_platform/public/features.cc
+++ b/components/segmentation_platform/public/features.cc
@@ -162,4 +162,6 @@ BASE_FEATURE(kSegmentationPlatformIosModuleRankerSplitBySurface,
@@ -162,4 +162,7 @@ BASE_FEATURE(kSegmentationPlatformIosModuleRankerSplitBySurface,
base::FEATURE_DISABLED_BY_DEFAULT);
#endif
+SET_CROMITE_FEATURE_DISABLED(kSegmentationPlatformFeature);
+SET_CROMITE_FEATURE_DISABLED(kSegmentationPlatformFeedSegmentFeature);
+SET_CROMITE_FEATURE_DISABLED(kSegmentationPlatformAdaptiveToolbarV2Feature);
} // namespace segmentation_platform::features
--
@@ -4,22 +4,60 @@ Subject: Remove support for device memory and cpu recovery
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
...ort-for-device-memory-and-cpu-recovery.inc | 1 +
.../v8_memory/web_memory_impl.cc | 8 ++++++++
...ort-for-device-memory-and-cpu-recovery.inc | 3 +++
...ort-for-device-memory-and-cpu-recovery.inc | 2 ++
.../browser/blob/blob_memory_controller.cc | 20 ++++++++++---------
.../browser/quota/quota_device_info_helper.cc | 17 ++++++++++++++--
.../approximated_device_memory.cc | 7 ++++++-
.../frame/navigator_concurrent_hardware.cc | 8 ++++++--
.../measure_memory_controller.cc | 5 +++++
.../blink/renderer/core/timing/memory_info.cc | 14 ++++++++++---
.../core/timing/window_performance.cc | 2 +-
7 files changed, 51 insertions(+), 18 deletions(-)
10 files changed, 68 insertions(+), 18 deletions(-)
create mode 100644 cromite_flags/third_party/blink/common/features_cc/Remove-support-for-device-memory-and-cpu-recovery.inc
create mode 100644 cromite_flags/third_party/blink/common/features_h/Remove-support-for-device-memory-and-cpu-recovery.inc
diff --git a/components/performance_manager/v8_memory/web_memory_impl.cc b/components/performance_manager/v8_memory/web_memory_impl.cc
--- a/components/performance_manager/v8_memory/web_memory_impl.cc
+++ b/components/performance_manager/v8_memory/web_memory_impl.cc
@@ -28,6 +28,7 @@
#include "content/public/common/content_switches.h"
#include "url/gurl.h"
#include "url/origin.h"
+#include "third_party/blink/public/common/features.h"
namespace performance_manager {
@@ -152,6 +153,13 @@ void WebMeasureMemorySecurityCheckerImpl::CheckMeasureMemoryIsAllowed(
DCHECK(frame);
DCHECK_ON_GRAPH_SEQUENCE(frame->GetGraph());
+ if (!base::FeatureList::IsEnabled(
+ blink::features::kWebMeasureMemoryViaPerformanceManager)) {
+ std::move(bad_message_callback)
+ .Run("WebMeasureMemoryViaPerformanceManager feature is disabled");
+ return;
+ }
+
// TODO(crbug.com/40132061): The frame may have navigated since it sent the
// measureMemory request. We could return true if the new document is allowed
// to measure memory, but the actual document that sent the request is not.
diff --git a/cromite_flags/third_party/blink/common/features_cc/Remove-support-for-device-memory-and-cpu-recovery.inc b/cromite_flags/third_party/blink/common/features_cc/Remove-support-for-device-memory-and-cpu-recovery.inc
new file mode 100644
--- /dev/null
+++ b/cromite_flags/third_party/blink/common/features_cc/Remove-support-for-device-memory-and-cpu-recovery.inc
@@ -0,0 +1 @@
+SET_CROMITE_FEATURE_DISABLED(kWebMeasureMemoryViaPerformanceManager);
@@ -0,0 +1,3 @@
+CROMITE_FEATURE(kWebMeasureMemoryViaPerformanceManager,
+ "WebMeasureMemoryViaPerformanceManager",
+ base::FEATURE_DISABLED_BY_DEFAULT);
diff --git a/cromite_flags/third_party/blink/common/features_h/Remove-support-for-device-memory-and-cpu-recovery.inc b/cromite_flags/third_party/blink/common/features_h/Remove-support-for-device-memory-and-cpu-recovery.inc
new file mode 100644
--- /dev/null
+++ b/cromite_flags/third_party/blink/common/features_h/Remove-support-for-device-memory-and-cpu-recovery.inc
@@ -0,0 +1,2 @@
+BLINK_COMMON_EXPORT BASE_DECLARE_FEATURE(
+ kWebMeasureMemoryViaPerformanceManager);
diff --git a/storage/browser/blob/blob_memory_controller.cc b/storage/browser/blob/blob_memory_controller.cc
--- a/storage/browser/blob/blob_memory_controller.cc
+++ b/storage/browser/blob/blob_memory_controller.cc
@@ -147,6 +185,28 @@ diff --git a/third_party/blink/renderer/core/frame/navigator_concurrent_hardware
}
} // namespace blink
diff --git a/third_party/blink/renderer/core/timing/measure_memory/measure_memory_controller.cc b/third_party/blink/renderer/core/timing/measure_memory/measure_memory_controller.cc
--- a/third_party/blink/renderer/core/timing/measure_memory/measure_memory_controller.cc
+++ b/third_party/blink/renderer/core/timing/measure_memory/measure_memory_controller.cc
@@ -8,6 +8,7 @@
#include "base/rand_util.h"
#include "components/performance_manager/public/mojom/coordination_unit.mojom-blink.h"
#include "services/metrics/public/cpp/ukm_builders.h"
+#include "third_party/blink/public/common/features.h"
#include "third_party/blink/public/platform/platform.h"
#include "third_party/blink/renderer/bindings/core/v8/script_promise.h"
#include "third_party/blink/renderer/bindings/core/v8/to_v8_traits.h"
@@ -85,6 +86,10 @@ enum class ApiStatus {
};
ApiStatus CheckMeasureMemoryAvailability() {
+ if (!base::FeatureList::IsEnabled(
+ features::kWebMeasureMemoryViaPerformanceManager)) {
+ return ApiStatus::kNotAvailableDueToFlag;
+ }
if (!RuntimeEnabledFeatures::PerformanceManagerInstrumentationEnabled()) {
return ApiStatus::kNotAvailableDueToResourceCoordinator;
}
diff --git a/third_party/blink/renderer/core/timing/memory_info.cc b/third_party/blink/renderer/core/timing/memory_info.cc
--- a/third_party/blink/renderer/core/timing/memory_info.cc
+++ b/third_party/blink/renderer/core/timing/memory_info.cc
@@ -8,9 +8,10 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../browser/metrics/UmaSessionStats.java | 19 -----
.../chrome/browser/ntp/NewTabPage.java | 38 +---------
.../browser/ntp/search/SearchBoxMediator.java | 1 -
.../browser/searchwidget/SearchActivity.java | 3 +-
.../SearchActivityLocationBarLayout.java | 8 ---
.../browser/toolbar/ToolbarManager.java | 5 --
.../chrome/browser/ui/RootUiCoordinator.java | 23 +------
.../chrome/browser/ui/RootUiCoordinator.java | 43 ------------
chrome/browser/ui/android/omnibox/BUILD.gn | 1 -
.../chrome/browser/omnibox/LocationBar.java | 6 --
.../omnibox/LocationBarCoordinator.java | 13 ----
@@ -21,7 +22,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../suggestions/AutocompleteCoordinator.java | 8 ---
.../suggestions/AutocompleteMediator.java | 9 ---
chrome/browser/ui/android/toolbar/BUILD.gn | 1 -
17 files changed, 7 insertions(+), 256 deletions(-)
18 files changed, 7 insertions(+), 279 deletions(-)
diff --git a/chrome/android/features/start_surface/java/src/org/chromium/chrome/features/start_surface/StartSurfaceMediator.java b/chrome/android/features/start_surface/java/src/org/chromium/chrome/features/start_surface/StartSurfaceMediator.java
--- a/chrome/android/features/start_surface/java/src/org/chromium/chrome/features/start_surface/StartSurfaceMediator.java
@@ -220,6 +221,26 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/search/Sear
}
/** Called to set a click listener for the search box. */
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/searchwidget/SearchActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/searchwidget/SearchActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/searchwidget/SearchActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/searchwidget/SearchActivity.java
@@ -65,7 +65,6 @@ import org.chromium.chrome.browser.settings.SettingsLauncherImpl;
import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.tab.TabBuilder;
import org.chromium.chrome.browser.tab.TabLaunchType;
-import org.chromium.chrome.browser.toolbar.VoiceToolbarButtonController;
import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager;
import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager.SnackbarManageable;
import org.chromium.chrome.browser.ui.native_page.NativePage;
@@ -330,7 +329,7 @@ public class SearchActivity extends AsyncInitializationActivity
/*omniboxUma*/ (url, transition, isNtp) -> {},
TabWindowManagerSingleton::getInstance,
/* bookmarkState= */ (url) -> false,
- VoiceToolbarButtonController::isToolbarMicEnabled,
+ /* isToolbarMicEnabled */ () -> false,
/* merchantTrustSignalsCoordinatorSupplier= */ null,
new OmniboxActionDelegateImpl(
this,
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/searchwidget/SearchActivityLocationBarLayout.java b/chrome/android/java/src/org/chromium/chrome/browser/searchwidget/SearchActivityLocationBarLayout.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/searchwidget/SearchActivityLocationBarLayout.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/searchwidget/SearchActivityLocationBarLayout.java
@@ -279,7 +300,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordi
import org.chromium.chrome.browser.paint_preview.DemoPaintPreview;
import org.chromium.chrome.browser.password_manager.ManagePasswordsReferrer;
import org.chromium.chrome.browser.password_manager.PasswordManagerLauncher;
@@ -295,7 +293,6 @@ public class RootUiCoordinator
@@ -134,7 +132,6 @@ import org.chromium.chrome.browser.theme.TopUiThemeColorProvider;
import org.chromium.chrome.browser.toolbar.ButtonDataProvider;
import org.chromium.chrome.browser.toolbar.ToolbarIntentMetadata;
import org.chromium.chrome.browser.toolbar.ToolbarManager;
-import org.chromium.chrome.browser.toolbar.VoiceToolbarButtonController;
import org.chromium.chrome.browser.toolbar.adaptive.AdaptiveButtonActionMenuCoordinator;
import org.chromium.chrome.browser.toolbar.adaptive.AdaptiveToolbarButtonController;
import org.chromium.chrome.browser.toolbar.adaptive.AdaptiveToolbarButtonVariant;
@@ -295,7 +292,6 @@ public class RootUiCoordinator
protected OneshotSupplier<ToolbarIntentMetadata> mIntentMetadataOneshotSupplier;
protected OneshotSupplierImpl<Boolean> mPromoShownOneshotSupplier = new OneshotSupplierImpl<>();
protected Supplier<Tab> mStartSurfaceParentTabSupplier;
@@ -287,7 +316,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordi
private MediaCaptureOverlayController mCaptureController;
private @Nullable ScrollCaptureManager mScrollCaptureManager;
protected final ActivityLifecycleDispatcher mActivityLifecycleDispatcher;
@@ -654,9 +651,6 @@ public class RootUiCoordinator
@@ -654,9 +650,6 @@ public class RootUiCoordinator
}
if (mToolbarManager != null) {
@@ -297,28 +326,56 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordi
mToolbarManager.destroy();
mToolbarManager = null;
}
@@ -1326,19 +1320,11 @@ public class RootUiCoordinator
new VoiceToolbarButtonController.VoiceSearchDelegate() {
@Override
public boolean isVoiceSearchEnabled() {
@@ -1322,39 +1315,12 @@ public class RootUiCoordinator
() ->
mToolbarManager.setUrlBarFocus(
false, OmniboxFocusReason.UNFOCUS));
- VoiceToolbarButtonController.VoiceSearchDelegate voiceSearchDelegate =
- new VoiceToolbarButtonController.VoiceSearchDelegate() {
- @Override
- public boolean isVoiceSearchEnabled() {
- VoiceRecognitionHandler voiceRecognitionHandler =
- mToolbarManager.getVoiceRecognitionHandler();
- if (voiceRecognitionHandler == null) return false;
- return voiceRecognitionHandler.isVoiceSearchEnabled();
+ return false;
}
@Override
public void startVoiceRecognition() {
- }
-
- @Override
- public void startVoiceRecognition() {
- VoiceRecognitionHandler voiceRecognitionHandler =
- mToolbarManager.getVoiceRecognitionHandler();
- if (voiceRecognitionHandler == null) return;
- voiceRecognitionHandler.startVoiceRecognition(
- VoiceInteractionSource.TOOLBAR);
}
};
- }
- };
TranslateToolbarButtonController translateToolbarButtonController =
@@ -1503,13 +1489,6 @@ public class RootUiCoordinator
new TranslateToolbarButtonController(
mActivityTabProvider,
AppCompatResources.getDrawable(mActivity, R.drawable.ic_translate),
mActivity.getString(R.string.menu_translate),
trackerSupplier);
- VoiceToolbarButtonController voiceToolbarButtonController =
- new VoiceToolbarButtonController(
- mActivity,
- AppCompatResources.getDrawable(mActivity, R.drawable.ic_mic_white_24dp),
- mActivityTabProvider,
- trackerSupplier,
- mModalDialogManagerSupplier.get(),
- voiceSearchDelegate);
OptionalNewTabButtonController newTabButtonController =
new OptionalNewTabButtonController(
mActivity,
@@ -1384,8 +1350,6 @@ public class RootUiCoordinator
AdaptiveToolbarButtonVariant.NEW_TAB, newTabButtonController);
adaptiveToolbarButtonController.addButtonVariant(
AdaptiveToolbarButtonVariant.SHARE, shareButtonController);
- adaptiveToolbarButtonController.addButtonVariant(
- AdaptiveToolbarButtonVariant.VOICE, voiceToolbarButtonController);
adaptiveToolbarButtonController.addButtonVariant(
AdaptiveToolbarButtonVariant.ADD_TO_BOOKMARKS,
addToBookmarksToolbarButtonController);
@@ -1503,13 +1467,6 @@ public class RootUiCoordinator
if (!mSupportsAppMenuSupplier.getAsBoolean()) {
mToolbarManager.getToolbar().disableMenuButton();
}
@@ -15,9 +15,13 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../browser/flags/ChromeFeatureList.java | 1 +
.../AdaptiveToolbarButtonController.java | 9 +++
.../adaptive/AdaptiveToolbarFeatures.java | 65 ++++++++++++++++++-
.../adaptive/AdaptiveToolbarPrefs.java | 2 +-
.../AdaptiveToolbarStatePredictor.java | 9 ++-
.../AdaptiveToolbarStatePredictorTest.java | 15 +++++
10 files changed, 142 insertions(+), 11 deletions(-)
...oButtonGroupAdaptiveToolbarPreference.java | 1 +
...ve-button-in-top-toolbar-customization.inc | 3 +
13 files changed, 147 insertions(+), 12 deletions(-)
create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Restore-adaptive-button-in-top-toolbar-customization.inc
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
@@ -140,7 +144,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
+CROMITE_FEATURE(kAdaptiveButtonInTopToolbar,
+ "AdaptiveButtonInTopToolbar",
+ base::FEATURE_DISABLED_BY_DEFAULT);
+ base::FEATURE_ENABLED_BY_DEFAULT);
+
BASE_FEATURE(kAdaptiveButtonInTopToolbarTranslate,
"AdaptiveButtonInTopToolbarTranslate",
@@ -277,6 +281,18 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow
assert isCustomizationEnabled();
if (sButtonVariant != null) return sButtonVariant;
String defaultSegment = getDefaultSegment();
diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/adaptive/AdaptiveToolbarPrefs.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/adaptive/AdaptiveToolbarPrefs.java
--- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/adaptive/AdaptiveToolbarPrefs.java
+++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/adaptive/AdaptiveToolbarPrefs.java
@@ -21,7 +21,7 @@ public class AdaptiveToolbarPrefs {
*/
public static boolean isCustomizationPreferenceEnabled() {
return ChromeSharedPreferences.getInstance()
- .readBoolean(ADAPTIVE_TOOLBAR_CUSTOMIZATION_ENABLED, true);
+ .readBoolean(ADAPTIVE_TOOLBAR_CUSTOMIZATION_ENABLED, false);
}
/**
diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/adaptive/AdaptiveToolbarStatePredictor.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/adaptive/AdaptiveToolbarStatePredictor.java
--- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/adaptive/AdaptiveToolbarStatePredictor.java
+++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/adaptive/AdaptiveToolbarStatePredictor.java
@@ -323,4 +339,23 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow
@Test
@SmallTest
public void testManualOverride() {
diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/adaptive/settings/RadioButtonGroupAdaptiveToolbarPreference.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/adaptive/settings/RadioButtonGroupAdaptiveToolbarPreference.java
--- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/adaptive/settings/RadioButtonGroupAdaptiveToolbarPreference.java
+++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/adaptive/settings/RadioButtonGroupAdaptiveToolbarPreference.java
@@ -57,6 +57,7 @@ public class RadioButtonGroupAdaptiveToolbarPreference extends Preference
mAutoButton =
(RadioButtonWithDescription)
holder.findViewById(R.id.adaptive_option_based_on_usage);
+ mAutoButton.setVisibility(View.GONE);
mNewTabButton =
(RadioButtonWithDescription) holder.findViewById(R.id.adaptive_option_new_tab);
mShareButton = (RadioButtonWithDescription) holder.findViewById(R.id.adaptive_option_share);
diff --git a/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Restore-adaptive-button-in-top-toolbar-customization.inc b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Restore-adaptive-button-in-top-toolbar-customization.inc
new file mode 100644
--- /dev/null
+++ b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Restore-adaptive-button-in-top-toolbar-customization.inc
@@ -0,0 +1,3 @@
+SET_CROMITE_FEATURE_ENABLED(kAdaptiveButtonInTopToolbarCustomizationV2);
+
+SET_CROMITE_FEATURE_DISABLED(kAdaptiveButtonInTopToolbarTranslate);
--
@@ -112,7 +112,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
getAddress().getOrigin(),
- ContentSettingValues.BLOCK,
+ value,
+ "",
+ ProviderType.NONE,
+ /* isEmbargoed= */ false);
+ setContentSettingException(type, exception);
+ }
+5 -5
View File
@@ -577,7 +577,7 @@ new file mode 100644
+import android.widget.TextView;
+
+import android.content.SharedPreferences;
+import org.chromium.chrome.browser.omaha.OmahaBase;
+import org.chromium.chrome.browser.omaha.OmahaPrefUtils;
+
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
@@ -730,7 +730,7 @@ new file mode 100644
+ assert !isWaitingForNativeAndPolicyInit();
+
+ setSpinnerVisible(false);
+ mAutoUpdaterCheckBox.setChecked(true);
+ mAutoUpdaterCheckBox.setChecked(false);
+ }
+
+ private void updateView() {
@@ -771,7 +771,7 @@ new file mode 100644
+ }
+
+ private void updateReportCheckbox() {
+ mAutoUpdaterCheckBox.setChecked(true);
+ mAutoUpdaterCheckBox.setChecked(false);
+ }
+
+ private void onPolicyServiceInitialized(boolean onDevicePolicyFound) {
@@ -800,8 +800,8 @@ new file mode 100644
+ mTosAcceptedTime = SystemClock.elapsedRealtime();
+
+ // save updater configuration only on button click
+ SharedPreferences.Editor sharedPreferenceEditor = OmahaBase.getSharedPreferences().edit();
+ sharedPreferenceEditor.putBoolean(OmahaBase.PREF_ALLOW_INLINE_UPDATE, mAutoUpdaterChecked);
+ SharedPreferences.Editor sharedPreferenceEditor = OmahaPrefUtils.getSharedPreferences().edit();
+ sharedPreferenceEditor.putBoolean(OmahaPrefUtils.PREF_ALLOW_INLINE_UPDATE, mAutoUpdaterChecked);
+ sharedPreferenceEditor.apply();
+
+ tryMarkTermsAccepted(true);
@@ -7,6 +7,7 @@ Disable domain reliability detection
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
.../chrome/browser/ui/RootUiCoordinator.java | 3 -
chrome/browser/BUILD.gn | 8 -
.../android/metrics/uma_session_stats.cc | 10 -
.../android/signin/signin_manager_android.cc | 39 +--
@@ -31,6 +32,9 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
chrome/browser/safe_browsing/BUILD.gn | 1 -
.../ui_thread_search_terms_data.cc | 4 -
chrome/browser/ui/BUILD.gn | 1 -
chrome/browser/ui/android/omnibox/BUILD.gn | 2 -
.../omnibox/LocationBarCoordinator.java | 2 -
.../browser/omnibox/LocationBarMediator.java | 22 --
.../ui/webui/new_tab_page/new_tab_page_ui.cc | 5 -
.../webui/settings/reset_settings_handler.cc | 1 -
.../upgrade_detector/upgrade_detector_impl.cc | 6 -
@@ -59,9 +63,31 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
...gled-chromium-no-special-hosts-domains.inc | 1 +
net/base/url_util.cc | 25 +-
services/network/network_context.cc | 2 +-
52 files changed, 57 insertions(+), 812 deletions(-)
56 files changed, 57 insertions(+), 841 deletions(-)
create mode 100644 cromite_flags/content/public/common/content_features_cc/ungoogled-chromium-no-special-hosts-domains.inc
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java b/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java
@@ -91,7 +91,6 @@ import org.chromium.chrome.browser.messages.MessageContainerCoordinator;
import org.chromium.chrome.browser.messages.MessageContainerObserver;
import org.chromium.chrome.browser.messages.MessagesResourceMapperInitializer;
import org.chromium.chrome.browser.omnibox.OmniboxFocusReason;
-import org.chromium.chrome.browser.omnibox.geo.GeolocationHeader;
import org.chromium.chrome.browser.omnibox.suggestions.action.OmniboxActionDelegateImpl;
import org.chromium.chrome.browser.paint_preview.DemoPaintPreview;
import org.chromium.chrome.browser.password_manager.ManagePasswordsReferrer;
@@ -1078,10 +1077,8 @@ public class RootUiCoordinator
String url =
TemplateUrlServiceFactory.getForProfile(tab.getProfile())
.getUrlForSearchQuery(query);
- String headers = GeolocationHeader.getGeoHeader(url, tab);
LoadUrlParams loadUrlParams = new LoadUrlParams(url);
- loadUrlParams.setVerbatimHeaders(headers);
loadUrlParams.setTransitionType(PageTransition.GENERATED);
return loadUrlParams;
}
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -706,6 +732,90 @@ diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn
"//chrome/browser/image_decoder",
"//chrome/browser/image_fetcher",
"//chrome/browser/media:mojo_bindings",
diff --git a/chrome/browser/ui/android/omnibox/BUILD.gn b/chrome/browser/ui/android/omnibox/BUILD.gn
--- a/chrome/browser/ui/android/omnibox/BUILD.gn
+++ b/chrome/browser/ui/android/omnibox/BUILD.gn
@@ -47,8 +47,6 @@ android_library("java") {
"java/src/org/chromium/chrome/browser/omnibox/UrlBarProperties.java",
"java/src/org/chromium/chrome/browser/omnibox/UrlBarViewBinder.java",
"java/src/org/chromium/chrome/browser/omnibox/UrlFocusChangeListener.java",
- "java/src/org/chromium/chrome/browser/omnibox/geo/GeolocationHeader.java",
- "java/src/org/chromium/chrome/browser/omnibox/geo/GeolocationTracker.java",
"java/src/org/chromium/chrome/browser/omnibox/geo/PlatformNetworksManager.java",
"java/src/org/chromium/chrome/browser/omnibox/geo/VisibleNetworks.java",
"java/src/org/chromium/chrome/browser/omnibox/geo/VisibleNetworksTracker.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
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java
@@ -30,7 +30,6 @@ import org.chromium.chrome.browser.locale.LocaleManager;
import org.chromium.chrome.browser.merchant_viewer.MerchantTrustSignalsCoordinator;
import org.chromium.chrome.browser.omnibox.LocationBarMediator.OmniboxUma;
import org.chromium.chrome.browser.omnibox.LocationBarMediator.SaveOfflineButtonState;
-import org.chromium.chrome.browser.omnibox.geo.GeolocationHeader;
import org.chromium.chrome.browser.omnibox.status.StatusCoordinator;
import org.chromium.chrome.browser.omnibox.status.StatusCoordinator.PageInfoAction;
import org.chromium.chrome.browser.omnibox.status.StatusView;
@@ -380,7 +379,6 @@ public class LocationBarCoordinator
mLocationBarMediator.destroy();
mLocationBarMediator = null;
- GeolocationHeader.stopListeningForLocationUpdates();
mDestroyed = true;
}
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java
@@ -47,7 +47,6 @@ import org.chromium.chrome.browser.lens.LensQueryParams;
import org.chromium.chrome.browser.locale.LocaleManager;
import org.chromium.chrome.browser.omnibox.UrlBar.UrlBarDelegate;
import org.chromium.chrome.browser.omnibox.UrlBarCoordinator.SelectionState;
-import org.chromium.chrome.browser.omnibox.geo.GeolocationHeader;
import org.chromium.chrome.browser.omnibox.status.StatusCoordinator;
import org.chromium.chrome.browser.omnibox.styles.OmniboxResourceProvider;
import org.chromium.chrome.browser.omnibox.suggestions.AutocompleteCoordinator;
@@ -304,24 +303,6 @@ class LocationBarMediator
if (!mUrlFocusedWithoutAnimations) handleUrlFocusAnimation(hasFocus);
- if (hasFocus
- && mLocationBarDataProvider.hasTab()
- && !mLocationBarDataProvider.isIncognito()) {
- if (mTemplateUrlServiceSupplier.hasValue()) {
- if (mTemplateUrlServiceSupplier.get().isDefaultSearchEngineGoogle()) {
- GeolocationHeader.primeLocationForGeoHeaderIfEnabled(
- mProfileSupplier.get(), mTemplateUrlServiceSupplier.get());
- }
- } else {
- mTemplateUrlServiceSupplier.onAvailable(
- (templateUrlService) -> {
- if (templateUrlService.isDefaultSearchEngineGoogle()) {
- GeolocationHeader.primeLocationForGeoHeaderIfEnabled(
- mProfileSupplier.get(), templateUrlService);
- }
- });
- }
- } // Focus change caused by a closed tab may result in there not being an active tab.
if (!hasFocus && mLocationBarDataProvider.hasTab()) {
setUrl(
mLocationBarDataProvider.getCurrentGurl(),
@@ -337,8 +318,6 @@ class LocationBarMediator
templateUrlService.addObserver(this);
if (OmniboxFeatures.sUseFusedLocationProvider.isEnabled()
&& templateUrlService.isDefaultSearchEngineGoogle()) {
- GeolocationHeader.primeLocationForGeoHeaderIfEnabled(
- mProfileSupplier.get(), mTemplateUrlServiceSupplier.get());
}
});
@@ -568,7 +547,6 @@ class LocationBarMediator
LoadUrlParams loadUrlParams = new LoadUrlParams(url);
try (TimingMetric record =
TimingMetric.shortUptime("Android.Omnibox.SetGeolocationHeadersTime")) {
- loadUrlParams.setVerbatimHeaders(GeolocationHeader.getGeoHeader(url, currentTab));
}
loadUrlParams.setTransitionType(
omniboxLoadUrlParams.transitionType | PageTransition.FROM_ADDRESS_BAR);
diff --git a/chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.cc b/chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.cc
--- a/chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.cc
+++ b/chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.cc