Patches for 139 (final)

This commit is contained in:
Carmelo Messina
2025-08-13 16:12:23 +02:00
parent 0e9691d965
commit 05044869f6
37 changed files with 2516 additions and 316 deletions
@@ -28,21 +28,21 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../chrome/browser/app/ChromeActivity.java | 4 +
.../AppMenuPropertiesDelegateImpl.java | 7 +-
.../ChromeContextMenuPopulator.java | 6 +-
.../CustomTabActivityLifecycleUmaTracker.java | 39 -----
.../CustomTabActivityLifecycleUmaTracker.java | 39 ----
.../CustomTabAppMenuPropertiesDelegate.java | 4 +
.../CustomTabIntentDataProvider.java | 10 ++
.../CustomTabIntentDataProvider.java | 10 +
.../browser/download/DownloadUtils.java | 13 +-
.../history/HistoryContentManager.java | 7 +-
.../browser/history/HistoryManager.java | 27 ++-
.../chrome/browser/history/HistoryPage.java | 16 ++
.../native_page/NativePageFactory.java | 4 +-
.../chrome/browser/ntp/RecentTabsManager.java | 28 ++-
.../privacy/settings/IncognitoSettings.java | 162 ++++++++++++++++++
.../privacy/settings/IncognitoSettings.java | 175 ++++++++++++++++++
.../settings/FragmentDependencyProvider.java | 4 +
.../HistoricalTabModelObserver.java | 5 +-
.../tab/tab_restore/HistoricalTabSaver.java | 2 +-
.../tab_restore/HistoricalTabSaverImpl.java | 17 +-
.../TabbedAppMenuPropertiesDelegate.java | 9 +
.../TabbedAppMenuPropertiesDelegate.java | 6 +-
.../tabbed_mode/TabbedRootUiCoordinator.java | 4 +-
.../browser/tabmodel/ChromeTabCreator.java | 5 +-
.../tabmodel/TabModelSelectorImpl.java | 3 +
@@ -55,17 +55,17 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../remote_suggestions_service_factory.cc | 5 +
.../bookmarks/android/bookmark_bridge.cc | 7 +
.../host_content_settings_map_factory.cc | 22 ++-
chrome/browser/history/history_tab_helper.cc | 20 +++
chrome/browser/history/history_tab_helper.cc | 20 ++
chrome/browser/history/history_tab_helper.h | 10 +-
.../android/offline_page_bridge.cc | 11 +-
.../android/offline_page_model_factory.cc | 20 ++-
.../android/offline_page_model_factory.cc | 20 +-
.../android/request_coordinator_factory.cc | 33 +++-
.../offline_page_model_factory.h | 1 +
.../offline_pages/recent_tab_helper.cc | 31 +++-
.../browser/offline_pages/recent_tab_helper.h | 5 +
.../request_coordinator_factory.h | 4 +-
chrome/browser/prefs/browser_prefs.cc | 5 +
chrome/browser/profiles/profile_selections.cc | 10 ++
chrome/browser/profiles/profile_selections.cc | 10 +
chrome/browser/profiles/profile_selections.h | 7 +-
.../browser/ui/android/native_page/BUILD.gn | 2 +
.../browser/ui/native_page/NativePage.java | 22 ++-
@@ -88,7 +88,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../add-an-always-incognito-mode.inc | 1 +
.../add-an-always-incognito-mode.inc | 3 +
.../add-an-always-incognito-mode.inc | 1 +
69 files changed, 791 insertions(+), 112 deletions(-)
69 files changed, 800 insertions(+), 113 deletions(-)
create mode 100644 chrome/android/java/res/xml/incognito_preferences.xml
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/AlwaysIncognitoLinkInterceptor.java
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/IncognitoSettings.java
@@ -700,7 +700,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
new file mode 100644
--- /dev/null
+++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/IncognitoSettings.java
@@ -0,0 +1,162 @@
@@ -0,0 +1,175 @@
+/*
+ This file is part of Bromite.
+
@@ -733,7 +733,10 @@ new file mode 100644
+import androidx.preference.PreferenceFragmentCompat;
+import androidx.vectordrawable.graphics.drawable.VectorDrawableCompat;
+
+import org.chromium.base.supplier.ObservableSupplier;
+import org.chromium.base.supplier.ObservableSupplierImpl;
+import org.chromium.base.supplier.Supplier;
+
+import org.chromium.chrome.R;
+import org.chromium.chrome.browser.preferences.Pref;
+import org.chromium.chrome.browser.profiles.Profile;
@@ -743,8 +746,11 @@ new file mode 100644
+import org.chromium.chrome.browser.ui.messages.snackbar.INeedSnackbarManager;
+import org.chromium.chrome.browser.ui.messages.snackbar.Snackbar;
+import org.chromium.chrome.browser.lifetime.ApplicationLifetime;
+import org.chromium.chrome.browser.settings.ChromeBaseSettingsFragment;
+
+import org.chromium.components.browser_ui.settings.ChromeSwitchPreference;
+import org.chromium.components.browser_ui.settings.SettingsUtils;
+import org.chromium.components.browser_ui.settings.SettingsFragment;
+import org.chromium.components.prefs.PrefService;
+import org.chromium.components.user_prefs.UserPrefs;
+
@@ -752,8 +758,8 @@ new file mode 100644
+ * Fragment to keep track of the all the always incognito related preferences.
+ */
+public class IncognitoSettings
+ extends PreferenceFragmentCompat implements Preference.OnPreferenceChangeListener,
+ INeedSnackbarManager {
+ extends ChromeBaseSettingsFragment implements Preference.OnPreferenceChangeListener,
+ INeedSnackbarManager {
+ private Supplier<SnackbarManager> mSnackbarManagerSupplier;
+ private Snackbar mSnackbar;
+
@@ -762,16 +768,23 @@ new file mode 100644
+ private static final String PREF_INCOGNITO_SAVE_SITE_SETTING = "incognito_save_site_setting";
+
+ private final PrefService prefService = UserPrefs.get(ProfileManager.getLastUsedRegularProfile());
+ private final ObservableSupplierImpl<String> mPageTitle = new ObservableSupplierImpl<>();
+
+ @Override
+ public ObservableSupplier<String> getPageTitle() {
+ return mPageTitle;
+ }
+
+ @Override
+ public @SettingsFragment.AnimationType int getAnimationType() {
+ return SettingsFragment.AnimationType.PROPERTY;
+ }
+
+ @Override
+ public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
+ PrivacyPreferencesManagerImpl privacyPrefManager =
+ PrivacyPreferencesManagerImpl.getInstance();
+ mPageTitle.set(getString(R.string.incognito_settings_title));
+ SettingsUtils.addPreferencesFromResource(this, R.xml.incognito_preferences);
+ getActivity().setTitle(R.string.incognito_settings_title);
+
+ setHasOptionsMenu(true);
+
+ updatePreferences();
+ }
+
@@ -1001,28 +1014,18 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab
import org.chromium.chrome.browser.ActivityTabProvider;
import org.chromium.chrome.browser.ai.AiAssistantService;
import org.chromium.chrome.browser.app.appmenu.AppMenuPropertiesDelegateImpl;
@@ -186,6 +187,13 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm
}
private void populatePageModeMenu(MVCListAdapter.ModelList modelList) {
+ boolean always_incognito = AlwaysIncognitoLinkInterceptor.isAlwaysIncognito();
+ if (always_incognito) {
+ final MenuItem newTabOption = menu.findItem(R.id.new_tab_menu_id);
+ if (newTabOption != null)
+ newTabOption.setVisible(false);
+ }
+
Tab currentTab = mActivityTabProvider.get();
GURL url = currentTab != null ? currentTab.getUrl() : GURL.emptyGURL();
@@ -375,6 +383,7 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm
@@ -219,7 +220,10 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm
}
Add exit menu item
+ Add always incognito item
}
// New Tab
- modelList.add(buildNewTabItem());
+ boolean always_incognito = AlwaysIncognitoLinkInterceptor.isAlwaysIncognito();
+ if (!always_incognito) {
+ modelList.add(buildNewTabItem());
+ }
private Runnable buildUpdateStateChangedObserver() {
// New Incognito Tab
modelList.add(buildNewIncognitoTabItem());
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java
@@ -16,16 +16,16 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../browser/LaunchIntentDispatcher.java | 21 ++++++++
.../CustomTabIntentDataProvider.java | 4 +-
.../customtabs/CustomTabsConnection.java | 1 +
.../IncognitoCustomTabIntentDataProvider.java | 14 ++++++
.../privacy/settings/PrivacySettings.java | 50 +++++++++++++++++++
.../IncognitoCustomTabIntentDataProvider.java | 14 +++++
.../privacy/settings/PrivacySettings.java | 51 +++++++++++++++++++
.../flags/android/chrome_feature_list.cc | 2 +-
.../browser/flags/ChromeFeatureList.java | 3 ++
.../chrome/browser/tab/TabAssociatedApp.java | 6 ++-
...Add-custom-tab-intents-privacy-option.grdp | 25 ++++++++++
...Add-custom-tab-intents-privacy-option.grdp | 25 +++++++++
.../OriginVerifier.java | 5 ++
.../core/common/language_experiments.cc | 1 +
.../add-custom-tab-intents-privacy-option.inc | 1 +
13 files changed, 145 insertions(+), 3 deletions(-)
13 files changed, 146 insertions(+), 3 deletions(-)
create mode 100644 chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Add-custom-tab-intents-privacy-option.grdp
create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/add-custom-tab-intents-privacy-option.inc
@@ -179,7 +179,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Inco
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
@@ -79,6 +79,15 @@ import org.chromium.ui.text.SpanApplier;
@@ -10,6 +10,7 @@ import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.graphics.drawable.Drawable;
+import android.os.Build;
import android.os.Bundle;
import android.text.SpannableString;
import android.text.style.ClickableSpan;
@@ -79,6 +80,15 @@ import org.chromium.ui.text.SpanApplier;
import java.util.concurrent.TimeUnit;
import java.util.function.Consumer;
@@ -195,7 +203,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
import androidx.preference.PreferenceCategory;
import org.chromium.chrome.browser.contextualsearch.ContextualSearchManager;
import org.chromium.base.shared_preferences.SharedPreferencesManager;
@@ -152,6 +161,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
@@ -152,6 +162,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
startTag, endTag, new ChromeClickableSpan(context, onClickCallback));
}
@@ -205,7 +213,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
@Override
public void onCreatePreferencesCromite(@Nullable Bundle savedInstanceState, @Nullable String rootKey) {
mPageTitle.set(getString(R.string.prefs_privacy_security));
@@ -384,6 +396,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
@@ -384,6 +397,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
new SpanApplier.SpanInfo("<link2>", "</link2>", servicesLink));
}
@@ -215,7 +223,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
String key = preference.getKey();
@@ -404,6 +419,31 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
@@ -404,6 +420,31 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
} else if (PREF_SEARCH_SUGGESTIONS.equals(key)) {
UserPrefs.get(getProfile())
.setBoolean(Pref.SEARCH_SUGGEST_ENABLED, (boolean) newValue);
@@ -247,7 +255,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
}
return true;
}
@@ -436,6 +476,16 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
@@ -436,6 +477,16 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
UserPrefs.get(getProfile()).getBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED));
}
+25 -8
View File
@@ -6,13 +6,25 @@ Corrected Exit functionality
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
.../org/chromium/chrome/browser/ChromeTabbedActivity.java | 4 ++++
.../src/org/chromium/chrome/browser/app/ChromeActivity.java | 6 ++++++
.../chrome/browser/init/ChromeLifetimeController.java | 2 ++
.../tabbed_mode/TabbedAppMenuPropertiesDelegate.java | 2 ++
.../browser/ui/android/strings/android_chrome_strings.grd | 3 +++
5 files changed, 17 insertions(+)
chrome/android/java/res/values/ids.xml | 1 +
.../org/chromium/chrome/browser/ChromeTabbedActivity.java | 4 ++++
.../org/chromium/chrome/browser/app/ChromeActivity.java | 6 ++++++
.../chrome/browser/init/ChromeLifetimeController.java | 2 ++
.../tabbed_mode/TabbedAppMenuPropertiesDelegate.java | 7 +++++++
.../browser/ui/android/strings/android_chrome_strings.grd | 3 +++
6 files changed, 23 insertions(+)
diff --git a/chrome/android/java/res/values/ids.xml b/chrome/android/java/res/values/ids.xml
--- a/chrome/android/java/res/values/ids.xml
+++ b/chrome/android/java/res/values/ids.xml
@@ -119,6 +119,7 @@ found in the LICENSE file.
<item type="id" name="ntp_feed_header_menu_item_toggle_switch" />
<!-- App Menu -->
+ <item type="id" name="exit_id" />
<item type="id" name="icon_row_menu_id" />
<item type="id" name="forward_menu_id" />
<item type="id" name="bookmark_this_page_id" />
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
@@ -79,12 +91,17 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeLife
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java
@@ -373,6 +373,8 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm
@@ -373,6 +373,13 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm
maybeAddDividerLine(modelList, R.id.menu_item_content_filter_divider_line_id);
modelList.add(buildContentFilterHelpCenterMenuItem(currentTab));
}
+
+ Add exit menu item
+ modelList.add(new MVCListAdapter.ListItem(
+ AppMenuHandler.AppMenuItemType.STANDARD,
+ buildModelForStandardMenuItem(
+ R.id.exit_id,
+ R.string.menu_exit,
+ shouldShowIconBeforeItem() ? R.drawable.ic_exit_to_app_white_24dp : 0)));
}
private Runnable buildUpdateStateChangedObserver() {
@@ -81,16 +81,16 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../permission_prompt_android.h | 3 +-
.../android/permissions_android_strings.grd | 17 ++++
.../geolocation_permission_context_android.cc | 30 +++++--
.../geolocation_permission_context_android.h | 11 ++-
.../geolocation_permission_context_android.h | 10 ++-
.../embedded_permission_prompt_flow_model.cc | 2 +-
.../permissions/permission_context_base.cc | 51 ++++++++++--
.../permissions/permission_context_base.h | 20 ++++-
.../permissions/permission_context_base.cc | 64 +++++++++++++--
.../permissions/permission_context_base.h | 26 +++++-
components/permissions/permission_prompt.h | 3 +-
components/permissions/permission_request.cc | 32 +++++++-
components/permissions/permission_request.cc | 34 +++++++-
components/permissions/permission_request.h | 18 +++-
.../permissions/permission_request_manager.cc | 45 ++++++----
.../permissions/permission_request_manager.h | 11 ++-
38 files changed, 486 insertions(+), 72 deletions(-)
38 files changed, 506 insertions(+), 72 deletions(-)
diff --git a/chrome/browser/permissions/last_tab_standing_tracker.cc b/chrome/browser/permissions/last_tab_standing_tracker.cc
--- a/chrome/browser/permissions/last_tab_standing_tracker.cc
@@ -847,7 +847,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
bool is_final_decision) {
DCHECK(is_final_decision);
+ NotifyPermissionSetWithLifetime(request_data,
+ std::move(callback), persist, content_setting, is_one_time, is_final_decision,
+ std::move(callback), persist, decision, is_final_decision,
+ content_settings::mojom::LifetimeMode::ALWAYS);
+}
@@ -855,8 +855,8 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
+ const PermissionRequestData& request_data,
+ BrowserPermissionCallback callback,
+ bool persist,
+ ContentSetting content_setting,
+ bool is_one_time, bool is_final_decision,
+ PermissionDecision decision,
+ bool is_final_decision,
+ content_settings::mojom::LifetimeMode lifetime_option) {
bool is_default_search =
IsRequestingOriginDSE(request_data.requesting_origin);
@@ -936,21 +936,20 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
diff --git a/components/permissions/contexts/geolocation_permission_context_android.h b/components/permissions/contexts/geolocation_permission_context_android.h
--- a/components/permissions/contexts/geolocation_permission_context_android.h
+++ b/components/permissions/contexts/geolocation_permission_context_android.h
@@ -92,6 +92,13 @@ class GeolocationPermissionContextAndroid
@@ -92,6 +92,12 @@ class GeolocationPermissionContextAndroid
bool persist,
PermissionDecision decision,
bool is_final_decision) override;
+ void NotifyPermissionSetWithLifetime(const PermissionRequestData& request_data,
+ BrowserPermissionCallback callback,
+ bool persist,
+ ContentSetting content_setting,
+ bool is_one_time,
+ PermissionDecision decision,
+ bool is_final_decision,
+ content_settings::mojom::LifetimeMode lifetime_option) override;
content::PermissionResult UpdatePermissionStatusWithDeviceStatus(
content::WebContents* web_contents,
content::PermissionResult result,
@@ -136,6 +143,7 @@ class GeolocationPermissionContextAndroid
@@ -136,6 +142,7 @@ class GeolocationPermissionContextAndroid
const GURL& embedding_origin,
bool persist,
PermissionDecision decision,
@@ -958,7 +957,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
LocationSettingsDialogOutcome prompt_outcome);
void FinishNotifyPermissionSet(const PermissionRequestID& id,
@@ -143,7 +151,8 @@ class GeolocationPermissionContextAndroid
@@ -143,7 +150,8 @@ class GeolocationPermissionContextAndroid
const GURL& embedding_origin,
BrowserPermissionCallback callback,
bool persist,
@@ -1028,13 +1027,12 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm
}
}
@@ -655,6 +668,20 @@ void PermissionContextBase::NotifyPermissionSet(
@@ -655,6 +668,30 @@ void PermissionContextBase::NotifyPermissionSet(
bool persist,
PermissionDecision decision,
bool is_final_decision) {
+ DCHECK(is_one_time == false);
+ NotifyPermissionSetWithLifetime(request_data, std::move(callback),
+ persist, content_setting, is_one_time, is_final_decision,
+ NotifyPermissionSetImpl(request_data, std::move(callback),
+ persist, decision, is_final_decision, /*use_lifetime_option*/ false,
+ content_settings::mojom::LifetimeMode::ALWAYS);
+}
+
@@ -1042,44 +1040,58 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm
+ const PermissionRequestData& request_data,
+ BrowserPermissionCallback callback,
+ bool persist,
+ ContentSetting content_setting,
+ bool is_one_time,
+ PermissionDecision decision,
+ bool is_final_decision,
+ content_settings::mojom::LifetimeMode lifetime_option) {
+ NotifyPermissionSetImpl(request_data, std::move(callback),
+ persist, decision, is_final_decision, /*use_lifetime_option*/ true,
+ lifetime_option);
+}
+
+void PermissionContextBase::NotifyPermissionSetImpl(
+ const PermissionRequestData& request_data,
+ BrowserPermissionCallback callback,
+ bool persist,
+ PermissionDecision decision,
+ bool is_final_decision, bool use_lifetime_option,
+ content_settings::mojom::LifetimeMode lifetime_option) {
DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
// Note that rfh may be null, see crbug.com/426909787.
@@ -670,8 +697,8 @@ void PermissionContextBase::NotifyPermissionSet(
@@ -670,8 +707,8 @@ void PermissionContextBase::NotifyPermissionSet(
if (persist) {
// Clone new value, because we need it again for the callback.
- UpdateSetting(request_data, std::move(new_value),
- decision == PermissionDecision::kAllowThisTime);
+ UpdateContentSetting(request_data, std::move(new_value),
+ decision == PermissionDecision::kAllowThisTime, lifetime_option);
+ UpdateSettingImpl(request_data, std::move(new_value),
+ decision == PermissionDecision::kAllowThisTime, use_lifetime_option, lifetime_option);
}
if (is_final_decision) {
@@ -708,6 +735,14 @@ void PermissionContextBase::UpdateSetting(
@@ -708,6 +745,17 @@ void PermissionContextBase::UpdateSetting(
const PermissionRequestData& request_data,
base::Value setting,
bool is_one_time) {
+ UpdateContentSetting(request_data, setting,
+ is_one_time, content_settings::mojom::LifetimeMode::ALWAYS);
+ UpdateSettingImpl(request_data, std::move(setting),
+ is_one_time,
+ /*use_lifetime_option*/ false,
+ content_settings::mojom::LifetimeMode::ALWAYS);
+}
+
+void PermissionContextBase::UpdateSetting(const PermissionRequestData& request_data,
+ base::Value setting,
+ bool is_one_time,
+ content_settings::mojom::LifetimeMode lifetime_option) {
+void PermissionContextBase::UpdateSettingImpl(const PermissionRequestData& request_data,
+ base::Value setting,
+ bool is_one_time,
+ bool use_lifetime_option,
+ content_settings::mojom::LifetimeMode lifetime_option) {
DCHECK_EQ(request_data.requesting_origin,
request_data.requesting_origin.DeprecatedGetOriginAsURL());
DCHECK_EQ(request_data.embedding_origin,
@@ -717,6 +752,8 @@ void PermissionContextBase::UpdateSetting(
@@ -717,6 +765,8 @@ void PermissionContextBase::UpdateSetting(
constraints.set_session_model(
is_one_time ? content_settings::mojom::SessionModel::ONE_TIME
: content_settings::mojom::SessionModel::DURABLE);
+ if (is_one_time)
+ if (use_lifetime_option)
+ constraints = content_settings::GetConstraintSessionExpiration(lifetime_option);
// The Permissions module in Safety check will revoke permissions after
@@ -1087,32 +1099,38 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm
diff --git a/components/permissions/permission_context_base.h b/components/permissions/permission_context_base.h
--- a/components/permissions/permission_context_base.h
+++ b/components/permissions/permission_context_base.h
@@ -192,6 +192,13 @@ class PermissionContextBase : public content_settings::Observer {
@@ -192,6 +192,18 @@ class PermissionContextBase : public content_settings::Observer {
// Updates stored setting if persist is set, updates tab indicators
// and runs the callback to finish the request.
+ void NotifyPermissionSetImpl(const PermissionRequestData& request_data,
+ BrowserPermissionCallback callback,
+ bool persist,
+ PermissionDecision decision,
+ bool is_final_decision, bool use_lifetime_option,
+ content_settings::mojom::LifetimeMode lifetime_option);
+ virtual void NotifyPermissionSetWithLifetime(const PermissionRequestData& request_data,
+ BrowserPermissionCallback callback,
+ bool persist,
+ ContentSetting content_setting,
+ bool is_one_time,
+ PermissionDecision decision,
+ bool is_final_decision,
+ content_settings::mojom::LifetimeMode lifetime_option);
virtual void NotifyPermissionSet(const PermissionRequestData& request_data,
BrowserPermissionCallback callback,
bool persist,
@@ -209,6 +216,10 @@ class PermissionContextBase : public content_settings::Observer {
@@ -209,6 +221,11 @@ class PermissionContextBase : public content_settings::Observer {
// Store the decided permission state. Virtual since the permission might be
// stored with different restrictions (for example for desktop notifications).
+ void UpdateSetting(const PermissionRequestData& request_data,
+ base::Value setting,
+ bool is_one_time,
+ content_settings::mojom::LifetimeMode lifetime_option);
+ void UpdateSettingImpl(const PermissionRequestData& request_data,
+ base::Value setting,
+ bool is_one_time,
+ bool use_lifetime_option,
+ content_settings::mojom::LifetimeMode lifetime_option);
virtual void UpdateSetting(const PermissionRequestData& request_data,
base::Value setting,
bool is_one_time);
@@ -238,6 +249,12 @@ class PermissionContextBase : public content_settings::Observer {
@@ -238,6 +255,12 @@ class PermissionContextBase : public content_settings::Observer {
PermissionRequest::PermissionDecidedCallback permission_decided_callback,
base::OnceClosure request_finished_callback) const;
@@ -1125,7 +1143,7 @@ diff --git a/components/permissions/permission_context_base.h b/components/permi
// Implementors can override this method to avoid using automatic embargo.
virtual bool UsesAutomaticEmbargo() const;
@@ -271,7 +288,8 @@ class PermissionContextBase : public content_settings::Observer {
@@ -271,7 +294,8 @@ class PermissionContextBase : public content_settings::Observer {
// allows/blocks/dismisses a permission prompt.
void PermissionDecided(PermissionDecision decision,
bool is_final_decision,
@@ -1169,7 +1187,7 @@ diff --git a/components/permissions/permission_request.cc b/components/permissio
PermissionRequest::~PermissionRequest() {
std::move(request_finished_callback_).Run();
}
@@ -419,20 +429,38 @@ bool PermissionRequest::ShouldUseTwoOriginPrompt() const {
@@ -419,20 +429,40 @@ bool PermissionRequest::ShouldUseTwoOriginPrompt() const {
return request_type() == RequestType::kStorageAccess;
}
@@ -1178,7 +1196,9 @@ diff --git a/components/permissions/permission_request.cc b/components/permissio
+ content_settings::mojom::LifetimeMode lifetime_option) {
+ if (permission_decided_callback_withlifetime_) {
+ std::move(permission_decided_callback_withlifetime_)
+ .Run(CONTENT_SETTING_ALLOW, is_one_time, /*is_final_decision=*/true, *data_, lifetime_option);
+ .Run(is_one_time ? PermissionDecision::kAllowThisTime
+ : PermissionDecision::kAllow,
+ /*is_final_decision=*/true, *data_, lifetime_option);
+ return;
+ }
std::move(permission_decided_callback_)
@@ -1192,7 +1212,7 @@ diff --git a/components/permissions/permission_request.cc b/components/permissio
+ content_settings::mojom::LifetimeMode lifetime_option) {
+ if (permission_decided_callback_withlifetime_) {
+ std::move(permission_decided_callback_withlifetime_)
+ .Run(CONTENT_SETTING_BLOCK, is_one_time, /*is_final_decision=*/true, *data_, lifetime_option);
+ .Run(PermissionDecision::kDeny, /*is_final_decision=*/true, *data_, lifetime_option);
+ return;
+ }
std::move(permission_decided_callback_)
@@ -1203,7 +1223,7 @@ diff --git a/components/permissions/permission_request.cc b/components/permissio
void PermissionRequest::Cancelled(bool is_final_decision) {
+ if (permission_decided_callback_withlifetime_) {
+ std::move(permission_decided_callback_withlifetime_)
+ .Run(CONTENT_SETTING_DEFAULT, false, is_final_decision, *data_,
+ .Run(PermissionDecision::kNone, is_final_decision, *data_,
+ content_settings::mojom::LifetimeMode::ALWAYS);
+ return;
+ }
@@ -1218,7 +1238,7 @@ diff --git a/components/permissions/permission_request.h b/components/permission
const PermissionRequestData& /*request_data*/)>;
+ using PermissionDecidedCallbackWithLifetime = base::RepeatingCallback<void(
+ ContentSetting /*result*/, bool /*is_one_time*/,
+ PermissionDecision /*decision*/,
+ bool /*is_final_decision*/,
+ const PermissionRequestData& /*request_data*/,
+ content_settings::mojom::LifetimeMode /*lifetime_option*/)>;
@@ -4,8 +4,9 @@ Subject: Add menu item to bookmark all tabs
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
chrome/android/java/res/values/ids.xml | 1 +
.../chrome/browser/ChromeTabbedActivity.java | 43 +++++++++++++++++++
.../TabbedAppMenuPropertiesDelegate.java | 1 +
.../TabbedAppMenuPropertiesDelegate.java | 15 +++++++
.../bookmarks/android/bookmark_bridge.cc | 42 ++++++++++++++++++
.../bookmarks/android/bookmark_bridge.h | 8 ++++
.../browser/bookmarks/BookmarkBridge.java | 41 ++++++++++++++++++
@@ -30,8 +31,19 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
components/bookmarks/browser/model_loader.cc | 9 +++-
...ookmark_model_merger_comparison_metrics.cc | 4 ++
.../bookmark_specifics_conversions.cc | 1 +
26 files changed, 244 insertions(+), 14 deletions(-)
27 files changed, 259 insertions(+), 14 deletions(-)
diff --git a/chrome/android/java/res/values/ids.xml b/chrome/android/java/res/values/ids.xml
--- a/chrome/android/java/res/values/ids.xml
+++ b/chrome/android/java/res/values/ids.xml
@@ -177,6 +177,7 @@ found in the LICENSE file.
<item type="id" name="menu_select_tabs" />
<item type="id" name="menu_item_content_filter_divider_line_id" />
<item type="id" name="menu_item_content_filter_help_center_id" />
+ <item type="id" name="bookmark_all_tabs_menu_id" />
<!-- Custom Tabs -->
<item type="id" name="view_id_tag_key" />
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
@@ -116,14 +128,35 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java
@@ -385,6 +385,7 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm
Add exit menu item
Add always incognito item
Add view source item
+ Add bookmark all item
}
@@ -264,6 +264,14 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm
// Bookmarks
modelList.add(buildBookmarksItem());
private Runnable buildUpdateStateChangedObserver() {
+ // Add bookmark all item
+ modelList.add(new MVCListAdapter.ListItem(
+ AppMenuHandler.AppMenuItemType.STANDARD,
+ buildModelForStandardMenuItem(
+ R.id.bookmark_all_tabs_menu_id,
+ R.string.menu_bookmark_all_tabs,
+ shouldShowIconBeforeItem() ? R.drawable.ic_folder_blue_24dp : 0)));
+
// Recent Tabs
if (shouldShowRecentTabsItem()) modelList.add(buildRecentTabsItem());
@@ -423,6 +431,13 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm
}
modelList.add(buildCloseAllTabsItem());
if (shouldShowTinkerTank()) modelList.add(buildTinkerTankItem());
+ // Add bookmark all item
+ modelList.add(new MVCListAdapter.ListItem(
+ AppMenuHandler.AppMenuItemType.STANDARD,
+ buildModelForStandardMenuItem(
+ R.id.bookmark_all_tabs_menu_id,
+ R.string.menu_bookmark_all_tabs,
+ shouldShowIconBeforeItem() ? R.drawable.ic_folder_blue_24dp : 0)));
modelList.add(buildSelectTabsItem());
if (shouldShowQuickDeleteItem()) modelList.add(buildQuickDeleteItem());
modelList.add(buildSettingsItem());
diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browser/bookmarks/android/bookmark_bridge.cc
--- a/chrome/browser/bookmarks/android/bookmark_bridge.cc
+++ b/chrome/browser/bookmarks/android/bookmark_bridge.cc
@@ -4,13 +4,26 @@ Subject: Add menu item to view source
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
.../chrome/browser/ChromeTabbedActivity.java | 2 ++
.../chrome/browser/app/ChromeActivity.java | 5 +++++
.../appmenu/AppMenuPropertiesDelegateImpl.java | 17 +++++++++++++++++
.../TabbedAppMenuPropertiesDelegate.java | 1 +
.../android/strings/android_chrome_strings.grd | 4 ++++
5 files changed, 29 insertions(+)
chrome/android/java/res/values/ids.xml | 1 +
.../chrome/browser/ChromeTabbedActivity.java | 2 ++
.../chrome/browser/app/ChromeActivity.java | 5 ++++
.../AppMenuPropertiesDelegateImpl.java | 24 +++++++++++++++++++
.../CustomTabAppMenuPropertiesDelegate.java | 3 +++
.../TabbedAppMenuPropertiesDelegate.java | 3 +++
.../strings/android_chrome_strings.grd | 4 ++++
7 files changed, 42 insertions(+)
diff --git a/chrome/android/java/res/values/ids.xml b/chrome/android/java/res/values/ids.xml
--- a/chrome/android/java/res/values/ids.xml
+++ b/chrome/android/java/res/values/ids.xml
@@ -129,6 +129,7 @@ found in the LICENSE file.
<item type="id" name="update_menu_id" />
<item type="id" name="new_tab_menu_id" />
<item type="id" name="new_incognito_tab_menu_id" />
+ <item type="id" name="view_source_id" />
<item type="id" name="add_to_group_menu_id" />
<item type="id" name="pin_tab_menu_id" />
<item type="id" name="new_window_menu_id" />
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
@@ -41,7 +54,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java
@@ -985,6 +985,23 @@ public abstract class AppMenuPropertiesDelegateImpl implements AppMenuProperties
@@ -985,6 +985,30 @@ public abstract class AppMenuPropertiesDelegateImpl implements AppMenuProperties
return false;
}
@@ -51,31 +64,53 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App
+ * @param menu {@link Menu} for view source.
+ * @param currentTab Current tab being displayed.
+ */
+ protected void updateViewSourceMenuItem(
+ Menu menu, Tab currentTab) {
+ MenuItem viewSourceMenuItem = menu.findItem(R.id.view_source_id);
+ protected void buildAddViewSourceItem(
+ MVCListAdapter.ModelList modelList,
+ @Nullable Tab currentTab) {
+ boolean visible = false;
+ if (currentTab != null) {
+ String url = currentTab.getUrl().getSpec();
+ visible = !url.isEmpty() && !url.startsWith("view-source:");
+ String url = currentTab.getUrl().getSpec();
+ visible = !url.isEmpty() && !url.startsWith("view-source:");
+ }
+ if (visible) {
+ modelList.add(new MVCListAdapter.ListItem(
+ AppMenuHandler.AppMenuItemType.STANDARD,
+ buildModelForStandardMenuItem(
+ R.id.view_source_id,
+ R.string.view_source,
+ shouldShowIconBeforeItem() ? R.drawable.ic_drive_document_24dp : 0)));
+ }
+ viewSourceMenuItem.setVisible(visible);
+ }
+
/**
* Updates the bookmark item's visibility.
*
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java
@@ -367,6 +367,9 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat
modelList.add(buildAddToHomescreenListItem(currentTab, false));
}
+ // Add view source item
+ buildAddViewSourceItem(modelList, currentTab);
+
// --- Request Desktop Site ---
if (requestDesktopSiteVisible) {
MVCListAdapter.ListItem rdsListItem =
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java
@@ -384,6 +384,7 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm
@@ -328,6 +328,9 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm
modelList.add(buildAddToHomescreenListItem(currentTab, shouldShowIconBeforeItem()));
}
Add exit menu item
Add always incognito item
+ Add view source item
}
private Runnable buildUpdateStateChangedObserver() {
+ // Add view source item
+ buildAddViewSourceItem(modelList, currentTab);
+
// RDS
MVCListAdapter.ListItem rdsListItem =
maybeBuildRequestDesktopSiteListItem(
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
@@ -105,7 +105,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
@@ -27,6 +27,7 @@ import org.chromium.base.ContextUtils;
@@ -28,6 +28,7 @@ import org.chromium.base.ContextUtils;
import org.chromium.base.IntentUtils;
import org.chromium.base.metrics.RecordHistogram;
import org.chromium.base.metrics.RecordUserAction;
@@ -113,7 +113,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
import org.chromium.base.supplier.ObservableSupplier;
import org.chromium.base.supplier.ObservableSupplierImpl;
import org.chromium.build.annotations.Nullable;
@@ -97,12 +98,26 @@ import org.chromium.chrome.browser.preferences.ChromeSharedPreferences;
@@ -98,12 +99,26 @@ import org.chromium.chrome.browser.preferences.ChromeSharedPreferences;
import org.chromium.components.browser_ui.settings.ChromeSwitchPreference;
import org.chromium.components.browser_ui.settings.ManagedPreferenceDelegate;
@@ -141,7 +141,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
private static final String PREF_CAN_MAKE_PAYMENT = "can_make_payment";
private static final String PREF_PRELOAD_PAGES = "preload_pages";
private static final String PREF_HTTPS_FIRST_MODE = "https_first_mode";
@@ -214,6 +229,21 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
@@ -215,6 +230,21 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
}
}
@@ -163,7 +163,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
Preference privacyGuidePreference = findPreference(PREF_PRIVACY_GUIDE);
// Record the launch of PG from the S&P link-row entry point
privacyGuidePreference.setOnPreferenceClickListener(
@@ -440,6 +470,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
@@ -441,6 +471,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
public static final String PREF_ALLOW_CUSTOM_TAB_INTENTS = "allow_custom_tab_intents";
public static final String PREF_OPEN_EXTERNAL_LINKS_INCOGNITO = "open_external_links_incognito";
@@ -171,7 +171,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
@@ -486,6 +517,13 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
@@ -487,6 +518,13 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
SharedPreferences.Editor sharedPreferencesEditor = ContextUtils.getAppSharedPreferences().edit();
sharedPreferencesEditor.putBoolean(PREF_OPEN_EXTERNAL_LINKS_INCOGNITO, (boolean)newValue);
sharedPreferencesEditor.apply();
@@ -185,7 +185,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
}
return true;
}
@@ -536,6 +574,10 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
@@ -537,6 +575,10 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
: R.string.text_off);
}
@@ -199,7 +199,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -6312,6 +6312,14 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>delete the Chrome d
@@ -6315,6 +6315,14 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>delete the Chrome d
Your <ph name="FQDN">%1$s<ex>www.amazon.com</ex></ph> timer ran out. It'll start again tomorrow.
</message>
+33 -14
View File
@@ -36,12 +36,13 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../safety_hub/SafetyHubFetchService.java | 5 -
.../strings/android_chrome_strings.grd | 23 +-
.../ui/lens/lens_overlay_query_controller.cc | 1 +
.../endpoint_fetcher/endpoint_fetcher.cc | 124 ++++++--
.../endpoint_fetcher/endpoint_fetcher.cc | 123 ++++++--
.../endpoint_fetcher/endpoint_fetcher.h | 25 ++
components/manta/base_provider.cc | 1 +
.../composebox/composebox_query_controller.cc | 2 +-
.../Bromite-auto-updater.inc | 3 +
.../Bromite-auto-updater.inc | 1 +
33 files changed, 1235 insertions(+), 92 deletions(-)
34 files changed, 1235 insertions(+), 93 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/browser/endpoint_fetcher/BUILD.gn
@@ -1767,7 +1768,15 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.cc b/components/endpoi
}
return HttpMethod::kUndefined;
}
@@ -150,9 +159,11 @@ EndpointFetcher::EndpointFetcher(
@@ -110,6 +119,7 @@ EndpointFetcher::EndpointFetcher(
RequestParams request_params)
: url_loader_factory_(url_loader_factory),
identity_manager_(identity_manager),
+ intercept_redirect_(false),
request_params_(std::move(request_params)) {
if (request_params_.auth_type() == OAUTH) {
DCHECK(identity_manager_)
@@ -150,9 +160,11 @@ EndpointFetcher::EndpointFetcher(
const std::vector<std::string>& headers,
const std::vector<std::string>& cors_exempt_headers,
version_info::Channel channel,
@@ -1779,7 +1788,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.cc b/components/endpoi
request_params_(EndpointFetcher::RequestParams::Builder(request_params)
.SetAuthType(CHROME_API_KEY)
.SetUrl(url)
@@ -171,6 +182,7 @@ EndpointFetcher::EndpointFetcher(
@@ -171,6 +183,7 @@ EndpointFetcher::EndpointFetcher(
const net::NetworkTrafficAnnotationTag& annotation_tag)
: url_loader_factory_(url_loader_factory),
identity_manager_(nullptr),
@@ -1787,7 +1796,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.cc b/components/endpoi
request_params_(EndpointFetcher::RequestParams::Builder(HttpMethod::kGet,
annotation_tag)
.SetAuthType(NO_AUTH)
@@ -193,6 +205,7 @@ EndpointFetcher::EndpointFetcher(
@@ -193,6 +206,7 @@ EndpointFetcher::EndpointFetcher(
signin::ConsentLevel consent_level)
: url_loader_factory_(url_loader_factory),
identity_manager_(identity_manager),
@@ -1795,7 +1804,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.cc b/components/endpoi
request_params_(
EndpointFetcher::RequestParams::Builder(GetHttpMethod(http_method),
annotation_tag)
@@ -212,6 +225,7 @@ EndpointFetcher::EndpointFetcher(
@@ -212,6 +226,7 @@ EndpointFetcher::EndpointFetcher(
EndpointFetcher::EndpointFetcher(
const net::NetworkTrafficAnnotationTag& annotation_tag)
: identity_manager_(nullptr),
@@ -1803,7 +1812,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.cc b/components/endpoi
request_params_(
EndpointFetcher::RequestParams::Builder(HttpMethod::kUndefined,
annotation_tag)
@@ -219,6 +233,27 @@ EndpointFetcher::EndpointFetcher(
@@ -219,6 +234,25 @@ EndpointFetcher::EndpointFetcher(
.SetSanitizeResponse(true)
.Build()) {}
@@ -1818,8 +1827,6 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.cc b/components/endpoi
+ : url_loader_factory_(url_loader_factory),
+ identity_manager_(nullptr),
+ intercept_redirect_(intercept_redirect),
+ consent_level_(std::nullopt),
+ sanitize_response_(false),
+ request_params_(
+ EndpointFetcher::RequestParams::Builder(GetHttpMethod(http_method),
+ annotation_tag)
@@ -1831,7 +1838,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.cc b/components/endpoi
EndpointFetcher::~EndpointFetcher() = default;
void EndpointFetcher::Fetch(EndpointFetcherCallback endpoint_fetcher_callback) {
@@ -301,13 +336,10 @@ void EndpointFetcher::PerformHttpRequest(
@@ -301,13 +335,10 @@ void EndpointFetcher::PerformHttpRequest(
auto resource_request = std::make_unique<network::ResourceRequest>();
resource_request->method = GetHttpMethodString(request_params_.http_method());
resource_request->url = request_params_.url();
@@ -1848,7 +1855,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.cc b/components/endpoi
// Add Content-Type header if post data is present.
if (request_params_.http_method() == HttpMethod::kPost &&
request_params_.post_data()) {
@@ -346,8 +378,23 @@ void EndpointFetcher::PerformHttpRequest(
@@ -346,8 +377,23 @@ void EndpointFetcher::PerformHttpRequest(
break;
}
@@ -1872,7 +1879,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.cc b/components/endpoi
if (request_params_.http_method() == HttpMethod::kPost &&
request_params_.post_data()) {
@@ -361,9 +408,18 @@ void EndpointFetcher::PerformHttpRequest(
@@ -361,9 +407,18 @@ void EndpointFetcher::PerformHttpRequest(
simple_url_loader_->SetRetryOptions(GetMaxRetries(),
network::SimpleURLLoader::RETRY_ON_5XX);
@@ -1894,7 +1901,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.cc b/components/endpoi
network::SimpleURLLoader::BodyAsStringCallbackDeprecated
body_as_string_callback = base::BindOnce(
&EndpointFetcher::OnResponseFetched, weak_ptr_factory_.GetWeakPtr(),
@@ -453,21 +509,6 @@ void EndpointFetcher::OnSanitizationResult(
@@ -453,21 +508,6 @@ void EndpointFetcher::OnSanitizationResult(
std::move(endpoint_fetcher_callback).Run(std::move(response));
}
@@ -1916,7 +1923,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.cc b/components/endpoi
int EndpointFetcher::GetMaxRetries() const {
if (!request_params_.max_retries.has_value()) {
return kNumRetries;
@@ -493,4 +534,39 @@ std::string EndpointFetcher::GetUrlForTesting() {
@@ -493,4 +533,39 @@ std::string EndpointFetcher::GetUrlForTesting() {
return request_params_.url().spec();
}
@@ -2056,6 +2063,18 @@ diff --git a/components/manta/base_provider.cc b/components/manta/base_provider.
EndpointFetcher::RequestParams::Builder(kHttpMethod, annotation_tag)
.Build());
}
diff --git a/components/omnibox/composebox/composebox_query_controller.cc b/components/omnibox/composebox/composebox_query_controller.cc
--- a/components/omnibox/composebox/composebox_query_controller.cc
+++ b/components/omnibox/composebox/composebox_query_controller.cc
@@ -312,7 +312,7 @@ ComposeboxQueryController::CreateEndpointFetcher(
/*post_data=*/std::move(request_string),
/*headers=*/request_headers,
/*cors_exempt_headers=*/cors_exempt_headers,
- /*channel=*/channel_,
+ /*channel=*/channel_, kTrafficAnnotationTag,
/*request_params=*/
EndpointFetcher::RequestParams::Builder(http_method,
kTrafficAnnotationTag)
diff --git a/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Bromite-auto-updater.inc b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Bromite-auto-updater.inc
new file mode 100644
--- /dev/null
@@ -21,7 +21,8 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../java/res/xml/adblock_preferences.xml | 25 ++
.../android/java/res/xml/main_preferences.xml | 5 +
.../browser/settings/AdBlockEditor.java | 91 ++++++
.../browser/settings/AdBlockPreferences.java | 58 ++++
.../browser/settings/AdBlockPreferences.java | 74 +++++
.../browser/settings/SettingsActivity.java | 3 +
chrome/app/generated_resources.grd | 10 +
chrome/browser/after_startup_task_utils.cc | 4 +
chrome/browser/browser_process.h | 6 +
@@ -50,7 +51,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../browser/subresource_filter_features.cc | 118 +-------
.../core/browser/verified_ruleset_dealer.cc | 4 +
.../core/common/indexed_ruleset.cc | 5 +-
38 files changed, 1268 insertions(+), 129 deletions(-)
39 files changed, 1287 insertions(+), 129 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
@@ -363,7 +364,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/AdBloc
new file mode 100644
--- /dev/null
+++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/AdBlockPreferences.java
@@ -0,0 +1,58 @@
@@ -0,0 +1,74 @@
+// Copyright 2015 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
@@ -373,30 +374,46 @@ new file mode 100644
+import android.os.Bundle;
+import androidx.preference.Preference;
+import androidx.preference.PreferenceFragmentCompat;
+import org.chromium.components.browser_ui.settings.ChromeSwitchPreference;
+
+import org.chromium.base.supplier.ObservableSupplier;
+import org.chromium.base.supplier.ObservableSupplierImpl;
+import org.chromium.base.supplier.Supplier;
+
+import org.chromium.content_public.browser.BrowserContextHandle;
+import org.chromium.components.browser_ui.settings.ChromeSwitchPreference;
+import org.chromium.components.browser_ui.site_settings.BaseSiteSettingsFragment;
+import org.chromium.components.browser_ui.site_settings.WebsitePreferenceBridge;
+import org.chromium.components.content_settings.ContentSettingsType;
+import org.chromium.components.browser_ui.settings.SettingsUtils;
+import org.chromium.chrome.browser.flags.AdBlockNativeGateway;
+import androidx.annotation.VisibleForTesting;
+import org.chromium.components.browser_ui.settings.SettingsFragment;
+
+import org.chromium.chrome.R;
+import org.chromium.chrome.browser.flags.AdBlockNativeGateway;
+import org.chromium.chrome.browser.settings.ChromeBaseSettingsFragment;
+
+/**
+ * Fragment that allows the user to configure AdBlock related preferences.
+ */
+public class AdBlockPreferences extends BaseSiteSettingsFragment {
+ @VisibleForTesting
+public class AdBlockPreferences extends ChromeBaseSettingsFragment {
+ public static final String PREF_ADBLOCK_SWITCH = "adblock_switch";
+ private static final String PREF_ADBLOCK_EDIT = "adblock_edit";
+
+ private Preference mAdBlockEdit;
+ private final ObservableSupplierImpl<String> mPageTitle = new ObservableSupplierImpl<>();
+
+ @Override
+ public ObservableSupplier<String> getPageTitle() {
+ return mPageTitle;
+ }
+
+ @Override
+ public @SettingsFragment.AnimationType int getAnimationType() {
+ return SettingsFragment.AnimationType.PROPERTY;
+ }
+
+ @Override
+ public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
+ getActivity().setTitle(R.string.options_adblock_title);
+ mPageTitle.set(getString(R.string.options_adblock_title));
+ SettingsUtils.addPreferencesFromResource(this, R.xml.adblock_preferences);
+
+ ChromeSwitchPreference mAdBlockSwitch =
@@ -422,6 +439,26 @@ new file mode 100644
+ updateCurrentAdBlockUrl();
+ }
+}
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java
@@ -72,6 +72,8 @@ import org.chromium.ui.modaldialog.ModalDialogManager.ModalDialogType;
import java.lang.ref.WeakReference;
import java.util.Locale;
+import org.chromium.chrome.browser.settings.AdBlockEditor;
+
/**
* The Chrome settings activity.
*
@@ -683,6 +685,7 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity
if (!MAIN_FRAGMENT_TAG.equals(fragment.getTag())) {
return;
}
+ if (fragment instanceof AdBlockEditor) return;
String className = fragment.getClass().getSimpleName();
RecordHistogram.recordSparseHistogram(
diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources.grd
--- a/chrome/app/generated_resources.grd
+++ b/chrome/app/generated_resources.grd
@@ -146,9 +146,9 @@ diff --git a/chrome/browser/extensions/api/developer_private/developer_private_f
Profile* profile = Profile::FromBrowserContext(browser_context());
CHECK(profile);
if (supervised_user::AreExtensionsPermissionsEnabled(profile)) {
@@ -793,6 +794,11 @@ DeveloperPrivateNotifyDragInstallInProgressFunction::Run() {
@@ -502,6 +503,11 @@ DeveloperPrivateUpdateProfileConfigurationFunction::Run() {
->MarkNoticeAsAcknowledgedGlobally();
}
#endif // !BUILDFLAG(IS_ANDROID)
+ if (update.is_extension_autoupdate_enabled.has_value()) {
+ DeveloperPrivateAPI::SetExtensionAutoupdateEnabled(
@@ -1201,7 +1201,7 @@ diff --git a/extensions/browser/updater/safe_manifest_parser.cc b/extensions/bro
diff --git a/extensions/common/extension_features.cc b/extensions/common/extension_features.cc
--- a/extensions/common/extension_features.cc
+++ b/extensions/common/extension_features.cc
@@ -255,4 +255,18 @@ BASE_FEATURE(kAvoidCloneArgsOnExtensionFunctionDispatch,
@@ -256,4 +256,18 @@ BASE_FEATURE(kAvoidCloneArgsOnExtensionFunctionDispatch,
"AvoidCloneArgsOnExtensionFunctionDispatch",
base::FEATURE_DISABLED_BY_DEFAULT);
@@ -9,12 +9,12 @@ No change in doh connections.
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
.../browser/network_session_configurator.cc | 11 ++++-------
.../browser/network_session_configurator.cc | 12 ++++--------
.../about_flags_cc/Close-Sessions-On-Ip-Change.inc | 14 ++++++++++++++
.../features_cc/Close-Sessions-On-Ip-Change.inc | 5 +++++
.../features_h/Close-Sessions-On-Ip-Change.inc | 3 +++
net/base/features.cc | 2 +-
5 files changed, 27 insertions(+), 8 deletions(-)
5 files changed, 27 insertions(+), 9 deletions(-)
create mode 100644 cromite_flags/chrome/browser/about_flags_cc/Close-Sessions-On-Ip-Change.inc
create mode 100644 cromite_flags/net/base/features_cc/Close-Sessions-On-Ip-Change.inc
create mode 100644 cromite_flags/net/base/features_h/Close-Sessions-On-Ip-Change.inc
@@ -34,7 +34,7 @@ diff --git a/components/network_session_configurator/browser/network_session_con
}
bool ShouldQuicGoAwaySessionsOnIpChange(
@@ -304,10 +303,8 @@ bool ShouldQuicEstimateInitialRtt(
@@ -304,11 +303,8 @@ bool ShouldQuicEstimateInitialRtt(
bool ShouldQuicMigrateSessionsOnNetworkChangeV2(
const VariationParameters& quic_trial_params) {
@@ -42,11 +42,12 @@ diff --git a/components/network_session_configurator/browser/network_session_con
- quic_trial_params, "migrate_sessions_on_network_change_v2",
- base::FeatureList::IsEnabled(
- net::features::kMigrateSessionsOnNetworkChangeV2),
- "true");
+ return base::FeatureList::IsEnabled(
+ net::features::kMigrateSessionsOnNetworkChangeV2,
"true");
+ net::features::kMigrateSessionsOnNetworkChangeV2);
}
bool ShouldQuicUseNewAlpsCodepoint(
diff --git a/cromite_flags/chrome/browser/about_flags_cc/Close-Sessions-On-Ip-Change.inc b/cromite_flags/chrome/browser/about_flags_cc/Close-Sessions-On-Ip-Change.inc
new file mode 100644
--- /dev/null
@@ -13,6 +13,7 @@ Require: bromite-build-utils.patch
---
.../ChromeSiteSettingsDelegate.java | 17 +-
...page_specific_content_settings_delegate.cc | 2 +-
chrome/browser/resources/settings/BUILD.gn | 2 +-
.../settings/privacy_page/privacy_page.html | 1 +
.../settings/privacy_page/privacy_page.ts | 77 +++-
chrome/browser/resources/settings/route.ts | 2 +
@@ -22,7 +23,7 @@ Require: bromite-build-utils.patch
.../settings/site_settings/site_details.ts | 33 +-
.../site_details_permission.html | 8 +-
.../site_settings/site_details_permission.ts | 44 ++
.../site_settings/site_settings_mixin.ts | 18 +
.../site_settings/site_settings_mixin.ts | 20 +-
.../site_settings/site_settings_util.ts | 55 +++
.../site_settings_page/site_settings_page.ts | 30 +-
chrome/browser/ui/BUILD.gn | 2 +
@@ -84,7 +85,7 @@ Require: bromite-build-utils.patch
.../platform/web_content_settings_client.h | 13 +
.../execution_context/execution_context.cc | 16 +
.../execution_context/execution_context.h | 5 +
73 files changed, 1963 insertions(+), 110 deletions(-)
74 files changed, 1965 insertions(+), 112 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
@@ -148,6 +149,25 @@ diff --git a/chrome/browser/content_settings/page_specific_content_settings_dele
rules->mixed_content_rules.push_back(ContentSettingPatternSource(
ContentSettingsPattern::Wildcard(), ContentSettingsPattern::Wildcard(),
content_settings::ContentSettingToValue(CONTENT_SETTING_BLOCK),
diff --git a/chrome/browser/resources/settings/BUILD.gn b/chrome/browser/resources/settings/BUILD.gn
--- a/chrome/browser/resources/settings/BUILD.gn
+++ b/chrome/browser/resources/settings/BUILD.gn
@@ -295,6 +295,7 @@ build_webui("build") {
"privacy_sandbox/privacy_sandbox_browser_proxy.ts",
"relaunch_mixin.ts",
"reset_page/reset_browser_proxy.ts",
+ "site_settings/site_settings_util.ts",
"route.ts",
"router.ts",
"safety_hub/safety_hub_browser_proxy.ts",
@@ -306,7 +307,6 @@ build_webui("build") {
"site_settings/constants.ts",
"site_settings/site_settings_mixin.ts",
"site_settings/site_settings_prefs_browser_proxy.ts",
- "site_settings/site_settings_util.ts",
"site_settings/website_usage_browser_proxy.ts",
"time.ts",
"tooltip_mixin.ts",
diff --git a/chrome/browser/resources/settings/privacy_page/privacy_page.html b/chrome/browser/resources/settings/privacy_page/privacy_page.html
--- a/chrome/browser/resources/settings/privacy_page/privacy_page.html
+++ b/chrome/browser/resources/settings/privacy_page/privacy_page.html
@@ -261,7 +281,7 @@ diff --git a/chrome/browser/resources/settings/route.ts b/chrome/browser/resourc
import {pageVisibility} from './page_visibility.js';
import type {SettingsRoutes} from './router.js';
import {Route, Router} from './router.js';
+import {setupContentSettingsRoutes} from './site_settings_page/site_settings_page_util.js'
+import {setupContentSettingsRoutes} from './site_settings/site_settings_util.js'
/**
* Add all of the child routes that originate from the privacy route,
@@ -540,8 +560,12 @@ diff --git a/chrome/browser/resources/settings/site_settings/site_details_permis
diff --git a/chrome/browser/resources/settings/site_settings/site_settings_mixin.ts b/chrome/browser/resources/settings/site_settings/site_settings_mixin.ts
--- a/chrome/browser/resources/settings/site_settings/site_settings_mixin.ts
+++ b/chrome/browser/resources/settings/site_settings/site_settings_mixin.ts
@@ -14,6 +14,7 @@ import type {ContentSettingsTypes} from './constants.js';
import {SiteSettingSource} from './constants.js';
@@ -11,9 +11,10 @@ import type { PolymerElement} from 'chrome://resources/polymer/v3_0/polymer/poly
import {dedupingMixin} from 'chrome://resources/polymer/v3_0/polymer/polymer_bundled.min.js';
import type {ContentSettingsTypes} from './constants.js';
-import {SiteSettingSource} from './constants.js';
+import {SiteSettingSource, ContentSetting} from './constants.js';
import type {RawSiteException,SiteException,SiteSettingsPrefsBrowserProxy} from './site_settings_prefs_browser_proxy.js';
import {SiteSettingsPrefsBrowserProxyImpl} from './site_settings_prefs_browser_proxy.js';
+import {loadTimeData} from '../i18n_setup.js';
@@ -247,7 +247,7 @@ new file mode 100644
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
@@ -192,7 +192,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
@@ -193,7 +193,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
public void onCreatePreferencesCromite(@Nullable Bundle savedInstanceState, @Nullable String rootKey) {
mPageTitle.set(getString(R.string.prefs_privacy_security));
@@ -256,7 +256,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
Preference incognitoTrackingProtectionsPreference =
findPreference(PREF_INCOGNITO_TRACKING_PROTECTIONS);
@@ -288,7 +288,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
@@ -289,7 +289,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
ChromeSwitchPreference passwordLeakTogglePref =
(ChromeSwitchPreference) findPreference(PREF_PASSWORD_LEAK_DETECTION);
+84 -20
View File
@@ -21,7 +21,8 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../search_prefetch_url_loader_interceptor.cc | 1 +
.../chrome_browser_main_extra_parts_profiles.cc | 1 -
chrome/browser/safe_browsing/BUILD.gn | 1 -
...fication_content_detection_service_factory.cc | 5 +++++
...fication_content_detection_service_factory.cc | 6 ++++++
.../ui/autofill/chrome_autofill_client.cc | 15 ---------------
chrome/browser/ui/tab_helpers.cc | 1 -
.../read_anything/read_aloud_app_model.cc | 16 ++++++++++++++--
.../read_anything/read_aloud_app_model.h | 9 ++++++++-
@@ -37,12 +38,11 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../delivery/prediction_model_fetcher_impl.cc | 1 +
.../core/hints/hints_fetcher.cc | 1 +
.../core/hints/hints_manager.cc | 1 +
.../core/optimization_guide_features.cc | 15 +++++++++------
.../core/optimization_guide_features.cc | 14 ++++++++------
components/optimization_guide/features.gni | 3 +--
.../core/page_content_annotations_features.cc | 4 ++++
.../page_content_annotations_model_manager.cc | 1 +
.../notification_content_detection/BUILD.gn | 7 +++++++
components/safe_browsing/core/common/features.cc | 2 ++
.../service_worker_main_resource_loader.cc | 1 +
.../Disable-all-predictors-code.inc | 2 ++
.../Disable-all-predictors-code.inc | 1 +
@@ -51,11 +51,13 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../features_cc/Disable-all-predictors-code.inc | 1 +
.../features_cc/Disable-all-predictors-code.inc | 1 +
.../features_cc/Disable-all-predictors-code.inc | 2 ++
services/webnn/BUILD.gn | 2 +-
services/webnn/features.gni | 2 +-
services/webnn/webnn_context_provider_impl.cc | 11 -----------
.../core/html/parser/html_document_parser.cc | 1 +
.../document_speculation_rules.cc | 1 +
.../platform/runtime_enabled_features.json5 | 2 +-
50 files changed, 121 insertions(+), 49 deletions(-)
52 files changed, 120 insertions(+), 76 deletions(-)
create mode 100644 cromite_flags/chrome/browser/browser_features_cc/Disable-all-predictors-code.inc
create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Disable-all-predictors-code.inc
create mode 100644 cromite_flags/chrome/common/chrome_features_cc/Disable-all-predictors-code.inc
@@ -329,7 +331,15 @@ diff --git a/chrome/browser/safe_browsing/notification_content_detection/notific
#include "content/public/browser/browser_context.h"
namespace safe_browsing {
@@ -81,6 +82,7 @@ NotificationContentDetectionServiceFactory::
@@ -50,6 +51,7 @@ NotificationContentDetectionServiceFactory::
std::unique_ptr<KeyedService> NotificationContentDetectionServiceFactory::
BuildServiceInstanceForBrowserContext(
content::BrowserContext* context) const {
+ if ((true)) return nullptr;
auto* opt_guide = OptimizationGuideKeyedServiceFactory::GetForProfile(
Profile::FromBrowserContext(context));
if (!opt_guide) {
@@ -81,6 +83,7 @@ NotificationContentDetectionServiceFactory::
content::BrowserContext* context) const {
CHECK(opt_guide);
CHECK(context);
@@ -337,7 +347,7 @@ diff --git a/chrome/browser/safe_browsing/notification_content_detection/notific
auto database_manager =
g_browser_process->safe_browsing_service()->database_manager();
scoped_refptr<base::SequencedTaskRunner> background_task_runner =
@@ -88,6 +90,9 @@ NotificationContentDetectionServiceFactory::
@@ -88,6 +91,9 @@ NotificationContentDetectionServiceFactory::
{base::MayBlock(), base::TaskPriority::BEST_EFFORT});
return std::make_unique<NotificationContentDetectionService>(
opt_guide, background_task_runner, database_manager, context);
@@ -347,6 +357,40 @@ diff --git a/chrome/browser/safe_browsing/notification_content_detection/notific
}
} // namespace safe_browsing
diff --git a/chrome/browser/ui/autofill/chrome_autofill_client.cc b/chrome/browser/ui/autofill/chrome_autofill_client.cc
--- a/chrome/browser/ui/autofill/chrome_autofill_client.cc
+++ b/chrome/browser/ui/autofill/chrome_autofill_client.cc
@@ -504,11 +504,7 @@ void ChromeAutofillClient::GetAiPageContent(GetAiPageContentCallback callback) {
}
AutofillAiManager* ChromeAutofillClient::GetAutofillAiManager() {
-#if !BUILDFLAG(IS_ANDROID)
- return &autofill_ai_manager_;
-#else
return nullptr;
-#endif
}
AutofillAiModelCache* ChromeAutofillClient::GetAutofillAiModelCache() {
@@ -1179,18 +1175,7 @@ void ChromeAutofillClient::TriggerPlusAddressUserPerceptionSurvey(
optimization_guide::ModelQualityLogsUploaderService*
ChromeAutofillClient::GetMqlsUploadService() {
-#if !BUILDFLAG(IS_ANDROID)
- Profile* profile =
- Profile::FromBrowserContext(web_contents()->GetBrowserContext());
- OptimizationGuideKeyedService* optimization_guide_keyed_service =
- OptimizationGuideKeyedServiceFactory::GetForProfile(profile);
- if (!optimization_guide_keyed_service) {
- return nullptr;
- }
- return optimization_guide_keyed_service->GetModelQualityLogsUploaderService();
-#else
return nullptr;
-#endif
}
void ChromeAutofillClient::ShowEntitySaveOrUpdateBubble(
diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc
--- a/chrome/browser/ui/tab_helpers.cc
+++ b/chrome/browser/ui/tab_helpers.cc
@@ -785,13 +829,12 @@ diff --git a/components/optimization_guide/core/optimization_guide_features.cc b
}
RequestContextSet GetAllowedContextsForPersonalizedMetadata() {
@@ -926,5 +921,13 @@ bool IsPrivacyGuideAiSettingsEnabled() {
@@ -926,5 +921,12 @@ bool IsPrivacyGuideAiSettingsEnabled() {
return base::FeatureList::IsEnabled(kPrivacyGuideAiSettings);
}
+SET_CROMITE_FEATURE_DISABLED(kOptimizationHints);
+SET_CROMITE_FEATURE_DISABLED(kRemoteOptimizationGuideFetching);
+SET_CROMITE_FEATURE_DISABLED(kRemoteOptimizationGuideFetchingAnonymousDataConsent);
+SET_CROMITE_FEATURE_DISABLED(kOptimizationTargetPrediction);
+SET_CROMITE_FEATURE_DISABLED(kOptimizationGuideModelDownloading);
+SET_CROMITE_FEATURE_DISABLED(kPushNotifications);
@@ -852,18 +895,6 @@ diff --git a/components/safe_browsing/content/browser/notification_content_detec
source_set("test_utils") {
testonly = true
sources = [
diff --git a/components/safe_browsing/core/common/features.cc b/components/safe_browsing/core/common/features.cc
--- a/components/safe_browsing/core/common/features.cc
+++ b/components/safe_browsing/core/common/features.cc
@@ -255,6 +255,8 @@ constexpr base::FeatureParam<std::string>
/*default_value=*/""};
#endif
+SET_CROMITE_FEATURE_DISABLED(kOnDeviceNotificationContentDetectionModel);
+
BASE_FEATURE(kNotificationTelemetry,
"NotificationTelemetry",
base::FEATURE_DISABLED_BY_DEFAULT);
diff --git a/content/browser/service_worker/service_worker_main_resource_loader.cc b/content/browser/service_worker/service_worker_main_resource_loader.cc
--- a/content/browser/service_worker/service_worker_main_resource_loader.cc
+++ b/content/browser/service_worker/service_worker_main_resource_loader.cc
@@ -921,6 +952,18 @@ new file mode 100644
@@ -0,0 +1,2 @@
+SET_CROMITE_FEATURE_DISABLED(kNavigationPredictor);
+SET_CROMITE_FEATURE_DISABLED(kPreloadingHeuristicsMLModel);
diff --git a/services/webnn/BUILD.gn b/services/webnn/BUILD.gn
--- a/services/webnn/BUILD.gn
+++ b/services/webnn/BUILD.gn
@@ -167,7 +167,7 @@ component("webnn_service") {
}
}
- if (is_win) {
+ if (is_win && webnn_use_tflite) {
sources += [
"ort/buffer_content_ort.cc",
"ort/buffer_content_ort.h",
diff --git a/services/webnn/features.gni b/services/webnn/features.gni
--- a/services/webnn/features.gni
+++ b/services/webnn/features.gni
@@ -933,6 +976,27 @@ diff --git a/services/webnn/features.gni b/services/webnn/features.gni
# Enable the GPU delegate provided by the Optimization Guide library.
webnn_use_chrome_ml_api = enable_ml_internal
diff --git a/services/webnn/webnn_context_provider_impl.cc b/services/webnn/webnn_context_provider_impl.cc
--- a/services/webnn/webnn_context_provider_impl.cc
+++ b/services/webnn/webnn_context_provider_impl.cc
@@ -211,17 +211,6 @@ void WebNNContextProviderImpl::CreateWebNNContext(
base::expected<std::unique_ptr<WebNNContextImpl>, mojom::ErrorPtr>
context_creation_results;
- if (base::FeatureList::IsEnabled(mojom::features::kWebNNOnnxRuntime)) {
- context_creation_results = ort::CreateContextFromOptions(
- std::move(options), std::move(receiver), this);
- if (!context_creation_results.has_value()) {
- std::move(callback).Run(mojom::CreateContextResult::NewError(
- std::move(context_creation_results.error())));
- return;
- }
- context_impl = std::move(context_creation_results.value());
- }
-
if (!context_impl && dml::ShouldCreateDmlContext(*options)) {
context_creation_results = dml::CreateContextFromOptions(
std::move(options), gpu_feature_info_, gpu_info_,
diff --git a/third_party/blink/renderer/core/html/parser/html_document_parser.cc b/third_party/blink/renderer/core/html/parser/html_document_parser.cc
--- a/third_party/blink/renderer/core/html/parser/html_document_parser.cc
+++ b/third_party/blink/renderer/core/html/parser/html_document_parser.cc
@@ -22,7 +22,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../firstrun/VariationsSeedFetcher.java | 36 +++----------------
components/variations/net/BUILD.gn | 2 --
.../variations/net/variations_http_headers.cc | 2 ++
.../variations_field_trial_creator_base.cc | 6 ++--
.../variations_field_trial_creator_base.cc | 8 +++--
.../variations/service/variations_service.cc | 19 ++--------
.../browser/loader/url_loader_throttles.cc | 7 ----
.../origin_trials/origin_trials_utils.cc | 2 +-
@@ -32,7 +32,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../Disable-fetching-of-all-field-trials.inc | 1 +
.../renderer/core/loader/document_loader.cc | 7 ----
.../platform/loader/fetch/resource_request.h | 1 -
25 files changed, 31 insertions(+), 91 deletions(-)
25 files changed, 33 insertions(+), 91 deletions(-)
create mode 100644 cromite_flags/net/base/features_cc/Disable-fetching-of-all-field-trials.inc
create mode 100644 cromite_flags/services/network/public/cpp/features_cc/Disable-fetching-of-all-field-trials.inc
@@ -302,15 +302,17 @@ diff --git a/components/variations/service/variations_field_trial_creator_base.c
platform_field_trials->RegisterFeatureOverrides(feature_list.get());
base::FeatureList::SetInstance(std::move(feature_list));
@@ -618,6 +616,7 @@ CreateTrialsResult VariationsFieldTrialCreatorBase::CreateTrialsFromSeed(
@@ -618,6 +616,9 @@ CreateTrialsResult VariationsFieldTrialCreatorBase::CreateTrialsFromSeed(
base::FeatureList* feature_list,
SafeSeedManagerBase* safe_seed_manager,
std::unique_ptr<ClientFilterableState> client_state) {
+ if ((true)) return false;
+ if ((true)) {
+ return CreateTrialsResult{.applied_seed = false};
+ }
// This histogram name uses "VariationsFieldTrialCreator" rather than
// "VariationsFieldTrialCreatorBase" for consistency with historical data
TRACE_EVENT0("startup", "VariationsFieldTrialCreator::CreateTrialsFromSeed");
@@ -731,6 +730,7 @@ CreateTrialsResult VariationsFieldTrialCreatorBase::CreateTrialsFromSeed(
@@ -731,6 +732,7 @@ CreateTrialsResult VariationsFieldTrialCreatorBase::CreateTrialsFromSeed(
void VariationsFieldTrialCreatorBase::LoadSeedFromJsonFile(
const base::FilePath& json_seed_path) {
@@ -11,7 +11,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/components/endpoint_fetcher/endpoint_fetcher.cc b/components/endpoint_fetcher/endpoint_fetcher.cc
--- a/components/endpoint_fetcher/endpoint_fetcher.cc
+++ b/components/endpoint_fetcher/endpoint_fetcher.cc
@@ -486,7 +486,7 @@ void EndpointFetcher::OnResponseFetched(
@@ -485,7 +485,7 @@ void EndpointFetcher::OnResponseFetched(
}
} else {
std::string net_error = net::ErrorToString(net_error_code);
@@ -10,13 +10,13 @@ the ChromeSmartSelection feature flag.
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
.../browser/contextualsearch/SelectionClientManager.java | 2 ++
chrome/browser/flags/android/chrome_feature_list.cc | 1 +
.../org/chromium/chrome/browser/flags/ChromeFeatureList.java | 1 +
.../browser/selection/SelectionPopupControllerImpl.java | 1 -
.../disable-smart-selection-by-default.inc | 3 +++
.../disable-smart-selection-by-default.inc | 1 +
6 files changed, 8 insertions(+), 1 deletion(-)
.../browser/contextualsearch/SelectionClientManager.java | 5 +++++
chrome/browser/flags/android/chrome_feature_list.cc | 1 +
.../org/chromium/chrome/browser/flags/ChromeFeatureList.java | 1 +
.../browser/selection/SelectionPopupControllerImpl.java | 1 -
.../disable-smart-selection-by-default.inc | 3 +++
.../disable-smart-selection-by-default.inc | 1 +
6 files changed, 11 insertions(+), 1 deletion(-)
create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/disable-smart-selection-by-default.inc
create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_h/disable-smart-selection-by-default.inc
@@ -31,11 +31,14 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextualsearc
import org.chromium.content_public.browser.SelectAroundCaretResult;
import org.chromium.content_public.browser.SelectionClient;
import org.chromium.content_public.browser.SelectionEventProcessor;
@@ -51,6 +52,7 @@ public class SelectionClientManager {
@@ -51,6 +52,10 @@ public class SelectionClientManager {
*/
SelectionClientManager(WebContents webContents) {
assert webContents != null;
+ if (!ChromeFeatureList.isEnabled(ChromeFeatureList.CHROME_SMART_SELECTION)) return;
+ if (!ChromeFeatureList.isEnabled(ChromeFeatureList.CHROME_SMART_SELECTION)) {
+ mIsSmartSelectionEnabledInChrome = false;
+ return;
+ }
mOptionalSelectionClient = SelectionClient.createSmartSelectionClient(webContents);
SelectionPopupController controller = SelectionPopupController.fromWebContents(webContents);
controller.setSelectionClient(mOptionalSelectionClient);
@@ -178,7 +178,7 @@ new file mode 100644
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
@@ -125,6 +125,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
@@ -126,6 +126,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
private static final String PREF_HTTPS_FIRST_MODE_LEGACY = "https_first_mode_legacy";
private static final String PREF_SECURE_DNS = "secure_dns";
private static final String PREF_USAGE_STATS = "usage_stats_reporting";
@@ -186,7 +186,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
private static final String PREF_SAFE_BROWSING = "safe_browsing";
private static final String PREF_PASSWORD_LEAK_DETECTION = "password_leak_detection";
private static final String PREF_SYNC_AND_SERVICES_LINK = "sync_and_services_link";
@@ -574,6 +575,14 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
@@ -575,6 +576,14 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
: R.string.text_off);
}
+11 -3
View File
@@ -29,8 +29,8 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
components/update_client/request_sender.cc | 3 +-
components/update_client/update_checker.cc | 6 ++-
components/update_client/update_engine.cc | 9 ++++
components/update_client/utils.cc | 3 ++
22 files changed, 134 insertions(+), 49 deletions(-)
components/update_client/utils.cc | 4 ++
22 files changed, 135 insertions(+), 49 deletions(-)
diff --git a/android_webview/browser/aw_browser_main_parts.cc b/android_webview/browser/aw_browser_main_parts.cc
--- a/android_webview/browser/aw_browser_main_parts.cc
@@ -681,7 +681,15 @@ diff --git a/components/update_client/update_engine.cc b/components/update_clien
diff --git a/components/update_client/utils.cc b/components/update_client/utils.cc
--- a/components/update_client/utils.cc
+++ b/components/update_client/utils.cc
@@ -118,6 +118,9 @@ bool VerifyFileHash256(const base::FilePath& filepath,
@@ -28,6 +28,7 @@
#include "base/files/file_util.h"
#include "base/files/memory_mapped_file.h"
#include "base/functional/callback.h"
+#include "base/logging.h"
#include "base/json/json_file_value_serializer.h"
#include "base/path_service.h"
#include "base/strings/string_number_conversions.h"
@@ -118,6 +119,9 @@ bool VerifyFileHash256(const base::FilePath& filepath,
std::array<uint8_t, crypto::kSHA256Length> sha256_hash;
hasher->Finish(sha256_hash);
@@ -15,17 +15,18 @@ See also: https://github.com/bromite/bromite/issues/547
Original License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
.../settings/PasswordSettings.java | 83 ++++++++++-
.../settings/PasswordSettings.java | 83 +++++++++++-
.../chrome/browser/settings/MainSettings.java | 2 +-
.../chromium/chrome/browser/tab/TabImpl.java | 41 +++++-
chrome/browser/about_flags.cc | 31 -----
chrome/browser/android/tab_android.cc | 3 +-
chrome/browser/autofill/android/BUILD.gn | 2 +-
.../autofill/AutofillClientProviderUtils.java | 2 +-
...AutofillThirdPartyModeContentProvider.java | 1 +
chrome/browser/flag_descriptions.cc | 6 -
chrome/browser/flag_descriptions.h | 3 -
.../strings/android_chrome_strings.grd | 6 +
.../ui/autofill/autofill_client_provider.cc | 131 +-----------------
.../ui/autofill/autofill_client_provider.cc | 124 +-----------------
.../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
.../browser/android_autofill_manager.h | 2 +
.../autofill/AutofillManagerWrapper.java | 5 +-
.../components/autofill/AutofillProvider.java | 7 +
.../BrowserSelectionActionMenuDelegate.java | 68 +++++++++
.../BrowserSelectionActionMenuDelegate.java | 68 ++++++++++
.../browser/content_autofill_driver.cc | 11 ++
.../content/browser/content_autofill_driver.h | 10 ++
.../content_autofill_driver_factory.cc | 12 ++
@@ -45,10 +46,10 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../foundations/browser_autofill_manager.cc | 2 +
.../foundations/browser_autofill_manager.h | 2 +
.../autofill/core/common/autofill_features.cc | 2 +-
.../autofill/core/common/autofill_features.h | 22 ---
.../autofill/core/common/autofill_features.h | 22 ----
.../autofill/core/common/autofill_prefs.cc | 4 +-
.../autofill/core/common/autofill_prefs.h | 5 +
33 files changed, 276 insertions(+), 217 deletions(-)
34 files changed, 277 insertions(+), 210 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
@@ -368,6 +369,17 @@ diff --git a/chrome/browser/autofill/android/java/src/org/chromium/chrome/browse
if (sAndroidAutofillFrameworkAvailabilityForTesting != null) {
return sAndroidAutofillFrameworkAvailabilityForTesting;
}
diff --git a/chrome/browser/autofill/android/java/src/org/chromium/chrome/browser/autofill/AutofillThirdPartyModeContentProvider.java b/chrome/browser/autofill/android/java/src/org/chromium/chrome/browser/autofill/AutofillThirdPartyModeContentProvider.java
--- a/chrome/browser/autofill/android/java/src/org/chromium/chrome/browser/autofill/AutofillThirdPartyModeContentProvider.java
+++ b/chrome/browser/autofill/android/java/src/org/chromium/chrome/browser/autofill/AutofillThirdPartyModeContentProvider.java
@@ -74,6 +74,7 @@ public final class AutofillThirdPartyModeContentProvider extends ContentProvider
@Nullable String selection,
String @Nullable [] selectionArgs,
@Nullable String sortOrder) {
+ if ((true)) return null;
if (createContentUri().equals(uri)) {
final String[] columns = {AUTOFILL_THIRD_PARTY_MODE_COLUMN};
MatrixCursor cursor = new MatrixCursor(columns, 1);
diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
--- a/chrome/browser/flag_descriptions.cc
+++ b/chrome/browser/flag_descriptions.cc
@@ -416,23 +428,18 @@ 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
@@ -12,126 +12,13 @@
#include "components/autofill/core/common/autofill_prefs.h"
#include "content/public/browser/web_contents.h"
-#if BUILDFLAG(IS_ANDROID)
-#include "base/android/jni_android.h"
-#include "base/android/jni_string.h"
-#include "base/task/thread_pool.h"
-#include "chrome/browser/autofill/android/android_autofill_availability_status.h"
@@ -17,123 +17,17 @@
#include "base/android/jni_string.h"
#include "base/task/thread_pool.h"
#include "chrome/browser/autofill/android/android_autofill_availability_status.h"
-#include "chrome/browser/autofill/android/jni_headers/AutofillClientProviderUtils_jni.h"
-#include "chrome/browser/metrics/chrome_metrics_service_accessor.h"
-#include "components/android_autofill/browser/android_autofill_client.h"
-#endif // BUILDFLAG(IS_ANDROID)
-
-namespace autofill {
#include "chrome/browser/metrics/chrome_metrics_service_accessor.h"
#include "components/android_autofill/browser/android_autofill_client.h"
#endif // BUILDFLAG(IS_ANDROID)
namespace autofill {
-namespace {
-
-#if BUILDFLAG(IS_ANDROID)
-void RecordAvailabilityStatus(AndroidAutofillAvailabilityStatus availability) {
- base::UmaHistogramEnumeration("Autofill.AndroidAutofillAvailabilityStatus",
@@ -529,8 +536,8 @@ diff --git a/chrome/browser/ui/autofill/autofill_client_provider.cc b/chrome/bro
-#endif // BUILDFLAG(IS_ANDROID)
-}
-
} // namespace
-} // namespace
-
-AutofillClientProvider::AutofillClientProvider(PrefService* prefs)
- : uses_platform_autofill_(
- UsesVirtualViewStructureForAutofill(CHECK_DEREF(prefs))) {
@@ -541,11 +548,13 @@ diff --git a/chrome/browser/ui/autofill/autofill_client_provider.cc b/chrome/bro
- // Ensure the pref is reset if platform autofill is restricted.
prefs->SetBoolean(prefs::kAutofillUsingVirtualViewStructure,
- uses_platform_autofill_);
- SetSharedPrefForSettingsContentProvider(uses_platform_autofill_);
- SetSharedPrefForDeepLink();
+ true);
SetSharedPrefForSettingsContentProvider(uses_platform_autofill_);
SetSharedPrefForDeepLink();
#endif // BUILDFLAG(IS_ANDROID)
@@ -141,15 +28,7 @@ AutofillClientProvider::~AutofillClientProvider() = default;
}
@@ -141,15 +35,7 @@ AutofillClientProvider::~AutofillClientProvider() = default;
void AutofillClientProvider::CreateClientForWebContents(
content::WebContents* web_contents) {
@@ -561,7 +570,7 @@ diff --git a/chrome/browser/ui/autofill/autofill_client_provider.cc b/chrome/bro
}
#if BUILDFLAG(IS_ANDROID)
@@ -161,12 +40,6 @@ void AutofillClientProvider::RegisterSyntheticFieldTrialForPackage(
@@ -161,12 +47,6 @@ void AutofillClientProvider::RegisterSyntheticFieldTrialForPackage(
}
void AutofillClientProvider::DelayRegisteringFieldTrialForA11yDeprecation() {
@@ -97,7 +97,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
components/user_scripts/common/url_pattern.h | 306 +++++++
.../user_scripts/common/url_pattern_set.cc | 229 +++++
.../user_scripts/common/url_pattern_set.h | 103 +++
components/user_scripts/common/user_script.cc | 329 +++++++
components/user_scripts/common/user_script.cc | 330 +++++++
components/user_scripts/common/user_script.h | 402 +++++++++
.../common/user_scripts_features.cc | 32 +
.../common/user_scripts_features.h | 36 +
@@ -136,7 +136,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../Experimental-user-scripts-support.inc | 13 +
ipc/ipc_message_start.h | 1 +
tools/gritsettings/resource_ids.spec | 6 +
109 files changed, 9360 insertions(+), 3 deletions(-)
109 files changed, 9361 insertions(+), 3 deletions(-)
create mode 100644 components/user_scripts/README.md
create mode 100755 components/user_scripts/android/BUILD.gn
create mode 100644 components/user_scripts/android/java/res/layout/accept_script_item.xml
@@ -1347,7 +1347,7 @@ new file mode 100644
+import org.chromium.ui.base.IntentRequestTracker;
+import org.chromium.ui.base.IntentRequestTracker.Delegate;
+import org.chromium.ui.base.WindowAndroid;
+import org.chromium.ui.InsetObserver;
+import org.chromium.ui.insets.InsetObserver;
+
+import java.lang.ref.WeakReference;
+
@@ -6259,7 +6259,7 @@ diff --git a/components/user_scripts/common/user_script.cc b/components/user_scr
new file mode 100755
--- /dev/null
+++ b/components/user_scripts/common/user_script.cc
@@ -0,0 +1,329 @@
@@ -0,0 +1,330 @@
+// Copyright 2013 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
@@ -6274,6 +6274,7 @@ new file mode 100755
+
+#include "base/atomic_sequence_num.h"
+#include "base/command_line.h"
+#include "base/logging.h"
+#include "base/pickle.h"
+#include "base/strings/pattern.h"
+#include "base/strings/string_util.h"
+7 -10
View File
@@ -30,7 +30,7 @@ suit Cromite logic.
chrome/browser/resources/settings/BUILD.gn | 2 +
.../settings/adblock_page/adblock_page.html | 212 +
.../settings/adblock_page/adblock_page.ts | 303 +
.../settings/basic_page/basic_page.html | 7 +
.../settings/basic_page/basic_page.html | 4 +
.../settings/basic_page/basic_page.ts | 1 +
.../resources/settings/page_visibility.ts | 1 +
chrome/browser/resources/settings/route.ts | 4 +
@@ -126,7 +126,7 @@ suit Cromite logic.
.../renderer/core/exported/web_document.cc | 13 +-
.../blink/renderer/core/html/html_element.cc | 8 +-
.../definitions/adblock_private.d.ts | 14 +
121 files changed, 9224 insertions(+), 618 deletions(-)
121 files changed, 9221 insertions(+), 618 deletions(-)
rename chrome/browser/adblock/android/java/res/xml/{adblock_preferences.xml => eyeo_adblock_preferences.xml} (59%)
create mode 100644 chrome/browser/resources/settings/adblock_page/adblock_page.html
create mode 100644 chrome/browser/resources/settings/adblock_page/adblock_page.ts
@@ -1752,17 +1752,14 @@ new file mode 100644
diff --git a/chrome/browser/resources/settings/basic_page/basic_page.html b/chrome/browser/resources/settings/basic_page/basic_page.html
--- a/chrome/browser/resources/settings/basic_page/basic_page.html
+++ b/chrome/browser/resources/settings/basic_page/basic_page.html
@@ -51,6 +51,13 @@
@@ -51,6 +51,10 @@
</settings-section>
</template>
</template>
+ <template is="dom-if" if="[[showPage_(pageVisibility.adblock)]]"
+ restamp>
+ <settings-section page-title="Adblock"
+ section="adblock">
+ <settings-adblock-page prefs="{{prefs}}"></settings-adblock-page>
+ </settings-section>
+ </template>
+ <settings-section page-title="Adblock"
+ section="adblock">
+ <settings-adblock-page prefs="{{prefs}}"></settings-adblock-page>
+ </settings-section>
<template is="dom-if" if="[[showPage_(pageVisibility_.autofill)]]"
restamp>
<settings-section page-title="$i18n{autofillPageTitle}"
@@ -56,7 +56,7 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
@@ -61,6 +61,7 @@ import org.chromium.components.browser_ui.settings.ChromeSwitchPreference;
@@ -62,6 +62,7 @@ import org.chromium.components.browser_ui.settings.ChromeSwitchPreference;
import org.chromium.components.browser_ui.settings.SettingsFragment;
import org.chromium.components.browser_ui.settings.SettingsNavigation;
import org.chromium.components.browser_ui.settings.SettingsUtils;
@@ -64,7 +64,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
import org.chromium.components.browser_ui.site_settings.ContentSettingsResources;
import org.chromium.components.browser_ui.site_settings.SingleCategorySettings;
import org.chromium.components.browser_ui.site_settings.WebsitePreferenceBridge;
@@ -95,6 +96,9 @@ import org.chromium.chrome.browser.preferences.ChromeSharedPreferences;
@@ -96,6 +97,9 @@ import org.chromium.chrome.browser.preferences.ChromeSharedPreferences;
import org.chromium.components.browser_ui.settings.ChromeSwitchPreference;
import org.chromium.components.browser_ui.settings.ManagedPreferenceDelegate;
@@ -74,7 +74,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
/** Fragment to keep track of the all the privacy related preferences. */
public class PrivacySettings extends ChromeBaseSettingsFragment
implements Preference.OnPreferenceChangeListener {
@@ -164,6 +168,8 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
@@ -165,6 +169,8 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
private ChromeSwitchPreference allowCustomTabIntentsPref;
private ChromeSwitchPreference openExternalLinksPref;
@@ -83,7 +83,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
@Override
public void onCreatePreferencesCromite(@Nullable Bundle savedInstanceState, @Nullable String rootKey) {
mPageTitle.set(getString(R.string.prefs_privacy_security));
@@ -315,6 +321,40 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
@@ -316,6 +322,40 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
Preference syncAndServicesLink = findPreference(PREF_SYNC_AND_SERVICES_LINK);
syncAndServicesLink.setSummary(buildFooterString());
@@ -124,7 +124,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
Preference thirdPartyCookies = findPreference(PREF_THIRD_PARTY_COOKIES);
if (showTrackingProtectionUi()) {
if (thirdPartyCookies != null) thirdPartyCookies.setVisible(false);
@@ -653,6 +693,29 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
@@ -654,6 +694,29 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
|| ((System.currentTimeMillis() - updateTimeMs) < TimeUnit.DAYS.toMillis(90));
}
@@ -2071,7 +2071,7 @@ diff --git a/chrome/browser/hub/internal/android/res/layout/hub_layout.xml b/chr
android:layout_height="match_parent">
- <LinearLayout
+ <org.chromium.chrome.browser.hub.ReversedLinearLayout>
+ <org.chromium.chrome.browser.hub.ReversedLinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
@@ -23,7 +23,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
...ioning-all-cookies-by-top-frame-domain.inc | 1 +
...ioning-all-cookies-by-top-frame-domain.inc | 15 +++++
...ioning-all-cookies-by-top-frame-domain.inc | 1 +
net/cookies/canonical_cookie.cc | 4 +-
net/cookies/canonical_cookie.cc | 5 --
net/cookies/cookie_deletion_info.cc | 3 +-
net/cookies/cookie_monster.cc | 1 +
net/cookies/cookie_util.cc | 1 +
@@ -41,7 +41,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
.../cookie_store_delete_options.idl | 2 +-
ui/webui/webui_allowlist.cc | 1 +
url/url_features.cc | 1 +
32 files changed, 96 insertions(+), 88 deletions(-)
32 files changed, 94 insertions(+), 91 deletions(-)
create mode 100644 cromite_flags/components/content_settings/core/common/features_cc/Partitioning-all-cookies-by-top-frame-domain.inc
create mode 100644 cromite_flags/components/permissions/features_cc/Partitioning-all-cookies-by-top-frame-domain.inc
create mode 100644 cromite_flags/content/public/common/content_features_cc/Partitioning-all-cookies-by-top-frame-domain.inc
@@ -330,16 +330,17 @@ new file mode 100644
diff --git a/net/cookies/canonical_cookie.cc b/net/cookies/canonical_cookie.cc
--- a/net/cookies/canonical_cookie.cc
+++ b/net/cookies/canonical_cookie.cc
@@ -1038,8 +1038,8 @@ CanonicalCookie::IsCanonicalForFromStorage() const {
@@ -1038,11 +1038,6 @@ CanonicalCookie::IsCanonicalForFromStorage() const {
return Fail(CanonicalizationFailure::kEmptyNameWithHiddenPrefix);
}
- if (IsPartitioned() && !CookiePartitionKey::HasNonce(PartitionKey()) &&
- !SecureAttribute()) {
+ if (IsPartitioned() && !CookiePartitionKey::HasNonce(PartitionKey())) {
+ CHECK(false);
return Fail(CanonicalizationFailure::kPartitionedInsecure);
}
- return Fail(CanonicalizationFailure::kPartitionedInsecure);
- }
-
return Pass();
}
diff --git a/net/cookies/cookie_deletion_info.cc b/net/cookies/cookie_deletion_info.cc
--- a/net/cookies/cookie_deletion_info.cc
@@ -49,7 +49,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
&kAsyncNotificationManager,
&kAsyncNotificationManagerForDownload,
&kAuxiliarySearchDonation,
+ &kCloseAllTabsModalDialog
+ &kCloseAllTabsModalDialog,
&kBatchTabRestore,
&kBlockIntentsWhileLocked,
&kBookmarkPaneAndroid,
@@ -170,7 +170,7 @@ new file mode 100644
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
@@ -38,6 +38,7 @@ import org.chromium.chrome.browser.preferences.ChromePreferenceKeys;
@@ -39,6 +39,7 @@ import org.chromium.chrome.browser.preferences.ChromePreferenceKeys;
import org.chromium.chrome.browser.preferences.ChromeSharedPreferences;
import org.chromium.chrome.browser.preferences.Pref;
import org.chromium.chrome.browser.prefetch.settings.PreloadPagesSettingsFragment;
@@ -178,7 +178,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
import org.chromium.chrome.browser.privacy.secure_dns.SecureDnsSettings;
import org.chromium.chrome.browser.privacy_guide.PrivacyGuideInteractions;
import org.chromium.chrome.browser.privacy_sandbox.PrivacySandboxBridge;
@@ -112,6 +113,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
@@ -113,6 +114,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
private static final String PREF_SAFE_BROWSING = "safe_browsing";
private static final String PREF_PASSWORD_LEAK_DETECTION = "password_leak_detection";
private static final String PREF_SYNC_AND_SERVICES_LINK = "sync_and_services_link";
@@ -186,7 +186,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
private static final String PREF_PRIVACY_SANDBOX = "privacy_sandbox";
private static final String PREF_PROXY_OPTIONS = "proxy";
private static final String PREF_PRIVACY_GUIDE = "privacy_guide";
@@ -534,6 +536,10 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
@@ -535,6 +537,10 @@ public class PrivacySettings extends ChromeBaseSettingsFragment
: R.string.text_off);
}
@@ -93,10 +93,12 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
components/omnibox/common/BUILD.gn | 1 -
.../components/omnibox/OmniboxFeatures.java | 8 -
components/signin/public/android/BUILD.gn | 3 -
components/webauthn/android/BUILD.gn | 16 -
components/webauthn/android/BUILD.gn | 16 +-
.../webauthn/AuthenticatorImpl.java | 89 +--
.../webauthn/ConditionalUiState.java | 15 +
.../webauthn/GmsCoreGetCredentialsHelper.java | 72 +--
.../components/webauthn/GmsCoreUtils.java | 31 +-
.../webauthn/IdentityCredentialsHelper.java | 77 +--
.../webauthn/WebauthnModeProvider.java | 15 -
.../webauthn/cred_man/CredManHelper.java | 15 +-
.../cred_man/CredManMetricsHelper.java | 2 +-
@@ -104,7 +106,6 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
content/public/android/BUILD.gn | 4 -
content/test/BUILD.gn | 4 -
device/BUILD.gn | 3 -
device/fido/features.cc | 1 +
services/BUILD.gn | 10 -
services/device/geolocation/BUILD.gn | 4 -
services/shape_detection/BUILD.gn | 2 -
@@ -114,7 +115,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../gms/ChromiumPlayServicesAvailability.java | 10 +-
third_party/androidx/customizations.gni | 14 +-
third_party/cardboard/BUILD.gn | 4 -
90 files changed, 124 insertions(+), 2469 deletions(-)
91 files changed, 130 insertions(+), 2611 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
@@ -3330,7 +3331,7 @@ diff --git a/components/webauthn/android/BUILD.gn b/components/webauthn/android/
"java/src/org/chromium/components/webauthn/InternalAuthenticator.java",
"java/src/org/chromium/components/webauthn/WebauthnBrowserBridge.java",
"java/src/org/chromium/components/webauthn/WebauthnModeProvider.java",
@@ -37,13 +35,7 @@ android_library("java") {
@@ -37,12 +35,8 @@ android_library("java") {
"java/src/org/chromium/components/webauthn/AuthenticatorImpl.java",
"java/src/org/chromium/components/webauthn/Barrier.java",
"java/src/org/chromium/components/webauthn/CreateConfirmationUiDelegate.java",
@@ -3340,11 +3341,11 @@ diff --git a/components/webauthn/android/BUILD.gn b/components/webauthn/android/
- "java/src/org/chromium/components/webauthn/Fido2CredentialRequest.java",
- "java/src/org/chromium/components/webauthn/FidoErrorResponseCallback.java",
"java/src/org/chromium/components/webauthn/FidoIntentSender.java",
- "java/src/org/chromium/components/webauthn/GetAssertionResponseCallback.java",
+ "java/src/org/chromium/components/webauthn/ConditionalUiState.java",
"java/src/org/chromium/components/webauthn/GetAssertionResponseCallback.java",
"java/src/org/chromium/components/webauthn/GetMatchingCredentialIdsResponseCallback.java",
"java/src/org/chromium/components/webauthn/GmsCoreGetCredentialsHelper.java",
"java/src/org/chromium/components/webauthn/GmsCoreUtils.java",
@@ -69,10 +61,6 @@ android_library("java") {
@@ -69,10 +63,6 @@ android_library("java") {
]
deps = [
@@ -3355,7 +3356,7 @@ diff --git a/components/webauthn/android/BUILD.gn b/components/webauthn/android/
"//base:base_java",
"//base:service_loader_java",
"//base/version_info/android:version_constants_java",
@@ -143,8 +131,6 @@ android_library("test_support_java") {
@@ -143,8 +133,6 @@ android_library("test_support_java") {
source_set("android") {
sources = [
"cred_man_support.h",
@@ -3364,7 +3365,7 @@ diff --git a/components/webauthn/android/BUILD.gn b/components/webauthn/android/
"internal_authenticator_android.cc",
"internal_authenticator_android.h",
"webauthn_browser_bridge.cc",
@@ -215,8 +201,6 @@ robolectric_library("junit") {
@@ -215,8 +203,6 @@ robolectric_library("junit") {
deps = [
":java",
":test_support_java",
@@ -3570,6 +3571,102 @@ new file mode 100644
+ CANCEL_PENDING,
+ CANCEL_PENDING_RP_ID_VALIDATION_COMPLETE,
+}
diff --git a/components/webauthn/android/java/src/org/chromium/components/webauthn/GmsCoreGetCredentialsHelper.java b/components/webauthn/android/java/src/org/chromium/components/webauthn/GmsCoreGetCredentialsHelper.java
--- a/components/webauthn/android/java/src/org/chromium/components/webauthn/GmsCoreGetCredentialsHelper.java
+++ b/components/webauthn/android/java/src/org/chromium/components/webauthn/GmsCoreGetCredentialsHelper.java
@@ -8,8 +8,6 @@ import android.os.SystemClock;
import androidx.annotation.VisibleForTesting;
-import com.google.android.gms.tasks.OnFailureListener;
-
import org.chromium.base.ResettersForTesting;
import org.chromium.base.metrics.RecordHistogram;
import org.chromium.build.annotations.NullMarked;
@@ -69,6 +67,9 @@ public class GmsCoreGetCredentialsHelper {
public interface GetCredentialsCallback {
void onCredentialsReceived(List<WebauthnCredentialDetails> credentials);
}
+ public interface OnFailureListener {
+ void onFailure(Exception exception);
+ }
public static GmsCoreGetCredentialsHelper getInstance() {
if (sInstance == null) {
@@ -98,72 +99,7 @@ public class GmsCoreGetCredentialsHelper {
Reason reason,
GetCredentialsCallback successCallback,
OnFailureListener failureCallback) {
- final long startTimeMs = SystemClock.elapsedRealtime();
- if (reason == Reason.GET_ASSERTION_NON_GOOGLE
- && GmsCoreUtils.isPasskeyCacheSupported()
- && DeviceFeatureMap.isEnabled(
- DeviceFeatureList.WEBAUTHN_ANDROID_PASSKEY_CACHE_MIGRATION)) {
- Fido2ApiCallHelper.getInstance()
- .invokePasskeyCacheGetCredentials(
- authenticationContextProvider,
- relyingPartyId,
- (credentials) -> {
- recordSuccessMetrics(
- credentials,
- reason,
- GmsCoreGetCredentialsResult.CACHE_SUCCESS,
- startTimeMs);
- successCallback.onCredentialsReceived(credentials);
- },
- (e) ->
- getCredentialsFromFido2Api(
- authenticationContextProvider,
- relyingPartyId,
- reason,
- successCallback,
- failureCallback,
- GmsCoreGetCredentialsResult
- .CACHE_FAILURE_FALLBACK_SUCCESS,
- GmsCoreGetCredentialsResult
- .CACHE_FAILURE_FALLBACK_FAILURE,
- startTimeMs));
- } else {
- getCredentialsFromFido2Api(
- authenticationContextProvider,
- relyingPartyId,
- reason,
- successCallback,
- failureCallback,
- GmsCoreGetCredentialsResult.FIDO2_SUCCESS,
- GmsCoreGetCredentialsResult.FIDO2_FAILURE,
- startTimeMs);
- }
- }
-
- private void getCredentialsFromFido2Api(
- AuthenticationContextProvider authenticationContextProvider,
- String relyingPartyId,
- Reason reason,
- GetCredentialsCallback successCallback,
- OnFailureListener failureCallback,
- @GmsCoreGetCredentialsResult int successMetric,
- @GmsCoreGetCredentialsResult int failureMetric,
- long startTimeMs) {
- Fido2ApiCallHelper.getInstance()
- .invokeFido2GetCredentials(
- authenticationContextProvider,
- relyingPartyId,
- (credentials) -> {
- recordSuccessMetrics(credentials, reason, successMetric, startTimeMs);
- successCallback.onCredentialsReceived(credentials);
- },
- (e) -> {
- RecordHistogram.recordEnumeratedHistogram(
- GET_CREDENTIALS_RESULT_HISTOGRAM,
- failureMetric,
- GmsCoreGetCredentialsResult.NUM_ENTRIES);
- failureCallback.onFailure(e);
- });
+ failureCallback.onFailure(new Exception());
}
private void recordSuccessMetrics(
diff --git a/components/webauthn/android/java/src/org/chromium/components/webauthn/GmsCoreUtils.java b/components/webauthn/android/java/src/org/chromium/components/webauthn/GmsCoreUtils.java
--- a/components/webauthn/android/java/src/org/chromium/components/webauthn/GmsCoreUtils.java
+++ b/components/webauthn/android/java/src/org/chromium/components/webauthn/GmsCoreUtils.java
@@ -3634,6 +3731,105 @@ diff --git a/components/webauthn/android/java/src/org/chromium/components/webaut
+ return false;
}
}
diff --git a/components/webauthn/android/java/src/org/chromium/components/webauthn/IdentityCredentialsHelper.java b/components/webauthn/android/java/src/org/chromium/components/webauthn/IdentityCredentialsHelper.java
--- a/components/webauthn/android/java/src/org/chromium/components/webauthn/IdentityCredentialsHelper.java
+++ b/components/webauthn/android/java/src/org/chromium/components/webauthn/IdentityCredentialsHelper.java
@@ -10,11 +10,6 @@ import android.os.Bundle;
import androidx.annotation.VisibleForTesting;
-import com.google.android.gms.identitycredentials.CreateCredentialHandle;
-import com.google.android.gms.identitycredentials.CreateCredentialRequest;
-import com.google.android.gms.identitycredentials.IdentityCredentialClient;
-import com.google.android.gms.identitycredentials.IdentityCredentialManager;
-
import org.jni_zero.JNINamespace;
import org.chromium.base.Log;
@@ -53,49 +48,8 @@ public class IdentityCredentialsHelper {
byte @Nullable [] clientDataHash,
MakeCredentialResponseCallback responseCallback,
ErrorCallback errorCallback) {
- try {
- IdentityCredentialClient client =
- IdentityCredentialManager.Companion.getClient(
- assertNonNull(mAuthenticationContextProvider.getContext()));
- client.createCredential(buildConditionalCreateRequest(options, origin, clientDataHash))
- .addOnSuccessListener(
- (handle) ->
- onConditionalCreateSuccess(
- clientDataJson,
- options,
- responseCallback,
- errorCallback,
- handle))
- .addOnFailureListener(
- (exception) -> onConditionalCreateFailure(errorCallback, exception));
- } catch (Exception e) {
- Log.d(TAG, "CreateCredential failed ", e);
- errorCallback.onResult(
- AuthenticatorStatus.NOT_ALLOWED_ERROR, MakeCredentialOutcome.OTHER_FAILURE);
- return;
- }
- }
-
- private void onConditionalCreateSuccess(
- byte @Nullable [] clientDataJson,
- PublicKeyCredentialCreationOptions options,
- MakeCredentialResponseCallback responseCallback,
- ErrorCallback errorCallback,
- CreateCredentialHandle handle) {
- Bundle data = assertNonNull(handle.getCreateCredentialResponse()).getData();
- MakeCredentialAuthenticatorResponse response =
- CredManHelper.parseCreateCredentialResponseData(data);
- if (response == null) {
- Log.d(TAG, "parseCreateCredentialResponseData() failed");
- errorCallback.onResult(
- AuthenticatorStatus.NOT_ALLOWED_ERROR, MakeCredentialOutcome.OTHER_FAILURE);
- return;
- }
- if (clientDataJson != null) {
- response.info.clientDataJson = clientDataJson;
- }
- response.echoCredProps = options.credProps;
- responseCallback.onRegisterResponse(AuthenticatorStatus.SUCCESS, response);
+ errorCallback.onResult(
+ AuthenticatorStatus.NOT_ALLOWED_ERROR, MakeCredentialOutcome.OTHER_FAILURE);
}
private void onConditionalCreateFailure(ErrorCallback errorCallback, Exception e) {
@@ -115,31 +69,4 @@ public class IdentityCredentialsHelper {
CRED_MAN_PREFIX + "BUNDLE_KEY_CLIENT_DATA_HASH", clientDataHash);
return credentialData;
}
-
- @VisibleForTesting
- public CreateCredentialRequest buildConditionalCreateRequest(
- PublicKeyCredentialCreationOptions options,
- String origin,
- byte @Nullable [] clientDataHash) {
- String requestJson =
- Fido2CredentialRequestJni.get().createOptionsToJson(options.serialize());
-
- Bundle credentialData = requestBundle(requestJson, clientDataHash);
- Bundle displayInfo = new Bundle();
- displayInfo.putCharSequence(CRED_MAN_PREFIX + "BUNDLE_KEY_USER_ID", options.user.name);
- displayInfo.putCharSequence(
- CRED_MAN_PREFIX + "BUNDLE_KEY_USER_DISPLAY_NAME", options.user.displayName);
- credentialData.putBundle(CRED_MAN_PREFIX + "BUNDLE_KEY_REQUEST_DISPLAY_INFO", displayInfo);
-
- Bundle candidateQueryData = requestBundle(requestJson, clientDataHash);
- candidateQueryData.putBoolean(CRED_MAN_PREFIX + "BUNDLE_KEY_IS_CONDITIONAL_REQUEST", true);
-
- return new CreateCredentialRequest(
- CRED_MAN_PREFIX + "TYPE_PUBLIC_KEY_CREDENTIAL",
- credentialData,
- candidateQueryData,
- origin,
- requestJson,
- null);
- }
}
diff --git a/components/webauthn/android/java/src/org/chromium/components/webauthn/WebauthnModeProvider.java b/components/webauthn/android/java/src/org/chromium/components/webauthn/WebauthnModeProvider.java
--- a/components/webauthn/android/java/src/org/chromium/components/webauthn/WebauthnModeProvider.java
+++ b/components/webauthn/android/java/src/org/chromium/components/webauthn/WebauthnModeProvider.java
@@ -3784,17 +3980,6 @@ diff --git a/device/BUILD.gn b/device/BUILD.gn
"//base:base_java",
"//base:base_java_test_support",
"//base:base_junit_test_support",
diff --git a/device/fido/features.cc b/device/fido/features.cc
--- a/device/fido/features.cc
+++ b/device/fido/features.cc
@@ -103,6 +103,7 @@ BASE_FEATURE(kWebAuthnEnclaveAuthenticatorDelay,
BASE_FEATURE(kWebAuthnAmbientSignin,
"WebAuthenticationAmbientSignin",
base::FEATURE_DISABLED_BY_DEFAULT);
+SET_CROMITE_FEATURE_DISABLED(kWebAuthnHybridLinking);
// This is a deprecation flag. It is now enabled by default, but we want to
// disable it eventually.
diff --git a/services/BUILD.gn b/services/BUILD.gn
--- a/services/BUILD.gn
+++ b/services/BUILD.gn
+14 -1
View File
@@ -16,6 +16,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../chrome/browser/settings/SettingsActivity.java | 1 +
.../browser/sync/settings/GoogleServicesSettings.java | 1 +
.../chrome/browser/sync/settings/ManageSyncSettings.java | 1 +
.../tabbed_mode/TabbedAppMenuPropertiesDelegate.java | 2 +-
.../android/java/res/menu/prefeditor_editor_menu.xml | 1 +
.../autofill/options/AutofillOptionsFragment.java | 1 +
.../password_check/PasswordCheckFragmentView.java | 1 +
@@ -24,7 +25,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../PrivacySandboxSettingsBaseFragment.java | 1 +
.../settings/SafeBrowsingSettingsFragmentBase.java | 1 +
chrome/browser/ui/chrome_pages.cc | 9 +++++++++
20 files changed, 26 insertions(+), 14 deletions(-)
21 files changed, 27 insertions(+), 15 deletions(-)
diff --git a/chrome/android/java/res/menu/save_password_preferences_action_bar_menu.xml b/chrome/android/java/res/menu/save_password_preferences_action_bar_menu.xml
--- a/chrome/android/java/res/menu/save_password_preferences_action_bar_menu.xml
@@ -168,6 +169,18 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/sync/settings/M
if (mIsFromSigninScreen) {
ActionBar actionBar = ((AppCompatActivity) getActivity()).getSupportActionBar();
assert actionBar != null;
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java
@@ -362,7 +362,7 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm
}
// Help
- modelList.add(buildHelpItem());
+ // modelList.add(buildHelpItem());
// Managed by
if (shouldShowManagedByMenuItem(currentTab)) {
diff --git a/chrome/browser/autofill/android/java/res/menu/prefeditor_editor_menu.xml b/chrome/browser/autofill/android/java/res/menu/prefeditor_editor_menu.xml
--- a/chrome/browser/autofill/android/java/res/menu/prefeditor_editor_menu.xml
+++ b/chrome/browser/autofill/android/java/res/menu/prefeditor_editor_menu.xml
@@ -28,7 +28,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../SuggestionsNavigationDelegate.java | 27 +-
.../tile/MostVisitedTilesCoordinator.java | 6 +-
.../tile/MostVisitedTilesGridLayout.java | 287 ++++++++++++++++++
.../tile/MostVisitedTilesMediator.java | 5 +-
.../tile/MostVisitedTilesMediator.java | 7 +-
.../tile/TileDragDelegateImpl.java | 6 +-
.../suggestions/tile/TileRenderer.java | 8 +-
.../suggestions/tile/TilesLinearLayout.java | 2 +-
@@ -41,7 +41,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../Restore-Simplified-NTP-launch.inc | 12 +
.../Restore-Simplified-NTP-launch.inc | 5 +
.../Restore-Simplified-NTP-launch.inc | 1 +
35 files changed, 537 insertions(+), 53 deletions(-)
35 files changed, 537 insertions(+), 55 deletions(-)
create mode 100644 chrome/android/java/res/layout/ntp_shortcuts.xml
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/feedback/SimplifiedNtpFeedbackSource.java
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/suggestions/tile/MostVisitedTilesGridLayout.java
@@ -662,7 +662,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/suggestions/Sug
+
+ public void navigateToBookmarks() {
+ mBookmarkManagerOpenerSupplier.get()
+ .showBookmarkManager(mActivity, mTab.getProfile());
+ .showBookmarkManager(mActivity, mTab, mTab.getProfile());
+ }
+
+ public void navigateToDownloadManager() {
@@ -1015,6 +1015,14 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/suggestions/til
}
public void onConfigurationChanged() {
@@ -303,7 +302,5 @@ public class MostVisitedTilesMediator implements TileGroup.Observer, TemplateUrl
double firstTileScore = mTileGroup.getSuggestionScore(firstTile.getUrl());
if (firstTileScore < MVT_CUSTOMIZATION_IPH_TILE_SCORE_THRESHOULD) return;
-
- mMvTilesLayout.triggerCustomizationIph(mUserEducationHelper);
}
}
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/suggestions/tile/TileDragDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/suggestions/tile/TileDragDelegateImpl.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/suggestions/tile/TileDragDelegateImpl.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/suggestions/tile/TileDragDelegateImpl.java
@@ -11,6 +11,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../ContextualPageActionController.java | 4 ++++
.../chrome/browser/settings/MainSettings.java | 9 +--------
.../segmentation_platform_config.cc | 1 +
.../strings/android_chrome_strings.grd | 3 +++
...tton_group_adaptive_toolbar_preference.xml | 9 +++++++++
.../AdaptiveToolbarButtonController.java | 2 +-
.../adaptive/AdaptiveToolbarFeatures.java | 2 +-
@@ -19,7 +20,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../adaptive/AdaptiveToolbarStats.java | 2 ++
...oButtonGroupAdaptiveToolbarPreference.java | 19 ++++++++++++-------
...ve-button-in-top-toolbar-customization.inc | 1 +
12 files changed, 40 insertions(+), 21 deletions(-)
13 files changed, 43 insertions(+), 21 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/dom_distiller/ReaderModeToolbarButtonController.java b/chrome/android/java/src/org/chromium/chrome/browser/dom_distiller/ReaderModeToolbarButtonController.java
@@ -46,7 +47,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/segmentation_pl
&& mTabSupplier.get().getId() == tab.getId();
if (!isSameTab) return;
+ if (mSignalAccumulator.hasReaderMode()
+ if (mSignalAccumulator.getSignal(AdaptiveToolbarButtonVariant.READER_MODE) //
+ && result == AdaptiveToolbarButtonVariant.UNKNOWN) {
+ result = AdaptiveToolbarButtonVariant.READER_MODE;
+ }
@@ -83,6 +84,19 @@ diff --git a/chrome/browser/segmentation_platform/segmentation_platform_config.c
if (!base::FeatureList::IsEnabled(
chrome::android::kAdaptiveButtonInTopToolbarCustomizationV2)) {
return nullptr;
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
@@ -5124,6 +5124,9 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>delete the Chrome d
<message name="IDS_READER_MODE_MESSAGE_BUTTON" desc="The label for the button to open the current page in reader mode.">
View
</message>
+ <message name="IDS_READER_MODE_ACTION_CHIP_LABEL_SIMPLIFY_PAGE" desc="The label for the action chip shown on the toolbar to open the current page in reader mode. [CHAR_LIMIT=27]">
+ Simplify page
+ </message>
<message name="IDS_CONTENT_PROVIDER_SEARCH_DESCRIPTION" desc="Description for Chrome's entry in QSB's list of search suggestion providers [CHAR_LIMIT=32]">
Bookmarks and web history
</message>
diff --git a/chrome/browser/ui/android/toolbar/java/res/layout/radio_button_group_adaptive_toolbar_preference.xml b/chrome/browser/ui/android/toolbar/java/res/layout/radio_button_group_adaptive_toolbar_preference.xml
--- a/chrome/browser/ui/android/toolbar/java/res/layout/radio_button_group_adaptive_toolbar_preference.xml
+++ b/chrome/browser/ui/android/toolbar/java/res/layout/radio_button_group_adaptive_toolbar_preference.xml
@@ -96,7 +110,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/res/layout/radio_button_grou
+ android:layout_height="wrap_content"
+ android:minHeight="@dimen/min_touch_target_size"
+ android:paddingTop="10dp"
+ app:iconSrc="@drawable/ic_mobile_friendly"
+ app:iconSrc="@drawable/ic_mobile_friendly_24dp"
+ app:primaryText="@string/reader_mode_action_chip_label_simplify_page" />
+
</org.chromium.components.browser_ui.widget.RadioButtonWithDescriptionLayout>
@@ -26,7 +26,7 @@ diff --git a/components/saved_tab_groups/public/features.cc b/components/saved_t
return base::Seconds(time_in_seconds);
}
+SET_CROMITE_FEATURE_DISABLED(kTabGroupSyncAndroid);
+//SET_CROMITE_FEATURE_DISABLED(kTabGroupSyncAndroid);
+SET_CROMITE_FEATURE_ENABLED(kTabGroupSyncDisableNetworkLayer);
} // namespace tab_groups
--
File diff suppressed because it is too large Load Diff
+44 -4
View File
@@ -10,7 +10,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
.../metrics/chrome_feature_list_creator.cc | 12 ++
.../search_engine_preconnector.cc | 1 +
.../policy/chrome_browser_policy_connector.cc | 3 -
...nfiguration_policy_handler_list_factory.cc | 6 +-
...nfiguration_policy_handler_list_factory.cc | 10 +-
.../account_consistency_mode_manager.cc | 7 +-
...ccount_consistency_mode_manager_factory.cc | 2 +-
.../throttled_gaia_auth_fetcher.cc | 5 +
@@ -22,12 +22,13 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
.../commerce/core/commerce_feature_list.cc | 64 ++------
.../core/browser/browser_policy_connector.cc | 3 +
.../common/command_line_policy_provider.cc | 3 +
.../core/common/policy_loader_command_line.cc | 137 ++++++++++++++++--
.../core/common/policy_loader_command_line.cc | 138 ++++++++++++++++--
.../policy/core/common/policy_pref_names.cc | 3 +
.../policy/core/common/policy_pref_names.h | 1 +
.../policy/core/common/policy_service_impl.cc | 3 +
.../policy/core/common/policy_switches.cc | 2 +
.../policy/core/common/policy_switches.h | 1 +
.../ExtensionManifestV2Availability.yaml | 5 +-
.../Miscellaneous/SyncDisabled.yaml | 2 +-
.../policy/resources/webui/policy_row.html | 1 +
.../policy/resources/webui/policy_row.ts | 12 ++
@@ -35,9 +36,10 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
components/search/ntp_features.cc | 1 +
components/signin/features.gni | 2 +-
.../gaia_cookie_manager_service.cc | 4 +
extensions/common/extension_features.cc | 1 +
google_apis/gaia/gaia_auth_fetcher.cc | 1 +
net/socket/ssl_client_socket_impl.cc | 3 +
33 files changed, 321 insertions(+), 158 deletions(-)
35 files changed, 329 insertions(+), 161 deletions(-)
diff --git a/base/win/win_util.cc b/base/win/win_util.cc
--- a/base/win/win_util.cc
@@ -239,6 +241,17 @@ diff --git a/chrome/browser/policy/configuration_policy_handler_list_factory.cc
}
} // namespace
@@ -3261,6 +3261,10 @@ std::unique_ptr<ConfigurationPolicyHandlerList> BuildHandlerList(
extensions::pref_names::kExtensionUnpublishedAvailability,
/*min=*/0, /*max=*/1, /*clamp=*/false));
handlers->AddHandler(std::make_unique<ExtensionDeveloperModePolicyHandler>());
+ handlers->AddHandler(std::make_unique<IntRangePolicyHandler>(
+ key::kExtensionManifestV2Availability,
+ extensions::pref_names::kManifestV2Availability, /*min=*/0, /*max=*/3,
+ /*clamp=*/false));
#endif // BUILDFLAG(ENABLE_EXTENSIONS)
diff --git a/chrome/browser/signin/account_consistency_mode_manager.cc b/chrome/browser/signin/account_consistency_mode_manager.cc
--- a/chrome/browser/signin/account_consistency_mode_manager.cc
+++ b/chrome/browser/signin/account_consistency_mode_manager.cc
@@ -694,7 +707,7 @@ diff --git a/components/policy/core/common/policy_loader_command_line.cc b/compo
namespace policy {
@@ -21,25 +46,105 @@ PolicyLoaderCommandLine::~PolicyLoaderCommandLine() = default;
@@ -21,25 +46,106 @@ PolicyLoaderCommandLine::~PolicyLoaderCommandLine() = default;
PolicyBundle PolicyLoaderCommandLine::Load() {
PolicyBundle bundle;
@@ -786,6 +799,7 @@ diff --git a/components/policy/core/common/policy_loader_command_line.cc b/compo
+
+#if BUILDFLAG(IS_WIN)
+ AddPolicy(disabled_policies_list, policy_map, policy::key::kExtensionManifestV2Availability, base::Value(/*Enabled*/ 2));
+ //kExtensionUnpublishedAvailability
+ AddPolicy(disabled_policies_list, policy_map, policy::key::kDynamicCodeSettings, base::Value(/*DisabledForBrowser*/ 1));
+#endif
+
@@ -876,6 +890,21 @@ diff --git a/components/policy/core/common/policy_switches.h b/components/policy
#if BUILDFLAG(IS_CHROMEOS)
extern const char kDisablePolicyKeyVerification[];
#endif // BUILDFLAG(IS_CHROMEOS)
diff --git a/components/policy/resources/templates/policy_definitions/Extensions/ExtensionManifestV2Availability.yaml b/components/policy/resources/templates/policy_definitions/Extensions/ExtensionManifestV2Availability.yaml
--- a/components/policy/resources/templates/policy_definitions/Extensions/ExtensionManifestV2Availability.yaml
+++ b/components/policy/resources/templates/policy_definitions/Extensions/ExtensionManifestV2Availability.yaml
@@ -17,9 +17,8 @@ desc: |-
Extensions availability are still controlled by other policies.
supported_on:
-- chrome.*:110-138
-- chrome_os:110-138
-deprecated: true
+- chrome.*:110-
+- chrome_os:110-
future_on:
- fuchsia
features:
diff --git a/components/policy/resources/templates/policy_definitions/Miscellaneous/SyncDisabled.yaml b/components/policy/resources/templates/policy_definitions/Miscellaneous/SyncDisabled.yaml
--- a/components/policy/resources/templates/policy_definitions/Miscellaneous/SyncDisabled.yaml
+++ b/components/policy/resources/templates/policy_definitions/Miscellaneous/SyncDisabled.yaml
@@ -1007,6 +1036,17 @@ diff --git a/components/signin/internal/identity_manager/gaia_cookie_manager_ser
// Pop the completed request.
requests_.pop_front();
OptimizeListAccounts();
diff --git a/extensions/common/extension_features.cc b/extensions/common/extension_features.cc
--- a/extensions/common/extension_features.cc
+++ b/extensions/common/extension_features.cc
@@ -118,6 +118,7 @@ BASE_FEATURE(kExtensionWARForRedirect,
BASE_FEATURE(kExtensionsManifestV3Only,
"ExtensionsManifestV3Only",
base::FEATURE_DISABLED_BY_DEFAULT);
+SET_CROMITE_FEATURE_DISABLED(kExtensionsManifestV3Only);
BASE_FEATURE(kExtensionsMenuAccessControl,
"ExtensionsMenuAccessControl",
diff --git a/google_apis/gaia/gaia_auth_fetcher.cc b/google_apis/gaia/gaia_auth_fetcher.cc
--- a/google_apis/gaia/gaia_auth_fetcher.cc
+++ b/google_apis/gaia/gaia_auth_fetcher.cc
+14 -1
View File
@@ -7,9 +7,11 @@ Disable autofill download manager (Jan Engelhardt <jengelh@inai.de>)
Disable autofill assistant and CC (csagan5)
Disable autofill server communication by default (Daniel Micay <danielmicay@gmail.com>)
Do not skip google.com domains for password generation (csagan5)
Disable deeplinks
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
.../browser/AutofillOptionsLauncher.java | 1 +
.../chrome_password_manager_client.cc | 4 --
.../ui/autofill/chrome_autofill_client.cc | 9 ---
.../ui/autofill/chrome_autofill_client.h | 1 -
@@ -23,8 +25,19 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../autofill/core/common/autofill_features.cc | 2 +
.../autofill/core/common/autofill_prefs.cc | 8 +--
.../password_generation_frame_helper.cc | 5 --
13 files changed, 11 insertions(+), 113 deletions(-)
14 files changed, 12 insertions(+), 113 deletions(-)
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/AutofillOptionsLauncher.java b/chrome/android/java/src/org/chromium/chrome/browser/AutofillOptionsLauncher.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/AutofillOptionsLauncher.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/AutofillOptionsLauncher.java
@@ -41,6 +41,7 @@ public final class AutofillOptionsLauncher extends Activity {
}
private static boolean isDeepLinkFeatureEnabled() {
+ if ((true)) return false;
return ContextUtils.getApplicationContext()
.getSharedPreferences(
AUTOFILL_OPTIONS_DEEP_LINK_SHARED_PREFS_FILE, Context.MODE_PRIVATE)
diff --git a/chrome/browser/password_manager/chrome_password_manager_client.cc b/chrome/browser/password_manager/chrome_password_manager_client.cc
--- a/chrome/browser/password_manager/chrome_password_manager_client.cc
+++ b/chrome/browser/password_manager/chrome_password_manager_client.cc
+5 -5
View File
@@ -111,10 +111,10 @@ diff --git a/build/android/gyp/java_cpp_enum.py b/build/android/gyp/java_cpp_enu
nargs='+',
help='Path to at least one input file.')
+ parser.add_option('--gen_dir',
+ help='Indicates the path to the generated file')
+ parser.add_option('--root_dir',
+ help='Indicates the path to the build root')
+ parser.add_argument('--gen_dir',
+ help='Indicates the path to the generated file')
+ parser.add_argument('--root_dir',
+ help='Indicates the path to the build root')
+
options = parser.parse_args(argv)
@@ -355,7 +355,7 @@ new file mode 100644
+ lines = f.readlines()
+
+ template = ''.join(lines)
+ package, class_name = java_cpp_utils.ParseTemplateFile(lines)
+ package, class_name = java_cpp_utils.ParseTemplateFile(template)
+ output_path = java_cpp_utils.GetJavaFilePath(package, class_name)
+ strings = []
+
@@ -15,6 +15,8 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../browser/chrome_content_browser_client.cc | 29 +-
...ent_browser_client_navigation_throttles.cc | 1 -
.../domain_reliability/service_factory.cc | 33 +-
.../key_management/browser/commands/BUILD.gn | 1 -
.../commands/win_key_rotation_command.cc | 9 +-
chrome/browser/extensions/BUILD.gn | 1 -
chrome/browser/feedback/BUILD.gn | 1 -
.../log_sources/chrome_internal_log_source.cc | 5 -
@@ -66,7 +68,7 @@ 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 +-
59 files changed, 52 insertions(+), 872 deletions(-)
61 files changed, 55 insertions(+), 879 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
@@ -326,6 +328,37 @@ diff --git a/chrome/browser/domain_reliability/service_factory.cc b/chrome/brows
}
} // namespace domain_reliability
diff --git a/chrome/browser/enterprise/connectors/device_trust/key_management/browser/commands/BUILD.gn b/chrome/browser/enterprise/connectors/device_trust/key_management/browser/commands/BUILD.gn
--- a/chrome/browser/enterprise/connectors/device_trust/key_management/browser/commands/BUILD.gn
+++ b/chrome/browser/enterprise/connectors/device_trust/key_management/browser/commands/BUILD.gn
@@ -40,7 +40,6 @@ source_set("commands") {
"win_key_rotation_command.h",
]
deps += [
- "//chrome/browser/google",
"//chrome/install_static:install_static_util",
"//chrome/installer/util:with_no_strings",
"//chrome/updater/app/server/win:updater_legacy_idl",
diff --git a/chrome/browser/enterprise/connectors/device_trust/key_management/browser/commands/win_key_rotation_command.cc b/chrome/browser/enterprise/connectors/device_trust/key_management/browser/commands/win_key_rotation_command.cc
--- a/chrome/browser/enterprise/connectors/device_trust/key_management/browser/commands/win_key_rotation_command.cc
+++ b/chrome/browser/enterprise/connectors/device_trust/key_management/browser/commands/win_key_rotation_command.cc
@@ -53,13 +53,10 @@ HRESULT RunGoogleUpdateElevatedCommand(const wchar_t* command,
if (args.size() > kMaxCommandArgs)
return E_INVALIDARG;
- auto get_command_result = GetUpdaterAppCommand(command);
- if (!get_command_result.has_value()) {
- return get_command_result.error();
- }
+ if ((true))
+ return E_INVALIDARG;
- Microsoft::WRL::ComPtr<IAppCommandWeb> app_command =
- get_command_result.value();
+ Microsoft::WRL::ComPtr<IAppCommandWeb> app_command;
_variant_t vargs[kMaxCommandArgs];
for (size_t i = 0; i < args.size(); ++i) {
vargs[i] = args[i].c_str();
diff --git a/chrome/browser/extensions/BUILD.gn b/chrome/browser/extensions/BUILD.gn
--- a/chrome/browser/extensions/BUILD.gn
+++ b/chrome/browser/extensions/BUILD.gn