v117 patches

This commit is contained in:
Carmelo Messina
2023-09-05 16:26:16 +02:00
parent aed93b83d7
commit 52b7e1c1f7
222 changed files with 40801 additions and 36142 deletions
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Tue, 30 May 2023 15:45:59 +0000
Subject: 114 temp disable find_bad_constructs external repo
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
build/config/android/rules.gni | 1 +
crypto/BUILD.gn | 1 +
@@ -12,7 +13,7 @@ Subject: 114 temp disable find_bad_constructs external repo
diff --git a/build/config/android/rules.gni b/build/config/android/rules.gni
--- a/build/config/android/rules.gni
+++ b/build/config/android/rules.gni
@@ -4950,6 +4950,7 @@ if (enable_java_templates && is_android) {
@@ -4989,6 +4989,7 @@ if (enable_java_templates && is_android) {
_module_build_config = _module.build_config
_module_build_config_target = _module.build_config_target
_module_target_name = get_label_info(_module_target, "name")
@@ -34,7 +35,7 @@ diff --git a/crypto/BUILD.gn b/crypto/BUILD.gn
diff --git a/net/BUILD.gn b/net/BUILD.gn
--- a/net/BUILD.gn
+++ b/net/BUILD.gn
@@ -1653,6 +1653,7 @@ component("net") {
@@ -1657,6 +1657,7 @@ component("net") {
configs -= [ "//build/config/compiler:default_optimization" ]
configs += [ "//build/config/compiler:optimize_max" ]
}
@@ -3,6 +3,7 @@ Date: Fri, 21 Apr 2023 13:10:20 +0000
Subject: Add a flag to disable GamePad API
Adds restrict-gamepad-access flag (default active) to disable GamePad API.
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
chrome/browser/flag-metadata.json | 4 ++--
chrome/browser/flag_descriptions.cc | 2 +-
@@ -13,7 +14,7 @@ Adds restrict-gamepad-access flag (default active) to disable GamePad API.
diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json
--- a/chrome/browser/flag-metadata.json
+++ b/chrome/browser/flag-metadata.json
@@ -6842,9 +6842,9 @@
@@ -7094,9 +7094,9 @@
"expiry_milestone": 117
},
{
@@ -28,7 +29,7 @@ diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.js
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
@@ -2984,7 +2984,7 @@ const char kReduceAcceptLanguageDescription[] =
@@ -3038,7 +3038,7 @@ const char kReduceAcceptLanguageDescription[] =
const char kRestrictGamepadAccessName[] = "Restrict gamepad access";
const char kRestrictGamepadAccessDescription[] =
@@ -41,7 +42,7 @@ diff --git a/device/gamepad/public/cpp/gamepad_features.cc b/device/gamepad/publ
--- a/device/gamepad/public/cpp/gamepad_features.cc
+++ b/device/gamepad/public/cpp/gamepad_features.cc
@@ -27,8 +27,8 @@ BASE_FEATURE(kEnableWindowsGamingInputDataFetcher,
base::FEATURE_DISABLED_BY_DEFAULT);
base::FEATURE_ENABLED_BY_DEFAULT);
BASE_FEATURE(kRestrictGamepadAccess,
- "RestrictGamepadAccess",
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Mon, 21 Aug 2023 14:03:25 +0000
Subject: Add option to disable snapshots
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
.../tab_management/TabGridViewBinder.java | 8 +++-
.../java/res/xml/privacy_preferences.xml | 5 +++
@@ -14,7 +15,7 @@ Subject: Add option to disable snapshots
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridViewBinder.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridViewBinder.java
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridViewBinder.java
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridViewBinder.java
@@ -314,8 +314,12 @@ class TabGridViewBinder {
@@ -315,8 +315,12 @@ class TabGridViewBinder {
updateThumbnailMatrix(thumbnail, result, thumbnailSize);
thumbnail.setImageBitmap(result);
} else if (isMostRecentRequest) {
@@ -47,18 +48,18 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
@@ -144,6 +144,7 @@ import org.chromium.chrome.browser.page_info.ChromePageInfoHighlight;
import org.chromium.chrome.browser.partnercustomizations.PartnerBrowserCustomizations;
@@ -146,6 +146,7 @@ import org.chromium.chrome.browser.preferences.ChromePreferenceKeys;
import org.chromium.chrome.browser.preferences.Pref;
import org.chromium.chrome.browser.preferences.SharedPreferencesManager;
import org.chromium.chrome.browser.printing.TabPrinter;
+import org.chromium.chrome.browser.privacy.settings.PrivacySettings;
import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.readaloud.ReadAloudController;
import org.chromium.chrome.browser.selection.SelectionPopupBackPressHandler;
import org.chromium.chrome.browser.settings.SettingsLauncherImpl;
@@ -642,7 +643,7 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -657,7 +658,7 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
TabModelSelector tabModelSelector = mTabModelOrchestrator.getTabModelSelector();
setTabContentManager(new TabContentManager(this, getContentOffsetProvider(),
setTabContentManager(new TabContentManager(this, mBrowserControlsManagerSupplier.get(),
- !SysUtils.isLowEndDevice(),
+ !ContextUtils.getAppSharedPreferences().getBoolean(PrivacySettings.PREF_TABGRID_USE_ICONS, false),
tabModelSelector != null ? tabModelSelector::getTabById : null));
@@ -67,7 +68,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/content/TabContentManager.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/content/TabContentManager.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/content/TabContentManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/content/TabContentManager.java
@@ -331,9 +331,12 @@ public class TabContentManager {
@@ -333,9 +333,12 @@ public class TabContentManager {
* @param forceUpdate Whether to obtain the thumbnail from the live content.
* @param writeBack When {@code forceUpdate}, whether to write the thumbnail to cache.
*/
@@ -114,7 +115,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";
@@ -147,6 +160,21 @@ public class PrivacySettings extends PreferenceFragmentCompat
@@ -145,6 +158,21 @@ public class PrivacySettings extends PreferenceFragmentCompat
});
}
@@ -136,7 +137,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(preference -> {
@@ -297,6 +325,7 @@ public class PrivacySettings extends PreferenceFragmentCompat
@@ -293,6 +321,7 @@ public class PrivacySettings extends PreferenceFragmentCompat
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";
@@ -144,7 +145,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
@@ -320,6 +349,13 @@ public class PrivacySettings extends PreferenceFragmentCompat
@@ -316,6 +345,13 @@ public class PrivacySettings extends PreferenceFragmentCompat
SharedPreferences.Editor sharedPreferencesEditor = ContextUtils.getAppSharedPreferences().edit();
sharedPreferencesEditor.putBoolean(PREF_OPEN_EXTERNAL_LINKS_INCOGNITO, (boolean)newValue);
sharedPreferencesEditor.apply();
@@ -158,7 +159,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
}
return true;
}
@@ -360,6 +396,10 @@ public class PrivacySettings extends PreferenceFragmentCompat
@@ -356,6 +392,10 @@ public class PrivacySettings extends PreferenceFragmentCompat
: R.string.text_off);
}
@@ -172,7 +173,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
@@ -5239,6 +5239,14 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -5311,6 +5311,14 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
Your <ph name="FQDN">%1$s<ex>www.amazon.com</ex></ph> timer ran out. It'll start again tomorrow.
</message>
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Thu, 16 Feb 2023 15:28:16 +0000
Subject: Add setting to clear data on exit
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
chrome/android/chrome_java_sources.gni | 1 +
.../chrome/browser/ChromeTabbedActivity.java | 7 +-
@@ -33,7 +34,7 @@ Subject: Add setting to clear data on exit
diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni
--- a/chrome/android/chrome_java_sources.gni
+++ b/chrome/android/chrome_java_sources.gni
@@ -289,6 +289,7 @@ chrome_java_sources = [
@@ -300,6 +300,7 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/browsing_data/ClearBrowsingDataFragmentAdvanced.java",
"java/src/org/chromium/chrome/browser/browsing_data/ClearBrowsingDataFragmentBasic.java",
"java/src/org/chromium/chrome/browser/browsing_data/ClearBrowsingDataTabsFragment.java",
@@ -44,7 +45,7 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
@@ -140,6 +140,7 @@ import org.chromium.chrome.browser.profiles.ProfileManager;
@@ -141,6 +141,7 @@ import org.chromium.chrome.browser.profiles.ProfileManager;
import org.chromium.chrome.browser.quick_delete.QuickDeleteController;
import org.chromium.chrome.browser.quick_delete.QuickDeleteDelegateImpl;
import org.chromium.chrome.browser.quick_delete.QuickDeleteMetricsDelegate;
@@ -52,7 +53,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
import org.chromium.chrome.browser.read_later.ReadingListBackPressHandler;
import org.chromium.chrome.browser.read_later.ReadingListUtils;
import org.chromium.chrome.browser.reengagement.ReengagementNotificationController;
@@ -1283,7 +1284,11 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -1264,7 +1265,11 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
Intent intent = getIntent();
boolean hadCipherData =
@@ -68,7 +69,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/browsing_data/ClearBrowsingDataFragment.java b/chrome/android/java/src/org/chromium/chrome/browser/browsing_data/ClearBrowsingDataFragment.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/browsing_data/ClearBrowsingDataFragment.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/browsing_data/ClearBrowsingDataFragment.java
@@ -417,6 +417,10 @@ public abstract class ClearBrowsingDataFragment extends PreferenceFragmentCompat
@@ -404,6 +404,10 @@ public abstract class ClearBrowsingDataFragment extends PreferenceFragmentCompat
*/
protected abstract @ClearBrowsingDataTab int getClearBrowsingDataTabType();
@@ -77,9 +78,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/browsing_data/C
+ }
+
/**
* Returns the Array of time periods. Options are displayed in the same order as they appear
* in the array.
@@ -515,6 +519,7 @@ public abstract class ClearBrowsingDataFragment extends PreferenceFragmentCompat
* Decides whether a given dialog option should be selected when the dialog is initialized.
*
@@ -481,6 +485,7 @@ public abstract class ClearBrowsingDataFragment extends PreferenceFragmentCompat
* options.
*/
private void onClearButtonClicked() {
@@ -87,7 +88,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/browsing_data/C
if (shouldShowImportantSitesDialog()) {
showImportantDialogThenClear();
return;
@@ -548,6 +553,7 @@ public abstract class ClearBrowsingDataFragment extends PreferenceFragmentCompat
@@ -514,6 +519,7 @@ public abstract class ClearBrowsingDataFragment extends PreferenceFragmentCompat
Button clearButton = (Button) getView().findViewById(R.id.clear_button);
boolean isEnabled = !getSelectedOptions().isEmpty();
clearButton.setEnabled(isEnabled);
@@ -208,7 +209,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/browsing_data/C
diff --git a/chrome/app/settings_strings.grdp b/chrome/app/settings_strings.grdp
--- a/chrome/app/settings_strings.grdp
+++ b/chrome/app/settings_strings.grdp
@@ -2730,6 +2730,16 @@
@@ -2752,6 +2752,16 @@
<message name="IDS_SETTINGS_CLEAR_BROWSING_DATA" desc="Text for clear browsing data button in Privacy options">
Clear browsing data
</message>
@@ -240,7 +241,7 @@ diff --git a/chrome/browser/android/browsing_data/browsing_data_bridge.cc b/chro
diff --git a/chrome/browser/browsing_data/chrome_browsing_data_lifetime_manager.cc b/chrome/browser/browsing_data/chrome_browsing_data_lifetime_manager.cc
--- a/chrome/browser/browsing_data/chrome_browsing_data_lifetime_manager.cc
+++ b/chrome/browser/browsing_data/chrome_browsing_data_lifetime_manager.cc
@@ -326,8 +326,25 @@ void ChromeBrowsingDataLifetimeManager::Shutdown() {
@@ -329,8 +329,25 @@ void ChromeBrowsingDataLifetimeManager::Shutdown() {
void ChromeBrowsingDataLifetimeManager::ClearBrowsingDataForOnExitPolicy(
bool keep_browser_alive) {
@@ -268,7 +269,7 @@ diff --git a/chrome/browser/browsing_data/chrome_browsing_data_lifetime_manager.
if (!data_types.empty() &&
IsConditionSatisfiedForBrowsingDataRemoval(GetSyncTypesForPolicyPref(
@@ -427,6 +444,7 @@ void ChromeBrowsingDataLifetimeManager::StartScheduledBrowsingDataRemoval() {
@@ -439,6 +456,7 @@ void ChromeBrowsingDataLifetimeManager::StartScheduledBrowsingDataRemoval() {
bool ChromeBrowsingDataLifetimeManager::
IsConditionSatisfiedForBrowsingDataRemoval(
const syncer::UserSelectableTypeSet sync_types) {
@@ -279,7 +280,7 @@ diff --git a/chrome/browser/browsing_data/chrome_browsing_data_lifetime_manager.
diff --git a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.cc b/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.cc
--- a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.cc
+++ b/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.cc
@@ -419,6 +419,9 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData(
@@ -426,6 +426,9 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData(
delete_end_, CreateTaskCompletionClosure(TracingDataType::kHistory),
&history_task_tracker_);
}
@@ -289,7 +290,7 @@ diff --git a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.
if (ClipboardRecentContent::GetInstance())
ClipboardRecentContent::GetInstance()->SuppressClipboardContent();
@@ -469,7 +472,9 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData(
@@ -476,7 +479,9 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData(
prerender::NoStatePrefetchManager::CLEAR_PRERENDER_CONTENTS |
prerender::NoStatePrefetchManager::CLEAR_PRERENDER_HISTORY);
}
@@ -299,7 +300,7 @@ diff --git a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.
// The saved Autofill profiles and credit cards can include the origin from
// which these profiles and credit cards were learned. These are a form of
// history, so clear them as well.
@@ -490,7 +495,9 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData(
@@ -497,7 +502,9 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData(
if (data_manager)
data_manager->Refresh();
}
@@ -309,7 +310,7 @@ diff --git a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.
base::ThreadPool::PostTaskAndReply(
FROM_HERE, {base::TaskPriority::USER_VISIBLE, base::MayBlock()},
base::BindOnce(
@@ -565,9 +572,13 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData(
@@ -572,9 +579,13 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData(
}
device_event_log::Clear(delete_begin_, delete_end_);
@@ -326,7 +327,7 @@ diff --git a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.
diff --git a/chrome/browser/extensions/api/settings_private/prefs_util.cc b/chrome/browser/extensions/api/settings_private/prefs_util.cc
--- a/chrome/browser/extensions/api/settings_private/prefs_util.cc
+++ b/chrome/browser/extensions/api/settings_private/prefs_util.cc
@@ -500,6 +500,23 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlistedKeys() {
@@ -506,6 +506,23 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlistedKeys() {
(*s_allowlist)[browsing_data::prefs::kLastClearBrowsingDataTab] =
settings_api::PrefType::PREF_TYPE_NUMBER;
@@ -383,7 +384,7 @@ diff --git a/chrome/browser/profiles/android/profile_manager_utils.cc b/chrome/b
diff --git a/chrome/browser/profiles/profile_manager.cc b/chrome/browser/profiles/profile_manager.cc
--- a/chrome/browser/profiles/profile_manager.cc
+++ b/chrome/browser/profiles/profile_manager.cc
@@ -1444,6 +1444,19 @@ void ProfileManager::DoFinalInit(ProfileInfo* profile_info,
@@ -1449,6 +1449,19 @@ void ProfileManager::DoFinalInit(ProfileInfo* profile_info,
}
}
@@ -406,7 +407,7 @@ diff --git a/chrome/browser/profiles/profile_manager.cc b/chrome/browser/profile
diff --git a/chrome/browser/profiles/profile_manager.h b/chrome/browser/profiles/profile_manager.h
--- a/chrome/browser/profiles/profile_manager.h
+++ b/chrome/browser/profiles/profile_manager.h
@@ -198,6 +198,8 @@ class ProfileManager : public Profile::Delegate {
@@ -202,6 +202,8 @@ class ProfileManager : public Profile::Delegate {
// profiles.
std::vector<Profile*> GetLoadedProfiles() const;
@@ -483,7 +484,7 @@ diff --git a/chrome/browser/resources/settings/clear_browsing_data_dialog/clear_
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -1582,6 +1582,9 @@ Your Google account may have other forms of browsing history like searches and a
@@ -1609,6 +1609,9 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_CLEAR_BROWSING_DATA_BASIC_TAB_TITLE" desc="The title of the tab showing the basic clear browsing data options.">
Basic
</message>
@@ -496,7 +497,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
diff --git a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc
--- a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc
+++ b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc
@@ -1771,6 +1771,7 @@ void AddPrivacyStrings(content::WebUIDataSource* html_source,
@@ -1813,6 +1813,7 @@ void AddPrivacyStrings(content::WebUIDataSource* html_source,
{"clearedData", IDS_SETTINGS_CLEARED_DATA},
{"clearBrowsingData", IDS_SETTINGS_CLEAR_BROWSING_DATA},
{"clearBrowsingDataDescription", IDS_SETTINGS_CLEAR_DATA_DESCRIPTION},
@@ -555,7 +556,7 @@ diff --git a/components/browsing_data/core/browsing_data_policies_utils.h b/comp
diff --git a/components/browsing_data/core/browsing_data_utils.cc b/components/browsing_data/core/browsing_data_utils.cc
--- a/components/browsing_data/core/browsing_data_utils.cc
+++ b/components/browsing_data/core/browsing_data_utils.cc
@@ -318,6 +318,40 @@ bool GetDeletionPreferenceFromDataType(
@@ -327,6 +327,40 @@ bool GetDeletionPreferenceFromDataType(
BrowsingDataType data_type,
ClearBrowsingDataTab clear_browsing_data_tab,
std::string* out_pref) {
@@ -4,6 +4,8 @@ Subject: Add setting to invert tap and long tap
Reverses single tap to long tap in android for accessibility reasons.
The feature can be activated from the accessibility settings.
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
chrome/android/java/res/values/ids.xml | 1 +
.../ChromeAccessibilitySettingsDelegate.java | 18 ++++++++++
@@ -72,7 +74,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/s
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuItem.java b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuItem.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuItem.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuItem.java
@@ -89,8 +89,9 @@ class ChromeContextMenuItem {
@@ -88,8 +88,9 @@ class ChromeContextMenuItem {
int SHARE_HIGHLIGHT = 32;
int REMOVE_HIGHLIGHT = 33;
int LEARN_MORE = 34;
@@ -83,7 +85,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr
}
/**
@@ -132,6 +133,7 @@ class ChromeContextMenuItem {
@@ -131,6 +132,7 @@ class ChromeContextMenuItem {
R.id.contextmenu_share_highlight, // Item.SHARE_HIGHLIGHT
R.id.contextmenu_remove_highlight, // Item.REMOVE_HIGHLIGHT
R.id.contextmenu_learn_more, // Item.LEARN_MORE
@@ -91,7 +93,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr
};
/**
@@ -173,6 +175,7 @@ class ChromeContextMenuItem {
@@ -172,6 +174,7 @@ class ChromeContextMenuItem {
R.string.contextmenu_share_highlight, // Item.SHARE_HIGHLIGHT
R.string.contextmenu_remove_highlight, // Item.REMOVE_HIGHLIGHT
R.string.contextmenu_learn_more, // Item.LEARN_MORE
@@ -102,7 +104,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java
@@ -240,6 +240,9 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
@@ -239,6 +239,9 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
if (mParams.isAnchor()) {
ModelList linkGroup = new ModelList();
@@ -112,7 +114,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr
if (FirstRunStatus.getFirstRunFlowComplete() && !isEmptyUrl(mParams.getUrl())
&& UrlUtilities.isAcceptedScheme(mParams.getUrl())) {
if (mMode == ContextMenuMode.NORMAL) {
@@ -598,6 +601,8 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
@@ -588,6 +591,8 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
ShareHelper.shareDirectly(
params, ShareHelper.getLastShareComponentName(), getProfile(), false);
});
@@ -142,18 +144,18 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextM
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -7921,6 +7921,11 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kMoveTopToolbarToBottomDescription, kOsAndroid,
FEATURE_VALUE_TYPE(features::kMoveTopToolbarToBottom)},
@@ -8085,6 +8085,11 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(features::kElasticOverscroll)},
#endif
+ {"show-always-context-menu-on-links",
+ flag_descriptions::kShowAlwaysContextMenuOnLinksName,
+ flag_descriptions::kShowAlwaysContextMenuOnLinksDescription, kOsAndroid,
+ FEATURE_VALUE_TYPE(blink::features::kShowAlwaysContextMenuOnLinks)},
+
{"scroll-unification", flag_descriptions::kScrollUnificationName,
flag_descriptions::kScrollUnificationDescription, kOsAll,
FEATURE_VALUE_TYPE(features::kScrollUnification)},
{"device-posture", flag_descriptions::kDevicePostureName,
flag_descriptions::kDevicePostureDescription, kOsAll,
FEATURE_VALUE_TYPE(features::kDevicePosture)},
diff --git a/chrome/browser/contextmenu/java/src/org/chromium/chrome/browser/contextmenu/ContextMenuItemDelegate.java b/chrome/browser/contextmenu/java/src/org/chromium/chrome/browser/contextmenu/ContextMenuItemDelegate.java
--- a/chrome/browser/contextmenu/java/src/org/chromium/chrome/browser/contextmenu/ContextMenuItemDelegate.java
+++ b/chrome/browser/contextmenu/java/src/org/chromium/chrome/browser/contextmenu/ContextMenuItemDelegate.java
@@ -169,7 +171,7 @@ diff --git a/chrome/browser/contextmenu/java/src/org/chromium/chrome/browser/con
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
@@ -1970,6 +1970,10 @@ const char kMoveTopToolbarToBottomName[] = "Move top toolbar to bottom";
@@ -2002,6 +2002,10 @@ const char kMoveTopToolbarToBottomName[] = "Move top toolbar to bottom";
const char kMoveTopToolbarToBottomDescription[] =
"Move the top toolbar to the bottom.";
@@ -183,7 +185,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -1104,6 +1104,9 @@ extern const char kImprovedKeyboardShortcutsDescription[];
@@ -1132,6 +1132,9 @@ extern const char kImprovedKeyboardShortcutsDescription[];
extern const char kMoveTopToolbarToBottomName[];
extern const char kMoveTopToolbarToBottomDescription[];
@@ -196,10 +198,10 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc
--- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -314,6 +314,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
@@ -320,6 +320,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
&kTabGroupsAndroid,
&kTabGroupsContinuationAndroid,
&kTabGroupsForTablets,
&kDiscoverFeedMultiColumn,
+ &blink::features::kShowAlwaysContextMenuOnLinks,
&kTabStripRedesign,
&kTabletToolbarReordering,
@@ -207,7 +209,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
--- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
@@ -312,6 +312,8 @@ public abstract class ChromeFeatureList {
@@ -317,6 +317,8 @@ public abstract class ChromeFeatureList {
public static final String METRICS_SETTINGS_ANDROID = "MetricsSettingsAndroid";
public static final String MOVE_TOP_TOOLBAR_TO_BOTTOM =
"MoveTopToolbarToBottom";
@@ -216,7 +218,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
public static final String NOTIFICATION_PERMISSION_VARIANT = "NotificationPermissionVariant";
public static final String NOTIFICATION_PERMISSION_BOTTOM_SHEET =
"NotificationPermissionBottomSheet";
@@ -571,6 +573,8 @@ public abstract class ChromeFeatureList {
@@ -578,6 +580,8 @@ public abstract class ChromeFeatureList {
new CachedFlag(OMNIBOX_MATCH_TOOLBAR_AND_STATUS_BAR_COLOR, false);
public static final CachedFlag sMoveTopToolbarToBottom =
new CachedFlag(MOVE_TOP_TOOLBAR_TO_BOTTOM, false);
@@ -225,7 +227,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
public static final CachedFlag sOmniboxModernizeVisualUpdate =
new CachedFlag(OMNIBOX_MODERNIZE_VISUAL_UPDATE, false);
public static final CachedFlag sOmniboxMostVisitedTilesAddRecycledViewPool =
@@ -693,6 +697,7 @@ public abstract class ChromeFeatureList {
@@ -701,6 +705,7 @@ public abstract class ChromeFeatureList {
sTabStripRedesign,
sTabStripStartupRefactoring,
sTabletToolbarReordering,
@@ -236,7 +238,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -1749,6 +1749,12 @@ Your Google account may have other forms of browsing history like searches and a
@@ -1776,6 +1776,12 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_MOVE_TOOLBAR_BOTTOM_SUMMARY" desc="Summary of the preference that allows the user to move toolbar on bottom.">
Move toolbar to bottom
</message>
@@ -249,7 +251,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
<!-- Safety check -->
<message name="IDS_PREFS_SAFETY_CHECK" desc="Title of the Safety check element in settings, allowing the user to check multiple areas of browser safety. [CHAR_LIMIT=32]">
@@ -2750,6 +2756,9 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -2792,6 +2798,9 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<message name="IDS_CONTEXTMENU_OPEN_IN_NEW_CHROME_TAB" desc="Context sensitive menu item to open the selected link in a new Chrome tab from Chrome Custom Tab. [CHAR_LIMIT=30]">
Open in new Chrome tab
</message>
@@ -331,7 +333,7 @@ diff --git a/components/browser_ui/accessibility/android/java/src/org/chromium/c
diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/features.cc
--- a/third_party/blink/common/features.cc
+++ b/third_party/blink/common/features.cc
@@ -217,6 +217,10 @@ BASE_FEATURE(kBackgroundResourceFetch,
@@ -227,6 +227,10 @@ BASE_FEATURE(kBackgroundResourceFetch,
"BackgroundResourceFetch",
base::FEATURE_DISABLED_BY_DEFAULT);
@@ -345,7 +347,7 @@ diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/fea
diff --git a/third_party/blink/public/common/features.h b/third_party/blink/public/common/features.h
--- a/third_party/blink/public/common/features.h
+++ b/third_party/blink/public/common/features.h
@@ -127,6 +127,8 @@ BLINK_COMMON_EXPORT BASE_DECLARE_FEATURE(kBackForwardCacheWithKeepaliveRequest);
@@ -134,6 +134,8 @@ BLINK_COMMON_EXPORT BASE_DECLARE_FEATURE(kBackForwardCacheWithKeepaliveRequest);
BLINK_COMMON_EXPORT BASE_DECLARE_FEATURE(kBackgroundResourceFetch);
@@ -365,7 +367,7 @@ diff --git a/third_party/blink/renderer/core/html/html_anchor_element.cc b/third
#include "third_party/blink/renderer/core/page/page.h"
#include "third_party/blink/renderer/core/speculation_rules/document_speculation_rules.h"
#include "third_party/blink/renderer/platform/heap/garbage_collected.h"
@@ -436,6 +437,17 @@ void HTMLAnchorElement::NavigateToHyperlink(ResourceRequest request,
@@ -446,6 +447,17 @@ void HTMLAnchorElement::NavigateToHyperlink(ResourceRequest request,
bool is_trusted,
base::TimeTicks platform_time_stamp,
KURL completed_url) {
@@ -383,8 +385,8 @@ diff --git a/third_party/blink/renderer/core/html/html_anchor_element.cc b/third
LocalDOMWindow* window = GetDocument().domWindow();
if (!window) {
return;
@@ -489,6 +501,15 @@ void HTMLAnchorElement::NavigateToHyperlink(ResourceRequest request,
/*element=*/this));
@@ -499,6 +511,15 @@ void HTMLAnchorElement::NavigateToHyperlink(ResourceRequest request,
/*element=*/this, request.HasUserGesture()));
}
+ if (!do_not_show_context_menu &&
@@ -399,7 +401,7 @@ diff --git a/third_party/blink/renderer/core/html/html_anchor_element.cc b/third
Frame* target_frame =
frame->Tree().FindOrCreateFrameForNavigation(frame_request, target).frame;
@@ -508,7 +529,7 @@ void HTMLAnchorElement::NavigateToHyperlink(ResourceRequest request,
@@ -518,7 +539,7 @@ void HTMLAnchorElement::NavigateToHyperlink(ResourceRequest request,
}
}
@@ -408,7 +410,7 @@ diff --git a/third_party/blink/renderer/core/html/html_anchor_element.cc b/third
event.SetDefaultHandled();
LocalDOMWindow* window = GetDocument().domWindow();
@@ -607,12 +628,12 @@ void HTMLAnchorElement::HandleClick(Event& event) {
@@ -617,12 +638,12 @@ void HTMLAnchorElement::HandleClick(Event& event) {
}
NavigationPolicy navigation_policy = NavigationPolicyFromEvent(&event);
@@ -425,7 +427,7 @@ diff --git a/third_party/blink/renderer/core/html/html_anchor_element.cc b/third
// If Alt is held down it will force a download, however, wait to see if
// this is an alt-double-click which should instead select the text of the
// link.
@@ -624,7 +645,9 @@ void HTMLAnchorElement::HandleClick(Event& event) {
@@ -634,7 +655,9 @@ void HTMLAnchorElement::HandleClick(Event& event) {
frame->GetEventHandler().SetDownloadModifierTaskHandle(
std::move(task_handle));
} else {
@@ -477,7 +479,7 @@ diff --git a/third_party/blink/renderer/core/html/html_image_element.cc b/third_
#include "third_party/blink/renderer/core/frame/attribution_src_loader.h"
#include "third_party/blink/renderer/core/frame/deprecation/deprecation.h"
#include "third_party/blink/renderer/core/frame/local_dom_window.h"
@@ -62,6 +63,7 @@
@@ -63,6 +64,7 @@
#include "third_party/blink/renderer/core/media_type_names.h"
#include "third_party/blink/renderer/core/page/chrome_client.h"
#include "third_party/blink/renderer/core/page/page.h"
@@ -485,7 +487,7 @@ diff --git a/third_party/blink/renderer/core/html/html_image_element.cc b/third_
#include "third_party/blink/renderer/core/paint/timing/paint_timing.h"
#include "third_party/blink/renderer/core/probe/core_probes.h"
#include "third_party/blink/renderer/core/style/content_data.h"
@@ -718,6 +720,21 @@ void HTMLImageElement::DidFinishLifecycleUpdate(
@@ -744,6 +746,21 @@ void HTMLImageElement::DidFinishLifecycleUpdate(
}
}
@@ -510,7 +512,7 @@ diff --git a/third_party/blink/renderer/core/html/html_image_element.cc b/third_
diff --git a/third_party/blink/renderer/core/html/html_image_element.h b/third_party/blink/renderer/core/html/html_image_element.h
--- a/third_party/blink/renderer/core/html/html_image_element.h
+++ b/third_party/blink/renderer/core/html/html_image_element.h
@@ -217,6 +217,8 @@ class CORE_EXPORT HTMLImageElement final
@@ -220,6 +220,8 @@ class CORE_EXPORT HTMLImageElement final
void DidAddUserAgentShadowRoot(ShadowRoot&) override;
void AdjustStyle(ComputedStyleBuilder&) override;
@@ -522,7 +524,7 @@ diff --git a/third_party/blink/renderer/core/html/html_image_element.h b/third_p
diff --git a/third_party/blink/renderer/core/page/context_menu_controller.cc b/third_party/blink/renderer/core/page/context_menu_controller.cc
--- a/third_party/blink/renderer/core/page/context_menu_controller.cc
+++ b/third_party/blink/renderer/core/page/context_menu_controller.cc
@@ -171,14 +171,16 @@ void ContextMenuController::DocumentDetached(Document* document) {
@@ -226,14 +226,16 @@ void ContextMenuController::DocumentDetached(Document* document) {
}
}
@@ -542,7 +544,7 @@ diff --git a/third_party/blink/renderer/core/page/context_menu_controller.cc b/t
mouse_event->SetDefaultHandled();
}
@@ -414,7 +416,8 @@ bool ContextMenuController::ShouldShowContextMenuFromTouch(
@@ -451,7 +453,8 @@ bool ContextMenuController::ShouldShowContextMenuFromTouch(
bool ContextMenuController::ShowContextMenu(LocalFrame* frame,
const PhysicalOffset& point,
WebMenuSourceType source_type,
@@ -552,7 +554,7 @@ diff --git a/third_party/blink/renderer/core/page/context_menu_controller.cc b/t
// Displaying the context menu in this function is a big hack as we don't
// have context, i.e. whether this is being invoked via a script or in
// response to user input (Mouse event WM_RBUTTONDOWN,
@@ -437,6 +440,15 @@ bool ContextMenuController::ShowContextMenu(LocalFrame* frame,
@@ -474,6 +477,15 @@ bool ContextMenuController::ShowContextMenu(LocalFrame* frame,
if (!result.InnerNodeOrImageMapImage())
return false;
@@ -568,7 +570,7 @@ diff --git a/third_party/blink/renderer/core/page/context_menu_controller.cc b/t
// Clear any previously set cached results if we are resetting the hit test
// result.
image_selection_cached_result_ = nullptr;
@@ -790,11 +802,13 @@ bool ContextMenuController::ShowContextMenu(LocalFrame* frame,
@@ -827,11 +839,13 @@ bool ContextMenuController::ShowContextMenu(LocalFrame* frame,
data.form_renderer_id = GetFormRendererId(result);
data.field_renderer_id = GetFieldRendererId(result);
@@ -3,6 +3,8 @@ Date: Mon, 7 Aug 2023 11:02:18 +0000
Subject: Allow DocumentPiP if PopupsAndRedirects are active
Allow documentPiP api use only with content setting popup allowed
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
.../picture_in_picture_controller_impl.cc | 7 +++++++
1 file changed, 7 insertions(+)
@@ -10,7 +12,7 @@ Allow documentPiP api use only with content setting popup allowed
diff --git a/third_party/blink/renderer/modules/document_picture_in_picture/picture_in_picture_controller_impl.cc b/third_party/blink/renderer/modules/document_picture_in_picture/picture_in_picture_controller_impl.cc
--- a/third_party/blink/renderer/modules/document_picture_in_picture/picture_in_picture_controller_impl.cc
+++ b/third_party/blink/renderer/modules/document_picture_in_picture/picture_in_picture_controller_impl.cc
@@ -361,6 +361,13 @@ void PictureInPictureControllerImpl::CreateDocumentPictureInPictureWindow(
@@ -370,6 +370,13 @@ void PictureInPictureControllerImpl::CreateDocumentPictureInPictureWindow(
return;
}
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Wed, 19 Apr 2023 09:59:18 +0000
Subject: Clear CORS Preflight Cache on clearing data
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
services/network/cors/preflight_cache.cc | 4 ++++
services/network/cors/preflight_cache.h | 2 ++
@@ -40,7 +41,7 @@ diff --git a/services/network/cors/preflight_cache.h b/services/network/cors/pre
diff --git a/services/network/cors/preflight_controller.cc b/services/network/cors/preflight_controller.cc
--- a/services/network/cors/preflight_controller.cc
+++ b/services/network/cors/preflight_controller.cc
@@ -674,6 +674,10 @@ void PreflightController::ClearCorsPreflightCache(
@@ -803,6 +803,10 @@ void PreflightController::ClearCorsPreflightCache(
cache_.ClearCache(std::move(url_filter));
}
@@ -54,9 +55,9 @@ diff --git a/services/network/cors/preflight_controller.cc b/services/network/co
diff --git a/services/network/cors/preflight_controller.h b/services/network/cors/preflight_controller.h
--- a/services/network/cors/preflight_controller.h
+++ b/services/network/cors/preflight_controller.h
@@ -139,6 +139,8 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) PreflightController final {
const net::NetLogWithSource& net_log,
bool acam_preflight_spec_conformant);
@@ -141,6 +141,8 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) PreflightController final {
mojo::PendingRemote<mojom::URLLoaderNetworkServiceObserver>
url_loader_network_service_observer);
+ void ClearCache();
+
@@ -78,7 +79,7 @@ diff --git a/services/network/cors/preflight_result.cc b/services/network/cors/p
diff --git a/services/network/network_context.cc b/services/network/network_context.cc
--- a/services/network/network_context.cc
+++ b/services/network/network_context.cc
@@ -1070,6 +1070,8 @@ void NetworkContext::ClearHttpCache(base::Time start_time,
@@ -1084,6 +1084,8 @@ void NetworkContext::ClearHttpCache(base::Time start_time,
base::BindOnce(&NetworkContext::OnHttpCacheCleared,
base::Unretained(this), std::move(callback))));
@@ -4,6 +4,8 @@ Subject: Compress libchrome to free up some space
upstream removed ModernLinker support for developer build (apk releases).
see https://bugs.chromium.org/p/chromium/issues/detail?id=1383210
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
chrome/android/chrome_public_apk_tmpl.gni | 1 +
1 file changed, 1 insertion(+)
@@ -11,7 +13,7 @@ see https://bugs.chromium.org/p/chromium/issues/detail?id=1383210
diff --git a/chrome/android/chrome_public_apk_tmpl.gni b/chrome/android/chrome_public_apk_tmpl.gni
--- a/chrome/android/chrome_public_apk_tmpl.gni
+++ b/chrome/android/chrome_public_apk_tmpl.gni
@@ -632,6 +632,7 @@ template("chrome_common_apk_or_module_tmpl") {
@@ -637,6 +637,7 @@ template("chrome_common_apk_or_module_tmpl") {
[ "//components/crash/core/app:chrome_crashpad_handler_named_as_so" ]
loadable_modules += [ "$root_out_dir/libchrome_crashpad_handler.so" ]
library_always_compress += [ "libchrome_crashpad_handler.so" ]
+10 -9
View File
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Wed, 19 Jul 2023 12:37:39 +0000
Subject: Cromite Branding
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
build/BUILD.gn | 8 ++++
build/config/BUILDCONFIG.gn | 4 ++
@@ -81,7 +82,7 @@ diff --git a/build/config/BUILDCONFIG.gn b/build/config/BUILDCONFIG.gn
diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/AndroidManifest.xml
--- a/chrome/android/java/AndroidManifest.xml
+++ b/chrome/android/java/AndroidManifest.xml
@@ -172,7 +172,7 @@ by a child template that "extends" this file.
@@ -170,7 +170,7 @@ by a child template that "extends" this file.
<application android:name="{% block application_name %}org.chromium.chrome.browser.base.SplitChromeApplication{% endblock %}"
android:icon="@drawable/ic_launcher"
android:roundIcon="@drawable/ic_launcher_round"
@@ -9157,18 +9158,18 @@ diff --git a/chrome/app/extensions_strings.grdp b/chrome/app/extensions_strings.
<message name="IDS_EXTENSIONS_NO_DESCRIPTION" desc="The message shown to the user when an extension does not have any description.">
No description provided
@@ -503,7 +503,7 @@
Extensions
My extensions
</message>
<message name="IDS_EXTENSIONS_SIDEBAR_OPEN_CHROME_WEB_STORE" desc="The text for the link to get more extensions in the extensions page.">
- Open Chrome Web Store
+ Open Chromedontreplace Web Store
<message name="IDS_EXTENSIONS_SIDEBAR_DISCOVER_MORE" desc="The text displayed in the sidebar to open the Chrome Web Store to get more extensions.">
- Discover more extensions and themes on the <ph name="BEGIN_LINK">&lt;a target="_blank" href="$1"&gt;</ph>Chrome Web Store<ph name="END_LINK">&lt;/a&gt; <ex>&lt;/a&gt;</ex> </ph>
+ Discover more extensions and themes on the <ph name="BEGIN_LINK">&lt;a target="_blank" href="$1"&gt;</ph>Chromedontreplace Web Store<ph name="END_LINK">&lt;/a&gt; <ex>&lt;/a&gt;</ex> </ph>
</message>
<message name="IDS_EXTENSIONS_SIDEBAR_KEYBOARD_SHORTCUTS" desc="The text for the link to manage keyboard shortcuts for extensions.">
Keyboard shortcuts
diff --git a/chrome/app/settings_strings.grdp b/chrome/app/settings_strings.grdp
--- a/chrome/app/settings_strings.grdp
+++ b/chrome/app/settings_strings.grdp
@@ -255,7 +255,7 @@
@@ -263,7 +263,7 @@
Change
</message>
<message name="IDS_SETTINGS_WEB_STORE" desc="Sub-label about choosing something from the Chrome Web Store.">
@@ -13122,7 +13123,7 @@ e)fqMZZ`3a)Ds&5H<cfp<0000<MNUMnLSTYHt&Yn8
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -2000,6 +2000,7 @@ static_library("browser") {
@@ -2009,6 +2009,7 @@ static_library("browser") {
"//build:chromeos_buildflags",
"//build/config/chromebox_for_meetings:buildflags",
"//build/config/compiler:compiler_buildflags",
@@ -13141,7 +13142,7 @@ diff --git a/chrome/browser/prefs/chrome_pref_service_factory.cc b/chrome/browse
#include "chrome/browser/browser_process.h"
#include "chrome/browser/policy/chrome_browser_policy_connector.h"
#include "chrome/browser/prefs/chrome_command_line_pref_store.h"
@@ -310,10 +311,7 @@ std::unique_ptr<ProfilePrefStoreManager> CreateProfilePrefStoreManager(
@@ -304,10 +305,7 @@ std::unique_ptr<ProfilePrefStoreManager> CreateProfilePrefStoreManager(
#endif
std::string seed;
CHECK(ui::ResourceBundle::HasSharedInstance());
@@ -13184,7 +13185,7 @@ diff --git a/chrome/browser/resources/settings/settings_menu/settings_menu.html
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
@@ -2152,7 +2152,7 @@ Your Google account may have other forms of browsing history like searches and a
@@ -2185,7 +2185,7 @@ Your Google account may have other forms of browsing history like searches and a
About Chrome
</message>
<message name="IDS_LEGAL_INFORMATION_SUMMARY" desc="Summary for legal information" meaning="Android">
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Mon, 5 Jun 2023 17:02:33 +0000
Subject: Deprecate Data URL in SVGUseElement
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
.../blink/renderer/platform/runtime_enabled_features.json5 | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
@@ -9,7 +10,7 @@ Subject: Deprecate Data URL in SVGUseElement
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -2967,8 +2967,8 @@
@@ -2974,8 +2974,8 @@
base_feature: "none",
},
{
@@ -19,6 +20,6 @@ diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+ status: "stable", // by default
},
{
name: "RemoveLegacySizeComputation",
name: "RemoveMobileViewportDoubleTap",
--
2.25.1
@@ -1,7 +1,8 @@
From: Your Name <you@example.com>
From: uazo <uazo@users.noreply.github.com>
Date: Tue, 14 Feb 2023 16:29:12 +0000
Subject: Disable BackForwardCache
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
content/public/common/content_features.cc | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
@@ -9,7 +10,7 @@ Subject: Disable BackForwardCache
diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc
--- a/content/public/common/content_features.cc
+++ b/content/public/common/content_features.cc
@@ -97,9 +97,9 @@ BASE_FEATURE(kBackgroundFetch,
@@ -109,9 +109,9 @@ BASE_FEATURE(kBackgroundFetch,
base::FEATURE_ENABLED_BY_DEFAULT);
// Enable using the BackForwardCache.
@@ -2,29 +2,30 @@ From: uazo <uazo@users.noreply.github.com>
Date: Sat, 3 Jun 2023 15:04:55 +0000
Subject: Disable Compression Dictionary Transport
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
.../renderer/platform/runtime_enabled_features.json5 | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
.../blink/renderer/platform/runtime_enabled_features.json5 | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -670,16 +670,16 @@
status: "experimental",
@@ -680,16 +680,18 @@
status: "stable",
},
{
- name: "CompressionDictionaryTransport",
- base_feature_status: "enabled",
- copied_from_base_feature_if: "overridden",
+ name: "CompressionDictionaryTransport", // need to be disabled
base_feature: "none",
origin_trial_feature_name: "CompressionDictionaryTransport",
origin_trial_allows_third_party: true,
public: true,
+ status: "experimental",
},
{
- name: "CompressionDictionaryTransportBackend",
+ name: "CompressionDictionaryTransportBackend", // need to be disabled
base_feature_status: "disabled",
base_feature: "none",
public: true,
+ status: "experimental",
},
+7 -6
View File
@@ -1,7 +1,8 @@
From: Your Name <you@example.com>
From: uazo <uazo@users.noreply.github.com>
Date: Tue, 14 Feb 2023 16:26:17 +0000
Subject: Disable FedCm
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
content/public/common/content_features.cc | 10 +++++-----
.../renderer/platform/runtime_enabled_features.json5 | 2 +-
@@ -10,7 +11,7 @@ Subject: Disable FedCm
diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc
--- a/content/public/common/content_features.cc
+++ b/content/public/common/content_features.cc
@@ -389,7 +389,7 @@ BASE_FEATURE(kExtraSafelistedRequestHeadersForOutOfBlinkCors,
@@ -387,7 +387,7 @@ BASE_FEATURE(kExtraSafelistedRequestHeadersForOutOfBlinkCors,
// by the flag in RuntimeEnabledFeatures on the blink side. See also
// the use of kSetOnlyIfOverridden in content/child/runtime_features.cc.
// We enable it here by default to support use in origin trials.
@@ -19,7 +20,7 @@ diff --git a/content/public/common/content_features.cc b/content/public/common/c
// Field trial boolean parameter which indicates whether FedCM IDP sign-out
// is enabled.
@@ -453,15 +453,15 @@ BASE_FEATURE(kFedCmLoginHint,
@@ -421,15 +421,15 @@ BASE_FEATURE(kFedCmSelectiveDisclosure,
// Enables metrics collection for signin status mismatches. Also enables
// parsing the signin status HTTP headers.
// kFedCmIdpSigninStatusEnabled takes precedence over this feature flag.
@@ -37,12 +38,12 @@ diff --git a/content/public/common/content_features.cc b/content/public/common/c
- base::FEATURE_DISABLED_BY_DEFAULT); // on bromite
+ base::FEATURE_ENABLED_BY_DEFAULT); // on bromite
// Enables the MDocs API in the IdentityCredential.
BASE_FEATURE(kWebIdentityMDocs,
// Enables bypassing the well-known file enforcement.
BASE_FEATURE(kFedCmWithoutWellKnownEnforcement,
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -1590,7 +1590,7 @@
@@ -1560,7 +1560,7 @@
{
name: "FedCm",
public: true,
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Sat, 22 Jul 2023 13:58:40 +0000
Subject: Disable Feeback Collector
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
.../browser/feedback/FeedbackCollector.java | 27 +++----------------
1 file changed, 3 insertions(+), 24 deletions(-)
@@ -32,7 +33,7 @@ diff --git a/chrome/browser/feedback/android/java/src/org/chromium/chrome/browse
- identityManager.getPrimaryAccountInfo(ConsentLevel.SIGNIN));
- }
-
- // Sanity check in case a source is added to the wrong list.
- // Validation check in case a source is added to the wrong list.
- for (FeedbackSource source : mSynchronousSources) {
- assert !(source instanceof AsyncFeedbackSource);
- }
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Tue, 2 May 2023 15:26:46 +0000
Subject: Disable FirstPartySets and StorageAccessAPI
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
components/privacy_sandbox/privacy_sandbox_prefs.cc | 2 +-
content/public/common/content_features.cc | 6 +++---
@@ -10,7 +11,7 @@ Subject: Disable FirstPartySets and StorageAccessAPI
diff --git a/components/privacy_sandbox/privacy_sandbox_prefs.cc b/components/privacy_sandbox/privacy_sandbox_prefs.cc
--- a/components/privacy_sandbox/privacy_sandbox_prefs.cc
+++ b/components/privacy_sandbox/privacy_sandbox_prefs.cc
@@ -155,7 +155,7 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) {
@@ -58,7 +58,7 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) {
registry->RegisterBooleanPref(
prefs::kPrivacySandboxFirstPartySetsDataAccessAllowedInitialized, false);
registry->RegisterBooleanPref(
@@ -22,7 +23,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_prefs.cc b/components/pr
diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc
--- a/content/public/common/content_features.cc
+++ b/content/public/common/content_features.cc
@@ -469,9 +469,9 @@ BASE_FEATURE(kWebIdentityMDocs,
@@ -442,9 +442,9 @@ BASE_FEATURE(kWebIdentityMDocs,
base::FEATURE_DISABLED_BY_DEFAULT);
// Enables usage of First Party Sets to determine cookie availability.
+14 -13
View File
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Sun, 7 May 2023 14:01:56 +0000
Subject: Disable GSA by default
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
.../org/chromium/chrome/browser/IntentHandler.java | 5 -----
.../org/chromium/chrome/browser/share/LensUtils.java | 12 +-----------
@@ -20,7 +21,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.j
import org.chromium.chrome.browser.offlinepages.OfflinePageUtils;
import org.chromium.chrome.browser.omnibox.suggestions.AutocompleteControllerProvider;
import org.chromium.chrome.browser.profiles.Profile;
@@ -265,8 +264,6 @@ public class IntentHandler {
@@ -271,8 +270,6 @@ public class IntentHandler {
private static int sReferrerId;
private static String sPendingIncognitoUrl;
@@ -29,7 +30,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.j
private static final String PACKAGE_GMAIL = "com.google.android.gm";
private static final String PACKAGE_PLUS = "com.google.android.apps.plus";
private static final String PACKAGE_HANGOUTS = "com.google.android.talk";
@@ -498,8 +495,6 @@ public class IntentHandler {
@@ -494,8 +491,6 @@ public class IntentHandler {
return ExternalAppId.LINE;
} else if (packageName.equals(PACKAGE_WHATSAPP)) {
return ExternalAppId.WHATSAPP;
@@ -41,7 +42,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.j
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils.java
@@ -11,7 +11,6 @@ import android.text.TextUtils;
@@ -12,7 +12,6 @@ import org.chromium.base.ResettersForTesting;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.IntentHandler;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
@@ -49,7 +50,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils
import org.chromium.components.externalauth.ExternalAuthUtils;
/**
@@ -62,12 +61,7 @@ public class LensUtils {
@@ -64,12 +63,7 @@ public class LensUtils {
if (context == null) {
return "";
}
@@ -62,7 +63,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils
}
}
@@ -119,11 +113,7 @@ public class LensUtils {
@@ -121,11 +115,7 @@ public class LensUtils {
* @return Whether the package is valid.
*/
public static boolean isValidAgsaPackage(final ExternalAuthUtils externalAuthUtils) {
@@ -78,7 +79,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc
--- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -676,8 +676,8 @@ BASE_FEATURE(kContextMenuGoogleLensSearchOptimizations,
@@ -690,8 +690,8 @@ BASE_FEATURE(kContextMenuGoogleLensSearchOptimizations,
base::FEATURE_DISABLED_BY_DEFAULT);
BASE_FEATURE(kContextMenuSearchWithGoogleLens,
@@ -89,7 +90,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
BASE_FEATURE(kContextMenuShopWithGoogleLens,
"ContextMenuShopWithGoogleLens",
@@ -758,8 +758,8 @@ BASE_FEATURE(kOfflineIndicatorV2,
@@ -776,8 +776,8 @@ BASE_FEATURE(kOfflineIndicatorV2,
base::FEATURE_ENABLED_BY_DEFAULT);
BASE_FEATURE(kExperimentsForAgsa,
@@ -103,7 +104,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
diff --git a/chrome/browser/gsa/java/src/org/chromium/chrome/browser/gsa/GSAState.java b/chrome/browser/gsa/java/src/org/chromium/chrome/browser/gsa/GSAState.java
--- a/chrome/browser/gsa/java/src/org/chromium/chrome/browser/gsa/GSAState.java
+++ b/chrome/browser/gsa/java/src/org/chromium/chrome/browser/gsa/GSAState.java
@@ -33,8 +33,6 @@ import java.util.regex.Pattern;
@@ -34,8 +34,6 @@ import java.util.regex.Pattern;
* A class responsible for representing the current state of Chrome's integration with GSA.
*/
public class GSAState {
@@ -112,7 +113,7 @@ diff --git a/chrome/browser/gsa/java/src/org/chromium/chrome/browser/gsa/GSAStat
/** Used to observe state changes in the class. */
public interface Observer {
/** Called when the GSA account name is set. */
@@ -74,7 +72,7 @@ public class GSAState {
@@ -75,7 +73,7 @@ public class GSAState {
/**
* Caches the result of a computation on whether GSA is available.
*/
@@ -121,7 +122,7 @@ diff --git a/chrome/browser/gsa/java/src/org/chromium/chrome/browser/gsa/GSAStat
/**
* The Google account email address being used by GSA according to the latest update we have
@@ -155,7 +153,7 @@ public class GSAState {
@@ -156,7 +154,7 @@ public class GSAState {
/** Returns whether the GSA package is installed on device. */
public boolean isGsaInstalled() {
@@ -130,7 +131,7 @@ diff --git a/chrome/browser/gsa/java/src/org/chromium/chrome/browser/gsa/GSAStat
}
/**
@@ -178,6 +176,7 @@ public class GSAState {
@@ -179,6 +177,7 @@ public class GSAState {
*/
public boolean isAgsaVersionBelowMinimum(
String installedVersionName, String minimumVersionName) {
@@ -138,7 +139,7 @@ diff --git a/chrome/browser/gsa/java/src/org/chromium/chrome/browser/gsa/GSAStat
if (TextUtils.isEmpty(installedVersionName) || TextUtils.isEmpty(minimumVersionName)) {
return true;
}
@@ -209,7 +208,7 @@ public class GSAState {
@@ -210,7 +209,7 @@ public class GSAState {
* @return Whether the given intent can be handled by Agsa.
*/
public boolean canAgsaHandleIntent(@NonNull Intent intent) {
@@ -147,7 +148,7 @@ diff --git a/chrome/browser/gsa/java/src/org/chromium/chrome/browser/gsa/GSAStat
ComponentName activity =
intent.resolveActivity(ContextUtils.getApplicationContext().getPackageManager());
@@ -223,7 +222,7 @@ public class GSAState {
@@ -224,7 +223,7 @@ public class GSAState {
* @return The version name of the Agsa package or null if it can't be found.
*/
public @Nullable String getAgsaVersionName() {
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Sun, 7 May 2023 13:13:47 +0000
Subject: Disable GetInstalledRelatedApps API
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
.../components/installedapp/InstalledAppProviderImpl.java | 1 +
.../browser/installedapp/installed_app_provider_impl_win.cc | 1 +
@@ -34,7 +35,7 @@ diff --git a/content/browser/installedapp/installed_app_provider_impl_win.cc b/c
diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc
--- a/content/public/common/content_features.cc
+++ b/content/public/common/content_features.cc
@@ -568,12 +568,12 @@ BASE_FEATURE(kInnerFrameCompositorSurfaceEviction,
@@ -541,12 +541,12 @@ BASE_FEATURE(kInnerFrameCompositorSurfaceEviction,
base::FEATURE_ENABLED_BY_DEFAULT); // guard this
// Kill switch for the GetInstalledRelatedApps API.
@@ -52,8 +53,8 @@ diff --git a/content/public/common/content_features.cc b/content/public/common/c
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -2077,9 +2077,9 @@
name: "FingerprintingCanvasImageDataNoise",
@@ -2022,9 +2022,9 @@
status: {"Android": "test", "default": "stable"},
},
{
+ // disable GetInstalledRelatedApps
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Tue, 22 Aug 2023 09:02:50 +0000
Subject: Disable PartnerCustomizations
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
chrome/browser/flags/android/chrome_feature_list.cc | 4 ++--
.../partnercustomizations/PartnerBrowserCustomizations.java | 2 +-
@@ -10,7 +11,7 @@ Subject: Disable PartnerCustomizations
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc
--- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -865,8 +865,8 @@ BASE_FEATURE(kOpaqueOriginForIncomingIntents,
@@ -889,8 +889,8 @@ BASE_FEATURE(kOpaqueOriginForIncomingIntents,
base::FEATURE_ENABLED_BY_DEFAULT);
BASE_FEATURE(kPartnerCustomizationsUma,
@@ -24,7 +25,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
diff --git a/chrome/browser/partnercustomizations/java/src/org/chromium/chrome/browser/partnercustomizations/PartnerBrowserCustomizations.java b/chrome/browser/partnercustomizations/java/src/org/chromium/chrome/browser/partnercustomizations/PartnerBrowserCustomizations.java
--- a/chrome/browser/partnercustomizations/java/src/org/chromium/chrome/browser/partnercustomizations/PartnerBrowserCustomizations.java
+++ b/chrome/browser/partnercustomizations/java/src/org/chromium/chrome/browser/partnercustomizations/PartnerBrowserCustomizations.java
@@ -213,7 +213,7 @@ public class PartnerBrowserCustomizations {
@@ -214,7 +214,7 @@ public class PartnerBrowserCustomizations {
boolean systemOrPreStable =
(context.getApplicationInfo().flags & ApplicationInfo.FLAG_SYSTEM) == 1
|| !VersionInfo.isStableBuild();
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Mon, 15 May 2023 12:33:18 +0000
Subject: Disable PrivateStateTokens API
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
services/network/public/cpp/features.cc | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
@@ -9,18 +10,18 @@ Subject: Disable PrivateStateTokens API
diff --git a/services/network/public/cpp/features.cc b/services/network/public/cpp/features.cc
--- a/services/network/public/cpp/features.cc
+++ b/services/network/public/cpp/features.cc
@@ -154,12 +154,12 @@ BASE_FEATURE(kAttributionReportingCrossAppWeb, // in bromite
@@ -167,12 +167,12 @@ BASE_FEATURE(kAttributionReportingCrossAppWeb, // in bromite
// set, and handling their responses, according to the protocol.
// (See https://github.com/WICG/trust-token-api.)
BASE_FEATURE(kPrivateStateTokens,
- "PrivateStateTokens",
- base::FEATURE_DISABLED_BY_DEFAULT);
- base::FEATURE_ENABLED_BY_DEFAULT);
+ "PrivateStateTokens", // must be disabled
+ base::FEATURE_DISABLED_BY_DEFAULT); // in bromite
// Secondary flag used by the FLEDGE ads experiment in the interim before
// PSTs are fully rolled out to stable.
-BASE_FEATURE(kFledgePst, "TrustTokens", base::FEATURE_DISABLED_BY_DEFAULT);
-BASE_FEATURE(kFledgePst, "TrustTokens", base::FEATURE_ENABLED_BY_DEFAULT);
+BASE_FEATURE(kFledgePst, "TrustTokens", base::FEATURE_DISABLED_BY_DEFAULT); // must be disabled
// Determines which Trust Tokens operations require the TrustTokens origin trial
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Tue, 18 Apr 2023 14:17:19 +0000
Subject: Disable SHA1 Server Signature
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
net/base/features.cc | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
@@ -9,7 +10,7 @@ Subject: Disable SHA1 Server Signature
diff --git a/net/base/features.cc b/net/base/features.cc
--- a/net/base/features.cc
+++ b/net/base/features.cc
@@ -79,8 +79,8 @@ BASE_FEATURE(kUseDnsHttpsSvcbAlpn,
@@ -88,8 +88,8 @@ BASE_FEATURE(kUseAlternativePortForGloballyReachableCheck,
base::FEATURE_DISABLED_BY_DEFAULT);
BASE_FEATURE(kSHA1ServerSignature,
@@ -3,6 +3,8 @@ Date: Tue, 1 Aug 2023 13:56:42 +0000
Subject: Disable remote altsvc for h3 connections
and only sets the use of port 443
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
net/http/http_server_properties_manager.cc | 2 +-
net/http/http_stream_factory_job_controller.cc | 9 ++-------
@@ -50,7 +52,7 @@ diff --git a/net/http/http_stream_factory_job_controller.cc b/net/http/http_stre
diff --git a/net/quic/quic_context.h b/net/quic/quic_context.h
--- a/net/quic/quic_context.h
+++ b/net/quic/quic_context.h
@@ -177,7 +177,7 @@ struct NET_EXPORT QuicParams {
@@ -179,7 +179,7 @@ struct NET_EXPORT QuicParams {
bool allow_server_migration = false;
// If true, allows QUIC to use alternative services with a different
// hostname from the origin.
@@ -8,6 +8,8 @@ If not active the user must also set the system timezone override
to enable it.
Disable LiveCaption
Require: Timezone-customization.patch
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
chrome/browser/about_flags.cc | 5 +++++
.../renderer/chrome_content_renderer_client.cc | 2 +-
@@ -23,7 +25,7 @@ Require: Timezone-customization.patch
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -7464,6 +7464,11 @@ const FeatureEntry kFeatureEntries[] = {
@@ -7613,6 +7613,11 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kFileHandlingIconsDescription, kOsDesktop,
FEATURE_VALUE_TYPE(blink::features::kFileHandlingIcons)},
@@ -38,7 +40,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer/chrome_content_renderer_client.cc
--- a/chrome/renderer/chrome_content_renderer_client.cc
+++ b/chrome/renderer/chrome_content_renderer_client.cc
@@ -1594,7 +1594,7 @@ ChromeContentRendererClient::CreateWorkerContentSettingsClient(
@@ -1589,7 +1589,7 @@ ChromeContentRendererClient::CreateWorkerContentSettingsClient(
std::unique_ptr<media::SpeechRecognitionClient>
ChromeContentRendererClient::CreateSpeechRecognitionClient(
content::RenderFrame* render_frame) {
@@ -88,7 +90,7 @@ diff --git a/components/content_settings/renderer/content_settings_agent_impl.h
diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
--- a/media/base/media_switches.cc
+++ b/media/base/media_switches.cc
@@ -865,7 +865,7 @@ const base::FeatureParam<std::string> kMediaFoundationClearKeyCdmPathForTesting{
@@ -869,7 +869,7 @@ const base::FeatureParam<std::string> kMediaFoundationClearKeyCdmPathForTesting{
#endif // BUILDFLAG(IS_WIN)
// Enables the Live Caption feature on supported devices.
@@ -97,7 +99,7 @@ diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
// Controls whether a "Share this tab instead" button should be shown for
// getDisplayMedia captures. Note: This flag does not control if the "Share this
@@ -902,9 +902,9 @@ BASE_FEATURE(kLiveCaptionRightClick,
@@ -906,9 +906,9 @@ BASE_FEATURE(kLiveCaptionRightClick,
base::FEATURE_DISABLED_BY_DEFAULT);
// Enable or disable Live Caption support for WebAudio.
@@ -113,7 +115,7 @@ diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/features.cc
--- a/third_party/blink/common/features.cc
+++ b/third_party/blink/common/features.cc
@@ -657,6 +657,10 @@ BASE_FEATURE(kDirectCompositorThreadIpc,
@@ -680,6 +680,10 @@ BASE_FEATURE(kDirectCompositorThreadIpc,
"DirectCompositorThreadIpc",
base::FEATURE_DISABLED_BY_DEFAULT);
@@ -127,7 +129,7 @@ diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/fea
diff --git a/third_party/blink/public/common/features.h b/third_party/blink/public/common/features.h
--- a/third_party/blink/public/common/features.h
+++ b/third_party/blink/public/common/features.h
@@ -330,6 +330,8 @@ BLINK_COMMON_EXPORT BASE_DECLARE_FEATURE(kDesktopPWAsTabStripCustomizations);
@@ -337,6 +337,8 @@ BLINK_COMMON_EXPORT BASE_DECLARE_FEATURE(kDesktopPWAsTabStripCustomizations);
// hopping through the IO thread first.
BLINK_COMMON_EXPORT BASE_DECLARE_FEATURE(kDirectCompositorThreadIpc);
@@ -2,7 +2,9 @@ From: uazo <uazo@users.noreply.github.com>
Date: Tue, 14 Feb 2023 16:41:42 +0000
Subject: Disable visited pseudo class
Disable support for pseduo css visited class
Disable support for pseudo css visited class
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
components/visitedlink/browser/visitedlink_writer.cc | 8 ++++----
components/visitedlink/common/visitedlink_common.cc | 1 +
@@ -41,7 +43,7 @@ diff --git a/components/visitedlink/browser/visitedlink_writer.cc b/components/v
// Extra check that we are not incognito. This should not happen.
// TODO(boliu): Move this check to HistoryService when IsOffTheRecord is
// removed from BrowserContext.
@@ -1032,7 +1033,6 @@ bool VisitedLinkWriter::RebuildTableFromDelegate() {
@@ -1033,7 +1034,6 @@ bool VisitedLinkWriter::RebuildTableFromDelegate() {
// TODO(brettw) make sure we have reasonable salt!
table_builder_ = new TableBuilder(this, salt_);
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Sat, 3 Jun 2023 13:11:22 +0000
Subject: Disallowing MIDI permission by default
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
components/permissions/features.cc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
@@ -9,7 +10,7 @@ Subject: Disallowing MIDI permission by default
diff --git a/components/permissions/features.cc b/components/permissions/features.cc
--- a/components/permissions/features.cc
+++ b/components/permissions/features.cc
@@ -145,7 +145,7 @@ BASE_FEATURE(kWindowManagementPermissionAlias,
@@ -159,7 +159,7 @@ BASE_FEATURE(kWindowManagementPermissionAlias,
// Enables disallowing MIDI permission by default.
BASE_FEATURE(kBlockMidiByDefault,
"BlockMidiByDefault",
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Wed, 23 Aug 2023 13:49:19 +0000
Subject: Enable Android Dynamic Performance Framework
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
chrome/version.gni | 2 +-
components/viz/common/features.cc | 5 +++--
@@ -22,7 +23,7 @@ diff --git a/chrome/version.gni b/chrome/version.gni
diff --git a/components/viz/common/features.cc b/components/viz/common/features.cc
--- a/components/viz/common/features.cc
+++ b/components/viz/common/features.cc
@@ -286,9 +286,10 @@ const base::FeatureParam<double> kADPFMidFrameBoostDurationMultiplier{
@@ -298,9 +298,10 @@ const base::FeatureParam<double> kADPFMidFrameBoostDurationMultiplier{
// If enabled, Chrome includes the Renderer Main thread(s) into the
// ADPF(Android Dynamic Performance Framework) hint session.
@@ -33,7 +34,7 @@ diff --git a/components/viz/common/features.cc b/components/viz/common/features.
+ "EnableADPFRendererMain", // enabled
+ base::FEATURE_ENABLED_BY_DEFAULT); // by default
bool IsDelegatedCompositingEnabled() {
return base::FeatureList::IsEnabled(kDelegatedCompositing);
// If enabled, surface activation and draw do not block on dependencies.
BASE_FEATURE(kDrawImmediatelyWhenInteractive,
--
2.25.1
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Tue, 28 Mar 2023 15:43:18 +0000
Subject: Enable Document Open Inheritance Removal
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
.../blink/renderer/core/dom/document.cc | 64 -------------------
.../platform/runtime_enabled_features.json5 | 1 -
@@ -10,7 +11,7 @@ Subject: Enable Document Open Inheritance Removal
diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink/renderer/core/dom/document.cc
--- a/third_party/blink/renderer/core/dom/document.cc
+++ b/third_party/blink/renderer/core/dom/document.cc
@@ -3384,70 +3384,6 @@ void Document::open(LocalDOMWindow* entered_window,
@@ -3397,70 +3397,6 @@ void Document::open(LocalDOMWindow* entered_window,
// https://chromestatus.com/metrics/feature/timeline/popularity/4375
CountUse(WebFeature::kDocumentOpenMutateSandbox);
}
@@ -84,7 +85,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -1439,7 +1439,6 @@
@@ -1415,7 +1415,6 @@
{
name: "DocumentOpenSandboxInheritanceRemoval",
status: "stable",
@@ -12,6 +12,8 @@ eliminating the ability to retrieve fonts handled differently
by gdi and directwrite.
It is possible to restore the original behavior via the
fonts-fingerprint-mitigation flag, which is active by default.
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
chrome/browser/about_flags.cc | 5 +
chrome/browser/flag_descriptions.cc | 5 +
@@ -32,7 +34,7 @@ fonts-fingerprint-mitigation flag, which is active by default.
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -10016,6 +10016,11 @@ const FeatureEntry kFeatureEntries[] = {
@@ -10083,6 +10083,11 @@ const FeatureEntry kFeatureEntries[] = {
kClipboardMaximumAgeVariations,
"ClipboardMaximumAge")},
@@ -47,7 +49,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
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
@@ -140,6 +140,11 @@ const char kClipboardUnsanitizedContentDescription[] =
@@ -157,6 +157,11 @@ const char kClipboardUnsanitizedContentDescription[] =
"Allows reading/writing unsanitized content from/to the clipboard. "
"Currently, it is only applicable to HTML format. See crbug.com/1268679.";
@@ -62,7 +64,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -115,6 +115,9 @@ extern const char kClickToCallDescription[];
@@ -127,6 +127,9 @@ extern const char kClickToCallDescription[];
extern const char kClipboardUnsanitizedContentName[];
extern const char kClipboardUnsanitizedContentDescription[];
@@ -84,7 +86,7 @@ diff --git a/content/public/common/content_features.cc b/content/public/common/c
#if BUILDFLAG(IS_ANDROID)
// Use chromim's implementation of selection magnifier built using surface
@@ -501,7 +501,7 @@ const base::FeatureParam<base::TimeDelta>
@@ -474,7 +474,7 @@ const base::FeatureParam<base::TimeDelta>
// enables a font indexer on Android which we need to test in the field first.
BASE_FEATURE(kFontSrcLocalMatching,
"FontSrcLocalMatching",
@@ -146,7 +148,7 @@ diff --git a/skia/ext/skia_utils_win.h b/skia/ext/skia_utils_win.h
diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/features.cc
--- a/third_party/blink/common/features.cc
+++ b/third_party/blink/common/features.cc
@@ -888,7 +888,7 @@ BASE_FEATURE(kFrequencyCappingForOverlayPopupDetection,
@@ -935,7 +935,7 @@ BASE_FEATURE(kFrequencyCappingForOverlayPopupDetection,
"FrequencyCappingForOverlayPopupDetection",
base::FEATURE_ENABLED_BY_DEFAULT);
@@ -155,7 +157,7 @@ diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/fea
BASE_FEATURE(kGainmapHdrImages,
"GainmapHdrImages",
@@ -1837,6 +1837,10 @@ BASE_FEATURE(kWebRtcH264WithOpenH264FFmpeg,
@@ -1955,6 +1955,10 @@ BASE_FEATURE(kWebRtcH264WithOpenH264FFmpeg,
base::FEATURE_ENABLED_BY_DEFAULT);
#endif // BUILDFLAG(RTC_USE_H264) && BUILDFLAG(ENABLE_FFMPEG_VIDEO_DECODERS)
@@ -169,9 +171,9 @@ diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/fea
diff --git a/third_party/blink/public/common/features.h b/third_party/blink/public/common/features.h
--- a/third_party/blink/public/common/features.h
+++ b/third_party/blink/public/common/features.h
@@ -239,6 +239,9 @@ BLINK_COMMON_EXPORT BASE_DECLARE_FEATURE(kClipboardUnsanitizedContent);
BLINK_COMMON_EXPORT BASE_DECLARE_FEATURE(kCompressParkableStrings);
@@ -246,6 +246,9 @@ BLINK_COMMON_EXPORT BASE_DECLARE_FEATURE(kCompressParkableStrings);
BLINK_COMMON_EXPORT extern const base::FeatureParam<int>
kMaxDiskDataAllocatorCapacityMB;
+// Filter the list of fonts allowing the use of only standard fonts
+BLINK_COMMON_EXPORT BASE_DECLARE_FEATURE(kFontsFingerprintMitigation);
@@ -182,7 +184,7 @@ diff --git a/third_party/blink/public/common/features.h b/third_party/blink/publ
diff --git a/third_party/blink/renderer/platform/BUILD.gn b/third_party/blink/renderer/platform/BUILD.gn
--- a/third_party/blink/renderer/platform/BUILD.gn
+++ b/third_party/blink/renderer/platform/BUILD.gn
@@ -732,6 +732,7 @@ component("platform") {
@@ -725,6 +725,7 @@ component("platform") {
"fonts/simple_font_data.cc",
"fonts/simple_font_data.h",
"fonts/skia/font_cache_skia.cc",
@@ -193,7 +195,7 @@ diff --git a/third_party/blink/renderer/platform/BUILD.gn b/third_party/blink/re
diff --git a/third_party/blink/renderer/platform/fonts/font_cache.h b/third_party/blink/renderer/platform/fonts/font_cache.h
--- a/third_party/blink/renderer/platform/fonts/font_cache.h
+++ b/third_party/blink/renderer/platform/fonts/font_cache.h
@@ -342,7 +342,7 @@ class PLATFORM_EXPORT FontCache final {
@@ -328,7 +328,7 @@ class PLATFORM_EXPORT FontCache final {
sk_sp<SkTypeface> CreateTypeface(const FontDescription&,
const FontFaceCreationParams&,
+21 -19
View File
@@ -6,6 +6,8 @@ Introduces a kind of firewall on http calls made by the
browser that allows selective blocking via the NetworkTrafficAnnotationTag.
allowed or explicitly blocked calls are defined
in services/firewall/tools/rules.xml
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
chrome/browser/BUILD.gn | 1 +
chrome/browser/about_flags.cc | 6 +
@@ -53,7 +55,7 @@ in services/firewall/tools/rules.xml
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -2452,6 +2452,7 @@ static_library("browser") {
@@ -2472,6 +2472,7 @@ static_library("browser") {
"//third_party/ungoogled:switches",
"//services/device/public/mojom",
"//services/device/public/mojom:usb",
@@ -64,7 +66,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -200,6 +200,7 @@
@@ -198,6 +198,7 @@
#include "sandbox/policy/features.h"
#include "sandbox/policy/switches.h"
#include "services/device/public/cpp/device_features.h"
@@ -72,7 +74,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
#include "services/media_session/public/cpp/features.h"
#include "services/network/public/cpp/features.h"
#include "services/network/public/cpp/network_switches.h"
@@ -8126,6 +8127,11 @@ const FeatureEntry kFeatureEntries[] = {
@@ -8275,6 +8276,11 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(page_info::kPageInfoHideSiteSettings)},
#endif // !BUILDFLAG(IS_ANDROID)
@@ -233,7 +235,7 @@ diff --git a/components/webapps/browser/android/webapk/webapk_icon_hasher.cc b/c
diff --git a/net/BUILD.gn b/net/BUILD.gn
--- a/net/BUILD.gn
+++ b/net/BUILD.gn
@@ -1087,6 +1087,7 @@ component("net") {
@@ -1096,6 +1096,7 @@ component("net") {
"//build:chromeos_buildflags",
"//net/data/ssl/chrome_root_store:gen_root_store_inc",
"//net/http:transport_security_state_generated_files",
@@ -258,7 +260,7 @@ diff --git a/net/traffic_annotation/network_traffic_annotation.h b/net/traffic_a
diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_request_http_job.cc
--- a/net/url_request/url_request_http_job.cc
+++ b/net/url_request/url_request_http_job.cc
@@ -240,6 +240,9 @@ URLRequestHttpJob::URLRequestHttpJob(
@@ -241,6 +241,9 @@ URLRequestHttpJob::URLRequestHttpJob(
throttling_entry_ = manager->RegisterRequestUrl(request->url());
ResetTimer();
@@ -268,7 +270,7 @@ diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_reque
}
URLRequestHttpJob::~URLRequestHttpJob() {
@@ -546,6 +549,18 @@ void URLRequestHttpJob::MaybeStartTransactionInternal(int result) {
@@ -545,6 +548,18 @@ void URLRequestHttpJob::MaybeStartTransactionInternal(int result) {
void URLRequestHttpJob::StartTransactionInternal() {
DCHECK(!override_response_headers_);
@@ -298,7 +300,7 @@ diff --git a/net/url_request/url_request_http_job.h b/net/url_request/url_reques
namespace net {
@@ -79,6 +80,8 @@ class NET_EXPORT_PRIVATE URLRequestHttpJob : public URLRequestJob {
@@ -81,6 +82,8 @@ class NET_EXPORT_PRIVATE URLRequestHttpJob : public URLRequestJob {
return priority_;
}
@@ -1526,7 +1528,7 @@ new file mode 100644
diff --git a/services/network/network_context.cc b/services/network/network_context.cc
--- a/services/network/network_context.cc
+++ b/services/network/network_context.cc
@@ -86,6 +86,7 @@
@@ -87,6 +87,7 @@
#include "net/url_request/url_request.h"
#include "net/url_request/url_request_context.h"
#include "net/url_request/url_request_context_builder.h"
@@ -1534,7 +1536,7 @@ diff --git a/services/network/network_context.cc b/services/network/network_cont
#include "services/network/brokered_client_socket_factory.h"
#include "services/network/cookie_manager.h"
#include "services/network/cors/cors_url_loader_factory.h"
@@ -1566,6 +1567,9 @@ void NetworkContext::OnNewSCTAuditingReportSent() {
@@ -1580,6 +1581,9 @@ void NetworkContext::OnNewSCTAuditingReportSent() {
void NetworkContext::CreateUDPSocket(
mojo::PendingReceiver<mojom::UDPSocket> receiver,
mojo::PendingRemote<mojom::UDPSocketListener> listener) {
@@ -1544,7 +1546,7 @@ diff --git a/services/network/network_context.cc b/services/network/network_cont
socket_factory_->CreateUDPSocket(std::move(receiver), std::move(listener));
}
@@ -1578,6 +1582,17 @@ void NetworkContext::CreateRestrictedUDPSocket(
@@ -1592,6 +1596,17 @@ void NetworkContext::CreateRestrictedUDPSocket(
mojo::PendingRemote<mojom::UDPSocketListener> listener,
CreateRestrictedUDPSocketCallback callback) {
// SimpleHostResolver is transitively owned by |this|.
@@ -1562,7 +1564,7 @@ diff --git a/services/network/network_context.cc b/services/network/network_cont
socket_factory_->CreateRestrictedUDPSocket(
addr, mode, traffic_annotation, std::move(params), std::move(receiver),
std::move(listener), SimpleHostResolver::Create(this),
@@ -1590,6 +1605,17 @@ void NetworkContext::CreateTCPServerSocket(
@@ -1604,6 +1619,17 @@ void NetworkContext::CreateTCPServerSocket(
const net::MutableNetworkTrafficAnnotationTag& traffic_annotation,
mojo::PendingReceiver<mojom::TCPServerSocket> receiver,
CreateTCPServerSocketCallback callback) {
@@ -1580,7 +1582,7 @@ diff --git a/services/network/network_context.cc b/services/network/network_cont
socket_factory_->CreateTCPServerSocket(
local_addr, std::move(options),
static_cast<net::NetworkTrafficAnnotationTag>(traffic_annotation),
@@ -1604,6 +1630,21 @@ void NetworkContext::CreateTCPConnectedSocket(
@@ -1618,6 +1644,21 @@ void NetworkContext::CreateTCPConnectedSocket(
mojo::PendingReceiver<mojom::TCPConnectedSocket> receiver,
mojo::PendingRemote<mojom::SocketObserver> observer,
CreateTCPConnectedSocketCallback callback) {
@@ -1602,7 +1604,7 @@ diff --git a/services/network/network_context.cc b/services/network/network_cont
socket_factory_->CreateTCPConnectedSocket(
local_addr, remote_addr_list, std::move(tcp_connected_socket_options),
static_cast<net::NetworkTrafficAnnotationTag>(traffic_annotation),
@@ -1615,6 +1656,20 @@ void NetworkContext::CreateTCPBoundSocket(
@@ -1629,6 +1670,20 @@ void NetworkContext::CreateTCPBoundSocket(
const net::MutableNetworkTrafficAnnotationTag& traffic_annotation,
mojo::PendingReceiver<mojom::TCPBoundSocket> receiver,
CreateTCPBoundSocketCallback callback) {
@@ -1623,7 +1625,7 @@ diff --git a/services/network/network_context.cc b/services/network/network_cont
socket_factory_->CreateTCPBoundSocket(
local_addr,
static_cast<net::NetworkTrafficAnnotationTag>(traffic_annotation),
@@ -1680,6 +1735,24 @@ void NetworkContext::CreateWebSocket(
@@ -1694,6 +1749,24 @@ void NetworkContext::CreateWebSocket(
mojo::PendingRemote<mojom::WebSocketAuthenticationHandler> auth_handler,
mojo::PendingRemote<mojom::TrustedHeaderClient> header_client,
const absl::optional<base::UnguessableToken>& throttling_profile_id) {
@@ -1645,13 +1647,13 @@ diff --git a/services/network/network_context.cc b/services/network/network_cont
+ return;
+ }
+ }
#if !BUILDFLAG(IS_IOS)
#if BUILDFLAG(ENABLE_WEBSOCKETS)
if (!websocket_factory_)
websocket_factory_ = std::make_unique<WebSocketFactory>(this);
diff --git a/services/network/public/cpp/simple_url_loader.cc b/services/network/public/cpp/simple_url_loader.cc
--- a/services/network/public/cpp/simple_url_loader.cc
+++ b/services/network/public/cpp/simple_url_loader.cc
@@ -1239,6 +1239,8 @@ SimpleURLLoaderImpl::SimpleURLLoaderImpl(
@@ -1240,6 +1240,8 @@ SimpleURLLoaderImpl::SimpleURLLoaderImpl(
timeout_timer_(timeout_tick_clock_) {
// Allow creation and use on different threads.
DETACH_FROM_SEQUENCE(sequence_checker_);
@@ -1660,7 +1662,7 @@ diff --git a/services/network/public/cpp/simple_url_loader.cc b/services/network
#if DCHECK_IS_ON()
if (resource_request_->request_body) {
for (const DataElement& element :
@@ -1658,6 +1660,22 @@ void SimpleURLLoaderImpl::StartRequest(
@@ -1659,6 +1661,22 @@ void SimpleURLLoaderImpl::StartRequest(
resource_request_->request_body->AppendDataPipe(
string_upload_data_pipe_getter_->GetRemoteForNewUpload());
}
@@ -1706,7 +1708,7 @@ diff --git a/services/network/public/cpp/simple_url_loader.h b/services/network/
diff --git a/third_party/blink/renderer/platform/loader/fetch/url_loader/url_loader.cc b/third_party/blink/renderer/platform/loader/fetch/url_loader/url_loader.cc
--- a/third_party/blink/renderer/platform/loader/fetch/url_loader/url_loader.cc
+++ b/third_party/blink/renderer/platform/loader/fetch/url_loader/url_loader.cc
@@ -654,23 +654,150 @@ net::NetworkTrafficAnnotationTag URLLoader::Context::GetTrafficAnnotationTag(
@@ -652,23 +652,150 @@ net::NetworkTrafficAnnotationTag URLLoader::Context::GetTrafficAnnotationTag(
NOTREACHED();
[[fallthrough]];
@@ -1869,7 +1871,7 @@ diff --git a/third_party/blink/renderer/platform/loader/fetch/url_loader/url_loa
diff --git a/tools/traffic_annotation/scripts/auditor/auditor.py b/tools/traffic_annotation/scripts/auditor/auditor.py
--- a/tools/traffic_annotation/scripts/auditor/auditor.py
+++ b/tools/traffic_annotation/scripts/auditor/auditor.py
@@ -829,6 +829,7 @@ class ArchivedAnnotation:
@@ -830,6 +830,7 @@ class ArchivedAnnotation:
# the XML. This is used to serialize/deserialize the XML.
FIELDS = [
"id", "added_in_milestone", "type", "second_id", "reserved",
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Mon, 17 Jul 2023 15:24:16 +0000
Subject: Keep Side Panel Companion disabled
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
chrome/browser/companion/core/features.cc | 19 ++++++++++---------
.../ui/side_search/side_search_prefs.cc | 2 +-
@@ -39,7 +40,7 @@ diff --git a/chrome/browser/companion/core/features.cc b/chrome/browser/companio
} // namespace internal
// When search companion is enabled, show a context menu item that allows the
@@ -51,6 +51,7 @@ const char kDisableCheckUserPermissionsForCompanion[] =
@@ -57,6 +57,7 @@ const char kDisableCheckUserPermissionsForCompanion[] =
const char kForceCompanionPinnedState[] = "force-companion-pinned-state";
bool ShouldOverrideCheckingUserPermissionsForCompanion() {
@@ -62,7 +63,7 @@ diff --git a/chrome/browser/ui/side_search/side_search_prefs.cc b/chrome/browser
diff --git a/chrome/browser/ui/ui_features.cc b/chrome/browser/ui/ui_features.cc
--- a/chrome/browser/ui/ui_features.cc
+++ b/chrome/browser/ui/ui_features.cc
@@ -95,7 +95,7 @@ BASE_FEATURE(kQuickCommands,
@@ -112,7 +112,7 @@ BASE_FEATURE(kResponsiveToolbar,
// Enables the side search feature for Google Search. Presents recent Google
// search results in a browser side panel.
@@ -74,7 +75,7 @@ diff --git a/chrome/browser/ui/ui_features.cc b/chrome/browser/ui/ui_features.cc
diff --git a/components/search_engines/template_url.cc b/components/search_engines/template_url.cc
--- a/components/search_engines/template_url.cc
+++ b/components/search_engines/template_url.cc
@@ -1823,7 +1823,7 @@ GURL TemplateURL::GenerateSuggestionURL(
@@ -1829,7 +1829,7 @@ GURL TemplateURL::GenerateSuggestionURL(
}
bool TemplateURL::IsSideSearchSupported() const {
+9 -22
View File
@@ -5,6 +5,8 @@ Subject: Keyboard protection flag
Hides user preference on the system keyboard by setting the standard
eng layout and removing the layout information from the javascript
keyboard events.
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
chrome/browser/about_flags.cc | 3 +
chrome/browser/flag_descriptions.cc | 6 ++
@@ -13,16 +15,15 @@ keyboard events.
.../renderer/core/events/keyboard_event.h | 3 +
ui/base/ui_base_features.cc | 8 +++
ui/base/ui_base_features.h | 2 +
ui/events/event.cc | 3 +-
.../dom/dom_keyboard_layout_map_win.cc | 13 ++++
.../keycodes/keyboard_code_conversion.cc | 10 ++-
ui/events/keycodes/keyboard_code_conversion.h | 2 +-
11 files changed, 115 insertions(+), 4 deletions(-)
10 files changed, 113 insertions(+), 3 deletions(-)
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -5080,6 +5080,9 @@ const FeatureEntry kFeatureEntries[] = {
@@ -5140,6 +5140,9 @@ const FeatureEntry kFeatureEntries[] = {
{"system-keyboard-lock", flag_descriptions::kSystemKeyboardLockName,
flag_descriptions::kSystemKeyboardLockDescription, kOsDesktop,
FEATURE_VALUE_TYPE(features::kSystemKeyboardLock)},
@@ -35,7 +36,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
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
@@ -3245,6 +3245,12 @@ const char kSystemKeyboardLockDescription[] =
@@ -3311,6 +3311,12 @@ const char kSystemKeyboardLockDescription[] =
"keyboard shortcuts and have the events routed directly to the website "
"when in fullscreen mode.";
@@ -51,7 +52,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -1836,6 +1836,9 @@ extern const char kSuppressToolbarCapturesDescription[];
@@ -1888,6 +1888,9 @@ extern const char kSuppressToolbarCapturesDescription[];
extern const char kSystemKeyboardLockName[];
extern const char kSystemKeyboardLockDescription[];
@@ -185,7 +186,7 @@ diff --git a/third_party/blink/renderer/core/events/keyboard_event.h b/third_par
diff --git a/ui/base/ui_base_features.cc b/ui/base/ui_base_features.cc
--- a/ui/base/ui_base_features.cc
+++ b/ui/base/ui_base_features.cc
@@ -174,6 +174,14 @@ BASE_FEATURE(kSystemKeyboardLock,
@@ -180,6 +180,14 @@ BASE_FEATURE(kSystemKeyboardLock,
"SystemKeyboardLock",
base::FEATURE_ENABLED_BY_DEFAULT);
@@ -212,20 +213,6 @@ diff --git a/ui/base/ui_base_features.h b/ui/base/ui_base_features.h
COMPONENT_EXPORT(UI_BASE_FEATURES)
BASE_DECLARE_FEATURE(kUiCompositorScrollWithLayers);
diff --git a/ui/events/event.cc b/ui/events/event.cc
--- a/ui/events/event.cc
+++ b/ui/events/event.cc
@@ -1096,8 +1096,9 @@ char16_t KeyEvent::GetCharacter() const {
// consult the keyboard layout to retrieve the shifted character but we
// only supported US layout for this case in the past, so we only
// support this behavior.
+ int need_shit;
if (char16_t maybe_character = DomCodeToUsLayoutCharacter(
- UsLayoutDomKeyToDomCode(key_), EF_SHIFT_DOWN);
+ UsLayoutDomKeyToDomCode(key_, &need_shit), EF_SHIFT_DOWN);
maybe_character) {
shifted_character = maybe_character;
}
diff --git a/ui/events/keycodes/dom/dom_keyboard_layout_map_win.cc b/ui/events/keycodes/dom/dom_keyboard_layout_map_win.cc
--- a/ui/events/keycodes/dom/dom_keyboard_layout_map_win.cc
+++ b/ui/events/keycodes/dom/dom_keyboard_layout_map_win.cc
@@ -259,7 +246,7 @@ diff --git a/ui/events/keycodes/dom/dom_keyboard_layout_map_win.cc b/ui/events/k
diff --git a/ui/events/keycodes/keyboard_code_conversion.cc b/ui/events/keycodes/keyboard_code_conversion.cc
--- a/ui/events/keycodes/keyboard_code_conversion.cc
+++ b/ui/events/keycodes/keyboard_code_conversion.cc
@@ -216,16 +216,22 @@ int ModifierDomKeyToEventFlag(DomKey key) {
@@ -293,16 +293,22 @@ int ModifierDomKeyToEventFlag(DomKey key) {
// DomKey::SYMBOL_LOCK
}
@@ -287,7 +274,7 @@ diff --git a/ui/events/keycodes/keyboard_code_conversion.cc b/ui/events/keycodes
diff --git a/ui/events/keycodes/keyboard_code_conversion.h b/ui/events/keycodes/keyboard_code_conversion.h
--- a/ui/events/keycodes/keyboard_code_conversion.h
+++ b/ui/events/keycodes/keyboard_code_conversion.h
@@ -99,7 +99,7 @@ EVENTS_BASE_EXPORT int ModifierDomKeyToEventFlag(DomKey key);
@@ -111,7 +111,7 @@ EVENTS_BASE_EXPORT int ModifierDomKeyToEventFlag(DomKey key);
// Returns the physical DOM code along with a corresponding non-located
// Windows-based key_code.
@@ -2,19 +2,22 @@ From: uazo <uazo@users.noreply.github.com>
Date: Mon, 17 Jul 2023 15:24:54 +0000
Subject: Lock Profile Cookie Database
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
chrome/browser/browser_features.cc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
chrome/browser/browser_features.cc | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/chrome/browser/browser_features.cc b/chrome/browser/browser_features.cc
--- a/chrome/browser/browser_features.cc
+++ b/chrome/browser/browser_features.cc
@@ -201,7 +201,7 @@ BASE_FEATURE(kAppBoundEncryptionMetrics,
@@ -207,8 +207,8 @@ BASE_FEATURE(kAppBoundEncryptionMetrics,
// Enables locking the cookie database for profiles.
// TODO(crbug.com/1430226): Remove after fully launched.
BASE_FEATURE(kLockProfileCookieDatabase,
"LockProfileCookieDatabase",
- base::FEATURE_DISABLED_BY_DEFAULT);
+ base::FEATURE_ENABLED_BY_DEFAULT);
- "LockProfileCookieDatabase",
- base::FEATURE_ENABLED_BY_DEFAULT);
+ "LockProfileCookieDatabase", // enabled
+ base::FEATURE_ENABLED_BY_DEFAULT); // by default
#endif
// Enables showing the email of the flex org admin that setup CBCM in the
@@ -6,6 +6,8 @@ Log for iframes and the base tag all attributes
containing newlines or the less-then sign that can be exploited
to extract or send otherwise inaccessible information.
under enable-log-dangling-attributes about flag
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
chrome/browser/about_flags.cc | 5 ++++-
.../blink/renderer/core/dom/document.cc | 18 +++++++++++++++
@@ -25,7 +27,7 @@ under enable-log-dangling-attributes about flag
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -5031,7 +5031,10 @@ const FeatureEntry kFeatureEntries[] = {
@@ -5088,7 +5088,10 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kWebShareDescription, kOsWin | kOsCrOS | kOsMac,
FEATURE_VALUE_TYPE(features::kWebShare)},
#endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC)
@@ -40,7 +42,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink/renderer/core/dom/document.cc
--- a/third_party/blink/renderer/core/dom/document.cc
+++ b/third_party/blink/renderer/core/dom/document.cc
@@ -4512,6 +4512,14 @@ void Document::ProcessBaseElement() {
@@ -4525,6 +4525,14 @@ void Document::ProcessBaseElement() {
KURL base_element_url;
if (href) {
String stripped_href = StripLeadingAndTrailingHTMLSpaces(*href);
@@ -55,7 +57,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink
if (!stripped_href.empty())
base_element_url = KURL(FallbackBaseURL(), stripped_href);
}
@@ -4530,6 +4538,14 @@ void Document::ProcessBaseElement() {
@@ -4543,6 +4551,14 @@ void Document::ProcessBaseElement() {
!GetExecutionContext()->GetSecurityOrigin()->CanRequest(
base_element_url)) {
UseCounter::Count(*this, WebFeature::kBaseWithCrossOriginHref);
@@ -70,7 +72,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink
}
}
@@ -4549,6 +4565,8 @@ void Document::ProcessBaseElement() {
@@ -4562,6 +4578,8 @@ void Document::ProcessBaseElement() {
if (target->Contains('<'))
UseCounter::Count(*this, WebFeature::kBaseWithOpenBracketInTarget);
base_target_ = *target;
@@ -82,7 +84,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink
diff --git a/third_party/blink/renderer/core/dom/element.cc b/third_party/blink/renderer/core/dom/element.cc
--- a/third_party/blink/renderer/core/dom/element.cc
+++ b/third_party/blink/renderer/core/dom/element.cc
@@ -2550,8 +2550,26 @@ void Element::StripScriptingAttributes(
@@ -2576,8 +2576,26 @@ void Element::StripScriptingAttributes(
attribute_vector.Shrink(destination);
}
@@ -113,7 +115,7 @@ diff --git a/third_party/blink/renderer/core/dom/element.cc b/third_party/blink/
diff --git a/third_party/blink/renderer/core/dom/element.h b/third_party/blink/renderer/core/dom/element.h
--- a/third_party/blink/renderer/core/dom/element.h
+++ b/third_party/blink/renderer/core/dom/element.h
@@ -568,7 +568,8 @@ class CORE_EXPORT Element : public ContainerNode, public Animatable {
@@ -575,7 +575,8 @@ class CORE_EXPORT Element : public ContainerNode, public Animatable {
virtual const QualifiedName& SubResourceAttributeName() const;
// Only called by the parser immediately after element construction.
@@ -317,7 +319,7 @@ diff --git a/third_party/blink/renderer/core/page/frame_tree.cc b/third_party/bl
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -1514,8 +1514,8 @@
@@ -1486,8 +1486,8 @@
// Experiment with preventing some instances of mutation XSS
// by escaping "<" and ">" in attribute values.
// See: crbug.com/1175016
@@ -328,7 +330,7 @@ diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5
},
{
name: "EventTimingInteractionCount",
@@ -2214,6 +2214,12 @@
@@ -2175,6 +2175,12 @@
// Use LongAnimationFrameMonitor to emit longtask entries
name: "LongTaskFromLongAnimationFrame"
},
@@ -4,6 +4,8 @@ Subject: Multi-Screen Window Placement API fix
Links the use of screen.isExtended to WINDOW_MANAGEMENT permission
granted by user
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
.../blink/renderer/core/frame/screen.cc | 25 +++++++++++++++++--
.../blink/renderer/core/frame/screen.h | 8 ++++++
@@ -20,12 +22,12 @@ diff --git a/third_party/blink/renderer/core/frame/screen.cc b/third_party/blink
#include "ui/display/screen_info.h"
#include "ui/display/screen_infos.h"
@@ -49,7 +50,26 @@ Screen::Screen(LocalDOMWindow* window,
bool use_size_override)
: ExecutionContextClient(window),
display_id_(display_id),
- use_size_override_(use_size_override) {}
+ use_size_override_(use_size_override),
@@ -45,7 +46,26 @@ namespace {
} // namespace
Screen::Screen(LocalDOMWindow* window, int64_t display_id)
- : ExecutionContextClient(window), display_id_(display_id) {}
+ : ExecutionContextClient(window), display_id_(display_id),
+ permission_service_(window) {
+ if (!permission_service_.is_bound()) {
+ ConnectToPermissionService(
@@ -48,15 +50,15 @@ diff --git a/third_party/blink/renderer/core/frame/screen.cc b/third_party/blink
// static
bool Screen::AreWebExposedScreenPropertiesEqual(
@@ -159,6 +179,7 @@ int Screen::availWidth() const {
@@ -144,6 +164,7 @@ int Screen::availWidth() const {
}
void Screen::Trace(Visitor* visitor) const {
+ visitor->Trace(permission_service_);
EventTargetWithInlineData::Trace(visitor);
EventTarget::Trace(visitor);
ExecutionContextClient::Trace(visitor);
Supplementable<Screen>::Trace(visitor);
@@ -181,7 +202,7 @@ bool Screen::isExtended() const {
@@ -166,7 +187,7 @@ bool Screen::isExtended() const {
return false;
}
@@ -68,7 +70,7 @@ diff --git a/third_party/blink/renderer/core/frame/screen.cc b/third_party/blink
diff --git a/third_party/blink/renderer/core/frame/screen.h b/third_party/blink/renderer/core/frame/screen.h
--- a/third_party/blink/renderer/core/frame/screen.h
+++ b/third_party/blink/renderer/core/frame/screen.h
@@ -33,6 +33,8 @@
@@ -33,12 +33,20 @@
#include "third_party/blink/renderer/core/dom/events/event_target.h"
#include "third_party/blink/renderer/core/execution_context/execution_context_lifecycle_observer.h"
#include "third_party/blink/renderer/platform/heap/garbage_collected.h"
@@ -77,18 +79,17 @@ diff --git a/third_party/blink/renderer/core/frame/screen.h b/third_party/blink/
#include "third_party/blink/renderer/platform/supplementable.h"
#include "third_party/blink/renderer/platform/wtf/text/atomic_string.h"
#include "ui/gfx/geometry/rect.h"
@@ -99,6 +101,12 @@ class CORE_EXPORT Screen : public EventTargetWithInlineData,
// dimensions match window.innerWidth/innerHeight while a page is fullscreen,
// but that is not always true. crbug.com/1367416
const bool use_size_override_;
namespace display {
struct ScreenInfo;
+
+ private:
+ void DidGetPermissionState(mojom::blink::PermissionStatus status);
+
+ bool has_permission_ = false;
+ HeapMojoRemote<mojom::blink::PermissionService> permission_service_;
};
}
} // namespace blink
namespace blink {
--
2.25.1
@@ -2,8 +2,8 @@ From: uazo <uazo@users.noreply.github.com>
Date: Thu, 16 Mar 2023 14:17:22 +0000
Subject: Partition HSTS cache by NAK
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
.../https_only_mode_upgrade_interceptor.cc | 1 +
.../browser/ssl/https_upgrades_interceptor.cc | 1 +
.../webui/net_internals/net_internals_ui.cc | 14 ++-
.../core/browser/hsts_query.cc | 1 +
@@ -16,19 +16,8 @@ Subject: Partition HSTS cache by NAK
services/network/network_context.cc | 26 +++--
services/network/network_context.h | 11 ++-
.../public/mojom/network_context.mojom | 8 +-
13 files changed, 132 insertions(+), 84 deletions(-)
12 files changed, 131 insertions(+), 84 deletions(-)
diff --git a/chrome/browser/ssl/https_only_mode_upgrade_interceptor.cc b/chrome/browser/ssl/https_only_mode_upgrade_interceptor.cc
--- a/chrome/browser/ssl/https_only_mode_upgrade_interceptor.cc
+++ b/chrome/browser/ssl/https_only_mode_upgrade_interceptor.cc
@@ -131,6 +131,7 @@ void HttpsOnlyModeUpgradeInterceptor::MaybeCreateLoader(
network::mojom::NetworkContext* network_context =
profile->GetDefaultStoragePartition()->GetNetworkContext();
network_context->IsHSTSActiveForHost(
+ tentative_resource_request.trusted_params->isolation_info.network_anonymization_key(),
tentative_resource_request.url.host(),
mojo::WrapCallbackWithDefaultInvokeIfNotRun(
std::move(query_complete_callback),
diff --git a/chrome/browser/ssl/https_upgrades_interceptor.cc b/chrome/browser/ssl/https_upgrades_interceptor.cc
--- a/chrome/browser/ssl/https_upgrades_interceptor.cc
+++ b/chrome/browser/ssl/https_upgrades_interceptor.cc
@@ -43,7 +32,7 @@ diff --git a/chrome/browser/ssl/https_upgrades_interceptor.cc b/chrome/browser/s
diff --git a/chrome/browser/ui/webui/net_internals/net_internals_ui.cc b/chrome/browser/ui/webui/net_internals/net_internals_ui.cc
--- a/chrome/browser/ui/webui/net_internals/net_internals_ui.cc
+++ b/chrome/browser/ui/webui/net_internals/net_internals_ui.cc
@@ -299,7 +299,10 @@ void NetInternalsMessageHandler::OnDomainSecurityPolicyDelete(
@@ -395,7 +395,10 @@ void NetInternalsMessageHandler::OnDomainSecurityPolicyDelete(
// There cannot be a unicode entry in the HSTS set.
return;
}
@@ -54,7 +43,7 @@ diff --git a/chrome/browser/ui/webui/net_internals/net_internals_ui.cc b/chrome/
*domain, base::BindOnce(&IgnoreBoolCallback));
}
@@ -309,7 +312,10 @@ void NetInternalsMessageHandler::OnHSTSQuery(const base::Value::List& list) {
@@ -405,7 +408,10 @@ void NetInternalsMessageHandler::OnHSTSQuery(const base::Value::List& list) {
DCHECK(callback_id && domain);
AllowJavascript();
@@ -65,7 +54,7 @@ diff --git a/chrome/browser/ui/webui/net_internals/net_internals_ui.cc b/chrome/
*domain,
base::BindOnce(&NetInternalsMessageHandler::ResolveCallbackWithResult,
weak_factory_.GetWeakPtr(), *callback_id));
@@ -335,8 +341,12 @@ void NetInternalsMessageHandler::OnHSTSAdd(const base::Value::List& list) {
@@ -431,8 +437,12 @@ void NetInternalsMessageHandler::OnHSTSAdd(const base::Value::List& list) {
const bool sts_include_subdomains = list[1].GetBool();
base::Time expiry = base::Time::Now() + base::Days(1000);
@@ -482,7 +471,7 @@ diff --git a/net/socket/ssl_client_socket_impl.cc b/net/socket/ssl_client_socket
diff --git a/net/url_request/url_request_context_builder.cc b/net/url_request/url_request_context_builder.cc
--- a/net/url_request/url_request_context_builder.cc
+++ b/net/url_request/url_request_context_builder.cc
@@ -392,20 +392,6 @@ std::unique_ptr<URLRequestContext> URLRequestContextBuilder::Build() {
@@ -393,20 +393,6 @@ std::unique_ptr<URLRequestContext> URLRequestContextBuilder::Build() {
context->set_transport_security_state(
std::make_unique<TransportSecurityState>(hsts_policy_bypass_list_));
@@ -506,7 +495,7 @@ diff --git a/net/url_request/url_request_context_builder.cc b/net/url_request/ur
diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_request_http_job.cc
--- a/net/url_request/url_request_http_job.cc
+++ b/net/url_request/url_request_http_job.cc
@@ -204,7 +204,7 @@ std::unique_ptr<URLRequestJob> URLRequestHttpJob::Create(URLRequest* request) {
@@ -205,7 +205,7 @@ std::unique_ptr<URLRequestJob> URLRequestHttpJob::Create(URLRequest* request) {
// Check for HSTS upgrade.
TransportSecurityState* hsts =
request->context()->transport_security_state();
@@ -515,7 +504,7 @@ diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_reque
return std::make_unique<URLRequestRedirectJob>(
request, UpgradeSchemeToCryptographic(url),
// Use status code 307 to preserve the method, so POST requests work.
@@ -993,7 +993,7 @@ void URLRequestHttpJob::ProcessStrictTransportSecurityHeader() {
@@ -1026,7 +1026,7 @@ void URLRequestHttpJob::ProcessStrictTransportSecurityHeader() {
HttpResponseHeaders* headers = GetResponseHeaders();
std::string value;
if (headers->EnumerateHeader(nullptr, "Strict-Transport-Security", &value))
@@ -524,7 +513,7 @@ diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_reque
}
void URLRequestHttpJob::OnStartCompleted(int result) {
@@ -1063,7 +1063,7 @@ void URLRequestHttpJob::OnStartCompleted(int result) {
@@ -1096,7 +1096,7 @@ void URLRequestHttpJob::OnStartCompleted(int result) {
TransportSecurityState* state = context->transport_security_state();
NotifySSLCertificateError(
result, transaction_->GetResponseInfo()->ssl_info,
@@ -536,7 +525,7 @@ diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_reque
diff --git a/services/network/network_context.cc b/services/network/network_context.cc
--- a/services/network/network_context.cc
+++ b/services/network/network_context.cc
@@ -1828,17 +1828,19 @@ void NetworkContext::SetCorsOriginAccessListsForOrigin(
@@ -1842,17 +1842,19 @@ void NetworkContext::SetCorsOriginAccessListsForOrigin(
std::move(callback).Run();
}
@@ -559,7 +548,7 @@ diff --git a/services/network/network_context.cc b/services/network/network_cont
IsHSTSActiveForHostCallback callback) {
net::TransportSecurityState* security_state =
url_request_context_->transport_security_state();
@@ -1848,10 +1850,10 @@ void NetworkContext::IsHSTSActiveForHost(const std::string& host,
@@ -1862,10 +1864,10 @@ void NetworkContext::IsHSTSActiveForHost(const std::string& host,
return;
}
@@ -572,7 +561,7 @@ diff --git a/services/network/network_context.cc b/services/network/network_cont
GetHSTSStateCallback callback) {
base::Value::Dict result;
@@ -1887,10 +1889,10 @@ void NetworkContext::GetHSTSState(const std::string& domain,
@@ -1901,10 +1903,10 @@ void NetworkContext::GetHSTSState(const std::string& domain,
net::TransportSecurityState::STSState dynamic_sts_state;
net::TransportSecurityState::PKPState dynamic_pkp_state;
bool found_sts_dynamic = transport_security_state->GetDynamicSTSState(
@@ -585,7 +574,7 @@ diff --git a/services/network/network_context.cc b/services/network/network_cont
if (found_sts_dynamic) {
result.Set("dynamic_upgrade_mode",
static_cast<int>(dynamic_sts_state.upgrade_mode));
@@ -1926,6 +1928,7 @@ void NetworkContext::GetHSTSState(const std::string& domain,
@@ -1940,6 +1942,7 @@ void NetworkContext::GetHSTSState(const std::string& domain,
}
void NetworkContext::DeleteDynamicDataForHost(
@@ -593,7 +582,7 @@ diff --git a/services/network/network_context.cc b/services/network/network_cont
const std::string& host,
DeleteDynamicDataForHostCallback callback) {
net::TransportSecurityState* transport_security_state =
@@ -1936,7 +1939,7 @@ void NetworkContext::DeleteDynamicDataForHost(
@@ -1950,7 +1953,7 @@ void NetworkContext::DeleteDynamicDataForHost(
}
std::move(callback).Run(
@@ -602,7 +591,7 @@ diff --git a/services/network/network_context.cc b/services/network/network_cont
}
void NetworkContext::EnableStaticKeyPinningForTesting(
@@ -1977,7 +1980,7 @@ void NetworkContext::PreconnectSockets(
@@ -2017,7 +2020,7 @@ void NetworkContext::PreconnectSockets(
DCHECK(!require_network_anonymization_key_ ||
!network_anonymization_key.IsEmpty());
@@ -611,7 +600,7 @@ diff --git a/services/network/network_context.cc b/services/network/network_cont
// |PreconnectSockets| may receive arguments from the renderer, which is not
// guaranteed to validate them.
@@ -2767,12 +2770,15 @@ void NetworkContext::OnConnectionError() {
@@ -2833,12 +2836,15 @@ void NetworkContext::OnConnectionError() {
std::move(on_connection_close_callback_).Run(this);
}
@@ -652,7 +641,7 @@ diff --git a/services/network/network_context.h b/services/network/network_conte
const std::string& host,
DeleteDynamicDataForHostCallback callback) override;
void SetCorsOriginAccessListsForOrigin(
@@ -686,7 +688,8 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext
@@ -702,7 +704,8 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext
mojo::PendingRemote<mojom::CookieAccessObserver> cookie_observer,
net::FirstPartySetMetadata first_party_set_metadata);
@@ -665,7 +654,7 @@ diff --git a/services/network/network_context.h b/services/network/network_conte
diff --git a/services/network/public/mojom/network_context.mojom b/services/network/public/mojom/network_context.mojom
--- a/services/network/public/mojom/network_context.mojom
+++ b/services/network/public/mojom/network_context.mojom
@@ -1434,16 +1434,16 @@ interface NetworkContext {
@@ -1489,16 +1489,16 @@ interface NetworkContext {
// Adds explicitly-specified data as if it was processed from an
// HSTS header. Used by tests and implementation of chrome://net-internals.
@@ -685,7 +674,7 @@ diff --git a/services/network/public/mojom/network_context.mojom b/services/netw
=> (mojo_base.mojom.DictionaryValue state);
// Sets allowed and blocked origins respectively for the URLLoaderFactory
@@ -1462,7 +1462,7 @@ interface NetworkContext {
@@ -1517,7 +1517,7 @@ interface NetworkContext {
// Deletes any dynamic data stored for |host| from the transport
// security state. Returns true iff an entry was deleted.
// See net::TransportSecurityState::DeleteDynamicDataForHost for more detail.
@@ -6,6 +6,8 @@ Enables cookie partitioning by top frame etld, respecting the
user's possible wish to disable all third-party cookies.
Disabling the flag via the ui restores the normal mode, where
samesite=none first-party cookies are sent in third-party contexts.
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
net/base/features.cc | 8 ++++----
net/cookies/canonical_cookie.cc | 12 +-----------
@@ -22,7 +24,7 @@ samesite=none first-party cookies are sent in third-party contexts.
diff --git a/net/base/features.cc b/net/base/features.cc
--- a/net/base/features.cc
+++ b/net/base/features.cc
@@ -252,8 +252,8 @@ BASE_FEATURE(kWaitForFirstPartySetsInit,
@@ -268,8 +268,8 @@ BASE_FEATURE(kWaitForFirstPartySetsInit,
base::FEATURE_ENABLED_BY_DEFAULT);
BASE_FEATURE(kPartitionedCookies,
@@ -33,7 +35,7 @@ diff --git a/net/base/features.cc b/net/base/features.cc
BASE_FEATURE(kNoncedPartitionedCookies,
"NoncedPartitionedCookies",
@@ -268,8 +268,8 @@ BASE_FEATURE(kStaticKeyPinningEnforcement,
@@ -284,8 +284,8 @@ BASE_FEATURE(kStaticKeyPinningEnforcement,
base::FEATURE_ENABLED_BY_DEFAULT);
BASE_FEATURE(kCookieDomainRejectNonASCII,
@@ -47,7 +49,7 @@ diff --git a/net/base/features.cc b/net/base/features.cc
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
@@ -1576,8 +1576,6 @@ bool CanonicalCookie::IsCanonicalForFromStorage() const {
@@ -1468,8 +1468,6 @@ bool CanonicalCookie::IsCanonicalForFromStorage() const {
if (IsPartitioned()) {
if (CookiePartitionKey::HasNonce(partition_key_))
return true;
@@ -56,7 +58,7 @@ diff --git a/net/cookies/canonical_cookie.cc b/net/cookies/canonical_cookie.cc
}
return true;
@@ -1851,15 +1849,7 @@ bool CanonicalCookie::IsCookiePartitionedValid(const GURL& url,
@@ -1726,15 +1724,7 @@ bool CanonicalCookie::IsCookiePartitionedValid(const GURL& url,
bool secure,
bool is_partitioned,
bool partition_has_nonce) {
@@ -113,7 +115,7 @@ diff --git a/net/cookies/parsed_cookie.h b/net/cookies/parsed_cookie.h
diff --git a/net/extras/sqlite/sqlite_persistent_cookie_store.cc b/net/extras/sqlite/sqlite_persistent_cookie_store.cc
--- a/net/extras/sqlite/sqlite_persistent_cookie_store.cc
+++ b/net/extras/sqlite/sqlite_persistent_cookie_store.cc
@@ -864,6 +864,16 @@ bool SQLitePersistentCookieStore::Backend::DoInitializeDatabase() {
@@ -803,6 +803,16 @@ bool SQLitePersistentCookieStore::Backend::DoInitializeDatabase() {
if (!restore_old_session_cookies_)
DeleteSessionCookiesOnStartup();
@@ -133,9 +135,9 @@ diff --git a/net/extras/sqlite/sqlite_persistent_cookie_store.cc b/net/extras/sq
diff --git a/services/network/cookie_settings.cc b/services/network/cookie_settings.cc
--- a/services/network/cookie_settings.cc
+++ b/services/network/cookie_settings.cc
@@ -35,6 +35,11 @@ bool IsExplicitSetting(const ContentSettingPatternSource& setting) {
!setting.secondary_pattern.MatchesAllHosts();
}
@@ -30,6 +30,11 @@
namespace network {
namespace {
+bool IsThirdPartyAllowed(const ContentSettingPatternSource& setting) {
+ return setting.primary_pattern.MatchesAllHosts() &&
@@ -145,7 +147,7 @@ diff --git a/services/network/cookie_settings.cc b/services/network/cookie_setti
const ContentSettingPatternSource* FindMatchingSetting(
const GURL& primary_url,
const GURL& secondary_url,
@@ -193,11 +198,14 @@ net::NetworkDelegate::PrivacySetting CookieSettings::IsPrivacyModeEnabled(
@@ -185,11 +190,14 @@ net::NetworkDelegate::PrivacySetting CookieSettings::IsPrivacyModeEnabled(
CookieSettings::ThirdPartyBlockingScope
CookieSettings::GetThirdPartyBlockingScope(const GURL& first_party_url) const {
@@ -165,7 +167,7 @@ diff --git a/services/network/cookie_settings.cc b/services/network/cookie_setti
diff --git a/services/network/restricted_cookie_manager.cc b/services/network/restricted_cookie_manager.cc
--- a/services/network/restricted_cookie_manager.cc
+++ b/services/network/restricted_cookie_manager.cc
@@ -773,6 +773,9 @@ void RestrictedCookieManager::SetCookieFromString(
@@ -783,6 +783,9 @@ void RestrictedCookieManager::SetCookieFromString(
std::move(callback).Run(site_for_cookies_ok, top_frame_origin_ok);
callback = base::DoNothing();
@@ -4,6 +4,8 @@ Subject: Remove ChromiumNetworkAdapter
Removes from java code the ability to make http connections
without asking the native code
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
.../browser/download/OMADownloadHandler.java | 38 -------------
.../browser/feedback/ConnectivityChecker.java | 37 +------------
@@ -17,7 +19,7 @@ without asking the native code
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/OMADownloadHandler.java b/chrome/android/java/src/org/chromium/chrome/browser/download/OMADownloadHandler.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/download/OMADownloadHandler.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/download/OMADownloadHandler.java
@@ -969,44 +969,6 @@ public class OMADownloadHandler extends BroadcastReceiver {
@@ -968,44 +968,6 @@ public class OMADownloadHandler extends BroadcastReceiver {
protected Boolean doInBackground() {
HttpURLConnection urlConnection = null;
boolean success = false;
@@ -65,7 +67,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/OMADow
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/feedback/ConnectivityChecker.java b/chrome/android/java/src/org/chromium/chrome/browser/feedback/ConnectivityChecker.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/feedback/ConnectivityChecker.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/feedback/ConnectivityChecker.java
@@ -137,42 +137,7 @@ public final class ConnectivityChecker {
@@ -136,42 +136,7 @@ public final class ConnectivityChecker {
postResult(callback, ConnectivityCheckResult.ERROR);
return;
}
@@ -112,7 +114,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/feedback/Connec
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/net/connectivitydetector/ConnectivityDetector.java b/chrome/android/java/src/org/chromium/chrome/browser/net/connectivitydetector/ConnectivityDetector.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/net/connectivitydetector/ConnectivityDetector.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/net/connectivitydetector/ConnectivityDetector.java
@@ -389,60 +389,6 @@ public class ConnectivityDetector implements NetworkChangeNotifier.ConnectionTyp
@@ -390,60 +390,6 @@ public class ConnectivityDetector implements NetworkChangeNotifier.ConnectionTyp
new AsyncTask<Integer>() {
@Override
protected Integer doInBackground() {
@@ -205,8 +207,8 @@ diff --git a/components/minidump_uploader/android/java/src/org/chromium/componen
diff --git a/components/variations/android/java/src/org/chromium/components/variations/firstrun/VariationsSeedFetcher.java b/components/variations/android/java/src/org/chromium/components/variations/firstrun/VariationsSeedFetcher.java
--- a/components/variations/android/java/src/org/chromium/components/variations/firstrun/VariationsSeedFetcher.java
+++ b/components/variations/android/java/src/org/chromium/components/variations/firstrun/VariationsSeedFetcher.java
@@ -184,14 +184,6 @@ public class VariationsSeedFetcher {
sInstance = fetcher;
@@ -186,14 +186,6 @@ public class VariationsSeedFetcher {
ResettersForTesting.register(() -> sInstance = oldValue);
}
- @VisibleForTesting
@@ -220,7 +222,7 @@ diff --git a/components/variations/android/java/src/org/chromium/components/vari
@VisibleForTesting
protected List<String> getAvailableInstanceManipulations() {
List<String> compressions = new ArrayList<String>();
@@ -506,24 +498,8 @@ public class VariationsSeedFetcher {
@@ -508,24 +500,8 @@ public class VariationsSeedFetcher {
HttpURLConnection connection = null;
try {
long startTimeMillis = SystemClock.elapsedRealtime();
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Wed, 19 Apr 2023 06:53:19 +0000
Subject: Remove auth header upon cross origin redirect
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
.../blink/renderer/platform/loader/fetch/resource_loader.cc | 3 +++
.../platform/loader/fetch/url_loader/sync_load_context.cc | 3 +++
@@ -10,7 +11,7 @@ Subject: Remove auth header upon cross origin redirect
diff --git a/third_party/blink/renderer/platform/loader/fetch/resource_loader.cc b/third_party/blink/renderer/platform/loader/fetch/resource_loader.cc
--- a/third_party/blink/renderer/platform/loader/fetch/resource_loader.cc
+++ b/third_party/blink/renderer/platform/loader/fetch/resource_loader.cc
@@ -837,6 +837,9 @@ bool ResourceLoader::WillFollowRedirect(
@@ -821,6 +821,9 @@ bool ResourceLoader::WillFollowRedirect(
new_url)) {
fetcher_->GetUseCounter().CountUse(
mojom::WebFeature::kAuthorizationCrossOrigin);
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Mon, 17 Apr 2023 12:43:19 +0000
Subject: Remove detection of captive portals
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
chrome/browser/net/profile_network_context_service.cc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
@@ -9,7 +10,7 @@ Subject: Remove detection of captive portals
diff --git a/chrome/browser/net/profile_network_context_service.cc b/chrome/browser/net/profile_network_context_service.cc
--- a/chrome/browser/net/profile_network_context_service.cc
+++ b/chrome/browser/net/profile_network_context_service.cc
@@ -389,7 +389,7 @@ void ProfileNetworkContextService::UpdateAdditionalCertificates() {
@@ -413,7 +413,7 @@ void ProfileNetworkContextService::UpdateAdditionalCertificates() {
void ProfileNetworkContextService::RegisterProfilePrefs(
user_prefs::PrefRegistrySyncable* registry) {
registry->RegisterBooleanPref(
@@ -1,7 +1,10 @@
From: Your Name <you@example.com>
From: uazo <uazo@users.noreply.github.com>
Date: Mon, 30 Jan 2023 15:20:53 +0000
Subject: Remove experimental-relative-c++-abi-vtables
although it is really interesting, it breaks execution with CFI active
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
build/config/compiler/BUILD.gn | 5 -----
1 file changed, 5 deletions(-)
@@ -9,7 +12,7 @@ Subject: Remove experimental-relative-c++-abi-vtables
diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
--- a/build/config/compiler/BUILD.gn
+++ b/build/config/compiler/BUILD.gn
@@ -682,11 +682,6 @@ config("compiler") {
@@ -681,11 +681,6 @@ config("compiler") {
cflags_cc += [ "-Wno-trigraphs" ]
}
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Tue, 27 Jun 2023 11:11:53 +0000
Subject: Remove support for device memory and cpu recovery
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
.../browser/blob/blob_memory_controller.cc | 20 ++++++++++---------
.../browser/quota/quota_device_info_helper.cc | 17 ++++++++++++++--
@@ -119,7 +120,7 @@ diff --git a/third_party/blink/common/device_memory/approximated_device_memory.c
diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/features.cc
--- a/third_party/blink/common/features.cc
+++ b/third_party/blink/common/features.cc
@@ -1835,8 +1835,8 @@ BASE_FEATURE(kWebFontsCacheAwareTimeoutAdaption,
@@ -1953,8 +1953,8 @@ BASE_FEATURE(kWebFontsCacheAwareTimeoutAdaption,
// Controls whether the implementation of the performance.measureMemory
// web API uses PerformanceManager or not.
BASE_FEATURE(kWebMeasureMemoryViaPerformanceManager,
@@ -193,7 +194,7 @@ diff --git a/third_party/blink/renderer/core/timing/memory_info.cc b/third_party
diff --git a/third_party/blink/renderer/core/timing/window_performance.cc b/third_party/blink/renderer/core/timing/window_performance.cc
--- a/third_party/blink/renderer/core/timing/window_performance.cc
+++ b/third_party/blink/renderer/core/timing/window_performance.cc
@@ -254,7 +254,7 @@ MemoryInfo* WindowPerformance::memory(ScriptState* script_state) const {
@@ -255,7 +255,7 @@ MemoryInfo* WindowPerformance::memory(ScriptState* script_state) const {
auto* memory_info = MakeGarbageCollected<MemoryInfo>(
Platform::Current()->IsLockedToSite()
? MemoryInfo::Precision::kPrecise
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Tue, 30 May 2023 15:13:31 +0000
Subject: Restore LastTabStandingTracker
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
chrome/browser/BUILD.gn | 10 ++++
.../host_content_settings_map_factory.cc | 2 +
@@ -26,9 +27,9 @@ Subject: Restore LastTabStandingTracker
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -1875,6 +1875,16 @@ static_library("browser") {
"webid/federated_identity_permission_context_factory.h",
]
@@ -1903,6 +1903,16 @@ static_library("browser") {
]
}
+ sources += [
+ "permissions/last_tab_standing_tracker.cc",
@@ -377,34 +378,34 @@ new file mode 100644
diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
--- a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
+++ b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
@@ -104,6 +104,7 @@
@@ -118,6 +118,7 @@
#include "chrome/browser/password_manager/password_reuse_manager_factory.h"
#include "chrome/browser/password_manager/password_store_factory.h"
#include "chrome/browser/permissions/adaptive_quiet_notification_permission_ui_enabler.h"
+#include "chrome/browser/permissions/last_tab_standing_tracker_factory.h"
#include "chrome/browser/permissions/notification_permission_review_service_factory.h"
#include "chrome/browser/permissions/notifications_engagement_service_factory.h"
#include "chrome/browser/permissions/one_time_permissions_tracker_factory.h"
@@ -717,6 +718,7 @@ void ChromeBrowserMainExtraPartsProfiles::
#include "chrome/browser/permissions/origin_keyed_permission_action_service_factory.h"
@@ -873,6 +874,7 @@ void ChromeBrowserMainExtraPartsProfiles::
#if BUILDFLAG(BUILD_WITH_TFLITE_LIB)
OnDeviceTailModelServiceFactory::GetInstance();
#endif
KAnonymityServiceFactory::GetInstance();
LanguageModelManagerFactory::GetInstance();
+ LastTabStandingTrackerFactory::GetInstance();
#if !BUILDFLAG(IS_ANDROID)
OneGoogleBarServiceFactory::GetInstance();
if (base::FeatureList::IsEnabled(permissions::features::kOneTimePermission)) {
OneTimePermissionsTrackerFactory::GetInstance();
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
@@ -55,6 +55,7 @@
@@ -66,6 +66,7 @@
#include "chrome/browser/page_load_metrics/page_load_metrics_initialize.h"
#include "chrome/browser/password_manager/chrome_password_manager_client.h"
#include "chrome/browser/performance_manager/public/user_tuning/user_performance_tuning_manager.h"
+#include "chrome/browser/permissions/last_tab_standing_tracker_tab_helper.h"
#include "chrome/browser/permissions/one_time_permissions_tracker_helper.h"
#include "chrome/browser/permissions/unused_site_permissions_service_factory.h"
#include "chrome/browser/predictors/loading_predictor_factory.h"
@@ -368,6 +369,7 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) {
#include "chrome/browser/predictors/loading_predictor_tab_helper.h"
@@ -399,6 +400,7 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) {
HistoryClustersTabHelper::CreateForWebContents(web_contents);
HttpsOnlyModeTabHelper::CreateForWebContents(web_contents);
webapps::InstallableManager::CreateForWebContents(web_contents);
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Mon, 17 Jul 2023 15:26:11 +0000
Subject: Show warnings on downloads over HTTP
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
chrome/common/chrome_features.cc | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
@@ -9,7 +10,7 @@ Subject: Show warnings on downloads over HTTP
diff --git a/chrome/common/chrome_features.cc b/chrome/common/chrome_features.cc
--- a/chrome/common/chrome_features.cc
+++ b/chrome/common/chrome_features.cc
@@ -1129,9 +1129,9 @@ BASE_FEATURE(kTreatUnsafeDownloadsAsActive,
@@ -1171,9 +1171,9 @@ BASE_FEATURE(kTreatUnsafeDownloadsAsActive,
base::FEATURE_ENABLED_BY_DEFAULT);
// Show warnings on downloads not delivered over HTTPS.
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Fri, 19 May 2023 12:26:37 +0000
Subject: TEMP Add a log to track strange behavior
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
net/spdy/spdy_session.cc | 1 +
1 file changed, 1 insertion(+)
@@ -9,7 +10,7 @@ Subject: TEMP Add a log to track strange behavior
diff --git a/net/spdy/spdy_session.cc b/net/spdy/spdy_session.cc
--- a/net/spdy/spdy_session.cc
+++ b/net/spdy/spdy_session.cc
@@ -3196,6 +3196,7 @@ void SpdySession::OnHeaders(spdy::SpdyStreamId stream_id,
@@ -2982,6 +2982,7 @@ void SpdySession::OnHeaders(spdy::SpdyStreamId stream_id,
if (it == active_streams_.end()) {
// NOTE: it may just be that the stream was cancelled.
LOG(WARNING) << "Received HEADERS for invalid stream " << stream_id;
@@ -1,7 +1,8 @@
From: Your Name <you@example.com>
From: uazo <uazo@users.noreply.github.com>
Date: Tue, 20 Dec 2022 15:09:46 +0000
Subject: Temp Disable kAutomaticLazyFrameLoadingToEmbeds
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
third_party/blink/common/features.cc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
@@ -9,7 +10,7 @@ Subject: Temp Disable kAutomaticLazyFrameLoadingToEmbeds
diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/features.cc
--- a/third_party/blink/common/features.cc
+++ b/third_party/blink/common/features.cc
@@ -160,7 +160,7 @@ const base::FeatureParam<int> kSkipFrameCountForLazyAds(
@@ -166,7 +166,7 @@ const base::FeatureParam<int> kSkipFrameCountForLazyAds(
// Vitals.
BASE_FEATURE(kAutomaticLazyFrameLoadingToEmbeds,
"AutomaticLazyFrameLoadingToEmbeds", // must be enabled
@@ -1,7 +1,8 @@
From: Your Name <you@example.com>
From: uazo <uazo@users.noreply.github.com>
Date: Sat, 12 Aug 2023 14:48:57 +0000
Subject: Temp disable predictive back gesture
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
chrome/android/java/AndroidManifest.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
@@ -9,7 +10,7 @@ Subject: Temp disable predictive back gesture
diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/AndroidManifest.xml
--- a/chrome/android/java/AndroidManifest.xml
+++ b/chrome/android/java/AndroidManifest.xml
@@ -189,7 +189,7 @@ by a child template that "extends" this file.
@@ -187,7 +187,7 @@ by a child template that "extends" this file.
android:networkSecurityConfig="@xml/network_security_config"
android:allowAudioPlaybackCapture="false"
android:appComponentFactory="org.chromium.chrome.browser.base.SplitCompatAppComponentFactory"
@@ -1,26 +0,0 @@
From: Your Name <you@example.com>
Date: Wed, 12 Oct 2022 11:36:56 +0000
Subject: WIN ADDTO AImageReader CFI crash mitigations
---
gpu/ipc/service/gpu_init.cc | 2 ++
1 file changed, 2 insertions(+)
diff --git a/gpu/ipc/service/gpu_init.cc b/gpu/ipc/service/gpu_init.cc
--- a/gpu/ipc/service/gpu_init.cc
+++ b/gpu/ipc/service/gpu_init.cc
@@ -616,10 +616,12 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandLine* command_line,
}
#endif // BUILDFLAG(IS_WIN)
+#if BUILDFLAG(IS_ANDROID)
// Disable AImageReader if the workaround is enabled.
if (gpu_feature_info_.IsWorkaroundEnabled(DISABLE_AIMAGEREADER)) {
base::android::AndroidImageReader::DisableSupport();
}
+#endif
if (gpu_feature_info_.status_values[GPU_FEATURE_TYPE_VULKAN] !=
kGpuFeatureStatusEnabled ||
--
2.25.1
@@ -1,26 +0,0 @@
From: Your Name <you@example.com>
Date: Mon, 19 Dec 2022 11:23:10 +0000
Subject: WIN ADDTO Add AllowUserCertificates flag
---
chrome/browser/about_flags.cc | 2 ++
1 file changed, 2 insertions(+)
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -9239,10 +9239,12 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kHttpsUpgradesDescription, kOsDesktop | kOsAndroid,
FEATURE_VALUE_TYPE(features::kHttpsUpgrades)},
+#if BUILDFLAG(IS_ANDROID)
{"allow-user-certificates",
flag_descriptions::kAllowUserCertificatesName,
flag_descriptions::kAllowUserCertificatesDescription, kOsAndroid,
FEATURE_VALUE_TYPE(chrome::android::kAllowUserCertificates)},
+#endif
{"omnibox-updated-connection-security-indicators",
flag_descriptions::kOmniboxUpdatedConnectionSecurityIndicatorsName,
flag_descriptions::kOmniboxUpdatedConnectionSecurityIndicatorsDescription,
--
2.25.1
@@ -1,39 +0,0 @@
From: Your Name <you@example.com>
Date: Wed, 12 Oct 2022 10:59:27 +0000
Subject: WIN ADDTO Add a proxy configuration page
---
chrome/browser/browser_resources.grd | 6 ++----
chrome/browser/extensions/api/proxy/proxy_api_helpers.cc | 2 +-
2 files changed, 3 insertions(+), 5 deletions(-)
diff --git a/chrome/browser/browser_resources.grd b/chrome/browser/browser_resources.grd
--- a/chrome/browser/browser_resources.grd
+++ b/chrome/browser/browser_resources.grd
@@ -285,10 +285,8 @@
<include name="IDR_ADDITIONAL_MODULE_IDS" file="${additional_modules_list_file}" use_base_dir="false" type="BINDATA" />
</if>
<!-- Bromite Proxy Configuration UI -->
- <if expr="is_android">
- <include name="IDR_PROXY_CONFIG_HTML" file="resources\proxy_config.html" flattenhtml="true" type="BINDATA" compress="gzip" />
- <include name="IDR_PROXY_CONFIG_JS" file="resources\proxy_config.js" type="BINDATA" compress="gzip" />
- </if>
+ <include name="IDR_PROXY_CONFIG_HTML" file="resources\proxy_config.html" flattenhtml="true" type="BINDATA" compress="gzip" />
+ <include name="IDR_PROXY_CONFIG_JS" file="resources\proxy_config.js" type="BINDATA" compress="gzip" />
<if expr="not is_android">
<include name="IDR_ABOUT_SYS_HTML" file="resources\about_sys\about_sys.html" type="BINDATA" />
<include name="IDR_ABOUT_SYS_CSS" file="resources\about_sys\about_sys.css" type="BINDATA" />
diff --git a/chrome/browser/extensions/api/proxy/proxy_api_helpers.cc b/chrome/browser/extensions/api/proxy/proxy_api_helpers.cc
--- a/chrome/browser/extensions/api/proxy/proxy_api_helpers.cc
+++ b/chrome/browser/extensions/api/proxy/proxy_api_helpers.cc
@@ -388,7 +388,7 @@ absl::optional<base::Value::Dict> CreateProxyConfigDict(
return absl::nullopt;
}
return ProxyConfigDictionary::CreateFixedServers(proxy_rules_string,
- bypass_list);
+ bypass_list, /*reverse_bypass*/false);
}
case ProxyPrefs::MODE_SYSTEM:
return ProxyConfigDictionary::CreateSystem();
--
2.25.1
@@ -1,96 +0,0 @@
From: Your Name <you@example.com>
Date: Wed, 12 Oct 2022 11:30:34 +0000
Subject: WIN ADDTO Add bookmark import/export actions
---
chrome/browser/about_flags.cc | 2 ++
chrome/browser/bookmarks/bookmark_html_writer.cc | 7 ++++++-
.../select_file_dialog/headless_select_file_dialog.cc | 4 ++++
ui/shell_dialogs/select_file_dialog_win.cc | 5 +++++
4 files changed, 17 insertions(+), 1 deletion(-)
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -9466,11 +9466,13 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(net::features::kIsCleartextPermitted)},
#endif
+#if BUILDFLAG(IS_ANDROID)
{"export-bookmarks-use-saf",
flag_descriptions::kBookmarksExportUseSafName,
flag_descriptions::kBookmarksExportUseSafDescription, kOsAndroid,
FEATURE_VALUE_TYPE(
chrome::android::kBookmarksExportUseSaf)},
+#endif
#if BUILDFLAG(IS_CHROMEOS_ASH)
{"video-conference", flag_descriptions::kVideoConferenceName,
diff --git a/chrome/browser/bookmarks/bookmark_html_writer.cc b/chrome/browser/bookmarks/bookmark_html_writer.cc
--- a/chrome/browser/bookmarks/bookmark_html_writer.cc
+++ b/chrome/browser/bookmarks/bookmark_html_writer.cc
@@ -27,7 +27,9 @@
#include "base/task/thread_pool.h"
#include "base/time/time.h"
#include "base/values.h"
+#if BUILDFLAG(IS_ANDROID)
#include "base/android/content_uri_utils.h"
+#endif
#include "chrome/browser/bookmarks/bookmark_model_factory.h"
#include "chrome/browser/favicon/favicon_service_factory.h"
#include "chrome/browser/profiles/profile.h"
@@ -234,12 +236,15 @@ class Writer : public base::RefCountedThreadSafe<Writer> {
// Opens the file, returning true on success.
bool OpenFile() {
int flags = base::File::FLAG_CREATE_ALWAYS | base::File::FLAG_WRITE;
+#if BUILDFLAG(IS_ANDROID)
if (path_.IsContentUri()) {
file_ = std::make_unique<base::File>(base::OpenContentUriForWrite(path_));
} else {
file_ = std::make_unique<base::File>(path_, flags);
}
-
+#else
+ file_ = std::make_unique<base::File>(path_, flags);
+#endif
if (!file_->IsValid()) {
PLOG(ERROR) << "Could not create " << path_;
return false;
diff --git a/components/headless/select_file_dialog/headless_select_file_dialog.cc b/components/headless/select_file_dialog/headless_select_file_dialog.cc
--- a/components/headless/select_file_dialog/headless_select_file_dialog.cc
+++ b/components/headless/select_file_dialog/headless_select_file_dialog.cc
@@ -58,6 +58,10 @@ class HeadlessSelectFileDialog : public ui::SelectFileDialog {
// ui::SelectFileDialog:
bool HasMultipleFileTypeChoicesImpl() override { return false; }
+ void ShowToast(const std::string& message) override {
+ // nothing to do, used only on android
+ }
+
SelectFileDialogCallback callback_;
};
diff --git a/ui/shell_dialogs/select_file_dialog_win.cc b/ui/shell_dialogs/select_file_dialog_win.cc
--- a/ui/shell_dialogs/select_file_dialog_win.cc
+++ b/ui/shell_dialogs/select_file_dialog_win.cc
@@ -193,6 +193,7 @@ class SelectFileDialogImpl : public ui::SelectFileDialog,
int index);
bool HasMultipleFileTypeChoicesImpl() override;
+ void ShowToast(const std::string& message) override;
// Returns the filter to be used while displaying the open/save file dialog.
// This is computed from the extensions for the file types being opened.
@@ -271,6 +272,10 @@ bool SelectFileDialogImpl::HasMultipleFileTypeChoicesImpl() {
return has_multiple_file_type_choices_;
}
+void SelectFileDialogImpl::ShowToast(const std::string& message) {
+ // nothing to do, used only on android
+}
+
bool SelectFileDialogImpl::IsRunning(gfx::NativeWindow owning_window) const {
if (!owning_window->GetRootWindow())
return false;
--
2.25.1
@@ -1,29 +0,0 @@
From: Your Name <you@example.com>
Date: Wed, 12 Oct 2022 12:02:16 +0000
Subject: WIN ADDTO Disable requests for single-word Omni
---
chrome/browser/ui/omnibox/chrome_omnibox_navigation_observer.cc | 2 ++
1 file changed, 2 insertions(+)
diff --git a/chrome/browser/ui/omnibox/chrome_omnibox_navigation_observer.cc b/chrome/browser/ui/omnibox/chrome_omnibox_navigation_observer.cc
--- a/chrome/browser/ui/omnibox/chrome_omnibox_navigation_observer.cc
+++ b/chrome/browser/ui/omnibox/chrome_omnibox_navigation_observer.cc
@@ -76,6 +76,7 @@ bool OnlyChangeIsFromHTTPToHTTPS(const GURL& origin, const GURL& destination) {
return origin_with_https == destination;
}
+#if BUILDFLAG(IS_ANDROID)
// Choose the appropriate URLLoaderFactory: either an explicitly specified or a
// default for the given profile.
network::mojom::URLLoaderFactory* GetURLLoaderFactory(
@@ -87,6 +88,7 @@ network::mojom::URLLoaderFactory* GetURLLoaderFactory(
->GetURLLoaderFactoryForBrowserProcess()
.get();
}
+#endif
// Helper to keep ChromeOmniboxNavigationObserver alive while the initiated
// navigation is pending.
--
2.25.1
@@ -1,45 +0,0 @@
From: Your Name <you@example.com>
Date: Wed, 12 Oct 2022 11:53:36 +0000
Subject: WIN ADDTO Disable various metrics
---
chrome/browser/ui/search/ntp_user_data_logger.cc | 4 ----
components/ntp_tiles/custom_links_manager_impl.cc | 1 -
2 files changed, 5 deletions(-)
diff --git a/chrome/browser/ui/search/ntp_user_data_logger.cc b/chrome/browser/ui/search/ntp_user_data_logger.cc
--- a/chrome/browser/ui/search/ntp_user_data_logger.cc
+++ b/chrome/browser/ui/search/ntp_user_data_logger.cc
@@ -394,8 +394,6 @@ void NTPUserDataLogger::LogMostVisitedImpression(
void NTPUserDataLogger::LogMostVisitedNavigation(
const ntp_tiles::NTPTileImpression& impression) {
- ntp_tiles::metrics::RecordTileClick(impression);
-
// Records the action. This will be available as a time-stamped stream
// server-side and can be used to compute time-to-long-dwell.
base::RecordAction(base::UserMetricsAction("MostVisited_Clicked"));
@@ -424,10 +422,8 @@ void NTPUserDataLogger::EmitNtpStatistics(base::TimeDelta load_time,
if (!impression.has_value()) {
break;
}
- ntp_tiles::metrics::RecordTileImpression(*impression);
++tiles_count;
}
- ntp_tiles::metrics::RecordPageImpression(tiles_count);
DVLOG(1) << "Emitting NTP load time: " << load_time << ", "
<< "number of tiles: " << tiles_count;
diff --git a/components/ntp_tiles/custom_links_manager_impl.cc b/components/ntp_tiles/custom_links_manager_impl.cc
--- a/components/ntp_tiles/custom_links_manager_impl.cc
+++ b/components/ntp_tiles/custom_links_manager_impl.cc
@@ -203,7 +203,6 @@ void CustomLinksManagerImpl::RemoveCustomLinksForPreinstalledApps() {
}
}
if (default_app_links_deleted) {
- metrics::RecordsMigratedDefaultAppDeleted(DeletedTileType::kCustomLink);
prefs_->SetBoolean(prefs::kCustomLinksForPreinstalledAppsRemoved, true);
}
}
--
2.25.1
@@ -1,23 +0,0 @@
From: Your Name <you@example.com>
Date: Wed, 12 Oct 2022 11:58:29 +0000
Subject: WIN ADDTO Do not build API keys infobar
---
chrome/browser/ui/startup/infobar_utils.cc | 3 ---
1 file changed, 3 deletions(-)
diff --git a/chrome/browser/ui/startup/infobar_utils.cc b/chrome/browser/ui/startup/infobar_utils.cc
--- a/chrome/browser/ui/startup/infobar_utils.cc
+++ b/chrome/browser/ui/startup/infobar_utils.cc
@@ -133,9 +133,6 @@ void AddInfoBarsIfNecessary(Browser* browser,
infobars::ContentInfoBarManager* infobar_manager =
infobars::ContentInfoBarManager::FromWebContents(web_contents);
- if (!google_apis::HasAPIKeyConfigured())
- GoogleApiKeysInfoBarDelegate::Create(infobar_manager);
-
if (ObsoleteSystem::IsObsoleteNowOrSoon()) {
PrefService* local_state = g_browser_process->local_state();
if (!local_state ||
--
2.25.1
@@ -1,337 +0,0 @@
From: Your Name <you@example.com>
Date: Wed, 12 Oct 2022 09:19:46 +0000
Subject: WIN ADDTO Experimental user scripts support
---
chrome/browser/BUILD.gn | 12 +++++++-----
chrome/browser/about_flags.cc | 2 ++
chrome/browser/prefs/browser_prefs.cc | 2 ++
chrome/browser/profiles/BUILD.gn | 4 +++-
...chrome_browser_main_extra_parts_profiles.cc | 4 ++++
chrome/browser/profiles/profile_manager.cc | 4 ++++
chrome/browser/profiles/renderer_updater.cc | 11 ++++++++++-
chrome/browser/profiles/renderer_updater.h | 2 ++
.../webui/chrome_web_ui_controller_factory.cc | 2 ++
chrome/renderer/BUILD.gn | 7 ++++++-
.../renderer/chrome_content_renderer_client.cc | 18 ++++++++++++++++++
.../renderer/chrome_render_thread_observer.cc | 2 ++
12 files changed, 62 insertions(+), 8 deletions(-)
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -3517,11 +3517,13 @@ static_library("browser") {
]
deps += [ "//chrome/android/modules/dev_ui/provider:native" ]
}
- deps += [
- "//components/user_scripts/common",
- "//components/user_scripts/browser",
- "//components/user_scripts/android",
- ]
+ if (is_android) {
+ deps += [
+ "//components/user_scripts/common",
+ "//components/user_scripts/browser",
+ "//components/user_scripts/android",
+ ]
+ }
} else {
#!is_android
sources += [
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -8162,9 +8162,11 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(ash::features::kClipboardHistoryLongpress)},
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
+#if BUILDFLAG(IS_ANDROID)
{"enable-userscripts-log", flag_descriptions::kEnableLoggingUserScriptsName,
flag_descriptions::kEnableLoggingUserScriptsDescription, kOsDesktop | kOsAndroid,
FEATURE_VALUE_TYPE(user_scripts::features::kEnableLoggingUserScripts)},
+#endif
#if BUILDFLAG(IS_WIN)
{"enable-media-foundation-video-capture",
diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc
--- a/chrome/browser/prefs/browser_prefs.cc
+++ b/chrome/browser/prefs/browser_prefs.cc
@@ -1634,7 +1634,9 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
translate::TranslatePrefs::RegisterProfilePrefs(registry);
omnibox::RegisterProfilePrefs(registry);
ZeroSuggestProvider::RegisterProfilePrefs(registry);
+#if BUILDFLAG(IS_ANDROID)
user_scripts::UserScriptsPrefs::RegisterProfilePrefs(registry);
+#endif
#if !BUILDFLAG(IS_ANDROID) && BUILDFLAG(GOOGLE_CHROME_BRANDING)
promos_utils::RegisterProfilePrefs(registry);
diff --git a/chrome/browser/profiles/BUILD.gn b/chrome/browser/profiles/BUILD.gn
--- a/chrome/browser/profiles/BUILD.gn
+++ b/chrome/browser/profiles/BUILD.gn
@@ -57,10 +57,12 @@ source_set("profile") {
"//components/profile_metrics",
"//components/sync/service",
"//components/variations",
- "//components/user_scripts/browser",
"//content/public/browser",
"//extensions/buildflags",
]
+ if (is_android) {
+ deps += [ "//components/user_scripts/browser" ]
+ }
if (enable_extensions) {
deps += [ "//extensions/browser" ]
}
diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
--- a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
+++ b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
@@ -469,7 +469,9 @@
#include "chrome/browser/offline_pages/request_coordinator_factory.h"
#endif
+#if BUILDFLAG(IS_ANDROID)
#include "components/user_scripts/browser/userscripts_browser_client.h"
+#endif
namespace chrome {
@@ -1097,7 +1099,9 @@ void ChromeBrowserMainExtraPartsProfiles::
#endif
WebDataServiceFactory::GetInstance();
webrtc_event_logging::WebRtcEventLogManagerKeyedServiceFactory::GetInstance();
+#if BUILDFLAG(IS_ANDROID)
user_scripts::UserScriptsBrowserClient::GetInstance();
+#endif
}
void ChromeBrowserMainExtraPartsProfiles::PreProfileInit() {
diff --git a/chrome/browser/profiles/profile_manager.cc b/chrome/browser/profiles/profile_manager.cc
--- a/chrome/browser/profiles/profile_manager.cc
+++ b/chrome/browser/profiles/profile_manager.cc
@@ -106,7 +106,9 @@
#include "extensions/common/manifest.h"
#endif
+#if BUILDFLAG(IS_ANDROID)
#include "components/user_scripts/browser/userscripts_browser_client.h"
+#endif
#if BUILDFLAG(ENABLE_SESSION_SERVICE)
#include "chrome/browser/sessions/app_session_service_factory.h"
@@ -1491,11 +1493,13 @@ void ProfileManager::DoFinalInitForServices(Profile* profile,
#endif
+#if BUILDFLAG(IS_ANDROID)
user_scripts::UserScriptsBrowserClient* userscript_client =
user_scripts::UserScriptsBrowserClient::GetInstance();
if (userscript_client) {
userscript_client->SetProfile(profile);
}
+#endif
#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
// Initialization needs to happen after extension system initialization (for
diff --git a/chrome/browser/profiles/renderer_updater.cc b/chrome/browser/profiles/renderer_updater.cc
--- a/chrome/browser/profiles/renderer_updater.cc
+++ b/chrome/browser/profiles/renderer_updater.cc
@@ -78,7 +78,9 @@ RendererUpdater::RendererUpdater(Profile* profile)
force_youtube_restrict_.Init(policy::policy_prefs::kForceYouTubeRestrict,
pref_service);
allowed_domains_for_apps_.Init(prefs::kAllowedDomainsForApps, pref_service);
+#if BUILDFLAG(IS_ANDROID)
activate_userscripts_.Init(user_scripts::prefs::kUserScriptsEnabled, pref_service);
+#endif
pref_change_registrar_.Init(pref_service);
pref_change_registrar_.Add(
@@ -93,10 +95,12 @@ RendererUpdater::RendererUpdater(Profile* profile)
prefs::kAllowedDomainsForApps,
base::BindRepeating(&RendererUpdater::UpdateAllRenderers,
base::Unretained(this)));
+#if BUILDFLAG(IS_ANDROID)
pref_change_registrar_.Add(
user_scripts::prefs::kUserScriptsEnabled,
base::BindRepeating(&RendererUpdater::UpdateAllRenderers,
base::Unretained(this)));
+#endif
}
RendererUpdater::~RendererUpdater() {
@@ -250,5 +254,10 @@ chrome::mojom::DynamicParamsPtr RendererUpdater::CreateRendererDynamicParams()
#endif
force_google_safesearch_.GetValue(), force_youtube_restrict_.GetValue(),
allowed_domains_for_apps_.GetValue(),
- activate_userscripts_.GetValue());
+#if BUILDFLAG(IS_ANDROID)
+ activate_userscripts_.GetValue()
+#else
+ false
+#endif
+ );
}
diff --git a/chrome/browser/profiles/renderer_updater.h b/chrome/browser/profiles/renderer_updater.h
--- a/chrome/browser/profiles/renderer_updater.h
+++ b/chrome/browser/profiles/renderer_updater.h
@@ -108,7 +108,9 @@ class RendererUpdater : public KeyedService,
// Prefs that we sync to the renderers.
BooleanPrefMember force_google_safesearch_;
+#if BUILDFLAG(IS_ANDROID)
BooleanPrefMember activate_userscripts_;
+#endif
IntegerPrefMember force_youtube_restrict_;
StringPrefMember allowed_domains_for_apps_;
};
diff --git a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc b/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc
--- a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc
+++ b/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc
@@ -529,8 +529,10 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui,
return &NewWebUI<UserActionsUI>;
if (url.host_piece() == chrome::kChromeUIVersionHost)
return &NewWebUI<VersionUI>;
+#if BUILDFLAG(IS_ANDROID)
if (url.host_piece() == user_scripts::kChromeUIUserScriptsHost)
return &NewWebUI<user_scripts::UserScriptsUI>;
+#endif
#if !BUILDFLAG(IS_ANDROID)
#if !BUILDFLAG(IS_CHROMEOS)
diff --git a/chrome/renderer/BUILD.gn b/chrome/renderer/BUILD.gn
--- a/chrome/renderer/BUILD.gn
+++ b/chrome/renderer/BUILD.gn
@@ -154,7 +154,6 @@ static_library("renderer") {
"//components/content_capture/common",
"//components/content_capture/renderer",
"//components/content_settings/common:mojom",
- "//components/user_scripts/renderer",
"//components/content_settings/renderer",
"//components/continuous_search/renderer",
"//components/dom_distiller/content/renderer",
@@ -234,6 +233,12 @@ static_library("renderer") {
"//v8",
]
+ if (is_android) {
+ deps += [
+ "//components/user_scripts/renderer",
+ ]
+ }
+
data_deps = [ "//tools/v8_context_snapshot" ]
configs += [ "//build/config/compiler:wexit_time_destructors" ]
diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer/chrome_content_renderer_client.cc
--- a/chrome/renderer/chrome_content_renderer_client.cc
+++ b/chrome/renderer/chrome_content_renderer_client.cc
@@ -252,8 +252,10 @@
#include "chrome/renderer/media/chrome_key_systems.h"
#endif
+#if BUILDFLAG(IS_ANDROID)
#include "components/user_scripts/common/user_scripts_features.h"
#include "components/user_scripts/renderer/user_scripts_renderer_client.h"
+#endif
using autofill::AutofillAgent;
using autofill::PasswordAutofillAgent;
@@ -431,11 +433,13 @@ void ChromeContentRendererClient::RenderThreadStarted() {
WebString::FromASCII(extensions::kExtensionScheme));
#endif
+#if BUILDFLAG(IS_ANDROID)
user_scripts::UserScriptsRendererClient* userscript_client =
user_scripts::UserScriptsRendererClient::GetInstance();
if (userscript_client) {
userscript_client->RenderThreadStarted(GetChromeObserver());
}
+#endif
#if BUILDFLAG(ENABLE_SPELLCHECK)
if (!spellcheck_)
@@ -605,12 +609,14 @@ void ChromeContentRendererClient::RenderFrameCreated(
render_frame, registry);
#endif
+#if BUILDFLAG(IS_ANDROID)
user_scripts::UserScriptsRendererClient* userscript_client =
user_scripts::UserScriptsRendererClient::GetInstance();
if (userscript_client) {
userscript_client->RenderFrameCreated(
render_frame, registry);
}
+#endif
#if BUILDFLAG(ENABLE_PPAPI)
new PepperHelper(render_frame);
@@ -1619,6 +1625,9 @@ void ChromeContentRendererClient::RunScriptsAtDocumentStart(
ChromeExtensionsRendererClient::GetInstance()->RunScriptsAtDocumentStart(
render_frame);
// |render_frame| might be dead by now.
+#endif
+#if BUILDFLAG(IS_ANDROID)
+#if BUILDFLAG(ENABLE_EXTENSIONS)
static_assert(false, "Compiler error: extensions cannot be enabled with user scripts");
#endif
user_scripts::UserScriptsRendererClient* userscript_client =
@@ -1627,6 +1636,7 @@ void ChromeContentRendererClient::RunScriptsAtDocumentStart(
userscript_client->RunScriptsAtDocumentStart(
render_frame);
}
+#endif
}
void ChromeContentRendererClient::RunScriptsAtDocumentEnd(
@@ -1635,6 +1645,9 @@ void ChromeContentRendererClient::RunScriptsAtDocumentEnd(
ChromeExtensionsRendererClient::GetInstance()->RunScriptsAtDocumentEnd(
render_frame);
// |render_frame| might be dead by now.
+#endif
+#if BUILDFLAG(IS_ANDROID)
+#if BUILDFLAG(ENABLE_EXTENSIONS)
static_assert(false, "Compiler error: extensions cannot be enabled with user scripts");
#endif
user_scripts::UserScriptsRendererClient* userscript_client =
@@ -1643,6 +1656,7 @@ void ChromeContentRendererClient::RunScriptsAtDocumentEnd(
userscript_client->RunScriptsAtDocumentEnd(
render_frame);
}
+#endif
}
void ChromeContentRendererClient::RunScriptsAtDocumentIdle(
@@ -1651,6 +1665,9 @@ void ChromeContentRendererClient::RunScriptsAtDocumentIdle(
ChromeExtensionsRendererClient::GetInstance()->RunScriptsAtDocumentIdle(
render_frame);
// |render_frame| might be dead by now.
+#endif
+#if BUILDFLAG(IS_ANDROID)
+#if BUILDFLAG(ENABLE_EXTENSIONS)
static_assert(false, "Compiler error: extensions cannot be enabled with user scripts");
#endif
user_scripts::UserScriptsRendererClient* userscript_client =
@@ -1659,6 +1676,7 @@ void ChromeContentRendererClient::RunScriptsAtDocumentIdle(
userscript_client->RunScriptsAtDocumentIdle(
render_frame);
}
+#endif
}
void ChromeContentRendererClient::
diff --git a/chrome/renderer/chrome_render_thread_observer.cc b/chrome/renderer/chrome_render_thread_observer.cc
--- a/chrome/renderer/chrome_render_thread_observer.cc
+++ b/chrome/renderer/chrome_render_thread_observer.cc
@@ -219,7 +219,9 @@ void ChromeRenderThreadObserver::SetConfiguration(
chrome::mojom::DynamicParamsPtr params) {
base::AutoLock lock(dynamic_params_lock_);
dynamic_params_ = std::move(params);
+#if BUILDFLAG(IS_ANDROID)
user_scripts::UserScriptsRendererClient::GetInstance()->ConfigurationUpdated();
+#endif
}
void ChromeRenderThreadObserver::OnRendererConfigurationAssociatedRequest(
--
2.25.1
@@ -1,81 +0,0 @@
From: Your Name <you@example.com>
Date: Thu, 13 Oct 2022 11:27:08 +0000
Subject: WIN ADDTO Logcat crash reports UI
---
chrome/browser/ui/webui/crashes_ui.cc | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/chrome/browser/ui/webui/crashes_ui.cc b/chrome/browser/ui/webui/crashes_ui.cc
--- a/chrome/browser/ui/webui/crashes_ui.cc
+++ b/chrome/browser/ui/webui/crashes_ui.cc
@@ -44,7 +44,9 @@
#include "base/files/scoped_temp_dir.h"
#include "base/task/task_traits.h"
#include "base/task/thread_pool.h"
+#if BUILDFLAG(IS_ANDROID)
#include "base/android/path_utils.h"
+#endif
#include "net/base/filename_util.h"
#include "third_party/zlib/google/zip.h"
@@ -146,6 +148,9 @@ CrashesDOMHandler::CrashesDOMHandler(content::WebContents* web_contents)
: list_available_(false), first_load_(true),
web_contents_(web_contents) {
upload_list_ = CreateCrashUploadList();
+#if !BUILDFLAG(IS_ANDROID)
+ web_contents_ = nullptr;
+#endif
}
CrashesDOMHandler::~CrashesDOMHandler() {
@@ -276,6 +281,7 @@ void CrashesDOMHandler::HandleRequestSingleCrashUpload(
}
std::string CrashesDOMHandler::RequestSingleUpload(const std::string& local_id) const {
+#if BUILDFLAG(IS_ANDROID)
// get crash file path
std::string info_file_path = upload_list_->GetFilePathByLocalId(local_id);
if (info_file_path.empty()) {
@@ -323,13 +329,14 @@ std::string CrashesDOMHandler::RequestSingleUpload(const std::string& local_id)
if (result) {
return zip_file_name.value();
}
-
+#endif
LOG(ERROR) << "Crash report: cannot create zip content";
return std::string();
}
void CrashesDOMHandler::RequestSingleUploadCallback(const std::string& local_id,
const std::string& file_name) {
+#if BUILDFLAG(IS_ANDROID)
if (!file_name.empty()) {
upload_list_->RequestSingleUploadAsync(local_id);
@@ -337,6 +344,7 @@ void CrashesDOMHandler::RequestSingleUploadCallback(const std::string& local_id,
web_contents_->GetController().LoadURL(
net::FilePathToFileURL(file_path), {}, {}, {});
}
+#endif
}
void CrashesDOMHandler::HandleRequestNewExtraction(
@@ -361,6 +369,7 @@ void CrashesDOMHandler::HandleRequestClearAll(
}
void CrashesDOMHandler::ClearAll() {
+#if BUILDFLAG(IS_ANDROID)
// get android crash report dir
base::FilePath cache_dir;
base::android::GetCacheDirectory(&cache_dir);
@@ -374,6 +383,7 @@ void CrashesDOMHandler::ClearAll() {
// remove all files, don't care for result
base::DeleteFile(full_name);
}
+#endif
}
} // namespace
--
2.25.1
@@ -1,25 +0,0 @@
From: Your Name <you@example.com>
Date: Wed, 12 Oct 2022 12:01:37 +0000
Subject: WIN ADDTO Restore Search Ready Omnibox flag
---
chrome/browser/about_flags.cc | 2 ++
1 file changed, 2 insertions(+)
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -9436,9 +9436,11 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kDesksTemplatesDescription, kOsCrOS,
FEATURE_VALUE_TYPE(ash::features::kDesksTemplates)},
#endif
+#if BUILDFLAG(IS_ANDROID)
{"enable-search-ready-omnibox", flag_descriptions::kSearchReadyOmniboxName,
flag_descriptions::kSearchReadyOmniboxDescription, kOsAndroid,
FEATURE_VALUE_TYPE(chrome::android::kSearchReadyOmniboxFeature)},
+#endif
{"large-favicon-from-google",
flag_descriptions::kLargeFaviconFromGoogleName,
--
2.25.1
@@ -1,29 +0,0 @@
From: Your Name <you@example.com>
Date: Wed, 12 Oct 2022 11:59:30 +0000
Subject: WIN ADDTO Revert flags: remove num-raster-thre
---
chrome/browser/about_flags.cc | 2 ++
1 file changed, 2 insertions(+)
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -390,6 +390,7 @@ const FeatureEntry::Choice kOverlayStrategiesChoices[] = {
"single-fullscreen,single-on-top,underlay"},
};
+#if BUILDFLAG(IS_ANDROID)
const FeatureEntry::Choice kNumRasterThreadsChoices[] = {
{flags_ui::kGenericExperimentChoiceDefault, "", ""},
{flag_descriptions::kNumRasterThreadsOne, cc::switches::kNumRasterThreads, "1"},
@@ -398,6 +399,7 @@ const FeatureEntry::Choice kNumRasterThreadsChoices[] = {
"3"},
{flag_descriptions::kNumRasterThreadsFour, cc::switches::kNumRasterThreads,
"4"}};
+#endif
const FeatureEntry::Choice kTouchTextSelectionStrategyChoices[] = {
{flags_ui::kGenericExperimentChoiceDefault, "", ""},
--
2.25.1
@@ -1,26 +0,0 @@
From: Your Name <you@example.com>
Date: Wed, 12 Oct 2022 11:31:11 +0000
Subject: WIN ADDTO openH264: enable ARM/ARM64 optimizati
---
.../blink/renderer/modules/mediarecorder/h264_encoder.cc | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/third_party/blink/renderer/modules/mediarecorder/h264_encoder.cc b/third_party/blink/renderer/modules/mediarecorder/h264_encoder.cc
--- a/third_party/blink/renderer/modules/mediarecorder/h264_encoder.cc
+++ b/third_party/blink/renderer/modules/mediarecorder/h264_encoder.cc
@@ -212,9 +212,9 @@ bool H264Encoder::ConfigureEncoder(const gfx::Size& size) {
init_params.iRCMode = RC_OFF_MODE;
}
-#if BUILDFLAG(OS_MACOSX)
- // Threading model: Set to 1 due to https://crbug.com/583348.
- init_params.iMultipleThreadIdc = 1;
+#if BUILDFLAG(IS_MAC)
+ // Threading model: Set to 1 due to https://crbug.com/583348.
+ init_params.iMultipleThreadIdc = 1;
#else
init_params.iMultipleThreadIdc = 0;
#endif
--
2.25.1
@@ -1,22 +0,0 @@
From: Your Name <you@example.com>
Date: Wed, 12 Oct 2022 10:04:39 +0000
Subject: WIN ADDTO ungoogled-chr: Disable profile avatar
---
chrome/browser/profiles/profile_attributes_storage.cc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/chrome/browser/profiles/profile_attributes_storage.cc b/chrome/browser/profiles/profile_attributes_storage.cc
--- a/chrome/browser/profiles/profile_attributes_storage.cc
+++ b/chrome/browser/profiles/profile_attributes_storage.cc
@@ -845,7 +845,7 @@ void ProfileAttributesStorage::DownloadHighResAvatarIfNeeded(
void ProfileAttributesStorage::DownloadHighResAvatar(
size_t icon_index,
const base::FilePath& profile_path) {
-#if !BUILDFLAG(IS_ANDROID)
+#if false
const char* file_name =
profiles::GetDefaultAvatarIconFileNameAtIndex(icon_index);
DCHECK(file_name);
--
2.25.1
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Tue, 14 Mar 2023 15:58:00 +0000
Subject: WIN Disable TabHoverCard images
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
chrome/browser/ui/ui_features.cc | 4 ----
1 file changed, 4 deletions(-)
@@ -9,7 +10,7 @@ Subject: WIN Disable TabHoverCard images
diff --git a/chrome/browser/ui/ui_features.cc b/chrome/browser/ui/ui_features.cc
--- a/chrome/browser/ui/ui_features.cc
+++ b/chrome/browser/ui/ui_features.cc
@@ -186,11 +186,7 @@ BASE_FEATURE(kTabHoverCardImageSettings,
@@ -203,11 +203,7 @@ BASE_FEATURE(kTabHoverCardImageSettings,
// https://crbug.com/928954
BASE_FEATURE(kTabHoverCardImages,
"TabHoverCardImages",
@@ -1,7 +1,8 @@
From: Your Name <you@example.com>
From: uazo <uazo@users.noreply.github.com>
Date: Fri, 17 Feb 2023 16:22:00 +0000
Subject: WIN Disable sharing hub
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
chrome/browser/sharing_hub/sharing_hub_features.cc | 2 +-
chrome/browser/ui/browser_command_controller.cc | 6 +++---
@@ -24,7 +25,7 @@ diff --git a/chrome/browser/sharing_hub/sharing_hub_features.cc b/chrome/browser
diff --git a/chrome/browser/ui/browser_command_controller.cc b/chrome/browser/ui/browser_command_controller.cc
--- a/chrome/browser/ui/browser_command_controller.cc
+++ b/chrome/browser/ui/browser_command_controller.cc
@@ -1700,10 +1700,10 @@ void BrowserCommandController::UpdateCommandsForFullscreenMode() {
@@ -1701,10 +1701,10 @@ void BrowserCommandController::UpdateCommandsForFullscreenMode() {
command_updater_.UpdateCommandEnabled(IDC_CHROME_WHATS_NEW, show_main_ui);
#endif
command_updater_.UpdateCommandEnabled(IDC_CONTENT_CONTEXT_SHARING_SUBMENU,
@@ -41,7 +42,7 @@ diff --git a/chrome/browser/ui/browser_command_controller.cc b/chrome/browser/ui
diff --git a/chrome/browser/ui/browser_commands.cc b/chrome/browser/ui/browser_commands.cc
--- a/chrome/browser/ui/browser_commands.cc
+++ b/chrome/browser/ui/browser_commands.cc
@@ -1479,6 +1479,7 @@ void SendTabToSelfFromPageAction(Browser* browser) {
@@ -1537,6 +1537,7 @@ void SendTabToSelfFromPageAction(Browser* browser) {
}
bool CanGenerateQrCode(const Browser* browser) {
@@ -1,7 +1,8 @@
From: Your Name <you@example.com>
From: uazo <uazo@users.noreply.github.com>
Date: Fri, 17 Feb 2023 16:23:20 +0000
Subject: WIN Enable Network Service Sandbox and CIG
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
chrome/browser/chrome_content_browser_client.cc | 2 +-
sandbox/policy/features.cc | 6 +++++-
@@ -10,7 +11,7 @@ Subject: WIN Enable Network Service Sandbox and CIG
diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc
--- a/chrome/browser/chrome_content_browser_client.cc
+++ b/chrome/browser/chrome_content_browser_client.cc
@@ -766,7 +766,7 @@ BASE_FEATURE(kRendererCodeIntegrity,
@@ -774,7 +774,7 @@ BASE_FEATURE(kRendererCodeIntegrity,
// https://blogs.windows.com/blog/tag/code-integrity-guard/.
BASE_FEATURE(kNetworkServiceCodeIntegrity,
"NetworkServiceCodeIntegrity",
@@ -1,7 +1,8 @@
From: Your Name <you@example.com>
From: uazo <uazo@users.noreply.github.com>
Date: Wed, 28 Dec 2022 15:47:58 +0000
Subject: WIN enable HighEfficiencyMode by default
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
components/performance_manager/user_tuning/prefs.cc | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
@@ -9,8 +10,8 @@ Subject: WIN enable HighEfficiencyMode by default
diff --git a/components/performance_manager/user_tuning/prefs.cc b/components/performance_manager/user_tuning/prefs.cc
--- a/components/performance_manager/user_tuning/prefs.cc
+++ b/components/performance_manager/user_tuning/prefs.cc
@@ -35,13 +35,13 @@ const char kManagedTabDiscardingExceptions[] =
"performance_tuning.tab_discarding.exceptions_managed";
@@ -12,13 +12,13 @@
namespace performance_manager::user_tuning::prefs {
void RegisterLocalStatePrefs(PrefRegistrySimple* registry) {
- registry->RegisterBooleanPref(kHighEfficiencyModeEnabled, false);
@@ -1,7 +1,8 @@
From: Your Name <you@example.com>
From: uazo <uazo@users.noreply.github.com>
Date: Tue, 14 Feb 2023 16:32:30 +0000
Subject: WIN enable file system access blocklist
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
content/browser/file_system_access/features.cc | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
@@ -18,7 +19,7 @@ diff --git a/content/browser/file_system_access/features.cc b/content/browser/fi
// TODO(crbug.com/1381621): Remove this flag eventually.
// When enabled, move() will result in a promise rejection when the specified
@@ -51,8 +51,8 @@ BASE_FEATURE(kFileSystemAccessRemoveEntryExclusiveLock,
@@ -44,8 +44,8 @@ BASE_FEATURE(kFileSystemAccessRemove,
// When enabled, a user gesture is required to rename a file if the site does
// not have write access to the parent. See http://b/254157070 for more context.
BASE_FEATURE(kFileSystemAccessRenameWithoutParentAccessRequiresUserActivation,
+3 -2
View File
@@ -1,7 +1,8 @@
From: Your Name <you@example.com>
From: uazo <uazo@users.noreply.github.com>
Date: Wed, 28 Dec 2022 15:46:38 +0000
Subject: WIN enable pdf plugin
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
third_party/blink/renderer/core/frame/local_frame.cc | 2 ++
1 file changed, 2 insertions(+)
@@ -9,7 +10,7 @@ Subject: WIN enable pdf plugin
diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc
--- a/third_party/blink/renderer/core/frame/local_frame.cc
+++ b/third_party/blink/renderer/core/frame/local_frame.cc
@@ -2058,7 +2058,9 @@ WebContentSettingsClient* LocalFrame::GetContentSettingsClient() {
@@ -2052,7 +2052,9 @@ WebContentSettingsClient* LocalFrame::GetContentSettingsClient() {
}
PluginData* LocalFrame::GetPluginData() const {
@@ -27,7 +27,7 @@ you can remove the message by going to chrome://flags/#no-hw-aes-warning
diff --git a/base/base_switches.cc b/base/base_switches.cc
--- a/base/base_switches.cc
+++ b/base/base_switches.cc
@@ -176,6 +176,8 @@ extern const char kEnableCrashpad[] = "enable-crashpad";
@@ -171,6 +171,8 @@ extern const char kEnableCrashpad[] = "enable-crashpad";
const char kDesktopModeViewportMetaEnabled[] = "dm-viewport-meta-enabled";
@@ -39,7 +39,7 @@ diff --git a/base/base_switches.cc b/base/base_switches.cc
diff --git a/base/base_switches.h b/base/base_switches.h
--- a/base/base_switches.h
+++ b/base/base_switches.h
@@ -35,6 +35,7 @@ extern const char kTraceToFileName[];
@@ -34,6 +34,7 @@ extern const char kTraceToFileName[];
extern const char kV[];
extern const char kVModule[];
extern const char kWaitForDebugger[];
@@ -50,7 +50,7 @@ diff --git a/base/base_switches.h b/base/base_switches.h
diff --git a/chrome/BUILD.gn b/chrome/BUILD.gn
--- a/chrome/BUILD.gn
+++ b/chrome/BUILD.gn
@@ -452,6 +452,7 @@ if (is_win) {
@@ -448,6 +448,7 @@ if (is_win) {
"//components/policy:generated",
"//content/public/app",
"//crypto",
@@ -58,7 +58,7 @@ diff --git a/chrome/BUILD.gn b/chrome/BUILD.gn
"//headless:headless_non_renderer",
"//headless:headless_shell_browser_lib",
"//net:net_resources",
@@ -1696,6 +1697,8 @@ if (is_android) {
@@ -1713,6 +1714,8 @@ if (is_android) {
"//chrome/common/profiler",
"//chrome/gpu",
"//chrome/renderer",
@@ -97,7 +97,7 @@ diff --git a/chrome/app/chrome_main_delegate.cc b/chrome/app/chrome_main_delegat
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
@@ -6699,6 +6699,10 @@ Keep your key file in a safe place. You will need it to create new versions of y
@@ -7004,6 +7004,10 @@ Keep your key file in a safe place. You will need it to create new versions of y
You are using an unsupported feature flag: <ph name="BAD_FLAG">$1<ex>SignedHTTPExchange</ex></ph>. Stability and security will suffer.
</message>
@@ -111,9 +111,9 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -7935,6 +7935,10 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kDevicePostureDescription, kOsAll,
FEATURE_VALUE_TYPE(features::kDevicePosture)},
@@ -8093,6 +8093,10 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kViewportSegmentsDescription, kOsAll,
FEATURE_VALUE_TYPE(features::kViewportSegments)},
+ {"no-hw-aes-warning", flag_descriptions::kNoAESHardwareMessageName,
+ flag_descriptions::kNoAESHardwareMessageDescription, kOsDesktop | kOsAndroid,
@@ -125,9 +125,9 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
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
@@ -840,6 +840,10 @@ const char kDevicePostureName[] = "Device Posture API";
const char kDevicePostureDescription[] =
"Enables Device Posture API (foldable devices)";
@@ -882,6 +882,10 @@ const char kViewportSegmentsDescription[] =
"Enable the viewport segment API, giving information about the logical "
"segments of the device (dual screen and foldable devices)";
+const char kNoAESHardwareMessageName[] = "Enable no aes warning message";
+const char kNoAESHardwareMessageDescription[] =
@@ -139,20 +139,20 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -612,6 +612,9 @@ extern const char kDeviceForceScheduledRebootDescription[];
@@ -636,6 +636,9 @@ extern const char kDeviceForceScheduledRebootDescription[];
extern const char kDevicePostureName[];
extern const char kDevicePostureDescription[];
+extern const char kNoAESHardwareMessageName[];
+extern const char kNoAESHardwareMessageDescription[];
+
extern const char kEnablePreinstalledWebAppDuplicationFixerName[];
extern const char kEnablePreinstalledWebAppDuplicationFixerDescription[];
extern const char kEnableTLS13EarlyDataName[];
extern const char kEnableTLS13EarlyDataDescription[];
diff --git a/chrome/browser/ui/startup/bad_flags_prompt.cc b/chrome/browser/ui/startup/bad_flags_prompt.cc
--- a/chrome/browser/ui/startup/bad_flags_prompt.cc
+++ b/chrome/browser/ui/startup/bad_flags_prompt.cc
@@ -221,6 +221,15 @@ void ShowBadFlagsPrompt(content::WebContents* web_contents) {
@@ -227,6 +227,15 @@ void ShowBadFlagsPrompt(content::WebContents* web_contents) {
return;
}
}
@@ -171,18 +171,18 @@ diff --git a/chrome/browser/ui/startup/bad_flags_prompt.cc b/chrome/browser/ui/s
diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc
--- a/content/browser/renderer_host/render_process_host_impl.cc
+++ b/content/browser/renderer_host/render_process_host_impl.cc
@@ -3727,6 +3727,7 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer(
@@ -3747,6 +3747,7 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer(
switches::kLacrosUseChromeosProtectedAv1,
#endif
switches::kDesktopModeViewportMetaEnabled,
+ switches::kNoAESHardware,
};
renderer_cmd->CopySwitchesFrom(browser_cmd, kSwitchNames,
std::size(kSwitchNames));
renderer_cmd->CopySwitchesFrom(browser_cmd, kSwitchNames);
diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc
--- a/content/public/common/content_features.cc
+++ b/content/public/common/content_features.cc
@@ -766,6 +766,11 @@ BASE_FEATURE(kNoStatePrefetchHoldback,
@@ -728,6 +728,11 @@ BASE_FEATURE(kNoStatePrefetchHoldback,
"NoStatePrefetchHoldback",
base::FEATURE_DISABLED_BY_DEFAULT);
@@ -197,7 +197,7 @@ diff --git a/content/public/common/content_features.cc b/content/public/common/c
diff --git a/content/public/common/content_features.h b/content/public/common/content_features.h
--- a/content/public/common/content_features.h
+++ b/content/public/common/content_features.h
@@ -170,6 +170,7 @@ CONTENT_EXPORT BASE_DECLARE_FEATURE(kNetworkServiceInProcess);
@@ -163,6 +163,7 @@ CONTENT_EXPORT BASE_DECLARE_FEATURE(kNetworkServiceInProcess);
CONTENT_EXPORT BASE_DECLARE_FEATURE(kNotificationContentImage);
CONTENT_EXPORT BASE_DECLARE_FEATURE(kNotificationTriggers);
CONTENT_EXPORT BASE_DECLARE_FEATURE(kNoStatePrefetchHoldback);
+29 -28
View File
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Tue, 22 Nov 2022 16:49:58 +0000
Subject: Add browser policy
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
base/win/win_util.cc | 63 +-------
chrome/android/java/AndroidManifest.xml | 4 -
@@ -133,7 +134,7 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro
<uses-permission-sdk-23 android:name="android.permission.USE_BIOMETRIC"/>
<uses-permission-sdk-23 android:name="android.permission.USE_FINGERPRINT"/>
<uses-permission android:name="android.permission.VIBRATE"/>
@@ -131,7 +128,6 @@ by a child template that "extends" this file.
@@ -129,7 +126,6 @@ by a child template that "extends" this file.
<uses-permission android:name="com.chrome.permission.DEVICE_EXTRAS" />
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/>
@@ -159,7 +160,7 @@ diff --git a/chrome/browser/android/preferences/privacy_preferences_manager_impl
diff --git a/chrome/browser/metrics/chrome_feature_list_creator.cc b/chrome/browser/metrics/chrome_feature_list_creator.cc
--- a/chrome/browser/metrics/chrome_feature_list_creator.cc
+++ b/chrome/browser/metrics/chrome_feature_list_creator.cc
@@ -56,6 +56,8 @@
@@ -57,6 +57,8 @@
#include "content/public/common/content_switches.h"
#include "services/network/public/cpp/network_switches.h"
#include "ui/base/resource/resource_bundle.h"
@@ -168,7 +169,7 @@ diff --git a/chrome/browser/metrics/chrome_feature_list_creator.cc b/chrome/brow
#if BUILDFLAG(IS_CHROMEOS_ASH)
#include "chrome/browser/ash/policy/core/browser_policy_connector_ash.h"
@@ -196,6 +198,16 @@ void ChromeFeatureListCreator::CreatePrefService() {
@@ -219,6 +221,16 @@ void ChromeFeatureListCreator::CreatePrefService() {
// ManagementService's cache.
if (local_state_pref_store->ReadPrefs() ==
JsonPrefStore::PREF_READ_ERROR_NONE) {
@@ -188,7 +189,7 @@ diff --git a/chrome/browser/metrics/chrome_feature_list_creator.cc b/chrome/brow
diff --git a/chrome/browser/policy/chrome_browser_policy_connector.cc b/chrome/browser/policy/chrome_browser_policy_connector.cc
--- a/chrome/browser/policy/chrome_browser_policy_connector.cc
+++ b/chrome/browser/policy/chrome_browser_policy_connector.cc
@@ -155,8 +155,6 @@ bool ChromeBrowserPolicyConnector::HasMachineLevelPolicies() {
@@ -158,8 +158,6 @@ bool ChromeBrowserPolicyConnector::HasMachineLevelPolicies() {
if (ProviderHasPolicies(machine_level_user_cloud_policy_manager()))
return true;
#endif // !BUILDFLAG(IS_CHROMEOS_ASH)
@@ -200,7 +201,7 @@ diff --git a/chrome/browser/policy/chrome_browser_policy_connector.cc b/chrome/b
diff --git a/chrome/browser/policy/configuration_policy_handler_list_factory.cc b/chrome/browser/policy/configuration_policy_handler_list_factory.cc
--- a/chrome/browser/policy/configuration_policy_handler_list_factory.cc
+++ b/chrome/browser/policy/configuration_policy_handler_list_factory.cc
@@ -1946,9 +1946,9 @@ bool AreFuturePoliciesEnabledByDefault() {
@@ -1997,9 +1997,9 @@ bool AreFuturePoliciesEnabledByDefault() {
// Enable future policies for branded browser tests.
if (base::CommandLine::ForCurrentProcess()->HasSwitch(switches::kTestType))
return true;
@@ -216,7 +217,7 @@ diff --git a/chrome/browser/policy/configuration_policy_handler_list_factory.cc
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
@@ -199,7 +199,8 @@ AccountConsistencyModeManager::ComputeAccountConsistencyMethod(
@@ -198,7 +198,8 @@ AccountConsistencyModeManager::ComputeAccountConsistencyMethod(
#endif
#if BUILDFLAG(ENABLE_MIRROR)
@@ -226,7 +227,7 @@ diff --git a/chrome/browser/signin/account_consistency_mode_manager.cc b/chrome/
#endif
#if BUILDFLAG(ENABLE_DICE_SUPPORT)
@@ -209,7 +210,7 @@ AccountConsistencyModeManager::ComputeAccountConsistencyMethod(
@@ -208,7 +209,7 @@ AccountConsistencyModeManager::ComputeAccountConsistencyMethod(
return AccountConsistencyMethod::kDisabled;
}
@@ -238,31 +239,31 @@ diff --git a/chrome/browser/signin/account_consistency_mode_manager.cc b/chrome/
diff --git a/chrome/browser/signin/chrome_signin_client.cc b/chrome/browser/signin/chrome_signin_client.cc
--- a/chrome/browser/signin/chrome_signin_client.cc
+++ b/chrome/browser/signin/chrome_signin_client.cc
@@ -126,7 +126,9 @@ void ChromeSigninClient::DoFinalInit() {
@@ -130,7 +130,9 @@ void ChromeSigninClient::DoFinalInit() {
bool ChromeSigninClient::ProfileAllowsSigninCookies(Profile* profile) {
content_settings::CookieSettings* cookie_settings =
CookieSettingsFactory::GetForProfile(profile).get();
- return signin::SettingsAllowSigninCookies(cookie_settings);
scoped_refptr<content_settings::CookieSettings> cookie_settings =
CookieSettingsFactory::GetForProfile(profile);
- return signin::SettingsAllowSigninCookies(cookie_settings.get());
+ // Make ChromeSigninClient compliant to SigninAllowed policy
+ bool cookiesAllowed = signin::SettingsAllowSigninCookies(cookie_settings);
+ bool cookiesAllowed = signin::SettingsAllowSigninCookies(cookie_settings.get());
+ return cookiesAllowed && profile->GetPrefs()->GetBoolean(prefs::kSigninAllowed);
}
PrefService* ChromeSigninClient::GetPrefs() { return profile_->GetPrefs(); }
@@ -264,6 +266,9 @@ bool ChromeSigninClient::AreNetworkCallsDelayed() {
@@ -234,6 +236,9 @@ bool ChromeSigninClient::AreNetworkCallsDelayed() {
}
void ChromeSigninClient::DelayNetworkCall(base::OnceClosure callback) {
+ // Make ChromeSigninClient compliant to SigninAllowed policy
+ if (!AreSigninCookiesAllowed()) return;
+
if (!AreNetworkCallsDelayed()) {
std::move(callback).Run();
return;
wait_for_network_callback_helper_->DelayNetworkCall(std::move(callback));
}
diff --git a/chrome/browser/ui/webui/policy/policy_ui_handler.cc b/chrome/browser/ui/webui/policy/policy_ui_handler.cc
--- a/chrome/browser/ui/webui/policy/policy_ui_handler.cc
+++ b/chrome/browser/ui/webui/policy/policy_ui_handler.cc
@@ -21,6 +21,7 @@
@@ -22,6 +22,7 @@
#include "base/memory/raw_ptr.h"
#include "base/memory/weak_ptr.h"
#include "base/notreached.h"
@@ -270,15 +271,15 @@ diff --git a/chrome/browser/ui/webui/policy/policy_ui_handler.cc b/chrome/browse
#include "base/strings/utf_string_conversions.h"
#include "base/task/task_traits.h"
#include "base/task/thread_pool.h"
@@ -55,6 +56,7 @@
#include "components/policy/core/common/cloud/cloud_policy_refresh_scheduler.h"
#include "components/policy/core/common/cloud/cloud_policy_util.h"
@@ -68,6 +69,7 @@
#include "components/policy/core/common/policy_details.h"
#include "components/policy/core/common/policy_logger.h"
#include "components/policy/core/common/policy_pref_names.h"
+#include "components/policy/core/common/policy_pref_names.h"
#include "components/policy/core/common/policy_scheduler.h"
#include "components/policy/core/common/policy_types.h"
#include "components/policy/core/common/remote_commands/remote_commands_service.h"
@@ -167,6 +169,10 @@ void PolicyUIHandler::RegisterMessages() {
@@ -194,6 +196,10 @@ void PolicyUIHandler::RegisterMessages() {
"exportPoliciesJSON",
base::BindRepeating(&PolicyUIHandler::HandleExportPoliciesJson,
base::Unretained(this)));
@@ -289,7 +290,7 @@ diff --git a/chrome/browser/ui/webui/policy/policy_ui_handler.cc b/chrome/browse
web_ui()->RegisterMessageCallback(
"listenPoliciesUpdates",
base::BindRepeating(&PolicyUIHandler::HandleListenPoliciesUpdates,
@@ -330,8 +336,102 @@ void PolicyUIHandler::SendPolicies() {
@@ -569,8 +575,102 @@ void PolicyUIHandler::SendPolicies() {
"policies-updated",
base::Value(
policy_value_and_status_aggregator_->GetAggregatedPolicyNames()),
@@ -397,7 +398,7 @@ diff --git a/chrome/browser/ui/webui/policy/policy_ui_handler.cc b/chrome/browse
diff --git a/chrome/browser/ui/webui/policy/policy_ui_handler.h b/chrome/browser/ui/webui/policy/policy_ui_handler.h
--- a/chrome/browser/ui/webui/policy/policy_ui_handler.h
+++ b/chrome/browser/ui/webui/policy/policy_ui_handler.h
@@ -56,6 +56,8 @@ class PolicyUIHandler : public content::WebUIMessageHandler,
@@ -94,6 +94,8 @@ class PolicyUIHandler : public content::WebUIMessageHandler,
private:
void HandleExportPoliciesJson(const base::Value::List& args);
@@ -594,7 +595,7 @@ diff --git a/components/policy/core/common/policy_loader_command_line.cc b/compo
diff --git a/components/policy/core/common/policy_pref_names.cc b/components/policy/core/common/policy_pref_names.cc
--- a/components/policy/core/common/policy_pref_names.cc
+++ b/components/policy/core/common/policy_pref_names.cc
@@ -90,6 +90,9 @@ const char kBackForwardCacheEnabled[] = "policy.back_forward_cache_enabled";
@@ -93,6 +93,9 @@ const char kReadAloudEnabled[] = "policy.read_aloud_enabled";
const char kUserAgentClientHintsGREASEUpdateEnabled[] =
"policy.user_agent_client_hints_grease_update_enabled";
@@ -614,11 +615,11 @@ diff --git a/components/policy/core/common/policy_pref_names.h b/components/poli
+extern const char kDisabledDefaultPoliciesList[];
#if BUILDFLAG(IS_ANDROID)
extern const char kBackForwardCacheEnabled[];
#endif // BUILDFLAG(IS_ANDROID)
extern const char kReadAloudEnabled[];
diff --git a/components/policy/core/common/policy_service_impl.cc b/components/policy/core/common/policy_service_impl.cc
--- a/components/policy/core/common/policy_service_impl.cc
+++ b/components/policy/core/common/policy_service_impl.cc
@@ -64,6 +64,9 @@ void IgnoreUserCloudPrecedencePolicies(PolicyMap* policies) {
@@ -47,6 +47,9 @@ namespace {
// Metrics should not be enforced so if this policy is set as mandatory
// downgrade it to a recommended level policy.
void DowngradeMetricsReportingToRecommendedPolicy(PolicyMap* policies) {
@@ -673,7 +674,7 @@ diff --git a/components/policy/resources/templates/policy_definitions/Miscellane
diff --git a/components/policy/resources/webui/policy_row.html b/components/policy/resources/webui/policy_row.html
--- a/components/policy/resources/webui/policy_row.html
+++ b/components/policy/resources/webui/policy_row.html
@@ -139,6 +139,7 @@ a {
@@ -147,6 +147,7 @@ a {
<div class="policy row" role="row">
<div class="name" role="rowheader" aria-labelledby="name">
<a class="link" target="_blank">
@@ -712,7 +713,7 @@ diff --git a/components/policy/resources/webui/policy_row.ts b/components/policy
// Populate the remaining columns with policy scope, level and value if a
// value has been set. Otherwise, leave them blank.
if (!this.unset_) {
@@ -213,6 +220,11 @@ export class PolicyRowElement extends CustomElement {
@@ -220,6 +227,11 @@ export class PolicyRowElement extends CustomElement {
}
}
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Wed, 2 Aug 2023 15:15:48 +0000
Subject: Do not block the build for incompatible profiles
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
.gitignore | 1 -
v8/BUILD.gn | 2 +-
@@ -10,7 +11,7 @@ Subject: Do not block the build for incompatible profiles
diff --git a/.gitignore b/.gitignore
--- a/.gitignore
+++ b/.gitignore
@@ -345,7 +345,6 @@ vs-chromium-project.txt
@@ -348,7 +348,6 @@ vs-chromium-project.txt
/ui/surface/surface.xml
/ui/surface/surface_gpu_tests.xml
/ui/webui/internal
@@ -21,14 +22,14 @@ diff --git a/.gitignore b/.gitignore
diff --git a/v8/BUILD.gn b/v8/BUILD.gn
--- a/v8/BUILD.gn
+++ b/v8/BUILD.gn
@@ -2293,7 +2293,7 @@ template("run_mksnapshot") {
@@ -2347,7 +2347,7 @@ template("run_mksnapshot") {
# Replace this with --warn-about-builtin-profile-data to see the full
# list of builtins with incompatible profiles.
- "--abort-on-bad-builtin-profile-data",
+ "--warn-about-builtin-profile-data",
]
}
if (!v8_enable_builtins_profiling && v8_enable_builtins_reordering) {
--
2.25.1
+2 -1
View File
@@ -2,6 +2,7 @@ From: uazo <uazo@users.noreply.github.com>
Date: Mon, 1 May 2023 12:08:46 +0000
Subject: v113 temp fix build
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
android_webview/system_webview_bundle.gni | 4 ++++
chrome/browser/safe_browsing/BUILD.gn | 1 +
@@ -24,7 +25,7 @@ diff --git a/android_webview/system_webview_bundle.gni b/android_webview/system_
diff --git a/chrome/browser/safe_browsing/BUILD.gn b/chrome/browser/safe_browsing/BUILD.gn
--- a/chrome/browser/safe_browsing/BUILD.gn
+++ b/chrome/browser/safe_browsing/BUILD.gn
@@ -214,6 +214,7 @@ static_library("safe_browsing") {
@@ -210,6 +210,7 @@ static_library("safe_browsing") {
"//components/version_info",
"//content/public/browser",
"//services/preferences/public/mojom:mojom",
@@ -28,11 +28,11 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
gpu/config/gpu_finch_features.h | 1 +
gpu/config/gpu_util.cc | 8 ++++++++
gpu/config/gpu_workaround_list.txt | 1 +
gpu/ipc/service/gpu_init.cc | 5 +++++
gpu/ipc/service/gpu_init.cc | 7 +++++++
gpu/ipc/service/stream_texture_android.cc | 11 ++++++++++-
media/base/media_switches.cc | 5 +++++
media/base/media_switches.h | 1 +
12 files changed, 66 insertions(+), 5 deletions(-)
12 files changed, 68 insertions(+), 5 deletions(-)
diff --git a/base/android/android_image_reader_compat.cc b/base/android/android_image_reader_compat.cc
--- a/base/android/android_image_reader_compat.cc
@@ -84,7 +84,7 @@ diff --git a/base/android/android_image_reader_compat.h b/base/android/android_i
diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json
--- a/chrome/browser/flag-metadata.json
+++ b/chrome/browser/flag-metadata.json
@@ -2798,9 +2798,9 @@
@@ -2928,9 +2928,9 @@
"expiry_milestone": 125
},
{
@@ -100,7 +100,7 @@ diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.js
diff --git a/gpu/config/gpu_driver_bug_list.json b/gpu/config/gpu_driver_bug_list.json
--- a/gpu/config/gpu_driver_bug_list.json
+++ b/gpu/config/gpu_driver_bug_list.json
@@ -3698,6 +3698,22 @@
@@ -3688,6 +3688,22 @@
"no_downscaled_overlay_promotion"
]
},
@@ -188,14 +188,16 @@ diff --git a/gpu/config/gpu_workaround_list.txt b/gpu/config/gpu_workaround_list
diff --git a/gpu/ipc/service/gpu_init.cc b/gpu/ipc/service/gpu_init.cc
--- a/gpu/ipc/service/gpu_init.cc
+++ b/gpu/ipc/service/gpu_init.cc
@@ -616,6 +616,11 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandLine* command_line,
@@ -628,6 +628,13 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandLine* command_line,
}
#endif // BUILDFLAG(IS_WIN)
+#if BUILDFLAG(IS_ANDROID)
+ // Disable AImageReader if the workaround is enabled.
+ if (gpu_feature_info_.IsWorkaroundEnabled(DISABLE_AIMAGEREADER)) {
+ base::android::AndroidImageReader::DisableSupport();
+ }
+#endif
+
if (gpu_feature_info_.status_values[GPU_FEATURE_TYPE_VULKAN] !=
kGpuFeatureStatusEnabled ||
@@ -231,7 +233,7 @@ diff --git a/gpu/ipc/service/stream_texture_android.cc b/gpu/ipc/service/stream_
diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
--- a/media/base/media_switches.cc
+++ b/media/base/media_switches.cc
@@ -946,6 +946,11 @@ BASE_FEATURE(kHardwareSecureDecryptionExperiment,
@@ -950,6 +950,11 @@ BASE_FEATURE(kHardwareSecureDecryptionExperiment,
// Allows automatically disabling hardware secure Content Decryption Module
// (CDM) after failures or crashes to fallback to software secure CDMs. If this
// feature is disabled, the fallback will never happen and users could be stuck
@@ -246,7 +248,7 @@ diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
diff --git a/media/base/media_switches.h b/media/base/media_switches.h
--- a/media/base/media_switches.h
+++ b/media/base/media_switches.h
@@ -327,6 +327,7 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kVideoBlitColorAccuracy);
@@ -328,6 +328,7 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kVideoBlitColorAccuracy);
MEDIA_EXPORT BASE_DECLARE_FEATURE(kVideoToolboxVideoDecoder);
#endif // BUILDFLAG(IS_APPLE)
MEDIA_EXPORT BASE_DECLARE_FEATURE(kWebRTCColorAccuracy);
@@ -5,20 +5,20 @@ Subject: Add AllowUserCertificates flag
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
---
.../src/org/chromium/chrome/browser/app/ChromeActivity.java | 3 +++
chrome/browser/about_flags.cc | 4 ++++
chrome/browser/flag_descriptions.cc | 5 +++++
chrome/browser/flag_descriptions.h | 3 +++
chrome/browser/flags/android/chrome_feature_list.cc | 5 +++++
chrome/browser/flags/android/chrome_feature_list.h | 1 +
.../org/chromium/chrome/browser/flags/ChromeFeatureList.java | 4 ++++
net/android/java/src/org/chromium/net/X509Util.java | 5 +++++
8 files changed, 30 insertions(+)
.../org/chromium/chrome/browser/app/ChromeActivity.java | 3 +++
chrome/browser/about_flags.cc | 7 +++++++
chrome/browser/flag_descriptions.cc | 5 +++++
chrome/browser/flag_descriptions.h | 3 +++
chrome/browser/flags/android/chrome_feature_list.cc | 5 +++++
chrome/browser/flags/android/chrome_feature_list.h | 1 +
.../chromium/chrome/browser/flags/ChromeFeatureList.java | 4 ++++
net/android/java/src/org/chromium/net/X509Util.java | 5 +++++
8 files changed, 33 insertions(+)
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
@@ -231,6 +231,7 @@ import org.chromium.content_public.browser.ScreenOrientationProvider;
@@ -230,6 +230,7 @@ import org.chromium.content_public.browser.ScreenOrientationProvider;
import org.chromium.content_public.browser.SelectionPopupController;
import org.chromium.content_public.browser.WebContents;
import org.chromium.content_public.common.ContentSwitches;
@@ -26,7 +26,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
import org.chromium.printing.PrintManagerDelegateImpl;
import org.chromium.printing.PrintingController;
import org.chromium.printing.PrintingControllerImpl;
@@ -973,6 +974,8 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -981,6 +982,8 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
super.onStartWithNative();
ChromeActivitySessionTracker.getInstance().onStartWithNative();
ChromeCachedFlags.getInstance().cacheNativeFlags();
@@ -38,17 +38,20 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -9184,6 +9184,10 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kHttpsUpgradesDescription, kOsDesktop | kOsAndroid,
FEATURE_VALUE_TYPE(features::kHttpsUpgrades)},
@@ -9305,6 +9305,13 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kEnableDrDcDescription, kOsAll,
FEATURE_VALUE_TYPE(features::kEnableDrDc)},
+#if BUILDFLAG(IS_ANDROID)
+ {"allow-user-certificates",
+ flag_descriptions::kAllowUserCertificatesName,
+ flag_descriptions::kAllowUserCertificatesDescription, kOsAndroid,
+ FEATURE_VALUE_TYPE(chrome::android::kAllowUserCertificates)},
{"omnibox-updated-connection-security-indicators",
flag_descriptions::kOmniboxUpdatedConnectionSecurityIndicatorsName,
flag_descriptions::kOmniboxUpdatedConnectionSecurityIndicatorsDescription,
+#endif // BUILDFLAG(IS_ANDROID)
+
{"force-gpu-main-thread-to-normal-priority-drdc",
flag_descriptions::kForceGpuMainThreadToNormalPriorityDrDcName,
flag_descriptions::kForceGpuMainThreadToNormalPriorityDrDcDescription,
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
@@ -88,7 +91,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
&feed::kInterestFeedV2,
&feed::kInterestFeedV2Autoplay,
&feed::kInterestFeedV2Hearts,
@@ -458,6 +459,10 @@ BASE_FEATURE(kSearchReadyOmniboxFeature,
@@ -467,6 +468,10 @@ BASE_FEATURE(kSearchReadyOmniboxFeature,
"SearchReadyOmnibox",
base::FEATURE_DISABLED_BY_DEFAULT);
@@ -102,8 +105,8 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
diff --git a/chrome/browser/flags/android/chrome_feature_list.h b/chrome/browser/flags/android/chrome_feature_list.h
--- a/chrome/browser/flags/android/chrome_feature_list.h
+++ b/chrome/browser/flags/android/chrome_feature_list.h
@@ -20,6 +20,7 @@ BASE_DECLARE_FEATURE(kAdaptiveButtonInTopToolbarCustomizationV2);
BASE_DECLARE_FEATURE(kAddToHomescreenIPH);
@@ -22,6 +22,7 @@ BASE_DECLARE_FEATURE(kAdvancedPeripheralsSupport);
BASE_DECLARE_FEATURE(kAdvancedPeripheralsSupportTabStrip);
BASE_DECLARE_FEATURE(kAllowNewIncognitoTabIntents);
BASE_DECLARE_FEATURE(kAndroidAppIntegration);
+BASE_DECLARE_FEATURE(kAllowUserCertificates);
@@ -121,7 +124,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
public static final String ADAPTIVE_BUTTON_IN_TOP_TOOLBAR = "AdaptiveButtonInTopToolbar";
public static final String ADAPTIVE_BUTTON_IN_TOP_TOOLBAR_TRANSLATE =
"AdaptiveButtonInTopToolbarTranslate";
@@ -499,6 +500,8 @@ public abstract class ChromeFeatureList {
@@ -504,6 +505,8 @@ public abstract class ChromeFeatureList {
public static final String XSURFACE_METRICS_REPORTING = "XsurfaceMetricsReporting";
/* Alphabetical: */
@@ -130,7 +133,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
public static final CachedFlag sAppMenuMobileSiteOption =
new CachedFlag(APP_MENU_MOBILE_SITE_OPTION, false);
public static final CachedFlag sBackGestureActivityTabProvider =
@@ -622,6 +625,7 @@ public abstract class ChromeFeatureList {
@@ -629,6 +632,7 @@ public abstract class ChromeFeatureList {
public static final List<CachedFlag> sFlagsCachedFullBrowser = List.of(
// clang-format off
@@ -10,7 +10,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java b/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java
@@ -151,6 +151,8 @@ public class KeyboardShortcuts {
@@ -152,6 +152,8 @@ public class KeyboardShortcuts {
KeyEvent.KEYCODE_F, KeyEvent.META_CTRL_ON);
addShortcut(context, chromeFeatureShortcutGroup, R.string.keyboard_shortcut_address_bar,
KeyEvent.KEYCODE_L, KeyEvent.META_CTRL_ON);
@@ -16,21 +16,21 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -9395,6 +9395,10 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kRequestDesktopSiteExceptionsName,
flag_descriptions::kRequestDesktopSiteExceptionsDescription, kOsAndroid,
FEATURE_VALUE_TYPE(features::kRequestDesktopSiteExceptions)},
@@ -9512,6 +9512,10 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kForceOffTextAutosizingName,
flag_descriptions::kForceOffTextAutosizingDescription, kOsAndroid,
FEATURE_VALUE_TYPE(features::kForceOffTextAutosizing)},
+ {"cleartext-permitted",
+ flag_descriptions::kIsCleartextPermittedName,
+ flag_descriptions::kIsCleartextPermittedDescription, kOsAndroid,
+ FEATURE_VALUE_TYPE(net::features::kIsCleartextPermitted)},
#endif
{"export-bookmarks-use-saf",
#if BUILDFLAG(IS_ANDROID)
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
@@ -1915,6 +1915,10 @@ const char kHttpsUpgradesDescription[] =
@@ -1947,6 +1947,10 @@ const char kHttpsUpgradesDescription[] =
"Enable automatically upgrading all top-level navigations to HTTPS with "
"fast fallback to HTTP.";
@@ -44,7 +44,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -1062,6 +1062,9 @@ extern const char kHiddenNetworkMigrationDescription[];
@@ -1090,6 +1090,9 @@ extern const char kHideIncognitoMediaMetadataDescription[];
extern const char kHttpsOnlyModeName[];
extern const char kHttpsOnlyModeDescription[];
@@ -57,9 +57,9 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio
diff --git a/net/base/features.cc b/net/base/features.cc
--- a/net/base/features.cc
+++ b/net/base/features.cc
@@ -131,6 +131,10 @@ BASE_FEATURE(kEnableCrossSiteFlagNetworkIsolationKey, // must be
"EnableCrossSiteFlagNetworkIsolationKey", // disabled
base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
@@ -146,6 +146,10 @@ BASE_FEATURE(kHttpCacheKeyingExperimentControlGroup,
"HttpCacheKeyingExperimentControlGroup",
base::FEATURE_DISABLED_BY_DEFAULT);
+BASE_FEATURE(kIsCleartextPermitted,
+ "IsCleartextPermitted",
@@ -83,7 +83,7 @@ diff --git a/net/base/features.h b/net/base/features.h
diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_request_http_job.cc
--- a/net/url_request/url_request_http_job.cc
+++ b/net/url_request/url_request_http_job.cc
@@ -212,6 +212,10 @@ std::unique_ptr<URLRequestJob> URLRequestHttpJob::Create(URLRequest* request) {
@@ -213,6 +213,10 @@ std::unique_ptr<URLRequestJob> URLRequestHttpJob::Create(URLRequest* request) {
}
#if BUILDFLAG(IS_ANDROID)
@@ -19,7 +19,8 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../java/res/xml/privacy_preferences.xml | 4 +
.../privacy/settings/PrivacySettings.java | 1 +
.../chrome_autocomplete_provider_client.cc | 2 +
chrome/browser/browser_resources.grd | 6 +-
chrome/browser/browser_resources.grd | 4 +-
.../extensions/api/proxy/proxy_api_helpers.cc | 2 +-
chrome/browser/net/proxy_service_factory.cc | 24 +-
chrome/browser/net/proxy_service_factory.h | 3 +
chrome/browser/prefs/browser_prefs.cc | 4 +
@@ -39,7 +40,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../proxy_config/proxy_policy_handler.cc | 2 +-
net/proxy_resolution/proxy_config.cc | 52 ++-
net/proxy_resolution/proxy_config.h | 3 +
24 files changed, 982 insertions(+), 17 deletions(-)
25 files changed, 981 insertions(+), 18 deletions(-)
create mode 100644 chrome/browser/resources/proxy_config.css
create mode 100644 chrome/browser/resources/proxy_config.html
create mode 100644 chrome/browser/resources/proxy_config.js
@@ -87,7 +88,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
--- a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
+++ b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
@@ -304,6 +304,8 @@ ChromeAutocompleteProviderClient::GetBuiltinsToProvideAsUserTypes() {
@@ -297,6 +297,8 @@ ChromeAutocompleteProviderClient::GetBuiltinsToProvideAsUserTypes() {
builtins_to_provide.push_back(
base::ASCIIToUTF16(chrome::kChromeUISettingsURL));
#endif
@@ -99,15 +100,13 @@ diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
diff --git a/chrome/browser/browser_resources.grd b/chrome/browser/browser_resources.grd
--- a/chrome/browser/browser_resources.grd
+++ b/chrome/browser/browser_resources.grd
@@ -284,11 +284,15 @@
@@ -277,11 +277,13 @@
<include name="IDR_PREF_HASH_SEED_BIN" file="resources\settings_internal\pref_hash_seed.bin" type="BINDATA" />
<include name="IDR_ADDITIONAL_MODULE_IDS" file="${additional_modules_list_file}" use_base_dir="false" type="BINDATA" />
</if>
+ <!-- Bromite Proxy Configuration UI -->
+ <if expr="is_android">
+ <include name="IDR_PROXY_CONFIG_HTML" file="resources\proxy_config.html" flattenhtml="true" type="BINDATA" compress="gzip" />
+ <include name="IDR_PROXY_CONFIG_JS" file="resources\proxy_config.js" type="BINDATA" compress="gzip" />
+ </if>
+ <include name="IDR_PROXY_CONFIG_HTML" file="resources\proxy_config.html" flattenhtml="true" type="BINDATA" compress="gzip" />
+ <include name="IDR_PROXY_CONFIG_JS" file="resources\proxy_config.js" type="BINDATA" compress="gzip" />
<if expr="not is_android">
<include name="IDR_ABOUT_SYS_HTML" file="resources\about_sys\about_sys.html" type="BINDATA" />
<include name="IDR_ABOUT_SYS_CSS" file="resources\about_sys\about_sys.css" type="BINDATA" />
@@ -116,6 +115,18 @@ diff --git a/chrome/browser/browser_resources.grd b/chrome/browser/browser_resou
<!-- Page not available for guest. -->
<include name="IDR_PAGE_NOT_AVAILABLE_FOR_GUEST_APP_HTML" file="resources\page_not_available_for_guest\app.html" type="BINDATA" />
<include name="IDR_MEDIA_ROUTER_INTERNALS_HTML" file="resources\media_router\internals\media_router_internals.html" type="BINDATA" />
diff --git a/chrome/browser/extensions/api/proxy/proxy_api_helpers.cc b/chrome/browser/extensions/api/proxy/proxy_api_helpers.cc
--- a/chrome/browser/extensions/api/proxy/proxy_api_helpers.cc
+++ b/chrome/browser/extensions/api/proxy/proxy_api_helpers.cc
@@ -388,7 +388,7 @@ absl::optional<base::Value::Dict> CreateProxyConfigDict(
return absl::nullopt;
}
return ProxyConfigDictionary::CreateFixedServers(proxy_rules_string,
- bypass_list);
+ bypass_list, /*reverse_bypass*/false);
}
case ProxyPrefs::MODE_SYSTEM:
return ProxyConfigDictionary::CreateSystem();
diff --git a/chrome/browser/net/proxy_service_factory.cc b/chrome/browser/net/proxy_service_factory.cc
--- a/chrome/browser/net/proxy_service_factory.cc
+++ b/chrome/browser/net/proxy_service_factory.cc
@@ -191,7 +202,7 @@ diff --git a/chrome/browser/net/proxy_service_factory.h b/chrome/browser/net/pro
diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc
--- a/chrome/browser/prefs/browser_prefs.cc
+++ b/chrome/browser/prefs/browser_prefs.cc
@@ -175,6 +175,8 @@
@@ -177,6 +177,8 @@
#include "rlz/buildflags/buildflags.h"
#include "third_party/abseil-cpp/absl/types/optional.h"
@@ -200,7 +211,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse
#if BUILDFLAG(ENABLE_BACKGROUND_MODE)
#include "chrome/browser/background/background_mode_manager.h"
#endif
@@ -1315,6 +1317,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) {
@@ -1410,6 +1412,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) {
component_updater::RegisterPrefs(registry);
domain_reliability::RegisterPrefs(registry);
embedder_support::OriginTrialPrefs::RegisterPrefs(registry);
@@ -655,7 +666,7 @@ new file mode 100644
diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn
--- a/chrome/browser/ui/BUILD.gn
+++ b/chrome/browser/ui/BUILD.gn
@@ -397,6 +397,8 @@ static_library("ui") {
@@ -307,6 +307,8 @@ static_library("ui") {
"webui/metrics_internals/metrics_internals_ui.h",
"webui/net_export_ui.cc",
"webui/net_export_ui.h",
@@ -667,7 +678,7 @@ diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn
diff --git a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc b/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc
--- a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc
+++ b/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc
@@ -59,6 +59,7 @@
@@ -64,6 +64,7 @@
#include "chrome/browser/ui/webui/ntp_tiles_internals_ui.h"
#include "chrome/browser/ui/webui/omnibox/omnibox_ui.h"
#include "chrome/browser/ui/webui/policy/policy_ui.h"
@@ -675,7 +686,7 @@ diff --git a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc b/chrom
#include "chrome/browser/ui/webui/predictors/predictors_ui.h"
#include "chrome/browser/ui/webui/segmentation_internals/segmentation_internals_ui.h"
#include "chrome/browser/ui/webui/signin_internals_ui.h"
@@ -489,6 +490,8 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui,
@@ -502,6 +503,8 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui,
return &NewWebUI<MetricsInternalsUI>;
if (url.host_piece() == chrome::kChromeUINetExportHost)
return &NewWebUI<NetExportUI>;
@@ -1121,7 +1132,7 @@ new file mode 100644
diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_constants.cc
--- a/chrome/common/webui_url_constants.cc
+++ b/chrome/common/webui_url_constants.cc
@@ -50,6 +50,8 @@ const char kChromeUICertificateViewerHost[] = "view-cert";
@@ -56,6 +56,8 @@ const char kChromeUICertificateViewerHost[] = "view-cert";
const char kChromeUICertificateViewerURL[] = "chrome://view-cert/";
const char kChromeUIChromeSigninHost[] = "chrome-signin";
const char kChromeUIChromeSigninURL[] = "chrome://chrome-signin/";
@@ -1130,7 +1141,7 @@ diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_cons
const char kChromeUIChromeURLsHost[] = "chrome-urls";
const char kChromeUIChromeURLsURL[] = "chrome://chrome-urls/";
const char kChromeUIComponentsHost[] = "components";
@@ -431,6 +433,7 @@ bool IsSystemWebUIHost(base::StringPiece host) {
@@ -441,6 +443,7 @@ bool IsSystemWebUIHost(base::StringPiece host) {
kChromeUILockScreenNetworkHost,
kChromeUILockScreenStartReauthHost,
kChromeUIMobileSetupHost,
@@ -1138,9 +1149,9 @@ diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_cons
kChromeUIMultiDeviceSetupHost,
kChromeUINetworkHost,
kChromeUINotificationTesterHost,
@@ -730,6 +733,7 @@ const char* const kChromeHostURLs[] = {
@@ -746,6 +749,7 @@ const char* const kChromeHostURLs[] = {
#if !BUILDFLAG(IS_ANDROID)
#if !BUILDFLAG(IS_CHROMEOS_ASH)
#if !BUILDFLAG(IS_CHROMEOS)
kChromeUIAppLauncherPageHost,
+ kChromeUIProxyConfigHost,
#endif
@@ -1149,7 +1160,7 @@ diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_cons
diff --git a/chrome/common/webui_url_constants.h b/chrome/common/webui_url_constants.h
--- a/chrome/common/webui_url_constants.h
+++ b/chrome/common/webui_url_constants.h
@@ -136,6 +136,8 @@ extern const char kChromeUINTPTilesInternalsHost[];
@@ -143,6 +143,8 @@ extern const char kChromeUINTPTilesInternalsHost[];
extern const char kChromeUINaClHost[];
extern const char kChromeUINetExportHost[];
extern const char kChromeUINetExportURL[];
@@ -1178,7 +1189,7 @@ diff --git a/components/proxy_config/pref_proxy_config_tracker_impl.cc b/compone
registry->RegisterBooleanPref(proxy_config::prefs::kUseSharedProxies, false);
}
@@ -384,6 +384,7 @@ bool PrefProxyConfigTrackerImpl::PrefConfigToNetConfig(
@@ -388,6 +388,7 @@ bool PrefProxyConfigTrackerImpl::PrefConfigToNetConfig(
if (proxy_dict.GetBypassList(&proxy_bypass)) {
proxy_config.proxy_rules().bypass_rules.ParseFromString(proxy_bypass);
}
@@ -1327,7 +1338,7 @@ diff --git a/components/proxy_config/proxy_policy_handler.cc b/components/proxy_
diff --git a/net/proxy_resolution/proxy_config.cc b/net/proxy_resolution/proxy_config.cc
--- a/net/proxy_resolution/proxy_config.cc
+++ b/net/proxy_resolution/proxy_config.cc
@@ -109,7 +109,7 @@ void ProxyConfig::ProxyRules::ParseFromString(const std::string& proxy_rules) {
@@ -112,7 +112,7 @@ void ProxyConfig::ProxyRules::ParseFromString(const std::string& proxy_rules) {
&single_proxies,
ProxyServer::SCHEME_HTTP);
type = Type::PROXY_LIST;
@@ -1336,7 +1347,7 @@ diff --git a/net/proxy_resolution/proxy_config.cc b/net/proxy_resolution/proxy_c
}
// Trim whitespace off the url scheme.
@@ -140,6 +140,56 @@ void ProxyConfig::ProxyRules::ParseFromString(const std::string& proxy_rules) {
@@ -143,6 +143,56 @@ void ProxyConfig::ProxyRules::ParseFromString(const std::string& proxy_rules) {
}
}
+87 -111
View File
@@ -74,7 +74,6 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../browser/toolbar/LocationBarModel.java | 5 +-
chrome/browser/ui/messages/android/BUILD.gn | 1 +
.../snackbar/INeedSnackbarManager.java | 27 +++
chrome/common/pref_names.cc | 6 +
chrome/common/pref_names.h | 6 +
.../browser/content_settings_pref_provider.cc | 8 +-
.../browser/content_settings_pref_provider.h | 2 +
@@ -87,7 +86,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../omnibox/browser/base_search_provider.cc | 2 +-
components/omnibox/browser/search_provider.cc | 4 +-
.../host_content_settings_map_factory.cc | 1 +
68 files changed, 765 insertions(+), 91 deletions(-)
67 files changed, 759 insertions(+), 91 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
@@ -96,7 +95,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_java_resources.gni
--- a/chrome/android/chrome_java_resources.gni
+++ b/chrome/android/chrome_java_resources.gni
@@ -663,6 +663,7 @@ chrome_java_resources = [
@@ -667,6 +667,7 @@ chrome_java_resources = [
"java/res/xml/main_preferences.xml",
"java/res/xml/manage_sync_preferences.xml",
"java/res/xml/phone_as_a_security_key_accessory_filter.xml",
@@ -115,7 +114,7 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java
"java/src/com/google/android/apps/chrome/appwidget/bookmarks/BookmarkThumbnailWidgetProvider.java",
"java/src/org/chromium/chrome/browser/ActivityTabProvider.java",
"java/src/org/chromium/chrome/browser/ActivityUtils.java",
@@ -944,6 +945,7 @@ chrome_java_sources = [
@@ -953,6 +954,7 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/privacy/settings/IncognitoLockSettings.java",
"java/src/org/chromium/chrome/browser/privacy/settings/PrivacyPreferencesManagerImpl.java",
"java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java",
@@ -241,7 +240,7 @@ new file mode 100644
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
@@ -56,6 +56,10 @@ import org.chromium.base.task.TaskTraits;
@@ -58,6 +58,10 @@ import org.chromium.base.task.TaskTraits;
import org.chromium.build.annotations.UsedByReflection;
import org.chromium.cc.input.BrowserControlsState;
import org.chromium.chrome.R;
@@ -252,7 +251,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
import org.chromium.chrome.browser.IntentHandler.IntentHandlerDelegate;
import org.chromium.chrome.browser.IntentHandler.TabOpenType;
import org.chromium.chrome.browser.accessibility_tab_switcher.OverviewListLayout;
@@ -591,9 +595,14 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -579,9 +583,14 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
mTabModelOrchestrator.onNativeLibraryReady(getTabContentManager());
// For saving non-incognito tab closures for Recent Tabs.
@@ -270,7 +269,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
// Defer initialization of this helper so it triggers after TabModelFilter
// observers.
UndoRefocusHelper.initialize(
@@ -1933,8 +1942,9 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -1928,8 +1937,9 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
Bundle savedInstanceState = getSavedInstanceState();
// We determine the model as soon as possible so every systems get initialized coherently.
@@ -285,7 +284,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
@@ -95,6 +95,7 @@ import org.chromium.chrome.browser.contextualsearch.ContextualSearchFieldTrial;
@@ -94,6 +94,7 @@ import org.chromium.chrome.browser.contextualsearch.ContextualSearchFieldTrial;
import org.chromium.chrome.browser.contextualsearch.ContextualSearchManager;
import org.chromium.chrome.browser.contextualsearch.ContextualSearchManager.ContextualSearchTabPromotionDelegate;
import org.chromium.chrome.browser.dependency_injection.ChromeActivityCommonsModule;
@@ -293,7 +292,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
import org.chromium.chrome.browser.dependency_injection.ChromeActivityComponent;
import org.chromium.chrome.browser.dependency_injection.ModuleFactoryOverrides;
import org.chromium.chrome.browser.device.DeviceClassManager;
@@ -1880,6 +1881,9 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -1897,6 +1898,9 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
throw new IllegalStateException(
"Attempting to access TabCreator before initialization");
}
@@ -306,15 +305,15 @@ 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
@@ -35,6 +35,7 @@ import org.chromium.base.supplier.ObservableSupplier;
import org.chromium.base.supplier.OneshotSupplier;
@@ -37,6 +37,7 @@ import org.chromium.base.supplier.OneshotSupplier;
import org.chromium.base.supplier.Supplier;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.ActivityTabProvider;
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
import org.chromium.chrome.browser.banners.AppMenuVerbiage;
import org.chromium.chrome.browser.bookmarks.BookmarkFeatures;
import org.chromium.chrome.browser.bookmarks.BookmarkModel;
@@ -103,6 +104,10 @@ import java.lang.annotation.RetentionPolicy;
@@ -104,6 +105,10 @@ import java.lang.annotation.RetentionPolicy;
import java.util.ArrayList;
import java.util.List;
@@ -325,7 +324,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App
/**
* Base implementation of {@link AppMenuPropertiesDelegate} that handles hiding and showing menu
* items based on activity state.
@@ -559,6 +564,13 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
@@ -567,6 +572,13 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
}
private void prepareCommonMenuItems(Menu menu, @MenuGroup int menuGroup, boolean isIncognito) {
@@ -339,7 +338,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App
// We have to iterate all menu items since same menu item ID may be associated with more
// than one menu items.
boolean isOverviewModeMenu = menuGroup == MenuGroup.OVERVIEW_MODE_MENU;
@@ -619,7 +631,15 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
@@ -627,7 +639,15 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
}
if (item.getItemId() == R.id.recent_tabs_menu_id) {
@@ -356,7 +355,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App
}
if (item.getItemId() == R.id.menu_select_tabs) {
item.setVisible(isMenuSelectTabsVisible);
@@ -823,7 +843,9 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
@@ -831,7 +851,9 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
// is not persisted when adding to the homescreen.
// * If creating shortcuts it not supported by the current home screen.
return WebappsUtils.isAddToHomeIntentSupported() && !isChromeScheme && !isFileScheme
@@ -378,7 +377,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr
import org.chromium.chrome.browser.compositor.bottombar.ephemeraltab.EphemeralTabCoordinator;
import org.chromium.chrome.browser.contextmenu.ChromeContextMenuItem.Item;
import org.chromium.chrome.browser.contextmenu.ContextMenuCoordinator.ListItemType;
@@ -232,6 +233,9 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
@@ -231,6 +232,9 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
public List<Pair<Integer, ModelList>> buildContextMenu() {
mShowEphemeralTabNewLabel = null;
@@ -388,15 +387,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr
List<Pair<Integer, ModelList>> groupedItems = new ArrayList<>();
if (mParams.isAnchor()) {
@@ -250,6 +254,7 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
linkGroup.add(createListItem(Item.OPEN_IN_NEW_TAB_IN_GROUP));
}
}
@@ -240,6 +244,7 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
if (mMode == ContextMenuMode.NORMAL) {
linkGroup.add(createListItem(Item.OPEN_IN_NEW_TAB_IN_GROUP));
linkGroup.add(createListItem(Item.OPEN_IN_NEW_TAB));
+
if (!mItemDelegate.isIncognito() && mItemDelegate.isIncognitoSupported()) {
linkGroup.add(createListItem(Item.OPEN_IN_INCOGNITO_TAB));
}
@@ -274,7 +279,7 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
@@ -264,7 +269,7 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
}
}
if (FirstRunStatus.getFirstRunFlowComplete()) {
@@ -408,7 +407,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityLifecycleUmaTracker.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityLifecycleUmaTracker.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityLifecycleUmaTracker.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityLifecycleUmaTracker.java
@@ -50,31 +50,6 @@ public class CustomTabActivityLifecycleUmaTracker
@@ -67,31 +67,6 @@ public class CustomTabActivityLifecycleUmaTracker
private boolean mIsInitialResume = true;
private void recordIncognitoLaunchReason() {
@@ -451,7 +450,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
import org.chromium.chrome.browser.DefaultBrowserInfo;
import org.chromium.chrome.browser.app.appmenu.AppMenuPropertiesDelegateImpl;
import org.chromium.chrome.browser.app.appmenu.DividerLineMenuItemViewBinder;
@@ -178,6 +179,9 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat
@@ -179,6 +180,9 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat
downloadItemVisible = false;
openInChromeItemVisible = false;
}
@@ -464,7 +463,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java
@@ -57,6 +57,9 @@ import org.chromium.components.embedder_support.util.UrlConstants;
@@ -63,6 +63,9 @@ import org.chromium.components.embedder_support.util.UrlConstants;
import org.chromium.components.version_info.VersionInfo;
import org.chromium.device.mojom.ScreenOrientationLockType;
@@ -474,7 +473,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.util.ArrayList;
@@ -1223,7 +1226,7 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid
@@ -1210,7 +1213,7 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid
@Override
public boolean isIncognito() {
@@ -494,7 +493,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/Downlo
import org.chromium.chrome.browser.ChromeTabbedActivity;
import org.chromium.chrome.browser.IntentHandler;
import org.chromium.chrome.browser.app.download.home.DownloadActivity;
@@ -73,6 +74,10 @@ import org.chromium.url.GURL;
@@ -74,6 +75,10 @@ import org.chromium.url.GURL;
import java.io.File;
@@ -534,7 +533,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History
import org.chromium.base.supplier.ObservableSupplierImpl;
import org.chromium.base.supplier.Supplier;
import org.chromium.chrome.R;
@@ -78,6 +79,12 @@ import java.io.Serializable;
@@ -76,6 +77,12 @@ import java.io.Serializable;
import java.util.List;
import java.util.concurrent.atomic.AtomicReference;
@@ -547,7 +546,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History
/**
* Combines and manages the different UI components of browsing history.
*/
@@ -159,7 +166,7 @@ public class HistoryManager implements OnMenuItemClickListener, SelectionObserve
@@ -157,7 +164,7 @@ public class HistoryManager implements OnMenuItemClickListener, SelectionObserve
recordUserAction("Show");
// If incognito placeholder is shown, we don't need to create History UI elements.
@@ -556,7 +555,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History
mSelectableListLayout = null;
mRootView = getIncognitoHistoryPlaceholderView();
return;
@@ -596,7 +603,7 @@ public class HistoryManager implements OnMenuItemClickListener, SelectionObserve
@@ -594,7 +601,7 @@ public class HistoryManager implements OnMenuItemClickListener, SelectionObserve
private void swapContentView() {
boolean toHistoryClusters;
@@ -565,7 +564,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History
return;
} else if (isHistoryClustersUIShowing()) {
toHistoryClusters = false;
@@ -659,11 +666,24 @@ public class HistoryManager implements OnMenuItemClickListener, SelectionObserve
@@ -657,11 +664,24 @@ public class HistoryManager implements OnMenuItemClickListener, SelectionObserve
&& mContentView == mHistoryClustersCoordinator.getActivityContentView();
}
@@ -591,7 +590,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History
// If Incognito placeholder is shown no need to call any destroy method.
return;
}
@@ -683,7 +703,7 @@ public class HistoryManager implements OnMenuItemClickListener, SelectionObserve
@@ -681,7 +701,7 @@ public class HistoryManager implements OnMenuItemClickListener, SelectionObserve
* @return True if manager handles this event, false if it decides to ignore.
*/
public boolean onBackPressed() {
@@ -603,7 +602,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryPage.java b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryPage.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryPage.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryPage.java
@@ -11,6 +11,7 @@ import androidx.annotation.VisibleForTesting;
@@ -9,6 +9,7 @@ import android.net.Uri;
import org.chromium.base.supplier.Supplier;
import org.chromium.chrome.R;
@@ -611,7 +610,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History
import org.chromium.chrome.browser.history_clusters.HistoryClustersConstants;
import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.tab.Tab;
@@ -19,6 +20,12 @@ import org.chromium.chrome.browser.ui.native_page.BasicNativePage;
@@ -17,6 +18,12 @@ import org.chromium.chrome.browser.ui.native_page.BasicNativePage;
import org.chromium.chrome.browser.ui.native_page.NativePageHost;
import org.chromium.components.embedder_support.util.UrlConstants;
@@ -624,7 +623,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History
/**
* Native page for managing browsing history.
*/
@@ -41,6 +48,15 @@ public class HistoryPage extends BasicNativePage {
@@ -39,6 +46,15 @@ public class HistoryPage extends BasicNativePage {
boolean isIncognito, Supplier<Tab> tabSupplier, String url) {
super(host);
@@ -643,15 +642,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java b/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java
@@ -14,6 +14,7 @@ import androidx.annotation.VisibleForTesting;
@@ -15,6 +15,7 @@ import androidx.annotation.VisibleForTesting;
import org.chromium.base.supplier.DestroyableObservableSupplier;
import org.chromium.base.supplier.ObservableSupplier;
import org.chromium.base.supplier.Supplier;
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
import org.chromium.chrome.browser.app.ChromeActivity;
import org.chromium.chrome.browser.app.download.home.DownloadPage;
import org.chromium.chrome.browser.bookmarks.BookmarkPage;
@@ -216,7 +217,8 @@ public class NativePageFactory {
@@ -226,7 +227,8 @@ public class NativePageFactory {
String url, NativePage candidatePage, Tab tab, boolean isIncognito) {
NativePage page;
@@ -664,7 +663,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsManager.java b/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsManager.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsManager.java
@@ -36,6 +36,15 @@ import org.chromium.components.signin.metrics.SigninAccessPoint;
@@ -35,6 +35,15 @@ import org.chromium.components.signin.metrics.SigninAccessPoint;
import org.chromium.components.sync.SyncService;
import org.chromium.url.GURL;
@@ -680,7 +679,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsM
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -100,7 +109,8 @@ public class RecentTabsManager implements SyncService.SyncStateChangedListener,
@@ -99,7 +108,8 @@ public class RecentTabsManager implements SyncService.SyncStateChangedListener,
*/
public RecentTabsManager(Tab tab, TabModelSelector tabModelSelector, Profile profile,
Context context, Runnable showHistoryManager) {
@@ -690,7 +689,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsM
mActiveTab = tab;
mTabModelSelector = tabModelSelector;
mShowHistoryManager = showHistoryManager;
@@ -252,6 +262,22 @@ public class RecentTabsManager implements SyncService.SyncStateChangedListener,
@@ -251,6 +261,22 @@ public class RecentTabsManager implements SyncService.SyncStateChangedListener,
*/
public void openRecentlyClosedTab(RecentlyClosedTab tab, int windowDisposition) {
if (mIsDestroyed) return;
@@ -881,7 +880,7 @@ new file mode 100644
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java
@@ -70,6 +70,7 @@ import org.chromium.chrome.browser.search_engines.settings.SearchEngineSettings;
@@ -72,6 +72,7 @@ import org.chromium.chrome.browser.search_engines.settings.SearchEngineSettings;
import org.chromium.chrome.browser.signin.SyncConsentActivityLauncherImpl;
import org.chromium.chrome.browser.site_settings.ChromeSiteSettingsDelegate;
import org.chromium.chrome.browser.sync.SyncServiceFactory;
@@ -889,7 +888,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Settin
import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager;
import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager.SnackbarManageable;
import org.chromium.components.browser_ui.accessibility.AccessibilitySettings;
@@ -320,6 +321,9 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity
@@ -322,6 +323,9 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity
((PrivacySandboxSettingsBaseFragment) fragment)
.setSnackbarManager(getSnackbarManager());
}
@@ -944,7 +943,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabSaverImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabSaverImpl.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabSaverImpl.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabSaverImpl.java
@@ -27,6 +27,8 @@ import java.util.Arrays;
@@ -26,6 +26,8 @@ import java.util.Arrays;
import java.util.Collections;
import java.util.List;
@@ -953,7 +952,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore
/**
* Creates historical entries in TabRestoreService.
*/
@@ -60,10 +62,10 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver {
@@ -59,10 +61,10 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver {
// HistoricalTabSaver implementation.
@Override
@@ -966,7 +965,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore
}
@Override
@@ -115,7 +117,7 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver {
@@ -114,7 +116,7 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver {
// If there is only a single valid tab remaining save it individually.
if (validEntries.size() == 1 && validEntries.get(0).isSingleTab()) {
@@ -976,7 +975,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore
}
@@ -140,11 +142,12 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver {
CollectionUtil.integerListToIntArray(savedStateVersions));
CollectionUtil.integerCollectionToIntArray(savedStateVersions));
}
- private void createHistoricalTabInternal(Tab tab) {
@@ -999,7 +998,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore
// {@link GURL#getScheme()} is not available in unit tests.
if (mIgnoreUrlSchemesForTesting) return true;
@@ -225,7 +228,7 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver {
@@ -224,7 +227,7 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver {
@NativeMethods
interface Natives {
@@ -1011,7 +1010,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/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
@@ -125,6 +125,8 @@ import org.chromium.components.webapps.bottomsheet.PwaBottomSheetControllerFacto
@@ -123,6 +123,8 @@ import org.chromium.components.webapps.bottomsheet.PwaBottomSheetControllerFacto
import org.chromium.content_public.browser.WebContents;
import org.chromium.ui.base.ActivityWindowAndroid;
import org.chromium.ui.base.DeviceFormFactor;
@@ -1020,7 +1019,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab
import org.chromium.ui.base.IntentRequestTracker;
import org.chromium.ui.modaldialog.ModalDialogManager;
@@ -797,7 +799,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator {
@@ -794,7 +796,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator {
mAppMenuCoordinator.getAppMenuHandler(), mActivityTabProvider,
mToolbarManager.getMenuButtonView(), () -> {
mTabCreatorManagerSupplier.get()
@@ -1100,7 +1099,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPer
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java
@@ -37,6 +37,7 @@ import org.chromium.base.supplier.OneshotSupplier;
@@ -40,6 +40,7 @@ import org.chromium.base.supplier.OneshotSupplier;
import org.chromium.base.supplier.Supplier;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.ActivityTabProvider;
@@ -1108,7 +1107,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/Toolbar
import org.chromium.chrome.browser.IntentHandler;
import org.chromium.chrome.browser.app.tab_activity_glue.TabReparentingController;
import org.chromium.chrome.browser.app.tabmodel.TabWindowManagerSingleton;
@@ -500,7 +501,8 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
@@ -509,7 +510,8 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
return ret;
}
},
@@ -1131,16 +1130,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappI
/**
* Stores info about a web app.
*/
@@ -45,6 +48,8 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider
private final Intent mIntent;
@@ -46,6 +49,8 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider
private final ColorProviderImpl mColorProvider;
private final ColorProviderImpl mDarkColorProvider;
+ private boolean mIsIncognito = false;
+
/**
* Returns the toolbar color to use if a custom color is not specified by the webapp.
*/
@@ -67,6 +72,10 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider
@@ -77,6 +82,10 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider
mWebappExtras = webappExtras;
mWebApkExtras = webApkExtras;
mActivityType = (webApkExtras != null) ? ActivityType.WEB_APK : ActivityType.WEBAPP;
@@ -1151,7 +1150,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappI
}
@Override
@@ -147,6 +156,11 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider
@@ -162,6 +171,11 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider
return mWebApkExtras;
}
@@ -1166,7 +1165,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappI
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -5073,6 +5073,10 @@ const FeatureEntry kFeatureEntries[] = {
@@ -5136,6 +5136,10 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kOfflinePagesLivePageSharingName,
flag_descriptions::kOfflinePagesLivePageSharingDescription, kOsAndroid,
FEATURE_VALUE_TYPE(offline_pages::kOfflinePagesLivePageSharingFeature)},
@@ -1240,7 +1239,7 @@ diff --git a/chrome/browser/android/historical_tab_saver.cc b/chrome/browser/and
diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
--- a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
+++ b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
@@ -350,6 +350,15 @@ ChromeAutocompleteProviderClient::GetOnDeviceTailModelService() const {
@@ -343,6 +343,15 @@ ChromeAutocompleteProviderClient::GetOnDeviceTailModelService() const {
#endif // BUILDFLAG(BUILD_WITH_TFLITE_LIB)
}
@@ -1259,7 +1258,7 @@ diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.h b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.h
--- a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.h
+++ b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.h
@@ -86,6 +86,7 @@ class ChromeAutocompleteProviderClient : public AutocompleteProviderClient {
@@ -84,6 +84,7 @@ class ChromeAutocompleteProviderClient : public AutocompleteProviderClient {
const override;
OnDeviceTailModelService* GetOnDeviceTailModelService() const override;
bool IsOffTheRecord() const override;
@@ -1276,9 +1275,9 @@ diff --git a/chrome/browser/autocomplete/remote_suggestions_service_factory.cc b
+#include "build/build_config.h"
#include "base/no_destructor.h"
#include "chrome/browser/autocomplete/document_suggestions_service_factory.h"
#include "chrome/browser/profiles/profile.h"
#include "components/omnibox/browser/remote_suggestions_service.h"
@@ -36,7 +37,11 @@ RemoteSuggestionsServiceFactory::RemoteSuggestionsServiceFactory()
@@ -39,7 +40,11 @@ RemoteSuggestionsServiceFactory::RemoteSuggestionsServiceFactory()
: ProfileKeyedServiceFactory(
"RemoteSuggestionsService",
ProfileSelections::Builder()
@@ -1341,7 +1340,7 @@ diff --git a/chrome/browser/content_settings/host_content_settings_map_factory.c
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
@@ -4047,6 +4047,12 @@ const char kOfflinePagesLivePageSharingDescription[] =
@@ -4111,6 +4111,12 @@ const char kOfflinePagesLivePageSharingDescription[] =
"Enables to share current loaded page as offline page by saving as MHTML "
"first.";
@@ -1357,7 +1356,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -2358,6 +2358,9 @@ extern const char kOmahaMinSdkVersionAndroidDescription[];
@@ -2411,6 +2411,9 @@ extern const char kOmahaMinSdkVersionAndroidDescription[];
extern const char kOmahaMinSdkVersionAndroidMinSdk1Description[];
extern const char kOmahaMinSdkVersionAndroidMinSdk1000Description[];
@@ -1370,7 +1369,7 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc
--- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -537,8 +537,8 @@ BASE_FEATURE(kCCTFeatureUsage,
@@ -554,8 +554,8 @@ BASE_FEATURE(kCCTFeatureUsage,
BASE_FEATURE(kCCTIncognito, "CCTIncognito", base::FEATURE_ENABLED_BY_DEFAULT);
BASE_FEATURE(kCCTIncognitoAvailableToThirdParty,
@@ -1394,7 +1393,7 @@ diff --git a/chrome/browser/history/history_tab_helper.cc b/chrome/browser/histo
#else
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/browser_finder.h"
@@ -474,6 +477,13 @@ void HistoryTabHelper::TitleWasSet(NavigationEntry* entry) {
@@ -476,6 +479,13 @@ void HistoryTabHelper::TitleWasSet(NavigationEntry* entry) {
history::HistoryService* HistoryTabHelper::GetHistoryService() {
Profile* profile =
Profile::FromBrowserContext(web_contents()->GetBrowserContext());
@@ -1408,7 +1407,7 @@ diff --git a/chrome/browser/history/history_tab_helper.cc b/chrome/browser/histo
if (profile->IsOffTheRecord())
return nullptr;
@@ -481,6 +491,16 @@ history::HistoryService* HistoryTabHelper::GetHistoryService() {
@@ -483,6 +493,16 @@ history::HistoryService* HistoryTabHelper::GetHistoryService() {
profile, ServiceAccessType::IMPLICIT_ACCESS);
}
@@ -1704,15 +1703,15 @@ diff --git a/chrome/browser/offline_pages/request_coordinator_factory.h b/chrome
diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc
--- a/chrome/browser/prefs/browser_prefs.cc
+++ b/chrome/browser/prefs/browser_prefs.cc
@@ -232,6 +232,7 @@
#include "components/feed/core/shared_prefs/pref_names.h"
@@ -236,6 +236,7 @@
#if BUILDFLAG(IS_ANDROID)
#include "chrome/browser/accessibility/accessibility_prefs/android/accessibility_prefs_controller.h"
+#include "chrome/browser/history/history_tab_helper.h"
#include "chrome/browser/android/bookmarks/partner_bookmarks_shim.h"
#include "chrome/browser/android/ntp/recent_tabs_page_prefs.h"
#include "chrome/browser/android/oom_intervention/oom_intervention_decider.h"
@@ -1698,6 +1699,10 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
@@ -1796,6 +1797,10 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
usage_stats::UsageStatsBridge::RegisterProfilePrefs(registry);
variations::VariationsService::RegisterProfilePrefs(registry);
webapps::InstallPromptPrefs::RegisterProfilePrefs(registry);
@@ -1851,9 +1850,9 @@ diff --git a/chrome/browser/ui/android/native_page/java/src/org/chromium/chrome/
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
@@ -1384,6 +1384,37 @@ Your Google account may have other forms of browsing history like searches and a
@@ -1408,6 +1408,37 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_CLEAR_BROWSING_HISTORY_SUMMARY_SYNCED_NO_LINK" desc="A text for the basic tab explaining browsing history for users with history sync. This version is shown when the link to MyActivity is displayed separately.">
Clears history from all synced devices.
Clears history from all synced devices
</message>
+ <!-- always incognito -->
+ <message name="IDS_INCOGNITO_SETTINGS_TITLE" desc="Title for incognito mode settings">
@@ -1892,7 +1891,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/LocationBarModel.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/LocationBarModel.java
--- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/LocationBarModel.java
+++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/LocationBarModel.java
@@ -179,6 +179,7 @@ public class LocationBarModel implements ToolbarDataProvider, LocationBarDataPro
@@ -178,6 +178,7 @@ public class LocationBarModel implements ToolbarDataProvider, LocationBarDataPro
protected String mFormattedFullUrl;
protected String mUrlForDisplay;
private boolean mOmniboxUpdatedConnectionSecurityIndicatorsEnabled;
@@ -1900,7 +1899,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow
// notifyUrlChanged and notifySecurityStateChanged are usually called 3 times across a same
// document navigation. The first call is usually necessary, which updates the UrlBar to reflect
@@ -204,7 +205,9 @@ public class LocationBarModel implements ToolbarDataProvider, LocationBarDataPro
@@ -200,7 +201,9 @@ public class LocationBarModel implements ToolbarDataProvider, LocationBarDataPro
public LocationBarModel(Context context, NewTabPageDelegate newTabPageDelegate,
@NonNull UrlFormatter urlFormatter, @NonNull ProfileProvider profileProvider,
@NonNull OfflineStatus offlineStatus,
@@ -1954,49 +1953,26 @@ new file mode 100644
+public interface INeedSnackbarManager {
+ void setSnackbarManager(SnackbarManager manager);
+}
diff --git a/chrome/common/pref_names.cc b/chrome/common/pref_names.cc
--- a/chrome/common/pref_names.cc
+++ b/chrome/common/pref_names.cc
@@ -3460,6 +3460,12 @@ const char kLacrosLaunchSwitch[] = "lacros_launch_switch";
const char kLacrosSelection[] = "lacros_selection";
#endif
+#if BUILDFLAG(IS_ANDROID)
+const char kAlwaysIncognitoEnabled[] = "always_incognito_enabled";
+const char kIncognitoTabHistoryEnabled[] = "incognito_tab_history_enabled";
+const char kIncognitoSaveSiteSettingEnabled[] = "incognito_site_setting_enabled";
+#endif
+
#if BUILDFLAG(IS_CHROMEOS_ASH)
// String enum pref determining what should happen when a user who authenticates
// via a security token is removing this token. "IGNORE" - nothing happens
diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h
--- a/chrome/common/pref_names.h
+++ b/chrome/common/pref_names.h
@@ -1214,6 +1214,8 @@ extern const char kDiscountConsentShowInterestIn[];
#if BUILDFLAG(IS_ANDROID)
extern const char kWebXRImmersiveArEnabled[];
+extern const char kAlwaysIncognitoEnabled[];
+extern const char kIncognitoSaveSiteSettingEnabled[];
#endif
#if !BUILDFLAG(IS_ANDROID)
@@ -1255,6 +1257,10 @@ extern const char kPrivacyGuideViewed[];
extern const char kCorsNonWildcardRequestHeadersSupport[];
@@ -3942,6 +3942,12 @@ inline constexpr char kOutOfProcessSystemDnsResolutionEnabled[] =
"net.out_of_process_system_dns_resolution_enabled";
#endif // BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX)
+#if BUILDFLAG(IS_ANDROID)
+extern const char kIncognitoTabHistoryEnabled[];
+inline constexpr char kAlwaysIncognitoEnabled[] = "always_incognito_enabled";
+inline constexpr char kIncognitoSaveSiteSettingEnabled[] = "incognito_tab_history_enabled";
+inline constexpr char kIncognitoTabHistoryEnabled[] = "incognito_site_setting_enabled";
+#endif
+
extern const char kOriginAgentClusterDefaultEnabled[];
// A list of hostnames to disable HTTPS Upgrades / HTTPS-First Mode warnings on.
inline constexpr char kHttpAllowlist[] = "https_upgrades.policy.http_allowlist";
extern const char kForceMajorVersionToMinorPositionInUserAgent[];
diff --git a/components/content_settings/core/browser/content_settings_pref_provider.cc b/components/content_settings/core/browser/content_settings_pref_provider.cc
--- a/components/content_settings/core/browser/content_settings_pref_provider.cc
+++ b/components/content_settings/core/browser/content_settings_pref_provider.cc
@@ -86,10 +86,12 @@ void PrefProvider::RegisterProfilePrefs(
@@ -87,10 +87,12 @@ void PrefProvider::RegisterProfilePrefs(
PrefProvider::PrefProvider(PrefService* prefs,
bool off_the_record,
@@ -2009,7 +1985,7 @@ diff --git a/components/content_settings/core/browser/content_settings_pref_prov
store_last_modified_(store_last_modified),
clock_(base::DefaultClock::GetInstance()) {
TRACE_EVENT_BEGIN("startup", "PrefProvider::PrefProvider");
@@ -112,10 +114,14 @@ PrefProvider::PrefProvider(PrefService* prefs,
@@ -113,10 +115,14 @@ PrefProvider::PrefProvider(PrefService* prefs,
WebsiteSettingsRegistry* website_settings =
WebsiteSettingsRegistry::GetInstance();
for (const WebsiteSettingsInfo* info : *website_settings) {
@@ -2036,7 +2012,7 @@ diff --git a/components/content_settings/core/browser/content_settings_pref_prov
bool store_last_modified,
bool restore_session);
@@ -93,6 +94,7 @@ class PrefProvider : public UserModifiableProvider {
@@ -110,6 +111,7 @@ class PrefProvider : public UserModifiableProvider {
raw_ptr<PrefService> prefs_;
const bool off_the_record_;
@@ -2047,7 +2023,7 @@ diff --git a/components/content_settings/core/browser/content_settings_pref_prov
diff --git a/components/content_settings/core/browser/host_content_settings_map.cc b/components/content_settings/core/browser/host_content_settings_map.cc
--- a/components/content_settings/core/browser/host_content_settings_map.cc
+++ b/components/content_settings/core/browser/host_content_settings_map.cc
@@ -276,6 +276,7 @@ struct ContentSettingEntry {
@@ -280,6 +280,7 @@ struct ContentSettingEntry {
HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs,
bool is_off_the_record,
@@ -2055,7 +2031,7 @@ diff --git a/components/content_settings/core/browser/host_content_settings_map.
bool store_last_modified,
bool restore_session,
bool should_record_metrics)
@@ -285,6 +286,7 @@ HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs,
@@ -289,6 +290,7 @@ HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs,
#endif
prefs_(prefs),
is_off_the_record_(is_off_the_record),
@@ -2063,7 +2039,7 @@ diff --git a/components/content_settings/core/browser/host_content_settings_map.
store_last_modified_(store_last_modified),
allow_invalid_secondary_pattern_for_testing_(false),
clock_(base::DefaultClock::GetInstance()) {
@@ -297,7 +299,7 @@ HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs,
@@ -301,7 +303,7 @@ HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs,
policy_provider->AddObserver(this);
auto pref_provider_ptr = std::make_unique<content_settings::PrefProvider>(
@@ -2083,7 +2059,7 @@ diff --git a/components/content_settings/core/browser/host_content_settings_map.
bool store_last_modified,
bool restore_session,
bool should_record_metrics);
@@ -507,6 +508,8 @@ class HostContentSettingsMap : public content_settings::Observer,
@@ -521,6 +522,8 @@ class HostContentSettingsMap : public content_settings::Observer,
// Whether this settings map is for an incognito or guest session.
bool is_off_the_record_;
@@ -2130,7 +2106,7 @@ diff --git a/components/omnibox/browser/autocomplete_provider_client.cc b/compon
diff --git a/components/omnibox/browser/autocomplete_provider_client.h b/components/omnibox/browser/autocomplete_provider_client.h
--- a/components/omnibox/browser/autocomplete_provider_client.h
+++ b/components/omnibox/browser/autocomplete_provider_client.h
@@ -139,6 +139,7 @@ class AutocompleteProviderClient : public OmniboxAction::Client {
@@ -136,6 +136,7 @@ class AutocompleteProviderClient : public OmniboxAction::Client {
virtual bool IsOffTheRecord() const = 0;
virtual bool IsIncognitoProfile() const = 0;
virtual bool IsGuestSession() const = 0;
@@ -278,7 +278,7 @@ new file mode 100644
diff --git a/components/content_settings/core/browser/content_settings_registry.cc b/components/content_settings/core/browser/content_settings_registry.cc
--- a/components/content_settings/core/browser/content_settings_registry.cc
+++ b/components/content_settings/core/browser/content_settings_registry.cc
@@ -244,7 +244,7 @@ void ContentSettingsRegistry::Init() {
@@ -246,7 +246,7 @@ void ContentSettingsRegistry::Init() {
ContentSettingsInfo::INHERIT_IN_INCOGNITO,
ContentSettingsInfo::EXCEPTIONS_ON_SECURE_ORIGINS_ONLY);
@@ -25,10 +25,10 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../bookmarks/BookmarkToolbarViewBinder.java | 6 +
.../native_page/NativePageFactory.java | 11 +-
chrome/browser/BUILD.gn | 11 +-
chrome/browser/about_flags.cc | 6 +
chrome/browser/about_flags.cc | 8 +
.../bookmarks/android/bookmark_bridge.cc | 283 ++++++++++++++++++
.../bookmarks/android/bookmark_bridge.h | 30 +-
.../browser/bookmarks/bookmark_html_writer.cc | 8 +-
.../browser/bookmarks/bookmark_html_writer.cc | 11 +
.../dialogs/DownloadLocationCustomView.java | 8 +-
.../DownloadLocationDialogCoordinator.java | 8 +-
chrome/browser/flag_descriptions.cc | 5 +
@@ -44,12 +44,14 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
chrome/utility/BUILD.gn | 7 +-
.../utility/importer/bookmark_html_reader.cc | 27 +-
.../utility/importer/bookmark_html_reader.h | 8 +
.../headless_select_file_dialog.cc | 4 +
.../chromium/ui/base/SelectFileDialog.java | 18 +-
.../java/strings/android_ui_strings.grd | 3 +
ui/shell_dialogs/select_file_dialog.h | 2 +
.../select_file_dialog_android.cc | 6 +
ui/shell_dialogs/select_file_dialog_android.h | 2 +
39 files changed, 886 insertions(+), 30 deletions(-)
ui/shell_dialogs/select_file_dialog_win.cc | 5 +
41 files changed, 901 insertions(+), 29 deletions(-)
diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/AndroidManifest.xml
--- a/chrome/android/java/AndroidManifest.xml
@@ -89,15 +91,15 @@ diff --git a/chrome/android/java/res/menu/bookmark_toolbar_menu.xml b/chrome/and
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDelegateFactory.java b/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDelegateFactory.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDelegateFactory.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDelegateFactory.java
@@ -9,6 +9,7 @@ import android.app.Activity;
import androidx.annotation.Nullable;
@@ -10,6 +10,7 @@ import androidx.annotation.Nullable;
import org.chromium.base.supplier.ObservableSupplier;
import org.chromium.base.supplier.Supplier;
+import org.chromium.chrome.browser.app.ChromeActivity;
import org.chromium.chrome.browser.app.tab_activity_glue.ActivityTabWebContentsDelegateAndroid;
import org.chromium.chrome.browser.browser_controls.BrowserControlsStateProvider;
import org.chromium.chrome.browser.compositor.CompositorViewHolder;
@@ -47,7 +48,7 @@ import org.chromium.ui.modaldialog.ModalDialogManager;
@@ -49,7 +50,7 @@ import org.chromium.ui.modaldialog.ModalDialogManager;
* {@link ChromeTabbedActivity}.
*/
public class TabbedModeTabDelegateFactory implements TabDelegateFactory {
@@ -106,7 +108,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDe
private final BrowserControlsVisibilityDelegate mAppBrowserControlsVisibilityDelegate;
private final Supplier<ShareDelegate> mShareDelegateSupplier;
private final Supplier<EphemeralTabCoordinator> mEphemeralTabCoordinatorSupplier;
@@ -71,7 +72,7 @@ public class TabbedModeTabDelegateFactory implements TabDelegateFactory {
@@ -74,7 +75,7 @@ public class TabbedModeTabDelegateFactory implements TabDelegateFactory {
private NativePageFactory mNativePageFactory;
@@ -244,7 +246,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
/**
* Provides the communication channel for Android to fetch and manipulate the
* bookmark model stored in native.
@@ -435,6 +474,209 @@ class BookmarkBridge {
@@ -432,6 +471,209 @@ class BookmarkBridge {
mNativeBookmarkBridge, BookmarkBridge.this, id.getId(), id.getType());
}
@@ -454,7 +456,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
/**
* Synchronously gets a list of bookmarks that match the specified search query.
* @param query Keyword used for searching bookmarks.
@@ -919,6 +1161,39 @@ class BookmarkBridge {
@@ -931,6 +1173,39 @@ class BookmarkBridge {
depthList.add(depth);
}
@@ -494,7 +496,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
private static List<Pair<Integer, Integer>> createPairsList(int[] left, int[] right) {
List<Pair<Integer, Integer>> pairList = new ArrayList<>();
for (int i = 0; i < left.length; i++) {
@@ -954,6 +1229,9 @@ class BookmarkBridge {
@@ -966,6 +1241,9 @@ class BookmarkBridge {
int getChildCount(long nativeBookmarkBridge, BookmarkBridge caller, long id, int type);
void getChildIds(long nativeBookmarkBridge, BookmarkBridge caller, long id, int type,
List<BookmarkId> bookmarksList);
@@ -553,7 +555,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManagerMediator.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManagerMediator.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManagerMediator.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManagerMediator.java
@@ -56,6 +56,8 @@ import org.chromium.components.browser_ui.widget.selectable_list.SelectionDelega
@@ -51,6 +51,8 @@ import org.chromium.components.browser_ui.widget.selectable_list.SelectionDelega
import org.chromium.components.browser_ui.widget.selectable_list.SelectionDelegate.SelectionObserver;
import org.chromium.components.commerce.core.CommerceSubscription;
import org.chromium.components.commerce.core.ShoppingService;
@@ -562,7 +564,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
import org.chromium.components.favicon.LargeIconBridge;
import org.chromium.components.feature_engagement.EventConstants;
import org.chromium.components.power_bookmarks.PowerBookmarkMeta;
@@ -80,6 +82,9 @@ class BookmarkManagerMediator
@@ -77,6 +79,9 @@ class BookmarkManagerMediator
private static boolean sPreventLoadingForTesting;
@@ -572,7 +574,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
/**
* Keeps track of whether drag is enabled / active for bookmark lists.
*/
@@ -453,6 +458,14 @@ class BookmarkManagerMediator
@@ -461,6 +466,14 @@ class BookmarkManagerMediator
mNativePage = nativePage;
}
@@ -587,7 +589,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
/**
* See BookmarkManager(Coordinator)#updateForUrl
*/
@@ -628,6 +641,16 @@ class BookmarkManagerMediator
@@ -635,6 +648,16 @@ class BookmarkManagerMediator
}
}
@@ -603,11 +605,11 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
+
@Override
public void openSearchUi() {
setState(BookmarkUiState.createSearchState());
onQueryCallback("");
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPage.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPage.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPage.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPage.java
@@ -15,6 +15,9 @@ import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager;
@@ -13,6 +13,9 @@ import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager;
import org.chromium.chrome.browser.ui.native_page.BasicNativePage;
import org.chromium.chrome.browser.ui.native_page.NativePageHost;
import org.chromium.components.embedder_support.util.UrlConstants;
@@ -617,7 +619,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
/**
* A native page holding a {@link BookmarkManagerCoordinator} on _tablet_.
@@ -31,7 +34,7 @@ public class BookmarkPage extends BasicNativePage {
@@ -29,7 +32,7 @@ public class BookmarkPage extends BasicNativePage {
* @param host A NativePageHost to load urls.
*/
public BookmarkPage(ComponentName componentName, SnackbarManager snackbarManager,
@@ -626,7 +628,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
super(host);
mBookmarkManagerCoordinator =
@@ -39,6 +42,9 @@ public class BookmarkPage extends BasicNativePage {
@@ -37,6 +40,9 @@ public class BookmarkPage extends BasicNativePage {
snackbarManager, Profile.getLastUsedRegularProfile(),
new BookmarkUiPrefs(SharedPreferencesManager.getInstance()));
mBookmarkManagerCoordinator.setBasicNativePage(this);
@@ -657,7 +659,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
void setSearchButtonVisible(boolean visible) {
// The improved bookmarks experience embeds search in the list.
if (BookmarkFeatures.isAndroidImprovedBookmarksEnabled()) return;
@@ -147,6 +158,8 @@ public class BookmarkToolbar extends SelectableListToolbar<BookmarkId>
@@ -156,6 +167,8 @@ public class BookmarkToolbar extends SelectableListToolbar<BookmarkId>
void setCurrentFolder(BookmarkId folder) {
mCurrentFolder = mBookmarkModel.getBookmarkById(folder);
@@ -665,8 +667,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
+ getMenu().findItem(R.id.export_menu_id).setVisible(true);
}
void setOpenFolderCallback(Callback<BookmarkId> openFolderCallback) {
@@ -166,6 +179,13 @@ public class BookmarkToolbar extends SelectableListToolbar<BookmarkId>
void setNavigateBackRunnable(Runnable navigateBackRunnable) {
@@ -175,6 +188,13 @@ public class BookmarkToolbar extends SelectableListToolbar<BookmarkId>
@Override
public boolean onMenuItemClick(MenuItem menuItem) {
hideOverflowMenu();
@@ -680,7 +682,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
return mMenuIdClickedFunction.apply(menuItem.getItemId());
}
@@ -186,6 +206,9 @@ public class BookmarkToolbar extends SelectableListToolbar<BookmarkId>
@@ -195,6 +215,9 @@ public class BookmarkToolbar extends SelectableListToolbar<BookmarkId>
protected void showNormalView() {
super.showNormalView();
@@ -695,8 +697,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbarMediator.java
@@ -81,6 +81,10 @@ class BookmarkToolbarMediator implements BookmarkUiObserver, DragListener,
mBookmarkDelegate = bookmarkDelegate;
mModel.set(
BookmarkToolbarProperties.OPEN_FOLDER_CALLBACK, mBookmarkDelegate::openFolder);
mModel.set(BookmarkToolbarProperties.NAVIGATE_BACK_RUNNABLE,
this::openParentForCurrentFolder);
+ mModel.set(
+ BookmarkToolbarProperties.IMPORT_BOOKMARK_RUNNABLE, mBookmarkDelegate::importBookmarks);
+ mModel.set(
@@ -707,9 +709,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbarProperties.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbarProperties.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbarProperties.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbarProperties.java
@@ -60,10 +60,15 @@ class BookmarkToolbarProperties {
@@ -61,11 +61,16 @@ class BookmarkToolbarProperties {
new WritableObjectPropertyKey<>();
static final WritableObjectPropertyKey<Callback<BookmarkId>> OPEN_FOLDER_CALLBACK =
static final WritableObjectPropertyKey<Runnable> NAVIGATE_BACK_RUNNABLE =
new WritableObjectPropertyKey<>();
+ static final WritableObjectPropertyKey<Runnable> IMPORT_BOOKMARK_RUNNABLE =
+ new WritableObjectPropertyKey<>();
@@ -719,15 +721,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
static final PropertyKey[] ALL_KEYS = {BOOKMARK_MODEL, BOOKMARK_OPENER, SELECTION_DELEGATE,
TITLE, BOOKMARK_UI_MODE, SOFT_KEYBOARD_VISIBLE, IS_DIALOG_UI, DRAG_ENABLED,
SEARCH_BUTTON_VISIBLE, EDIT_BUTTON_VISIBLE, NEW_FOLDER_BUTTON_VISIBLE,
NAVIGATION_BUTTON_STATE, CURRENT_FOLDER, CHECKED_SORT_MENU_ID, CHECKED_VIEW_MENU_ID,
- MENU_ID_CLICKED_FUNCTION, OPEN_FOLDER_CALLBACK, FAKE_SELECTION_STATE_CHANGE};
+ MENU_ID_CLICKED_FUNCTION, OPEN_FOLDER_CALLBACK, FAKE_SELECTION_STATE_CHANGE,
NEW_FOLDER_BUTTON_ENABLED, NAVIGATION_BUTTON_STATE, CURRENT_FOLDER,
CHECKED_SORT_MENU_ID, CHECKED_VIEW_MENU_ID, MENU_ID_CLICKED_FUNCTION,
- NAVIGATE_BACK_RUNNABLE, FAKE_SELECTION_STATE_CHANGE};
+ NAVIGATE_BACK_RUNNABLE, FAKE_SELECTION_STATE_CHANGE,
+ IMPORT_BOOKMARK_RUNNABLE, EXPORT_BOOKMARK_RUNNABLE};
}
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbarViewBinder.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbarViewBinder.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbarViewBinder.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkToolbarViewBinder.java
@@ -53,6 +53,12 @@ class BookmarkToolbarViewBinder {
@@ -56,6 +56,12 @@ class BookmarkToolbarViewBinder {
model.get(BookmarkToolbarProperties.CHECKED_VIEW_MENU_ID));
} else if (key == BookmarkToolbarProperties.CURRENT_FOLDER) {
bookmarkToolbar.setCurrentFolder(model.get(BookmarkToolbarProperties.CURRENT_FOLDER));
@@ -737,21 +740,21 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
+ } else if (key == BookmarkToolbarProperties.EXPORT_BOOKMARK_RUNNABLE) {
+ bookmarkToolbar.setExportBookmarkRunnable(
+ model.get(BookmarkToolbarProperties.EXPORT_BOOKMARK_RUNNABLE));
} else if (key == BookmarkToolbarProperties.OPEN_FOLDER_CALLBACK) {
bookmarkToolbar.setOpenFolderCallback(
model.get(BookmarkToolbarProperties.OPEN_FOLDER_CALLBACK));
} else if (key == BookmarkToolbarProperties.NAVIGATE_BACK_RUNNABLE) {
bookmarkToolbar.setNavigateBackRunnable(
model.get(BookmarkToolbarProperties.NAVIGATE_BACK_RUNNABLE));
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java b/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java
@@ -14,6 +14,7 @@ import androidx.annotation.VisibleForTesting;
@@ -15,6 +15,7 @@ import androidx.annotation.VisibleForTesting;
import org.chromium.base.supplier.DestroyableObservableSupplier;
import org.chromium.base.supplier.ObservableSupplier;
import org.chromium.base.supplier.Supplier;
+import org.chromium.chrome.browser.app.ChromeActivity;
import org.chromium.chrome.browser.app.download.home.DownloadPage;
import org.chromium.chrome.browser.bookmarks.BookmarkPage;
import org.chromium.chrome.browser.browser_controls.BrowserControlsMarginSupplier;
@@ -51,7 +52,7 @@ import org.chromium.ui.util.ColorUtils;
@@ -53,7 +54,7 @@ import org.chromium.ui.util.ColorUtils;
* Creates NativePage objects to show chrome-native:// URLs using the native Android view system.
*/
public class NativePageFactory {
@@ -760,7 +763,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat
private final BottomSheetController mBottomSheetController;
private final BrowserControlsManager mBrowserControlsManager;
private final Supplier<Tab> mCurrentTabSupplier;
@@ -66,7 +67,7 @@ public class NativePageFactory {
@@ -69,7 +70,7 @@ public class NativePageFactory {
private NativePageBuilder mNativePageBuilder;
@@ -769,7 +772,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat
@NonNull BottomSheetController sheetController,
@NonNull BrowserControlsManager browserControlsManager,
@NonNull Supplier<Tab> currentTabSupplier,
@@ -109,7 +110,7 @@ public class NativePageFactory {
@@ -115,7 +116,7 @@ public class NativePageFactory {
@VisibleForTesting
static class NativePageBuilder {
@@ -778,16 +781,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat
private final BottomSheetController mBottomSheetController;
private final Supplier<NewTabPageUma> mUma;
private final BrowserControlsManager mBrowserControlsManager;
@@ -122,7 +123,7 @@ public class NativePageFactory {
private final Supplier<Toolbar> mToolbarSupplier;
@@ -129,7 +130,7 @@ public class NativePageFactory {
private final HomeSurfaceTracker mHomeSurfaceTracker;
private final ObservableSupplier<TabContentManager> mTabContentManagerSupplier;
- public NativePageBuilder(Activity activity, Supplier<NewTabPageUma> uma,
+ public NativePageBuilder(ChromeActivity activity, Supplier<NewTabPageUma> uma,
BottomSheetController sheetController,
BrowserControlsManager browserControlsManager, Supplier<Tab> currentTabSupplier,
Supplier<SnackbarManager> snackbarManagerSupplier,
@@ -159,7 +160,7 @@ public class NativePageFactory {
@@ -169,7 +170,7 @@ public class NativePageFactory {
protected NativePage buildBookmarksPage(Tab tab) {
return new BookmarkPage(mActivity.getComponentName(), mSnackbarManagerSupplier.get(),
mTabModelSelector.isIncognitoSelected(),
@@ -799,7 +802,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -204,6 +204,8 @@ static_library("browser") {
@@ -225,6 +225,8 @@ static_library("browser") {
"bluetooth/chrome_bluetooth_delegate_impl_client.h",
"bookmarks/bookmark_model_factory.cc",
"bookmarks/bookmark_model_factory.h",
@@ -808,9 +811,9 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
"bookmarks/chrome_bookmark_client.cc",
"bookmarks/chrome_bookmark_client.h",
"bookmarks/managed_bookmark_service_factory.cc",
@@ -1873,6 +1875,13 @@ static_library("browser") {
"webid/federated_identity_permission_context_factory.h",
]
@@ -1901,6 +1903,13 @@ static_library("browser") {
]
}
+ if (is_android) {
+ sources += [
@@ -822,7 +825,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
configs += [
"//build/config/compiler:wexit_time_destructors",
"//build/config:precompiled_headers",
@@ -3498,8 +3507,6 @@ static_library("browser") {
@@ -3587,8 +3596,6 @@ static_library("browser") {
"badging/badge_manager_factory.h",
"banners/app_banner_manager_desktop.cc",
"banners/app_banner_manager_desktop.h",
@@ -834,15 +837,17 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -9361,6 +9361,12 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(features::kRequestDesktopSiteExceptions)},
@@ -9471,6 +9471,14 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(features::kForceOffTextAutosizing)},
#endif
+#if BUILDFLAG(IS_ANDROID)
+ {"export-bookmarks-use-saf",
+ flag_descriptions::kBookmarksExportUseSafName,
+ flag_descriptions::kBookmarksExportUseSafDescription, kOsAndroid,
+ FEATURE_VALUE_TYPE(
+ chrome::android::kBookmarksExportUseSaf)},
+#endif
+
#if BUILDFLAG(IS_CHROMEOS_ASH)
{"video-conference", flag_descriptions::kVideoConferenceName,
@@ -1254,25 +1259,29 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.h b/chrome/browser
diff --git a/chrome/browser/bookmarks/bookmark_html_writer.cc b/chrome/browser/bookmarks/bookmark_html_writer.cc
--- a/chrome/browser/bookmarks/bookmark_html_writer.cc
+++ b/chrome/browser/bookmarks/bookmark_html_writer.cc
@@ -27,6 +27,7 @@
@@ -27,6 +27,9 @@
#include "base/task/thread_pool.h"
#include "base/time/time.h"
#include "base/values.h"
+#if BUILDFLAG(IS_ANDROID)
+#include "base/android/content_uri_utils.h"
+#endif
#include "chrome/browser/bookmarks/bookmark_model_factory.h"
#include "chrome/browser/favicon/favicon_service_factory.h"
#include "chrome/browser/profiles/profile.h"
@@ -229,7 +230,12 @@ class Writer : public base::RefCountedThreadSafe<Writer> {
@@ -229,7 +232,15 @@ class Writer : public base::RefCountedThreadSafe<Writer> {
// Opens the file, returning true on success.
bool OpenFile() {
int flags = base::File::FLAG_CREATE_ALWAYS | base::File::FLAG_WRITE;
- file_ = std::make_unique<base::File>(path_, flags);
+#if BUILDFLAG(IS_ANDROID)
+ if (path_.IsContentUri()) {
+ file_ = std::make_unique<base::File>(base::OpenContentUriForWrite(path_));
+ } else {
+ file_ = std::make_unique<base::File>(path_, flags);
+ }
+
+#else
file_ = std::make_unique<base::File>(path_, flags);
+#endif
if (!file_->IsValid()) {
PLOG(ERROR) << "Could not create " << path_;
return false;
@@ -1346,9 +1355,9 @@ diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browse
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
@@ -7346,6 +7346,11 @@ const char kEnableAudioFocusEnforcementDescription[] =
"any one time. Requires #enable-media-session-service to be enabled too.";
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
@@ -7520,6 +7520,11 @@ const char kThirdPartyProfileManagementDescription[] =
"Enables profile management triggered by third-party sign-ins.";
#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN)
+const char kBookmarksExportUseSafName[] = "Use saf for bookmarks export";
+const char kBookmarksExportUseSafDescription[] =
@@ -1361,9 +1370,9 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -4246,6 +4246,9 @@ extern const char kEnableAudioFocusEnforcementName[];
extern const char kEnableAudioFocusEnforcementDescription[];
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
@@ -4350,6 +4350,9 @@ extern const char kThirdPartyProfileManagementName[];
extern const char kThirdPartyProfileManagementDescription[];
#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN)
+extern const char kBookmarksExportUseSafName[];
+extern const char kBookmarksExportUseSafDescription[];
@@ -1374,7 +1383,7 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc
--- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -176,6 +176,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
@@ -180,6 +180,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
&kClearOmniboxFocusAfterNavigation,
&kCloseTabSuggestions,
&kCloseTabSaveTabList,
@@ -1382,7 +1391,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
&kCriticalPersistedTabData,
&kCreateNewTabInitializeRenderer,
&kCCTBackgroundTab,
@@ -1155,5 +1156,10 @@ BASE_FEATURE(kWebApkTrampolineOnInitialIntent,
@@ -1173,5 +1174,10 @@ BASE_FEATURE(kWebApkTrampolineOnInitialIntent,
"WebApkTrampolineOnInitialIntent",
base::FEATURE_ENABLED_BY_DEFAULT);
@@ -1396,7 +1405,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
diff --git a/chrome/browser/flags/android/chrome_feature_list.h b/chrome/browser/flags/android/chrome_feature_list.h
--- a/chrome/browser/flags/android/chrome_feature_list.h
+++ b/chrome/browser/flags/android/chrome_feature_list.h
@@ -177,6 +177,7 @@ BASE_DECLARE_FEATURE(kTabStripRedesign);
@@ -185,6 +185,7 @@ BASE_DECLARE_FEATURE(kTabStripRedesign);
BASE_DECLARE_FEATURE(kTabletToolbarReordering);
BASE_DECLARE_FEATURE(kTabStripStartupRefactoring);
BASE_DECLARE_FEATURE(kTabToGTSAnimation);
@@ -1407,10 +1416,10 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.h b/chrome/browser
diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
--- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
@@ -472,6 +472,7 @@ public abstract class ChromeFeatureList {
public static final String USE_CHIME_ANDROID_SDK = "UseChimeAndroidSdk";
@@ -478,6 +478,7 @@ public abstract class ChromeFeatureList {
public static final String USE_LIBUNWINDSTACK_NATIVE_UNWINDER_ANDROID =
"UseLibunwindstackNativeUnwinderAndroid";
public static final String USER_BYPASS_UI = "UserBypassUI";
+ public static final String BOOKMARKS_EXPORT_USESAF = "BookmarksExportUseSaf";
public static final String VOICE_BUTTON_IN_TOP_TOOLBAR = "VoiceButtonInTopToolbar";
public static final String VOICE_SEARCH_AUDIO_CAPTURE_POLICY = "VoiceSearchAudioCapturePolicy";
@@ -1485,7 +1494,7 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro
/**
* Whether Chrome is set as the default browser.
@@ -984,6 +986,7 @@ public final class ChromePreferenceKeys {
@@ -982,6 +984,7 @@ public final class ChromePreferenceKeys {
AUTOFILL_ASSISTANT_PROACTIVE_HELP_ENABLED,
APP_LAUNCH_LAST_KNOWN_ACTIVE_TAB_STATE,
APP_LAUNCH_SEARCH_ENGINE_HAD_LOGO,
@@ -1496,7 +1505,7 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -240,6 +240,24 @@ CHAR_LIMIT guidelines:
@@ -245,6 +245,24 @@ CHAR_LIMIT guidelines:
<message name="IDS_NOTIFICATION_CATEGORY_SITES" desc="Label for notifications from websites, within a list of notification categories. [CHAR_LIMIT=32]">
Sites
</message>
@@ -1524,7 +1533,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
diff --git a/chrome/common/BUILD.gn b/chrome/common/BUILD.gn
--- a/chrome/common/BUILD.gn
+++ b/chrome/common/BUILD.gn
@@ -414,6 +414,9 @@ static_library("common_lib") {
@@ -400,6 +400,9 @@ static_library("common_lib") {
sources += [
"media/chrome_media_drm_bridge_client.cc",
"media/chrome_media_drm_bridge_client.h",
@@ -1537,7 +1546,7 @@ diff --git a/chrome/common/BUILD.gn b/chrome/common/BUILD.gn
diff --git a/chrome/utility/BUILD.gn b/chrome/utility/BUILD.gn
--- a/chrome/utility/BUILD.gn
+++ b/chrome/utility/BUILD.gn
@@ -89,8 +89,6 @@ static_library("utility") {
@@ -85,8 +85,6 @@ static_library("utility") {
if (!is_android) {
sources += [
@@ -1546,7 +1555,7 @@ diff --git a/chrome/utility/BUILD.gn b/chrome/utility/BUILD.gn
"importer/bookmarks_file_importer.cc",
"importer/bookmarks_file_importer.h",
"importer/external_process_importer_bridge.cc",
@@ -220,6 +218,11 @@ static_library("utility") {
@@ -215,6 +213,11 @@ static_library("utility") {
]
}
@@ -1658,17 +1667,31 @@ diff --git a/chrome/utility/importer/bookmark_html_reader.h b/chrome/utility/imp
// Returns true if |url| should be imported as a search engine, i.e. because it
// has replacement terms. Chrome treats such bookmarks as search engines rather
// than true bookmarks.
diff --git a/components/headless/select_file_dialog/headless_select_file_dialog.cc b/components/headless/select_file_dialog/headless_select_file_dialog.cc
--- a/components/headless/select_file_dialog/headless_select_file_dialog.cc
+++ b/components/headless/select_file_dialog/headless_select_file_dialog.cc
@@ -58,6 +58,10 @@ class HeadlessSelectFileDialog : public ui::SelectFileDialog {
// ui::SelectFileDialog:
bool HasMultipleFileTypeChoicesImpl() override { return false; }
+ void ShowToast(const std::string& message) override {
+ // nothing to do, used only on android
+ }
+
SelectFileDialogCallback callback_;
};
diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java
--- a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java
+++ b/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java
@@ -44,6 +44,7 @@ import org.chromium.base.task.AsyncTask;
@@ -45,6 +45,7 @@ import org.chromium.base.task.AsyncTask;
import org.chromium.base.task.PostTask;
import org.chromium.base.task.TaskTraits;
import org.chromium.ui.R;
+import org.chromium.ui.widget.Toast;
import org.chromium.ui.UiUtils;
import org.chromium.ui.permissions.PermissionConstants;
import java.io.File;
@@ -67,6 +68,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
private static final String TAG = "SelectFileDialog";
private static final String IMAGE_TYPE = "image";
@@ -1677,8 +1700,8 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui
private static final String AUDIO_TYPE = "audio";
private static final String ALL_TYPES = "*/*";
@@ -263,6 +265,11 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
mFileTypes = fileTypes;
@@ -264,6 +266,11 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
ResettersForTesting.register(() -> mFileTypes = oldValue);
}
+ @CalledByNative
@@ -1689,7 +1712,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui
/**
* Creates and starts an intent based on the passed fileTypes and capture value.
* @param fileTypes MIME types requested (i.e. "image/*")
@@ -289,7 +296,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
@@ -290,7 +297,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
List<String> missingPermissions = new ArrayList<>();
String storagePermission = Manifest.permission.READ_EXTERNAL_STORAGE;
boolean shouldUsePhotoPicker = shouldUsePhotoPicker();
@@ -1698,7 +1721,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui
// The permission scenario for accessing media has evolved a bit over the years:
// Early on, READ_EXTERNAL_STORAGE was required to access media, but that permission was
// later deprecated. In its place (starting with Android T) READ_MEDIA_IMAGES and
@@ -338,7 +345,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
@@ -339,7 +346,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
}
// TODO(finnur): Remove once we figure out the cause of crbug.com/950024.
@@ -1707,16 +1730,16 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui
if (permissions.length != requestPermissions.length) {
throw new RuntimeException(
String.format("Permissions arrays misaligned: %d != %d",
@@ -352,7 +359,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
@@ -353,7 +360,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
}
}
- if (shouldUsePhotoPicker) {
+ if (shouldUsePhotoPicker || shouldShowHtmlTypes()) {
if (permissions[i].equals(storagePermission)
|| permissions[i].equals(PermissionConstants.READ_MEDIA_IMAGES)
|| permissions[i].equals(Manifest.permission.READ_MEDIA_IMAGES)
|| permissions[i].equals(
@@ -629,6 +636,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
@@ -630,6 +637,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
}
if (!mimeTypes.contains(mimeType)) mimeTypes.add(mimeType);
}
@@ -1724,7 +1747,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui
return mimeTypes;
}
@@ -957,6 +965,10 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
@@ -958,6 +966,10 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
return countAcceptTypesFor(superType) == mFileTypes.size();
}
@@ -1788,5 +1811,27 @@ diff --git a/ui/shell_dialogs/select_file_dialog_android.h b/ui/shell_dialogs/se
protected:
~SelectFileDialogImpl() override;
diff --git a/ui/shell_dialogs/select_file_dialog_win.cc b/ui/shell_dialogs/select_file_dialog_win.cc
--- a/ui/shell_dialogs/select_file_dialog_win.cc
+++ b/ui/shell_dialogs/select_file_dialog_win.cc
@@ -193,6 +193,7 @@ class SelectFileDialogImpl : public ui::SelectFileDialog,
int index);
bool HasMultipleFileTypeChoicesImpl() override;
+ void ShowToast(const std::string& message) override;
// Returns the filter to be used while displaying the open/save file dialog.
// This is computed from the extensions for the file types being opened.
@@ -271,6 +272,10 @@ bool SelectFileDialogImpl::HasMultipleFileTypeChoicesImpl() {
return has_multiple_file_type_choices_;
}
+void SelectFileDialogImpl::ShowToast(const std::string& message) {
+ // nothing to do, used only on android
+}
+
bool SelectFileDialogImpl::IsRunning(gfx::NativeWindow owning_window) const {
if (!owning_window->GetRootWindow())
return false;
--
2.25.1
@@ -44,24 +44,17 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java b/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java
@@ -42,6 +42,7 @@ import org.chromium.chrome.browser.notifications.NotificationPlatformBridge;
import org.chromium.chrome.browser.partnercustomizations.PartnerBrowserCustomizations;
import org.chromium.chrome.browser.searchwidget.SearchActivity;
import org.chromium.chrome.browser.tab.Tab;
+import org.chromium.chrome.browser.tab.TabLaunchType;
import org.chromium.chrome.browser.translate.TranslateIntentHandler;
import org.chromium.chrome.browser.util.AndroidTaskUtils;
import org.chromium.chrome.browser.webapps.WebappLauncherActivity;
@@ -56,6 +57,8 @@ import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
@@ -52,6 +52,9 @@ import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.util.Set;
+import org.chromium.chrome.browser.privacy.settings.PrivacySettings;
+import org.chromium.chrome.browser.tab.TabLaunchType;
+
/**
* Dispatches incoming intents to the appropriate activity based on the current configuration and
* Intent fired.
@@ -268,6 +271,9 @@ public class LaunchIntentDispatcher implements IntentHandler.IntentHandlerDelega
@@ -242,6 +245,9 @@ public class LaunchIntentDispatcher implements IntentHandler.IntentHandlerDelega
*/
public static boolean isCustomTabIntent(Intent intent) {
if (intent == null) return false;
@@ -71,7 +64,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDis
if (CustomTabsIntent.shouldAlwaysUseBrowserUI(intent)
|| !intent.hasExtra(CustomTabsIntent.EXTRA_SESSION)) {
return false;
@@ -287,6 +293,10 @@ public class LaunchIntentDispatcher implements IntentHandler.IntentHandlerDelega
@@ -261,6 +267,10 @@ public class LaunchIntentDispatcher implements IntentHandler.IntentHandlerDelega
newIntent.setData(uri);
newIntent.setClassName(context, CustomTabActivity.class.getName());
@@ -82,7 +75,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDis
// Since configureIntentForResizableCustomTab() might change the componenet/class
// associated with the passed intent, it needs to be called after #setClassName(context,
// CustomTabActivity.class.getName());
@@ -447,6 +457,17 @@ public class LaunchIntentDispatcher implements IntentHandler.IntentHandlerDelega
@@ -407,6 +417,17 @@ public class LaunchIntentDispatcher implements IntentHandler.IntentHandlerDelega
if (Intent.ACTION_VIEW.equals(newIntent.getAction())
&& !IntentHandler.wasIntentSenderChrome(newIntent)) {
@@ -135,8 +128,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
+
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
PrivacyPreferencesManagerImpl privacyPrefManager =
@@ -250,6 +253,9 @@ public class PrivacySettings extends PreferenceFragmentCompat
getActivity().setTitle(R.string.prefs_privacy_security);
@@ -246,6 +249,9 @@ public class PrivacySettings extends PreferenceFragmentCompat
new SpanApplier.SpanInfo("<link2>", "</link2>", servicesLink));
}
@@ -146,7 +139,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();
@@ -264,6 +270,14 @@ public class PrivacySettings extends PreferenceFragmentCompat
@@ -260,6 +266,14 @@ public class PrivacySettings extends PreferenceFragmentCompat
} else if (PREF_SEARCH_SUGGESTIONS.equals(key)) {
UserPrefs.get(Profile.getLastUsedRegularProfile())
.setBoolean(Pref.SEARCH_SUGGEST_ENABLED, (boolean) newValue);
@@ -161,7 +154,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
}
return true;
}
@@ -287,6 +301,16 @@ public class PrivacySettings extends PreferenceFragmentCompat
@@ -283,6 +297,16 @@ public class PrivacySettings extends PreferenceFragmentCompat
UserPrefs.get(mProfile).getBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED));
}
@@ -181,7 +174,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc
--- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -541,8 +541,8 @@ BASE_FEATURE(kCCTIncognitoAvailableToThirdParty,
@@ -558,8 +558,8 @@ BASE_FEATURE(kCCTIncognitoAvailableToThirdParty,
base::FEATURE_ENABLED_BY_DEFAULT); // in Bromite
BASE_FEATURE(kCCTIntentFeatureOverrides,
@@ -192,7 +185,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
BASE_FEATURE(kCCTPageInsightsHub,
"CCTPageInsightsHub",
@@ -550,7 +550,7 @@ BASE_FEATURE(kCCTPageInsightsHub,
@@ -567,7 +567,7 @@ BASE_FEATURE(kCCTPageInsightsHub,
BASE_FEATURE(kCCTPostMessageAPI,
"CCTPostMessageAPI",
@@ -220,7 +213,7 @@ diff --git a/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/TabAsso
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
@@ -5015,6 +5015,20 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -5087,6 +5087,20 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<message name="IDS_NEAR_OOM_INTERVENTION_DECLINE" desc="The text of the button letting the user decline the browser's intervention, so that the page can resume what it was doing.">
Resume
</message>
@@ -244,7 +237,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
diff --git a/components/language/core/common/language_experiments.cc b/components/language/core/common/language_experiments.cc
--- a/components/language/core/common/language_experiments.cc
+++ b/components/language/core/common/language_experiments.cc
@@ -39,8 +39,8 @@ BASE_FEATURE(kContentLanguagesInLanguagePicker,
@@ -18,8 +18,8 @@ BASE_FEATURE(kContentLanguagesInLanguagePicker,
"ContentLanguagesInLanguagePicker",
base::FEATURE_DISABLED_BY_DEFAULT);
BASE_FEATURE(kCctAutoTranslate,
+6 -6
View File
@@ -17,7 +17,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/res/menu/main_menu.xml
--- a/chrome/android/java/res/menu/main_menu.xml
+++ b/chrome/android/java/res/menu/main_menu.xml
@@ -158,6 +158,9 @@ found in the LICENSE file.
@@ -161,6 +161,9 @@ found in the LICENSE file.
<item android:id="@+id/managed_by_menu_id"
android:title="@string/managed_browser"
android:icon="@drawable/ic_business" />
@@ -27,7 +27,7 @@ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/re
</group>
<!-- Items shown only in the tab switcher -->
@@ -184,6 +187,9 @@ found in the LICENSE file.
@@ -187,6 +190,9 @@ found in the LICENSE file.
<item android:id="@id/preferences_id"
android:title="@string/menu_settings"
android:icon="@drawable/settings_cog" />
@@ -59,7 +59,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ApplicationLife
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
@@ -230,6 +230,8 @@ import java.util.Locale;
@@ -229,6 +229,8 @@ import java.util.Locale;
import java.util.Set;
import java.util.concurrent.atomic.AtomicBoolean;
@@ -68,7 +68,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
/**
* This is the main activity for ChromeMobile when not running in document mode. All the tabs
* are accessible via a chrome specific tab switching UI.
@@ -2260,6 +2262,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -2255,6 +2257,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
} else if (id == R.id.close_tab) {
getCurrentTabModel().closeTab(currentTab, true, false, true);
RecordUserAction.record("MobileTabClosed");
@@ -88,7 +88,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
import org.chromium.chrome.browser.ChromeActivitySessionTracker;
import org.chromium.chrome.browser.ChromeApplicationImpl;
import org.chromium.chrome.browser.ChromeKeyboardVisibilityDelegate;
@@ -2397,6 +2398,11 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -2408,6 +2409,11 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
return true;
}
@@ -119,7 +119,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeLife
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -3687,6 +3687,9 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -3741,6 +3741,9 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<message name="IDS_MENU_AUTO_DARK_WEB_CONTENTS" desc="Menu item in Chrome's overflow/options menu. When Chrome's browser UI is set to dark theme and this option is checked, sites will have a dark theme automatically applied as well. [CHAR_LIMIT=24]">
Dark theme
</message>
@@ -17,7 +17,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -582,6 +582,22 @@ const FeatureEntry::FeatureVariation kReaderModeDiscoverabilityVariations[] = {
@@ -589,6 +589,22 @@ const FeatureEntry::FeatureVariation kReaderModeDiscoverabilityVariations[] = {
#endif // BUILDFLAG(IS_ANDROID)
#if BUILDFLAG(IS_ANDROID)
@@ -40,7 +40,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
const FeatureEntry::FeatureParam kAdaptiveButton_AlwaysNone[] = {
{"mode", "always-none"}};
const FeatureEntry::FeatureParam kAdaptiveButton_AlwaysNewTab[] = {
@@ -4626,7 +4642,11 @@ const FeatureEntry kFeatureEntries[] = {
@@ -4697,7 +4713,11 @@ const FeatureEntry kFeatureEntries[] = {
kOsMac | kOsLinux | kOsWin,
FEATURE_VALUE_TYPE(features::kSystemNotifications)},
#endif // BUILDFLAG(ENABLE_SYSTEM_NOTIFICATIONS) && !BUILDFLAG(IS_CHROMEOS_ASH)
@@ -64,10 +64,10 @@ diff --git a/components/omnibox/browser/autocomplete_controller.cc b/components/
#include "base/feature_list.h"
#include "base/format_macros.h"
#include "base/functional/bind.h"
@@ -359,6 +360,15 @@ AutocompleteController::AutocompleteController(
template_url_service_(provider_client_->GetTemplateURLService()),
triggered_feature_service_(
provider_client_->GetOmniboxTriggeredFeatureService()) {
@@ -366,6 +367,15 @@ AutocompleteController::AutocompleteController(
provider_client_->GetOmniboxTriggeredFeatureService()),
steady_state_omnibox_position_(
metrics::OmniboxEventProto::UNKNOWN_POSITION) {
+ if (base::CommandLine::ForCurrentProcess()->HasSwitch("omnibox-autocomplete-filtering")) {
+ const std::string flag_value = base::CommandLine::ForCurrentProcess()->GetSwitchValueASCII("omnibox-autocomplete-filtering");
+ provider_types &= AutocompleteProvider::TYPE_KEYWORD | AutocompleteProvider::TYPE_SEARCH |
@@ -15,7 +15,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -5242,7 +5242,10 @@ const FeatureEntry kFeatureEntries[] = {
@@ -5304,7 +5304,10 @@ const FeatureEntry kFeatureEntries[] = {
{"force-text-direction", flag_descriptions::kForceTextDirectionName,
flag_descriptions::kForceTextDirectionDescription, kOsAll,
MULTI_VALUE_TYPE(kForceTextDirectionChoices)},
@@ -30,7 +30,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
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
@@ -1332,6 +1332,10 @@ const char kDeprecateAltBasedSixPackDescription[] =
@@ -1386,6 +1386,10 @@ const char kDeprecateAltBasedSixPackDescription[] =
"Show deprecation notifications and disable functionality for Alt based "
"six pack deprecations. The Search based versions continue to work.";
@@ -44,7 +44,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -694,6 +694,9 @@ extern const char kDeprecateAltBasedSixPackDescription[];
@@ -715,6 +715,9 @@ extern const char kDeprecateAltBasedSixPackDescription[];
extern const char kDeprecateOldKeyboardShortcutsAcceleratorName[];
extern const char kDeprecateOldKeyboardShortcutsAcceleratorDescription[];
@@ -99,7 +99,7 @@ diff --git a/services/network/public/cpp/features.cc b/services/network/public/c
diff --git a/services/network/public/cpp/features.h b/services/network/public/cpp/features.h
--- a/services/network/public/cpp/features.h
+++ b/services/network/public/cpp/features.h
@@ -84,6 +84,8 @@ extern uint32_t GetLoaderChunkSize();
@@ -89,6 +89,8 @@ extern uint32_t GetLoaderChunkSize();
COMPONENT_EXPORT(NETWORK_CPP)
BASE_DECLARE_FEATURE(kCorsNonWildcardRequestHeadersSupport);
@@ -21,7 +21,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -1230,6 +1230,11 @@ const FeatureEntry::Choice kForceColorProfileChoices[] = {
@@ -1236,6 +1236,11 @@ const FeatureEntry::Choice kForceColorProfileChoices[] = {
switches::kForceDisplayColorProfile, "hdr10"},
};
@@ -33,7 +33,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
const FeatureEntry::Choice kMemlogModeChoices[] = {
{flags_ui::kGenericExperimentChoiceDisabled, "", ""},
{flag_descriptions::kMemlogModeMinimal, heap_profiling::kMemlogMode,
@@ -5143,6 +5148,9 @@ const FeatureEntry kFeatureEntries[] = {
@@ -5206,6 +5211,9 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(chrome::android::kShareSheetCustomActionsPolish)},
#endif // BUILDFLAG(IS_ANDROID)
@@ -46,7 +46,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
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
@@ -2115,6 +2115,10 @@ const char kUnthrottledNestedTimeoutDescription[] =
@@ -2157,6 +2157,10 @@ const char kUnthrottledNestedTimeoutDescription[] =
"websites abusing the API will still eventually have their setTimeouts "
"clamped.";
@@ -60,7 +60,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -1185,6 +1185,9 @@ extern const char kLogJsConsoleMessagesDescription[];
@@ -1219,6 +1219,9 @@ extern const char kUndoAutofillDescription[];
extern const char kUnthrottledNestedTimeoutName[];
extern const char kUnthrottledNestedTimeoutDescription[];
@@ -15,7 +15,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -3909,6 +3909,10 @@ const FeatureEntry kFeatureEntries[] = {
@@ -3940,6 +3940,10 @@ const FeatureEntry kFeatureEntries[] = {
chrome::android::kContextualSearchSuppressShortView,
kContextualSearchSuppressShortViewVariations,
"ContextualSearchSuppressShortView")},
@@ -29,7 +29,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
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
@@ -1408,6 +1408,11 @@ const char kEnableManagedConfigurationWebApiDescription[] =
@@ -1462,6 +1462,11 @@ const char kEnableManagedConfigurationWebApiDescription[] =
"Allows website to access a managed configuration provided by the device "
"administrator for the origin.";
@@ -44,7 +44,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -766,6 +766,9 @@ extern const char kEnablePenetratingImageSelectionDescription[];
@@ -800,6 +800,9 @@ extern const char kEnablePenetratingImageSelectionDescription[];
extern const char kEnablePerfettoSystemTracingName[];
extern const char kEnablePerfettoSystemTracingDescription[];
@@ -18,7 +18,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -6479,6 +6479,10 @@ const FeatureEntry kFeatureEntries[] = {
@@ -6577,6 +6577,10 @@ const FeatureEntry kFeatureEntries[] = {
{"enable-reader-mode-in-cct", flag_descriptions::kReaderModeInCCTName,
flag_descriptions::kReaderModeInCCTDescription, kOsAndroid,
FEATURE_VALUE_TYPE(chrome::android::kReaderModeInCCT)},
@@ -28,11 +28,11 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
+ FEATURE_VALUE_TYPE(net::features::kIPv6Probing)},
#endif // BUILDFLAG(IS_ANDROID)
{"shopping-list", commerce::flag_descriptions::kShoppingListName,
{"shopping-collection",
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
@@ -3824,6 +3824,10 @@ const char kCCTTextFragmentLookupApiEnabledName[] =
@@ -3878,6 +3878,10 @@ const char kCCTTextFragmentLookupApiEnabledName[] =
const char kCCTTextFragmentLookupApiEnabledDescription[] =
"Enable CCT API to lookup text fragments";
@@ -46,7 +46,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -846,6 +846,9 @@ extern const char kEnableWasmStringrefName[];
@@ -880,6 +880,9 @@ extern const char kEnableWasmStringrefName[];
extern const char kEnableWasmStringrefDescription[];
extern const char kEnableWasmTieringName[];
@@ -59,7 +59,7 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio
diff --git a/net/BUILD.gn b/net/BUILD.gn
--- a/net/BUILD.gn
+++ b/net/BUILD.gn
@@ -1085,6 +1085,7 @@ component("net") {
@@ -1094,6 +1094,7 @@ component("net") {
"//build:chromeos_buildflags",
"//net/data/ssl/chrome_root_store:gen_root_store_inc",
"//net/http:transport_security_state_generated_files",
@@ -70,7 +70,7 @@ diff --git a/net/BUILD.gn b/net/BUILD.gn
diff --git a/net/base/features.cc b/net/base/features.cc
--- a/net/base/features.cc
+++ b/net/base/features.cc
@@ -40,6 +40,10 @@ BASE_FEATURE(kUseDnsHttpsSvcb,
@@ -41,6 +41,10 @@ BASE_FEATURE(kUseDnsHttpsSvcb,
const base::FeatureParam<bool> kUseDnsHttpsSvcbEnforceSecureResponse{
&kUseDnsHttpsSvcb, "UseDnsHttpsSvcbEnforceSecureResponse", false};
@@ -105,7 +105,7 @@ diff --git a/net/dns/host_resolver_manager.cc b/net/dns/host_resolver_manager.cc
#include "net/log/net_log_with_source.h"
#include "net/socket/client_socket_factory.h"
#include "net/url_request/url_request_context.h"
@@ -677,6 +678,9 @@ class HostResolverManager::RequestImpl
@@ -685,6 +686,9 @@ class HostResolverManager::RequestImpl
// request source is LOCAL_ONLY. This is due to LOCAL_ONLY requiring a
// synchronous response, so it cannot wait on an async probe result and
// cannot make assumptions about reachability.
@@ -115,7 +115,7 @@ diff --git a/net/dns/host_resolver_manager.cc b/net/dns/host_resolver_manager.cc
if (parameters_.source == HostResolverSource::LOCAL_ONLY) {
int rv = resolver_->StartIPv6ReachabilityCheck(
source_net_log_, GetClientSocketFactory(),
@@ -3895,6 +3899,13 @@ int HostResolverManager::StartIPv6ReachabilityCheck(
@@ -3903,6 +3907,13 @@ int HostResolverManager::StartIPv6ReachabilityCheck(
return OK;
}
@@ -15,7 +15,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -3849,6 +3849,11 @@ const FeatureEntry kFeatureEntries[] = {
@@ -3881,6 +3881,11 @@ const FeatureEntry kFeatureEntries[] = {
{"ui-disable-partial-swap", flag_descriptions::kUiPartialSwapName,
flag_descriptions::kUiPartialSwapDescription, kOsAll,
SINGLE_DISABLE_VALUE_TYPE(switches::kUIDisablePartialSwap)},
@@ -30,7 +30,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
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
@@ -4115,6 +4115,12 @@ const char kPolicyLogsPageAndroidDescription[] =
@@ -4179,6 +4179,12 @@ const char kPolicyLogsPageAndroidDescription[] =
"Enable the new chrome://policy-logs page containing logs for debugging "
"policy related issues on Android.";
@@ -46,7 +46,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -2411,6 +2411,9 @@ extern const char kQueryTilesNTPDescription[];
@@ -2464,6 +2464,9 @@ extern const char kQueryTilesNTPDescription[];
extern const char kQueryTilesOnStartName[];
extern const char kQueryTilesOnStartDescription[];
extern const char kQueryTilesSingleTierName[];
@@ -19,7 +19,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -7947,6 +7947,10 @@ const FeatureEntry kFeatureEntries[] = {
@@ -8111,6 +8111,10 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(features::kNewMacNotificationAPI)},
#endif
@@ -33,20 +33,20 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
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
@@ -6962,6 +6962,9 @@ const char kLacrosMergeIcuDataFileDescription[] =
@@ -7118,6 +7118,9 @@ const char kLacrosMergeIcuDataFileDescription[] =
"Enables sharing common areas of icudtl.dat between Ash and Lacros.";
#endif // #if BUILDFLAG(IS_CHROMEOS_LACROS)
+const char kEnableVibrationName[] = "Vibration";
+const char kEnableVibrationDescription[] = "Enable vibration API; an user gesture will still be needed.";
+
#if BUILDFLAG(IS_CHROMEOS)
const char kCrOSDspBasedAecAllowedName[] =
"Allow CRAS to use a DSP-based AEC if available";
#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX)
const char kGetAllScreensMediaName[] = "GetAllScreensMedia API";
const char kGetAllScreensMediaDescription[] =
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -4230,6 +4230,8 @@ extern const char kWebUITabStripTabDragIntegrationName[];
@@ -4338,6 +4338,8 @@ extern const char kWebUITabStripTabDragIntegrationName[];
extern const char kWebUITabStripTabDragIntegrationDescription[];
#endif // BUILDFLAG(ENABLE_WEBUI_TAB_STRIP) && BUILDFLAG(IS_CHROMEOS_ASH)
@@ -69,7 +69,7 @@ diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.
diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc
--- a/content/public/common/content_features.cc
+++ b/content/public/common/content_features.cc
@@ -157,6 +157,11 @@ BASE_FEATURE(kBackForwardCacheMemoryControls,
@@ -169,6 +169,11 @@ BASE_FEATURE(kBackForwardCacheMemoryControls,
#endif
);
@@ -84,7 +84,7 @@ diff --git a/content/public/common/content_features.cc b/content/public/common/c
diff --git a/content/public/common/content_features.h b/content/public/common/content_features.h
--- a/content/public/common/content_features.h
+++ b/content/public/common/content_features.h
@@ -344,6 +344,8 @@ CONTENT_EXPORT BASE_DECLARE_FEATURE(kWarmUpNetworkProcess);
@@ -346,6 +346,8 @@ CONTENT_EXPORT BASE_DECLARE_FEATURE(kWarmUpNetworkProcess);
CONTENT_EXPORT BASE_DECLARE_FEATURE(kWebNfc);
#endif // BUILDFLAG(IS_ANDROID)
@@ -141,7 +141,7 @@ diff --git a/third_party/blink/renderer/platform/exported/web_runtime_features.c
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -2495,6 +2495,10 @@
@@ -2461,6 +2461,10 @@
status: {"Android": "stable"},
base_feature: "none",
},
@@ -7,26 +7,25 @@ Allows build with clangd by suppressing unsupported parameters
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
---
build/config/compiler/BUILD.gn | 6 +++++-
build/config/compiler/BUILD.gn | 5 +++++
build_overrides/build.gni | 3 +++
2 files changed, 8 insertions(+), 1 deletion(-)
2 files changed, 8 insertions(+)
diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
--- a/build/config/compiler/BUILD.gn
+++ b/build/config/compiler/BUILD.gn
@@ -1772,7 +1772,11 @@ config("default_warnings") {
@@ -1777,6 +1777,11 @@ config("default_warnings") {
# TODO(crbug.com/1412713) Evaluate and possibly enable.
"-Wno-deprecated-this-capture",
]
-
+ if (skip_clangd_unsupported_options) {
+ cflags -= [
+ "-Wno-deprecated-builtins",
+ ]
+ }
if (llvm_force_head_revision) {
# TODO(https://crbug.com/1448905): Evaluate and possibly enable.
cflags += [ "-Wno-builtin-macro-redefined" ]
}
}
diff --git a/build_overrides/build.gni b/build_overrides/build.gni
--- a/build_overrides/build.gni
+++ b/build_overrides/build.gni
@@ -39,6 +38,6 @@ diff --git a/build_overrides/build.gni b/build_overrides/build.gni
+ skip_clangd_unsupported_options = false
}
# Allows different projects to specify their own suppression/ignore lists for
# Features used by //base/trace_event.
--
2.25.1
@@ -293,8 +293,8 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
+import org.chromium.components.content_settings.SessionModel;
import org.chromium.components.embedder_support.util.Origin;
import org.chromium.content_public.browser.BrowserContextHandle;
import org.chromium.content_public.browser.ContentFeatureList;
@@ -541,6 +542,11 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
@@ -542,6 +543,11 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
}
}
@@ -306,7 +306,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
private void setUpClearDataPreference() {
ClearWebsiteStorage preference = findPreference(PREF_CLEAR_DATA);
long usage = mSite.getTotalUsage();
@@ -970,6 +976,10 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
@@ -971,6 +977,10 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
if (contentType == mHighlightedPermission) {
switchPreference.setBackgroundColor(mHighlightColor);
}
@@ -350,7 +350,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
diff --git a/components/browser_ui/site_settings/android/website_preference_bridge.cc b/components/browser_ui/site_settings/android/website_preference_bridge.cc
--- a/components/browser_ui/site_settings/android/website_preference_bridge.cc
+++ b/components/browser_ui/site_settings/android/website_preference_bridge.cc
@@ -125,7 +125,8 @@ typedef void (*InfoListInsertionFunction)(
@@ -131,7 +131,8 @@ typedef void (*InfoListInsertionFunction)(
const base::android::JavaRef<jobject>&,
const base::android::JavaRef<jstring>&,
const base::android::JavaRef<jstring>&,
@@ -360,7 +360,7 @@ diff --git a/components/browser_ui/site_settings/android/website_preference_brid
void GetOrigins(JNIEnv* env,
const JavaParamRef<jobject>& jbrowser_context_handle,
@@ -167,7 +168,7 @@ void GetOrigins(JNIEnv* env,
@@ -173,7 +174,7 @@ void GetOrigins(JNIEnv* env,
seen_origins.push_back(origin);
insertionFunc(env, static_cast<int>(content_type), list,
ConvertOriginToJavaString(env, origin), jembedder,
@@ -369,7 +369,7 @@ diff --git a/components/browser_ui/site_settings/android/website_preference_brid
}
// Add any origins which have a default content setting value (thus skipped
@@ -189,7 +190,7 @@ void GetOrigins(JNIEnv* env,
@@ -195,7 +196,7 @@ void GetOrigins(JNIEnv* env,
seen_origins.push_back(origin);
insertionFunc(env, static_cast<int>(content_type), list,
ConvertOriginToJavaString(env, origin), jembedder,
@@ -381,7 +381,7 @@ diff --git a/components/browser_ui/site_settings/android/website_preference_brid
diff --git a/components/browser_ui/strings/android/browser_ui_strings.grd b/components/browser_ui/strings/android/browser_ui_strings.grd
--- a/components/browser_ui/strings/android/browser_ui_strings.grd
+++ b/components/browser_ui/strings/android/browser_ui_strings.grd
@@ -597,6 +597,11 @@
@@ -642,6 +642,11 @@
<message name="IDS_PAGE_INFO_URL_TRUNCATED" desc="Accessibility announcement when the URL in PageInfo switches from full to truncated display">
URL truncated
</message>
@@ -396,8 +396,8 @@ diff --git a/components/browser_ui/strings/android/browser_ui_strings.grd b/comp
diff --git a/components/content_settings/android/BUILD.gn b/components/content_settings/android/BUILD.gn
--- a/components/content_settings/android/BUILD.gn
+++ b/components/content_settings/android/BUILD.gn
@@ -58,6 +58,7 @@ java_cpp_enum("content_settings_enums_javagen") {
"../core/common/content_settings_types.h",
@@ -59,6 +59,7 @@ java_cpp_enum("content_settings_enums_javagen") {
"../core/common/cookie_controls_breakage_confidence_level.h",
"../core/common/cookie_controls_enforcement.h",
"../core/common/cookie_controls_status.h",
+ "../core/common/content_settings_constraints.h",
@@ -407,7 +407,7 @@ diff --git a/components/content_settings/android/BUILD.gn b/components/content_s
diff --git a/components/content_settings/core/browser/content_settings_utils.cc b/components/content_settings/core/browser/content_settings_utils.cc
--- a/components/content_settings/core/browser/content_settings_utils.cc
+++ b/components/content_settings/core/browser/content_settings_utils.cc
@@ -175,6 +175,42 @@ bool IsConstraintPersistent(const ContentSettingConstraints& constraints) {
@@ -174,6 +174,42 @@ bool IsConstraintPersistent(const ContentSettingConstraints& constraints) {
return constraints.session_model() == SessionModel::Durable;
}
@@ -497,7 +497,7 @@ diff --git a/components/content_settings/core/common/content_settings_constraint
diff --git a/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoController.java b/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoController.java
--- a/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoController.java
+++ b/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoController.java
@@ -340,9 +340,9 @@ public class PageInfoController implements PageInfoMainController, ModalDialogPr
@@ -336,9 +336,9 @@ public class PageInfoController implements PageInfoMainController, ModalDialogPr
*/
@CalledByNative
private void addPermissionSection(String name, String nameMidSentence, int type,
@@ -555,7 +555,7 @@ diff --git a/components/page_info/android/java/src/org/chromium/components/page_
diff --git a/components/page_info/android/page_info_controller_android.cc b/components/page_info/android/page_info_controller_android.cc
--- a/components/page_info/android/page_info_controller_android.cc
+++ b/components/page_info/android/page_info_controller_android.cc
@@ -153,6 +153,8 @@ void PageInfoControllerAndroid::SetPermissionInfo(
@@ -148,6 +148,8 @@ void PageInfoControllerAndroid::SetPermissionInfo(
std::map<ContentSettingsType, ContentSetting>
user_specified_settings_to_display;
@@ -564,7 +564,7 @@ diff --git a/components/page_info/android/page_info_controller_android.cc b/comp
for (const auto& permission : permission_info_list) {
if (base::Contains(permissions_to_display, permission.type)) {
@@ -161,6 +163,8 @@ void PageInfoControllerAndroid::SetPermissionInfo(
@@ -156,6 +158,8 @@ void PageInfoControllerAndroid::SetPermissionInfo(
if (setting_to_display) {
user_specified_settings_to_display[permission.type] =
*setting_to_display;
@@ -573,7 +573,7 @@ diff --git a/components/page_info/android/page_info_controller_android.cc b/comp
}
}
}
@@ -177,7 +181,8 @@ void PageInfoControllerAndroid::SetPermissionInfo(
@@ -172,7 +176,8 @@ void PageInfoControllerAndroid::SetPermissionInfo(
ConvertUTF16ToJavaString(env, setting_title),
ConvertUTF16ToJavaString(env, setting_title_mid_sentence),
static_cast<jint>(permission),
@@ -583,7 +583,7 @@ diff --git a/components/page_info/android/page_info_controller_android.cc b/comp
}
}
@@ -190,7 +195,8 @@ void PageInfoControllerAndroid::SetPermissionInfo(
@@ -185,7 +190,8 @@ void PageInfoControllerAndroid::SetPermissionInfo(
env, controller_jobject_, ConvertUTF16ToJavaString(env, object_title),
ConvertUTF16ToJavaString(env, object_title),
static_cast<jint>(chosen_object->ui_info->content_settings_type),
@@ -596,19 +596,19 @@ diff --git a/components/page_info/android/page_info_controller_android.cc b/comp
diff --git a/components/page_info/page_info.cc b/components/page_info/page_info.cc
--- a/components/page_info/page_info.cc
+++ b/components/page_info/page_info.cc
@@ -1141,6 +1141,8 @@ void PageInfo::PopulatePermissionInfo(PermissionInfo& permission_info,
@@ -1171,6 +1171,8 @@ void PageInfo::PopulatePermissionInfo(PermissionInfo& permission_info,
permission_info.source = info.source;
permission_info.is_one_time = (info.metadata.session_model() ==
content_settings::SessionModel::OneTime);
+ permission_info.is_user_session =
+ (info.metadata.session_model() == content_settings::SessionModel::UserSession);
if (info.primary_pattern == ContentSettingsPattern::Wildcard() &&
info.secondary_pattern == ContentSettingsPattern::Wildcard()) {
auto* page_specific_content_settings = GetPageSpecificContentSettings();
if (page_specific_content_settings && setting == CONTENT_SETTING_ALLOW) {
diff --git a/components/page_info/page_info.h b/components/page_info/page_info.h
--- a/components/page_info/page_info.h
+++ b/components/page_info/page_info.h
@@ -197,6 +197,7 @@ class PageInfo : private content_settings::OldCookieControlsObserver {
@@ -199,6 +199,7 @@ class PageInfo : private content_settings::CookieControlsObserver,
content_settings::SETTING_SOURCE_NONE;
// Whether the permission is a one-time grant.
bool is_one_time = false;
@@ -814,7 +814,7 @@ diff --git a/components/permissions/android/permission_prompt/permission_dialog_
diff --git a/components/permissions/android/permission_prompt/permission_prompt_android.cc b/components/permissions/android/permission_prompt/permission_prompt_android.cc
--- a/components/permissions/android/permission_prompt/permission_prompt_android.cc
+++ b/components/permissions/android/permission_prompt/permission_prompt_android.cc
@@ -41,6 +41,14 @@ void PermissionPromptAndroid::Accept() {
@@ -46,6 +46,14 @@ void PermissionPromptAndroid::Accept() {
delegate_->Accept();
}
@@ -832,7 +832,7 @@ diff --git a/components/permissions/android/permission_prompt/permission_prompt_
diff --git a/components/permissions/android/permission_prompt/permission_prompt_android.h b/components/permissions/android/permission_prompt/permission_prompt_android.h
--- a/components/permissions/android/permission_prompt/permission_prompt_android.h
+++ b/components/permissions/android/permission_prompt/permission_prompt_android.h
@@ -43,7 +43,9 @@ class PermissionPromptAndroid : public PermissionPrompt {
@@ -46,7 +46,9 @@ class PermissionPromptAndroid : public PermissionPrompt {
void Closing();
void Accept();
@@ -872,7 +872,7 @@ diff --git a/components/permissions/android/permissions_android_strings.grd b/co
diff --git a/components/permissions/contexts/geolocation_permission_context_android.cc b/components/permissions/contexts/geolocation_permission_context_android.cc
--- a/components/permissions/contexts/geolocation_permission_context_android.cc
+++ b/components/permissions/contexts/geolocation_permission_context_android.cc
@@ -130,7 +130,20 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet(
@@ -161,7 +161,20 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet(
bool is_final_decision) {
DCHECK(!is_one_time);
DCHECK(is_final_decision);
@@ -893,7 +893,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
bool is_default_search = IsRequestingOriginDSE(requesting_origin);
if (content_setting == CONTENT_SETTING_ALLOW &&
!location_settings_->IsSystemLocationSettingEnabled()) {
@@ -143,7 +156,8 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet(
@@ -174,7 +187,8 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet(
if (IsInLocationSettingsBackOff(is_default_search)) {
FinishNotifyPermissionSet(id, requesting_origin, embedding_origin,
std::move(callback), false /* persist */,
@@ -903,7 +903,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
return;
}
@@ -161,7 +175,8 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet(
@@ -192,7 +206,8 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet(
!location_settings_dialog_callback_.is_null()) {
FinishNotifyPermissionSet(id, requesting_origin, embedding_origin,
std::move(callback), false /* persist */,
@@ -913,7 +913,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
return;
}
@@ -173,12 +188,13 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet(
@@ -204,12 +219,13 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet(
base::BindOnce(
&GeolocationPermissionContextAndroid::OnLocationSettingsDialogShown,
weak_factory_.GetWeakPtr(), requesting_origin, embedding_origin,
@@ -929,7 +929,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
}
PermissionResult
@@ -345,6 +361,7 @@ void GeolocationPermissionContextAndroid::OnLocationSettingsDialogShown(
@@ -376,6 +392,7 @@ void GeolocationPermissionContextAndroid::OnLocationSettingsDialogShown(
const GURL& embedding_origin,
bool persist,
ContentSetting content_setting,
@@ -937,7 +937,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
LocationSettingsDialogOutcome prompt_outcome) {
bool is_default_search = IsRequestingOriginDSE(requesting_origin);
if (prompt_outcome == GRANTED) {
@@ -362,7 +379,8 @@ void GeolocationPermissionContextAndroid::OnLocationSettingsDialogShown(
@@ -393,7 +410,8 @@ void GeolocationPermissionContextAndroid::OnLocationSettingsDialogShown(
FinishNotifyPermissionSet(
location_settings_dialog_request_id_, requesting_origin, embedding_origin,
@@ -947,7 +947,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
location_settings_dialog_request_id_ =
PermissionRequestID(content::GlobalRenderFrameHostId(0, 0),
@@ -375,10 +393,11 @@ void GeolocationPermissionContextAndroid::FinishNotifyPermissionSet(
@@ -406,10 +424,11 @@ void GeolocationPermissionContextAndroid::FinishNotifyPermissionSet(
const GURL& embedding_origin,
BrowserPermissionCallback callback,
bool persist,
@@ -965,7 +965,7 @@ 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
@@ -88,6 +88,15 @@ class GeolocationPermissionContextAndroid
@@ -91,6 +91,15 @@ class GeolocationPermissionContextAndroid
ContentSetting content_setting,
bool is_one_time,
bool is_final_decision) override;
@@ -981,7 +981,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
PermissionResult UpdatePermissionStatusWithDeviceStatus(
PermissionResult result,
const GURL& requesting_origin,
@@ -130,6 +139,7 @@ class GeolocationPermissionContextAndroid
@@ -133,6 +142,7 @@ class GeolocationPermissionContextAndroid
const GURL& embedding_origin,
bool persist,
ContentSetting content_setting,
@@ -989,7 +989,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
LocationSettingsDialogOutcome prompt_outcome);
void FinishNotifyPermissionSet(const PermissionRequestID& id,
@@ -137,7 +147,9 @@ class GeolocationPermissionContextAndroid
@@ -140,7 +150,9 @@ class GeolocationPermissionContextAndroid
const GURL& embedding_origin,
BrowserPermissionCallback callback,
bool persist,
@@ -1003,7 +1003,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
diff --git a/components/permissions/permission_context_base.cc b/components/permissions/permission_context_base.cc
--- a/components/permissions/permission_context_base.cc
+++ b/components/permissions/permission_context_base.cc
@@ -250,6 +250,20 @@ PermissionContextBase::CreatePermissionRequest(
@@ -249,6 +249,20 @@ PermissionContextBase::CreatePermissionRequest(
std::move(delete_callback));
}
@@ -1024,7 +1024,7 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm
PermissionResult PermissionContextBase::GetPermissionStatus(
content::RenderFrameHost* render_frame_host,
const GURL& requesting_origin,
@@ -429,7 +443,8 @@ void PermissionContextBase::PermissionDecided(const PermissionRequestID& id,
@@ -428,7 +442,8 @@ void PermissionContextBase::PermissionDecided(const PermissionRequestID& id,
const GURL& embedding_origin,
ContentSetting content_setting,
bool is_one_time,
@@ -1034,7 +1034,7 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm
DCHECK(content_setting == CONTENT_SETTING_ALLOW ||
content_setting == CONTENT_SETTING_BLOCK ||
content_setting == CONTENT_SETTING_DEFAULT);
@@ -444,13 +459,14 @@ void PermissionContextBase::PermissionDecided(const PermissionRequestID& id,
@@ -443,13 +458,14 @@ void PermissionContextBase::PermissionDecided(const PermissionRequestID& id,
// missing if a permission prompt was preignored and we already notified an
// origin about it.
if (request->second.second) {
@@ -1053,7 +1053,7 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm
}
}
@@ -502,11 +518,27 @@ void PermissionContextBase::NotifyPermissionSet(
@@ -501,11 +517,27 @@ void PermissionContextBase::NotifyPermissionSet(
ContentSetting content_setting,
bool is_one_time,
bool is_final_decision) {
@@ -1082,7 +1082,7 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm
}
if (is_final_decision) {
@@ -536,6 +568,15 @@ void PermissionContextBase::UpdateContentSetting(const GURL& requesting_origin,
@@ -535,6 +567,15 @@ void PermissionContextBase::UpdateContentSetting(const GURL& requesting_origin,
const GURL& embedding_origin,
ContentSetting content_setting,
bool is_one_time) {
@@ -1098,7 +1098,7 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm
DCHECK_EQ(requesting_origin, requesting_origin.DeprecatedGetOriginAsURL());
DCHECK_EQ(embedding_origin, embedding_origin.DeprecatedGetOriginAsURL());
DCHECK(content_setting == CONTENT_SETTING_ALLOW ||
@@ -545,6 +586,8 @@ void PermissionContextBase::UpdateContentSetting(const GURL& requesting_origin,
@@ -544,6 +585,8 @@ void PermissionContextBase::UpdateContentSetting(const GURL& requesting_origin,
constraints.set_session_model(is_one_time
? content_settings::SessionModel::OneTime
: content_settings::SessionModel::Durable);
@@ -1166,7 +1166,7 @@ diff --git a/components/permissions/permission_context_base.h b/components/permi
diff --git a/components/permissions/permission_prompt.h b/components/permissions/permission_prompt.h
--- a/components/permissions/permission_prompt.h
+++ b/components/permissions/permission_prompt.h
@@ -63,8 +63,9 @@ class PermissionPrompt {
@@ -65,8 +65,9 @@ class PermissionPrompt {
virtual GURL GetEmbeddingOrigin() const = 0;
virtual void Accept() = 0;
@@ -1199,7 +1199,7 @@ diff --git a/components/permissions/permission_request.cc b/components/permissio
PermissionRequest::~PermissionRequest() {
DCHECK(delete_callback_.is_null());
}
@@ -263,19 +275,37 @@ bool PermissionRequest::ShouldUseTwoOriginPrompt() const {
@@ -257,19 +269,37 @@ bool PermissionRequest::ShouldUseTwoOriginPrompt() const {
permissions::features::kPermissionStorageAccessAPI);
}
@@ -1311,7 +1311,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
}
request->RequestFinished();
return;
@@ -566,7 +566,8 @@ void PermissionRequestManager::Accept() {
@@ -568,7 +568,8 @@ void PermissionRequestManager::Accept() {
(*requests_iter)->request_type(),
PermissionAction::GRANTED);
PermissionGrantedIncludingDuplicates(*requests_iter,
@@ -1321,7 +1321,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
#if !BUILDFLAG(IS_ANDROID)
absl::optional<ContentSettingsType> content_settings_type =
@@ -584,7 +585,7 @@ void PermissionRequestManager::Accept() {
@@ -586,7 +587,7 @@ void PermissionRequestManager::Accept() {
FinalizeCurrentRequests(PermissionAction::GRANTED);
}
@@ -1330,7 +1330,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
if (ignore_callbacks_from_prompt_)
return;
DCHECK(view_);
@@ -595,7 +596,8 @@ void PermissionRequestManager::AcceptThisTime() {
@@ -597,7 +598,8 @@ void PermissionRequestManager::AcceptThisTime() {
(*requests_iter)->request_type(),
PermissionAction::GRANTED_ONCE);
PermissionGrantedIncludingDuplicates(*requests_iter,
@@ -1340,7 +1340,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
}
NotifyRequestDecided(PermissionAction::GRANTED_ONCE);
@@ -603,6 +605,15 @@ void PermissionRequestManager::AcceptThisTime() {
@@ -605,6 +607,15 @@ void PermissionRequestManager::AcceptThisTime() {
}
void PermissionRequestManager::Deny() {
@@ -1356,7 +1356,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
if (ignore_callbacks_from_prompt_)
return;
DCHECK(view_);
@@ -625,7 +636,7 @@ void PermissionRequestManager::Deny() {
@@ -627,7 +638,7 @@ void PermissionRequestManager::Deny() {
StorePermissionActionForUMA((*requests_iter)->requesting_origin(),
(*requests_iter)->request_type(),
PermissionAction::DENIED);
@@ -1365,7 +1365,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
}
NotifyRequestDecided(PermissionAction::DENIED);
@@ -1155,32 +1166,32 @@ PermissionRequestManager::VisitDuplicateRequests(
@@ -1162,32 +1173,32 @@ PermissionRequestManager::VisitDuplicateRequests(
void PermissionRequestManager::PermissionGrantedIncludingDuplicates(
PermissionRequest* request,
@@ -1408,7 +1408,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
request);
}
@@ -1429,7 +1440,7 @@ void PermissionRequestManager::LogWarningToConsole(const char* message) {
@@ -1436,7 +1447,7 @@ void PermissionRequestManager::LogWarningToConsole(const char* message) {
void PermissionRequestManager::DoAutoResponseForTesting() {
switch (auto_response_for_test_) {
case ACCEPT_ONCE:
@@ -1420,7 +1420,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
diff --git a/components/permissions/permission_request_manager.h b/components/permissions/permission_request_manager.h
--- a/components/permissions/permission_request_manager.h
+++ b/components/permissions/permission_request_manager.h
@@ -157,8 +157,10 @@ class PermissionRequestManager
@@ -159,8 +159,10 @@ class PermissionRequestManager
GURL GetRequestingOrigin() const override;
GURL GetEmbeddingOrigin() const override;
void Accept() override;
@@ -1432,7 +1432,7 @@ diff --git a/components/permissions/permission_request_manager.h b/components/pe
void Dismiss() override;
void Ignore() override;
void OpenHelpCenterLink(const ui::Event& event) override;
@@ -356,9 +358,12 @@ class PermissionRequestManager
@@ -362,9 +364,12 @@ class PermissionRequestManager
// Calls PermissionGranted on a request and all its duplicates.
void PermissionGrantedIncludingDuplicates(PermissionRequest* request,
@@ -21,11 +21,13 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../bookmarks/browser/bookmark_load_details.h | 3 +
.../bookmarks/browser/bookmark_model.cc | 3 +-
components/bookmarks/browser/bookmark_model.h | 7 +++
components/bookmarks/browser/bookmark_node.cc | 15 +++++
components/bookmarks/browser/bookmark_node.h | 5 ++
components/bookmarks/browser/bookmark_node.cc | 11 ++++
components/bookmarks/browser/bookmark_node.h | 4 ++
.../bookmarks/browser/bookmark_uuids.cc | 3 +
components/bookmarks/browser/bookmark_uuids.h | 1 +
components/bookmarks/browser/model_loader.cc | 3 +-
.../bookmark_specifics_conversions.cc | 1 +
21 files changed, 201 insertions(+), 11 deletions(-)
23 files changed, 200 insertions(+), 11 deletions(-)
diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/res/menu/main_menu.xml
--- a/chrome/android/java/res/menu/main_menu.xml
@@ -41,7 +43,7 @@ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/re
<item android:id="@+id/recent_tabs_menu_id"
android:title="@string/menu_recent_tabs"
android:icon="@drawable/devices_black_24dp" />
@@ -181,6 +185,9 @@ found in the LICENSE file.
@@ -184,6 +188,9 @@ found in the LICENSE file.
<item android:id="@id/quick_delete_menu_id"
android:title="@string/menu_quick_delete"
android:icon="@drawable/quick_delete_trash_bin_icon_24dp"/>
@@ -54,7 +56,7 @@ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/re
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
@@ -80,6 +80,7 @@ import org.chromium.chrome.browser.back_press.MinimizeAppAndCloseTabBackPressHan
@@ -82,6 +82,7 @@ import org.chromium.chrome.browser.back_press.MinimizeAppAndCloseTabBackPressHan
import org.chromium.chrome.browser.bookmarks.BookmarkUtils;
import org.chromium.chrome.browser.browserservices.intents.WebappConstants;
import org.chromium.chrome.browser.compositor.CompositorViewHolder;
@@ -62,17 +64,17 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
import org.chromium.chrome.browser.compositor.layouts.Layout;
import org.chromium.chrome.browser.compositor.layouts.LayoutManagerChrome;
import org.chromium.chrome.browser.compositor.layouts.LayoutManagerChromePhone;
@@ -2282,6 +2283,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
CloseAllTabsDialog.show(this, getModalDialogManagerSupplier(),
() -> getTabModelSelector().closeAllTabs(), /*isIncognito=*/false);
@@ -2278,6 +2279,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
getTabModelSelectorSupplier().get(),
() -> getTabModelSelector().closeAllTabs());
RecordUserAction.record("MobileMenuCloseAllTabs");
+ } else if (id == R.id.bookmark_all_tabs_menu_id) {
+ bookmarkAllTabs();
} else if (id == R.id.close_all_incognito_tabs_menu_id) {
// Close only incognito tabs
CloseAllTabsDialog.show(this, getModalDialogManagerSupplier(),
@@ -2347,6 +2350,27 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
mTabModalHandler.onOmniboxFocusChanged(hasFocus);
@@ -2343,6 +2346,27 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
getTabModalLifetimeHandler().onOmniboxFocusChanged(hasFocus);
}
+ private void bookmarkAllTabs() {
@@ -130,7 +132,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
private long mNativeBookmarkBridge;
private boolean mIsDestroyed;
private boolean mIsDoingExtensiveChanges;
@@ -379,6 +386,16 @@ class BookmarkBridge {
@@ -377,6 +384,16 @@ class BookmarkBridge {
mNativeBookmarkBridge, BookmarkBridge.this);
}
@@ -147,7 +149,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
/**
* @return Id representing the special "other" folder from bookmark model.
*/
@@ -1002,6 +1019,49 @@ class BookmarkBridge {
@@ -1012,6 +1029,49 @@ class BookmarkBridge {
mNativeBookmarkBridge, BookmarkBridge.this, title, url);
}
@@ -197,7 +199,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
/**
* @param url The URL of the reading list item.
* @return The reading list item with the URL, or null if no such reading list item.
@@ -1220,6 +1280,7 @@ class BookmarkBridge {
@@ -1232,6 +1292,7 @@ class BookmarkBridge {
void getAllFoldersWithDepths(long nativeBookmarkBridge, BookmarkBridge caller,
List<BookmarkId> folderList, List<Integer> depthList);
BookmarkId getRootFolderId(long nativeBookmarkBridge, BookmarkBridge caller);
@@ -208,7 +210,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkUtils.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkUtils.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkUtils.java
@@ -575,6 +575,7 @@ public class BookmarkUtils {
@@ -615,6 +615,7 @@ public class BookmarkUtils {
List<BookmarkId> topLevelFolders = new ArrayList<>();
BookmarkId desktopNodeId = bookmarkModel.getDesktopFolderId();
BookmarkId mobileNodeId = bookmarkModel.getMobileFolderId();
@@ -216,7 +218,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
BookmarkId othersNodeId = bookmarkModel.getOtherFolderId();
List<BookmarkId> specialFoldersIds =
@@ -600,6 +601,9 @@ public class BookmarkUtils {
@@ -640,6 +641,9 @@ public class BookmarkUtils {
if (bookmarkModel.isFolderVisible(mobileNodeId)) {
topLevelFolders.add(mobileNodeId);
}
@@ -291,7 +293,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.h b/chrome/browser
diff --git a/chrome/browser/bookmarks/bookmark_html_writer.cc b/chrome/browser/bookmarks/bookmark_html_writer.cc
--- a/chrome/browser/bookmarks/bookmark_html_writer.cc
+++ b/chrome/browser/bookmarks/bookmark_html_writer.cc
@@ -188,15 +188,19 @@ class Writer : public base::RefCountedThreadSafe<Writer> {
@@ -190,15 +190,19 @@ class Writer : public base::RefCountedThreadSafe<Writer> {
roots->FindDict(BookmarkCodec::kOtherBookmarkFolderNameKey);
base::Value::Dict* mobile_folder_value =
roots->FindDict(BookmarkCodec::kMobileBookmarkFolderNameKey);
@@ -312,7 +314,7 @@ diff --git a/chrome/browser/bookmarks/bookmark_html_writer.cc b/chrome/browser/b
NotifyOnFinish(BookmarksExportObserver::Result::kCouldNotWriteNodes);
return;
}
@@ -460,6 +464,8 @@ void BookmarkFaviconFetcher::ExportBookmarks() {
@@ -465,6 +469,8 @@ void BookmarkFaviconFetcher::ExportBookmarks() {
BookmarkModelFactory::GetForBrowserContext(profile_)->other_node());
ExtractUrls(
BookmarkModelFactory::GetForBrowserContext(profile_)->mobile_node());
@@ -357,7 +359,7 @@ diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browse
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -3817,6 +3817,9 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -3871,6 +3871,9 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<message name="IDS_MENU_SELECT_TABS" desc="Menu item for bulk editing tabs. [CHAR_LIMIT=27]">
Select tabs
</message>
@@ -393,7 +395,7 @@ diff --git a/components/bookmark_bar_strings.grdp b/components/bookmark_bar_stri
diff --git a/components/bookmarks/browser/bookmark_codec.cc b/components/bookmarks/browser/bookmark_codec.cc
--- a/components/bookmarks/browser/bookmark_codec.cc
+++ b/components/bookmarks/browser/bookmark_codec.cc
@@ -35,6 +35,7 @@ const char BookmarkCodec::kBookmarkBarFolderNameKey[] = "bookmark_bar";
@@ -36,6 +36,7 @@ const char BookmarkCodec::kBookmarkBarFolderNameKey[] = "bookmark_bar";
const char BookmarkCodec::kOtherBookmarkFolderNameKey[] = "other";
// The value is left as 'synced' for historical reasons.
const char BookmarkCodec::kMobileBookmarkFolderNameKey[] = "synced";
@@ -401,7 +403,7 @@ diff --git a/components/bookmarks/browser/bookmark_codec.cc b/components/bookmar
const char BookmarkCodec::kVersionKey[] = "version";
const char BookmarkCodec::kChecksumKey[] = "checksum";
const char BookmarkCodec::kIdKey[] = "id";
@@ -74,7 +75,8 @@ BookmarkCodec::~BookmarkCodec() = default;
@@ -75,7 +76,8 @@ BookmarkCodec::~BookmarkCodec() = default;
base::Value::Dict BookmarkCodec::Encode(BookmarkModel* model,
std::string sync_metadata_str) {
return Encode(model->bookmark_bar_node(), model->other_node(),
@@ -411,7 +413,7 @@ diff --git a/components/bookmarks/browser/bookmark_codec.cc b/components/bookmar
model->root_node()->GetUnsyncedMetaInfoMap(),
std::move(sync_metadata_str));
}
@@ -83,6 +85,7 @@ base::Value::Dict BookmarkCodec::Encode(
@@ -84,6 +86,7 @@ base::Value::Dict BookmarkCodec::Encode(
const BookmarkNode* bookmark_bar_node,
const BookmarkNode* other_folder_node,
const BookmarkNode* mobile_folder_node,
@@ -419,7 +421,7 @@ diff --git a/components/bookmarks/browser/bookmark_codec.cc b/components/bookmar
const BookmarkNode::MetaInfoMap* model_meta_info_map,
const BookmarkNode::MetaInfoMap* model_unsynced_meta_info_map,
std::string sync_metadata_str) {
@@ -104,6 +107,7 @@ base::Value::Dict BookmarkCodec::Encode(
@@ -105,6 +108,7 @@ base::Value::Dict BookmarkCodec::Encode(
roots.Set(kBookmarkBarFolderNameKey, EncodeNode(bookmark_bar_node));
roots.Set(kOtherBookmarkFolderNameKey, EncodeNode(other_folder_node));
roots.Set(kMobileBookmarkFolderNameKey, EncodeNode(mobile_folder_node));
@@ -427,7 +429,7 @@ diff --git a/components/bookmarks/browser/bookmark_codec.cc b/components/bookmar
if (model_meta_info_map)
roots.Set(kMetaInfo, EncodeMetaInfo(*model_meta_info_map));
if (model_unsynced_meta_info_map) {
@@ -124,6 +128,7 @@ bool BookmarkCodec::Decode(const base::Value::Dict& value,
@@ -125,6 +129,7 @@ bool BookmarkCodec::Decode(const base::Value::Dict& value,
BookmarkNode* bb_node,
BookmarkNode* other_folder_node,
BookmarkNode* mobile_folder_node,
@@ -435,17 +437,17 @@ diff --git a/components/bookmarks/browser/bookmark_codec.cc b/components/bookmar
int64_t* max_id,
std::string* sync_metadata_str) {
ids_.clear();
@@ -131,7 +136,8 @@ bool BookmarkCodec::Decode(const base::Value::Dict& value,
base::Uuid::ParseLowercase(BookmarkNode::kBookmarkBarNodeUuid),
base::Uuid::ParseLowercase(BookmarkNode::kOtherBookmarksNodeUuid),
base::Uuid::ParseLowercase(BookmarkNode::kMobileBookmarksNodeUuid),
- base::Uuid::ParseLowercase(BookmarkNode::kManagedNodeUuid)};
+ base::Uuid::ParseLowercase(BookmarkNode::kManagedNodeUuid),
+ base::Uuid::ParseLowercase(BookmarkNode::kTabsCollectionBookmarksNodeUuid)};
@@ -132,7 +137,8 @@ bool BookmarkCodec::Decode(const base::Value::Dict& value,
base::Uuid::ParseLowercase(kBookmarkBarNodeUuid),
base::Uuid::ParseLowercase(kOtherBookmarksNodeUuid),
base::Uuid::ParseLowercase(kMobileBookmarksNodeUuid),
- base::Uuid::ParseLowercase(kManagedNodeUuid)};
+ base::Uuid::ParseLowercase(kManagedNodeUuid),
+ base::Uuid::ParseLowercase(kTabsCollectionBookmarksNodeUuid)};
ids_reassigned_ = false;
uuids_reassigned_ = false;
ids_valid_ = true;
@@ -139,12 +145,13 @@ bool BookmarkCodec::Decode(const base::Value::Dict& value,
@@ -140,12 +146,13 @@ bool BookmarkCodec::Decode(const base::Value::Dict& value,
stored_checksum_.clear();
InitializeChecksum();
bool success = DecodeHelper(bb_node, other_folder_node, mobile_folder_node,
@@ -460,7 +462,7 @@ diff --git a/components/bookmarks/browser/bookmark_codec.cc b/components/bookmar
*max_id = maximum_id_ + 1;
return success;
}
@@ -200,6 +207,7 @@ base::Value::Dict BookmarkCodec::EncodeMetaInfo(
@@ -201,6 +208,7 @@ base::Value::Dict BookmarkCodec::EncodeMetaInfo(
bool BookmarkCodec::DecodeHelper(BookmarkNode* bb_node,
BookmarkNode* other_folder_node,
BookmarkNode* mobile_folder_node,
@@ -468,7 +470,7 @@ diff --git a/components/bookmarks/browser/bookmark_codec.cc b/components/bookmar
const base::Value::Dict& value,
std::string* sync_metadata_str) {
absl::optional<int> version = value.FindInt(kVersionKey);
@@ -224,6 +232,8 @@ bool BookmarkCodec::DecodeHelper(BookmarkNode* bb_node,
@@ -225,6 +233,8 @@ bool BookmarkCodec::DecodeHelper(BookmarkNode* bb_node,
roots->FindDict(kOtherBookmarkFolderNameKey);
const base::Value::Dict* mobile_folder_value =
roots->FindDict(kMobileBookmarkFolderNameKey);
@@ -477,7 +479,7 @@ diff --git a/components/bookmarks/browser/bookmark_codec.cc b/components/bookmar
if (!bb_value || !other_folder_value || !mobile_folder_value)
return false;
@@ -231,6 +241,8 @@ bool BookmarkCodec::DecodeHelper(BookmarkNode* bb_node,
@@ -232,6 +242,8 @@ bool BookmarkCodec::DecodeHelper(BookmarkNode* bb_node,
DecodeNode(*bb_value, nullptr, bb_node);
DecodeNode(*other_folder_value, nullptr, other_folder_node);
DecodeNode(*mobile_folder_value, nullptr, mobile_folder_node);
@@ -486,7 +488,7 @@ diff --git a/components/bookmarks/browser/bookmark_codec.cc b/components/bookmar
if (!DecodeMetaInfo(*roots, &model_meta_info_map_))
return false;
@@ -496,11 +508,13 @@ void BookmarkCodec::DecodeMetaInfoHelper(
@@ -510,11 +522,13 @@ void BookmarkCodec::DecodeMetaInfoHelper(
void BookmarkCodec::ReassignIDs(BookmarkNode* bb_node,
BookmarkNode* other_node,
@@ -583,7 +585,7 @@ diff --git a/components/bookmarks/browser/bookmark_load_details.h b/components/b
diff --git a/components/bookmarks/browser/bookmark_model.cc b/components/bookmarks/browser/bookmark_model.cc
--- a/components/bookmarks/browser/bookmark_model.cc
+++ b/components/bookmarks/browser/bookmark_model.cc
@@ -817,7 +817,7 @@ bool BookmarkModel::HasBookmarks() {
@@ -818,7 +818,7 @@ bool BookmarkModel::HasBookmarks() {
bool BookmarkModel::HasNoUserCreatedBookmarksOrFolders() {
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
return bookmark_bar_node_->children().empty() &&
@@ -592,7 +594,7 @@ diff --git a/components/bookmarks/browser/bookmark_model.cc b/components/bookmar
}
bool BookmarkModel::IsBookmarked(const GURL& url) {
@@ -1123,6 +1123,7 @@ void BookmarkModel::DoneLoading(std::unique_ptr<BookmarkLoadDetails> details) {
@@ -1124,6 +1124,7 @@ void BookmarkModel::DoneLoading(std::unique_ptr<BookmarkLoadDetails> details) {
bookmark_bar_node_ = details->bb_node();
other_node_ = details->other_folder_node();
mobile_node_ = details->mobile_folder_node();
@@ -616,10 +618,10 @@ diff --git a/components/bookmarks/browser/bookmark_model.h b/components/bookmark
bool is_root_node(const BookmarkNode* node) const {
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
return node == root_;
@@ -489,6 +495,7 @@ class BookmarkModel final : public BookmarkUndoProvider,
@@ -491,6 +497,7 @@ class BookmarkModel final : public BookmarkUndoProvider,
nullptr;
raw_ptr<BookmarkPermanentNode, AcrossTasksDanglingUntriaged> mobile_node_ =
nullptr;
raw_ptr<BookmarkPermanentNode, DanglingUntriaged> other_node_ = nullptr;
raw_ptr<BookmarkPermanentNode, DanglingUntriaged> mobile_node_ = nullptr;
+ raw_ptr<BookmarkPermanentNode> tabs_collection_node_ = nullptr;
// The maximum ID assigned to the bookmark nodes in the model.
@@ -627,18 +629,7 @@ diff --git a/components/bookmarks/browser/bookmark_model.h b/components/bookmark
diff --git a/components/bookmarks/browser/bookmark_node.cc b/components/bookmarks/browser/bookmark_node.cc
--- a/components/bookmarks/browser/bookmark_node.cc
+++ b/components/bookmarks/browser/bookmark_node.cc
@@ -60,6 +60,10 @@ const char BookmarkNode::kOtherBookmarksNodeUuid[] =
const char BookmarkNode::kMobileBookmarksNodeUuid[] =
"4cf2e351-0e85-532b-bb37-df045d8f8d0f";
+// static
+const char BookmarkNode::kTabsCollectionBookmarksNodeUuid[] =
+ "00000000-0000-4000-a000-000000000006";
+
// static
const char BookmarkNode::kManagedNodeUuid[] =
"323123f4-9381-5aee-80e6-ea5fca2f7672";
@@ -275,6 +279,17 @@ BookmarkPermanentNode::CreateMobileBookmarks(int64_t id,
@@ -239,6 +239,17 @@ BookmarkPermanentNode::CreateMobileBookmarks(int64_t id,
visible_when_empty));
}
@@ -667,15 +658,7 @@ diff --git a/components/bookmarks/browser/bookmark_node.h b/components/bookmarks
MOBILE
};
@@ -52,6 +53,7 @@ class BookmarkNode : public ui::TreeNode<BookmarkNode>, public TitledUrlNode {
static const char kBookmarkBarNodeUuid[];
static const char kOtherBookmarksNodeUuid[];
static const char kMobileBookmarksNodeUuid[];
+ static const char kTabsCollectionBookmarksNodeUuid[];
static const char kManagedNodeUuid[];
// A bug in sync caused some problematic UUIDs to be produced.
@@ -270,6 +272,9 @@ class BookmarkPermanentNode : public BookmarkNode {
@@ -259,6 +260,9 @@ class BookmarkPermanentNode : public BookmarkNode {
static std::unique_ptr<BookmarkPermanentNode> CreateMobileBookmarks(
int64_t id,
bool visible_when_empty);
@@ -685,6 +668,30 @@ diff --git a/components/bookmarks/browser/bookmark_node.h b/components/bookmarks
// Constructor is private to disallow the construction of permanent nodes
// other than the well-known ones, see factory methods.
diff --git a/components/bookmarks/browser/bookmark_uuids.cc b/components/bookmarks/browser/bookmark_uuids.cc
--- a/components/bookmarks/browser/bookmark_uuids.cc
+++ b/components/bookmarks/browser/bookmark_uuids.cc
@@ -33,6 +33,9 @@ const char kManagedNodeUuid[] = "323123f4-9381-5aee-80e6-ea5fca2f7672";
// > uuid.uuid5(bookmarks_namespace, "shopping_collection")
const char kShoppingCollectionUuid[] = "e55c13d5-c108-52a6-bfd5-590b885500d0";
+const char kTabsCollectionBookmarksNodeUuid[] =
+ "00000000-0000-4000-a000-000000000006";
+
// This value is the result of exercising sync's function
// syncer::InferGuidForLegacyBookmark() with an empty input.
const char kBannedUuidDueToPastSyncBug[] =
diff --git a/components/bookmarks/browser/bookmark_uuids.h b/components/bookmarks/browser/bookmark_uuids.h
--- a/components/bookmarks/browser/bookmark_uuids.h
+++ b/components/bookmarks/browser/bookmark_uuids.h
@@ -14,6 +14,7 @@ extern const char kBookmarkBarNodeUuid[];
extern const char kOtherBookmarksNodeUuid[];
extern const char kMobileBookmarksNodeUuid[];
extern const char kManagedNodeUuid[];
+extern const char kTabsCollectionBookmarksNodeUuid[];
extern const char kShoppingCollectionUuid[];
// A bug in sync caused some problematic UUIDs to be produced.
diff --git a/components/bookmarks/browser/model_loader.cc b/components/bookmarks/browser/model_loader.cc
--- a/components/bookmarks/browser/model_loader.cc
+++ b/components/bookmarks/browser/model_loader.cc
@@ -701,7 +708,7 @@ diff --git a/components/bookmarks/browser/model_loader.cc b/components/bookmarks
diff --git a/components/sync_bookmarks/bookmark_specifics_conversions.cc b/components/sync_bookmarks/bookmark_specifics_conversions.cc
--- a/components/sync_bookmarks/bookmark_specifics_conversions.cc
+++ b/components/sync_bookmarks/bookmark_specifics_conversions.cc
@@ -446,6 +446,7 @@ sync_pb::BookmarkSpecifics::Type GetProtoTypeFromBookmarkNode(
@@ -447,6 +447,7 @@ sync_pb::BookmarkSpecifics::Type GetProtoTypeFromBookmarkNode(
case bookmarks::BookmarkNode::BOOKMARK_BAR:
case bookmarks::BookmarkNode::OTHER_NODE:
case bookmarks::BookmarkNode::MOBILE:
@@ -29,7 +29,7 @@ diff --git a/chrome/android/java/res/menu/custom_tabs_menu.xml b/chrome/android/
diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/res/menu/main_menu.xml
--- a/chrome/android/java/res/menu/main_menu.xml
+++ b/chrome/android/java/res/menu/main_menu.xml
@@ -108,6 +108,9 @@ found in the LICENSE file.
@@ -111,6 +111,9 @@ found in the LICENSE file.
<item android:id="@+id/add_to_homescreen_id"
android:title="@string/menu_add_to_homescreen"
android:icon="@drawable/ic_add_to_home_screen" />
@@ -42,7 +42,7 @@ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/re
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
@@ -2308,6 +2308,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -2303,6 +2303,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
NewTabPageUma.recordAction(NewTabPageUma.ACTION_OPENED_DOWNLOADS_MANAGER);
}
RecordUserAction.record("MobileMenuDownloadManager");
@@ -54,7 +54,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
@@ -2524,6 +2524,11 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -2542,6 +2542,11 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
return doOpenWebApk(currentTab);
}
@@ -69,7 +69,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
@@ -544,6 +544,7 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
@@ -552,6 +552,7 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
isChromeScheme, isFileScheme, isContentScheme, isIncognito, url));
updateRequestDesktopSiteMenuItem(menu, currentTab, true /* can show */, isChromeScheme);
@@ -77,7 +77,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App
updateAutoDarkMenuItem(menu, currentTab, isChromeScheme);
@@ -1114,6 +1115,23 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
@@ -1133,6 +1134,23 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
}
}
@@ -104,7 +104,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/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
@@ -240,6 +240,7 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat
@@ -241,6 +241,7 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat
updateRequestDesktopSiteMenuItem(
menu, currentTab, requestDesktopSiteVisible, isChromeScheme);
@@ -115,7 +115,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
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
@@ -309,6 +309,10 @@ CHAR_LIMIT guidelines:
@@ -314,6 +314,10 @@ CHAR_LIMIT guidelines:
USB
</message>
@@ -50,7 +50,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/s
diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
--- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
+++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
@@ -386,6 +386,7 @@ public final class ChromePreferenceKeys {
@@ -374,6 +374,7 @@ public final class ChromePreferenceKeys {
AccessibilityConstants.FONT_USER_SET_FORCE_ENABLE_ZOOM;
public static final String HISTORY_SHOW_HISTORY_INFO = "history_home_show_info";
@@ -72,7 +72,7 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java
@@ -669,7 +669,7 @@ public class LocationBarCoordinator
@@ -685,7 +685,7 @@ public class LocationBarCoordinator
}
private boolean isTabletWindow() {
@@ -84,7 +84,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -1675,6 +1675,12 @@ Your Google account may have other forms of browsing history like searches and a
@@ -1702,6 +1702,12 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_PRIVACY_GUIDE_SB_ENHANCED_ITEM_SEVEN" desc="Seventh bullet point that describes the details of the Safe Browsing control.">
Temporarily links this data to your Google Account when youre signed in, to protect you across Google apps
</message>
@@ -100,7 +100,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarControlContainer.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarControlContainer.java
--- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarControlContainer.java
+++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarControlContainer.java
@@ -165,9 +165,8 @@ public class ToolbarControlContainer extends OptimizedFrameLayout implements Con
@@ -166,9 +166,8 @@ public class ToolbarControlContainer extends OptimizedFrameLayout implements Con
return backgroundDrawable;
} else {
@@ -115,7 +115,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow
diff --git a/components/BUILD.gn b/components/BUILD.gn
--- a/components/BUILD.gn
+++ b/components/BUILD.gn
@@ -68,7 +68,7 @@ if (is_ios) {
@@ -71,7 +71,7 @@ if (is_ios) {
# Omit Lacros because it allows //components to depend on //chrome, which in
# turn depends on //extensions.
@@ -124,7 +124,7 @@ diff --git a/components/BUILD.gn b/components/BUILD.gn
disallowed_extension_deps_ = [
# Components should largely not depend on //extensions. Since // extensions
# is not a component target and is linked with //chrome, depending on most
@@ -730,7 +730,7 @@ test("components_unittests") {
@@ -748,7 +748,7 @@ test("components_unittests") {
# On other platforms, no components should depend on Chrome.
# Since //chrome depends on //extensions, we also only assert_no_deps on
# extensions targets for non-lacros builds.
@@ -133,7 +133,7 @@ diff --git a/components/BUILD.gn b/components/BUILD.gn
assert_no_deps = [ "//chrome/*" ]
assert_no_deps += disallowed_extension_deps_
}
@@ -1018,7 +1018,7 @@ if (use_blink) {
@@ -1037,7 +1037,7 @@ if (use_blink) {
# dependency. On other platforms, no components should depend on Chrome.
# Since //chrome depends on //extensions, we also only assert_no_deps on
# extensions targets for non-lacros builds.
@@ -214,7 +214,7 @@ diff --git a/components/browser_ui/accessibility/android/java/src/org/chromium/c
diff --git a/ui/android/BUILD.gn b/ui/android/BUILD.gn
--- a/ui/android/BUILD.gn
+++ b/ui/android/BUILD.gn
@@ -408,6 +408,8 @@ android_library("ui_no_recycler_view_java") {
@@ -409,6 +409,8 @@ android_library("ui_no_recycler_view_java") {
":ui_android_features_java",
":ui_java_resources",
":ui_utils_java",
@@ -28,7 +28,7 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
@@ -38,6 +38,7 @@ import org.chromium.base.BuildInfo;
@@ -39,6 +39,7 @@ import org.chromium.base.BuildInfo;
import org.chromium.base.Callback;
import org.chromium.base.CallbackController;
import org.chromium.base.CommandLine;
@@ -36,7 +36,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
import org.chromium.base.IntentUtils;
import org.chromium.base.Log;
import org.chromium.base.MemoryPressureListener;
@@ -1283,8 +1284,10 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -1264,8 +1265,10 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
boolean hadCipherData =
CipherFactory.getInstance().restoreFromBundle(getSavedInstanceState());
@@ -77,7 +77,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
private ManagedPreferenceDelegate mManagedPreferenceDelegate;
private IncognitoLockSettings mIncognitoLockSettings;
private HelpAndFeedbackLauncher mHelpAndFeedbackLauncher;
@@ -247,7 +252,11 @@ public class PrivacySettings extends PreferenceFragmentCompat
@@ -243,7 +248,11 @@ public class PrivacySettings extends PreferenceFragmentCompat
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
String key = preference.getKey();
@@ -90,7 +90,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
UserPrefs.get(mProfile).setBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED, (boolean) newValue);
} else if (PREF_HTTPS_FIRST_MODE.equals(key)) {
UserPrefs.get(mProfile).setBoolean(Pref.HTTPS_ONLY_MODE_ENABLED, (boolean) newValue);
@@ -290,6 +299,11 @@ public class PrivacySettings extends PreferenceFragmentCompat
@@ -286,6 +295,11 @@ public class PrivacySettings extends PreferenceFragmentCompat
PreloadPagesSettingsFragment.getPreloadPagesSummaryString(getContext()));
}
@@ -105,7 +105,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
@@ -4653,6 +4653,12 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -4725,6 +4725,12 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<message name="IDS_CONTEXTMENU_IMAGE_TITLE" desc="The title of a context menu tab when the item pressed contains more than one type. This indicates that all the actions are related to the image.">
IMAGE
</message>
@@ -15,9 +15,8 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../preferences/LegacyChromePreferenceKeys.java | 1 +
.../android/strings/android_chrome_strings.grd | 3 +++
chrome/browser/ui/browser_ui_prefs.cc | 2 ++
chrome/common/pref_names.cc | 4 ++++
chrome/common/pref_names.h | 1 +
11 files changed, 52 insertions(+), 1 deletion(-)
chrome/common/pref_names.h | 4 ++++
10 files changed, 51 insertions(+), 1 deletion(-)
diff --git a/chrome/android/java/res/xml/homepage_preferences.xml b/chrome/android/java/res/xml/homepage_preferences.xml
--- a/chrome/android/java/res/xml/homepage_preferences.xml
@@ -37,7 +36,7 @@ diff --git a/chrome/android/java/res/xml/homepage_preferences.xml b/chrome/andro
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java
@@ -227,6 +227,22 @@ public class HomepageManager implements HomepagePolicyManager.HomepagePolicyStat
@@ -228,6 +228,22 @@ public class HomepageManager implements HomepagePolicyManager.HomepagePolicyStat
notifyHomepageUpdated();
}
@@ -134,7 +133,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
--- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
+++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
@@ -397,6 +397,7 @@ public final class ChromePreferenceKeys {
@@ -385,6 +385,7 @@ public final class ChromePreferenceKeys {
public static final String HOMEPAGE_PARTNER_CUSTOMIZED_DEFAULT_GURL =
"Chrome.Homepage.PartnerCustomizedDefaultGurl";
@@ -156,7 +155,7 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -1487,6 +1487,9 @@ Your Google account may have other forms of browsing history like searches and a
@@ -1514,6 +1514,9 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_CLEAR_BROWSING_DATA_TAB_PERIOD_HOUR" desc="The option to delete browsing data from the last hour.">
Last hour
</message>
@@ -178,30 +177,19 @@ diff --git a/chrome/browser/ui/browser_ui_prefs.cc b/chrome/browser/ui/browser_u
registry->RegisterInt64Pref(prefs::kDefaultBrowserLastDeclined, 0);
bool reset_check_default = false;
diff --git a/chrome/common/pref_names.cc b/chrome/common/pref_names.cc
--- a/chrome/common/pref_names.cc
+++ b/chrome/common/pref_names.cc
@@ -82,6 +82,10 @@ const char kForceEphemeralProfiles[] = "profile.ephemeral_mode";
// A boolean specifying whether the New Tab page is the home page or not.
const char kHomePageIsNewTabPage[] = "homepage_is_newtabpage";
+// A boolean specifying whether opening a new tab should open the Home page
+// instead of the New Tab page.
+const char kNewTabPageIsHomePage[] = "newtabpage_is_homepage";
+
// This is the URL of the page to load when opening new tabs.
const char kHomePage[] = "homepage";
diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h
--- a/chrome/common/pref_names.h
+++ b/chrome/common/pref_names.h
@@ -372,6 +372,7 @@ extern const char kRestrictedManagedGuestSessionExtensionCleanupExemptList[];
extern const char kUsedPolicyCertificates[];
#endif // BUILDFLAG(IS_CHROMEOS)
extern const char kShowHomeButton[];
+extern const char kNewTabPageIsHomePage[];
extern const char kSpeechRecognitionFilterProfanities[];
extern const char kAllowedDomainsForApps[];
#if BUILDFLAG(IS_CHROMEOS_LACROS)
@@ -1310,6 +1310,10 @@ inline constexpr char kUsedPolicyCertificates[] =
// visible on the toolbar.
inline constexpr char kShowHomeButton[] = "browser.show_home_button";
+// A boolean specifying whether opening a new tab should open the Home page
+// instead of the New Tab page.
+inline constexpr char kNewTabPageIsHomePage[] = "newtabpage_is_homepage";
+
// Boolean pref to define the default setting for "block offensive words".
// The old key value is kept to avoid unnecessary migration code.
inline constexpr char kSpeechRecognitionFilterProfanities[] =
--
2.25.1
+4 -4
View File
@@ -21,7 +21,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -146,6 +146,7 @@
@@ -144,6 +144,7 @@
#include "components/segmentation_platform/public/features.h"
#include "components/send_tab_to_self/features.h"
#include "components/services/heap_profiling/public/cpp/switches.h"
@@ -29,7 +29,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
#include "components/shared_highlighting/core/common/shared_highlighting_features.h"
#include "components/signin/core/browser/dice_account_reconcilor_delegate.h"
#include "components/signin/public/base/signin_buildflags.h"
@@ -9441,6 +9442,11 @@ const FeatureEntry kFeatureEntries[] = {
@@ -9560,6 +9561,11 @@ const FeatureEntry kFeatureEntries[] = {
kLargeFaviconFromGoogleVariations,
"LargeFaviconFromGoogle")},
@@ -44,7 +44,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
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
@@ -3694,6 +3694,11 @@ const char kSkipServiceWorkerFetchHandlerDescription[] =
@@ -3765,6 +3765,11 @@ const char kSkipServiceWorkerFetchHandlerDescription[] =
"Skips starting the service worker and run the fetch handler if the fetch "
"handler is recognized as skippable.";
@@ -59,7 +59,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -2143,6 +2143,9 @@ extern const char kReduceAcceptLanguageDescription[];
@@ -2195,6 +2195,9 @@ extern const char kReduceAcceptLanguageDescription[];
extern const char kSkipServiceWorkerFetchHandlerName[];
extern const char kSkipServiceWorkerFetchHandlerDescription[];
@@ -12,7 +12,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java
@@ -81,6 +81,7 @@ import org.chromium.components.browser_ui.settings.CustomDividerFragment;
@@ -83,6 +83,7 @@ import org.chromium.components.browser_ui.settings.CustomDividerFragment;
import org.chromium.components.browser_ui.settings.FragmentSettingsLauncher;
import org.chromium.components.browser_ui.settings.PaddedDividerItemDecoration;
import org.chromium.components.browser_ui.settings.SettingsLauncher;
@@ -20,7 +20,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Settin
import org.chromium.components.browser_ui.site_settings.SiteSettingsCategory;
import org.chromium.components.browser_ui.site_settings.SiteSettingsPreferenceFragment;
import org.chromium.components.browser_ui.util.TraceEventVectorDrawableCompat;
@@ -396,8 +397,12 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity
@@ -398,8 +399,12 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity
finish();
return true;
} else if (item.getItemId() == R.id.menu_id_general_help) {
+3 -3
View File
@@ -231,7 +231,7 @@ diff --git a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_ba
unsigned WebGLRenderingContextBase::CurrentMaxGLContexts() {
base::AutoLock locker(WebGLContextLimitLock());
DCHECK(webgl_context_limits_initialized_);
@@ -494,25 +501,6 @@ static String ExtractWebGLContextCreationError(
@@ -521,25 +528,6 @@ static String ExtractWebGLContextCreationError(
const Platform::GraphicsInfo& info) {
StringBuilder builder;
builder.Append("Could not create a WebGL context");
@@ -257,7 +257,7 @@ diff --git a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_ba
FormatWebGLStatusString("ErrorMessage", info.error_message.Utf8().c_str(),
builder);
builder.Append('.');
@@ -572,6 +560,12 @@ WebGLRenderingContextBase::CreateWebGraphicsContext3DProvider(
@@ -599,6 +587,12 @@ WebGLRenderingContextBase::CreateWebGraphicsContext3DProvider(
const CanvasContextCreationAttributesCore& attributes,
Platform::ContextType context_type,
Platform::GraphicsInfo* graphics_info) {
@@ -273,7 +273,7 @@ diff --git a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_ba
diff --git a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.h b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.h
--- a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.h
+++ b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.h
@@ -1933,6 +1933,8 @@ class MODULES_EXPORT WebGLRenderingContextBase : public CanvasRenderingContext,
@@ -1936,6 +1936,8 @@ class MODULES_EXPORT WebGLRenderingContextBase : public CanvasRenderingContext,
DOMArrayBufferView* pixels,
int64_t offset);
+6 -6
View File
@@ -209,16 +209,16 @@ diff --git a/third_party/blink/renderer/modules/peerconnection/peer_connection_d
diff --git a/third_party/blink/renderer/modules/peerconnection/rtc_rtp_receiver.cc b/third_party/blink/renderer/modules/peerconnection/rtc_rtp_receiver.cc
--- a/third_party/blink/renderer/modules/peerconnection/rtc_rtp_receiver.cc
+++ b/third_party/blink/renderer/modules/peerconnection/rtc_rtp_receiver.cc
@@ -11,6 +11,8 @@
#include "third_party/blink/public/common/privacy_budget/identifiability_study_settings.h"
@@ -12,6 +12,8 @@
#include "third_party/blink/public/common/privacy_budget/identifiable_surface.h"
#include "third_party/blink/public/common/privacy_budget/identifiable_token_builder.h"
#include "third_party/blink/public/platform/modules/webrtc/webrtc_logging.h"
+#include "third_party/blink/public/platform/web_content_settings_client.h"
+#include "third_party/blink/public/web/web_local_frame.h"
#include "third_party/blink/renderer/bindings/core/v8/script_promise_resolver.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_rtc_insertable_streams.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_rtc_rtcp_parameters.h"
@@ -251,6 +253,14 @@ RTCRtpCapabilities* RTCRtpReceiver::getCapabilities(ScriptState* state,
@@ -255,6 +257,14 @@ RTCRtpCapabilities* RTCRtpReceiver::getCapabilities(ScriptState* state,
if (kind != "audio" && kind != "video")
return nullptr;
@@ -236,16 +236,16 @@ diff --git a/third_party/blink/renderer/modules/peerconnection/rtc_rtp_receiver.
diff --git a/third_party/blink/renderer/modules/peerconnection/rtc_rtp_sender.cc b/third_party/blink/renderer/modules/peerconnection/rtc_rtp_sender.cc
--- a/third_party/blink/renderer/modules/peerconnection/rtc_rtp_sender.cc
+++ b/third_party/blink/renderer/modules/peerconnection/rtc_rtp_sender.cc
@@ -16,6 +16,8 @@
#include "third_party/blink/public/common/privacy_budget/identifiability_study_settings.h"
@@ -17,6 +17,8 @@
#include "third_party/blink/public/common/privacy_budget/identifiable_surface.h"
#include "third_party/blink/public/common/privacy_budget/identifiable_token_builder.h"
#include "third_party/blink/public/platform/modules/webrtc/webrtc_logging.h"
+#include "third_party/blink/public/platform/web_content_settings_client.h"
+#include "third_party/blink/public/web/web_local_frame.h"
#include "third_party/blink/renderer/bindings/core/v8/script_promise_resolver.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_rtc_insertable_streams.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_rtc_rtcp_parameters.h"
@@ -946,6 +948,14 @@ RTCRtpCapabilities* RTCRtpSender::getCapabilities(ScriptState* state,
@@ -950,6 +952,14 @@ RTCRtpCapabilities* RTCRtpSender::getCapabilities(ScriptState* state,
if (kind != "audio" && kind != "video")
return nullptr;
@@ -40,7 +40,7 @@ diff --git a/chrome/browser/net/chrome_report_sender.cc b/chrome/browser/net/chr
diff --git a/content/browser/devtools/protocol/network_handler.cc b/content/browser/devtools/protocol/network_handler.cc
--- a/content/browser/devtools/protocol/network_handler.cc
+++ b/content/browser/devtools/protocol/network_handler.cc
@@ -1306,6 +1306,7 @@ String BuildReportStatus(const net::ReportingReport::Status status) {
@@ -1299,6 +1299,7 @@ String BuildReportStatus(const net::ReportingReport::Status status) {
}
}
@@ -48,7 +48,7 @@ diff --git a/content/browser/devtools/protocol/network_handler.cc b/content/brow
std::vector<GURL> ComputeReportingURLs(RenderFrameHostImpl* frame_host) {
std::vector<GURL> urls;
frame_host->ForEachRenderFrameHostWithAction(
@@ -1319,6 +1320,7 @@ std::vector<GURL> ComputeReportingURLs(RenderFrameHostImpl* frame_host) {
@@ -1312,6 +1313,7 @@ std::vector<GURL> ComputeReportingURLs(RenderFrameHostImpl* frame_host) {
});
return urls;
}
@@ -200,7 +200,7 @@ diff --git a/content/browser/network/reporting_service_proxy.cc b/content/browse
diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc
--- a/content/browser/renderer_host/render_frame_host_impl.cc
+++ b/content/browser/renderer_host/render_frame_host_impl.cc
@@ -13027,12 +13027,6 @@ void RenderFrameHostImpl::MaybeGenerateCrashReport(
@@ -13368,12 +13368,6 @@ void RenderFrameHostImpl::MaybeGenerateCrashReport(
base::Value::Dict body;
if (!reason.empty())
body.Set("reason", reason);
@@ -246,7 +246,7 @@ diff --git a/content/public/common/content_switch_dependent_feature_overrides.cc
diff --git a/net/base/features.cc b/net/base/features.cc
--- a/net/base/features.cc
+++ b/net/base/features.cc
@@ -222,7 +222,7 @@ extern const base::FeatureParam<base::TimeDelta> kTimeoutTcpConnectAttemptMax(
@@ -242,7 +242,7 @@ extern const base::FeatureParam<base::TimeDelta> kTimeoutTcpConnectAttemptMax(
#if BUILDFLAG(ENABLE_REPORTING)
BASE_FEATURE(kDocumentReporting,
"DocumentReporting",
@@ -307,7 +307,7 @@ diff --git a/services/network/public/cpp/features.cc b/services/network/public/c
diff --git a/services/network/public/mojom/BUILD.gn b/services/network/public/mojom/BUILD.gn
--- a/services/network/public/mojom/BUILD.gn
+++ b/services/network/public/mojom/BUILD.gn
@@ -1382,7 +1382,6 @@ mojom("mojom") {
@@ -1431,7 +1431,6 @@ mojom("mojom") {
export_define_blink = "BLINK_PLATFORM_IMPLEMENTATION=1"
export_header_blink = "third_party/blink/public/platform/web_common.h"
if (enable_reporting) {
@@ -318,7 +318,7 @@ diff --git a/services/network/public/mojom/BUILD.gn b/services/network/public/mo
diff --git a/services/network/public/mojom/network_context.mojom b/services/network/public/mojom/network_context.mojom
--- a/services/network/public/mojom/network_context.mojom
+++ b/services/network/public/mojom/network_context.mojom
@@ -1118,6 +1118,7 @@ interface NetworkContext {
@@ -1169,6 +1169,7 @@ interface NetworkContext {
// provided |network_isolation_key|.
//
// Spec: https://w3c.github.io/reporting/#concept-reports
@@ -326,7 +326,7 @@ diff --git a/services/network/public/mojom/network_context.mojom b/services/netw
QueueReport(string type,
string group,
url.mojom.Url url,
@@ -1131,6 +1132,7 @@ interface NetworkContext {
@@ -1182,6 +1183,7 @@ interface NetworkContext {
// Note that this queued report will never be delivered if no reporting
// endpoint matching is registered for with the provided
// |network_isolation_key|.
@@ -372,7 +372,7 @@ diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/
#include "services/network/public/cpp/features.h"
#include "services/network/public/mojom/content_security_policy.mojom-blink.h"
#include "services/network/public/mojom/source_location.mojom-blink.h"
@@ -2510,9 +2511,11 @@ void LocalFrame::MainFrameInteractive() {
@@ -2504,9 +2505,11 @@ void LocalFrame::MainFrameInteractive() {
}
}
@@ -398,7 +398,7 @@ diff --git a/third_party/blink/renderer/core/frame/local_frame.h b/third_party/b
#include "services/device/public/mojom/device_posture_provider.mojom-blink-forward.h"
#include "services/metrics/public/cpp/ukm_source_id.h"
#include "services/network/public/mojom/fetch_api.mojom-blink-forward.h"
@@ -630,9 +630,9 @@ class CORE_EXPORT LocalFrame final
@@ -629,9 +629,9 @@ class CORE_EXPORT LocalFrame final
void FinishedScrollSequence();
SmoothScrollSequencer* GetSmoothScrollSequencer() const;
@@ -7,17 +7,16 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
chrome/android/BUILD.gn | 1 -
chrome/android/chrome_java_sources.gni | 1 -
chrome/browser/BUILD.gn | 6 ------
chrome/browser/about_flags.cc | 4 ++++
components/supervised_user/buildflags.gni | 6 +-----
5 files changed, 5 insertions(+), 13 deletions(-)
4 files changed, 1 insertion(+), 13 deletions(-)
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
--- a/chrome/android/BUILD.gn
+++ b/chrome/android/BUILD.gn
@@ -3420,7 +3420,6 @@ generate_jni("chrome_jni_headers") {
@@ -3488,7 +3488,6 @@ generate_jni("chrome_jni_headers") {
"java/src/org/chromium/chrome/browser/status_indicator/StatusIndicatorSceneLayer.java",
"java/src/org/chromium/chrome/browser/suggestions/mostvisited/MostVisitedSites.java",
"java/src/org/chromium/chrome/browser/suggestions/mostvisited/MostVisitedSitesBridge.java",
"java/src/org/chromium/chrome/browser/supervised_user/ChildAccountFeedbackReporter.java",
- "java/src/org/chromium/chrome/browser/supervised_user/ChildAccountService.java",
"java/src/org/chromium/chrome/browser/sync/TrustedVaultClient.java",
"java/src/org/chromium/chrome/browser/tab/TabBrowserControlsConstraintsHelper.java",
@@ -25,10 +24,10 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni
--- a/chrome/android/chrome_java_sources.gni
+++ b/chrome/android/chrome_java_sources.gni
@@ -1051,7 +1051,6 @@ chrome_java_sources = [
@@ -1060,7 +1060,6 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/suggestions/tile/TileGroupDelegateImpl.java",
"java/src/org/chromium/chrome/browser/suggestions/tile/TileRenderer.java",
"java/src/org/chromium/chrome/browser/suggestions/tile/TopSitesTileView.java",
"java/src/org/chromium/chrome/browser/supervised_user/ChildAccountFeedbackReporter.java",
- "java/src/org/chromium/chrome/browser/supervised_user/ChildAccountService.java",
"java/src/org/chromium/chrome/browser/survey/ChromeSurveyController.java",
"java/src/org/chromium/chrome/browser/survey/SurveyController.java",
@@ -36,7 +35,7 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -3003,8 +3003,6 @@ static_library("browser") {
@@ -3074,8 +3074,6 @@ static_library("browser") {
"feed/android/refresh_task_scheduler_impl.cc",
"feed/android/refresh_task_scheduler_impl.h",
"feed/android/web_feed_bridge.cc",
@@ -45,7 +44,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
"file_select_helper_contacts_android.cc",
"file_select_helper_contacts_android.h",
"first_run/android/first_run_prefs.cc",
@@ -3219,10 +3217,6 @@ static_library("browser") {
@@ -3290,10 +3288,6 @@ static_library("browser") {
"ssl/chrome_security_state_model_delegate.h",
"ssl/known_interception_disclosure_infobar.cc",
"ssl/known_interception_disclosure_infobar.h",
@@ -56,39 +55,6 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
"sync/glue/synced_tab_delegate_android.cc",
"sync/glue/synced_tab_delegate_android.h",
"sync/glue/synced_window_delegate_android.cc",
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -1495,6 +1495,7 @@ const FeatureEntry::FeatureVariation kJourneysLabelsVariations[] = {
};
#if BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_ANDROID)
+#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
const FeatureEntry::FeatureParam kLocalWebApprovalsPreferLocalParams[] = {
{"preferred_button", "local"}};
const FeatureEntry::FeatureParam kLocalWebApprovalsPreferRemoteParams[] = {
@@ -1506,6 +1507,7 @@ const FeatureEntry::FeatureVariation kLocalWebApprovalsVariations[] = {
std::size(kLocalWebApprovalsPreferRemoteParams), nullptr},
};
#endif
+#endif
const FeatureEntry::FeatureParam kChromeRefresh2023Level1[] = {{"level", "1"}};
@@ -7693,11 +7695,13 @@ const FeatureEntry kFeatureEntries[] = {
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
#if BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_ANDROID)
+#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
{"enable-local-web-approvals", flag_descriptions::kLocalWebApprovalsName,
flag_descriptions::kLocalWebApprovalsDescription, kOsCrOS | kOsAndroid,
FEATURE_WITH_PARAMS_VALUE_TYPE(supervised_user::kLocalWebApprovals,
kLocalWebApprovalsVariations,
"LocalWebApprovals")},
+#endif
#endif // BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_ANDROID)
#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
diff --git a/components/supervised_user/buildflags.gni b/components/supervised_user/buildflags.gni
--- a/components/supervised_user/buildflags.gni
+++ b/components/supervised_user/buildflags.gni
@@ -24,7 +24,7 @@ diff --git a/third_party/blink/renderer/platform/media/web_media_player_impl.cc
void WebMediaPlayerImpl::EnabledAudioTracksChanged(
const WebVector<WebMediaPlayer::TrackId>& enabledTrackIds) {
DCHECK(main_task_runner_->BelongsToCurrentThread());
@@ -3503,7 +3509,10 @@ bool WebMediaPlayerImpl::ShouldPausePlaybackWhenHidden() const {
@@ -3513,7 +3519,10 @@ bool WebMediaPlayerImpl::ShouldPausePlaybackWhenHidden() const {
: HasAudio();
// Audio only stream is allowed to play when in background.
@@ -12,7 +12,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java
@@ -151,10 +151,6 @@ public class HomepageManager implements HomepagePolicyManager.HomepagePolicyStat
@@ -152,10 +152,6 @@ public class HomepageManager implements HomepagePolicyManager.HomepagePolicyStat
* if the homepage button is force enabled via flag.
*/
public static String getDefaultHomepageUri() {

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