Patches for v137 (need some work)
This commit is contained in:
@@ -4,19 +4,22 @@ Subject: Add Alt+D hotkey to focus address bar
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
.../java/src/org/chromium/chrome/browser/KeyboardShortcuts.java | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
.../src/org/chromium/chrome/browser/KeyboardShortcuts.java | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java b/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java
|
||||
@@ -628,6 +628,8 @@ public class KeyboardShortcuts {
|
||||
R.string.keyboard_shortcut_address_bar,
|
||||
KeyEvent.KEYCODE_L,
|
||||
KeyEvent.META_CTRL_ON);
|
||||
+ addShortcut(context, chromeFeatureShortcutGroup, R.string.keyboard_shortcut_address_bar,
|
||||
+ KeyEvent.KEYCODE_D, KeyEvent.META_ALT_ON);
|
||||
shortcutGroups.add(chromeFeatureShortcutGroup);
|
||||
@@ -830,6 +830,11 @@ public class KeyboardShortcuts {
|
||||
KeyEvent.KEYCODE_B,
|
||||
(KeyEvent.META_CTRL_ON | KeyEvent.META_SHIFT_ON));
|
||||
}
|
||||
+ addShortcut(context,
|
||||
+ shortcutGroupsById.get(R.string.keyboard_shortcut_chrome_feature_group_header),
|
||||
+ R.string.keyboard_shortcut_address_bar,
|
||||
+ KeyEvent.KEYCODE_D,
|
||||
+ KeyEvent.META_ALT_ON);
|
||||
return new ArrayList<>(shortcutGroupsById.values());
|
||||
}
|
||||
|
||||
KeyboardShortcutGroup webpageShortcutGroup =
|
||||
--
|
||||
|
||||
@@ -26,12 +26,12 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
.../AlwaysIncognitoLinkInterceptor.java | 54 ++++++
|
||||
.../chrome/browser/ChromeTabbedActivity.java | 28 ++-
|
||||
.../chrome/browser/app/ChromeActivity.java | 4 +
|
||||
.../AppMenuPropertiesDelegateImpl.java | 28 ++-
|
||||
.../AppMenuPropertiesDelegateImpl.java | 7 +-
|
||||
.../ChromeContextMenuPopulator.java | 6 +-
|
||||
.../CustomTabActivityLifecycleUmaTracker.java | 39 -----
|
||||
.../CustomTabAppMenuPropertiesDelegate.java | 4 +
|
||||
.../CustomTabIntentDataProvider.java | 10 ++
|
||||
.../browser/download/DownloadUtils.java | 16 +-
|
||||
.../browser/download/DownloadUtils.java | 13 +-
|
||||
.../history/HistoryContentManager.java | 7 +-
|
||||
.../browser/history/HistoryManager.java | 27 ++-
|
||||
.../chrome/browser/history/HistoryPage.java | 16 ++
|
||||
@@ -42,6 +42,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
.../HistoricalTabModelObserver.java | 5 +-
|
||||
.../tab/tab_restore/HistoricalTabSaver.java | 2 +-
|
||||
.../tab_restore/HistoricalTabSaverImpl.java | 17 +-
|
||||
.../TabbedAppMenuPropertiesDelegate.java | 17 +-
|
||||
.../tabbed_mode/TabbedRootUiCoordinator.java | 4 +-
|
||||
.../browser/tabmodel/ChromeTabCreator.java | 5 +-
|
||||
.../tabmodel/TabModelSelectorImpl.java | 3 +
|
||||
@@ -68,6 +69,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
chrome/browser/profiles/profile_selections.h | 7 +-
|
||||
.../browser/ui/android/native_page/BUILD.gn | 2 +
|
||||
.../browser/ui/native_page/NativePage.java | 22 ++-
|
||||
.../browser/omnibox/LocationBarMediator.java | 12 +-
|
||||
.../strings/android_chrome_strings.grd | 25 +++
|
||||
.../browser/toolbar/LocationBarModel.java | 5 +-
|
||||
chrome/browser/ui/messages/android/BUILD.gn | 1 +
|
||||
@@ -86,7 +88,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
.../add-an-always-incognito-mode.inc | 1 +
|
||||
.../add-an-always-incognito-mode.inc | 3 +
|
||||
.../add-an-always-incognito-mode.inc | 1 +
|
||||
67 files changed, 796 insertions(+), 112 deletions(-)
|
||||
69 files changed, 800 insertions(+), 113 deletions(-)
|
||||
create mode 100644 chrome/android/java/res/xml/incognito_preferences.xml
|
||||
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/AlwaysIncognitoLinkInterceptor.java
|
||||
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/IncognitoSettings.java
|
||||
@@ -99,7 +101,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_java_resources.gni
|
||||
--- a/chrome/android/chrome_java_resources.gni
|
||||
+++ b/chrome/android/chrome_java_resources.gni
|
||||
@@ -645,6 +645,7 @@ chrome_java_resources = [
|
||||
@@ -648,6 +648,7 @@ chrome_java_resources = [
|
||||
"java/res/xml/main_preferences_legacy.xml",
|
||||
"java/res/xml/manage_sync_preferences.xml",
|
||||
"java/res/xml/personalize_google_services_preferences.xml",
|
||||
@@ -118,7 +120,7 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java
|
||||
"java/src/com/google/android/apps/chrome/appwidget/bookmarks/BookmarkThumbnailWidgetProvider.java",
|
||||
"java/src/org/chromium/chrome/browser/ActivityTabProvider.java",
|
||||
"java/src/org/chromium/chrome/browser/ActivityUtils.java",
|
||||
@@ -880,6 +881,7 @@ chrome_java_sources = [
|
||||
@@ -898,6 +899,7 @@ chrome_java_sources = [
|
||||
"java/src/org/chromium/chrome/browser/privacy/settings/IncognitoLockSettings.java",
|
||||
"java/src/org/chromium/chrome/browser/privacy/settings/PrivacyPreferencesManagerImpl.java",
|
||||
"java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java",
|
||||
@@ -171,7 +173,7 @@ new file mode 100644
|
||||
diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml
|
||||
--- a/chrome/android/java/res/xml/privacy_preferences.xml
|
||||
+++ b/chrome/android/java/res/xml/privacy_preferences.xml
|
||||
@@ -91,6 +91,11 @@ found in the LICENSE file.
|
||||
@@ -90,6 +90,11 @@ found in the LICENSE file.
|
||||
android:key="secure_dns"
|
||||
android:title="@string/settings_secure_dns_title"
|
||||
android:fragment="org.chromium.chrome.browser.privacy.secure_dns.SecureDnsSettings" />
|
||||
@@ -245,7 +247,7 @@ new file mode 100644
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
|
||||
@@ -72,6 +72,10 @@ import org.chromium.base.task.TaskTraits;
|
||||
@@ -73,6 +73,10 @@ import org.chromium.base.task.TaskTraits;
|
||||
import org.chromium.build.annotations.UsedByReflection;
|
||||
import org.chromium.cc.input.BrowserControlsState;
|
||||
import org.chromium.chrome.R;
|
||||
@@ -256,7 +258,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
|
||||
import org.chromium.chrome.browser.IntentHandler.ExternalAppId;
|
||||
import org.chromium.chrome.browser.IntentHandler.TabOpenType;
|
||||
import org.chromium.chrome.browser.app.ChromeActivity;
|
||||
@@ -705,14 +709,19 @@ public class ChromeTabbedActivity extends ChromeActivity {
|
||||
@@ -720,14 +724,19 @@ public class ChromeTabbedActivity extends ChromeActivity {
|
||||
|
||||
Profile profile = mTabModelSelector.getCurrentModel().getProfile();
|
||||
// For saving non-incognito tab closures for Recent Tabs.
|
||||
@@ -283,7 +285,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
|
||||
// Defer creation of this helper so it triggers after TabGroupModelFilter observers.
|
||||
mUndoRefocusHelper =
|
||||
new UndoRefocusHelper(
|
||||
@@ -2733,8 +2742,9 @@ public class ChromeTabbedActivity extends ChromeActivity {
|
||||
@@ -2798,8 +2807,9 @@ public class ChromeTabbedActivity extends ChromeActivity {
|
||||
|
||||
// We determine the model as soon as possible so every systems get initialized coherently.
|
||||
boolean startIncognito =
|
||||
@@ -304,9 +306,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
|
||||
import org.chromium.chrome.browser.devtools.DevToolsWindowAndroid;
|
||||
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
|
||||
import org.chromium.chrome.browser.dom_distiller.DomDistillerUiUtils;
|
||||
import org.chromium.chrome.browser.dom_distiller.ReaderModeManager;
|
||||
import org.chromium.chrome.browser.download.DownloadManagerService;
|
||||
import org.chromium.chrome.browser.download.DownloadUtils;
|
||||
@@ -1977,6 +1978,9 @@ public abstract class ChromeActivity extends AsyncInitializationActivity
|
||||
@@ -1967,6 +1968,9 @@ public abstract class ChromeActivity extends AsyncInitializationActivity
|
||||
throw new IllegalStateException(
|
||||
"Attempting to access TabCreator before initialization");
|
||||
}
|
||||
@@ -319,58 +321,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java
|
||||
@@ -41,6 +41,8 @@ import org.chromium.build.BuildConfig;
|
||||
import org.chromium.chrome.R;
|
||||
import org.chromium.chrome.browser.ActivityTabProvider;
|
||||
import org.chromium.chrome.browser.ai.AiAssistantService;
|
||||
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
|
||||
+import org.chromium.chrome.browser.profiles.ProfileManager;
|
||||
import org.chromium.chrome.browser.bookmarks.BookmarkModel;
|
||||
import org.chromium.chrome.browser.bookmarks.PowerBookmarkUtils;
|
||||
import org.chromium.chrome.browser.commerce.ShoppingServiceFactory;
|
||||
@@ -106,6 +108,10 @@ import java.util.ArrayList;
|
||||
@@ -89,6 +89,8 @@ import java.util.ArrayList;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
|
||||
+import org.chromium.components.prefs.PrefService;
|
||||
+import org.chromium.components.user_prefs.UserPrefs;
|
||||
+import org.chromium.chrome.browser.preferences.Pref;
|
||||
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
|
||||
+
|
||||
/**
|
||||
* Base implementation of {@link AppMenuPropertiesDelegate} that handles hiding and showing menu
|
||||
* items based on activity state.
|
||||
@@ -617,6 +623,13 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
|
||||
}
|
||||
|
||||
private void prepareCommonMenuItems(Menu menu, @MenuGroup int menuGroup, boolean isIncognito) {
|
||||
+ boolean always_incognito = AlwaysIncognitoLinkInterceptor.isAlwaysIncognito();
|
||||
+ if (always_incognito) {
|
||||
+ final MenuItem newTabOption = menu.findItem(R.id.new_tab_menu_id);
|
||||
+ if (newTabOption != null)
|
||||
+ newTabOption.setVisible(false);
|
||||
+ }
|
||||
+
|
||||
// We have to iterate all menu items since same menu item ID may be associated with more
|
||||
// than one menu items.
|
||||
boolean isOverviewModeMenu = menuGroup == MenuGroup.OVERVIEW_MODE_MENU;
|
||||
@@ -676,7 +689,15 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
|
||||
}
|
||||
|
||||
if (item.getItemId() == R.id.recent_tabs_menu_id) {
|
||||
- item.setVisible(!isIncognito);
|
||||
+ if (always_incognito) {
|
||||
+ PrefService prefService =
|
||||
+ UserPrefs.get(ProfileManager.getLastUsedRegularProfile());
|
||||
+ boolean historyEnabledInIncognito =
|
||||
+ prefService.getBoolean(Pref.INCOGNITO_TAB_HISTORY_ENABLED);
|
||||
+ item.setVisible(historyEnabledInIncognito);
|
||||
+ }
|
||||
+ else
|
||||
+ item.setVisible(!isIncognito);
|
||||
}
|
||||
if (item.getItemId() == R.id.menu_select_tabs) {
|
||||
item.setVisible(isMenuSelectTabsVisible);
|
||||
@@ -884,8 +905,9 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
|
||||
@@ -494,8 +496,9 @@ public abstract class AppMenuPropertiesDelegateImpl implements AppMenuProperties
|
||||
&& !isNativePage
|
||||
&& !isFileScheme
|
||||
&& !isContentScheme
|
||||
@@ -385,7 +345,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java
|
||||
@@ -29,6 +29,7 @@ import org.chromium.base.ContextUtils;
|
||||
@@ -31,6 +31,7 @@ import org.chromium.base.metrics.RecordUserAction;
|
||||
import org.chromium.base.shared_preferences.SharedPreferencesManager;
|
||||
import org.chromium.base.supplier.Supplier;
|
||||
import org.chromium.chrome.R;
|
||||
@@ -393,7 +353,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr
|
||||
import org.chromium.chrome.browser.bookmarks.BookmarkUtils;
|
||||
import org.chromium.chrome.browser.contextmenu.ChromeContextMenuItem.Item;
|
||||
import org.chromium.chrome.browser.contextmenu.ContextMenuCoordinator.ListItemType;
|
||||
@@ -293,6 +294,9 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
|
||||
@@ -347,6 +348,9 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
|
||||
public List<Pair<Integer, ModelList>> buildContextMenu() {
|
||||
mShowEphemeralTabNewLabel = null;
|
||||
|
||||
@@ -403,7 +363,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr
|
||||
List<Pair<Integer, ModelList>> groupedItems = new ArrayList<>();
|
||||
|
||||
if (mParams.isPage() && shouldShowEmptySpaceContextMenu()) {
|
||||
@@ -350,7 +354,7 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
|
||||
@@ -417,7 +421,7 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
|
||||
}
|
||||
}
|
||||
if (FirstRunStatus.getFirstRunFlowComplete()) {
|
||||
@@ -472,7 +432,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;
|
||||
@@ -218,6 +219,9 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat
|
||||
@@ -224,6 +225,9 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat
|
||||
openInChromeItemVisible = false;
|
||||
tryAddingReadAloud = false;
|
||||
}
|
||||
@@ -485,7 +445,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java
|
||||
@@ -86,6 +86,9 @@ import org.chromium.components.embedder_support.util.UrlConstants;
|
||||
@@ -93,6 +93,9 @@ import org.chromium.components.embedder_support.util.UrlConstants;
|
||||
import org.chromium.device.mojom.ScreenOrientationLockType;
|
||||
import org.chromium.net.NetId;
|
||||
|
||||
@@ -531,24 +491,21 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/Downlo
|
||||
/** A class containing some utility static methods. */
|
||||
public class DownloadUtils {
|
||||
private static final String TAG = "download";
|
||||
@@ -302,7 +307,16 @@ public class DownloadUtils {
|
||||
// Offline pages isn't supported in Incognito. This should be checked before calling
|
||||
// OfflinePageBridge.getForProfile because OfflinePageBridge instance will not be found
|
||||
// for incognito profile.
|
||||
- if (tab.isIncognito()) return false;
|
||||
+ boolean always_incognito = AlwaysIncognitoLinkInterceptor.isAlwaysIncognito();
|
||||
+ if (always_incognito) {
|
||||
+ PrefService prefService = UserPrefs.get(ProfileManager.getLastUsedRegularProfile());
|
||||
+ boolean historyEnabledInIncognito =
|
||||
+ prefService.getBoolean(Pref.INCOGNITO_TAB_HISTORY_ENABLED);
|
||||
+ if (historyEnabledInIncognito == false)
|
||||
+ return false;
|
||||
+ } else {
|
||||
+ if (tab.isIncognito()) return false;
|
||||
+ }
|
||||
@@ -302,7 +307,13 @@ public class DownloadUtils {
|
||||
public static boolean isAllowedToDownloadPage(Tab tab) {
|
||||
if (tab == null) return false;
|
||||
|
||||
// Check if the page url is supported for saving. Only HTTP and HTTPS pages are allowed.
|
||||
if (!OfflinePageBridge.canSavePage(tab.getUrl())) return false;
|
||||
- if (tab.isIncognito()
|
||||
+ boolean historyEnabledInIncognito = false;
|
||||
+ if (AlwaysIncognitoLinkInterceptor.isAlwaysIncognito()) {
|
||||
+ PrefService prefService = UserPrefs.get(ProfileManager.getLastUsedRegularProfile());
|
||||
+ historyEnabledInIncognito =
|
||||
+ prefService.getBoolean(Pref.INCOGNITO_TAB_HISTORY_ENABLED);
|
||||
+ }
|
||||
+ if (tab.isIncognito() && !historyEnabledInIncognito
|
||||
&& !ChromeFeatureList.isEnabled(
|
||||
ChromeFeatureList.ENABLE_SAVE_PACKAGE_FOR_OFF_THE_RECORD)) {
|
||||
return false;
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryContentManager.java b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryContentManager.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryContentManager.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryContentManager.java
|
||||
@@ -917,7 +874,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Fragme
|
||||
import org.chromium.components.browser_ui.accessibility.AccessibilitySettings;
|
||||
import org.chromium.components.browser_ui.bottomsheet.BottomSheetController;
|
||||
import org.chromium.components.browser_ui.settings.FragmentSettingsNavigation;
|
||||
@@ -239,6 +240,9 @@ public class FragmentDependencyProvider extends FragmentManager.FragmentLifecycl
|
||||
@@ -244,6 +245,9 @@ public class FragmentDependencyProvider extends FragmentManager.FragmentLifecycl
|
||||
SigninAndHistorySyncActivityLauncherImpl.get(),
|
||||
new SettingsCustomTabLauncherImpl()));
|
||||
}
|
||||
@@ -1033,10 +990,51 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore
|
||||
|
||||
void createHistoricalGroup(
|
||||
TabModel model,
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java
|
||||
@@ -24,6 +24,7 @@ import org.chromium.base.supplier.Supplier;
|
||||
import org.chromium.build.BuildConfig;
|
||||
import org.chromium.build.annotations.Nullable;
|
||||
import org.chromium.chrome.R;
|
||||
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
|
||||
import org.chromium.chrome.browser.ActivityTabProvider;
|
||||
import org.chromium.chrome.browser.ai.AiAssistantService;
|
||||
import org.chromium.chrome.browser.app.appmenu.AppMenuPropertiesDelegateImpl;
|
||||
@@ -316,6 +317,13 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm
|
||||
}
|
||||
|
||||
private void prepareCommonMenuItems(Menu menu, @MenuGroup int menuGroup, boolean isIncognito) {
|
||||
+ boolean always_incognito = AlwaysIncognitoLinkInterceptor.isAlwaysIncognito();
|
||||
+ if (always_incognito) {
|
||||
+ final MenuItem newTabOption = menu.findItem(R.id.new_tab_menu_id);
|
||||
+ if (newTabOption != null)
|
||||
+ newTabOption.setVisible(false);
|
||||
+ }
|
||||
+
|
||||
// We have to iterate all menu items since same menu item ID may be associated with more
|
||||
// than one menu items.
|
||||
boolean isOverviewModeMenu = menuGroup == MenuGroup.OVERVIEW_MODE_MENU;
|
||||
@@ -375,7 +383,14 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm
|
||||
}
|
||||
|
||||
if (item.getItemId() == R.id.recent_tabs_menu_id) {
|
||||
- item.setVisible(!isIncognito);
|
||||
+ if (always_incognito) {
|
||||
+ boolean historyEnabledInIncognito =
|
||||
+ UserPrefs.get(currentTab.getProfile()).getBoolean(Pref.INCOGNITO_TAB_HISTORY_ENABLED);
|
||||
+ item.setVisible(historyEnabledInIncognito);
|
||||
+ }
|
||||
+ else {
|
||||
+ item.setVisible(!isIncognito);
|
||||
+ }
|
||||
}
|
||||
if (item.getItemId() == R.id.menu_select_tabs) {
|
||||
item.setVisible(isMenuSelectTabsVisible);
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java
|
||||
@@ -201,6 +201,8 @@ import org.chromium.ui.InsetObserver;
|
||||
@@ -207,6 +207,8 @@ import org.chromium.ui.InsetObserver;
|
||||
import org.chromium.ui.UiUtils;
|
||||
import org.chromium.ui.base.ActivityWindowAndroid;
|
||||
import org.chromium.ui.base.DeviceFormFactor;
|
||||
@@ -1045,7 +1043,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab
|
||||
import org.chromium.ui.base.IntentRequestTracker;
|
||||
import org.chromium.ui.base.LocalizationUtils;
|
||||
import org.chromium.ui.dragdrop.DragDropGlobalState;
|
||||
@@ -1174,7 +1176,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator {
|
||||
@@ -1182,7 +1184,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator {
|
||||
() -> {
|
||||
mTabCreatorManagerSupplier
|
||||
.get()
|
||||
@@ -1068,7 +1066,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
|
||||
/** This class creates various kinds of new tabs and adds them to the right {@link TabModel}. */
|
||||
public class ChromeTabCreator extends TabCreator
|
||||
implements NeedsTabModel, NeedsTabModelOrderController {
|
||||
@@ -520,7 +524,6 @@ public class ChromeTabCreator extends TabCreator
|
||||
@@ -523,7 +527,6 @@ public class ChromeTabCreator extends TabCreator
|
||||
// TODO(crbug.com/40691614): Clean up the launches from SearchActivity/Chrome.
|
||||
public Tab launchUrlFromExternalApp(
|
||||
LoadUrlParams loadUrlParams, String appId, boolean forceNewTab, Intent intent) {
|
||||
@@ -1085,9 +1083,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabMod
|
||||
import org.chromium.base.supplier.Supplier;
|
||||
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
|
||||
import org.chromium.chrome.browser.flags.ActivityType;
|
||||
import org.chromium.chrome.browser.flags.ChromeFeatureList;
|
||||
import org.chromium.chrome.browser.ntp.RecentlyClosedBridge;
|
||||
import org.chromium.chrome.browser.profiles.ProfileProvider;
|
||||
@@ -121,6 +122,8 @@ public class TabModelSelectorImpl extends TabModelSelectorBase implements TabMod
|
||||
@@ -119,6 +120,8 @@ public class TabModelSelectorImpl extends TabModelSelectorBase implements TabMod
|
||||
ProfileProvider profileProvider = mProfileProviderSupplier.get();
|
||||
assert profileProvider != null;
|
||||
|
||||
@@ -1099,7 +1097,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabMod
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java
|
||||
@@ -50,6 +50,8 @@ import org.chromium.chrome.browser.tabpersistence.TabStateFileManager;
|
||||
@@ -51,6 +51,8 @@ import org.chromium.chrome.browser.tabwindow.TabWindowManager;
|
||||
import org.chromium.components.embedder_support.util.UrlUtilities;
|
||||
import org.chromium.content_public.browser.LoadUrlParams;
|
||||
|
||||
@@ -1108,7 +1106,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPer
|
||||
import java.io.BufferedInputStream;
|
||||
import java.io.BufferedOutputStream;
|
||||
import java.io.ByteArrayInputStream;
|
||||
@@ -833,6 +835,13 @@ public class TabPersistentStore {
|
||||
@@ -835,6 +837,13 @@ public class TabPersistentStore {
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1131,9 +1129,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/Toolbar
|
||||
import org.chromium.chrome.browser.ActivityTabProvider;
|
||||
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
|
||||
import org.chromium.chrome.browser.IntentHandler;
|
||||
import org.chromium.chrome.browser.app.tabmodel.TabWindowManagerSingleton;
|
||||
import org.chromium.chrome.browser.app.tabwindow.TabWindowManagerSingleton;
|
||||
import org.chromium.chrome.browser.back_press.BackPressManager;
|
||||
@@ -754,7 +755,7 @@ public class ToolbarManager
|
||||
@@ -807,7 +808,7 @@ public class ToolbarManager
|
||||
TraceEvent.end("isOfflinePage");
|
||||
return ret;
|
||||
}
|
||||
@@ -1257,8 +1255,8 @@ diff --git a/chrome/browser/android/historical_tab_saver.cc b/chrome/browser/and
|
||||
diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
|
||||
--- a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
|
||||
+++ b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
|
||||
@@ -376,6 +376,15 @@ ChromeAutocompleteProviderClient::GetProviderStateService() const {
|
||||
return ProviderStateServiceFactory::GetForProfile(profile_);
|
||||
@@ -409,6 +409,15 @@ ChromeAutocompleteProviderClient::GetTabGroupSyncService() const {
|
||||
return tab_groups::TabGroupSyncServiceFactory::GetForProfile(profile_);
|
||||
}
|
||||
|
||||
+bool ChromeAutocompleteProviderClient::IsAlwaysIncognitoEnabled() const {
|
||||
@@ -1276,9 +1274,9 @@ diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
|
||||
diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.h b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.h
|
||||
--- a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.h
|
||||
+++ b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.h
|
||||
@@ -89,6 +89,7 @@ class ChromeAutocompleteProviderClient : public AutocompleteProviderClient {
|
||||
OnDeviceTailModelService* GetOnDeviceTailModelService() const override;
|
||||
@@ -96,6 +96,7 @@ class ChromeAutocompleteProviderClient : public AutocompleteProviderClient {
|
||||
ProviderStateService* GetProviderStateService() const override;
|
||||
tab_groups::TabGroupSyncService* GetTabGroupSyncService() const override;
|
||||
bool IsOffTheRecord() const override;
|
||||
+ bool IsAlwaysIncognitoEnabled() const override;
|
||||
bool IsIncognitoProfile() const override;
|
||||
@@ -1344,7 +1342,7 @@ diff --git a/chrome/browser/content_settings/host_content_settings_map_factory.c
|
||||
#include "components/content_settings/core/browser/content_settings_pref_provider.h"
|
||||
#include "components/content_settings/core/browser/host_content_settings_map.h"
|
||||
#include "components/permissions/features.h"
|
||||
@@ -105,9 +106,25 @@ scoped_refptr<RefcountedKeyedService>
|
||||
@@ -117,9 +118,25 @@ scoped_refptr<RefcountedKeyedService>
|
||||
GetForProfile(original_profile);
|
||||
|
||||
bool should_record_metrics = profiles::IsRegularUserProfile(profile);
|
||||
@@ -1371,9 +1369,9 @@ diff --git a/chrome/browser/content_settings/host_content_settings_map_factory.c
|
||||
/*store_last_modified=*/true, profile->ShouldRestoreOldSessionCookies(),
|
||||
should_record_metrics));
|
||||
|
||||
@@ -116,6 +133,9 @@ scoped_refptr<RefcountedKeyedService>
|
||||
settings_map->RegisterProvider(ProviderType::kWebuiAllowlistProvider,
|
||||
std::move(allowlist_provider));
|
||||
@@ -137,6 +154,9 @@ scoped_refptr<RefcountedKeyedService>
|
||||
std::move(component_extension_provider));
|
||||
#endif // BUILDFLAG(IS_CHROMEOS)
|
||||
|
||||
+ if (always_incognito_enabled)
|
||||
+ return settings_map;
|
||||
@@ -1394,7 +1392,7 @@ diff --git a/chrome/browser/history/history_tab_helper.cc b/chrome/browser/histo
|
||||
#else
|
||||
#include "chrome/browser/ui/browser.h"
|
||||
#include "chrome/browser/ui/browser_finder.h"
|
||||
@@ -549,6 +552,13 @@ void HistoryTabHelper::TitleWasSet(NavigationEntry* entry) {
|
||||
@@ -570,6 +573,13 @@ void HistoryTabHelper::TitleWasSet(NavigationEntry* entry) {
|
||||
history::HistoryService* HistoryTabHelper::GetHistoryService() {
|
||||
Profile* profile =
|
||||
Profile::FromBrowserContext(web_contents()->GetBrowserContext());
|
||||
@@ -1408,7 +1406,7 @@ diff --git a/chrome/browser/history/history_tab_helper.cc b/chrome/browser/histo
|
||||
if (profile->IsOffTheRecord())
|
||||
return nullptr;
|
||||
|
||||
@@ -556,6 +566,16 @@ history::HistoryService* HistoryTabHelper::GetHistoryService() {
|
||||
@@ -577,6 +587,16 @@ history::HistoryService* HistoryTabHelper::GetHistoryService() {
|
||||
profile, ServiceAccessType::IMPLICIT_ACCESS);
|
||||
}
|
||||
|
||||
@@ -1757,7 +1755,7 @@ diff --git a/chrome/browser/offline_pages/request_coordinator_factory.h b/chrome
|
||||
diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc
|
||||
--- a/chrome/browser/prefs/browser_prefs.cc
|
||||
+++ b/chrome/browser/prefs/browser_prefs.cc
|
||||
@@ -244,6 +244,7 @@
|
||||
@@ -252,6 +252,7 @@
|
||||
|
||||
#if BUILDFLAG(IS_ANDROID)
|
||||
#include "chrome/browser/accessibility/accessibility_prefs/android/accessibility_prefs_controller.h"
|
||||
@@ -1765,7 +1763,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse
|
||||
#include "chrome/browser/android/ntp/recent_tabs_page_prefs.h"
|
||||
#include "chrome/browser/android/oom_intervention/oom_intervention_decider.h"
|
||||
#include "chrome/browser/android/preferences/browser_prefs_android.h"
|
||||
@@ -2008,6 +2009,10 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
|
||||
@@ -2033,6 +2034,10 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
|
||||
usage_stats::UsageStatsBridge::RegisterProfilePrefs(registry);
|
||||
variations::VariationsService::RegisterProfilePrefs(registry);
|
||||
webapps::InstallPromptPrefs::RegisterProfilePrefs(registry);
|
||||
@@ -1923,10 +1921,42 @@ diff --git a/chrome/browser/ui/android/native_page/java/src/org/chromium/chrome/
|
||||
return NativePageType.RECENT_TABS;
|
||||
} else if (UrlConstants.EXPLORE_HOST.equals(host)) {
|
||||
return NativePageType.EXPLORE;
|
||||
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java
|
||||
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java
|
||||
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java
|
||||
@@ -89,6 +89,10 @@ import org.chromium.ui.base.WindowAndroid;
|
||||
import org.chromium.ui.interpolators.Interpolators;
|
||||
import org.chromium.url.GURL;
|
||||
|
||||
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
|
||||
+import org.chromium.components.user_prefs.UserPrefs;
|
||||
+import org.chromium.components.prefs.PrefService;
|
||||
+
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.function.BooleanSupplier;
|
||||
@@ -1223,10 +1227,16 @@ class LocationBarMediator
|
||||
}
|
||||
Tab tab = mLocationBarDataProvider.getTab();
|
||||
if (tab == null) return false;
|
||||
+ boolean historyEnabledInIncognito = false;
|
||||
+ if (AlwaysIncognitoLinkInterceptor.isAlwaysIncognito()) {
|
||||
+ PrefService prefService = UserPrefs.get(ProfileManager.getLastUsedRegularProfile());
|
||||
+ historyEnabledInIncognito =
|
||||
+ prefService.getBoolean(Pref.INCOGNITO_TAB_HISTORY_ENABLED);
|
||||
+ }
|
||||
// The save offline button should not be shown on native pages. Currently, trying to
|
||||
// save an offline page in incognito crashes, so don't show it on incognito either.
|
||||
return shouldShowPageActionButtons()
|
||||
- && (!tab.isOffTheRecord()
|
||||
+ && (!tab.isOffTheRecord() || historyEnabledInIncognito
|
||||
|| ChromeFeatureList.isEnabled(
|
||||
ChromeFeatureList.ENABLE_SAVE_PACKAGE_FOR_OFF_THE_RECORD));
|
||||
}
|
||||
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
|
||||
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
|
||||
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
|
||||
@@ -6574,6 +6574,31 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>delete the Chrome d
|
||||
@@ -6647,6 +6647,31 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>delete the Chrome d
|
||||
<message name="IDS_QUICK_DELETE_DIALOG_COOKIES_CACHE_AND_OTHER_SITE_DATA_TEXT" desc="Text indicating that browsing data like cookies, cache, and other site data would be deleted.">
|
||||
Cookies, cache, and other site data
|
||||
</message>
|
||||
@@ -1961,7 +1991,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
|
||||
diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/LocationBarModel.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/LocationBarModel.java
|
||||
--- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/LocationBarModel.java
|
||||
+++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/LocationBarModel.java
|
||||
@@ -160,6 +160,7 @@ public class LocationBarModel implements ToolbarDataProvider, LocationBarDataPro
|
||||
@@ -163,6 +163,7 @@ public class LocationBarModel implements ToolbarDataProvider, LocationBarDataPro
|
||||
protected GURL mVisibleGurl = GURL.emptyGURL();
|
||||
protected String mFormattedFullUrl;
|
||||
protected String mUrlForDisplay;
|
||||
@@ -1969,12 +1999,12 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow
|
||||
|
||||
// notifyUrlChanged and notifySecurityStateChanged are usually called 3 times across a same
|
||||
// document navigation. The first call is usually necessary, which updates the UrlBar to reflect
|
||||
@@ -183,7 +184,9 @@ public class LocationBarModel implements ToolbarDataProvider, LocationBarDataPro
|
||||
@@ -186,7 +187,9 @@ public class LocationBarModel implements ToolbarDataProvider, LocationBarDataPro
|
||||
Context context,
|
||||
NewTabPageDelegate newTabPageDelegate,
|
||||
@NonNull UrlFormatter urlFormatter,
|
||||
- @NonNull OfflineStatus offlineStatus) {
|
||||
+ @NonNull OfflineStatus offlineStatus,
|
||||
UrlFormatter urlFormatter,
|
||||
- OfflineStatus offlineStatus) {
|
||||
+ OfflineStatus offlineStatus,
|
||||
+ boolean isAlwaysIncognito) {
|
||||
+ mIsAlwaysIncognito = isAlwaysIncognito; // (uazo) to do, check
|
||||
mContext = context;
|
||||
@@ -2050,7 +2080,7 @@ diff --git a/chrome/browser/ui/search_engines/search_engine_tab_helper.cc b/chro
|
||||
diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h
|
||||
--- a/chrome/common/pref_names.h
|
||||
+++ b/chrome/common/pref_names.h
|
||||
@@ -4070,6 +4070,12 @@ inline constexpr char kOutOfProcessSystemDnsResolutionEnabled[] =
|
||||
@@ -4097,6 +4097,12 @@ inline constexpr char kOutOfProcessSystemDnsResolutionEnabled[] =
|
||||
"net.out_of_process_system_dns_resolution_enabled";
|
||||
#endif // BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX)
|
||||
|
||||
@@ -2116,7 +2146,7 @@ diff --git a/components/content_settings/core/browser/content_settings_pref_prov
|
||||
diff --git a/components/content_settings/core/browser/host_content_settings_map.cc b/components/content_settings/core/browser/host_content_settings_map.cc
|
||||
--- a/components/content_settings/core/browser/host_content_settings_map.cc
|
||||
+++ b/components/content_settings/core/browser/host_content_settings_map.cc
|
||||
@@ -247,6 +247,7 @@ struct ContentSettingEntry {
|
||||
@@ -268,6 +268,7 @@ struct ContentSettingEntry {
|
||||
|
||||
HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs,
|
||||
bool is_off_the_record,
|
||||
@@ -2124,7 +2154,7 @@ diff --git a/components/content_settings/core/browser/host_content_settings_map.
|
||||
bool store_last_modified,
|
||||
bool restore_session,
|
||||
bool should_record_metrics)
|
||||
@@ -256,6 +257,7 @@ HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs,
|
||||
@@ -277,6 +278,7 @@ HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs,
|
||||
#endif
|
||||
prefs_(prefs),
|
||||
is_off_the_record_(is_off_the_record),
|
||||
@@ -2132,7 +2162,7 @@ diff --git a/components/content_settings/core/browser/host_content_settings_map.
|
||||
store_last_modified_(store_last_modified),
|
||||
allow_invalid_secondary_pattern_for_testing_(false),
|
||||
clock_(base::DefaultClock::GetInstance()) {
|
||||
@@ -269,7 +271,7 @@ HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs,
|
||||
@@ -290,7 +292,7 @@ HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs,
|
||||
policy_provider->AddObserver(this);
|
||||
|
||||
auto pref_provider_ptr = std::make_unique<content_settings::PrefProvider>(
|
||||
@@ -2164,7 +2194,7 @@ diff --git a/components/content_settings/core/browser/host_content_settings_map.
|
||||
diff --git a/components/omnibox/browser/autocomplete_provider_client.cc b/components/omnibox/browser/autocomplete_provider_client.cc
|
||||
--- a/components/omnibox/browser/autocomplete_provider_client.cc
|
||||
+++ b/components/omnibox/browser/autocomplete_provider_client.cc
|
||||
@@ -51,3 +51,7 @@ base::WeakPtr<AutocompleteProviderClient>
|
||||
@@ -53,3 +53,7 @@ base::WeakPtr<AutocompleteProviderClient>
|
||||
AutocompleteProviderClient::GetWeakPtr() {
|
||||
return nullptr;
|
||||
}
|
||||
@@ -2175,7 +2205,7 @@ diff --git a/components/omnibox/browser/autocomplete_provider_client.cc b/compon
|
||||
diff --git a/components/omnibox/browser/autocomplete_provider_client.h b/components/omnibox/browser/autocomplete_provider_client.h
|
||||
--- a/components/omnibox/browser/autocomplete_provider_client.h
|
||||
+++ b/components/omnibox/browser/autocomplete_provider_client.h
|
||||
@@ -143,6 +143,7 @@ class AutocompleteProviderClient : public OmniboxAction::Client {
|
||||
@@ -152,6 +152,7 @@ class AutocompleteProviderClient : public OmniboxAction::Client {
|
||||
virtual bool IsOffTheRecord() const = 0;
|
||||
virtual bool IsIncognitoProfile() const = 0;
|
||||
virtual bool IsGuestSession() const = 0;
|
||||
@@ -2186,7 +2216,7 @@ diff --git a/components/omnibox/browser/autocomplete_provider_client.h b/compone
|
||||
diff --git a/components/omnibox/browser/base_search_provider.cc b/components/omnibox/browser/base_search_provider.cc
|
||||
--- a/components/omnibox/browser/base_search_provider.cc
|
||||
+++ b/components/omnibox/browser/base_search_provider.cc
|
||||
@@ -394,7 +394,7 @@ bool BaseSearchProvider::CanSendSuggestRequest(
|
||||
@@ -392,7 +392,7 @@ bool BaseSearchProvider::CanSendSuggestRequest(
|
||||
|
||||
// Don't make a suggest request if in incognito mode; unless for the Lens
|
||||
// searchboxes.
|
||||
|
||||
@@ -45,7 +45,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" />
|
||||
@@ -204,6 +208,9 @@ found in the LICENSE file.
|
||||
@@ -207,6 +211,9 @@ found in the LICENSE file.
|
||||
<item android:id="@id/tinker_tank_menu_id"
|
||||
android:title="@string/menu_tinker_tank"
|
||||
android:icon="@drawable/ic_add_box_rounded_corner" />
|
||||
@@ -58,15 +58,15 @@ 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
|
||||
@@ -101,6 +101,7 @@ import org.chromium.chrome.browser.bookmarks.BookmarkUtils;
|
||||
import org.chromium.chrome.browser.bookmarks.bar.BookmarkBarUtils;
|
||||
@@ -102,6 +102,7 @@ import org.chromium.chrome.browser.bookmarks.BookmarkPane;
|
||||
import org.chromium.chrome.browser.bookmarks.BookmarkUtils;
|
||||
import org.chromium.chrome.browser.browserservices.intents.WebappConstants;
|
||||
import org.chromium.chrome.browser.compositor.CompositorViewHolder;
|
||||
+import org.chromium.chrome.browser.bookmarks.BookmarkModel;
|
||||
import org.chromium.chrome.browser.compositor.layouts.Layout;
|
||||
import org.chromium.chrome.browser.compositor.layouts.LayoutManagerChrome;
|
||||
import org.chromium.chrome.browser.compositor.layouts.LayoutManagerChromePhone;
|
||||
@@ -263,12 +264,17 @@ import org.chromium.chrome.browser.ui.RootUiCoordinator;
|
||||
@@ -273,6 +274,9 @@ import org.chromium.chrome.browser.ui.RootUiCoordinator;
|
||||
import org.chromium.chrome.browser.ui.appmenu.AppMenuPropertiesDelegate;
|
||||
import org.chromium.chrome.browser.ui.desktop_windowing.AppHeaderUtils;
|
||||
import org.chromium.chrome.browser.ui.edge_to_edge.EdgeToEdgeUtils;
|
||||
@@ -75,7 +75,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
|
||||
+import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager.SnackbarController;
|
||||
import org.chromium.chrome.browser.ui.searchactivityutils.SearchActivityClient;
|
||||
import org.chromium.chrome.browser.ui.searchactivityutils.SearchActivityExtras.IntentOrigin;
|
||||
import org.chromium.chrome.browser.undo_tab_close_snackbar.UndoBarController;
|
||||
import org.chromium.chrome.browser.ui.signin.BottomSheetSigninAndHistorySyncConfig;
|
||||
@@ -282,6 +286,8 @@ import org.chromium.chrome.browser.undo_tab_close_snackbar.UndoBarController;
|
||||
import org.chromium.chrome.browser.usage_stats.UsageStatsService;
|
||||
import org.chromium.chrome.browser.util.ChromeAccessibilityUtil;
|
||||
import org.chromium.chrome.browser.xr.XrLayoutStateObserver;
|
||||
@@ -84,7 +85,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
|
||||
import org.chromium.components.browser_ui.bottomsheet.BottomSheetController;
|
||||
import org.chromium.components.browser_ui.edge_to_edge.SystemBarColorHelper;
|
||||
import org.chromium.components.browser_ui.edge_to_edge.TabbedSystemBarColorHelper;
|
||||
@@ -3233,6 +3239,8 @@ public class ChromeTabbedActivity extends ChromeActivity {
|
||||
@@ -3316,6 +3322,8 @@ public class ChromeTabbedActivity extends ChromeActivity {
|
||||
getTabModelSelectorSupplier().get(),
|
||||
closeAllTabsRunnable);
|
||||
RecordUserAction.record("MobileMenuCloseAllTabs");
|
||||
@@ -93,7 +94,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
|
||||
} else if (id == R.id.close_all_incognito_tabs_menu_id) {
|
||||
// Close only incognito tabs
|
||||
Runnable closeAllTabsRunnable =
|
||||
@@ -3331,6 +3339,41 @@ public class ChromeTabbedActivity extends ChromeActivity {
|
||||
@@ -3418,6 +3426,41 @@ public class ChromeTabbedActivity extends ChromeActivity {
|
||||
getTabModalLifetimeHandler().onOmniboxFocusChanged(hasFocus);
|
||||
}
|
||||
|
||||
@@ -180,7 +181,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse
|
||||
bookmark_model_->bookmark_bar_node(),
|
||||
bookmark_model_->other_node(),
|
||||
};
|
||||
@@ -531,6 +559,9 @@ std::vector<const BookmarkNode*> BookmarkBridge::GetTopLevelFolderIdsImpl(
|
||||
@@ -546,6 +574,9 @@ std::vector<const BookmarkNode*> BookmarkBridge::GetTopLevelFolderIdsImpl(
|
||||
top_level_folders.push_back(other_node);
|
||||
}
|
||||
|
||||
@@ -189,8 +190,8 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse
|
||||
+
|
||||
const BookmarkNode* reading_list_node =
|
||||
local_or_syncable_reading_list_manager_->GetRoot();
|
||||
if (IsPermanentFolderVisible(ignore_visibility, reading_list_node)) {
|
||||
@@ -1256,6 +1287,17 @@ void BookmarkBridge::GetBookmarksOfType(
|
||||
if (IsPermanentFolderVisible(
|
||||
@@ -1273,6 +1304,17 @@ void BookmarkBridge::GetBookmarksOfType(
|
||||
AddBookmarkNodesToBookmarkIdList(env, j_list, results);
|
||||
}
|
||||
|
||||
@@ -211,7 +212,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse
|
||||
diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.h b/chrome/browser/bookmarks/android/bookmark_bridge.h
|
||||
--- a/chrome/browser/bookmarks/android/bookmark_bridge.h
|
||||
+++ b/chrome/browser/bookmarks/android/bookmark_bridge.h
|
||||
@@ -79,6 +79,10 @@ class BookmarkBridge : public ProfileObserver,
|
||||
@@ -106,6 +106,10 @@ class BookmarkBridge : public ProfileObserver,
|
||||
|
||||
jboolean AreAccountBookmarkFoldersActive(JNIEnv* env);
|
||||
|
||||
@@ -222,7 +223,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.h b/chrome/browser
|
||||
base::android::ScopedJavaLocalRef<jobject>
|
||||
GetMostRecentlyAddedUserBookmarkIdForUrl(JNIEnv* env, const GURL& url);
|
||||
const bookmarks::BookmarkNode* GetMostRecentlyAddedUserBookmarkIdForUrlImpl(
|
||||
@@ -223,6 +227,10 @@ class BookmarkBridge : public ProfileObserver,
|
||||
@@ -250,6 +254,10 @@ class BookmarkBridge : public ProfileObserver,
|
||||
const base::android::JavaParamRef<jobject>& j_list,
|
||||
jint type);
|
||||
|
||||
@@ -260,7 +261,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows
|
||||
|
||||
private final ObserverList<BookmarkModelObserver> mObservers = new ObserverList<>();
|
||||
private final Profile mProfile;
|
||||
@@ -383,6 +386,16 @@ class BookmarkBridge {
|
||||
@@ -384,6 +387,16 @@ class BookmarkBridge {
|
||||
return mMobileFolderId;
|
||||
}
|
||||
|
||||
@@ -277,7 +278,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows
|
||||
/** Returns Id representing the special "other" folder from bookmark model. */
|
||||
public BookmarkId getOtherFolderId() {
|
||||
ThreadUtils.assertOnUiThread();
|
||||
@@ -894,6 +907,29 @@ class BookmarkBridge {
|
||||
@@ -895,6 +908,29 @@ class BookmarkBridge {
|
||||
.addToReadingList(mNativeBookmarkBridge, parentId, title, url);
|
||||
}
|
||||
|
||||
@@ -307,7 +308,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows
|
||||
/**
|
||||
* Helper method to mark an item as read.
|
||||
*
|
||||
@@ -1111,6 +1147,9 @@ class BookmarkBridge {
|
||||
@@ -1112,6 +1148,9 @@ class BookmarkBridge {
|
||||
BookmarkId getMostRecentlyAddedUserBookmarkIdForUrl(
|
||||
long nativeBookmarkBridge, @JniType("GURL") GURL url);
|
||||
|
||||
@@ -317,7 +318,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows
|
||||
BookmarkItem getBookmarkById(long nativeBookmarkBridge, long id, int type);
|
||||
|
||||
void getTopLevelFolderIds(
|
||||
@@ -1132,6 +1171,8 @@ class BookmarkBridge {
|
||||
@@ -1133,6 +1172,8 @@ class BookmarkBridge {
|
||||
|
||||
BookmarkId getRootFolderId(long nativeBookmarkBridge);
|
||||
|
||||
@@ -406,7 +407,7 @@ diff --git a/chrome/browser/bookmarks/permanent_folder_ordering_tracker.cc b/chr
|
||||
NOTREACHED();
|
||||
|
||||
case bookmarks::BookmarkNode::BOOKMARK_BAR:
|
||||
@@ -291,6 +292,7 @@ void PermanentFolderOrderingTracker::SetTrackedPermanentNodes() {
|
||||
@@ -303,6 +304,7 @@ void PermanentFolderOrderingTracker::SetTrackedPermanentNodes() {
|
||||
switch (tracked_type_) {
|
||||
case bookmarks::BookmarkNode::URL:
|
||||
case bookmarks::BookmarkNode::FOLDER:
|
||||
@@ -417,7 +418,7 @@ diff --git a/chrome/browser/bookmarks/permanent_folder_ordering_tracker.cc b/chr
|
||||
diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationCustomView.java b/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationCustomView.java
|
||||
--- a/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationCustomView.java
|
||||
+++ b/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationCustomView.java
|
||||
@@ -85,7 +85,7 @@ public class DownloadLocationCustomView extends ScrollView
|
||||
@@ -88,7 +88,7 @@ public class DownloadLocationCustomView extends ScrollView
|
||||
mDirectoryAdapter.update();
|
||||
}
|
||||
|
||||
@@ -426,7 +427,7 @@ diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browse
|
||||
mTitle.setText(title);
|
||||
}
|
||||
|
||||
@@ -93,7 +93,7 @@ public class DownloadLocationCustomView extends ScrollView
|
||||
@@ -96,7 +96,7 @@ public class DownloadLocationCustomView extends ScrollView
|
||||
mSubtitleView.setText(subtitle);
|
||||
}
|
||||
|
||||
@@ -438,7 +439,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
|
||||
@@ -4497,6 +4497,9 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>delete the Chrome d
|
||||
@@ -4525,6 +4525,9 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>delete the Chrome d
|
||||
<message name="IDS_MENU_SELECT_TABS" desc="Menu item for bulk editing tabs. [CHAR_LIMIT=27]">
|
||||
Select tabs
|
||||
</message>
|
||||
@@ -713,7 +714,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
|
||||
@@ -835,7 +835,7 @@ bool BookmarkModel::HasBookmarks() const {
|
||||
@@ -890,7 +890,7 @@ bool BookmarkModel::HasBookmarks() const {
|
||||
bool BookmarkModel::HasNoUserCreatedBookmarksOrFolders() const {
|
||||
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
|
||||
return bookmark_bar_node_->children().empty() &&
|
||||
@@ -722,7 +723,7 @@ diff --git a/components/bookmarks/browser/bookmark_model.cc b/components/bookmar
|
||||
}
|
||||
|
||||
bool BookmarkModel::IsBookmarked(const GURL& url) const {
|
||||
@@ -1167,6 +1167,7 @@ void BookmarkModel::DoneLoading(std::unique_ptr<BookmarkLoadDetails> details) {
|
||||
@@ -1222,6 +1222,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();
|
||||
@@ -735,10 +736,10 @@ diff --git a/components/bookmarks/browser/bookmark_model.h b/components/bookmark
|
||||
+++ b/components/bookmarks/browser/bookmark_model.h
|
||||
@@ -150,6 +150,12 @@ class BookmarkModel : public BookmarkUndoProvider,
|
||||
// bookmarks in the account storage).
|
||||
const BookmarkNode* account_mobile_node() const;
|
||||
const BookmarkPermanentNode* account_mobile_node() const;
|
||||
|
||||
+ // Returns the 'mobile' node. This is NULL until loaded.
|
||||
+ const BookmarkNode* tabs_collection_node() const {
|
||||
+ const BookmarkPermanentNode* tabs_collection_node() const {
|
||||
+ DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
|
||||
+ return tabs_collection_node_;
|
||||
+ }
|
||||
|
||||
@@ -4,19 +4,20 @@ Subject: Add menu item to view source
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
.../android/java/res/menu/custom_tabs_menu.xml | 3 +++
|
||||
chrome/android/java/res/menu/main_menu.xml | 3 +++
|
||||
.../chrome/browser/ChromeTabbedActivity.java | 2 ++
|
||||
.../chrome/browser/app/ChromeActivity.java | 5 +++++
|
||||
.../appmenu/AppMenuPropertiesDelegateImpl.java | 18 ++++++++++++++++++
|
||||
.../CustomTabAppMenuPropertiesDelegate.java | 1 +
|
||||
.../android/strings/android_chrome_strings.grd | 4 ++++
|
||||
7 files changed, 36 insertions(+)
|
||||
.../android/java/res/menu/custom_tabs_menu.xml | 3 +++
|
||||
chrome/android/java/res/menu/main_menu.xml | 3 +++
|
||||
.../chrome/browser/ChromeTabbedActivity.java | 2 ++
|
||||
.../chrome/browser/app/ChromeActivity.java | 5 +++++
|
||||
.../appmenu/AppMenuPropertiesDelegateImpl.java | 17 +++++++++++++++++
|
||||
.../CustomTabAppMenuPropertiesDelegate.java | 1 +
|
||||
.../TabbedAppMenuPropertiesDelegate.java | 2 +-
|
||||
.../android/strings/android_chrome_strings.grd | 4 ++++
|
||||
8 files changed, 36 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/chrome/android/java/res/menu/custom_tabs_menu.xml b/chrome/android/java/res/menu/custom_tabs_menu.xml
|
||||
--- a/chrome/android/java/res/menu/custom_tabs_menu.xml
|
||||
+++ b/chrome/android/java/res/menu/custom_tabs_menu.xml
|
||||
@@ -58,6 +58,9 @@ found in the LICENSE file.
|
||||
@@ -69,6 +69,9 @@ found in the LICENSE file.
|
||||
<item android:id="@+id/universal_install"
|
||||
android:title="@string/menu_add_to_homescreen"
|
||||
android:orderInCategory="2" />
|
||||
@@ -29,7 +30,7 @@ diff --git a/chrome/android/java/res/menu/custom_tabs_menu.xml b/chrome/android/
|
||||
diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/res/menu/main_menu.xml
|
||||
--- a/chrome/android/java/res/menu/main_menu.xml
|
||||
+++ b/chrome/android/java/res/menu/main_menu.xml
|
||||
@@ -128,6 +128,9 @@ found in the LICENSE file.
|
||||
@@ -131,6 +131,9 @@ found in the LICENSE file.
|
||||
<item android:id="@+id/universal_install"
|
||||
android:title="@string/menu_add_to_homescreen"
|
||||
android:icon="@drawable/ic_add_to_home_screen" />
|
||||
@@ -42,7 +43,7 @@ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/re
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
|
||||
@@ -3273,6 +3273,8 @@ public class ChromeTabbedActivity extends ChromeActivity {
|
||||
@@ -3356,6 +3356,8 @@ public class ChromeTabbedActivity extends ChromeActivity {
|
||||
NewTabPageUma.recordAction(NewTabPageUma.ACTION_OPENED_DOWNLOADS_MANAGER);
|
||||
}
|
||||
RecordUserAction.record("MobileMenuDownloadManager");
|
||||
@@ -54,7 +55,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
|
||||
@@ -2556,6 +2556,11 @@ public abstract class ChromeActivity extends AsyncInitializationActivity
|
||||
@@ -2563,6 +2563,11 @@ public abstract class ChromeActivity extends AsyncInitializationActivity
|
||||
return doOpenWebApk(currentTab);
|
||||
}
|
||||
|
||||
@@ -69,16 +70,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java
|
||||
@@ -595,6 +595,7 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
|
||||
isNativePage, isFileScheme, isContentScheme, isIncognito, url));
|
||||
|
||||
updateRequestDesktopSiteMenuItem(menu, currentTab, true /* can show */, isNativePage);
|
||||
+ updateViewSourceMenuItem(menu, currentTab);
|
||||
|
||||
updateAutoDarkMenuItem(menu, currentTab, isNativePage);
|
||||
|
||||
@@ -1336,6 +1337,23 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
|
||||
findInPageMenuRow.setVisible(itemVisible);
|
||||
@@ -862,6 +862,23 @@ public abstract class AppMenuPropertiesDelegateImpl implements AppMenuProperties
|
||||
}
|
||||
}
|
||||
|
||||
+ /**
|
||||
@@ -104,7 +97,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
|
||||
@@ -304,6 +304,7 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat
|
||||
@@ -320,6 +320,7 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat
|
||||
|
||||
updateRequestDesktopSiteMenuItem(
|
||||
menu, currentTab, requestDesktopSiteVisible, isNativePage);
|
||||
@@ -112,10 +105,22 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
|
||||
prepareAddToHomescreenMenuItem(menu, currentTab, addToHomeScreenVisible);
|
||||
}
|
||||
}
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java
|
||||
@@ -296,7 +296,7 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm
|
||||
isNativePage, isFileScheme, isContentScheme, isIncognito, url));
|
||||
|
||||
updateRequestDesktopSiteMenuItem(menu, currentTab, true /* can show */, isNativePage);
|
||||
-
|
||||
+ updateViewSourceMenuItem(menu, currentTab);
|
||||
updateAutoDarkMenuItem(menu, currentTab, isNativePage);
|
||||
|
||||
// Only display reader mode settings menu option if the current page is in reader mode.
|
||||
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
|
||||
@@ -318,6 +318,10 @@ CHAR_LIMIT guidelines:
|
||||
@@ -321,6 +321,10 @@ CHAR_LIMIT guidelines:
|
||||
Collaboration
|
||||
</message>
|
||||
|
||||
|
||||
@@ -15,13 +15,13 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
|
||||
.../cromite/cromite_prepopulated_engines.json | 37 ++++++++++++++++++
|
||||
.../search_engine_choice_utils.cc | 5 +--
|
||||
.../search_engines/search_engine_type.h | 5 +++
|
||||
.../template_url_prepopulate_data.cc | 15 ++++++-
|
||||
.../template_url_prepopulate_data.h | 7 ----
|
||||
.../template_url_prepopulate_data.cc | 21 +++++++++-
|
||||
.../template_url_prepopulate_data.h | 9 -----
|
||||
tools/json_to_struct/json_to_struct.gni | 9 +++++
|
||||
tools/json_to_struct/json_to_struct.py | 26 ++++++++----
|
||||
tools/json_to_struct/struct_generator.py | 10 +++--
|
||||
tools/variations/fieldtrial_to_struct.py | 4 +-
|
||||
13 files changed, 108 insertions(+), 26 deletions(-)
|
||||
13 files changed, 114 insertions(+), 28 deletions(-)
|
||||
create mode 100644 components/resources/default_100_percent/search_engine_choice/default_favicon.png
|
||||
create mode 100644 components/search_engines/cromite/BUILD.gn
|
||||
create mode 100644 components/search_engines/cromite/cromite_prepopulated_engines.json
|
||||
@@ -67,15 +67,15 @@ diff --git a/components/resources/search_engine_choice_scaled_resources.grdp b/c
|
||||
diff --git a/components/search_engines/BUILD.gn b/components/search_engines/BUILD.gn
|
||||
--- a/components/search_engines/BUILD.gn
|
||||
+++ b/components/search_engines/BUILD.gn
|
||||
@@ -73,6 +73,7 @@ static_library("search_engines") {
|
||||
@@ -72,6 +72,7 @@ static_library("search_engines") {
|
||||
"//third_party/metrics_proto",
|
||||
"//third_party/omnibox_proto",
|
||||
"//third_party/search_engines_data:prepopulated_engines",
|
||||
"//third_party/search_engines_data:regional_settings",
|
||||
+ "cromite:cromite_prepopulated_engines",
|
||||
]
|
||||
|
||||
deps = [
|
||||
@@ -159,6 +160,7 @@ source_set("search_engine_utils") {
|
||||
@@ -158,6 +159,7 @@ source_set("search_engine_utils") {
|
||||
":search_engine_type",
|
||||
"//components/google/core/common",
|
||||
"//third_party/search_engines_data:prepopulated_engines",
|
||||
@@ -83,7 +83,7 @@ diff --git a/components/search_engines/BUILD.gn b/components/search_engines/BUIL
|
||||
]
|
||||
|
||||
deps = [ "//url" ]
|
||||
@@ -242,6 +244,7 @@ source_set("unit_tests") {
|
||||
@@ -246,6 +248,7 @@ source_set("unit_tests") {
|
||||
"//testing/gmock",
|
||||
"//testing/gtest",
|
||||
"//third_party/search_engines_data:prepopulated_engines",
|
||||
@@ -153,7 +153,7 @@ new file mode 100644
|
||||
diff --git a/components/search_engines/search_engine_choice/search_engine_choice_utils.cc b/components/search_engines/search_engine_choice/search_engine_choice_utils.cc
|
||||
--- a/components/search_engines/search_engine_choice/search_engine_choice_utils.cc
|
||||
+++ b/components/search_engines/search_engine_choice/search_engine_choice_utils.cc
|
||||
@@ -183,10 +183,7 @@ void RecordChoiceScreenDefaultSearchProviderType(
|
||||
@@ -187,10 +187,7 @@ void RecordChoiceScreenDefaultSearchProviderType(
|
||||
}
|
||||
|
||||
void RecordChoiceScreenSelectedIndex(int selected_engine_index) {
|
||||
@@ -188,49 +188,61 @@ diff --git a/components/search_engines/search_engine_type.h b/components/search_
|
||||
diff --git a/components/search_engines/template_url_prepopulate_data.cc b/components/search_engines/template_url_prepopulate_data.cc
|
||||
--- a/components/search_engines/template_url_prepopulate_data.cc
|
||||
+++ b/components/search_engines/template_url_prepopulate_data.cc
|
||||
@@ -30,6 +30,8 @@
|
||||
@@ -28,6 +28,8 @@
|
||||
#include "components/search_engines/template_url_data_util.h"
|
||||
#include "third_party/search_engines_data/resources/definitions/prepopulated_engines.h"
|
||||
#include "third_party/search_engines_data/resources/definitions/regional_settings.h"
|
||||
|
||||
+#include "components/search_engines/cromite/cromite_prepopulated_engines.h"
|
||||
+
|
||||
namespace TemplateURLPrepopulateData {
|
||||
|
||||
// Helpers --------------------------------------------------------------------
|
||||
@@ -85,11 +87,10 @@ GetPrepopulatedEnginesForEeaRegionCountries(CountryId country_id,
|
||||
generator.seed(profile_seed);
|
||||
std::shuffle(t_urls.begin(), t_urls.end(), generator);
|
||||
|
||||
- CHECK_LE(t_urls.size(), kMaxEeaPrepopulatedEngines);
|
||||
return t_urls;
|
||||
@@ -123,7 +125,7 @@ int GetDataVersion(PrefService* prefs) {
|
||||
kCurrentDataVersion;
|
||||
}
|
||||
|
||||
-std::vector<std::unique_ptr<TemplateURLData>> GetPrepopulatedTemplateURLData(
|
||||
+std::vector<std::unique_ptr<TemplateURLData>> GetPrepopulatedTemplateURLDataChromium(
|
||||
CountryId country_id,
|
||||
PrefService& prefs) {
|
||||
if (regional_capabilities::HasSearchEngineCountryListOverride()) {
|
||||
@@ -115,6 +116,16 @@ std::vector<std::unique_ptr<TemplateURLData>> GetPrepopulatedTemplateURLData(
|
||||
-std::vector<std::unique_ptr<TemplateURLData>> GetPrepopulatedEngines(
|
||||
+std::vector<std::unique_ptr<TemplateURLData>> GetPrepopulatedEnginesChromium(
|
||||
PrefService& prefs,
|
||||
std::vector<const TemplateURLPrepopulateData::PrepopulatedEngine*>
|
||||
regional_prepopulated_engines) {
|
||||
@@ -139,6 +141,17 @@ std::vector<std::unique_ptr<TemplateURLData>> GetPrepopulatedEngines(
|
||||
&PrepopulatedEngineToTemplateURLData);
|
||||
}
|
||||
|
||||
+std::vector<std::unique_ptr<TemplateURLData>> GetPrepopulatedTemplateURLData(
|
||||
+ CountryId country_id,
|
||||
+ PrefService& prefs) {
|
||||
+std::vector<std::unique_ptr<TemplateURLData>> GetPrepopulatedEngines(
|
||||
+ PrefService& prefs,
|
||||
+ std::vector<const TemplateURLPrepopulateData::PrepopulatedEngine*>
|
||||
+ regional_prepopulated_engines) {
|
||||
+ std::vector<std::unique_ptr<TemplateURLData>> t_urls =
|
||||
+ GetPrepopulatedTemplateURLDataChromium(country_id, prefs);
|
||||
+ GetPrepopulatedEnginesChromium(prefs, regional_prepopulated_engines);
|
||||
+ t_urls.push_back(TemplateURLDataFromPrepopulatedEngine(googleen));
|
||||
+ t_urls.push_back(TemplateURLDataFromPrepopulatedEngine(duckduckgo_light));
|
||||
+ return t_urls;
|
||||
+}
|
||||
+
|
||||
// These values are persisted to logs. Entries should not be renumbered and
|
||||
// numeric values should never be reused.
|
||||
enum class SearchProviderOverrideStatus {
|
||||
std::unique_ptr<TemplateURLData> GetPrepopulatedEngine(
|
||||
PrefService& prefs,
|
||||
std::vector<const TemplateURLPrepopulateData::PrepopulatedEngine*>
|
||||
@@ -160,9 +173,13 @@ std::vector<std::unique_ptr<TemplateURLData>> GetLocalPrepopulatedEngines(
|
||||
return std::vector<std::unique_ptr<TemplateURLData>>();
|
||||
}
|
||||
|
||||
- return base::ToVector(
|
||||
+ std::vector<std::unique_ptr<TemplateURLData>> t_urls =
|
||||
+ base::ToVector(
|
||||
regional_capabilities::GetPrepopulatedEngines(country_id, prefs),
|
||||
&PrepopulatedEngineToTemplateURLData);
|
||||
+ t_urls.push_back(TemplateURLDataFromPrepopulatedEngine(googleen));
|
||||
+ t_urls.push_back(TemplateURLDataFromPrepopulatedEngine(duckduckgo_light));
|
||||
+ return t_urls;
|
||||
}
|
||||
|
||||
#endif
|
||||
diff --git a/components/search_engines/template_url_prepopulate_data.h b/components/search_engines/template_url_prepopulate_data.h
|
||||
--- a/components/search_engines/template_url_prepopulate_data.h
|
||||
+++ b/components/search_engines/template_url_prepopulate_data.h
|
||||
@@ -32,13 +32,6 @@ struct PrepopulatedEngine;
|
||||
@@ -27,15 +27,6 @@ struct PrepopulatedEngine;
|
||||
|
||||
extern const int kMaxPrepopulatedEngineID;
|
||||
|
||||
@@ -239,11 +251,13 @@ diff --git a/components/search_engines/template_url_prepopulate_data.h b/compone
|
||||
-//
|
||||
-// Note: If this is increased, please also increase the declared variant count
|
||||
-// for the `Search.ChoiceScreenShowedEngineAt.Index{Index}` histogram.
|
||||
-// TODO(crbug.com/408932087): Investigate moving it to the file that actually
|
||||
-// populates these, `//c/regional_capabilities/r*c*_util.cc`.
|
||||
-inline constexpr size_t kMaxEeaPrepopulatedEngines = 8;
|
||||
-
|
||||
// The maximum number of prepopulated search engines that can be returned in
|
||||
// in the rest of the world by `GetPrepopulatedEngines()`.
|
||||
inline constexpr size_t kMaxRowPrepopulatedEngines = 5;
|
||||
// TODO(crbug.com/408932087): Investigate deduping it with the constant
|
||||
diff --git a/tools/json_to_struct/json_to_struct.gni b/tools/json_to_struct/json_to_struct.gni
|
||||
--- a/tools/json_to_struct/json_to_struct.gni
|
||||
+++ b/tools/json_to_struct/json_to_struct.gni
|
||||
@@ -273,7 +287,7 @@ diff --git a/tools/json_to_struct/json_to_struct.gni b/tools/json_to_struct/json
|
||||
diff --git a/tools/json_to_struct/json_to_struct.py b/tools/json_to_struct/json_to_struct.py
|
||||
--- a/tools/json_to_struct/json_to_struct.py
|
||||
+++ b/tools/json_to_struct/json_to_struct.py
|
||||
@@ -100,7 +100,7 @@ def _GenerateHeaderGuard(h_filename):
|
||||
@@ -103,7 +103,7 @@ def _GenerateHeaderGuard(h_filename):
|
||||
return re.sub(u'^_*', '', result) + u'_' # Remove leading underscores.
|
||||
|
||||
|
||||
@@ -282,7 +296,7 @@ diff --git a/tools/json_to_struct/json_to_struct.py b/tools/json_to_struct/json_
|
||||
"""Generates the .h file containing the definition of the structure specified
|
||||
by the schema.
|
||||
|
||||
@@ -136,11 +136,15 @@ def _GenerateH(basepath, fileroot, head, namespace, schema, description):
|
||||
@@ -139,11 +139,15 @@ def _GenerateH(basepath, fileroot, head, namespace, schema, description):
|
||||
f.write(u'#include "%s"\n' % header)
|
||||
f.write(u'\n')
|
||||
|
||||
@@ -299,7 +313,7 @@ diff --git a/tools/json_to_struct/json_to_struct.py b/tools/json_to_struct/json_
|
||||
schema['type_name'], schema['schema']))
|
||||
f.write(u'\n')
|
||||
|
||||
@@ -175,7 +179,7 @@ def _GenerateH(basepath, fileroot, head, namespace, schema, description):
|
||||
@@ -170,7 +174,7 @@ def _GenerateH(basepath, fileroot, head, namespace, schema, description):
|
||||
f.write(u'#endif // %s\n' % header_guard)
|
||||
|
||||
|
||||
@@ -308,7 +322,7 @@ diff --git a/tools/json_to_struct/json_to_struct.py b/tools/json_to_struct/json_
|
||||
"""Generates the .cc file containing the static initializers for the
|
||||
of the elements specified in the description.
|
||||
|
||||
@@ -210,7 +214,7 @@ def _GenerateCC(basepath, fileroot, head, namespace, schema, description):
|
||||
@@ -205,7 +209,7 @@ def _GenerateCC(basepath, fileroot, head, namespace, schema, description):
|
||||
f.write(element_generator.GenerateElements(schema['type_name'],
|
||||
schema['schema'], description))
|
||||
|
||||
@@ -316,8 +330,8 @@ diff --git a/tools/json_to_struct/json_to_struct.py b/tools/json_to_struct/json_
|
||||
+ if excludetype == False and not aggregation.export_items:
|
||||
f.write('\n} // anonymous namespace \n\n')
|
||||
|
||||
if aggregation.kind == AggregationKind.ARRAY:
|
||||
@@ -315,7 +319,7 @@ def GenerateClass(basepath,
|
||||
aggregated = GenerateCCAggregation(schema['type_name'], aggregation)
|
||||
@@ -292,7 +296,7 @@ def GenerateClass(basepath,
|
||||
|
||||
|
||||
def GenerateStruct(basepath, output_root, namespace, schema, description,
|
||||
@@ -326,7 +340,7 @@ diff --git a/tools/json_to_struct/json_to_struct.py b/tools/json_to_struct/json_
|
||||
"""Generates a C++ struct from a JSON description.
|
||||
|
||||
Args:
|
||||
@@ -334,8 +338,8 @@ def GenerateStruct(basepath, output_root, namespace, schema, description,
|
||||
@@ -311,8 +315,8 @@ def GenerateStruct(basepath, output_root, namespace, schema, description,
|
||||
"""
|
||||
year = int(year) if year else datetime.now().year
|
||||
head = HEAD % (year, schema_filename, description_filename)
|
||||
@@ -337,7 +351,7 @@ diff --git a/tools/json_to_struct/json_to_struct.py b/tools/json_to_struct/json_
|
||||
|
||||
if __name__ == '__main__':
|
||||
parser = optparse.OptionParser(
|
||||
@@ -350,11 +354,17 @@ if __name__ == '__main__':
|
||||
@@ -327,11 +331,17 @@ if __name__ == '__main__':
|
||||
parser.add_option('-s', '--schema', help='path to the schema file, '
|
||||
'mandatory.')
|
||||
parser.add_option('-o', '--output', help='output filename, ')
|
||||
@@ -355,7 +369,7 @@ diff --git a/tools/json_to_struct/json_to_struct.py b/tools/json_to_struct/json_
|
||||
description_filename = os.path.normpath(args[0])
|
||||
root, ext = os.path.splitext(description_filename)
|
||||
shortroot = opts.output if opts.output else os.path.split(root)[1]
|
||||
@@ -371,4 +381,4 @@ if __name__ == '__main__':
|
||||
@@ -348,4 +358,4 @@ if __name__ == '__main__':
|
||||
schema = _Load(opts.schema)
|
||||
description = _Load(description_filename)
|
||||
GenerateStruct(basepath, output_root, opts.namespace, schema, description,
|
||||
@@ -395,7 +409,7 @@ diff --git a/tools/json_to_struct/struct_generator.py b/tools/json_to_struct/str
|
||||
diff --git a/tools/variations/fieldtrial_to_struct.py b/tools/variations/fieldtrial_to_struct.py
|
||||
--- a/tools/variations/fieldtrial_to_struct.py
|
||||
+++ b/tools/variations/fieldtrial_to_struct.py
|
||||
@@ -232,14 +232,14 @@ def main(arguments):
|
||||
@@ -235,14 +235,14 @@ def main(arguments):
|
||||
json_to_struct.GenerateStruct(
|
||||
basepath, output_root, opts.namespace, schema, description,
|
||||
os.path.split(description_filename)[1], os.path.split(opts.schema)[1],
|
||||
|
||||
@@ -48,7 +48,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
|
||||
diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni
|
||||
--- a/chrome/android/chrome_java_sources.gni
|
||||
+++ b/chrome/android/chrome_java_sources.gni
|
||||
@@ -254,6 +254,7 @@ chrome_java_sources = [
|
||||
@@ -260,6 +260,7 @@ chrome_java_sources = [
|
||||
"java/src/org/chromium/chrome/browser/browsing_data/ClearBrowsingDataCheckBoxPreference.java",
|
||||
"java/src/org/chromium/chrome/browser/browsing_data/ClearBrowsingDataFetcher.java",
|
||||
"java/src/org/chromium/chrome/browser/browsing_data/ClearBrowsingDataFragment.java",
|
||||
@@ -74,7 +74,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
|
||||
@@ -190,6 +190,7 @@ import org.chromium.chrome.browser.profiles.ProfileProvider;
|
||||
@@ -198,6 +198,7 @@ import org.chromium.chrome.browser.profiles.ProfileProvider;
|
||||
import org.chromium.chrome.browser.quick_delete.QuickDeleteController;
|
||||
import org.chromium.chrome.browser.quick_delete.QuickDeleteDelegateImpl;
|
||||
import org.chromium.chrome.browser.quick_delete.QuickDeleteMetricsDelegate;
|
||||
@@ -82,7 +82,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
|
||||
import org.chromium.chrome.browser.read_later.ReadingListBackPressHandler;
|
||||
import org.chromium.chrome.browser.recent_tabs.CrossDevicePaneFactory;
|
||||
import org.chromium.chrome.browser.reengagement.ReengagementNotificationController;
|
||||
@@ -1780,7 +1781,11 @@ public class ChromeTabbedActivity extends ChromeActivity {
|
||||
@@ -1803,7 +1804,11 @@ public class ChromeTabbedActivity extends ChromeActivity {
|
||||
Intent intent = getIntent();
|
||||
|
||||
boolean hadCipherData =
|
||||
@@ -334,7 +334,7 @@ new file mode 100644
|
||||
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
|
||||
@@ -2228,6 +2228,16 @@
|
||||
@@ -2227,6 +2227,16 @@
|
||||
<message name="IDS_SETTINGS_CLEAR_BROWSING_DATA" desc="Text for delete browsing data button in Privacy options">
|
||||
Delete browsing data
|
||||
</message>
|
||||
@@ -420,7 +420,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
|
||||
@@ -311,8 +311,25 @@ void ChromeBrowsingDataLifetimeManager::Shutdown() {
|
||||
@@ -324,8 +324,25 @@ void ChromeBrowsingDataLifetimeManager::Shutdown() {
|
||||
|
||||
void ChromeBrowsingDataLifetimeManager::ClearBrowsingDataForOnExitPolicy(
|
||||
bool keep_browser_alive) {
|
||||
@@ -448,7 +448,7 @@ diff --git a/chrome/browser/browsing_data/chrome_browsing_data_lifetime_manager.
|
||||
|
||||
if (!data_types.empty() &&
|
||||
IsConditionSatisfiedForBrowsingDataRemoval(GetSyncTypesForPolicyPref(
|
||||
@@ -421,6 +438,7 @@ void ChromeBrowsingDataLifetimeManager::StartScheduledBrowsingDataRemoval() {
|
||||
@@ -434,6 +451,7 @@ void ChromeBrowsingDataLifetimeManager::StartScheduledBrowsingDataRemoval() {
|
||||
bool ChromeBrowsingDataLifetimeManager::
|
||||
IsConditionSatisfiedForBrowsingDataRemoval(
|
||||
const syncer::UserSelectableTypeSet sync_types) {
|
||||
@@ -515,7 +515,7 @@ diff --git a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.
|
||||
diff --git a/chrome/browser/extensions/api/settings_private/prefs_util.cc b/chrome/browser/extensions/api/settings_private/prefs_util.cc
|
||||
--- a/chrome/browser/extensions/api/settings_private/prefs_util.cc
|
||||
+++ b/chrome/browser/extensions/api/settings_private/prefs_util.cc
|
||||
@@ -541,6 +541,23 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlistedKeys() {
|
||||
@@ -543,6 +543,23 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlistedKeys() {
|
||||
(*s_allowlist)[browsing_data::prefs::kLastClearBrowsingDataTab] =
|
||||
settings_api::PrefType::kNumber;
|
||||
|
||||
@@ -594,7 +594,7 @@ diff --git a/chrome/browser/profiles/profile_manager.cc b/chrome/browser/profile
|
||||
void ProfileManager::DoFinalInitForServices(Profile* profile,
|
||||
bool go_off_the_record) {
|
||||
if (!do_final_services_init_ ||
|
||||
@@ -2121,7 +2134,7 @@ void ProfileManager::OnBrowserClosed(Browser* browser) {
|
||||
@@ -2119,7 +2132,7 @@ void ProfileManager::OnBrowserClosed(Browser* browser) {
|
||||
Profile* original_profile = profile->GetOriginalProfile();
|
||||
// Do nothing if the closed window is not the last window of the same profile.
|
||||
for (Browser* browser_iter : *BrowserList::GetInstance()) {
|
||||
@@ -691,7 +691,7 @@ diff --git a/chrome/browser/resources/settings/clear_browsing_data_dialog/clear_
|
||||
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
|
||||
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
|
||||
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
|
||||
@@ -1590,6 +1590,9 @@ Your Google account may have other forms of browsing history like searches and a
|
||||
@@ -1581,6 +1581,9 @@ Your Google account may have other forms of browsing history like searches and a
|
||||
<message name="IDS_ANDROID_APP_HISTORY_OPEN_FULL_OTHER_FORMS" desc="The informational message at the top of the history page letting users know that app-specific history may be missing some entries, followed by the info on the other forms of browing history.">
|
||||
Some of your history might not show up here. To see all your Chrome history, open full Chrome history. Also, your Google Account may have other forms of browsing history at <ph name="BEGIN_LINK"><link></ph>myactivity.google.com<ph name="END_LINK"></link></ph>.
|
||||
</message>
|
||||
@@ -718,7 +718,7 @@ new file mode 100644
|
||||
diff --git a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc
|
||||
--- a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc
|
||||
+++ b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc
|
||||
@@ -1910,6 +1910,7 @@ void AddPrivacyStrings(content::WebUIDataSource* html_source,
|
||||
@@ -1945,6 +1945,7 @@ void AddPrivacyStrings(content::WebUIDataSource* html_source,
|
||||
{"clearedData", IDS_SETTINGS_CLEARED_DATA},
|
||||
{"clearBrowsingData", IDS_SETTINGS_CLEAR_BROWSING_DATA},
|
||||
{"clearBrowsingDataDescription", IDS_SETTINGS_CLEAR_DATA_DESCRIPTION},
|
||||
@@ -748,7 +748,7 @@ diff --git a/components/browsing_data/content/browsing_data_helper.cc b/componen
|
||||
diff --git a/components/browsing_data/core/BUILD.gn b/components/browsing_data/core/BUILD.gn
|
||||
--- a/components/browsing_data/core/BUILD.gn
|
||||
+++ b/components/browsing_data/core/BUILD.gn
|
||||
@@ -61,6 +61,10 @@ if (is_android) {
|
||||
@@ -62,6 +62,10 @@ if (is_android) {
|
||||
visibility = [ ":*" ]
|
||||
sources = [ "browsing_data_utils.h" ]
|
||||
}
|
||||
@@ -759,7 +759,7 @@ diff --git a/components/browsing_data/core/BUILD.gn b/components/browsing_data/c
|
||||
java_cpp_enum("cookie_or_cache_deletion_choice_javagen") {
|
||||
# External code should depend on ":java" instead.
|
||||
visibility = [ ":*" ]
|
||||
@@ -70,6 +74,7 @@ if (is_android) {
|
||||
@@ -71,6 +75,7 @@ if (is_android) {
|
||||
android_library("java") {
|
||||
srcjar_deps = [
|
||||
":browsing_data_utils_javagen",
|
||||
@@ -826,7 +826,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
|
||||
@@ -341,6 +341,37 @@ bool GetDeletionPreferenceFromDataType(
|
||||
@@ -407,6 +407,37 @@ bool GetDeletionPreferenceFromDataType(
|
||||
BrowsingDataType data_type,
|
||||
ClearBrowsingDataTab clear_browsing_data_tab,
|
||||
std::string* out_pref) {
|
||||
@@ -976,7 +976,7 @@ diff --git a/components/search_engines/template_url_service.cc b/components/sear
|
||||
diff --git a/content/browser/btm/btm_service_impl.cc b/content/browser/btm/btm_service_impl.cc
|
||||
--- a/content/browser/btm/btm_service_impl.cc
|
||||
+++ b/content/browser/btm/btm_service_impl.cc
|
||||
@@ -221,7 +221,7 @@ class StateClearer : public BrowsingDataRemover::Observer {
|
||||
@@ -210,7 +210,7 @@ class StateClearer : public BrowsingDataRemover::Observer {
|
||||
remove_mask &= ~BrowsingDataRemover::DATA_TYPE_PRIVACY_SANDBOX;
|
||||
remover->RemoveWithFilterAndReply(
|
||||
base::Time::Min(), base::Time::Max(),
|
||||
@@ -988,7 +988,7 @@ diff --git a/content/browser/btm/btm_service_impl.cc b/content/browser/btm/btm_s
|
||||
diff --git a/content/browser/storage_partition_impl.cc b/content/browser/storage_partition_impl.cc
|
||||
--- a/content/browser/storage_partition_impl.cc
|
||||
+++ b/content/browser/storage_partition_impl.cc
|
||||
@@ -1528,6 +1528,7 @@ void StoragePartitionImpl::Initialize(
|
||||
@@ -1511,6 +1511,7 @@ void StoragePartitionImpl::Initialize(
|
||||
.AppendASCII("Code Cache");
|
||||
}
|
||||
DCHECK_GE(settings.size_in_bytes(), 0);
|
||||
@@ -999,7 +999,7 @@ diff --git a/content/browser/storage_partition_impl.cc b/content/browser/storage
|
||||
diff --git a/content/public/browser/browsing_data_remover.h b/content/public/browser/browsing_data_remover.h
|
||||
--- a/content/public/browser/browsing_data_remover.h
|
||||
+++ b/content/public/browser/browsing_data_remover.h
|
||||
@@ -151,14 +151,19 @@ class BrowsingDataRemover {
|
||||
@@ -151,9 +151,11 @@ class BrowsingDataRemover {
|
||||
static constexpr DataType DATA_TYPE_RELATED_WEBSITE_SETS_PERMISSIONS = 1
|
||||
<< 24;
|
||||
|
||||
@@ -1010,9 +1010,11 @@ diff --git a/content/public/browser/browsing_data_remover.h b/content/public/bro
|
||||
- static constexpr DataType DATA_TYPE_DEVICE_BOUND_SESSIONS = 1 << 25;
|
||||
+ static constexpr DataType DATA_TYPE_DEVICE_BOUND_SESSIONS = 1 << 26;
|
||||
|
||||
// Interest group data that should be cleared in response to user action,
|
||||
// but not Clear-Site-Site data.
|
||||
@@ -167,6 +169,9 @@ class BrowsingDataRemover {
|
||||
// Embedders can add more datatypes beyond this point.
|
||||
static constexpr DataType DATA_TYPE_CONTENT_END =
|
||||
DATA_TYPE_DEVICE_BOUND_SESSIONS;
|
||||
static constexpr DataType DATA_TYPE_CONTENT_END = DATA_TYPE_PRERENDER_CACHE;
|
||||
|
||||
+ static_assert(DATA_TYPE_CONTENT_END == DATA_TYPE_DEVICE_BOUND_SESSIONS,
|
||||
+ "Please check.");
|
||||
|
||||
@@ -38,15 +38,15 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
|
||||
diff --git a/android_webview/java/src/org/chromium/android_webview/contextmenu/AwContextMenuItemDelegate.java b/android_webview/java/src/org/chromium/android_webview/contextmenu/AwContextMenuItemDelegate.java
|
||||
--- a/android_webview/java/src/org/chromium/android_webview/contextmenu/AwContextMenuItemDelegate.java
|
||||
+++ b/android_webview/java/src/org/chromium/android_webview/contextmenu/AwContextMenuItemDelegate.java
|
||||
@@ -11,6 +11,7 @@ import android.net.Uri;
|
||||
import org.chromium.base.IntentUtils;
|
||||
@@ -12,6 +12,7 @@ import org.chromium.base.IntentUtils;
|
||||
import org.chromium.build.annotations.NullMarked;
|
||||
import org.chromium.components.embedder_support.contextmenu.ContextMenuItemDelegate;
|
||||
import org.chromium.components.embedder_support.contextmenu.ContextMenuParams;
|
||||
+import org.chromium.content_public.common.Referrer;
|
||||
import org.chromium.content_public.browser.WebContents;
|
||||
import org.chromium.ui.base.Clipboard;
|
||||
import org.chromium.url.GURL;
|
||||
@@ -52,6 +53,9 @@ public class AwContextMenuItemDelegate implements ContextMenuItemDelegate {
|
||||
@@ -54,6 +55,9 @@ public class AwContextMenuItemDelegate implements ContextMenuItemDelegate {
|
||||
IntentUtils.safeStartActivity(mActivity, intent);
|
||||
}
|
||||
|
||||
@@ -59,7 +59,7 @@ diff --git a/android_webview/java/src/org/chromium/android_webview/contextmenu/A
|
||||
diff --git a/chrome/android/java/res/values/ids.xml b/chrome/android/java/res/values/ids.xml
|
||||
--- a/chrome/android/java/res/values/ids.xml
|
||||
+++ b/chrome/android/java/res/values/ids.xml
|
||||
@@ -99,6 +99,7 @@ found in the LICENSE file.
|
||||
@@ -104,6 +104,7 @@ found in the LICENSE file.
|
||||
|
||||
<!-- Menu item IDs for FullscreenActivities -->
|
||||
<item type="id" name="contextmenu_open_in_chrome" />
|
||||
@@ -98,29 +98,29 @@ 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
|
||||
@@ -118,8 +118,9 @@ class ChromeContextMenuItem {
|
||||
int SAVE_PAGE = 35;
|
||||
int SHARE_PAGE = 36;
|
||||
int PRINT_PAGE = 37;
|
||||
+ int FOLLOW_LINK = 38;
|
||||
@@ -127,8 +127,9 @@ class ChromeContextMenuItem {
|
||||
int RELOAD = 40;
|
||||
// Developer Group
|
||||
int INSPECT_ELEMENT = 41;
|
||||
+ int FOLLOW_LINK = 42;
|
||||
// ALWAYS UPDATE!
|
||||
- int NUM_ENTRIES = 38;
|
||||
+ int NUM_ENTRIES = 39;
|
||||
- int NUM_ENTRIES = 42;
|
||||
+ int NUM_ENTRIES = 43;
|
||||
}
|
||||
|
||||
/** Mapping from {@link Item} to the ID found in the ids.xml. */
|
||||
@@ -162,6 +163,7 @@ class ChromeContextMenuItem {
|
||||
R.id.contextmenu_save_page, // Item.SAVE_PAGE
|
||||
R.id.contextmenu_share_page, // Item.SHARE_PAGE
|
||||
R.id.contextmenu_print_page, // Item.PRINT_PAGE
|
||||
@@ -175,6 +176,7 @@ class ChromeContextMenuItem {
|
||||
R.id.contextmenu_forward, // Item.FORWARD
|
||||
R.id.contextmenu_reload, // Item.RELOAD
|
||||
R.id.contextmenu_inspect_element, // Item.INSPECT_ELEMENT
|
||||
+ R.id.contextmenu_open_in_tab, // Item.OPEN_IN_NEW_CHROME_TAB
|
||||
};
|
||||
|
||||
/** Mapping from {@link Item} to the ID of the string that describes the action of the item. */
|
||||
@@ -204,6 +206,7 @@ class ChromeContextMenuItem {
|
||||
R.string.contextmenu_save_page, // Item.SAVE_PAGE
|
||||
R.string.contextmenu_share_page, // Item.SHARE_PAGE
|
||||
R.string.contextmenu_print_page, // Item.PRINT_PAGE
|
||||
@@ -221,6 +223,7 @@ class ChromeContextMenuItem {
|
||||
R.string.contextmenu_forward, // Item.FORWARD
|
||||
R.string.contextmenu_reload, // Item.RELOAD
|
||||
R.string.contextmenu_inspect_element, // Item.INSPECT_ELEMENT
|
||||
+ R.string.contextmenu_open_in_tab, // Item.OPEN_IN_NEW_CHROME_TAB
|
||||
};
|
||||
|
||||
@@ -128,8 +128,8 @@ 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
|
||||
@@ -318,6 +318,9 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
|
||||
|
||||
@@ -380,6 +380,9 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
|
||||
}
|
||||
if (mParams.isAnchor()) {
|
||||
ModelList linkGroup = new ModelList();
|
||||
+ if (ChromeFeatureList.sShowAlwaysContextMenuOnLinks.isEnabled()) {
|
||||
@@ -138,7 +138,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr
|
||||
if (FirstRunStatus.getFirstRunFlowComplete()
|
||||
&& !isEmptyUrl(mParams.getUrl())
|
||||
&& UrlUtilities.isAcceptedScheme(mParams.getUrl())) {
|
||||
@@ -734,6 +737,8 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
|
||||
@@ -817,6 +820,8 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
|
||||
getProfile(),
|
||||
false);
|
||||
});
|
||||
@@ -150,7 +150,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextMenuItemDelegate.java
|
||||
@@ -323,6 +323,14 @@ public class TabContextMenuItemDelegate implements ContextMenuItemDelegate {
|
||||
@@ -356,6 +356,14 @@ public class TabContextMenuItemDelegate implements ContextMenuItemDelegate {
|
||||
mTab.loadUrl(loadUrlParams);
|
||||
}
|
||||
|
||||
@@ -168,27 +168,27 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabContextM
|
||||
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc
|
||||
--- a/chrome/browser/flags/android/chrome_feature_list.cc
|
||||
+++ b/chrome/browser/flags/android/chrome_feature_list.cc
|
||||
@@ -350,6 +350,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
|
||||
@@ -367,6 +367,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
|
||||
&kTabGroupEntryPointsAndroid,
|
||||
&kTabGroupParityBottomSheetAndroid,
|
||||
&kToolbarPhoneCleanup,
|
||||
+ &blink::features::kShowAlwaysContextMenuOnLinks,
|
||||
&kTabStateFlatBuffer,
|
||||
&kTabStripContextMenuAndroid,
|
||||
&kTabStripGroupCollapseAndroid,
|
||||
&kTabStripGroupDragDropAndroid,
|
||||
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
|
||||
@@ -423,6 +423,8 @@ public abstract class ChromeFeatureList {
|
||||
@@ -438,6 +438,8 @@ public abstract class ChromeFeatureList {
|
||||
"DisableToolbarSwipeUp";
|
||||
public static final String MOVE_TOP_TOOLBAR_TO_BOTTOM =
|
||||
"MoveTopToolbarToBottom";
|
||||
+ public static final String SHOW_ALWAYS_CONTEXT_MENU_ON_LINKS =
|
||||
+ "ShowAlwaysContextMenuOnLinks";
|
||||
public static final String NOTIFICATION_PERMISSION_VARIANT = "NotificationPermissionVariant";
|
||||
public static final String NEW_TAB_SEARCH_ENGINE_URL_ANDROID = "NewTabSearchEngineUrlAndroid";
|
||||
public static final String NOTIFICATION_ONE_TAP_UNSUBSCRIBE = "NotificationOneTapUnsubscribe";
|
||||
public static final String NOTIFICATION_PERMISSION_BOTTOM_SHEET =
|
||||
"NotificationPermissionBottomSheet";
|
||||
@@ -805,6 +807,8 @@ public abstract class ChromeFeatureList {
|
||||
@@ -809,6 +811,8 @@ public abstract class ChromeFeatureList {
|
||||
newCachedFlag(DISABLE_TOOLBAR_SWIPE_UP, false);
|
||||
public static final CachedFlag sMoveTopToolbarToBottom =
|
||||
newCachedFlag(MOVE_TOP_TOOLBAR_TO_BOTTOM, false);
|
||||
@@ -197,7 +197,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
|
||||
public static final CachedFlag sPaintPreviewDemo = newCachedFlag(PAINT_PREVIEW_DEMO, false);
|
||||
public static final CachedFlag sPostGetMyMemoryStateToBackground =
|
||||
newCachedFlag(POST_GET_MEMORY_PRESSURE_TO_BACKGROUND, true);
|
||||
@@ -970,6 +974,7 @@ public abstract class ChromeFeatureList {
|
||||
@@ -978,6 +982,7 @@ public abstract class ChromeFeatureList {
|
||||
sTabWindowManagerReportIndicesMismatch,
|
||||
sTraceBinderIpc,
|
||||
sUseChimeAndroidSdk,
|
||||
@@ -208,7 +208,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
|
||||
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
|
||||
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
|
||||
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
|
||||
@@ -1739,6 +1739,12 @@ Your Google account may have other forms of browsing history like searches and a
|
||||
@@ -1725,6 +1725,12 @@ Your Google account may have other forms of browsing history like searches and a
|
||||
<message name="IDS_DISABLE_TOOLBAR_SWIPE_UP" desc="Summary of the preference that allows the user to disable toolbar swipeup.">
|
||||
Disable toolbar swipe up
|
||||
</message>
|
||||
@@ -221,7 +221,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]">
|
||||
@@ -3313,6 +3319,9 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>delete the Chrome d
|
||||
@@ -3326,6 +3332,9 @@ To change this setting, <ph name="BEGIN_LINK">BEGIN_LINK</ph>delete the Chrome d
|
||||
<message name="IDS_CONTEXTMENU_OPEN_IN_NEW_CHROME_TAB" desc="Context sensitive menu item to open the selected link in a new Chrome tab from Chrome Custom Tab. [CHAR_LIMIT=30]">
|
||||
Open in new Chrome tab
|
||||
</message>
|
||||
@@ -249,7 +249,7 @@ diff --git a/components/browser_ui/accessibility/android/java/res/xml/accessibil
|
||||
diff --git a/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettings.java b/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettings.java
|
||||
--- a/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettings.java
|
||||
+++ b/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettings.java
|
||||
@@ -52,6 +52,9 @@ public class AccessibilitySettings extends ChromeBaseSettingsFragment
|
||||
@@ -54,6 +54,9 @@ public class AccessibilitySettings extends ChromeBaseSettingsFragment
|
||||
private BooleanPreferenceDelegate mMoveTopToolbarToBottomDelegate;
|
||||
private BooleanPreferenceDelegate mDisableToolbarSwipeUpDelegate;
|
||||
|
||||
@@ -259,7 +259,7 @@ diff --git a/components/browser_ui/accessibility/android/java/src/org/chromium/c
|
||||
private PageZoomPreference mPageZoomDefaultZoomPref;
|
||||
private ChromeSwitchPreference mPageZoomIncludeOSAdjustment;
|
||||
private ChromeSwitchPreference mPageZoomAlwaysShowPref;
|
||||
@@ -138,6 +141,12 @@ public class AccessibilitySettings extends ChromeBaseSettingsFragment
|
||||
@@ -143,6 +146,12 @@ public class AccessibilitySettings extends ChromeBaseSettingsFragment
|
||||
mDisableToolbarSwipeUpPref.setChecked(mDisableToolbarSwipeUpDelegate.getValue());
|
||||
mDisableToolbarSwipeUpPref.setOnPreferenceChangeListener(this);
|
||||
|
||||
@@ -272,7 +272,7 @@ diff --git a/components/browser_ui/accessibility/android/java/src/org/chromium/c
|
||||
Preference captions = findPreference(PREF_CAPTIONS);
|
||||
captions.setOnPreferenceClickListener(
|
||||
preference -> {
|
||||
@@ -219,6 +228,9 @@ public class AccessibilitySettings extends ChromeBaseSettingsFragment
|
||||
@@ -224,6 +233,9 @@ public class AccessibilitySettings extends ChromeBaseSettingsFragment
|
||||
} else if (PREF_DISABLE_TOOLBAR_SWIPE_UP.equals(preference.getKey())) {
|
||||
mDisableToolbarSwipeUpDelegate.setValue((Boolean) newValue);
|
||||
mDelegate.requestRestart(getActivity());
|
||||
@@ -386,7 +386,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;
|
||||
|
||||
@@ -633,7 +654,7 @@ Element* HTMLAnchorElementBase::interestTargetElement() {
|
||||
@@ -633,7 +654,7 @@ Element* HTMLAnchorElementBase::InterestTargetElement() const {
|
||||
html_names::kInteresttargetAttr);
|
||||
}
|
||||
|
||||
@@ -428,7 +428,7 @@ diff --git a/third_party/blink/renderer/core/html/html_anchor_element.h b/third_
|
||||
--- a/third_party/blink/renderer/core/html/html_anchor_element.h
|
||||
+++ b/third_party/blink/renderer/core/html/html_anchor_element.h
|
||||
@@ -112,6 +112,7 @@ class CORE_EXPORT HTMLAnchorElementBase : public HTMLElement,
|
||||
Element* interestTargetElement() override;
|
||||
Element* InterestTargetElement() const override;
|
||||
|
||||
void Trace(Visitor*) const override;
|
||||
+ void HandleClick(MouseEvent&, bool do_not_show_context_menu = false);
|
||||
|
||||
@@ -43,7 +43,7 @@ diff --git a/chrome/browser/net/chrome_report_sender.cc b/chrome/browser/net/chr
|
||||
diff --git a/content/browser/devtools/protocol/network_handler.cc b/content/browser/devtools/protocol/network_handler.cc
|
||||
--- a/content/browser/devtools/protocol/network_handler.cc
|
||||
+++ b/content/browser/devtools/protocol/network_handler.cc
|
||||
@@ -1481,6 +1481,7 @@ String BuildReportStatus(const net::ReportingReport::Status status) {
|
||||
@@ -1482,6 +1482,7 @@ String BuildReportStatus(const net::ReportingReport::Status status) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -51,7 +51,7 @@ diff --git a/content/browser/devtools/protocol/network_handler.cc b/content/brow
|
||||
std::vector<GURL> ComputeReportingURLs(RenderFrameHostImpl* frame_host) {
|
||||
std::vector<GURL> urls;
|
||||
frame_host->ForEachRenderFrameHostImplWithAction(
|
||||
@@ -1494,6 +1495,7 @@ std::vector<GURL> ComputeReportingURLs(RenderFrameHostImpl* frame_host) {
|
||||
@@ -1495,6 +1496,7 @@ std::vector<GURL> ComputeReportingURLs(RenderFrameHostImpl* frame_host) {
|
||||
});
|
||||
return urls;
|
||||
}
|
||||
@@ -126,7 +126,7 @@ diff --git a/content/browser/network/reporting_service_proxy.cc b/content/browse
|
||||
diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc
|
||||
--- a/content/browser/renderer_host/render_frame_host_impl.cc
|
||||
+++ b/content/browser/renderer_host/render_frame_host_impl.cc
|
||||
@@ -15823,12 +15823,6 @@ void RenderFrameHostImpl::MaybeGenerateCrashReport(
|
||||
@@ -15967,12 +15967,6 @@ void RenderFrameHostImpl::MaybeGenerateCrashReport(
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -284,7 +284,7 @@ diff --git a/net/reporting/reporting_header_parser.cc b/net/reporting/reporting_
|
||||
diff --git a/net/reporting/reporting_service.cc b/net/reporting/reporting_service.cc
|
||||
--- a/net/reporting/reporting_service.cc
|
||||
+++ b/net/reporting/reporting_service.cc
|
||||
@@ -225,6 +225,12 @@ class ReportingServiceImpl : public ReportingService {
|
||||
@@ -236,6 +236,12 @@ class ReportingServiceImpl : public ReportingService {
|
||||
int depth,
|
||||
base::TimeTicks queued_ticks,
|
||||
ReportingTargetType target_type) {
|
||||
@@ -300,7 +300,7 @@ diff --git a/net/reporting/reporting_service.cc b/net/reporting/reporting_servic
|
||||
diff --git a/services/network/network_context.h b/services/network/network_context.h
|
||||
--- a/services/network/network_context.h
|
||||
+++ b/services/network/network_context.h
|
||||
@@ -481,14 +481,14 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext
|
||||
@@ -485,14 +485,14 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext
|
||||
const GURL& url,
|
||||
const std::optional<base::UnguessableToken>& reporting_source,
|
||||
const net::NetworkAnonymizationKey& network_anonymization_key,
|
||||
@@ -332,7 +332,7 @@ diff --git a/services/network/public/cpp/parsed_headers.cc b/services/network/pu
|
||||
diff --git a/services/network/public/mojom/BUILD.gn b/services/network/public/mojom/BUILD.gn
|
||||
--- a/services/network/public/mojom/BUILD.gn
|
||||
+++ b/services/network/public/mojom/BUILD.gn
|
||||
@@ -1761,7 +1761,6 @@ mojom("mojom") {
|
||||
@@ -1791,7 +1791,6 @@ mojom("mojom") {
|
||||
export_define_blink = "BLINK_PLATFORM_IMPLEMENTATION=1"
|
||||
export_header_blink = "third_party/blink/public/platform/web_common.h"
|
||||
if (enable_reporting) {
|
||||
@@ -343,7 +343,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
|
||||
@@ -1227,6 +1227,7 @@ interface NetworkContext {
|
||||
@@ -1230,6 +1230,7 @@ interface NetworkContext {
|
||||
// provided `network_anonymization_key`.
|
||||
//
|
||||
// Spec: https://w3c.github.io/reporting/#concept-reports
|
||||
@@ -351,7 +351,7 @@ diff --git a/services/network/public/mojom/network_context.mojom b/services/netw
|
||||
QueueReport(string type,
|
||||
string group,
|
||||
url.mojom.Url url,
|
||||
@@ -1234,6 +1235,7 @@ interface NetworkContext {
|
||||
@@ -1237,6 +1238,7 @@ interface NetworkContext {
|
||||
NetworkAnonymizationKey network_anonymization_key,
|
||||
mojo_base.mojom.DictionaryValue body);
|
||||
|
||||
@@ -359,7 +359,7 @@ diff --git a/services/network/public/mojom/network_context.mojom b/services/netw
|
||||
QueueEnterpriseReport(string type,
|
||||
string group,
|
||||
url.mojom.Url url,
|
||||
@@ -1244,6 +1246,7 @@ interface NetworkContext {
|
||||
@@ -1247,6 +1249,7 @@ interface NetworkContext {
|
||||
// Note that this queued report will never be delivered if no reporting
|
||||
// endpoint matching is registered for with the provided
|
||||
// `network_anonymization_key`.
|
||||
@@ -377,8 +377,8 @@ diff --git a/third_party/blink/renderer/core/frame/csp/content_security_policy.c
|
||||
+#include "net/net_buildflags.h"
|
||||
#include "base/containers/contains.h"
|
||||
#include "base/debug/dump_without_crashing.h"
|
||||
#include "services/network/public/cpp/web_sandbox_flags.h"
|
||||
@@ -1345,6 +1346,7 @@ void ContentSecurityPolicy::ReportViolation(
|
||||
#include "base/feature_list.h"
|
||||
@@ -1303,6 +1304,7 @@ void ContentSecurityPolicy::ReportViolation(
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -386,7 +386,7 @@ diff --git a/third_party/blink/renderer/core/frame/csp/content_security_policy.c
|
||||
PostViolationReport(violation_data, context_frame, report_endpoints,
|
||||
use_reporting_api);
|
||||
|
||||
@@ -1352,6 +1354,7 @@ void ContentSecurityPolicy::ReportViolation(
|
||||
@@ -1310,6 +1312,7 @@ void ContentSecurityPolicy::ReportViolation(
|
||||
// `context_frame` (i.e. we're not processing 'frame-ancestors').
|
||||
if (delegate_ && !context_frame)
|
||||
delegate_->DispatchViolationEvent(*violation_data, element);
|
||||
@@ -405,7 +405,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"
|
||||
@@ -2761,9 +2762,11 @@ DocumentResourceCoordinator* LocalFrame::GetDocumentResourceCoordinator() {
|
||||
@@ -2772,9 +2773,11 @@ DocumentResourceCoordinator* LocalFrame::GetDocumentResourceCoordinator() {
|
||||
return CHECK_DEREF(GetDocument()).GetResourceCoordinator();
|
||||
}
|
||||
|
||||
@@ -428,7 +428,7 @@ diff --git a/third_party/blink/renderer/core/frame/local_frame.h b/third_party/b
|
||||
#include "mojo/public/cpp/bindings/pending_associated_receiver.h"
|
||||
#include "mojo/public/cpp/bindings/pending_receiver.h"
|
||||
#include "services/metrics/public/cpp/ukm_source_id.h"
|
||||
@@ -659,7 +660,9 @@ class CORE_EXPORT LocalFrame final
|
||||
@@ -662,7 +663,9 @@ class CORE_EXPORT LocalFrame final
|
||||
return client_hints_preferences_;
|
||||
}
|
||||
|
||||
|
||||
@@ -16,14 +16,13 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
.../core/browser/supervised_user_pref_store.cc | 1 +
|
||||
.../core/browser/supervised_user_preferences.cc | 6 +++++-
|
||||
.../core/browser/supervised_user_service.cc | 5 +----
|
||||
.../supervised_user/core/browser/supervised_user_utils.cc | 1 +
|
||||
components/supervised_user/core/common/features.cc | 5 ++++-
|
||||
14 files changed, 15 insertions(+), 31 deletions(-)
|
||||
13 files changed, 14 insertions(+), 31 deletions(-)
|
||||
|
||||
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
|
||||
--- a/chrome/android/BUILD.gn
|
||||
+++ b/chrome/android/BUILD.gn
|
||||
@@ -789,7 +789,6 @@ if (current_toolchain == default_toolchain) {
|
||||
@@ -803,7 +803,6 @@ if (_is_default_toolchain) {
|
||||
"//components/offline_pages/core:offline_page_model_enums_java",
|
||||
"//components/sharing_message:sharing_dialog_type_generated_enum",
|
||||
"//components/sharing_message:sharing_send_message_result_generated_enum",
|
||||
@@ -76,7 +75,7 @@ diff --git a/chrome/browser/prefs/chrome_pref_service_factory.cc b/chrome/browse
|
||||
diff --git a/chrome/browser/profiles/profile_attributes_entry.cc b/chrome/browser/profiles/profile_attributes_entry.cc
|
||||
--- a/chrome/browser/profiles/profile_attributes_entry.cc
|
||||
+++ b/chrome/browser/profiles/profile_attributes_entry.cc
|
||||
@@ -469,7 +469,7 @@ bool ProfileAttributesEntry::IsSigninRequired() const {
|
||||
@@ -467,7 +467,7 @@ bool ProfileAttributesEntry::IsSigninRequired() const {
|
||||
}
|
||||
|
||||
std::string ProfileAttributesEntry::GetSupervisedUserId() const {
|
||||
@@ -121,7 +120,7 @@ diff --git a/chrome/browser/profiles/profile_manager.cc b/chrome/browser/profile
|
||||
#if !BUILDFLAG(IS_ANDROID)
|
||||
if (profile->IsNewProfile()) {
|
||||
profile->GetPrefs()->SetBoolean(prefs::kHasSeenWelcomePage, false);
|
||||
@@ -1977,9 +1973,6 @@ void ProfileManager::AddProfileToStorage(Profile* profile) {
|
||||
@@ -1975,9 +1971,6 @@ void ProfileManager::AddProfileToStorage(Profile* profile) {
|
||||
init_params.icon_index =
|
||||
profile->GetPrefs()->GetInteger(prefs::kProfileAvatarIndex);
|
||||
|
||||
@@ -196,7 +195,7 @@ diff --git a/components/supervised_user/core/browser/supervised_user_preferences
|
||||
diff --git a/components/supervised_user/core/browser/supervised_user_service.cc b/components/supervised_user/core/browser/supervised_user_service.cc
|
||||
--- a/components/supervised_user/core/browser/supervised_user_service.cc
|
||||
+++ b/components/supervised_user/core/browser/supervised_user_service.cc
|
||||
@@ -91,10 +91,6 @@ void SupervisedUserService::Init() {
|
||||
@@ -92,10 +92,6 @@ void SupervisedUserService::Init() {
|
||||
DCHECK(settings_service_->IsReady());
|
||||
|
||||
pref_change_registrar_.Init(&user_prefs_.get());
|
||||
@@ -204,10 +203,10 @@ diff --git a/components/supervised_user/core/browser/supervised_user_service.cc
|
||||
- prefs::kSupervisedUserId,
|
||||
- base::BindRepeating(&SupervisedUserService::OnSupervisedUserIdChanged,
|
||||
- base::Unretained(this)));
|
||||
SetActive(supervised_user::IsSubjectToParentalControls(user_prefs_.get()));
|
||||
}
|
||||
|
||||
@@ -161,6 +157,7 @@ SupervisedUserService::SupervisedUserService(
|
||||
pref_change_registrar_.Add(
|
||||
policy::policy_prefs::kIncognitoModeAvailability,
|
||||
base::BindRepeating(
|
||||
@@ -183,6 +179,7 @@ void SupervisedUserService::SetSettingsServiceActive(bool active) {
|
||||
}
|
||||
|
||||
void SupervisedUserService::SetActive(bool active) {
|
||||
@@ -215,29 +214,18 @@ diff --git a/components/supervised_user/core/browser/supervised_user_service.cc
|
||||
if (active_ == active) {
|
||||
return;
|
||||
}
|
||||
diff --git a/components/supervised_user/core/browser/supervised_user_utils.cc b/components/supervised_user/core/browser/supervised_user_utils.cc
|
||||
--- a/components/supervised_user/core/browser/supervised_user_utils.cc
|
||||
+++ b/components/supervised_user/core/browser/supervised_user_utils.cc
|
||||
@@ -314,6 +314,7 @@ GURL NormalizeUrl(const GURL& url) {
|
||||
}
|
||||
|
||||
bool AreWebFilterPrefsDefault(const PrefService& pref_service) {
|
||||
+ if ((true)) return true;
|
||||
return pref_service
|
||||
.FindPreference(prefs::kDefaultSupervisedUserFilteringBehavior)
|
||||
->IsDefaultValue() ||
|
||||
diff --git a/components/supervised_user/core/common/features.cc b/components/supervised_user/core/common/features.cc
|
||||
--- a/components/supervised_user/core/common/features.cc
|
||||
+++ b/components/supervised_user/core/common/features.cc
|
||||
@@ -102,7 +102,6 @@ BASE_FEATURE(kEnableExtensionsPermissionsForSupervisedUsersOnDesktop,
|
||||
"EnableExtensionsPermissionsForSupervisedUsersOnDesktop",
|
||||
base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
@@ -35,7 +35,6 @@ BASE_FEATURE(kAllowSubframeLocalWebApprovals,
|
||||
#else
|
||||
base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
#endif
|
||||
-
|
||||
#if BUILDFLAG(ENABLE_EXTENSIONS)
|
||||
BASE_FEATURE(kExposedParentalControlNeededForExtensionInstallation,
|
||||
"ExposedParentalControlNeededForExtensionInstallation",
|
||||
@@ -191,4 +190,8 @@ BASE_FEATURE(kWaitUntilAccessTokenAvailableForClassifyUrl,
|
||||
#if BUILDFLAG(IS_IOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
|
||||
BUILDFLAG(IS_WIN)
|
||||
const int kLocalWebApprovalBottomSheetLoadTimeoutDefaultValueMs = 5000;
|
||||
@@ -141,4 +140,8 @@ BASE_FEATURE(kWaitUntilAccessTokenAvailableForClassifyUrl,
|
||||
#endif
|
||||
);
|
||||
|
||||
|
||||
@@ -16,8 +16,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
|
||||
chrome/app/extensions_strings.grdp | 6 ++
|
||||
.../developer_private_api.cc | 28 +++++++++
|
||||
.../developer_private/developer_private_api.h | 3 +
|
||||
.../developer_private_functions_desktop.cc | 1 +
|
||||
.../developer_private_functions_shared.cc | 7 ++-
|
||||
.../developer_private_functions_shared.cc | 8 ++-
|
||||
.../profile_info_generator.cc | 3 +
|
||||
.../webstore_private/webstore_private_api.cc | 15 ++++-
|
||||
.../extensions/chrome_extension_system.cc | 1 +
|
||||
@@ -50,7 +49,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
|
||||
extensions/common/extension_features.cc | 14 +++++
|
||||
extensions/common/extension_features.h | 2 +
|
||||
.../definitions/developer_private.d.ts | 2 +
|
||||
37 files changed, 252 insertions(+), 108 deletions(-)
|
||||
36 files changed, 252 insertions(+), 108 deletions(-)
|
||||
create mode 100644 cromite_flags/chrome/browser/about_flags_cc/Webstore-protection.inc
|
||||
|
||||
diff --git a/chrome/app/extensions_strings.grdp b/chrome/app/extensions_strings.grdp
|
||||
@@ -72,9 +71,9 @@ diff --git a/chrome/app/extensions_strings.grdp b/chrome/app/extensions_strings.
|
||||
diff --git a/chrome/browser/extensions/api/developer_private/developer_private_api.cc b/chrome/browser/extensions/api/developer_private/developer_private_api.cc
|
||||
--- a/chrome/browser/extensions/api/developer_private/developer_private_api.cc
|
||||
+++ b/chrome/browser/extensions/api/developer_private/developer_private_api.cc
|
||||
@@ -21,6 +21,12 @@
|
||||
#include "extensions/browser/permissions_manager.h"
|
||||
#endif // !BUILDFLAG(IS_ANDROID)
|
||||
@@ -24,6 +24,12 @@
|
||||
#include "extensions/browser/app_window/app_window_registry.h"
|
||||
#endif // BUILDFLAG(ENABLE_EXTENSIONS)
|
||||
|
||||
+#include "chrome/browser/about_flags.h"
|
||||
+#include "chrome/browser/browser_process.h"
|
||||
@@ -85,7 +84,7 @@ diff --git a/chrome/browser/extensions/api/developer_private/developer_private_a
|
||||
namespace extensions {
|
||||
|
||||
namespace developer = api::developer_private;
|
||||
@@ -62,6 +68,28 @@ DeveloperPrivateAPI::GetFactoryInstance() {
|
||||
@@ -65,6 +71,28 @@ DeveloperPrivateAPI::GetFactoryInstance() {
|
||||
return g_developer_private_api_factory.Pointer();
|
||||
}
|
||||
|
||||
@@ -127,10 +126,10 @@ diff --git a/chrome/browser/extensions/api/developer_private/developer_private_a
|
||||
// Convenience method to get the DeveloperPrivateAPI for a profile.
|
||||
static DeveloperPrivateAPI* Get(content::BrowserContext* context);
|
||||
|
||||
diff --git a/chrome/browser/extensions/api/developer_private/developer_private_functions_desktop.cc b/chrome/browser/extensions/api/developer_private/developer_private_functions_desktop.cc
|
||||
--- a/chrome/browser/extensions/api/developer_private/developer_private_functions_desktop.cc
|
||||
+++ b/chrome/browser/extensions/api/developer_private/developer_private_functions_desktop.cc
|
||||
@@ -210,6 +210,7 @@ ExtensionFunction::ResponseAction DeveloperPrivateAutoUpdateFunction::Run() {
|
||||
diff --git a/chrome/browser/extensions/api/developer_private/developer_private_functions_shared.cc b/chrome/browser/extensions/api/developer_private/developer_private_functions_shared.cc
|
||||
--- a/chrome/browser/extensions/api/developer_private/developer_private_functions_shared.cc
|
||||
+++ b/chrome/browser/extensions/api/developer_private/developer_private_functions_shared.cc
|
||||
@@ -300,6 +300,7 @@ ExtensionFunction::ResponseAction DeveloperPrivateAutoUpdateFunction::Run() {
|
||||
ExtensionUpdater::CheckParams params;
|
||||
params.fetch_priority = DownloadFetchPriority::kForeground;
|
||||
params.install_immediately = true;
|
||||
@@ -138,10 +137,7 @@ diff --git a/chrome/browser/extensions/api/developer_private/developer_private_f
|
||||
params.callback =
|
||||
base::BindOnce(&DeveloperPrivateAutoUpdateFunction::OnComplete, this);
|
||||
updater->CheckNow(std::move(params));
|
||||
diff --git a/chrome/browser/extensions/api/developer_private/developer_private_functions_shared.cc b/chrome/browser/extensions/api/developer_private/developer_private_functions_shared.cc
|
||||
--- a/chrome/browser/extensions/api/developer_private/developer_private_functions_shared.cc
|
||||
+++ b/chrome/browser/extensions/api/developer_private/developer_private_functions_shared.cc
|
||||
@@ -360,7 +360,7 @@ DeveloperPrivateUpdateProfileConfigurationFunction::Run() {
|
||||
@@ -438,7 +439,7 @@ DeveloperPrivateUpdateProfileConfigurationFunction::Run() {
|
||||
|
||||
const developer::ProfileConfigurationUpdate& update = params->update;
|
||||
|
||||
@@ -150,7 +146,7 @@ diff --git a/chrome/browser/extensions/api/developer_private/developer_private_f
|
||||
Profile* profile = Profile::FromBrowserContext(browser_context());
|
||||
CHECK(profile);
|
||||
if (supervised_user::AreExtensionsPermissionsEnabled(profile)) {
|
||||
@@ -377,6 +377,11 @@ DeveloperPrivateUpdateProfileConfigurationFunction::Run() {
|
||||
@@ -455,6 +456,11 @@ DeveloperPrivateUpdateProfileConfigurationFunction::Run() {
|
||||
}
|
||||
#endif // !BUILDFLAG(IS_ANDROID)
|
||||
|
||||
@@ -165,17 +161,17 @@ diff --git a/chrome/browser/extensions/api/developer_private/developer_private_f
|
||||
diff --git a/chrome/browser/extensions/api/developer_private/profile_info_generator.cc b/chrome/browser/extensions/api/developer_private/profile_info_generator.cc
|
||||
--- a/chrome/browser/extensions/api/developer_private/profile_info_generator.cc
|
||||
+++ b/chrome/browser/extensions/api/developer_private/profile_info_generator.cc
|
||||
@@ -7,6 +7,7 @@
|
||||
#include "build/build_config.h"
|
||||
@@ -9,6 +9,7 @@
|
||||
#include "chrome/browser/prefs/incognito_mode_prefs.h"
|
||||
#include "chrome/browser/profiles/profile.h"
|
||||
#include "chrome/browser/supervised_user/supervised_user_browser_utils.h"
|
||||
+#include "chrome/browser/extensions/api/developer_private/developer_private_api.h"
|
||||
#include "chrome/common/pref_names.h"
|
||||
#include "components/policy/core/common/policy_pref_names.h"
|
||||
#include "components/prefs/pref_service.h"
|
||||
@@ -46,6 +47,8 @@ developer::ProfileInfo CreateProfileInfo(Profile* profile) {
|
||||
@@ -44,6 +45,8 @@ developer::ProfileInfo CreateProfileInfo(Profile* profile) {
|
||||
->DidUserAcknowledgeNoticeGlobally();
|
||||
#endif // !BUILDFLAG(IS_ANDROID)
|
||||
#endif // BUILDFLAG(ENABLE_EXTENSIONS)
|
||||
|
||||
+ info.is_extension_autoupdate_enabled =
|
||||
+ DeveloperPrivateAPI::IsExtensionAutoupdateEnabled();
|
||||
@@ -185,7 +181,7 @@ diff --git a/chrome/browser/extensions/api/developer_private/profile_info_genera
|
||||
diff --git a/chrome/browser/extensions/api/webstore_private/webstore_private_api.cc b/chrome/browser/extensions/api/webstore_private/webstore_private_api.cc
|
||||
--- a/chrome/browser/extensions/api/webstore_private/webstore_private_api.cc
|
||||
+++ b/chrome/browser/extensions/api/webstore_private/webstore_private_api.cc
|
||||
@@ -66,6 +66,7 @@
|
||||
@@ -61,6 +61,7 @@
|
||||
#include "extensions/browser/extension_util.h"
|
||||
#include "extensions/browser/extensions_browser_client.h"
|
||||
#include "extensions/common/extension.h"
|
||||
@@ -193,7 +189,7 @@ diff --git a/chrome/browser/extensions/api/webstore_private/webstore_private_api
|
||||
#include "extensions/common/manifest.h"
|
||||
#include "extensions/common/manifest_constants.h"
|
||||
#include "extensions/common/manifest_handlers/permissions_parser.h"
|
||||
@@ -222,6 +223,8 @@ WebstorePrivateApi::Delegate* test_delegate = nullptr;
|
||||
@@ -224,6 +225,8 @@ WebstorePrivateApi::Delegate* test_delegate = nullptr;
|
||||
// there was previously stored data, or an empty string otherwise. The Set will
|
||||
// overwrite any previous login.
|
||||
std::string GetWebstoreLogin(Profile* profile) {
|
||||
@@ -202,7 +198,7 @@ diff --git a/chrome/browser/extensions/api/webstore_private/webstore_private_api
|
||||
if (profile->GetPrefs()->HasPrefPath(kWebstoreLogin)) {
|
||||
return profile->GetPrefs()->GetString(kWebstoreLogin);
|
||||
}
|
||||
@@ -229,11 +232,15 @@ std::string GetWebstoreLogin(Profile* profile) {
|
||||
@@ -231,11 +234,15 @@ std::string GetWebstoreLogin(Profile* profile) {
|
||||
}
|
||||
|
||||
void SetWebstoreLogin(Profile* profile, const std::string& login) {
|
||||
@@ -218,7 +214,7 @@ diff --git a/chrome/browser/extensions/api/webstore_private/webstore_private_api
|
||||
switch (status) {
|
||||
case kCanRequest:
|
||||
return api::webstore_private::ExtensionInstallStatus::kCanRequest;
|
||||
@@ -1156,7 +1163,8 @@ ExtensionFunction::ResponseAction
|
||||
@@ -1160,7 +1167,8 @@ ExtensionFunction::ResponseAction
|
||||
WebstorePrivateIsInIncognitoModeFunction::Run() {
|
||||
Profile* profile = Profile::FromBrowserContext(browser_context());
|
||||
return RespondNow(ArgumentList(IsInIncognitoMode::Results::Create(
|
||||
@@ -228,7 +224,7 @@ diff --git a/chrome/browser/extensions/api/webstore_private/webstore_private_api
|
||||
}
|
||||
|
||||
WebstorePrivateIsPendingCustodianApprovalFunction::
|
||||
@@ -1252,11 +1260,14 @@ WebstorePrivateGetReferrerChainFunction::Run() {
|
||||
@@ -1256,11 +1264,14 @@ WebstorePrivateGetReferrerChainFunction::Run() {
|
||||
request.mutable_referrer_chain_options()->set_recent_navigations_to_collect(
|
||||
recent_navigations_to_collect);
|
||||
|
||||
@@ -247,7 +243,7 @@ diff --git a/chrome/browser/extensions/api/webstore_private/webstore_private_api
|
||||
diff --git a/chrome/browser/extensions/chrome_extension_system.cc b/chrome/browser/extensions/chrome_extension_system.cc
|
||||
--- a/chrome/browser/extensions/chrome_extension_system.cc
|
||||
+++ b/chrome/browser/extensions/chrome_extension_system.cc
|
||||
@@ -85,6 +85,7 @@ UninstallPingSender::FilterResult ShouldSendUninstallPing(
|
||||
@@ -92,6 +92,7 @@ UninstallPingSender::FilterResult ShouldSendUninstallPing(
|
||||
Profile* profile,
|
||||
const Extension* extension,
|
||||
UninstallReason reason) {
|
||||
@@ -271,7 +267,7 @@ diff --git a/chrome/browser/extensions/cws_info_service_factory.cc b/chrome/brow
|
||||
diff --git a/chrome/browser/extensions/extension_management.cc b/chrome/browser/extensions/extension_management.cc
|
||||
--- a/chrome/browser/extensions/extension_management.cc
|
||||
+++ b/chrome/browser/extensions/extension_management.cc
|
||||
@@ -386,6 +386,7 @@ bool ExtensionManagement::IsExemptFromMV2DeprecationByPolicy(
|
||||
@@ -391,6 +391,7 @@ bool ExtensionManagement::IsExemptFromMV2DeprecationByPolicy(
|
||||
|
||||
bool ExtensionManagement::IsAllowedByUnpublishedAvailabilityPolicy(
|
||||
const Extension* extension) {
|
||||
@@ -295,16 +291,16 @@ diff --git a/chrome/browser/extensions/extension_safety_check_utils.cc b/chrome/
|
||||
diff --git a/chrome/browser/extensions/extension_service.cc b/chrome/browser/extensions/extension_service.cc
|
||||
--- a/chrome/browser/extensions/extension_service.cc
|
||||
+++ b/chrome/browser/extensions/extension_service.cc
|
||||
@@ -248,8 +248,6 @@ ExtensionService::ExtensionService(
|
||||
|
||||
@@ -244,8 +244,6 @@ ExtensionService::ExtensionService(
|
||||
UpgradeDetector::GetInstance()->AddObserver(this);
|
||||
#endif
|
||||
|
||||
- cws_info_service_observation_.Observe(CWSInfoService::Get(profile_));
|
||||
-
|
||||
ExtensionManagementFactory::GetForBrowserContext(profile_)->AddObserver(this);
|
||||
|
||||
if (autoupdate_enabled) {
|
||||
@@ -1020,7 +1018,7 @@ void ExtensionService::OnExtensionManagementSettingsChanged() {
|
||||
@@ -756,7 +754,7 @@ void ExtensionService::OnExtensionManagementSettingsChanged() {
|
||||
// unpublished extensions should not be enabled. This update allows
|
||||
// unpublished extensions to be disabled sooner rather than waiting till the
|
||||
// next regularly scheduled fetch.
|
||||
@@ -327,15 +323,15 @@ diff --git a/chrome/browser/extensions/updater/chrome_extension_downloader_facto
|
||||
diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/browser/extensions/updater/extension_updater.cc
|
||||
--- a/chrome/browser/extensions/updater/extension_updater.cc
|
||||
+++ b/chrome/browser/extensions/updater/extension_updater.cc
|
||||
@@ -53,6 +53,7 @@
|
||||
#include "extensions/browser/updater/extension_update_data.h"
|
||||
@@ -56,6 +56,7 @@
|
||||
#include "extensions/common/constants.h"
|
||||
#include "extensions/common/extension.h"
|
||||
#include "extensions/common/extension_id.h"
|
||||
+#include "extensions/common/extension_features.h"
|
||||
#include "extensions/common/extension_set.h"
|
||||
#include "extensions/common/extension_updater_uma.h"
|
||||
#include "extensions/common/extension_urls.h"
|
||||
@@ -223,6 +224,10 @@ void ExtensionUpdater::Start() {
|
||||
@@ -229,6 +230,10 @@ void ExtensionUpdater::Start() {
|
||||
DCHECK(!weak_ptr_factory_.HasWeakPtrs());
|
||||
DCHECK(registry_);
|
||||
alive_ = true;
|
||||
@@ -346,7 +342,7 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
|
||||
// Check soon, and set up the first delayed check.
|
||||
if (!g_skip_scheduled_checks_for_tests) {
|
||||
if (g_should_immediately_update)
|
||||
@@ -359,7 +364,8 @@ void ExtensionUpdater::AddToDownloader(
|
||||
@@ -386,7 +391,8 @@ void ExtensionUpdater::AddToDownloader(
|
||||
const Extension& extension = **extension_iter;
|
||||
const ExtensionId& extension_id = extension.id();
|
||||
if (!Manifest::IsAutoUpdateableLocation(extension.location())) {
|
||||
@@ -356,7 +352,7 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
|
||||
continue;
|
||||
}
|
||||
// An extension might be overwritten by policy, and have its update url
|
||||
@@ -373,7 +379,7 @@ void ExtensionUpdater::AddToDownloader(
|
||||
@@ -400,7 +406,7 @@ void ExtensionUpdater::AddToDownloader(
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -365,7 +361,7 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
|
||||
update_check_params->update_info[extension_id] =
|
||||
GetExtensionUpdateData(extension_id);
|
||||
} else if (AddExtensionToDownloader(extension, request_id,
|
||||
@@ -412,6 +418,12 @@ bool ExtensionUpdater::AddExtensionToDownloader(
|
||||
@@ -437,6 +443,12 @@ bool ExtensionUpdater::AddExtensionToDownloader(
|
||||
}
|
||||
|
||||
void ExtensionUpdater::CheckNow(CheckParams params) {
|
||||
@@ -378,7 +374,7 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
|
||||
CHECK(enabled_);
|
||||
if (params.ids.empty()) {
|
||||
// Checking all extensions. Cancel pending DoCheckSoon() call if there's
|
||||
@@ -421,7 +433,7 @@ void ExtensionUpdater::CheckNow(CheckParams params) {
|
||||
@@ -446,7 +458,7 @@ void ExtensionUpdater::CheckNow(CheckParams params) {
|
||||
|
||||
int request_id = next_request_id_++;
|
||||
|
||||
@@ -387,7 +383,7 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
|
||||
if (params.ids.empty())
|
||||
NotifyStarted();
|
||||
|
||||
@@ -494,7 +506,7 @@ void ExtensionUpdater::CheckNow(CheckParams params) {
|
||||
@@ -514,7 +526,7 @@ void ExtensionUpdater::CheckNow(CheckParams params) {
|
||||
update_check_params.update_info[pending_id] =
|
||||
GetExtensionUpdateData(pending_id);
|
||||
} else if (!Manifest::IsAutoUpdateableLocation(info->install_source())) {
|
||||
@@ -396,7 +392,7 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
|
||||
continue;
|
||||
}
|
||||
// We have to mark high-priority extensions (such as policy-forced
|
||||
@@ -504,7 +516,7 @@ void ExtensionUpdater::CheckNow(CheckParams params) {
|
||||
@@ -524,7 +536,7 @@ void ExtensionUpdater::CheckNow(CheckParams params) {
|
||||
// See https://crbug.com/904600 and https://crbug.com/965686.
|
||||
const bool is_high_priority_extension_pending =
|
||||
pending_extension_manager->HasHighPriorityPendingExtension();
|
||||
@@ -405,7 +401,7 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
|
||||
update_check_params.update_info[pending_id] =
|
||||
GetExtensionUpdateData(pending_id);
|
||||
update_check_params.update_info[pending_id].is_corrupt_reinstall =
|
||||
@@ -527,6 +539,8 @@ void ExtensionUpdater::CheckNow(CheckParams params) {
|
||||
@@ -547,6 +559,8 @@ void ExtensionUpdater::CheckNow(CheckParams params) {
|
||||
LOG(WARNING) << "Corrupt extension with id " << pending_id
|
||||
<< " will be reinstalled with ExtensionDownloader.";
|
||||
}
|
||||
@@ -414,7 +410,7 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
|
||||
} else {
|
||||
InstallStageTracker::Get(profile_)->ReportFailure(
|
||||
pending_id,
|
||||
@@ -539,13 +553,6 @@ void ExtensionUpdater::CheckNow(CheckParams params) {
|
||||
@@ -559,13 +573,6 @@ void ExtensionUpdater::CheckNow(CheckParams params) {
|
||||
AddToDownloader(®istry_->disabled_extensions(), pending_ids, request_id,
|
||||
params.fetch_priority, &update_check_params);
|
||||
ExtensionSet remotely_disabled_extensions;
|
||||
@@ -428,7 +424,7 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
|
||||
AddToDownloader(&remotely_disabled_extensions, pending_ids, request_id,
|
||||
params.fetch_priority, &update_check_params);
|
||||
} else {
|
||||
@@ -553,7 +560,7 @@ void ExtensionUpdater::CheckNow(CheckParams params) {
|
||||
@@ -573,7 +580,7 @@ void ExtensionUpdater::CheckNow(CheckParams params) {
|
||||
const Extension* extension =
|
||||
registry_->GetExtensionById(id, ExtensionRegistry::EVERYTHING);
|
||||
if (extension) {
|
||||
@@ -437,7 +433,7 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
|
||||
update_check_params.update_info[id] = GetExtensionUpdateData(id);
|
||||
} else if (AddExtensionToDownloader(*extension, request_id,
|
||||
params.fetch_priority)) {
|
||||
@@ -697,7 +704,7 @@ void ExtensionUpdater::OnExtensionDownloadFinished(
|
||||
@@ -717,7 +724,7 @@ void ExtensionUpdater::OnExtensionDownloadFinished(
|
||||
file.extension_id, InstallStageTracker::Stage::INSTALLING);
|
||||
UpdatePingData(file.extension_id, ping);
|
||||
|
||||
@@ -446,7 +442,7 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
|
||||
|
||||
FetchedCRXFile fetched(file, file_ownership_passed, request_ids,
|
||||
std::move(callback));
|
||||
@@ -708,6 +715,7 @@ void ExtensionUpdater::OnExtensionDownloadFinished(
|
||||
@@ -728,6 +735,7 @@ void ExtensionUpdater::OnExtensionDownloadFinished(
|
||||
|
||||
bool ExtensionUpdater::GetPingDataForExtension(const ExtensionId& id,
|
||||
DownloadPingData* ping_data) {
|
||||
@@ -454,7 +450,7 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
|
||||
DCHECK(alive_);
|
||||
ping_data->rollcall_days =
|
||||
CalculatePingDaysForExtension(extension_prefs_->LastPingDay(id));
|
||||
@@ -823,7 +831,7 @@ bool ExtensionUpdater::CanUseUpdateService(
|
||||
@@ -840,7 +848,7 @@ bool ExtensionUpdater::CanUseUpdateService(
|
||||
void ExtensionUpdater::InstallCRXFile(FetchedCRXFile crx_file) {
|
||||
std::set<int> request_ids;
|
||||
|
||||
@@ -463,7 +459,7 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
|
||||
<< crx_file.info.path.value();
|
||||
|
||||
// The delegate is now responsible for cleaning up the temp file at
|
||||
@@ -1031,7 +1039,7 @@ void ExtensionUpdater::NotifyIfFinished(int request_id) {
|
||||
@@ -1048,7 +1056,7 @@ void ExtensionUpdater::NotifyIfFinished(int request_id) {
|
||||
InProgressCheck& request = requests_in_progress_[request_id];
|
||||
if (!request.in_progress_ids.empty() || request.awaiting_update_service)
|
||||
return; // This request is not done yet.
|
||||
@@ -475,7 +471,7 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.cc b/chrome/bro
|
||||
diff --git a/chrome/browser/extensions/updater/extension_updater.h b/chrome/browser/extensions/updater/extension_updater.h
|
||||
--- a/chrome/browser/extensions/updater/extension_updater.h
|
||||
+++ b/chrome/browser/extensions/updater/extension_updater.h
|
||||
@@ -82,6 +82,8 @@ class ExtensionUpdater : public KeyedService,
|
||||
@@ -93,6 +93,8 @@ class ExtensionUpdater : public KeyedService,
|
||||
// right away.
|
||||
bool install_immediately = false;
|
||||
|
||||
@@ -484,7 +480,7 @@ diff --git a/chrome/browser/extensions/updater/extension_updater.h b/chrome/brow
|
||||
// An extension update check can be originated by a user or by a scheduled
|
||||
// task. When the value of |fetch_priority| is FOREGROUND, the update
|
||||
// request was initiated by a user.
|
||||
@@ -371,6 +373,8 @@ class ExtensionUpdater : public KeyedService,
|
||||
@@ -402,6 +404,8 @@ class ExtensionUpdater : public KeyedService,
|
||||
base::TimeDelta frequency_;
|
||||
bool will_check_soon_ = false;
|
||||
|
||||
@@ -508,7 +504,7 @@ diff --git a/chrome/browser/extensions/webstore_install_helper.cc b/chrome/brows
|
||||
diff --git a/chrome/browser/extensions/webstore_installer.cc b/chrome/browser/extensions/webstore_installer.cc
|
||||
--- a/chrome/browser/extensions/webstore_installer.cc
|
||||
+++ b/chrome/browser/extensions/webstore_installer.cc
|
||||
@@ -594,7 +594,7 @@ void WebstoreInstaller::StartDownload(
|
||||
@@ -591,7 +591,7 @@ void WebstoreInstaller::StartDownload(
|
||||
traffic_annotation));
|
||||
params->set_file_path(file);
|
||||
params->set_initiator(render_frame_host->GetLastCommittedOrigin());
|
||||
@@ -693,7 +689,7 @@ diff --git a/chrome/browser/ui/webui/extensions/extensions_ui.cc b/chrome/browse
|
||||
#include "chrome/browser/extensions/manifest_v2_experiment_manager.h"
|
||||
#include "chrome/browser/extensions/mv2_experiment_stage.h"
|
||||
#include "chrome/browser/extensions/permissions_url_constants.h"
|
||||
@@ -379,6 +380,8 @@ content::WebUIDataSource* CreateAndAddExtensionsSource(Profile* profile,
|
||||
@@ -380,6 +381,8 @@ content::WebUIDataSource* CreateAndAddExtensionsSource(Profile* profile,
|
||||
{"itemSuspiciousInstallLearnMore",
|
||||
IDS_EXTENSIONS_ADDED_WITHOUT_KNOWLEDGE_LEARN_MORE},
|
||||
{"toolbarDevMode", IDS_EXTENSIONS_DEVELOPER_MODE},
|
||||
@@ -702,7 +698,7 @@ diff --git a/chrome/browser/ui/webui/extensions/extensions_ui.cc b/chrome/browse
|
||||
{"toolbarLoadUnpacked", IDS_EXTENSIONS_TOOLBAR_LOAD_UNPACKED},
|
||||
{"toolbarLoadUnpackedDone", IDS_EXTENSIONS_TOOLBAR_LOAD_UNPACKED_DONE},
|
||||
{"toolbarPack", IDS_EXTENSIONS_TOOLBAR_PACK},
|
||||
@@ -463,6 +466,10 @@ content::WebUIDataSource* CreateAndAddExtensionsSource(Profile* profile,
|
||||
@@ -472,6 +475,10 @@ content::WebUIDataSource* CreateAndAddExtensionsSource(Profile* profile,
|
||||
"hostPermissionsLearnMoreLink",
|
||||
extension_permissions_constants::kRuntimeHostPermissionsHelpURL);
|
||||
source->AddBoolean(kInDevModeKey, in_dev_mode);
|
||||
@@ -850,8 +846,8 @@ diff --git a/extensions/browser/api/management/management_api.cc b/extensions/br
|
||||
+}
|
||||
+
|
||||
std::vector<management::LaunchType> GetAvailableLaunchTypes(
|
||||
const Extension& extension,
|
||||
const ManagementAPIDelegate* delegate) {
|
||||
const Extension& extension) {
|
||||
std::vector<management::LaunchType> launch_type_list;
|
||||
@@ -269,6 +294,8 @@ void AddExtensionInfo(const Extension* source_extension,
|
||||
const ExtensionSet& extensions,
|
||||
ExtensionInfoList* extension_list,
|
||||
@@ -861,7 +857,7 @@ diff --git a/extensions/browser/api/management/management_api.cc b/extensions/br
|
||||
for (ExtensionSet::const_iterator iter = extensions.begin();
|
||||
iter != extensions.end(); ++iter) {
|
||||
const Extension& extension = **iter;
|
||||
@@ -314,10 +341,9 @@ ExtensionFunction::ResponseAction ManagementGetFunction::Run() {
|
||||
@@ -311,10 +338,9 @@ ExtensionFunction::ResponseAction ManagementGetFunction::Run() {
|
||||
std::optional<management::Get::Params> params =
|
||||
management::Get::Params::Create(args());
|
||||
EXTENSION_FUNCTION_VALIDATE(params);
|
||||
@@ -873,7 +869,7 @@ diff --git a/extensions/browser/api/management/management_api.cc b/extensions/br
|
||||
if (!target_extension) {
|
||||
return RespondNow(Error(keys::kNoExtensionError, params->id));
|
||||
}
|
||||
@@ -338,8 +364,7 @@ ManagementGetPermissionWarningsByIdFunction::Run() {
|
||||
@@ -335,8 +361,7 @@ ManagementGetPermissionWarningsByIdFunction::Run() {
|
||||
EXTENSION_FUNCTION_VALIDATE(params);
|
||||
|
||||
const Extension* extension =
|
||||
@@ -883,7 +879,7 @@ diff --git a/extensions/browser/api/management/management_api.cc b/extensions/br
|
||||
if (!extension) {
|
||||
return RespondNow(Error(keys::kNoExtensionError, params->id));
|
||||
}
|
||||
@@ -407,8 +432,7 @@ ExtensionFunction::ResponseAction ManagementLaunchAppFunction::Run() {
|
||||
@@ -404,8 +429,7 @@ ExtensionFunction::ResponseAction ManagementLaunchAppFunction::Run() {
|
||||
}
|
||||
|
||||
const Extension* extension =
|
||||
@@ -893,7 +889,7 @@ diff --git a/extensions/browser/api/management/management_api.cc b/extensions/br
|
||||
if (!extension) {
|
||||
return RespondNow(Error(keys::kNoExtensionError, params->id));
|
||||
}
|
||||
@@ -550,8 +574,8 @@ void ManagementSetEnabledFunction::CheckPermissionsIncrease() {
|
||||
@@ -547,8 +571,8 @@ void ManagementSetEnabledFunction::CheckPermissionsIncrease() {
|
||||
// Extension could have been uninstalled externally while previous check was
|
||||
// happening.
|
||||
const Extension* extension =
|
||||
@@ -904,7 +900,7 @@ diff --git a/extensions/browser/api/management/management_api.cc b/extensions/br
|
||||
if (!extension) {
|
||||
FinishEnable(Error(keys::kNoExtensionError));
|
||||
return;
|
||||
@@ -594,8 +618,8 @@ void ManagementSetEnabledFunction::CheckManifestV2Deprecation() {
|
||||
@@ -591,8 +615,8 @@ void ManagementSetEnabledFunction::CheckManifestV2Deprecation() {
|
||||
// Extension can be uninstalled externally while the previous check was
|
||||
// happening async.
|
||||
const Extension* extension =
|
||||
@@ -915,7 +911,7 @@ diff --git a/extensions/browser/api/management/management_api.cc b/extensions/br
|
||||
if (!extension) {
|
||||
FinishEnable(Error(keys::kNoExtensionError));
|
||||
return;
|
||||
@@ -739,8 +763,8 @@ void ManagementSetEnabledFunction::OnSupervisedExtensionApprovalDone(
|
||||
@@ -736,8 +760,8 @@ void ManagementSetEnabledFunction::OnSupervisedExtensionApprovalDone(
|
||||
}
|
||||
|
||||
const Extension* ManagementSetEnabledFunction::GetExtension() {
|
||||
@@ -926,7 +922,7 @@ diff --git a/extensions/browser/api/management/management_api.cc b/extensions/br
|
||||
}
|
||||
|
||||
ManagementUninstallFunctionBase::ManagementUninstallFunctionBase() = default;
|
||||
@@ -765,8 +789,7 @@ ExtensionFunction::ResponseAction ManagementUninstallFunctionBase::Uninstall(
|
||||
@@ -762,8 +786,7 @@ ExtensionFunction::ResponseAction ManagementUninstallFunctionBase::Uninstall(
|
||||
->GetDelegate();
|
||||
target_extension_id_ = target_extension_id;
|
||||
const Extension* target_extension =
|
||||
@@ -936,7 +932,7 @@ diff --git a/extensions/browser/api/management/management_api.cc b/extensions/br
|
||||
ExtensionRegistry::EVERYTHING);
|
||||
if (!target_extension || !ShouldExposeViaManagementAPI(*target_extension)) {
|
||||
return RespondNow(Error(keys::kNoExtensionError, target_extension_id_));
|
||||
@@ -831,8 +854,7 @@ void ManagementUninstallFunctionBase::UninstallExtension() {
|
||||
@@ -828,8 +851,7 @@ void ManagementUninstallFunctionBase::UninstallExtension() {
|
||||
// The extension can be uninstalled in another window while the UI was
|
||||
// showing. Do nothing in that case.
|
||||
const Extension* target_extension =
|
||||
@@ -946,7 +942,7 @@ diff --git a/extensions/browser/api/management/management_api.cc b/extensions/br
|
||||
ExtensionRegistry::EVERYTHING);
|
||||
std::string error;
|
||||
bool success = false;
|
||||
@@ -912,8 +934,7 @@ ExtensionFunction::ResponseAction ManagementCreateAppShortcutFunction::Run() {
|
||||
@@ -909,8 +931,7 @@ ExtensionFunction::ResponseAction ManagementCreateAppShortcutFunction::Run() {
|
||||
management::CreateAppShortcut::Params::Create(args());
|
||||
EXTENSION_FUNCTION_VALIDATE(params);
|
||||
const Extension* extension =
|
||||
@@ -956,7 +952,7 @@ diff --git a/extensions/browser/api/management/management_api.cc b/extensions/br
|
||||
if (!extension) {
|
||||
return RespondNow(Error(
|
||||
ErrorUtils::FormatErrorMessage(keys::kNoExtensionError, params->id)));
|
||||
@@ -967,8 +988,7 @@ ExtensionFunction::ResponseAction ManagementSetLaunchTypeFunction::Run() {
|
||||
@@ -964,8 +985,7 @@ ExtensionFunction::ResponseAction ManagementSetLaunchTypeFunction::Run() {
|
||||
management::SetLaunchType::Params::Create(args());
|
||||
EXTENSION_FUNCTION_VALIDATE(params);
|
||||
const Extension* extension =
|
||||
@@ -1205,7 +1201,7 @@ diff --git a/extensions/browser/updater/safe_manifest_parser.cc b/extensions/bro
|
||||
diff --git a/extensions/common/extension_features.cc b/extensions/common/extension_features.cc
|
||||
--- a/extensions/common/extension_features.cc
|
||||
+++ b/extensions/common/extension_features.cc
|
||||
@@ -209,4 +209,18 @@ BASE_FEATURE(kExtensionBrowserNamespaceAlternative,
|
||||
@@ -231,4 +231,18 @@ BASE_FEATURE(kExtensionBrowserNamespaceAlternative,
|
||||
"ExtensionBrowserNamespaceAlternative",
|
||||
base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
|
||||
@@ -1227,7 +1223,7 @@ diff --git a/extensions/common/extension_features.cc b/extensions/common/extensi
|
||||
diff --git a/extensions/common/extension_features.h b/extensions/common/extension_features.h
|
||||
--- a/extensions/common/extension_features.h
|
||||
+++ b/extensions/common/extension_features.h
|
||||
@@ -252,6 +252,8 @@ BASE_DECLARE_FEATURE(kDebuggerAPIRestrictedToDevMode);
|
||||
@@ -266,6 +266,8 @@ BASE_DECLARE_FEATURE(kDebuggerAPIRestrictedToDevMode);
|
||||
// `loadTimes` , `csi`, etc. or deprecated APIs (e.g. `app`).
|
||||
BASE_DECLARE_FEATURE(kExtensionBrowserNamespaceAlternative);
|
||||
|
||||
|
||||
@@ -151,7 +151,7 @@ diff --git a/chrome/browser/content_settings/page_specific_content_settings_dele
|
||||
diff --git a/chrome/browser/resources/settings/privacy_page/privacy_page.html b/chrome/browser/resources/settings/privacy_page/privacy_page.html
|
||||
--- a/chrome/browser/resources/settings/privacy_page/privacy_page.html
|
||||
+++ b/chrome/browser/resources/settings/privacy_page/privacy_page.html
|
||||
@@ -1574,4 +1574,5 @@
|
||||
@@ -1595,4 +1595,5 @@
|
||||
</settings-subpage>
|
||||
</template>
|
||||
</template>
|
||||
@@ -263,7 +263,7 @@ diff --git a/chrome/browser/resources/settings/route.ts b/chrome/browser/resourc
|
||||
|
||||
/**
|
||||
* Add all of the child routes that originate from the privacy route,
|
||||
@@ -170,6 +171,7 @@ function addPrivacyChildRoutes(r: Partial<SettingsRoutes>) {
|
||||
@@ -172,6 +173,7 @@ function addPrivacyChildRoutes(r: Partial<SettingsRoutes>) {
|
||||
r.SITE_SETTINGS_LOCAL_NETWORK_ACCESS =
|
||||
r.SITE_SETTINGS.createChild('localNetworkAccess');
|
||||
}
|
||||
@@ -315,13 +315,13 @@ diff --git a/chrome/browser/resources/settings/site_settings/settings_category_d
|
||||
type: Object,
|
||||
value: SiteContentRadioSetting,
|
||||
@@ -114,6 +119,9 @@ export class SettingsCategoryDefaultRadioGroupElement extends
|
||||
blockOptionLabel: string;
|
||||
blockOptionSubLabel: string;
|
||||
blockOptionIcon: string;
|
||||
+ askOptionLabel: string;
|
||||
+ askOptionSubLabel: string;
|
||||
+ askOptionIcon: string;
|
||||
private pref_: chrome.settingsPrivate.PrefObject<number>;
|
||||
declare blockOptionLabel: string;
|
||||
declare blockOptionSubLabel: string;
|
||||
declare blockOptionIcon: string;
|
||||
+ declare askOptionLabel: string;
|
||||
+ declare askOptionSubLabel: string;
|
||||
+ declare askOptionIcon: string;
|
||||
declare private pref_: chrome.settingsPrivate.PrefObject<number>;
|
||||
selected: boolean;
|
||||
|
||||
@@ -125,6 +133,13 @@ export class SettingsCategoryDefaultRadioGroupElement extends
|
||||
@@ -370,7 +370,7 @@ diff --git a/chrome/browser/resources/settings/site_settings/settings_category_d
|
||||
diff --git a/chrome/browser/resources/settings/site_settings/site_details.html b/chrome/browser/resources/settings/site_settings/site_details.html
|
||||
--- a/chrome/browser/resources/settings/site_settings/site_details.html
|
||||
+++ b/chrome/browser/resources/settings/site_settings/site_details.html
|
||||
@@ -333,4 +333,5 @@
|
||||
@@ -334,4 +334,5 @@
|
||||
label="$i18n{siteSettingsLocalNetworkAccess}">
|
||||
</site-details-permission>
|
||||
</template>
|
||||
@@ -710,7 +710,7 @@ diff --git a/chrome/browser/resources/settings/site_settings_page/site_settings_
|
||||
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
|
||||
@@ -1802,6 +1802,7 @@ static_library("ui") {
|
||||
@@ -1816,6 +1816,7 @@ static_library("ui") {
|
||||
"//components/commerce/core/mojom:mojo_bindings",
|
||||
"//components/commerce/core/webui",
|
||||
"//components/endpoint_fetcher:endpoint_fetcher",
|
||||
@@ -718,7 +718,7 @@ diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn
|
||||
"//components/enterprise/common:files_scan_data",
|
||||
"//components/feedback/proto",
|
||||
"//components/headless/policy",
|
||||
@@ -5028,6 +5029,7 @@ static_library("ui") {
|
||||
@@ -5054,6 +5055,7 @@ static_library("ui") {
|
||||
"//components/power_bookmarks/storage",
|
||||
"//components/prefs",
|
||||
"//components/reading_list/features:flags",
|
||||
@@ -862,7 +862,7 @@ diff --git a/chrome/browser/ui/views/page_info/page_info_view_factory.cc b/chrom
|
||||
diff --git a/chrome/browser/ui/views/page_info/page_info_view_factory.h b/chrome/browser/ui/views/page_info/page_info_view_factory.h
|
||||
--- a/chrome/browser/ui/views/page_info/page_info_view_factory.h
|
||||
+++ b/chrome/browser/ui/views/page_info/page_info_view_factory.h
|
||||
@@ -96,6 +96,11 @@ class PageInfoViewFactory {
|
||||
@@ -97,6 +97,11 @@ class PageInfoViewFactory {
|
||||
const PageInfo::PermissionInfo& info,
|
||||
bool blocked_on_system_level = false);
|
||||
|
||||
@@ -1177,7 +1177,7 @@ diff --git a/chrome/browser/ui/webui/settings/settings_localized_strings_provide
|
||||
#include "build/branding_buildflags.h"
|
||||
#include "build/build_config.h"
|
||||
#include "build/buildflag.h"
|
||||
@@ -76,6 +77,9 @@
|
||||
@@ -75,6 +76,9 @@
|
||||
#include "components/dom_distiller/core/dom_distiller_features.h"
|
||||
#include "components/google/core/common/google_util.h"
|
||||
#include "components/history/core/common/pref_names.h"
|
||||
@@ -1187,7 +1187,7 @@ diff --git a/chrome/browser/ui/webui/settings/settings_localized_strings_provide
|
||||
#include "components/password_manager/core/browser/leak_detection_dialog_utils.h"
|
||||
#include "components/password_manager/core/browser/manage_passwords_referrer.h"
|
||||
#include "components/password_manager/core/common/password_manager_features.h"
|
||||
@@ -3822,6 +3826,56 @@ void AddLocalizedStrings(content::WebUIDataSource* html_source,
|
||||
@@ -3841,6 +3845,56 @@ void AddLocalizedStrings(content::WebUIDataSource* html_source,
|
||||
policy_indicator::AddLocalizedStrings(html_source);
|
||||
AddSecurityKeysStrings(html_source);
|
||||
|
||||
@@ -1256,7 +1256,7 @@ diff --git a/chrome/browser/ui/webui/settings/site_settings_helper.cc b/chrome/b
|
||||
#include "components/content_settings/core/common/content_settings.h"
|
||||
#include "components/content_settings/core/common/content_settings_pattern.h"
|
||||
#include "components/content_settings/core/common/content_settings_types.h"
|
||||
@@ -251,13 +253,13 @@ constexpr auto kContentSettingsTypeGroupNames = std::to_array<
|
||||
@@ -258,13 +260,13 @@ constexpr auto kContentSettingsTypeGroupNames = std::to_array<
|
||||
{ContentSettingsType::REVOKED_DISRUPTIVE_NOTIFICATION_PERMISSIONS, nullptr},
|
||||
});
|
||||
|
||||
@@ -1277,7 +1277,7 @@ diff --git a/chrome/browser/ui/webui/settings/site_settings_helper.cc b/chrome/b
|
||||
|
||||
struct SiteSettingSourceStringMapping {
|
||||
SiteSettingSource source;
|
||||
@@ -505,6 +507,13 @@ bool HasRegisteredGroupName(ContentSettingsType type) {
|
||||
@@ -526,6 +528,13 @@ bool HasRegisteredGroupName(ContentSettingsType type) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -1291,7 +1291,7 @@ diff --git a/chrome/browser/ui/webui/settings/site_settings_helper.cc b/chrome/b
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -518,11 +527,24 @@ ContentSettingsType ContentSettingsTypeFromGroupName(std::string_view name) {
|
||||
@@ -539,11 +548,24 @@ ContentSettingsType ContentSettingsTypeFromGroupName(std::string_view name) {
|
||||
return entry.type;
|
||||
}
|
||||
}
|
||||
@@ -1317,7 +1317,7 @@ diff --git a/chrome/browser/ui/webui/settings/site_settings_helper.cc b/chrome/b
|
||||
for (const auto& entry : kContentSettingsTypeGroupNames) {
|
||||
if (type == entry.type) {
|
||||
// Content setting types that aren't represented in the settings UI
|
||||
@@ -537,7 +559,6 @@ std::string_view ContentSettingsTypeToGroupName(ContentSettingsType type) {
|
||||
@@ -558,7 +580,6 @@ std::string_view ContentSettingsTypeToGroupName(ContentSettingsType type) {
|
||||
return entry.name ? entry.name : std::string_view();
|
||||
}
|
||||
}
|
||||
@@ -1325,7 +1325,7 @@ diff --git a/chrome/browser/ui/webui/settings/site_settings_helper.cc b/chrome/b
|
||||
NOTREACHED() << static_cast<int32_t>(type)
|
||||
<< " is not a recognized content settings type.";
|
||||
}
|
||||
@@ -649,6 +670,13 @@ std::vector<ContentSettingsType> GetVisiblePermissionCategories(
|
||||
@@ -670,6 +691,13 @@ std::vector<ContentSettingsType> GetVisiblePermissionCategories(
|
||||
base_types->push_back(ContentSettingsType::LOCAL_NETWORK_ACCESS);
|
||||
}
|
||||
|
||||
@@ -1342,7 +1342,7 @@ diff --git a/chrome/browser/ui/webui/settings/site_settings_helper.cc b/chrome/b
|
||||
diff --git a/components/browser_ui/settings/android/BUILD.gn b/components/browser_ui/settings/android/BUILD.gn
|
||||
--- a/components/browser_ui/settings/android/BUILD.gn
|
||||
+++ b/components/browser_ui/settings/android/BUILD.gn
|
||||
@@ -87,6 +87,7 @@ android_resources("java_resources") {
|
||||
@@ -88,6 +88,7 @@ android_resources("java_resources") {
|
||||
"java/res/layout/managed_disclaimer_preference_for_radio_groups.xml",
|
||||
"java/res/layout/preference_chrome_image_view.xml",
|
||||
"java/res/layout/preference_spinner.xml",
|
||||
@@ -1536,7 +1536,7 @@ diff --git a/components/browser_ui/site_settings/android/BUILD.gn b/components/b
|
||||
+ allow_missing_resources = true
|
||||
sources = [
|
||||
"java/res/drawable-hdpi/ic_volume_up_grey600_24dp.png",
|
||||
"java/res/drawable-hdpi/permission_background_sync.png",
|
||||
"java/res/drawable-hdpi/permission_popups.png",
|
||||
diff --git a/components/browser_ui/site_settings/android/java/res/xml/site_settings_preferences.xml b/components/browser_ui/site_settings/android/java/res/xml/site_settings_preferences.xml
|
||||
--- a/components/browser_ui/site_settings/android/java/res/xml/site_settings_preferences.xml
|
||||
+++ b/components/browser_ui/site_settings/android/java/res/xml/site_settings_preferences.xml
|
||||
@@ -2192,8 +2192,8 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
private final int mIcon;
|
||||
private final int mIconBlocked;
|
||||
private final int mTitle;
|
||||
@@ -54,7 +54,29 @@ public class ContentSettingsResources {
|
||||
private int mEnabledDescriptionText;
|
||||
@@ -53,7 +53,29 @@ public class ContentSettingsResources {
|
||||
private final int mDisabledPrimaryText;
|
||||
private int mDisabledDescriptionText;
|
||||
|
||||
- ResourceItem(
|
||||
@@ -2223,7 +2223,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
int icon,
|
||||
int title,
|
||||
@ContentSettingValues @Nullable Integer defaultEnabledValue,
|
||||
@@ -641,6 +663,8 @@ public class ContentSettingsResources {
|
||||
@@ -629,6 +651,8 @@ public class ContentSettingsResources {
|
||||
R.string.website_settings_vr_ask,
|
||||
R.string.website_settings_vr_block);
|
||||
}
|
||||
@@ -2232,7 +2232,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
assert false; // NOTREACHED
|
||||
return assumeNonNull(null);
|
||||
}
|
||||
@@ -799,6 +823,14 @@ public class ContentSettingsResources {
|
||||
@@ -787,6 +811,14 @@ public class ContentSettingsResources {
|
||||
return getResourceItem(contentType).getDefaultDisabledValue();
|
||||
}
|
||||
|
||||
@@ -2247,7 +2247,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
/**
|
||||
* Returns the string resource id for a given ContentSetting to show with a permission category.
|
||||
*
|
||||
@@ -973,6 +1005,8 @@ public class ContentSettingsResources {
|
||||
@@ -961,6 +993,8 @@ public class ContentSettingsResources {
|
||||
*/
|
||||
public static int @Nullable [] getTriStateSettingDescriptionIDs(
|
||||
int contentType, boolean isPermissionSiteSettingsRadioButtonFeatureEnabled) {
|
||||
@@ -2259,7 +2259,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java
|
||||
--- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java
|
||||
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java
|
||||
@@ -341,6 +341,10 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
|
||||
@@ -343,6 +343,10 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
|
||||
website.site()
|
||||
.getContentSetting(
|
||||
browserContextHandle, mCategory.getContentSettingsType());
|
||||
@@ -2270,7 +2270,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
if (contentSetting != null) {
|
||||
return ContentSettingValues.BLOCK == contentSetting;
|
||||
}
|
||||
@@ -529,6 +533,7 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
|
||||
@@ -531,6 +535,7 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
|
||||
? new HashSet<>(getArguments().getStringArrayList(EXTRA_SELECTED_DOMAINS))
|
||||
: null;
|
||||
|
||||
@@ -2278,7 +2278,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
configureGlobalToggles();
|
||||
if (mCategory.getType() == SiteSettingsCategory.Type.REQUEST_DESKTOP_SITE) {
|
||||
RecordUserAction.record("DesktopSiteContentSetting.SettingsPage.Entered");
|
||||
@@ -564,7 +569,8 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
|
||||
@@ -566,7 +571,8 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
|
||||
if (queryHasChanged) getInfoForOrigins();
|
||||
});
|
||||
|
||||
@@ -2288,7 +2288,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
MenuItem help =
|
||||
menu.add(
|
||||
Menu.NONE,
|
||||
@@ -576,12 +582,20 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
|
||||
@@ -578,12 +584,20 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
|
||||
getResources(),
|
||||
R.drawable.ic_help_and_feedback,
|
||||
getContext().getTheme()));
|
||||
@@ -2309,7 +2309,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
if (mCategory.getType() == SiteSettingsCategory.Type.PROTECTED_MEDIA) {
|
||||
getSiteSettingsDelegate()
|
||||
.launchProtectedContentHelpAndFeedbackActivity(getActivity());
|
||||
@@ -657,6 +671,11 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
|
||||
@@ -659,6 +673,11 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
|
||||
BrowserContextHandle browserContextHandle =
|
||||
getSiteSettingsDelegate().getBrowserContextHandle();
|
||||
PrefService prefService = UserPrefs.get(browserContextHandle);
|
||||
@@ -2321,7 +2321,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
if (BINARY_RADIO_BUTTON_KEY.equals(preference.getKey())
|
||||
|| BINARY_TOGGLE_KEY.equals(preference.getKey())) {
|
||||
assert !mCategory.isManaged();
|
||||
@@ -841,7 +860,7 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
|
||||
@@ -837,7 +856,7 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
|
||||
? R.string.website_settings_add_site_description_javascript_optimizer_block
|
||||
: R.string.website_settings_add_site_description_javascript_optimizer_allow;
|
||||
}
|
||||
@@ -2330,7 +2330,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
}
|
||||
|
||||
// OnPreferenceClickListener:
|
||||
@@ -962,10 +981,11 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
|
||||
@@ -957,10 +976,11 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@@ -2345,7 +2345,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
getPreferenceScreen()
|
||||
.addPreference(
|
||||
new AddExceptionPreference(
|
||||
@@ -1150,8 +1170,16 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
|
||||
@@ -1145,8 +1165,16 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
|
||||
private boolean isBlocked() {
|
||||
switch (mGlobalToggleLayout) {
|
||||
case GlobalToggleLayout.TRI_STATE_TOGGLE:
|
||||
@@ -2362,7 +2362,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
return (triStateToggle.getCheckedSetting() == ContentSettingValues.BLOCK);
|
||||
case GlobalToggleLayout.TRI_STATE_COOKIE_TOGGLE:
|
||||
TriStateCookieSettingsPreference triStateCookieToggle =
|
||||
@@ -1298,7 +1326,11 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
|
||||
@@ -1293,7 +1321,11 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
|
||||
} else if (res_id != -1) {
|
||||
infoText.setSummary(res_id);
|
||||
} else {
|
||||
@@ -2375,15 +2375,15 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
}
|
||||
|
||||
// Hide the anti-abuse text preferences, as needed.
|
||||
@@ -1337,6 +1369,7 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
|
||||
@@ -1332,6 +1364,7 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
|
||||
} else {
|
||||
screen.removePreference(mLocationTriStatePref);
|
||||
}
|
||||
+ BromiteCustomContentSettingImpl.configureGlobalToggles(mCategory, this);
|
||||
|
||||
if (permissionBlockedByOs) {
|
||||
maybeShowOsWarning(screen);
|
||||
@@ -1526,6 +1559,7 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
|
||||
maybeShowReasonToggleDisabled(screen);
|
||||
|
||||
@@ -1544,6 +1577,7 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
|
||||
iconIds = ContentSettingsResources.getTriStateSettingIconIDs(contentType);
|
||||
}
|
||||
triStateToggle.initialize(
|
||||
@@ -2391,7 +2391,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
setting,
|
||||
descriptionIds,
|
||||
iconIds,
|
||||
@@ -1685,6 +1719,14 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
|
||||
@@ -1703,6 +1737,14 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
|
||||
@ContentSettingValues
|
||||
Integer value = site.getContentSetting(browserContextHandle, contentSettingsType);
|
||||
|
||||
@@ -2417,7 +2417,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
|
||||
/** Shows the permissions and other settings for a particular website. */
|
||||
@NullMarked
|
||||
@@ -185,7 +186,7 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
|
||||
@@ -186,7 +187,7 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
|
||||
case ContentSettingsType.FILE_SYSTEM_WRITE_GUARD:
|
||||
return "file_system_write_guard_permission_list";
|
||||
default:
|
||||
@@ -2426,7 +2426,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
}
|
||||
}
|
||||
|
||||
@@ -591,8 +592,21 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
|
||||
@@ -592,8 +593,21 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
|
||||
private void setupContentSettingsPreferences() {
|
||||
Preference permissionsHeaderPref = findPreference(PREF_PERMISSIONS_HEADER);
|
||||
mMaxPermissionOrder = permissionsHeaderPref.getOrder();
|
||||
@@ -2450,7 +2450,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
preference.setKey(getPreferenceKey(type));
|
||||
|
||||
if (type == ContentSettingsType.ADS) {
|
||||
@@ -1273,20 +1287,32 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
|
||||
@@ -1274,20 +1288,32 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
|
||||
@ContentSettingValues @Nullable Integer value,
|
||||
boolean isEmbargoed,
|
||||
boolean isOneTime) {
|
||||
@@ -2491,7 +2491,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
AppCompatResources.getColorStateList(getContext(), mHighlightColor)
|
||||
.getDefaultColor());
|
||||
}
|
||||
@@ -1507,14 +1533,20 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
|
||||
@@ -1512,14 +1538,20 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
|
||||
if (newValue instanceof Boolean) {
|
||||
permission = (Boolean) newValue ? getEnabledValue(type) : ContentSettingValues.BLOCK;
|
||||
} else {
|
||||
@@ -2826,7 +2826,7 @@ new file mode 100644
|
||||
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
|
||||
@@ -87,6 +87,7 @@ android_library("content_settings_enums_java") {
|
||||
@@ -59,6 +59,7 @@ android_library("content_settings_enums_java") {
|
||||
}
|
||||
|
||||
java_cpp_enum("content_settings_enums_javagen") {
|
||||
@@ -2868,7 +2868,7 @@ diff --git a/components/content_settings/core/browser/content_settings_registry.
|
||||
|
||||
namespace content_settings {
|
||||
|
||||
@@ -871,6 +872,7 @@ void ContentSettingsRegistry::Init() {
|
||||
@@ -873,6 +874,7 @@ void ContentSettingsRegistry::Init() {
|
||||
WebsiteSettingsRegistry::PLATFORM_ANDROID,
|
||||
ContentSettingsInfo::INHERIT_IF_LESS_PERMISSIVE,
|
||||
ContentSettingsInfo::EXCEPTIONS_ON_SECURE_ORIGINS_ONLY);
|
||||
@@ -2879,7 +2879,7 @@ diff --git a/components/content_settings/core/browser/content_settings_registry.
|
||||
diff --git a/components/content_settings/core/browser/content_settings_uma_util.cc b/components/content_settings/core/browser/content_settings_uma_util.cc
|
||||
--- a/components/content_settings/core/browser/content_settings_uma_util.cc
|
||||
+++ b/components/content_settings/core/browser/content_settings_uma_util.cc
|
||||
@@ -216,11 +216,7 @@ void RecordContentSettingsHistogram(const std::string& name,
|
||||
@@ -218,11 +218,7 @@ void RecordContentSettingsHistogram(const std::string& name,
|
||||
}
|
||||
|
||||
int ContentSettingTypeToHistogramValue(ContentSettingsType content_setting) {
|
||||
@@ -2918,7 +2918,7 @@ diff --git a/components/content_settings/core/browser/content_settings_utils.cc
|
||||
+ rules->settings_rules.push_back(rule);
|
||||
+ }
|
||||
+ }
|
||||
#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_IOS)
|
||||
#if !BUILDFLAG(IS_IOS)
|
||||
rules->mixed_content_rules =
|
||||
map->GetSettingsForOneType(ContentSettingsType::MIXEDSCRIPT);
|
||||
diff --git a/components/content_settings/core/browser/website_settings_info.h b/components/content_settings/core/browser/website_settings_info.h
|
||||
@@ -3422,7 +3422,7 @@ diff --git a/components/page_info/page_info.cc b/components/page_info/page_info.
|
||||
#include "components/content_settings/browser/ui/cookie_controls_controller.h"
|
||||
#include "components/content_settings/core/browser/content_settings_registry.h"
|
||||
#include "components/content_settings/core/browser/content_settings_uma_util.h"
|
||||
@@ -1271,6 +1272,14 @@ void PageInfo::PopulatePermissionInfo(PermissionInfo& permission_info,
|
||||
@@ -1281,6 +1282,14 @@ void PageInfo::PopulatePermissionInfo(PermissionInfo& permission_info,
|
||||
// applies to permissions listed in |kPermissionType|.
|
||||
bool PageInfo::ShouldShowPermission(
|
||||
const PageInfo::PermissionInfo& info) const {
|
||||
@@ -3437,7 +3437,7 @@ diff --git a/components/page_info/page_info.cc b/components/page_info/page_info.
|
||||
// Note |ContentSettingsType::ADS| will show up regardless of its default
|
||||
// value when it has been activated on the current origin.
|
||||
if (info.type == ContentSettingsType::ADS) {
|
||||
@@ -1387,7 +1396,19 @@ void PageInfo::PresentSitePermissions() {
|
||||
@@ -1397,7 +1406,19 @@ void PageInfo::PresentSitePermissions() {
|
||||
|
||||
HostContentSettingsMap* content_settings = GetContentSettings();
|
||||
DCHECK(web_contents_);
|
||||
@@ -3546,7 +3546,7 @@ diff --git a/third_party/blink/public/platform/web_content_settings_client.h b/t
|
||||
namespace blink {
|
||||
|
||||
class WebURL;
|
||||
@@ -43,6 +48,14 @@ class WebContentSettingsClient {
|
||||
@@ -42,6 +47,14 @@ class WebContentSettingsClient {
|
||||
// Blocks until done.
|
||||
virtual bool AllowStorageAccessSync(StorageType storage_type) { return true; }
|
||||
|
||||
|
||||
@@ -13,11 +13,9 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
.../browser/chrome_content_browser_client.cc | 5 ++++-
|
||||
.../first_party_sets_navigation_throttle.cc | 2 +-
|
||||
.../first_party_sets_policy_service.cc | 3 ++-
|
||||
chrome/browser/prefs/browser_prefs.cc | 2 +-
|
||||
.../privacy_sandbox_service_impl.cc | 2 +-
|
||||
.../privacy_sandbox_service_impl.cc | 3 ++-
|
||||
.../privacy_sandbox_settings_delegate.cc | 1 +
|
||||
.../settings/privacy_page/cookies_page.ts | 2 +-
|
||||
.../privacy_sandbox/privacy_sandbox_prompt.cc | 1 +
|
||||
.../site_settings/RwsCookieSettings.java | 4 ++--
|
||||
.../history/core/browser/history_backend.cc | 13 +------------
|
||||
.../privacy_sandbox_attestations.cc | 2 --
|
||||
@@ -33,7 +31,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
.../features_cc/Disable-privacy-sandbox.inc | 1 +
|
||||
.../features_cc/Disable-privacy-sandbox.inc | 1 +
|
||||
third_party/blink/common/features.cc | 1 +
|
||||
23 files changed, 52 insertions(+), 33 deletions(-)
|
||||
21 files changed, 51 insertions(+), 32 deletions(-)
|
||||
create mode 100644 cromite_flags/content/common/features_cc/Disable-privacy-sandbox.inc
|
||||
create mode 100644 cromite_flags/content/public/common/content_features_cc/Disable-privacy-sandbox.inc
|
||||
create mode 100644 cromite_flags/services/network/public/cpp/features_cc/Disable-privacy-sandbox.inc
|
||||
@@ -42,7 +40,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc
|
||||
--- a/chrome/browser/chrome_content_browser_client.cc
|
||||
+++ b/chrome/browser/chrome_content_browser_client.cc
|
||||
@@ -3509,6 +3509,9 @@ bool ChromeContentBrowserClient::IsAttributionReportingOperationAllowed(
|
||||
@@ -3546,6 +3546,9 @@ bool ChromeContentBrowserClient::IsAttributionReportingOperationAllowed(
|
||||
const url::Origin* destination_origin,
|
||||
const url::Origin* reporting_origin,
|
||||
bool* can_bypass) {
|
||||
@@ -52,7 +50,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
|
||||
Profile* profile = Profile::FromBrowserContext(browser_context);
|
||||
|
||||
auto* privacy_sandbox_settings =
|
||||
@@ -8252,7 +8255,7 @@ bool ChromeContentBrowserClient::ShouldDisableOriginAgentClusterDefault(
|
||||
@@ -8303,7 +8306,7 @@ bool ChromeContentBrowserClient::ShouldDisableOriginAgentClusterDefault(
|
||||
}
|
||||
|
||||
bool ChromeContentBrowserClient::WillProvidePublicFirstPartySets() {
|
||||
@@ -93,22 +91,18 @@ diff --git a/chrome/browser/first_party_sets/first_party_sets_policy_service.cc
|
||||
if (service_state_ == ServiceState::kPermanentlyDisabled) {
|
||||
OnReadyToNotifyDelegates(net::FirstPartySetsContextConfig(),
|
||||
net::FirstPartySetsCacheFilter());
|
||||
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
|
||||
@@ -1221,7 +1221,7 @@ void RegisterProfilePrefsForMigration(
|
||||
#if BUILDFLAG(IS_CHROMEOS)
|
||||
// Deprecated 04/2024.
|
||||
registry->RegisterBooleanPref(kMetricsUserInheritOwnerConsent, true);
|
||||
- registry->RegisterBooleanPref(kGlanceablesEnabled, true);
|
||||
+ registry->RegisterBooleanPref(kGlanceablesEnabled, false);
|
||||
|
||||
// Deprecated 05/2024.
|
||||
registry->RegisterBooleanPref(kAccessibilityMouseKeysShortcutToPauseEnabled,
|
||||
diff --git a/chrome/browser/privacy_sandbox/privacy_sandbox_service_impl.cc b/chrome/browser/privacy_sandbox/privacy_sandbox_service_impl.cc
|
||||
--- a/chrome/browser/privacy_sandbox/privacy_sandbox_service_impl.cc
|
||||
+++ b/chrome/browser/privacy_sandbox/privacy_sandbox_service_impl.cc
|
||||
@@ -1203,7 +1203,7 @@ bool PrivacySandboxServiceImpl::IsRestrictedNoticeEnabled() {
|
||||
@@ -734,6 +734,7 @@ bool PrivacySandboxServiceImpl::
|
||||
PrivacySandboxService::PromptType
|
||||
// TODO(crbug.com/352575567): Use the SurfaceType passed in.
|
||||
PrivacySandboxServiceImpl::GetRequiredPromptType(SurfaceType surface_type) {
|
||||
+ if ((true)) return PromptType::kNone;
|
||||
// We delay emitting the metrics here so the profile manager can finish
|
||||
// setting up and retrieving the profile buckets.
|
||||
if (should_emit_dark_launch_startup_metrics_) {
|
||||
@@ -1133,7 +1134,7 @@ bool PrivacySandboxServiceImpl::IsRestrictedNoticeEnabled() {
|
||||
void PrivacySandboxServiceImpl::SetRelatedWebsiteSetsDataAccessEnabled(
|
||||
bool enabled) {
|
||||
pref_service_->SetBoolean(prefs::kPrivacySandboxRelatedWebsiteSetsEnabled,
|
||||
@@ -131,7 +125,7 @@ diff --git a/chrome/browser/privacy_sandbox/privacy_sandbox_settings_delegate.cc
|
||||
diff --git a/chrome/browser/resources/settings/privacy_page/cookies_page.ts b/chrome/browser/resources/settings/privacy_page/cookies_page.ts
|
||||
--- a/chrome/browser/resources/settings/privacy_page/cookies_page.ts
|
||||
+++ b/chrome/browser/resources/settings/privacy_page/cookies_page.ts
|
||||
@@ -272,7 +272,7 @@ export class SettingsCookiesPageElement extends SettingsCookiesPageElementBase {
|
||||
@@ -249,7 +249,7 @@ export class SettingsCookiesPageElement extends SettingsCookiesPageElementBase {
|
||||
}
|
||||
|
||||
private relatedWebsiteSetsToggleDisabled_() {
|
||||
@@ -140,20 +134,10 @@ diff --git a/chrome/browser/resources/settings/privacy_page/cookies_page.ts b/ch
|
||||
CookieControlsMode.BLOCK_THIRD_PARTY;
|
||||
}
|
||||
|
||||
diff --git a/chrome/browser/ui/privacy_sandbox/privacy_sandbox_prompt.cc b/chrome/browser/ui/privacy_sandbox/privacy_sandbox_prompt.cc
|
||||
--- a/chrome/browser/ui/privacy_sandbox/privacy_sandbox_prompt.cc
|
||||
+++ b/chrome/browser/ui/privacy_sandbox/privacy_sandbox_prompt.cc
|
||||
@@ -8,5 +8,6 @@
|
||||
|
||||
void ShowPrivacySandboxPrompt(Browser* browser,
|
||||
PrivacySandboxService::PromptType prompt_type) {
|
||||
+ if ((true)) return;
|
||||
ShowPrivacySandboxDialog(browser, prompt_type);
|
||||
}
|
||||
diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/RwsCookieSettings.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/RwsCookieSettings.java
|
||||
--- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/RwsCookieSettings.java
|
||||
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/RwsCookieSettings.java
|
||||
@@ -135,7 +135,7 @@ public class RwsCookieSettings extends BaseSiteSettingsFragment
|
||||
@@ -148,7 +148,7 @@ public class RwsCookieSettings extends BaseSiteSettingsFragment
|
||||
mAllowRwsPreference.setChecked(
|
||||
getSiteSettingsDelegate().isRelatedWebsiteSetsDataAccessEnabled());
|
||||
|
||||
@@ -162,7 +146,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
mAllowRwsPreference.setEnabled(false);
|
||||
}
|
||||
mAllowRwsPreference.setOnPreferenceChangeListener(this);
|
||||
@@ -151,7 +151,7 @@ public class RwsCookieSettings extends BaseSiteSettingsFragment
|
||||
@@ -164,7 +164,7 @@ public class RwsCookieSettings extends BaseSiteSettingsFragment
|
||||
public boolean onPreferenceChange(Preference preference, Object newValue) {
|
||||
String key = preference.getKey();
|
||||
if (ALLOW_RWS_COOKIE_PREFERENCE.equals(key)) {
|
||||
@@ -197,7 +181,7 @@ diff --git a/components/history/core/browser/history_backend.cc b/components/his
|
||||
diff --git a/components/privacy_sandbox/privacy_sandbox_attestations/privacy_sandbox_attestations.cc b/components/privacy_sandbox/privacy_sandbox_attestations/privacy_sandbox_attestations.cc
|
||||
--- a/components/privacy_sandbox/privacy_sandbox_attestations/privacy_sandbox_attestations.cc
|
||||
+++ b/components/privacy_sandbox/privacy_sandbox_attestations/privacy_sandbox_attestations.cc
|
||||
@@ -406,8 +406,6 @@ void PrivacySandboxAttestations::OnAttestationsParsed(
|
||||
@@ -467,8 +467,6 @@ void PrivacySandboxAttestations::OnAttestationsParsed(
|
||||
if (attestations_map.has_value() &&
|
||||
(!file_version_.IsValid() || file_version_.CompareTo(version) < 0)) {
|
||||
// Parsing succeeded and the attestations file has newer version.
|
||||
@@ -209,7 +193,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_attestations/privacy_san
|
||||
diff --git a/components/privacy_sandbox/privacy_sandbox_features.cc b/components/privacy_sandbox/privacy_sandbox_features.cc
|
||||
--- a/components/privacy_sandbox/privacy_sandbox_features.cc
|
||||
+++ b/components/privacy_sandbox/privacy_sandbox_features.cc
|
||||
@@ -288,4 +288,7 @@ BASE_FEATURE(kPrivacySandboxMigratePrefsToSchemaV2,
|
||||
@@ -278,4 +278,7 @@ BASE_FEATURE(kPrivacySandboxMigratePrefsToSchemaV2,
|
||||
BASE_FEATURE(kPrivacySandboxFirstTimeNoticeV2,
|
||||
"PrivacySandboxFirstTimeNoticeV2",
|
||||
base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
@@ -220,7 +204,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_features.cc b/components
|
||||
diff --git a/components/privacy_sandbox/privacy_sandbox_prefs.cc b/components/privacy_sandbox/privacy_sandbox_prefs.cc
|
||||
--- a/components/privacy_sandbox/privacy_sandbox_prefs.cc
|
||||
+++ b/components/privacy_sandbox/privacy_sandbox_prefs.cc
|
||||
@@ -25,7 +25,7 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) {
|
||||
@@ -24,7 +24,7 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) {
|
||||
registry->RegisterBooleanPref(prefs::kPrivacySandboxM1FledgeEnabled, false);
|
||||
registry->RegisterBooleanPref(prefs::kPrivacySandboxM1AdMeasurementEnabled,
|
||||
false);
|
||||
@@ -229,7 +213,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_prefs.cc b/components/pr
|
||||
|
||||
registry->RegisterTimePref(prefs::kPrivacySandboxTopicsDataAccessibleSince,
|
||||
base::Time());
|
||||
@@ -50,7 +50,7 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) {
|
||||
@@ -49,7 +49,7 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) {
|
||||
prefs::kPrivacySandboxRelatedWebsiteSetsDataAccessAllowedInitialized,
|
||||
false);
|
||||
registry->RegisterBooleanPref(
|
||||
@@ -250,7 +234,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings_impl.cc b/compo
|
||||
}
|
||||
|
||||
// static
|
||||
@@ -262,7 +262,8 @@ PrivacySandboxSettingsImpl::GetFinchPrioritizedTopics() {
|
||||
@@ -257,7 +257,8 @@ PrivacySandboxSettingsImpl::GetFinchPrioritizedTopics() {
|
||||
return finch_prioritized_topics_;
|
||||
}
|
||||
|
||||
@@ -260,7 +244,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings_impl.cc b/compo
|
||||
Status status = GetM1TopicAllowedStatus();
|
||||
JoinHistogram(kIsTopicsAllowedHistogram, status);
|
||||
return IsAllowed(status);
|
||||
@@ -294,7 +295,8 @@ bool PrivacySandboxSettingsImpl::IsTopicsAllowedForContext(
|
||||
@@ -289,7 +290,8 @@ bool PrivacySandboxSettingsImpl::IsTopicsAllowedForContext(
|
||||
return IsAllowed(status);
|
||||
}
|
||||
|
||||
@@ -270,7 +254,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings_impl.cc b/compo
|
||||
const auto& blocked_topics =
|
||||
pref_service_->GetList(prefs::kPrivacySandboxBlockedTopics);
|
||||
|
||||
@@ -497,6 +499,7 @@ bool PrivacySandboxSettingsImpl::
|
||||
@@ -500,6 +502,7 @@ bool PrivacySandboxSettingsImpl::
|
||||
void PrivacySandboxSettingsImpl::SetFledgeJoiningAllowed(
|
||||
const std::string& top_frame_etld_plus1,
|
||||
bool allowed) {
|
||||
@@ -278,7 +262,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings_impl.cc b/compo
|
||||
ScopedDictPrefUpdate scoped_pref_update(
|
||||
pref_service_, prefs::kPrivacySandboxFledgeJoinBlocked);
|
||||
|
||||
@@ -566,7 +569,8 @@ void PrivacySandboxSettingsImpl::ClearFledgeJoiningAllowedSettings(
|
||||
@@ -569,7 +572,8 @@ void PrivacySandboxSettingsImpl::ClearFledgeJoiningAllowedSettings(
|
||||
}
|
||||
|
||||
bool PrivacySandboxSettingsImpl::IsFledgeJoiningAllowed(
|
||||
@@ -288,7 +272,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings_impl.cc b/compo
|
||||
ScopedDictPrefUpdate scoped_pref_update(
|
||||
pref_service_, prefs::kPrivacySandboxFledgeJoinBlocked);
|
||||
auto& pref_data = scoped_pref_update.Get();
|
||||
@@ -916,7 +920,10 @@ void PrivacySandboxSettingsImpl::SetDelegateForTesting(
|
||||
@@ -902,7 +906,10 @@ void PrivacySandboxSettingsImpl::SetDelegateForTesting(
|
||||
delegate_ = std::move(delegate);
|
||||
}
|
||||
|
||||
@@ -300,7 +284,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings_impl.cc b/compo
|
||||
pref_service_->SetTime(prefs::kPrivacySandboxTopicsDataAccessibleSince,
|
||||
base::Time::Now());
|
||||
|
||||
@@ -929,6 +936,7 @@ PrivacySandboxSettingsImpl::Status
|
||||
@@ -915,6 +922,7 @@ PrivacySandboxSettingsImpl::Status
|
||||
PrivacySandboxSettingsImpl::GetSiteAccessAllowedStatus(
|
||||
const url::Origin& top_frame_origin,
|
||||
const GURL& url) const {
|
||||
@@ -308,7 +292,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings_impl.cc b/compo
|
||||
// Relying on |host_content_settings_map_| instead of |cookie_settings_|
|
||||
// allows to query whether the site associated with the |url| is allowed to
|
||||
// access Site data (aka ContentSettingsType::COOKIES) without considering any
|
||||
@@ -943,6 +951,7 @@ PrivacySandboxSettingsImpl::GetSiteAccessAllowedStatus(
|
||||
@@ -929,6 +937,7 @@ PrivacySandboxSettingsImpl::GetSiteAccessAllowedStatus(
|
||||
PrivacySandboxSettingsImpl::Status
|
||||
PrivacySandboxSettingsImpl::GetPrivacySandboxAllowedStatus(
|
||||
bool should_ignore_restriction /*=false*/) const {
|
||||
@@ -319,18 +303,18 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings_impl.cc b/compo
|
||||
diff --git a/components/privacy_sandbox/tracking_protection_prefs.cc b/components/privacy_sandbox/tracking_protection_prefs.cc
|
||||
--- a/components/privacy_sandbox/tracking_protection_prefs.cc
|
||||
+++ b/components/privacy_sandbox/tracking_protection_prefs.cc
|
||||
@@ -53,9 +53,9 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) {
|
||||
|
||||
// TODO(https://b/333527273): Deprecate
|
||||
@@ -24,9 +24,9 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) {
|
||||
// TODO(https://b/333527273): The following prefs should be deprecated.
|
||||
// Still in use for Mode B.
|
||||
registry->RegisterBooleanPref(
|
||||
- prefs::kBlockAll3pcToggleEnabled, false,
|
||||
+ prefs::kBlockAll3pcToggleEnabled, false, // with true enables FPS
|
||||
user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
|
||||
- registry->RegisterBooleanPref(prefs::kTrackingProtection3pcdEnabled, false);
|
||||
+ registry->RegisterBooleanPref(prefs::kTrackingProtection3pcdEnabled, false); // with true enables FPS
|
||||
registry->RegisterBooleanPref(prefs::kAllowAll3pcToggleEnabled, false);
|
||||
registry->RegisterIntegerPref(
|
||||
prefs::kTrackingProtectionLevel,
|
||||
prefs::kTrackingProtectionOnboardingStatus,
|
||||
static_cast<int>(TrackingProtectionOnboardingStatus::kIneligible));
|
||||
diff --git a/components/signin/public/identity_manager/account_capabilities.cc b/components/signin/public/identity_manager/account_capabilities.cc
|
||||
--- a/components/signin/public/identity_manager/account_capabilities.cc
|
||||
+++ b/components/signin/public/identity_manager/account_capabilities.cc
|
||||
@@ -365,7 +349,7 @@ diff --git a/content/browser/shared_storage/shared_storage_document_service_impl
|
||||
diff --git a/content/public/browser/content_browser_client.cc b/content/public/browser/content_browser_client.cc
|
||||
--- a/content/public/browser/content_browser_client.cc
|
||||
+++ b/content/public/browser/content_browser_client.cc
|
||||
@@ -1677,7 +1677,7 @@ bool ContentBrowserClient::ShouldPreconnectNavigation(
|
||||
@@ -1676,7 +1676,7 @@ bool ContentBrowserClient::ShouldPreconnectNavigation(
|
||||
}
|
||||
|
||||
bool ContentBrowserClient::IsFirstPartySetsEnabled() {
|
||||
@@ -401,7 +385,7 @@ new file mode 100644
|
||||
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
|
||||
@@ -2845,6 +2845,7 @@ BASE_FEATURE(kNoReferrerForPreloadFromSubresource,
|
||||
@@ -2858,6 +2858,7 @@ BASE_FEATURE(kNoReferrerForPreloadFromSubresource,
|
||||
// constants for features in the section above.
|
||||
|
||||
bool IsAllowURNsInIframeEnabled() {
|
||||
|
||||
@@ -37,7 +37,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
.../browser/content_autofill_driver.cc | 11 +++
|
||||
.../content/browser/content_autofill_driver.h | 10 +++
|
||||
.../content_autofill_driver_factory.cc | 12 +++
|
||||
.../content/renderer/autofill_agent.cc | 6 ++
|
||||
.../content/renderer/autofill_agent.cc | 4 +
|
||||
.../renderer/password_autofill_agent.cc | 5 +-
|
||||
.../browser/foundations/autofill_driver.h | 2 +
|
||||
.../foundations/autofill_driver_factory.cc | 4 +
|
||||
@@ -48,7 +48,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
.../autofill/core/common/autofill_features.h | 22 -----
|
||||
.../autofill/core/common/autofill_prefs.cc | 4 +-
|
||||
.../autofill/core/common/autofill_prefs.h | 5 ++
|
||||
33 files changed, 277 insertions(+), 165 deletions(-)
|
||||
33 files changed, 275 insertions(+), 165 deletions(-)
|
||||
create mode 100644 components/android_autofill/browser/java/src/org/chromium/components/autofill/BrowserSelectionActionMenuDelegate.java
|
||||
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java
|
||||
@@ -190,7 +190,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java
|
||||
@@ -473,8 +473,7 @@ public class MainSettings extends ChromeBaseSettingsFragment
|
||||
@@ -474,8 +474,7 @@ public class MainSettings extends ChromeBaseSettingsFragment
|
||||
|
||||
private void updateAutofillPreferences() {
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O
|
||||
@@ -203,7 +203,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.java
|
||||
@@ -101,6 +101,13 @@ import java.lang.annotation.RetentionPolicy;
|
||||
@@ -103,6 +103,13 @@ import java.lang.annotation.RetentionPolicy;
|
||||
import java.nio.ByteBuffer;
|
||||
import java.util.Objects;
|
||||
|
||||
@@ -217,7 +217,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav
|
||||
/**
|
||||
* Implementation of the interface {@link Tab}. Contains and manages a {@link ContentView}. This
|
||||
* class is not intended to be extended.
|
||||
@@ -1061,6 +1068,11 @@ class TabImpl implements Tab {
|
||||
@@ -1081,6 +1088,11 @@ class TabImpl implements Tab {
|
||||
for (TabObserver observer : mObservers) observer.onDestroyed(this);
|
||||
mObservers.clear();
|
||||
|
||||
@@ -229,7 +229,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav
|
||||
mUserDataHost.destroy();
|
||||
mTabViewManager.destroy();
|
||||
hideNativePage(false, null);
|
||||
@@ -1354,6 +1366,7 @@ class TabImpl implements Tab {
|
||||
@@ -1385,6 +1397,7 @@ class TabImpl implements Tab {
|
||||
* @return iff the AutofillProvider should provide a ViewStructure when prompted.
|
||||
*/
|
||||
boolean providesAutofillStructure() {
|
||||
@@ -237,7 +237,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav
|
||||
if (!ChromeFeatureList.isEnabled(
|
||||
AutofillFeatures.AUTOFILL_VIRTUAL_VIEW_STRUCTURE_ANDROID)) {
|
||||
return false;
|
||||
@@ -2139,16 +2152,21 @@ class TabImpl implements Tab {
|
||||
@@ -2169,16 +2182,21 @@ class TabImpl implements Tab {
|
||||
* @return true if the the provider is available for the given WebContents.
|
||||
*/
|
||||
private boolean prepareAutofillProvider(WebContents newWebContents) {
|
||||
@@ -265,7 +265,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav
|
||||
mAutofillProvider =
|
||||
new AutofillProvider(
|
||||
getContext(),
|
||||
@@ -2157,7 +2175,16 @@ class TabImpl implements Tab {
|
||||
@@ -2187,7 +2205,16 @@ class TabImpl implements Tab {
|
||||
getContext().getString(R.string.app_name));
|
||||
TabImplJni.get().initializeAutofillIfNecessary(mNativeTabAndroid);
|
||||
}
|
||||
@@ -286,7 +286,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav
|
||||
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
|
||||
@@ -3624,28 +3624,6 @@ const FeatureEntry::FeatureVariation kLinkPreviewTriggerTypeVariations[] = {
|
||||
@@ -3789,28 +3789,6 @@ const FeatureEntry::FeatureVariation kLinkPreviewTriggerTypeVariations[] = {
|
||||
std::size(kLinkPreviewTriggerTypeLongPress), nullptr}};
|
||||
#endif // !BUILDFLAG(IS_ANDROID)
|
||||
|
||||
@@ -315,7 +315,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
|
||||
const FeatureEntry::FeatureParam
|
||||
kPrerender2WarmUpCompositorTriggerPointDidCommitLoad[] = {
|
||||
{"trigger_point", "did_commit_load"}};
|
||||
@@ -6143,15 +6121,6 @@ const FeatureEntry kFeatureEntries[] = {
|
||||
@@ -6345,15 +6323,6 @@ const FeatureEntry kFeatureEntries[] = {
|
||||
#endif // BUILDFLAG(IS_CHROMEOS)
|
||||
|
||||
#if BUILDFLAG(IS_ANDROID)
|
||||
@@ -334,7 +334,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
|
||||
diff --git a/chrome/browser/android/tab_android.cc b/chrome/browser/android/tab_android.cc
|
||||
--- a/chrome/browser/android/tab_android.cc
|
||||
+++ b/chrome/browser/android/tab_android.cc
|
||||
@@ -389,8 +389,7 @@ void TabAndroid::InitializeAutofillIfNecessary(JNIEnv* env) {
|
||||
@@ -419,8 +419,7 @@ void TabAndroid::InitializeAutofillIfNecessary(JNIEnv* env) {
|
||||
->MaybeInitKeyboardSuppressor();
|
||||
return;
|
||||
}
|
||||
@@ -347,7 +347,7 @@ diff --git a/chrome/browser/android/tab_android.cc b/chrome/browser/android/tab_
|
||||
diff --git a/chrome/browser/autofill/android/BUILD.gn b/chrome/browser/autofill/android/BUILD.gn
|
||||
--- a/chrome/browser/autofill/android/BUILD.gn
|
||||
+++ b/chrome/browser/autofill/android/BUILD.gn
|
||||
@@ -148,7 +148,7 @@ android_library("bottom_sheet_utils_java") {
|
||||
@@ -149,7 +149,7 @@ android_library("bottom_sheet_utils_java") {
|
||||
generate_jni("jni_headers") {
|
||||
sources = [
|
||||
"java/src/org/chromium/chrome/browser/autofill/AddressNormalizerFactory.java",
|
||||
@@ -359,7 +359,7 @@ diff --git a/chrome/browser/autofill/android/BUILD.gn b/chrome/browser/autofill/
|
||||
diff --git a/chrome/browser/autofill/android/java/src/org/chromium/chrome/browser/autofill/AutofillClientProviderUtils.java b/chrome/browser/autofill/android/java/src/org/chromium/chrome/browser/autofill/AutofillClientProviderUtils.java
|
||||
--- a/chrome/browser/autofill/android/java/src/org/chromium/chrome/browser/autofill/AutofillClientProviderUtils.java
|
||||
+++ b/chrome/browser/autofill/android/java/src/org/chromium/chrome/browser/autofill/AutofillClientProviderUtils.java
|
||||
@@ -55,8 +55,8 @@ public class AutofillClientProviderUtils {
|
||||
@@ -79,8 +79,8 @@ public class AutofillClientProviderUtils {
|
||||
* @return {@link AndroidAutofillAvailabilityStatus.AVAILABLE} if Android Autofill can be used
|
||||
* or a reason why it can't.
|
||||
*/
|
||||
@@ -372,9 +372,9 @@ diff --git a/chrome/browser/autofill/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
|
||||
@@ -847,12 +847,6 @@ const char kAutofillVcnEnrollRequestTimeoutDescription[] =
|
||||
"VCN enrollment request. Upon timeout, the client will terminate the VCN "
|
||||
"enrollment UI, but the request may still succeed server-side.";
|
||||
@@ -869,12 +869,6 @@ const char kAutofillVcnEnrollStrikeExpiryTimeDescription[] =
|
||||
"When enabled, changes the amount of time required for VCN enrollment "
|
||||
"prompt strikes to expire.";
|
||||
|
||||
-const char kAutofillVirtualViewStructureAndroidName[] =
|
||||
- "Enable the setting to provide a virtual view structure for Autofill";
|
||||
@@ -388,9 +388,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
|
||||
@@ -497,9 +497,6 @@ extern const char kAutofillUploadCardRequestTimeoutDescription[];
|
||||
extern const char kAutofillVcnEnrollRequestTimeoutName[];
|
||||
extern const char kAutofillVcnEnrollRequestTimeoutDescription[];
|
||||
@@ -510,9 +510,6 @@ extern const char kAutofillVcnEnrollRequestTimeoutDescription[];
|
||||
extern const char kAutofillVcnEnrollStrikeExpiryTimeName[];
|
||||
extern const char kAutofillVcnEnrollStrikeExpiryTimeDescription[];
|
||||
|
||||
-extern const char kAutofillVirtualViewStructureAndroidName[];
|
||||
-extern const char kAutofillVirtualViewStructureAndroidDescription[];
|
||||
@@ -401,7 +401,7 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio
|
||||
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
|
||||
@@ -700,6 +700,12 @@ For more settings that use data to improve your Chrome experience, go to <ph nam
|
||||
@@ -703,6 +703,12 @@ For more settings that use data to improve your Chrome experience, go to <ph nam
|
||||
<message name="IDS_PASSWORD_SETTINGS_SAVE_PASSWORDS" desc="Title for the checkbox toggling whether passwords are saved or not. [CHAR_LIMIT=32]">
|
||||
Save passwords
|
||||
</message>
|
||||
@@ -597,7 +597,7 @@ diff --git a/components/android_autofill/browser/java/src/org/chromium/component
|
||||
if (event == EVENT_INPUT_SHOWN) manager.notifyInputUiChange();
|
||||
}
|
||||
}
|
||||
@@ -99,6 +100,7 @@ public class AutofillManagerWrapper {
|
||||
@@ -102,6 +103,7 @@ public class AutofillManagerWrapper {
|
||||
// Uses Exception to catch various cases. (refer to crbug.com/1186406)
|
||||
Log.e(TAG, "getAutofillServiceComponentName", e);
|
||||
}
|
||||
@@ -605,7 +605,7 @@ diff --git a/components/android_autofill/browser/java/src/org/chromium/component
|
||||
if (componentName != null) {
|
||||
mPackageName = componentName.getPackageName();
|
||||
mIsAwGCurrentAutofillService =
|
||||
@@ -266,7 +268,7 @@ public class AutofillManagerWrapper {
|
||||
@@ -274,7 +276,7 @@ public class AutofillManagerWrapper {
|
||||
/** Always check isLoggable() before call this method. */
|
||||
public static void log(String log) {
|
||||
// Log.i() instead of Log.d() is used here because log.d() is stripped out in release build.
|
||||
@@ -614,7 +614,7 @@ diff --git a/components/android_autofill/browser/java/src/org/chromium/component
|
||||
}
|
||||
|
||||
public static boolean isLoggable() {
|
||||
@@ -279,6 +281,7 @@ public class AutofillManagerWrapper {
|
||||
@@ -287,6 +289,7 @@ public class AutofillManagerWrapper {
|
||||
// NOTE: See the comment on TAG above for why this is still AwAutofillManager.
|
||||
// Check the system setting directly.
|
||||
sIsLoggable = android.util.Log.isLoggable(TAG, Log.DEBUG);
|
||||
@@ -770,7 +770,7 @@ diff --git a/components/autofill/content/browser/content_autofill_driver.h b/com
|
||||
content::RenderFrameHost* render_frame_host() { return &*render_frame_host_; }
|
||||
const content::RenderFrameHost* render_frame_host() const {
|
||||
return &*render_frame_host_;
|
||||
@@ -306,6 +312,10 @@ class ContentAutofillDriver : public AutofillDriver,
|
||||
@@ -305,6 +311,10 @@ class ContentAutofillDriver : public AutofillDriver,
|
||||
// The factory that created this driver. Outlives `this`.
|
||||
const raw_ref<ContentAutofillDriverFactory> owner_;
|
||||
|
||||
@@ -813,7 +813,7 @@ diff --git a/components/autofill/content/browser/content_autofill_driver_factory
|
||||
diff --git a/components/autofill/content/renderer/autofill_agent.cc b/components/autofill/content/renderer/autofill_agent.cc
|
||||
--- a/components/autofill/content/renderer/autofill_agent.cc
|
||||
+++ b/components/autofill/content/renderer/autofill_agent.cc
|
||||
@@ -1431,12 +1431,16 @@ void AutofillAgent::ShowSuggestions(
|
||||
@@ -1529,14 +1529,18 @@ void AutofillAgent::ShowSuggestions(
|
||||
password_generation_agent_->ShowPasswordGenerationSuggestions(
|
||||
input_element, form_cache)) {
|
||||
is_popup_possibly_visible_ = true;
|
||||
@@ -821,23 +821,11 @@ diff --git a/components/autofill/content/renderer/autofill_agent.cc b/components
|
||||
return;
|
||||
+#endif
|
||||
}
|
||||
if (password_autofill_agent_->ShowSuggestions(input_element, trigger_source,
|
||||
form_cache)) {
|
||||
is_popup_possibly_visible_ = true;
|
||||
bool password_agent_handled_request = TryShowPasswordSuggestions(
|
||||
input_element, IsPasswordsAutofillManuallyTriggered(trigger_source),
|
||||
password_request);
|
||||
+#if !BUILDFLAG(IS_ANDROID)
|
||||
return;
|
||||
+#endif
|
||||
}
|
||||
|
||||
// Password field elements should only have suggestions shown by the
|
||||
@@ -1444,11 +1448,13 @@ void AutofillAgent::ShowSuggestions(
|
||||
// `FormControlTypeForAutofill()` because we are interested in whether the
|
||||
// field is *currently* a password field, not whether it has ever been a
|
||||
// password field.
|
||||
+#if !BUILDFLAG(IS_ANDROID)
|
||||
if (input_element.FormControlType() == // nocheck
|
||||
blink::mojom::FormControlType::kInputPassword &&
|
||||
!config_.query_password_suggestions) {
|
||||
if (password_agent_handled_request) {
|
||||
return;
|
||||
}
|
||||
+#endif
|
||||
@@ -847,7 +835,7 @@ diff --git a/components/autofill/content/renderer/autofill_agent.cc b/components
|
||||
diff --git a/components/autofill/content/renderer/password_autofill_agent.cc b/components/autofill/content/renderer/password_autofill_agent.cc
|
||||
--- a/components/autofill/content/renderer/password_autofill_agent.cc
|
||||
+++ b/components/autofill/content/renderer/password_autofill_agent.cc
|
||||
@@ -849,7 +849,10 @@ void PasswordAutofillAgent::UpdatePasswordStateForTextChange(
|
||||
@@ -853,7 +853,10 @@ void PasswordAutofillAgent::UpdatePasswordStateForTextChange(
|
||||
|
||||
void PasswordAutofillAgent::TrackAutofilledElement(
|
||||
const WebFormControlElement& element) {
|
||||
@@ -888,7 +876,7 @@ diff --git a/components/autofill/core/browser/foundations/autofill_driver_factor
|
||||
diff --git a/components/autofill/core/browser/foundations/autofill_manager.h b/components/autofill/core/browser/foundations/autofill_manager.h
|
||||
--- a/components/autofill/core/browser/foundations/autofill_manager.h
|
||||
+++ b/components/autofill/core/browser/foundations/autofill_manager.h
|
||||
@@ -225,6 +225,8 @@ class AutofillManager
|
||||
@@ -222,6 +222,8 @@ class AutofillManager
|
||||
LifecycleState new_state,
|
||||
base::PassKey<AutofillDriverFactory> pass_key);
|
||||
|
||||
@@ -900,7 +888,7 @@ diff --git a/components/autofill/core/browser/foundations/autofill_manager.h b/c
|
||||
diff --git a/components/autofill/core/browser/foundations/browser_autofill_manager.cc b/components/autofill/core/browser/foundations/browser_autofill_manager.cc
|
||||
--- a/components/autofill/core/browser/foundations/browser_autofill_manager.cc
|
||||
+++ b/components/autofill/core/browser/foundations/browser_autofill_manager.cc
|
||||
@@ -703,6 +703,8 @@ base::WeakPtr<AutofillManager> BrowserAutofillManager::GetWeakPtr() {
|
||||
@@ -712,6 +712,8 @@ base::WeakPtr<AutofillManager> BrowserAutofillManager::GetWeakPtr() {
|
||||
return weak_ptr_factory_.GetWeakPtr();
|
||||
}
|
||||
|
||||
@@ -912,7 +900,7 @@ diff --git a/components/autofill/core/browser/foundations/browser_autofill_manag
|
||||
diff --git a/components/autofill/core/browser/foundations/browser_autofill_manager.h b/components/autofill/core/browser/foundations/browser_autofill_manager.h
|
||||
--- a/components/autofill/core/browser/foundations/browser_autofill_manager.h
|
||||
+++ b/components/autofill/core/browser/foundations/browser_autofill_manager.h
|
||||
@@ -117,6 +117,8 @@ class BrowserAutofillManager : public AutofillManager {
|
||||
@@ -119,6 +119,8 @@ class BrowserAutofillManager : public AutofillManager {
|
||||
|
||||
~BrowserAutofillManager() override;
|
||||
|
||||
@@ -924,10 +912,10 @@ diff --git a/components/autofill/core/browser/foundations/browser_autofill_manag
|
||||
diff --git a/components/autofill/core/common/autofill_features.cc b/components/autofill/core/common/autofill_features.cc
|
||||
--- a/components/autofill/core/common/autofill_features.cc
|
||||
+++ b/components/autofill/core/common/autofill_features.cc
|
||||
@@ -840,7 +840,7 @@ BASE_FEATURE(kAutofillThirdPartyModeContentProvider,
|
||||
@@ -850,7 +850,7 @@ BASE_FEATURE(kAutofillThirdPartyModeContentProvider,
|
||||
BASE_FEATURE(kAutofillVirtualViewStructureAndroid,
|
||||
"AutofillVirtualViewStructureAndroid",
|
||||
base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
-
|
||||
+SET_CROMITE_FEATURE_ENABLED(kAutofillVirtualViewStructureAndroid);
|
||||
#endif // BUILDFLAG(IS_ANDROID)
|
||||
@@ -936,7 +924,7 @@ diff --git a/components/autofill/core/common/autofill_features.cc b/components/a
|
||||
diff --git a/components/autofill/core/common/autofill_features.h b/components/autofill/core/common/autofill_features.h
|
||||
--- a/components/autofill/core/common/autofill_features.h
|
||||
+++ b/components/autofill/core/common/autofill_features.h
|
||||
@@ -295,28 +295,6 @@ COMPONENT_EXPORT(AUTOFILL)
|
||||
@@ -308,28 +308,6 @@ COMPONENT_EXPORT(AUTOFILL)
|
||||
BASE_DECLARE_FEATURE(kAutofillThirdPartyModeContentProvider);
|
||||
COMPONENT_EXPORT(AUTOFILL)
|
||||
BASE_DECLARE_FEATURE(kAutofillVirtualViewStructureAndroid);
|
||||
@@ -977,7 +965,7 @@ diff --git a/components/autofill/core/common/autofill_prefs.cc b/components/auto
|
||||
registry->RegisterIntegerPref(kAutocompleteLastVersionRetentionPolicy, 0);
|
||||
registry->RegisterStringPref(kAutofillUploadEncodingSeed, "");
|
||||
registry->RegisterDictionaryPref(kAutofillVoteUploadEvents);
|
||||
@@ -86,7 +88,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
|
||||
@@ -87,7 +89,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
|
||||
false);
|
||||
|
||||
#if BUILDFLAG(IS_ANDROID)
|
||||
@@ -989,7 +977,7 @@ diff --git a/components/autofill/core/common/autofill_prefs.cc b/components/auto
|
||||
diff --git a/components/autofill/core/common/autofill_prefs.h b/components/autofill/core/common/autofill_prefs.h
|
||||
--- a/components/autofill/core/common/autofill_prefs.h
|
||||
+++ b/components/autofill/core/common/autofill_prefs.h
|
||||
@@ -98,6 +98,11 @@ inline constexpr char kAutofillUploadEventsLastResetTimestamp[] =
|
||||
@@ -104,6 +104,11 @@ inline constexpr char kAutofillUploadEventsLastResetTimestamp[] =
|
||||
// retention policy was run.
|
||||
inline constexpr char kAutocompleteLastVersionRetentionPolicy[] =
|
||||
"autocomplete.retention_policy_last_version";
|
||||
|
||||
@@ -38,7 +38,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
|
||||
.../template_url_table_model.cc | 9 +-
|
||||
.../search_engines/template_url_table_model.h | 6 +-
|
||||
.../browser/ui/webui/chrome_web_ui_configs.cc | 8 +
|
||||
chrome/browser/ui/webui/favicon_source.cc | 14 +
|
||||
chrome/browser/ui/webui/favicon_source.cc | 12 +
|
||||
chrome/browser/ui/webui/favicon_source.h | 2 +
|
||||
.../webui/settings/search_engines_handler.cc | 28 +-
|
||||
.../webui/settings/search_engines_handler.h | 3 +-
|
||||
@@ -77,7 +77,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
|
||||
ui/webui/resources/images/BUILD.gn | 2 +-
|
||||
ui/webui/resources/js/BUILD.gn | 2 +-
|
||||
ui/webui/resources/js/load_time_data.ts | 17 +-
|
||||
70 files changed, 1152 insertions(+), 69 deletions(-)
|
||||
70 files changed, 1150 insertions(+), 69 deletions(-)
|
||||
create mode 100644 chrome/app/settings_strings_android.grdp
|
||||
create mode 100644 chrome/browser/search_engines/android/java/res/layout/search_engine_layout.xml
|
||||
create mode 100644 chrome/browser/ui/webui/settings/settings_localized_strings_provider_android.cc
|
||||
@@ -140,7 +140,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources
|
||||
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
|
||||
@@ -2398,6 +2398,9 @@
|
||||
@@ -2397,6 +2397,9 @@
|
||||
<message name="IDS_SETTINGS_SEARCH_ENGINES_QUERY_URL_EXPLANATION" desc="Label for explaining the format of the URL that should be entered by the user in the add/edit search engine dialog.">
|
||||
URL with <ph name="SPECIAL_SYMBOL">%s</ph> in place of query
|
||||
</message>
|
||||
@@ -418,7 +418,7 @@ new file mode 100644
|
||||
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
|
||||
--- a/chrome/browser/BUILD.gn
|
||||
+++ b/chrome/browser/BUILD.gn
|
||||
@@ -3562,6 +3562,9 @@ static_library("browser") {
|
||||
@@ -3573,6 +3573,9 @@ static_library("browser") {
|
||||
"//components/user_scripts/android",
|
||||
]
|
||||
}
|
||||
@@ -431,7 +431,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
|
||||
diff --git a/chrome/browser/chrome_browser_interface_binders.cc b/chrome/browser/chrome_browser_interface_binders.cc
|
||||
--- a/chrome/browser/chrome_browser_interface_binders.cc
|
||||
+++ b/chrome/browser/chrome_browser_interface_binders.cc
|
||||
@@ -84,6 +84,9 @@
|
||||
@@ -88,6 +88,9 @@
|
||||
#endif
|
||||
|
||||
#if BUILDFLAG(IS_ANDROID)
|
||||
@@ -444,7 +444,7 @@ diff --git a/chrome/browser/chrome_browser_interface_binders.cc b/chrome/browser
|
||||
diff --git a/chrome/browser/chrome_browser_interface_binders_webui.cc b/chrome/browser/chrome_browser_interface_binders_webui.cc
|
||||
--- a/chrome/browser/chrome_browser_interface_binders_webui.cc
|
||||
+++ b/chrome/browser/chrome_browser_interface_binders_webui.cc
|
||||
@@ -65,6 +65,12 @@
|
||||
@@ -70,6 +70,12 @@
|
||||
#include "components/signin/public/base/signin_switches.h"
|
||||
#endif
|
||||
|
||||
@@ -457,7 +457,7 @@ diff --git a/chrome/browser/chrome_browser_interface_binders_webui.cc b/chrome/b
|
||||
#if BUILDFLAG(IS_ANDROID)
|
||||
#include "chrome/browser/ui/webui/feed_internals/feed_internals.mojom.h"
|
||||
#include "chrome/browser/ui/webui/feed_internals/feed_internals_ui.h"
|
||||
@@ -470,6 +476,15 @@ void PopulateChromeWebUIFrameBinders(
|
||||
@@ -477,6 +483,15 @@ void PopulateChromeWebUIFrameBinders(
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -473,7 +473,7 @@ diff --git a/chrome/browser/chrome_browser_interface_binders_webui.cc b/chrome/b
|
||||
#if !BUILDFLAG(IS_ANDROID)
|
||||
RegisterWebUIControllerInterfaceBinder<
|
||||
search_engine_choice::mojom::PageHandlerFactory, SearchEngineChoiceUI>(
|
||||
@@ -601,6 +616,9 @@ void PopulateChromeWebUIFrameBinders(
|
||||
@@ -611,6 +626,9 @@ void PopulateChromeWebUIFrameBinders(
|
||||
RegisterWebUIControllerInterfaceBinder<suggest_internals::mojom::PageHandler,
|
||||
SuggestInternalsUI>(map);
|
||||
|
||||
@@ -483,7 +483,7 @@ diff --git a/chrome/browser/chrome_browser_interface_binders_webui.cc b/chrome/b
|
||||
RegisterWebUIControllerInterfaceBinder<
|
||||
customize_color_scheme_mode::mojom::
|
||||
CustomizeColorSchemeModeHandlerFactory,
|
||||
@@ -621,6 +639,9 @@ void PopulateChromeWebUIFrameBinders(
|
||||
@@ -631,6 +649,9 @@ void PopulateChromeWebUIFrameBinders(
|
||||
CertificateManagerUI>(map);
|
||||
#endif // BUILDFLAG(CHROME_ROOT_STORE_CERT_MANAGEMENT_UI)
|
||||
|
||||
@@ -596,13 +596,13 @@ diff --git a/chrome/browser/resources/settings/search_engines_page/search_engine
|
||||
actionButtonText_: String,
|
||||
cancelButtonHidden_: Boolean,
|
||||
@@ -79,6 +80,7 @@ export class SettingsSearchEngineEditDialogElement extends
|
||||
private searchEngine_: string;
|
||||
private keyword_: string;
|
||||
private queryUrl_: string;
|
||||
+ private suggestionUrl_: string;
|
||||
private dialogTitle_: string;
|
||||
private actionButtonText_: string;
|
||||
private cancelButtonHidden_: boolean;
|
||||
declare private searchEngine_: string;
|
||||
declare private keyword_: string;
|
||||
declare private queryUrl_: string;
|
||||
+ declare private suggestionUrl_: string;
|
||||
declare private dialogTitle_: string;
|
||||
declare private actionButtonText_: string;
|
||||
declare private cancelButtonHidden_: boolean;
|
||||
@@ -108,7 +110,7 @@ export class SettingsSearchEngineEditDialogElement extends
|
||||
this.searchEngine_ = this.model.name;
|
||||
this.keyword_ = this.model.keyword;
|
||||
@@ -801,8 +801,8 @@ diff --git a/chrome/browser/search/background/BUILD.gn b/chrome/browser/search/b
|
||||
+if (!is_android) {
|
||||
source_set("background") {
|
||||
public = [
|
||||
"ntp_background_data.h",
|
||||
@@ -60,6 +61,7 @@ source_set("background") {
|
||||
"ntp_background_service_factory.h",
|
||||
@@ -58,6 +59,7 @@ source_set("background") {
|
||||
"//ui/gfx/codec",
|
||||
]
|
||||
}
|
||||
@@ -854,7 +854,7 @@ new file mode 100644
|
||||
diff --git a/chrome/browser/search_engines/android/java/src/org/chromium/chrome/browser/search_engines/settings/SearchEngineSettings.java b/chrome/browser/search_engines/android/java/src/org/chromium/chrome/browser/search_engines/settings/SearchEngineSettings.java
|
||||
--- a/chrome/browser/search_engines/android/java/src/org/chromium/chrome/browser/search_engines/settings/SearchEngineSettings.java
|
||||
+++ b/chrome/browser/search_engines/android/java/src/org/chromium/chrome/browser/search_engines/settings/SearchEngineSettings.java
|
||||
@@ -8,6 +8,10 @@ import android.os.Bundle;
|
||||
@@ -9,6 +9,10 @@ import android.os.Bundle;
|
||||
import android.view.View;
|
||||
import android.widget.ListView;
|
||||
|
||||
@@ -865,16 +865,16 @@ diff --git a/chrome/browser/search_engines/android/java/src/org/chromium/chrome/
|
||||
import androidx.fragment.app.ListFragment;
|
||||
|
||||
import org.chromium.base.supplier.ObservableSupplier;
|
||||
@@ -16,6 +20,8 @@ import org.chromium.chrome.browser.profiles.Profile;
|
||||
@@ -19,6 +23,8 @@ import org.chromium.chrome.browser.profiles.Profile;
|
||||
import org.chromium.chrome.browser.regional_capabilities.RegionalCapabilitiesServiceFactory;
|
||||
import org.chromium.chrome.browser.search_engines.R;
|
||||
import org.chromium.chrome.browser.settings.ProfileDependentSetting;
|
||||
+import org.chromium.chrome.browser.settings.SettingsNavigationFactory;
|
||||
+import org.chromium.components.browser_ui.settings.SettingsNavigation;
|
||||
import org.chromium.components.browser_ui.settings.EmbeddableSettingsPage;
|
||||
import org.chromium.components.browser_ui.settings.SettingsFragment;
|
||||
import org.chromium.components.regional_capabilities.RegionalCapabilitiesService;
|
||||
|
||||
@@ -57,6 +63,21 @@ public class SearchEngineSettings extends ListFragment
|
||||
@@ -62,6 +68,21 @@ public class SearchEngineSettings extends ListFragment
|
||||
return mPageTitle;
|
||||
}
|
||||
|
||||
@@ -894,12 +894,12 @@ diff --git a/chrome/browser/search_engines/android/java/src/org/chromium/chrome/
|
||||
+ }
|
||||
+
|
||||
@Override
|
||||
public void onViewCreated(View view, Bundle savedInstanceState) {
|
||||
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
|
||||
super.onViewCreated(view, savedInstanceState);
|
||||
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
|
||||
@@ -699,6 +699,12 @@ static_library("ui") {
|
||||
@@ -702,6 +702,12 @@ static_library("ui") {
|
||||
"//v8:v8_version",
|
||||
]
|
||||
|
||||
@@ -912,10 +912,10 @@ diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn
|
||||
if (is_chrome_branded) {
|
||||
deps += [ "//components/plus_addresses/resources:vector_icons" ]
|
||||
}
|
||||
@@ -986,6 +992,21 @@ static_library("ui") {
|
||||
# TODO(b/335257259): Resolve circular deps.
|
||||
# Any circular includes must depend on the target "//chrome/browser:browser_public_dependencies".
|
||||
allow_circular_includes_from += [ "//chrome/browser/facilitated_payments" ]
|
||||
@@ -1000,6 +1006,21 @@ static_library("ui") {
|
||||
"android/toolbar/extension_actions_bridge_factory.h",
|
||||
]
|
||||
}
|
||||
+ sources += [
|
||||
+ "webui/settings/settings_ui_android.cc",
|
||||
+ "webui/settings/settings_ui_android.h",
|
||||
@@ -1058,7 +1058,7 @@ diff --git a/chrome/browser/ui/search_engines/keyword_editor_controller.h b/chro
|
||||
diff --git a/chrome/browser/ui/search_engines/template_url_table_model.cc b/chrome/browser/ui/search_engines/template_url_table_model.cc
|
||||
--- a/chrome/browser/ui/search_engines/template_url_table_model.cc
|
||||
+++ b/chrome/browser/ui/search_engines/template_url_table_model.cc
|
||||
@@ -206,7 +206,8 @@ void TemplateURLTableModel::Remove(size_t index) {
|
||||
@@ -207,7 +207,8 @@ void TemplateURLTableModel::Remove(size_t index) {
|
||||
void TemplateURLTableModel::Add(size_t index,
|
||||
const std::u16string& short_name,
|
||||
const std::u16string& keyword,
|
||||
@@ -1068,7 +1068,7 @@ diff --git a/chrome/browser/ui/search_engines/template_url_table_model.cc b/chro
|
||||
DCHECK(index <= RowCount());
|
||||
DCHECK(!url.empty());
|
||||
TemplateURLData data;
|
||||
@@ -214,13 +215,15 @@ void TemplateURLTableModel::Add(size_t index,
|
||||
@@ -215,13 +216,15 @@ void TemplateURLTableModel::Add(size_t index,
|
||||
data.SetKeyword(keyword);
|
||||
data.SetURL(url);
|
||||
data.is_active = TemplateURLData::ActiveStatus::kTrue;
|
||||
@@ -1085,7 +1085,7 @@ diff --git a/chrome/browser/ui/search_engines/template_url_table_model.cc b/chro
|
||||
DCHECK(index <= RowCount());
|
||||
DCHECK(!url.empty());
|
||||
TemplateURL* template_url = GetTemplateURL(index);
|
||||
@@ -229,7 +232,7 @@ void TemplateURLTableModel::ModifyTemplateURL(size_t index,
|
||||
@@ -230,7 +233,7 @@ void TemplateURLTableModel::ModifyTemplateURL(size_t index,
|
||||
DCHECK(template_url_service_->GetDefaultSearchProvider() != template_url ||
|
||||
template_url->SupportsReplacement(
|
||||
template_url_service_->search_terms_data()));
|
||||
@@ -1118,7 +1118,7 @@ diff --git a/chrome/browser/ui/search_engines/template_url_table_model.h b/chrom
|
||||
diff --git a/chrome/browser/ui/webui/chrome_web_ui_configs.cc b/chrome/browser/ui/webui/chrome_web_ui_configs.cc
|
||||
--- a/chrome/browser/ui/webui/chrome_web_ui_configs.cc
|
||||
+++ b/chrome/browser/ui/webui/chrome_web_ui_configs.cc
|
||||
@@ -60,6 +60,11 @@
|
||||
@@ -61,6 +61,11 @@
|
||||
#include "components/user_scripts/browser/ui/user_scripts_ui.h"
|
||||
#endif
|
||||
|
||||
@@ -1130,7 +1130,7 @@ diff --git a/chrome/browser/ui/webui/chrome_web_ui_configs.cc b/chrome/browser/u
|
||||
#if BUILDFLAG(ENABLE_NACL)
|
||||
#include "chrome/browser/ui/webui/nacl_ui.h"
|
||||
#endif
|
||||
@@ -409,4 +414,7 @@ void RegisterChromeWebUIConfigs() {
|
||||
@@ -420,4 +425,7 @@ void RegisterChromeWebUIConfigs() {
|
||||
#if BUILDFLAG(IS_ANDROID)
|
||||
map.AddWebUIConfig(std::make_unique<user_scripts::UserScriptsUIConfig>());
|
||||
#endif
|
||||
@@ -1141,19 +1141,7 @@ diff --git a/chrome/browser/ui/webui/chrome_web_ui_configs.cc b/chrome/browser/u
|
||||
diff --git a/chrome/browser/ui/webui/favicon_source.cc b/chrome/browser/ui/webui/favicon_source.cc
|
||||
--- a/chrome/browser/ui/webui/favicon_source.cc
|
||||
+++ b/chrome/browser/ui/webui/favicon_source.cc
|
||||
@@ -22,9 +22,11 @@
|
||||
#include "components/history/core/browser/top_sites.h"
|
||||
#include "content/public/browser/browser_thread.h"
|
||||
#include "content/public/browser/web_contents.h"
|
||||
+#if !BUILDFLAG(IS_ANDROID)
|
||||
#include "extensions/browser/extension_registry.h"
|
||||
#include "extensions/common/constants.h"
|
||||
#include "extensions/common/manifest.h"
|
||||
+#endif
|
||||
#include "third_party/skia/include/core/SkBitmap.h"
|
||||
#include "ui/base/resource/resource_bundle.h"
|
||||
#include "ui/base/resource/resource_scale_factor.h"
|
||||
@@ -226,6 +228,7 @@ bool FaviconSource::ShouldServiceRequest(
|
||||
@@ -230,6 +230,7 @@ bool FaviconSource::ShouldServiceRequest(
|
||||
render_process_id);
|
||||
}
|
||||
|
||||
@@ -1161,7 +1149,7 @@ diff --git a/chrome/browser/ui/webui/favicon_source.cc b/chrome/browser/ui/webui
|
||||
ui::NativeTheme* FaviconSource::GetNativeTheme(
|
||||
const content::WebContents::Getter& wc_getter) {
|
||||
#if BUILDFLAG(IS_ANDROID)
|
||||
@@ -234,6 +237,7 @@ ui::NativeTheme* FaviconSource::GetNativeTheme(
|
||||
@@ -238,6 +239,7 @@ ui::NativeTheme* FaviconSource::GetNativeTheme(
|
||||
return webui::GetNativeThemeDeprecated(wc_getter.Run());
|
||||
#endif
|
||||
}
|
||||
@@ -1169,7 +1157,7 @@ diff --git a/chrome/browser/ui/webui/favicon_source.cc b/chrome/browser/ui/webui
|
||||
|
||||
void FaviconSource::OnFaviconDataAvailable(
|
||||
content::URLDataSource::GotDataCallback callback,
|
||||
@@ -257,7 +261,11 @@ void FaviconSource::SendDefaultResponse(
|
||||
@@ -261,7 +263,11 @@ void FaviconSource::SendDefaultResponse(
|
||||
parsed.device_scale_factor,
|
||||
parsed.force_light_mode
|
||||
? false
|
||||
@@ -1181,7 +1169,7 @@ diff --git a/chrome/browser/ui/webui/favicon_source.cc b/chrome/browser/ui/webui
|
||||
return;
|
||||
}
|
||||
int icon_size = std::ceil(parsed.size_in_dip * parsed.device_scale_factor);
|
||||
@@ -277,7 +285,11 @@ void FaviconSource::SendDefaultResponse(
|
||||
@@ -281,7 +287,11 @@ void FaviconSource::SendDefaultResponse(
|
||||
SendDefaultResponse(std::move(callback), 16, 1.0f,
|
||||
force_light_mode
|
||||
? false
|
||||
@@ -1193,15 +1181,15 @@ diff --git a/chrome/browser/ui/webui/favicon_source.cc b/chrome/browser/ui/webui
|
||||
}
|
||||
|
||||
void FaviconSource::SendDefaultResponse(
|
||||
@@ -287,6 +299,7 @@ void FaviconSource::SendDefaultResponse(
|
||||
bool dark_mode) {
|
||||
@@ -292,6 +302,7 @@ void FaviconSource::SendDefaultResponse(
|
||||
base::UmaHistogramBoolean(kDefaultResponseHistogramName, true);
|
||||
int resource_id;
|
||||
switch (size_in_dip) {
|
||||
+#if !BUILDFLAG(IS_ANDROID)
|
||||
case 64:
|
||||
resource_id =
|
||||
dark_mode ? IDR_DEFAULT_FAVICON_DARK_64 : IDR_DEFAULT_FAVICON_64;
|
||||
@@ -295,6 +308,7 @@ void FaviconSource::SendDefaultResponse(
|
||||
@@ -300,6 +311,7 @@ void FaviconSource::SendDefaultResponse(
|
||||
resource_id =
|
||||
dark_mode ? IDR_DEFAULT_FAVICON_DARK_32 : IDR_DEFAULT_FAVICON_32;
|
||||
break;
|
||||
@@ -1248,7 +1236,7 @@ diff --git a/chrome/browser/ui/webui/settings/search_engines_handler.cc b/chrome
|
||||
|
||||
// Dummy number used for indicating that a new search engine is added.
|
||||
const int kNewSearchEngineIndex = -1;
|
||||
@@ -225,9 +228,10 @@ base::Value::Dict SearchEnginesHandler::CreateDictionaryForEngine(
|
||||
@@ -252,9 +255,10 @@ base::Value::Dict SearchEnginesHandler::CreateDictionaryForEngine(
|
||||
table_model->GetText(index,
|
||||
IDS_SEARCH_ENGINES_EDITOR_DESCRIPTION_COLUMN));
|
||||
dict.Set("keyword", table_model->GetKeywordToDisplay(index));
|
||||
@@ -1260,7 +1248,7 @@ diff --git a/chrome/browser/ui/webui/settings/search_engines_handler.cc b/chrome
|
||||
dict.Set("urlLocked", ((template_url->prepopulate_id() > 0) ||
|
||||
(template_url->starter_pack_id() > 0)));
|
||||
GURL icon_url = template_url->favicon_url();
|
||||
@@ -235,6 +239,8 @@ base::Value::Dict SearchEnginesHandler::CreateDictionaryForEngine(
|
||||
@@ -262,6 +266,8 @@ base::Value::Dict SearchEnginesHandler::CreateDictionaryForEngine(
|
||||
dict.Set("iconURL", icon_url.spec());
|
||||
}
|
||||
|
||||
@@ -1269,7 +1257,7 @@ diff --git a/chrome/browser/ui/webui/settings/search_engines_handler.cc b/chrome
|
||||
// The icons that are used for search engines in the EEA region are bundled
|
||||
// with Chrome. We use the favicon service for countries outside the EEA
|
||||
// region to guarantee having icons for all search engines.
|
||||
@@ -253,6 +259,7 @@ base::Value::Dict SearchEnginesHandler::CreateDictionaryForEngine(
|
||||
@@ -280,6 +286,7 @@ base::Value::Dict SearchEnginesHandler::CreateDictionaryForEngine(
|
||||
dict.Set("iconPath", base::StrCat({icon_path, "@2x"}));
|
||||
}
|
||||
}
|
||||
@@ -1277,7 +1265,7 @@ diff --git a/chrome/browser/ui/webui/settings/search_engines_handler.cc b/chrome
|
||||
|
||||
dict.Set("modelIndex", base::checked_cast<int>(index));
|
||||
|
||||
@@ -269,6 +276,7 @@ base::Value::Dict SearchEnginesHandler::CreateDictionaryForEngine(
|
||||
@@ -296,6 +303,7 @@ base::Value::Dict SearchEnginesHandler::CreateDictionaryForEngine(
|
||||
dict.Set("isOmniboxExtension", type == TemplateURL::OMNIBOX_API_EXTENSION);
|
||||
dict.Set("isPrepopulated", template_url->prepopulate_id() > 0);
|
||||
dict.Set("isStarterPack", template_url->starter_pack_id() > 0);
|
||||
@@ -1285,7 +1273,7 @@ diff --git a/chrome/browser/ui/webui/settings/search_engines_handler.cc b/chrome
|
||||
if (type == TemplateURL::NORMAL_CONTROLLED_BY_EXTENSION ||
|
||||
type == TemplateURL::OMNIBOX_API_EXTENSION) {
|
||||
const extensions::Extension* extension =
|
||||
@@ -285,6 +293,7 @@ base::Value::Dict SearchEnginesHandler::CreateDictionaryForEngine(
|
||||
@@ -312,6 +320,7 @@ base::Value::Dict SearchEnginesHandler::CreateDictionaryForEngine(
|
||||
dict.Set("extension", std::move(ext_info));
|
||||
}
|
||||
}
|
||||
@@ -1293,7 +1281,7 @@ diff --git a/chrome/browser/ui/webui/settings/search_engines_handler.cc b/chrome
|
||||
return dict;
|
||||
}
|
||||
|
||||
@@ -403,12 +412,13 @@ void SearchEnginesHandler::HandleSearchEngineEditStarted(
|
||||
@@ -414,12 +423,13 @@ void SearchEnginesHandler::HandleSearchEngineEditStarted(
|
||||
void SearchEnginesHandler::OnEditedKeyword(TemplateURL* template_url,
|
||||
const std::u16string& title,
|
||||
const std::u16string& keyword,
|
||||
@@ -1310,7 +1298,7 @@ diff --git a/chrome/browser/ui/webui/settings/search_engines_handler.cc b/chrome
|
||||
}
|
||||
|
||||
edit_controller_.reset();
|
||||
@@ -438,6 +448,8 @@ bool SearchEnginesHandler::CheckFieldValidity(const std::string& field_name,
|
||||
@@ -449,6 +459,8 @@ bool SearchEnginesHandler::CheckFieldValidity(const std::string& field_name,
|
||||
is_valid = edit_controller_->IsKeywordValid(base::UTF8ToUTF16(field_value));
|
||||
} else if (field_name.compare(kQueryUrlField) == 0) {
|
||||
is_valid = edit_controller_->IsURLValid(field_value);
|
||||
@@ -1319,7 +1307,7 @@ diff --git a/chrome/browser/ui/webui/settings/search_engines_handler.cc b/chrome
|
||||
} else {
|
||||
NOTREACHED();
|
||||
}
|
||||
@@ -460,18 +472,20 @@ void SearchEnginesHandler::HandleSearchEngineEditCompleted(
|
||||
@@ -471,18 +483,20 @@ void SearchEnginesHandler::HandleSearchEngineEditCompleted(
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -1359,7 +1347,7 @@ diff --git a/chrome/browser/ui/webui/settings/search_engines_handler.h b/chrome/
|
||||
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
|
||||
@@ -2452,6 +2452,8 @@ void AddSearchEnginesStrings(content::WebUIDataSource* html_source) {
|
||||
@@ -2484,6 +2484,8 @@ void AddSearchEnginesStrings(content::WebUIDataSource* html_source) {
|
||||
{"searchEnginesQueryURL", IDS_SETTINGS_SEARCH_ENGINES_QUERY_URL},
|
||||
{"searchEnginesQueryURLExplanation",
|
||||
IDS_SETTINGS_SEARCH_ENGINES_QUERY_URL_EXPLANATION},
|
||||
@@ -1368,7 +1356,7 @@ diff --git a/chrome/browser/ui/webui/settings/settings_localized_strings_provide
|
||||
{"searchEnginesMakeDefault", IDS_SETTINGS_SEARCH_ENGINES_MAKE_DEFAULT},
|
||||
{"searchEnginesActivate", IDS_SETTINGS_SEARCH_ENGINES_ACTIVATE},
|
||||
{"searchEnginesDeactivate", IDS_SETTINGS_SEARCH_ENGINES_DEACTIVATE},
|
||||
@@ -3819,6 +3821,12 @@ void AddLocalizedStrings(content::WebUIDataSource* html_source,
|
||||
@@ -3838,6 +3840,12 @@ void AddLocalizedStrings(content::WebUIDataSource* html_source,
|
||||
AddSystemStrings(html_source);
|
||||
#endif
|
||||
|
||||
@@ -1861,7 +1849,7 @@ new file mode 100644
|
||||
diff --git a/chrome/chrome_paks.gni b/chrome/chrome_paks.gni
|
||||
--- a/chrome/chrome_paks.gni
|
||||
+++ b/chrome/chrome_paks.gni
|
||||
@@ -168,6 +168,17 @@ template("chrome_extra_paks") {
|
||||
@@ -169,6 +169,17 @@ template("chrome_extra_paks") {
|
||||
sources += invoker.additional_paks
|
||||
}
|
||||
|
||||
@@ -1917,7 +1905,7 @@ diff --git a/components/search_engines/android/template_url_service_android.cc b
|
||||
diff --git a/components/search_engines/search_engines_switches.cc b/components/search_engines/search_engines_switches.cc
|
||||
--- a/components/search_engines/search_engines_switches.cc
|
||||
+++ b/components/search_engines/search_engines_switches.cc
|
||||
@@ -45,6 +45,7 @@ COMPONENT_EXPORT(SEARCH_ENGINES_SWITCHES)
|
||||
@@ -51,6 +51,7 @@ COMPONENT_EXPORT(SEARCH_ENGINES_SWITCHES)
|
||||
BASE_FEATURE(kSearchEngineChoiceTrigger,
|
||||
"SearchEngineChoiceTrigger",
|
||||
base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
@@ -1991,7 +1979,7 @@ diff --git a/components/search_engines/template_url_service.cc b/components/sear
|
||||
diff --git a/components/search_engines/template_url_service.h b/components/search_engines/template_url_service.h
|
||||
--- a/components/search_engines/template_url_service.h
|
||||
+++ b/components/search_engines/template_url_service.h
|
||||
@@ -256,7 +256,8 @@ class TemplateURLService final : public WebDataServiceConsumer,
|
||||
@@ -260,7 +260,8 @@ class TemplateURLService final : public WebDataServiceConsumer,
|
||||
TemplateURL* AddWithOverrides(std::unique_ptr<TemplateURL> template_url,
|
||||
const std::u16string& short_name,
|
||||
const std::u16string& keyword,
|
||||
@@ -2001,7 +1989,7 @@ diff --git a/components/search_engines/template_url_service.h b/components/searc
|
||||
|
||||
// Removes the keyword from the model. This deletes the supplied TemplateURL.
|
||||
// This fails if the supplied template_url is the default search provider.
|
||||
@@ -342,7 +343,8 @@ class TemplateURLService final : public WebDataServiceConsumer,
|
||||
@@ -346,7 +347,8 @@ class TemplateURLService final : public WebDataServiceConsumer,
|
||||
void ResetTemplateURL(TemplateURL* url,
|
||||
const std::u16string& title,
|
||||
const std::u16string& keyword,
|
||||
@@ -2280,7 +2268,7 @@ diff --git a/ui/webui/resources/cr_components/theme_color_picker/BUILD.gn b/ui/w
|
||||
diff --git a/ui/webui/resources/cr_elements/BUILD.gn b/ui/webui/resources/cr_elements/BUILD.gn
|
||||
--- a/ui/webui/resources/cr_elements/BUILD.gn
|
||||
+++ b/ui/webui/resources/cr_elements/BUILD.gn
|
||||
@@ -37,7 +37,7 @@ build_webui("build") {
|
||||
@@ -33,7 +33,7 @@ build_webui("build") {
|
||||
"cr_tabs/cr_tabs.css",
|
||||
]
|
||||
|
||||
@@ -2288,17 +2276,17 @@ diff --git a/ui/webui/resources/cr_elements/BUILD.gn b/ui/webui/resources/cr_ele
|
||||
+ if ((!is_ios) || is_desktop_android) {
|
||||
web_component_files += [ "cr_a11y_announcer/cr_a11y_announcer.ts" ]
|
||||
|
||||
non_web_component_files += [
|
||||
@@ -145,7 +145,7 @@ build_webui("build") {
|
||||
ts_files += [
|
||||
@@ -141,7 +141,7 @@ build_webui("build") {
|
||||
]
|
||||
}
|
||||
|
||||
- if (!is_android && !is_ios) {
|
||||
+ if (!is_ios) {
|
||||
non_web_component_files += [
|
||||
ts_files += [
|
||||
"cr_container_shadow_mixin.ts",
|
||||
"cr_radio_button/cr_radio_button_mixin.ts",
|
||||
@@ -241,7 +241,7 @@ build_webui("build") {
|
||||
@@ -237,7 +237,7 @@ build_webui("build") {
|
||||
"../js:build_ts",
|
||||
"//third_party/lit/v3_0:build_ts",
|
||||
]
|
||||
|
||||
@@ -3,26 +3,26 @@ Date: Mon, 3 Mar 2025 14:33:03 +0000
|
||||
Subject: Temporarily disable Tab Group Sync Android
|
||||
|
||||
---
|
||||
.../org/chromium/chrome/browser/flags/ChromeFeatureList.java | 2 +-
|
||||
.../src/org/chromium/chrome/browser/ChromeTabbedActivity.java | 2 --
|
||||
components/saved_tab_groups/public/features.cc | 3 +++
|
||||
2 files changed, 4 insertions(+), 1 deletion(-)
|
||||
2 files changed, 3 insertions(+), 2 deletions(-)
|
||||
|
||||
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
|
||||
@@ -841,7 +841,7 @@ public abstract class ChromeFeatureList {
|
||||
public static final CachedFlag sTabClosureMethodRefactor =
|
||||
newCachedFlag(TAB_CLOSURE_METHOD_REFACTOR, false);
|
||||
public static final CachedFlag sTabGroupPaneAndroid =
|
||||
- newCachedFlag(TAB_GROUP_PANE_ANDROID, /* defaultValue= */ true);
|
||||
+ newCachedFlag(TAB_GROUP_PANE_ANDROID, /* defaultValue= */ false);
|
||||
public static final CachedFlag sTabStateFlatBuffer =
|
||||
newCachedFlag(
|
||||
TAB_STATE_FLAT_BUFFER,
|
||||
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
|
||||
@@ -985,8 +985,6 @@ public class ChromeTabbedActivity extends ChromeActivity {
|
||||
builder.registerPane(
|
||||
PaneId.INCOGNITO_TAB_SWITCHER,
|
||||
LazyOneshotSupplier.fromSupplier(() -> createTabSwitcherPane(true)));
|
||||
- builder.registerPane(
|
||||
- PaneId.TAB_GROUPS, LazyOneshotSupplier.fromSupplier(this::createTabGroupsPane));
|
||||
if (ChromeFeatureList.sCrossDeviceTabPaneAndroid.isEnabled()) {
|
||||
builder.registerPane(
|
||||
PaneId.CROSS_DEVICE,
|
||||
diff --git a/components/saved_tab_groups/public/features.cc b/components/saved_tab_groups/public/features.cc
|
||||
--- a/components/saved_tab_groups/public/features.cc
|
||||
+++ b/components/saved_tab_groups/public/features.cc
|
||||
@@ -140,4 +140,7 @@ base::TimeDelta GetOriginatingSavedGroupCleanUpTimeInterval() {
|
||||
@@ -136,4 +136,7 @@ base::TimeDelta GetOriginatingSavedGroupCleanUpTimeInterval() {
|
||||
return base::Seconds(time_in_seconds);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user