diff --git a/build/browser.gn_args b/build/browser.gn_args index 394545c1b600df6b76e8a8b646160d3740d850af..02215a531a8f01baafb9b4f85925e751f7cc3f28 100644 --- a/build/browser.gn_args +++ b/build/browser.gn_args @@ -49,7 +49,6 @@ use_errorprone_java_compiler=false use_official_google_api_keys=false use_rtti=false use_stable_package_name_for_trichrome=false -use_sysroot=false use_thin_lto=false use_v8_context_snapshot=false diff --git a/build/cromite_patches/Add-AllowUserCertificates-flag.patch b/build/cromite_patches/Add-AllowUserCertificates-flag.patch index b77fcca6dabd8dcd391a58c6fe285c64ace292ef..df21203fe180decbab6be47ac16308fd5a5fbee6 100644 --- a/build/cromite_patches/Add-AllowUserCertificates-flag.patch +++ b/build/cromite_patches/Add-AllowUserCertificates-flag.patch @@ -20,7 +20,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java -@@ -236,6 +236,7 @@ import org.chromium.content_public.browser.LoadUrlParams; +@@ -239,6 +239,7 @@ import org.chromium.content_public.browser.LoadUrlParams; import org.chromium.content_public.browser.SelectionPopupController; import org.chromium.content_public.browser.WebContents; import org.chromium.content_public.common.ContentSwitches; @@ -28,7 +28,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv import org.chromium.printing.PrintManagerDelegateImpl; import org.chromium.printing.PrintingController; import org.chromium.printing.PrintingControllerImpl; -@@ -985,6 +986,8 @@ public abstract class ChromeActivity extends AsyncInitializationActivity +@@ -999,6 +1000,8 @@ public abstract class ChromeActivity extends AsyncInitializationActivity super.onStartWithNative(); ChromeActivitySessionTracker.getInstance().onStartWithNative(getProfileProviderSupplier()); @@ -40,7 +40,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc --- a/chrome/browser/flags/android/chrome_feature_list.cc +++ b/chrome/browser/flags/android/chrome_feature_list.cc -@@ -184,6 +184,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { +@@ -181,6 +181,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { &feed::kFeedPerformanceStudy, &feed::kFeedShowSignInCommand, &feed::kFeedSignedOutViewDemotion, @@ -59,7 +59,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f public static final String ADAPTIVE_BUTTON_IN_TOP_TOOLBAR_PAGE_SUMMARY = "AdaptiveButtonInTopToolbarPageSummary"; public static final String ALLOW_TAB_CLOSING_UPON_MINIMIZATION = -@@ -768,6 +769,8 @@ public abstract class ChromeFeatureList { +@@ -796,6 +797,8 @@ public abstract class ChromeFeatureList { public static final CachedFlag sAndroidWindowPopupResizeAfterSpawn = newCachedFlag(ANDROID_WINDOW_POPUP_RESIZE_AFTER_SPAWN, false); public static final CachedFlag sAppSpecificHistory = newCachedFlag(APP_SPECIFIC_HISTORY, true); @@ -68,9 +68,9 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f public static final CachedFlag sAppSpecificHistoryViewIntent = newCachedFlag(APP_SPECIFIC_HISTORY_VIEW_INTENT, true); public static final CachedFlag sAsyncNotificationManager = -@@ -1080,6 +1083,7 @@ public abstract class ChromeFeatureList { - sAccountForSuppressedKeyboardInsets, - sAllowTabClosingUponMinimization, +@@ -1131,6 +1134,7 @@ public abstract class ChromeFeatureList { + sAndroidAnimatedProgressBarInBrowser, + sAndroidAnimatedProgressBarInViz, sAndroidAppIntegration, + sAllowUserCertificates, sAndroidAppIntegrationModule, diff --git a/build/cromite_patches/Add-Alt-D-hotkey-to-focus-address-bar.patch b/build/cromite_patches/Add-Alt-D-hotkey-to-focus-address-bar.patch index b9df368a10016d95efcd86f6386312adddba0811..fceaf6d363cc8827d37c5d6248436c6f2e9e239c 100644 --- a/build/cromite_patches/Add-Alt-D-hotkey-to-focus-address-bar.patch +++ b/build/cromite_patches/Add-Alt-D-hotkey-to-focus-address-bar.patch @@ -4,21 +4,22 @@ Subject: Add Alt+D hotkey to focus address bar License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html --- - .../src/org/chromium/chrome/browser/KeyboardShortcuts.java | 5 +++++ - 1 file changed, 5 insertions(+) + .../src/org/chromium/chrome/browser/KeyboardShortcuts.java | 6 ++++++ + 1 file changed, 6 insertions(+) diff --git a/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java b/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java --- a/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java -@@ -890,6 +890,11 @@ public class KeyboardShortcuts { - KeyEvent.KEYCODE_B, - (KeyEvent.META_CTRL_ON | KeyEvent.META_SHIFT_ON)); +@@ -895,6 +895,12 @@ public class KeyboardShortcuts { + KeyEvent.KEYCODE_ESCAPE, + KeyEvent.META_CTRL_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); ++ shortcutGroupsById, ++ 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()); } diff --git a/build/cromite_patches/Add-a-proxy-configuration-page.patch b/build/cromite_patches/Add-a-proxy-configuration-page.patch index 0c6a07a36caaa5db13c440d2b50c0a3676f381ce..ee5e9648cdacc80e2e09b978a369db91bd5efa2c 100644 --- a/build/cromite_patches/Add-a-proxy-configuration-page.patch +++ b/build/cromite_patches/Add-a-proxy-configuration-page.patch @@ -78,7 +78,7 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java -@@ -100,6 +100,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment +@@ -101,6 +101,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment private static final String PREF_PASSWORD_LEAK_DETECTION = "password_leak_detection"; private static final String PREF_SYNC_AND_SERVICES_LINK = "sync_and_services_link"; private static final String PREF_PRIVACY_SANDBOX = "privacy_sandbox"; @@ -89,7 +89,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc --- a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc +++ b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc -@@ -376,6 +376,7 @@ ChromeAutocompleteProviderClient::GetBuiltinsToProvideAsUserTypes() { +@@ -409,6 +409,7 @@ ChromeAutocompleteProviderClient::GetBuiltinsToProvideAsUserTypes() { builtins_to_provide.push_back(chrome::kChromeUISettingsURL16); #endif builtins_to_provide.push_back(chrome::kChromeUIVersionURL16); @@ -206,7 +206,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse #if BUILDFLAG(ENABLE_BACKGROUND_MODE) #include "chrome/browser/background/extensions/background_mode_manager.h" #endif -@@ -1605,6 +1607,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) { +@@ -1685,6 +1687,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) { component_updater::RegisterPrefs(registry); domain_reliability::RegisterPrefs(registry); embedder_support::OriginTrialPrefs::RegisterPrefs(registry); @@ -661,7 +661,7 @@ new file mode 100644 diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn --- a/chrome/browser/ui/BUILD.gn +++ b/chrome/browser/ui/BUILD.gn -@@ -169,6 +169,8 @@ static_library("ui") { +@@ -156,6 +156,8 @@ static_library("ui") { "webui/metrics_internals/metrics_internals_ui.h", "webui/net_export_ui.cc", "webui/net_export_ui.h", @@ -683,7 +683,7 @@ diff --git a/chrome/browser/ui/webui/chrome_web_ui_configs.cc b/chrome/browser/u #if BUILDFLAG(ENABLE_WEBUI_CERTIFICATE_VIEWER) #include "chrome/browser/ui/webui/certificate_viewer/certificate_viewer_ui.h" #endif -@@ -422,7 +425,7 @@ void RegisterChromeWebUIConfigs() { +@@ -424,7 +427,7 @@ void RegisterChromeWebUIConfigs() { map.AddWebUIConfig(std::make_unique()); map.AddWebUIConfig(std::make_unique()); #endif @@ -1135,7 +1135,7 @@ new file mode 100644 diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_constants.cc --- a/chrome/common/webui_url_constants.cc +++ b/chrome/common/webui_url_constants.cc -@@ -50,6 +50,7 @@ bool IsSystemWebUIHost(std::string_view host) { +@@ -53,6 +53,7 @@ bool IsSystemWebUIHost(std::string_view host) { kChromeUILockScreenNetworkHost, kChromeUILockScreenStartReauthHost, kChromeUIMobileSetupHost, @@ -1143,7 +1143,7 @@ diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_cons kChromeUIMultiDeviceSetupHost, kChromeUINetworkHost, kChromeUINotificationTesterHost, -@@ -71,6 +72,7 @@ bool IsSystemWebUIHost(std::string_view host) { +@@ -74,6 +75,7 @@ bool IsSystemWebUIHost(std::string_view host) { // These hosts will also be suggested by BuiltinProvider. base::span ChromeURLHosts() { static constexpr auto kChromeURLHosts = std::to_array({ diff --git a/build/cromite_patches/Add-an-always-incognito-mode.patch b/build/cromite_patches/Add-an-always-incognito-mode.patch index e769bce336a931d76170a891ecf1ec3ecdb14986..ea86a9a7beeeada895a956d0d8fc18a464d5bf73 100644 --- a/build/cromite_patches/Add-an-always-incognito-mode.patch +++ b/build/cromite_patches/Add-an-always-incognito-mode.patch @@ -28,11 +28,11 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../chrome/browser/app/ChromeActivity.java | 4 + .../AppMenuPropertiesDelegateImpl.java | 7 +- .../ChromeContextMenuPopulator.java | 6 +- - .../CustomTabActivityLifecycleUmaTracker.java | 39 ---- + .../CustomTabActivityLifecycleUmaTracker.java | 31 ---- .../CustomTabAppMenuPropertiesDelegate.java | 4 + .../CustomTabIntentDataProvider.java | 10 + .../browser/download/DownloadUtils.java | 13 +- - .../history/HistoryContentManager.java | 7 +- + .../history/HistoryContentManager.java | 9 +- .../browser/history/HistoryManager.java | 27 ++- .../chrome/browser/history/HistoryPage.java | 16 ++ .../native_page/NativePageFactory.java | 4 +- @@ -42,7 +42,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../HistoricalTabModelObserver.java | 5 +- .../tab/tab_restore/HistoricalTabSaver.java | 2 +- .../tab_restore/HistoricalTabSaverImpl.java | 17 +- - .../TabbedAppMenuPropertiesDelegate.java | 6 +- + .../TabbedAppMenuPropertiesDelegate.java | 4 +- .../tabbed_mode/TabbedRootUiCoordinator.java | 4 +- .../browser/tabmodel/ChromeTabCreator.java | 5 +- .../tabmodel/TabModelSelectorImpl.java | 3 + @@ -71,7 +71,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../browser/ui/native_page/NativePage.java | 22 ++- .../browser/omnibox/LocationBarMediator.java | 8 + .../strings/android_chrome_strings.grd | 25 +++ - .../browser/toolbar/LocationBarModel.java | 5 +- + .../browser/toolbar/LocationBarModel.java | 4 +- chrome/browser/ui/messages/android/BUILD.gn | 1 + .../snackbar/INeedSnackbarManager.java | 28 +++ .../search_engine_tab_helper.cc | 6 + @@ -88,7 +88,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../add-an-always-incognito-mode.inc | 1 + .../add-an-always-incognito-mode.inc | 3 + .../add-an-always-incognito-mode.inc | 1 + - 69 files changed, 797 insertions(+), 111 deletions(-) + 69 files changed, 794 insertions(+), 105 deletions(-) create mode 100644 chrome/android/java/res/xml/incognito_preferences.xml create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/AlwaysIncognitoLinkInterceptor.java create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/IncognitoSettings.java @@ -101,8 +101,8 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_java_resources.gni --- a/chrome/android/chrome_java_resources.gni +++ b/chrome/android/chrome_java_resources.gni -@@ -620,6 +620,7 @@ chrome_java_resources = [ - "java/res/xml/main_preferences_legacy.xml", +@@ -624,6 +624,7 @@ chrome_java_resources = [ + "java/res/xml/main_preferences.xml", "java/res/xml/manage_sync_preferences.xml", "java/res/xml/personalize_google_services_preferences.xml", + "java/res/xml/incognito_preferences.xml", @@ -120,8 +120,8 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java "java/src/com/google/android/apps/chrome/appwidget/bookmarks/BookmarkThumbnailWidgetProvider.java", "java/src/org/chromium/chrome/browser/ActivityTabProvider.java", "java/src/org/chromium/chrome/browser/ActivityUtils.java", -@@ -908,6 +909,7 @@ chrome_java_sources = [ - "java/src/org/chromium/chrome/browser/privacy/settings/IncognitoLockSettings.java", +@@ -916,6 +917,7 @@ chrome_java_sources = [ + "java/src/org/chromium/chrome/browser/privacy/settings/PasswordEchoSettingHandlerFactory.java", "java/src/org/chromium/chrome/browser/privacy/settings/PrivacyPreferencesManagerImpl.java", "java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java", + "java/src/org/chromium/chrome/browser/privacy/settings/IncognitoSettings.java", @@ -247,7 +247,7 @@ new file mode 100644 diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java -@@ -74,6 +74,10 @@ import org.chromium.build.annotations.Nullable; +@@ -73,6 +73,10 @@ import org.chromium.build.annotations.Nullable; import org.chromium.build.annotations.UsedByReflection; import org.chromium.cc.input.BrowserControlsState; import org.chromium.chrome.R; @@ -258,7 +258,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct import org.chromium.chrome.browser.IntentHandler.ExternalAppId; import org.chromium.chrome.browser.IntentHandler.TabOpenType; import org.chromium.chrome.browser.app.ChromeActivity; -@@ -794,14 +798,19 @@ public class ChromeTabbedActivity extends ChromeActivity { +@@ -803,14 +807,19 @@ public class ChromeTabbedActivity extends ChromeActivity { Profile profile = mTabModelSelector.getCurrentModel().getProfile(); // For saving non-incognito tab closures for Recent Tabs. @@ -285,9 +285,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct // Defer creation of this helper so it triggers after TabGroupModelFilter observers. mUndoRefocusHelper = new UndoRefocusHelper( -@@ -3137,7 +3146,7 @@ public class ChromeTabbedActivity extends ChromeActivity { - } +@@ -3228,7 +3237,7 @@ public class ChromeTabbedActivity extends ChromeActivity { + // We determine SupportedProfileType in onPreCreate(). // We determine the model as soon as possible so every systems get initialized coherently. - boolean startIncognito = + boolean startIncognito = AlwaysIncognitoLinkInterceptor.isAlwaysIncognito() || @@ -297,7 +297,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java -@@ -95,6 +95,7 @@ import org.chromium.chrome.browser.compositor.layouts.content.TabContentManagerH +@@ -98,6 +98,7 @@ import org.chromium.chrome.browser.compositor.layouts.content.TabContentManagerH import org.chromium.chrome.browser.contextualsearch.ContextualSearchManager; import org.chromium.chrome.browser.device.DeviceClassManager; import org.chromium.chrome.browser.devtools.DevToolsWindowAndroid; @@ -305,7 +305,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv import org.chromium.chrome.browser.dom_distiller.DomDistillerUiUtils; import org.chromium.chrome.browser.dom_distiller.ReaderModeManager; import org.chromium.chrome.browser.download.DownloadManagerService; -@@ -2000,6 +2001,9 @@ public abstract class ChromeActivity extends AsyncInitializationActivity +@@ -2028,6 +2029,9 @@ public abstract class ChromeActivity extends AsyncInitializationActivity throw new IllegalStateException( "Attempting to access TabCreator before initialization"); } @@ -318,16 +318,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java --- 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 -@@ -88,6 +88,8 @@ import java.lang.annotation.RetentionPolicy; - import java.util.Iterator; +@@ -91,6 +91,8 @@ import java.util.Iterator; import java.util.List; + import java.util.function.Supplier; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; + /** * Base implementation of {@link AppMenuPropertiesDelegate} that handles hiding and showing menu * items based on activity state. -@@ -606,8 +608,9 @@ public abstract class AppMenuPropertiesDelegateImpl implements AppMenuProperties +@@ -620,8 +622,9 @@ public abstract class AppMenuPropertiesDelegateImpl implements AppMenuProperties && !isNativePage && !isFileScheme && !isContentScheme @@ -342,7 +342,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java --- a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java -@@ -41,6 +41,7 @@ import org.chromium.base.supplier.Supplier; +@@ -39,6 +39,7 @@ import org.chromium.base.shared_preferences.SharedPreferencesManager; import org.chromium.build.annotations.NullMarked; import org.chromium.build.annotations.Nullable; import org.chromium.chrome.R; @@ -350,7 +350,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr import org.chromium.chrome.browser.bookmarks.BookmarkUtils; import org.chromium.chrome.browser.contextmenu.ChromeContextMenuItem.Item; import org.chromium.chrome.browser.contextmenu.ContextMenuCoordinator.ContextMenuItemType; -@@ -420,6 +421,9 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator { +@@ -425,6 +426,9 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator { mShowEphemeralTabNewLabel = null; mCustomActionMap.clear(); @@ -372,21 +372,13 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityLifecycleUmaTracker.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityLifecycleUmaTracker.java --- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityLifecycleUmaTracker.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityLifecycleUmaTracker.java -@@ -63,45 +63,6 @@ public class CustomTabActivityLifecycleUmaTracker +@@ -62,37 +62,6 @@ public class CustomTabActivityLifecycleUmaTracker private boolean mIsInitialResume = true; private void recordIncognitoLaunchReason() { - // TODO(crbug.com/352525607): Separate Ephemeral and Incognito CCT metrics. -- @IntentHandler.IncognitoCctCallerId int incognitoCctCallerId; -- if (mIntentDataProvider.getCustomTabMode() == CustomTabProfileType.INCOGNITO) { -- incognitoCctCallerId = -- ((IncognitoCustomTabIntentDataProvider) mIntentDataProvider) -- .getFeatureIdForMetricsCollection(); -- } else { -- incognitoCctCallerId = -- ((EphemeralCustomTabIntentDataProvider) mIntentDataProvider) -- .getFeatureIdForMetricsCollection(); -- } +- /*@IncognitoCctCallerId*/ int incognitoCctCallerId = +- mIntentDataProvider.getFeatureIdForMetricsCollection(); - - RecordHistogram.recordEnumeratedHistogram( - "CustomTabs.IncognitoCctCallerId", @@ -421,7 +413,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java --- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java -@@ -21,6 +21,7 @@ import org.chromium.base.supplier.Supplier; +@@ -20,6 +20,7 @@ import org.chromium.base.supplier.ObservableSupplier; import org.chromium.build.annotations.Nullable; import org.chromium.chrome.R; import org.chromium.chrome.browser.ActivityTabProvider; @@ -442,7 +434,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java --- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java -@@ -101,6 +101,9 @@ import org.chromium.components.embedder_support.util.UrlConstants; +@@ -104,6 +104,9 @@ import org.chromium.components.embedder_support.util.UrlConstants; import org.chromium.device.mojom.ScreenOrientationLockType; import org.chromium.net.NetId; @@ -452,7 +444,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.ArrayList; -@@ -1260,6 +1263,13 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid +@@ -1263,6 +1266,13 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid return getInitialActivityWidth() > 0; } @@ -488,8 +480,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/Downlo /** A class containing some utility static methods. */ @NullMarked public class DownloadUtils { -@@ -313,7 +318,13 @@ public class DownloadUtils { - public static boolean isAllowedToDownloadPage(Tab tab) { +@@ -314,7 +319,13 @@ public class DownloadUtils { + public static boolean isAllowedToDownloadPage(@Nullable Tab tab) { if (tab == null) return false; - if (tab.isIncognito() @@ -506,22 +498,24 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/Downlo diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryContentManager.java b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryContentManager.java --- a/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryContentManager.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryContentManager.java -@@ -307,7 +307,9 @@ public class HistoryContentManager implements SignInStateObserver, PrefObserver +@@ -308,8 +308,9 @@ public class HistoryContentManager implements SignInStateObserver, PrefObserver mHistoryAdapter.generateFooterItems(); // Listen to changes in sign in state. -- IdentityServicesProvider.get().getSigninManager(profile).addSignInStateObserver(this); +- assumeNonNull(IdentityServicesProvider.get().getSigninManager(profile)) +- .addSignInStateObserver(this); + // getSigninManager is null in incognito + if (IdentityServicesProvider.get().getSigninManager(profile) != null) + IdentityServicesProvider.get().getSigninManager(profile).addSignInStateObserver(this); // Create PrefChangeRegistrar to receive notifications on preference changes. mPrefChangeRegistrar = PrefServiceUtil.createFor(profile); -@@ -383,7 +385,8 @@ public class HistoryContentManager implements SignInStateObserver, PrefObserver +@@ -386,8 +387,8 @@ public class HistoryContentManager implements SignInStateObserver, PrefObserver mHistoryAdapter.onDestroyed(); mLargeIconBridge.destroy(); mLargeIconBridge = null; -- IdentityServicesProvider.get().getSigninManager(mProfile).removeSignInStateObserver(this); +- assumeNonNull(IdentityServicesProvider.get().getSigninManager(mProfile)) +- .removeSignInStateObserver(this); + if (IdentityServicesProvider.get().getSigninManager(mProfile) != null) + IdentityServicesProvider.get().getSigninManager(mProfile).removeSignInStateObserver(this); mPrefChangeRegistrar.destroy(); @@ -530,9 +524,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryManager.java b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryManager.java --- a/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryManager.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryManager.java -@@ -57,6 +57,14 @@ import org.chromium.ui.base.Clipboard; - import java.util.List; +@@ -61,6 +61,14 @@ import java.util.List; import java.util.function.Function; + import java.util.function.Supplier; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; +import org.chromium.chrome.browser.profiles.Profile; @@ -543,9 +537,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History +import org.chromium.chrome.browser.preferences.Pref; + /** Combines and manages the different UI components of browsing history. */ + @NullMarked public class HistoryManager - implements OnMenuItemClickListener, -@@ -162,7 +170,7 @@ public class HistoryManager +@@ -166,7 +174,7 @@ public class HistoryManager mUmaRecorder.recordOpenHistory(); // If incognito placeholder is shown, we don't need to create History UI elements. @@ -554,7 +548,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History mSelectableListLayout = null; mRootView = getIncognitoHistoryPlaceholderView(); return; -@@ -415,9 +423,22 @@ public class HistoryManager +@@ -451,9 +459,22 @@ public class HistoryManager onBackPressStateChanged(); } @@ -578,7 +572,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History // If Incognito placeholder is shown no need to call any destroy method. return; } -@@ -477,7 +498,7 @@ public class HistoryManager +@@ -514,7 +535,7 @@ public class HistoryManager * @return True if manager handles this event, false if it decides to ignore. */ private boolean onBackPressed() { @@ -590,9 +584,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryPage.java b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryPage.java --- a/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryPage.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryPage.java -@@ -17,6 +17,14 @@ import org.chromium.chrome.browser.ui.native_page.NativePageHost; - import org.chromium.components.browser_ui.bottomsheet.BottomSheetController; - import org.chromium.components.embedder_support.util.UrlConstants; +@@ -20,6 +20,14 @@ import org.chromium.components.embedder_support.util.UrlConstants; + + import java.util.function.Supplier; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; +import org.chromium.chrome.browser.profiles.Profile; @@ -603,9 +597,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History +import org.chromium.chrome.browser.preferences.Pref; + /** Native page for managing browsing history. */ + @NullMarked public class HistoryPage extends BasicNativePage { - private HistoryManager mHistoryManager; -@@ -45,6 +53,14 @@ public class HistoryPage extends BasicNativePage { +@@ -49,6 +57,14 @@ public class HistoryPage extends BasicNativePage { String url) { super(host); @@ -618,21 +612,21 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History + } + Uri uri = Uri.parse(url); - assert uri.getHost().equals(UrlConstants.HISTORY_HOST); + assert UrlConstants.HISTORY_HOST.equals(uri.getHost()); diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java b/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java --- a/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java -@@ -19,6 +19,7 @@ import org.chromium.base.supplier.ObservableSupplier; - import org.chromium.base.supplier.OneshotSupplier; - import org.chromium.base.supplier.Supplier; +@@ -20,6 +20,7 @@ import org.chromium.base.supplier.OneshotSupplier; + import org.chromium.build.annotations.NullMarked; + import org.chromium.build.annotations.Nullable; import org.chromium.chrome.R; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; import org.chromium.chrome.browser.app.ChromeActivity; import org.chromium.chrome.browser.app.download.home.DownloadPage; import org.chromium.chrome.browser.bookmarks.BookmarkPage; -@@ -371,7 +372,8 @@ public class NativePageFactory { - String url, NativePage candidatePage, Tab tab, boolean isIncognito, PdfInfo pdfInfo) { +@@ -379,7 +380,8 @@ public class NativePageFactory { + @Nullable PdfInfo pdfInfo) { NativePage page; - switch (NativePage.nativePageType(url, candidatePage, isIncognito, pdfInfo != null)) { @@ -808,7 +802,7 @@ new file mode 100644 + ApplicationLifetime.terminate(true); + } + }, Snackbar.TYPE_NOTIFICATION, Snackbar.UMA_UNKNOWN) -+ .setSingleLine(false) ++ .setDefaultLines(false) + .setAction(getActivity().getString(R.string.relaunch), + /*actionData*/null) + .setDuration(/*durationMs*/70000); @@ -876,7 +870,7 @@ new file mode 100644 diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java --- a/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java -@@ -49,6 +49,7 @@ import org.chromium.chrome.browser.sync.settings.AccountManagementFragment; +@@ -50,6 +50,7 @@ import org.chromium.chrome.browser.sync.settings.AccountManagementFragment; import org.chromium.chrome.browser.sync.settings.GoogleServicesSettings; import org.chromium.chrome.browser.sync.settings.ManageSyncSettings; import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager; @@ -897,9 +891,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Fragme diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabModelObserver.java b/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabModelObserver.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabModelObserver.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabModelObserver.java -@@ -32,6 +32,8 @@ import java.util.HashMap; - import java.util.List; +@@ -32,6 +32,8 @@ import java.util.List; import java.util.Set; + import java.util.function.Supplier; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; + @@ -933,9 +927,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabSaverImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabSaverImpl.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabSaverImpl.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore/HistoricalTabSaverImpl.java -@@ -30,6 +30,8 @@ import java.util.Arrays; - import java.util.Collections; +@@ -30,6 +30,8 @@ import java.util.Collections; import java.util.List; + import java.util.function.Supplier; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; + @@ -991,7 +985,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore // Check the secondary tab model to see if the tab was moved instead of deleted. if (tabIdExistsInSecondaryModel(tab.getId())) return false; -@@ -293,7 +296,7 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver { +@@ -294,7 +297,7 @@ public class HistoricalTabSaverImpl implements HistoricalTabSaver { @NativeMethods interface Natives { @@ -1003,30 +997,28 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java --- 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 -@@ -27,6 +27,7 @@ import org.chromium.base.supplier.Supplier; - import org.chromium.build.annotations.Contract; +@@ -27,6 +27,7 @@ import org.chromium.build.annotations.Contract; + import org.chromium.build.annotations.NullMarked; 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; -@@ -220,7 +221,10 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm - } +@@ -221,7 +222,8 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm - // New Tab -- modelList.add(buildNewTabItem()); + // When the feature is enabled, show either "New Incognito tab" in incognito mode + // or "New tab" in normal mode. When the feature is disabled, show both. +- if (!IncognitoUtils.shouldOpenIncognitoAsWindow() || !isIncognitoShowing()) { + boolean always_incognito = AlwaysIncognitoLinkInterceptor.isAlwaysIncognito(); -+ if (!always_incognito) { -+ modelList.add(buildNewTabItem()); -+ } - - // New Incognito Tab - modelList.add(buildNewIncognitoTabItem()); ++ if (!always_incognito || !IncognitoUtils.shouldOpenIncognitoAsWindow() || !isIncognitoShowing()) { + modelList.add(buildNewTabItem()); + } + if (!IncognitoUtils.shouldOpenIncognitoAsWindow() || isIncognitoShowing()) { 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 -@@ -212,6 +212,8 @@ import org.chromium.content_public.common.ContentSwitches; +@@ -210,6 +210,8 @@ import org.chromium.content_public.common.ContentSwitches; import org.chromium.ui.UiUtils; import org.chromium.ui.base.ActivityWindowAndroid; import org.chromium.ui.base.DeviceFormFactor; @@ -1035,7 +1027,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab import org.chromium.ui.base.IntentRequestTracker; import org.chromium.ui.base.LocalizationUtils; import org.chromium.ui.display.DisplayUtil; -@@ -1247,7 +1249,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { +@@ -1270,7 +1272,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { () -> { mTabCreatorManagerSupplier .get() @@ -1047,9 +1039,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java -@@ -53,6 +53,10 @@ import org.chromium.ui.base.PageTransition; - import org.chromium.ui.base.WindowAndroid; - import org.chromium.url.GURL; +@@ -55,6 +55,10 @@ import org.chromium.url.GURL; + import java.util.Collections; + import java.util.function.Supplier; +import org.chromium.base.ContextUtils; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; @@ -1058,7 +1050,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome /** This class creates various kinds of new tabs and adds them to the right {@link TabModel}. */ @NullMarked public class ChromeTabCreator extends TabCreator -@@ -580,7 +584,6 @@ public class ChromeTabCreator extends TabCreator +@@ -584,7 +588,6 @@ public class ChromeTabCreator extends TabCreator // TODO(crbug.com/40691614): Clean up the launches from SearchActivity/Chrome. public @Nullable Tab launchUrlFromExternalApp( LoadUrlParams loadUrlParams, String appId, boolean forceNewTab, Intent intent) { @@ -1069,15 +1061,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java -@@ -17,6 +17,7 @@ import org.chromium.build.annotations.EnsuresNonNull; - import org.chromium.build.annotations.Initializer; +@@ -20,6 +20,7 @@ import org.chromium.build.annotations.Initializer; import org.chromium.build.annotations.NullMarked; import org.chromium.build.annotations.Nullable; + import org.chromium.chrome.browser.app.tabwindow.TabWindowManagerSingleton; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; import org.chromium.chrome.browser.flags.ActivityType; import org.chromium.chrome.browser.flags.ChromeFeatureList; - import org.chromium.chrome.browser.ntp.RecentlyClosedBridge; -@@ -127,6 +128,8 @@ public class TabModelSelectorImpl extends TabModelSelectorBase implements TabMod + import org.chromium.chrome.browser.multiwindow.MultiInstanceManager; +@@ -139,6 +140,8 @@ public class TabModelSelectorImpl extends TabModelSelectorBase implements TabMod ProfileProvider profileProvider = mProfileProviderSupplier.get(); assert profileProvider != null; @@ -1115,7 +1107,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPer diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java --- a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java -@@ -50,6 +50,7 @@ import org.chromium.base.supplier.Supplier; +@@ -49,6 +49,7 @@ import org.chromium.base.supplier.OneshotSupplierImpl; import org.chromium.cc.input.BrowserControlsState; import org.chromium.chrome.R; import org.chromium.chrome.browser.ActivityTabProvider; @@ -1123,12 +1115,12 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/Toolbar import org.chromium.chrome.browser.IntentHandler; import org.chromium.chrome.browser.app.tabwindow.TabWindowManagerSingleton; import org.chromium.chrome.browser.back_press.BackPressManager; -@@ -859,7 +860,7 @@ public class ToolbarManager - TraceEvent.end("isOfflinePage"); +@@ -866,7 +867,7 @@ public class ToolbarManager return ret; } -- }); -+ }, AlwaysIncognitoLinkInterceptor.isAlwaysIncognito()); + }, +- mToolbarPositionSupplier); ++ mToolbarPositionSupplier, AlwaysIncognitoLinkInterceptor.isAlwaysIncognito()); mControlContainer = controlContainer; mToolbarHairline = mControlContainer.findViewById(R.id.toolbar_hairline); @@ -1142,9 +1134,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappI +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; + /** Stores info about a web app. */ + @NullMarked public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider { - private final Drawable mCloseButtonIcon; -@@ -46,6 +48,8 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider +@@ -47,6 +49,8 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider private final ColorProviderImpl mDarkColorProvider; private @DisplayMode.EnumType int mResolvedDisplayMode = DisplayMode.UNDEFINED; @@ -1153,7 +1145,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappI /** Returns the toolbar color to use if a custom color is not specified by the webapp. */ public static int getDefaultToolbarColor() { return Color.WHITE; -@@ -81,6 +85,10 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider +@@ -82,6 +86,10 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider mWebappExtras = webappExtras; mWebApkExtras = webApkExtras; mActivityType = (webApkExtras != null) ? ActivityType.WEB_APK : ActivityType.WEBAPP; @@ -1164,7 +1156,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappI } @Override -@@ -176,6 +184,13 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider +@@ -177,6 +185,13 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider return mWebApkExtras; } @@ -1229,7 +1221,7 @@ diff --git a/chrome/browser/android/historical_tab_saver.cc b/chrome/browser/and DCHECK_EQ(tab_group_ids.size(), group_titles.size()); DCHECK_EQ(tab_group_ids.size(), group_colors.size()); DCHECK_EQ(tab_group_ids.size(), tab_group_ids.size()); -@@ -291,11 +302,12 @@ static void JNI_HistoricalTabSaverImpl_CreateHistoricalTab( +@@ -292,11 +303,12 @@ static void JNI_HistoricalTabSaverImpl_CreateHistoricalTab( JNIEnv* env, const JavaParamRef& jtab_android, const JavaParamRef& state, @@ -1247,7 +1239,7 @@ diff --git a/chrome/browser/android/historical_tab_saver.cc b/chrome/browser/and diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc --- a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc +++ b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc -@@ -427,6 +427,15 @@ ChromeAutocompleteProviderClient::GetAimEligibilityService() const { +@@ -460,6 +460,15 @@ ChromeAutocompleteProviderClient::GetAimEligibilityService() const { return AimEligibilityServiceFactory::GetForProfile(profile_); } @@ -1374,7 +1366,7 @@ diff --git a/chrome/browser/content_settings/host_content_settings_map_factory.c diff --git a/chrome/browser/history/history_tab_helper.cc b/chrome/browser/history/history_tab_helper.cc --- a/chrome/browser/history/history_tab_helper.cc +++ b/chrome/browser/history/history_tab_helper.cc -@@ -45,6 +45,9 @@ +@@ -48,6 +48,9 @@ #include "components/feed/core/v2/public/feed_api.h" // nogncheck #include "components/feed/core/v2/public/feed_service.h" // nogncheck #include "content/public/browser/web_contents.h" @@ -1384,7 +1376,7 @@ diff --git a/chrome/browser/history/history_tab_helper.cc b/chrome/browser/histo #else #include "chrome/browser/ui/browser.h" #include "chrome/browser/ui/browser_finder.h" -@@ -598,6 +601,13 @@ void HistoryTabHelper::TitleWasSet(NavigationEntry* entry) { +@@ -612,6 +615,13 @@ void HistoryTabHelper::TitleWasSet(NavigationEntry* entry) { history::HistoryService* HistoryTabHelper::GetHistoryService() { Profile* profile = Profile::FromBrowserContext(web_contents()->GetBrowserContext()); @@ -1398,7 +1390,7 @@ diff --git a/chrome/browser/history/history_tab_helper.cc b/chrome/browser/histo if (profile->IsOffTheRecord()) return nullptr; -@@ -605,6 +615,16 @@ history::HistoryService* HistoryTabHelper::GetHistoryService() { +@@ -619,6 +629,16 @@ history::HistoryService* HistoryTabHelper::GetHistoryService() { profile, ServiceAccessType::IMPLICIT_ACCESS); } @@ -1482,7 +1474,7 @@ diff --git a/chrome/browser/offline_pages/android/offline_page_bridge.cc b/chrom diff --git a/chrome/browser/offline_pages/android/offline_page_model_factory.cc b/chrome/browser/offline_pages/android/offline_page_model_factory.cc --- a/chrome/browser/offline_pages/android/offline_page_model_factory.cc +++ b/chrome/browser/offline_pages/android/offline_page_model_factory.cc -@@ -24,6 +24,9 @@ +@@ -23,6 +23,9 @@ #include "components/keyed_service/core/simple_dependency_manager.h" #include "components/offline_pages/core/model/offline_page_model_taskified.h" #include "components/offline_pages/core/offline_page_metadata_store.h" @@ -1492,7 +1484,7 @@ diff --git a/chrome/browser/offline_pages/android/offline_page_model_factory.cc namespace offline_pages { -@@ -55,13 +58,15 @@ std::unique_ptr OfflinePageModelFactory::BuildServiceInstanceFor( +@@ -54,13 +57,15 @@ std::unique_ptr OfflinePageModelFactory::BuildServiceInstanceFor( scoped_refptr background_task_runner = base::ThreadPool::CreateSequencedTaskRunner({base::MayBlock()}); @@ -1510,7 +1502,7 @@ diff --git a/chrome/browser/offline_pages/android/offline_page_model_factory.cc // If base::PathService::Get returns false, the temporary_archives_dir will be // empty, and no temporary pages will be saved during this chrome lifecycle. base::FilePath temporary_archives_dir; -@@ -70,7 +75,6 @@ std::unique_ptr OfflinePageModelFactory::BuildServiceInstanceFor( +@@ -69,7 +74,6 @@ std::unique_ptr OfflinePageModelFactory::BuildServiceInstanceFor( temporary_archives_dir.Append(chrome::kOfflinePageArchivesDirname); } @@ -1518,7 +1510,7 @@ diff --git a/chrome/browser/offline_pages/android/offline_page_model_factory.cc auto archive_manager = std::make_unique( temporary_archives_dir, persistent_archives_dir, DownloadPrefs::GetDefaultDownloadDirectory(), background_task_runner, -@@ -88,4 +92,14 @@ std::unique_ptr OfflinePageModelFactory::BuildServiceInstanceFor( +@@ -87,4 +91,14 @@ std::unique_ptr OfflinePageModelFactory::BuildServiceInstanceFor( return model; } @@ -1755,7 +1747,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse #include "chrome/browser/android/ntp/recent_tabs_page_prefs.h" #include "chrome/browser/android/oom_intervention/oom_intervention_decider.h" #include "chrome/browser/android/preferences/browser_prefs_android.h" -@@ -2061,6 +2062,10 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry, +@@ -2138,6 +2139,10 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry, usage_stats::UsageStatsBridge::RegisterProfilePrefs(registry); variations::VariationsService::RegisterProfilePrefs(registry); webapps::InstallPromptPrefs::RegisterProfilePrefs(registry); @@ -1860,12 +1852,12 @@ diff --git a/chrome/browser/ui/android/native_page/java/src/org/chromium/chrome/ } /** -@@ -209,11 +212,12 @@ public interface NativePage { - */ - // TODO(crbug.com/40549331) - Convert to using GURL. - static @NativePageType int nativePageType( -- String url, NativePage candidatePage, boolean isIncognito, boolean hasPdfDownload) { -+ String url, NativePage candidatePage, boolean isIncognito, boolean hasPdfDownload, +@@ -212,11 +215,12 @@ public interface NativePage { + String url, + @Nullable NativePage candidatePage, + boolean isIncognito, +- boolean hasPdfDownload) { ++ boolean hasPdfDownload, + boolean isAlwaysIncognito) { if (url == null) return NativePageType.NONE; @@ -1875,7 +1867,7 @@ diff --git a/chrome/browser/ui/android/native_page/java/src/org/chromium/chrome/ } /** -@@ -227,7 +231,8 @@ public interface NativePage { +@@ -230,7 +234,8 @@ public interface NativePage { GURL url, @Nullable NativePage candidatePage, boolean isIncognito, @@ -1885,7 +1877,7 @@ diff --git a/chrome/browser/ui/android/native_page/java/src/org/chromium/chrome/ if (hasPdfDownload) { // For navigation with associated pdf download (e.g. open a pdf link), pdf page should // be created. -@@ -245,7 +250,7 @@ public interface NativePage { +@@ -248,7 +253,7 @@ public interface NativePage { // created after the pdf document is re-downloaded in other parts of the code. return NativePageType.NONE; } else { @@ -1894,7 +1886,7 @@ diff --git a/chrome/browser/ui/android/native_page/java/src/org/chromium/chrome/ } } -@@ -257,7 +262,7 @@ public interface NativePage { +@@ -260,7 +265,7 @@ public interface NativePage { * which do not have chrome or chrome-native scheme. */ private static @NativePageType int chromePageType( @@ -1903,7 +1895,7 @@ diff --git a/chrome/browser/ui/android/native_page/java/src/org/chromium/chrome/ String host = url.getHost(); String scheme = url.getScheme(); if (!UrlConstants.CHROME_NATIVE_SCHEME.equals(scheme) -@@ -277,7 +282,8 @@ public interface NativePage { +@@ -280,7 +285,8 @@ public interface NativePage { return NativePageType.DOWNLOADS; } else if (UrlConstants.HISTORY_HOST.equals(host)) { return NativePageType.HISTORY; @@ -1916,8 +1908,8 @@ diff --git a/chrome/browser/ui/android/native_page/java/src/org/chromium/chrome/ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java --- 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 -@@ -92,6 +92,11 @@ import org.chromium.ui.base.WindowAndroid; - import org.chromium.ui.interpolators.Interpolators; +@@ -97,6 +97,11 @@ import org.chromium.ui.interpolators.Interpolators; + import org.chromium.ui.modaldialog.ModalDialogManager; import org.chromium.url.GURL; +import org.chromium.components.user_prefs.UserPrefs; @@ -1928,7 +1920,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow import java.util.ArrayList; import java.util.List; import java.util.function.BooleanSupplier; -@@ -419,6 +424,9 @@ class LocationBarMediator +@@ -437,6 +442,9 @@ class LocationBarMediator if (!DeviceFormFactor.isNonMultiDisplayContextOnTablet(mContext)) return; Tab tab = mLocationBarDataProvider.getTab(); if (tab == null) return; @@ -1941,7 +1933,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd -@@ -6675,6 +6675,31 @@ To change this setting, BEGIN_LINKdelete the Chrome d +@@ -6627,6 +6627,31 @@ To change this setting, BEGIN_LINKdelete the Chrome d Cookies, cache, and other site data @@ -1976,7 +1968,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/LocationBarModel.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/LocationBarModel.java --- 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 -@@ -165,6 +165,7 @@ public class LocationBarModel implements ToolbarDataProvider, LocationBarDataPro +@@ -168,6 +168,7 @@ public class LocationBarModel implements ToolbarDataProvider, LocationBarDataPro protected GURL mVisibleGurl = GURL.emptyGURL(); protected String mFormattedFullUrl; protected String mUrlForDisplay; @@ -1984,14 +1976,13 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow // notifyUrlChanged and notifySecurityStateChanged are usually called 3 times across a same // document navigation. The first call is usually necessary, which updates the UrlBar to reflect -@@ -188,7 +189,9 @@ public class LocationBarModel implements ToolbarDataProvider, LocationBarDataPro - Context context, +@@ -192,7 +193,8 @@ public class LocationBarModel implements ToolbarDataProvider, LocationBarDataPro NewTabPageDelegate newTabPageDelegate, UrlFormatter urlFormatter, -- OfflineStatus offlineStatus) { -+ OfflineStatus offlineStatus, + OfflineStatus offlineStatus, +- ObservableSupplier<@ControlsPosition Integer> toolbarPositionSupplier) { ++ ObservableSupplier<@ControlsPosition Integer> toolbarPositionSupplier, + boolean isAlwaysIncognito) { -+ mIsAlwaysIncognito = isAlwaysIncognito; // (uazo) to do, check mContext = context; mNtpDelegate = newTabPageDelegate; mUrlFormatter = urlFormatter; @@ -2065,7 +2056,7 @@ diff --git a/chrome/browser/ui/search_engines/search_engine_tab_helper.cc b/chro diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h --- a/chrome/common/pref_names.h +++ b/chrome/common/pref_names.h -@@ -4108,6 +4108,12 @@ inline constexpr char kOutOfProcessSystemDnsResolutionEnabled[] = +@@ -4095,6 +4095,12 @@ inline constexpr char kOutOfProcessSystemDnsResolutionEnabled[] = "net.out_of_process_system_dns_resolution_enabled"; #endif // BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) @@ -2131,7 +2122,7 @@ diff --git a/components/content_settings/core/browser/content_settings_pref_prov diff --git a/components/content_settings/core/browser/host_content_settings_map.cc b/components/content_settings/core/browser/host_content_settings_map.cc --- a/components/content_settings/core/browser/host_content_settings_map.cc +++ b/components/content_settings/core/browser/host_content_settings_map.cc -@@ -287,6 +287,7 @@ struct ContentSettingEntry { +@@ -288,6 +288,7 @@ struct ContentSettingEntry { HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs, bool is_off_the_record, @@ -2139,7 +2130,7 @@ diff --git a/components/content_settings/core/browser/host_content_settings_map. bool store_last_modified, bool restore_session, bool should_record_metrics) -@@ -296,6 +297,7 @@ HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs, +@@ -297,6 +298,7 @@ HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs, #endif prefs_(prefs), is_off_the_record_(is_off_the_record), @@ -2147,7 +2138,7 @@ diff --git a/components/content_settings/core/browser/host_content_settings_map. store_last_modified_(store_last_modified), allow_invalid_secondary_pattern_for_testing_(false), clock_(base::DefaultClock::GetInstance()) { -@@ -309,7 +311,7 @@ HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs, +@@ -310,7 +312,7 @@ HostContentSettingsMap::HostContentSettingsMap(PrefService* prefs, policy_provider->AddObserver(this); auto pref_provider_ptr = std::make_unique( @@ -2167,7 +2158,7 @@ diff --git a/components/content_settings/core/browser/host_content_settings_map. bool store_last_modified, bool restore_session, bool should_record_metrics); -@@ -544,6 +545,8 @@ class HostContentSettingsMap : public content_settings::Observer, +@@ -551,6 +552,8 @@ class HostContentSettingsMap : public content_settings::Observer, // Whether this settings map is for an incognito or guest session. bool is_off_the_record_; @@ -2179,7 +2170,7 @@ diff --git a/components/content_settings/core/browser/host_content_settings_map. diff --git a/components/omnibox/browser/autocomplete_provider_client.cc b/components/omnibox/browser/autocomplete_provider_client.cc --- a/components/omnibox/browser/autocomplete_provider_client.cc +++ b/components/omnibox/browser/autocomplete_provider_client.cc -@@ -66,3 +66,7 @@ base::WeakPtr +@@ -74,3 +74,7 @@ base::WeakPtr AutocompleteProviderClient::GetWeakPtr() { return nullptr; } @@ -2213,7 +2204,7 @@ diff --git a/components/omnibox/browser/base_search_provider.cc b/components/omn diff --git a/components/omnibox/browser/search_provider.cc b/components/omnibox/browser/search_provider.cc --- a/components/omnibox/browser/search_provider.cc +++ b/components/omnibox/browser/search_provider.cc -@@ -916,7 +916,8 @@ std::unique_ptr SearchProvider::CreateSuggestLoader( +@@ -921,7 +921,8 @@ std::unique_ptr SearchProvider::CreateSuggestLoader( // is required. // Request for suggestions in OTR contexts is not allowed; except for the Lens // searchboxes. diff --git a/build/cromite_patches/Add-autoplay-site-setting.patch b/build/cromite_patches/Add-autoplay-site-setting.patch index 7b784340130629ccb414c76480ec5c2f466f0cb5..de521ad9fcb24a4f4952c5074dd0f0360f4d65e4 100644 --- a/build/cromite_patches/Add-autoplay-site-setting.patch +++ b/build/cromite_patches/Add-autoplay-site-setting.patch @@ -164,7 +164,7 @@ new file mode 100644 +import org.chromium.components.browser_ui.site_settings.BromiteCustomContentSetting; +import org.chromium.components.browser_ui.site_settings.ContentSettingsResources; +import org.chromium.components.browser_ui.site_settings.SiteSettingsCategory; -+import org.chromium.components.content_settings.ContentSettingValues; ++import org.chromium.components.content_settings.ContentSetting; +import org.chromium.components.content_settings.ContentSettingsType; +import org.chromium.content_public.browser.BrowserContextHandle; + @@ -177,8 +177,8 @@ new file mode 100644 +public class BromiteAutoplayContentSetting extends BromiteCustomContentSetting { + public BromiteAutoplayContentSetting() { + super(/*contentSettingsType*/ ContentSettingsType.AUTOPLAY, -+ /*defaultEnabledValue*/ ContentSettingValues.ALLOW, -+ /*defaultDisabledValue*/ ContentSettingValues.BLOCK, ++ /*defaultEnabledValue*/ ContentSetting.ALLOW, ++ /*defaultDisabledValue*/ ContentSetting.BLOCK, + /*allowException*/ true, + /*preferenceKey*/ "autoplay", + /*profilePrefKey*/ "autoplay"); @@ -197,11 +197,11 @@ new file mode 100644 + } + + @Override -+ public int getCategorySummary(@Nullable @ContentSettingValues int value) { ++ public int getCategorySummary(@Nullable @ContentSetting int value) { + switch (value) { -+ case ContentSettingValues.ALLOW: ++ case ContentSetting.ALLOW: + return R.string.website_settings_category_autoplay_enabled; -+ case ContentSettingValues.BLOCK: ++ case ContentSetting.BLOCK: + return R.string.website_settings_category_autoplay_disabled; + default: + return 0; @@ -229,8 +229,8 @@ new file mode 100644 + } + + @Override -+ public @Nullable Boolean considerException(SiteSettingsCategory category, @ContentSettingValues int value) { -+ return value != ContentSettingValues.BLOCK; ++ public @Nullable Boolean considerException(SiteSettingsCategory category, @ContentSetting int value) { ++ return value != ContentSetting.BLOCK; + } +} diff --git a/components/browser_ui/strings/bromite_content_settings/autoplay.grdp b/components/browser_ui/strings/bromite_content_settings/autoplay.grdp @@ -308,7 +308,7 @@ diff --git a/third_party/blink/renderer/core/html/media/autoplay_policy.cc b/thi if (!IsLockedPendingUserGesture()) return false; -@@ -458,6 +461,17 @@ void AutoplayPolicy::MaybeSetAutoplayInitiated() { +@@ -457,6 +460,17 @@ void AutoplayPolicy::MaybeSetAutoplayInitiated() { } } diff --git a/build/cromite_patches/Add-bookmark-import-export-actions.patch b/build/cromite_patches/Add-bookmark-import-export-actions.patch index 7754a013b4882cea9acb9eb9969c3131e3cbc20f..e7db3b19a407ca733352e96011d43ea90fb5cc80 100644 --- a/build/cromite_patches/Add-bookmark-import-export-actions.patch +++ b/build/cromite_patches/Add-bookmark-import-export-actions.patch @@ -94,17 +94,17 @@ diff --git a/chrome/android/java/res/menu/bookmark_toolbar_menu_improved.xml b/c diff --git a/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDelegateFactory.java b/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDelegateFactory.java --- a/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDelegateFactory.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDelegateFactory.java -@@ -13,6 +13,7 @@ import org.chromium.base.jank_tracker.JankTracker; - import org.chromium.base.supplier.ObservableSupplier; +@@ -11,6 +11,7 @@ import org.chromium.base.supplier.ObservableSupplier; import org.chromium.base.supplier.OneshotSupplier; - import org.chromium.base.supplier.Supplier; + import org.chromium.build.annotations.NullMarked; + import org.chromium.build.annotations.Nullable; +import org.chromium.chrome.browser.app.ChromeActivity; import org.chromium.chrome.browser.app.tab_activity_glue.ActivityTabWebContentsDelegateAndroid; import org.chromium.chrome.browser.browser_controls.BrowserControlsStateProvider; import org.chromium.chrome.browser.compositor.CompositorViewHolder; -@@ -60,7 +61,7 @@ import java.util.List; - * ChromeTabbedActivity}. +@@ -60,7 +61,7 @@ import java.util.function.Supplier; */ + @NullMarked public class TabbedModeTabDelegateFactory implements TabDelegateFactory { - private final Activity mActivity; + private final ChromeActivity mActivity; @@ -112,7 +112,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDe private final Supplier mShareDelegateSupplier; private final Supplier mEphemeralTabCoordinatorSupplier; @@ -91,7 +92,7 @@ public class TabbedModeTabDelegateFactory implements TabDelegateFactory { - private NativePageFactory mNativePageFactory; + private @Nullable NativePageFactory mNativePageFactory; public TabbedModeTabDelegateFactory( - Activity activity, @@ -199,33 +199,33 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/bookmarks/B diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java b/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java --- a/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java -@@ -19,6 +19,7 @@ import org.chromium.base.supplier.ObservableSupplier; - import org.chromium.base.supplier.OneshotSupplier; - import org.chromium.base.supplier.Supplier; +@@ -20,6 +20,7 @@ import org.chromium.base.supplier.OneshotSupplier; + import org.chromium.build.annotations.NullMarked; + import org.chromium.build.annotations.Nullable; import org.chromium.chrome.R; +import org.chromium.chrome.browser.app.ChromeActivity; import org.chromium.chrome.browser.app.download.home.DownloadPage; import org.chromium.chrome.browser.bookmarks.BookmarkPage; import org.chromium.chrome.browser.browser_controls.BrowserControlsMarginSupplier; -@@ -63,7 +64,7 @@ import org.chromium.ui.util.ColorUtils; - * Creates NativePage objects to show chrome-native:// URLs using the native Android view system. +@@ -67,7 +68,7 @@ import java.util.function.Supplier; */ + @NullMarked public class NativePageFactory { - private final Activity mActivity; + private final ChromeActivity mActivity; private final BottomSheetController mBottomSheetController; private final BrowserControlsManager mBrowserControlsManager; - private final Supplier mCurrentTabSupplier; -@@ -87,7 +88,7 @@ public class NativePageFactory { - private static NativePage sTestPage; + private final Supplier<@Nullable Tab> mCurrentTabSupplier; +@@ -91,7 +92,7 @@ public class NativePageFactory { + private static @Nullable NativePage sTestPage; public NativePageFactory( -- @NonNull Activity activity, -+ @NonNull ChromeActivity activity, - @NonNull BottomSheetController sheetController, - @NonNull BrowserControlsManager browserControlsManager, - @NonNull Supplier currentTabSupplier, -@@ -162,7 +163,7 @@ public class NativePageFactory { +- Activity activity, ++ ChromeActivity activity, + BottomSheetController sheetController, + BrowserControlsManager browserControlsManager, + Supplier<@Nullable Tab> currentTabSupplier, +@@ -166,7 +167,7 @@ public class NativePageFactory { @VisibleForTesting static class NativePageBuilder { @@ -234,7 +234,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat private final BottomSheetController mBottomSheetController; private final Supplier mNewTabPageCreationTracker; private final BrowserControlsManager mBrowserControlsManager; -@@ -271,7 +272,7 @@ public class NativePageFactory { +@@ -275,7 +276,7 @@ public class NativePageFactory { mBrowserControlsManager, mTabModelSelector, mEdgeToEdgeControllerSupplier), @@ -246,7 +246,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -245,6 +245,8 @@ static_library("browser") { +@@ -241,6 +241,8 @@ static_library("browser") { "bluetooth/chrome_bluetooth_delegate_impl_client.h", "bookmarks/bookmark_model_factory.cc", "bookmarks/bookmark_model_factory.h", @@ -255,7 +255,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn "bookmarks/chrome_bookmark_client.cc", "bookmarks/chrome_bookmark_client.h", "bookmarks/managed_bookmark_service_factory.cc", -@@ -1721,6 +1723,13 @@ static_library("browser") { +@@ -1688,6 +1690,13 @@ static_library("browser") { ] } @@ -269,7 +269,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn configs += [ "//build/config/compiler:wexit_time_destructors", "//build/config:precompiled_headers", -@@ -3704,8 +3713,6 @@ static_library("browser") { +@@ -3712,8 +3721,6 @@ static_library("browser") { "bookmarks/bookmark_expanded_state_tracker.h", "bookmarks/bookmark_expanded_state_tracker_factory.cc", "bookmarks/bookmark_expanded_state_tracker_factory.h", @@ -681,10 +681,10 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManagerCoordinator.java b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManagerCoordinator.java --- a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManagerCoordinator.java +++ b/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManagerCoordinator.java -@@ -57,6 +57,8 @@ import org.chromium.components.image_fetcher.ImageFetcher; - import org.chromium.components.image_fetcher.ImageFetcherConfig; +@@ -57,6 +57,8 @@ import org.chromium.components.image_fetcher.ImageFetcherConfig; import org.chromium.components.image_fetcher.ImageFetcherFactory; import org.chromium.ui.KeyboardVisibilityDelegate; + import org.chromium.ui.edge_to_edge.EdgeToEdgePadAdjuster; +import org.chromium.ui.base.ActivityWindowAndroid; +import org.chromium.ui.modaldialog.ModalDialogManager; import org.chromium.ui.modaldialog.ModalDialogManager; @@ -714,9 +714,9 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows +import org.chromium.ui.base.ActivityWindowAndroid; +import org.chromium.ui.modaldialog.ModalDialogManager; import org.chromium.ui.accessibility.AccessibilityState; - import org.chromium.ui.listmenu.ListMenu; - import org.chromium.ui.listmenu.ListMenuItemProperties; -@@ -81,6 +83,47 @@ import java.util.function.BooleanSupplier; + import org.chromium.ui.base.DeviceFormFactor; + import org.chromium.ui.base.DeviceInput; +@@ -83,6 +85,47 @@ import java.util.function.BooleanSupplier; import java.util.function.Consumer; import java.util.function.Predicate; @@ -764,7 +764,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows /** Responsible for BookmarkManager business logic. */ // TODO(crbug.com/40256938): Remove BookmarkDelegate if possible. @NullMarked -@@ -91,6 +134,9 @@ class BookmarkManagerMediator +@@ -93,6 +136,9 @@ class BookmarkManagerMediator private static boolean sPreventLoadingForTesting; @@ -774,7 +774,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows /** Keeps track of whether drag is enabled / active for bookmark lists. */ private class BookmarkDragStateDelegate implements DragStateDelegate { private BookmarkDelegate mBookmarkDelegate; -@@ -597,6 +643,14 @@ class BookmarkManagerMediator +@@ -608,6 +654,14 @@ class BookmarkManagerMediator mNativePage = nativePage; } @@ -789,7 +789,7 @@ diff --git a/chrome/browser/bookmarks/android/java/src/org/chromium/chrome/brows /** See BookmarkManager(Coordinator)#updateForUrl */ void updateForUrl(String url) { // Bookmark model is null if the manager has been destroyed. -@@ -769,6 +823,235 @@ class BookmarkManagerMediator +@@ -780,6 +834,235 @@ class BookmarkManagerMediator } } @@ -1250,7 +1250,7 @@ diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browse diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc --- a/chrome/browser/flags/android/chrome_feature_list.cc +++ b/chrome/browser/flags/android/chrome_feature_list.cc -@@ -251,6 +251,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { +@@ -255,6 +255,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { &kBatchTabRestore, &kBlockIntentsWhileLocked, &kBookmarkPaneAndroid, @@ -1261,7 +1261,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java --- 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 -@@ -689,6 +689,7 @@ public abstract class ChromeFeatureList { +@@ -702,6 +702,7 @@ public abstract class ChromeFeatureList { public static final String USE_LIBUNWINDSTACK_NATIVE_UNWINDER_ANDROID = "UseLibunwindstackNativeUnwinderAndroid"; public static final String VISITED_URL_RANKING_SERVICE = "VisitedURLRankingService"; @@ -1324,7 +1324,7 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro /** Whether Chrome is set as the default browser. Default value is false. */ public static final String CHROME_DEFAULT_BROWSER = "applink.chrome_default_browser"; -@@ -1017,6 +1019,7 @@ public final class ChromePreferenceKeys { +@@ -1051,6 +1053,7 @@ public final class ChromePreferenceKeys { AUXILIARY_SEARCH_SCHEMA_VERSION, APP_LAUNCH_LAST_KNOWN_ACTIVE_TAB_STATE, APP_LAUNCH_SEARCH_ENGINE_HAD_LOGO, @@ -1410,7 +1410,7 @@ diff --git a/components/headless/select_file_dialog/headless_select_file_dialog. diff --git a/components/user_data_importer/content/content_bookmark_parser_utils.cc b/components/user_data_importer/content/content_bookmark_parser_utils.cc --- a/components/user_data_importer/content/content_bookmark_parser_utils.cc +++ b/components/user_data_importer/content/content_bookmark_parser_utils.cc -@@ -89,6 +89,7 @@ std::optional GetTimeAttribute(const std::string& attribute_list, +@@ -138,6 +138,7 @@ std::optional GetBoolAttribute(std::string_view attribute_list, // Given the URL of a page and a favicon data URL, adds an appropriate record // to the given favicon usage vector. @@ -1418,7 +1418,7 @@ diff --git a/components/user_data_importer/content/content_bookmark_parser_utils void DataURLToFaviconUsage(const GURL& link_url, const GURL& favicon_data, favicon_base::FaviconUsageDataList* favicons) { -@@ -438,9 +439,11 @@ BookmarkParser::ParsedBookmarks ParseBookmarksUnsafe( +@@ -495,9 +496,11 @@ BookmarkParser::ParsedBookmarks ParseBookmarksUnsafe( } parsing_result.bookmarks.push_back(std::move(entry)); diff --git a/build/cromite_patches/Add-cromite-flags-support.patch b/build/cromite_patches/Add-cromite-flags-support.patch index 28ab519eeaaa9b84ca0ebb86ce33843db4207830..78de0c5efe159f61b76d711474f1e931cc70552a 100644 --- a/build/cromite_patches/Add-cromite-flags-support.patch +++ b/build/cromite_patches/Add-cromite-flags-support.patch @@ -17,7 +17,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html base/android/feature_map.cc | 5 + .../base/cached_flags/ValuesReturned.java | 2 +- base/feature_list.cc | 76 ++++++++ - base/feature_list.h | 80 +++++++- + base/feature_list.h | 98 +++++++++- build/android/gyp/java_cpp_features.py | 17 ++ chrome/android/java/res/values/values.xml | 3 + .../java/res/xml/privacy_preferences.xml | 4 + @@ -35,7 +35,6 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html .../browser/flags/ChromeFeatureList.java | 13 +- .../flags/cromite/include_all_directory.java | 1 + .../java_template/CromiteCachedFlag.java.tmpl | 47 +++++ - chrome/browser/settings/BUILD.gn | 1 + .../settings/ChromeBaseSettingsFragment.java | 50 +++++ .../strings/android_chrome_strings.grd | 1 + .../Add-cromite-flags-support.grdp | 9 + @@ -107,7 +106,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html third_party/blink/public/common/features.h | 1 + ui/base/ui_base_features.cc | 1 + ui/base/ui_base_features.h | 1 + - 94 files changed, 834 insertions(+), 31 deletions(-) + 93 files changed, 850 insertions(+), 32 deletions(-) create mode 100644 chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/cromite/include_all_directory.java create mode 100644 chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/cromite/java_template/CromiteCachedFlag.java.tmpl create mode 100644 chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Add-cromite-flags-support.grdp @@ -144,7 +143,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html diff --git a/base/BUILD.gn b/base/BUILD.gn --- a/base/BUILD.gn +++ b/base/BUILD.gn -@@ -174,6 +174,8 @@ use_epoll = is_linux || is_chromeos || is_android +@@ -170,6 +170,8 @@ use_epoll = is_linux || is_chromeos || is_android # This does not include test code (test support and anything in the test # directory) which should use source_set as is recommended for GN targets). component("base") { @@ -153,7 +152,7 @@ diff --git a/base/BUILD.gn b/base/BUILD.gn sources = [ "allocator/allocator_check.cc", "allocator/allocator_check.h", -@@ -1043,7 +1045,7 @@ component("base") { +@@ -1046,7 +1048,7 @@ component("base") { "//build/config/compiler:wglobal_constructors", ] @@ -180,7 +179,7 @@ diff --git a/base/android/feature_map.cc b/base/android/feature_map.cc diff --git a/base/android/java/src/org/chromium/base/cached_flags/ValuesReturned.java b/base/android/java/src/org/chromium/base/cached_flags/ValuesReturned.java --- a/base/android/java/src/org/chromium/base/cached_flags/ValuesReturned.java +++ b/base/android/java/src/org/chromium/base/cached_flags/ValuesReturned.java -@@ -18,7 +18,7 @@ import java.util.Map; +@@ -18,7 +18,7 @@ import java.util.function.Supplier; @NullMarked public abstract class ValuesReturned { @GuardedBy("sBoolValues") @@ -192,7 +191,7 @@ diff --git a/base/android/java/src/org/chromium/base/cached_flags/ValuesReturned diff --git a/base/feature_list.cc b/base/feature_list.cc --- a/base/feature_list.cc +++ b/base/feature_list.cc -@@ -41,6 +41,31 @@ +@@ -42,6 +42,31 @@ namespace base { @@ -224,7 +223,7 @@ diff --git a/base/feature_list.cc b/base/feature_list.cc namespace { // Pointer to the FeatureList instance singleton that was set via -@@ -470,6 +495,46 @@ bool FeatureList::IsEnabled(const Feature& feature) { +@@ -471,6 +496,46 @@ bool FeatureList::IsEnabled(const Feature& feature) { return g_feature_list_instance->IsFeatureEnabled(feature); } @@ -271,7 +270,7 @@ diff --git a/base/feature_list.cc b/base/feature_list.cc // static bool FeatureList::IsValidFeatureOrFieldTrialName(std::string_view name) { return IsStringASCII(name) && name.find_first_of(",<*") == std::string::npos; -@@ -737,6 +802,17 @@ void FeatureList::VisitFeaturesAndParams(FeatureVisitor& visitor, +@@ -738,6 +803,17 @@ void FeatureList::VisitFeaturesAndParams(FeatureVisitor& visitor, void FeatureList::FinalizeInitialization() { DCHECK(!initialized_); @@ -292,7 +291,7 @@ diff --git a/base/feature_list.cc b/base/feature_list.cc diff --git a/base/feature_list.h b/base/feature_list.h --- a/base/feature_list.h +++ b/base/feature_list.h -@@ -177,8 +177,10 @@ enum class FeatureMacroHandshake { kSecret }; +@@ -238,8 +238,10 @@ constexpr const char* GetFeatureNameFromIdentifier(std::string_view feature) { struct BASE_EXPORT LOGICALLY_CONST Feature { constexpr Feature(const char* name, FeatureState default_state, @@ -305,7 +304,7 @@ diff --git a/base/feature_list.h b/base/feature_list.h #if BUILDFLAG(ENABLE_BANNED_BASE_FEATURE_PREFIX) if (std::string_view(name).find(BUILDFLAG(BANNED_BASE_FEATURE_PREFIX)) == 0) { -@@ -205,6 +207,9 @@ struct BASE_EXPORT LOGICALLY_CONST Feature { +@@ -266,6 +268,9 @@ struct BASE_EXPORT LOGICALLY_CONST Feature { // command line switch. const FeatureState default_state; @@ -315,7 +314,7 @@ diff --git a/base/feature_list.h b/base/feature_list.h private: friend class FeatureList; -@@ -485,6 +490,11 @@ class BASE_EXPORT FeatureList { +@@ -546,6 +551,11 @@ class BASE_EXPORT FeatureList { // instance, which is checked in builds with DCHECKs enabled. static bool IsEnabled(const Feature& feature); @@ -327,7 +326,7 @@ diff --git a/base/feature_list.h b/base/feature_list.h // Some characters are not allowed to appear in feature names or the // associated field trial names, as they are used as special characters for // command-line serialization. This function checks that the strings are ASCII -@@ -754,4 +764,70 @@ class BASE_EXPORT FeatureList { +@@ -815,4 +825,88 @@ class BASE_EXPORT FeatureList { } // namespace base @@ -389,22 +388,40 @@ diff --git a/base/feature_list.h b/base/feature_list.h + _Pragma("clang diagnostic pop") \ + static_assert(true, "") /* for a semicolon requirement */ + -+#define BASE_FEATURE_DISABLED(feature, name, default_state) \ ++#define BASE_FEATURE_DISABLED_3_ARGS(feature, name, default_state) \ + BASE_FEATURE(feature, name, default_state); \ + static_assert(default_state == base::FEATURE_DISABLED_BY_DEFAULT, "Check default state") + -+#define BASE_FEATURE_ENABLED(feature, name, default_state) \ ++#define BASE_FEATURE_DISABLED_2_ARGS(name, default_state) \ ++ BASE_FEATURE(name, default_state); \ ++ static_assert(default_state == base::FEATURE_DISABLED_BY_DEFAULT, "Check default state") ++ ++#define GET_BASE_FEATURE_DISABLED_MACRO(_1, _2, _3, NAME, ...) NAME ++#define BASE_FEATURE_DISABLED(...) \ ++ GET_BASE_FEATURE_DISABLED_MACRO(__VA_ARGS__, BASE_FEATURE_DISABLED_3_ARGS, \ ++ BASE_FEATURE_DISABLED_2_ARGS)(__VA_ARGS__) ++ ++#define BASE_FEATURE_ENABLED_3_ARGS(feature, name, default_state) \ + BASE_FEATURE(feature, name, default_state); \ + static_assert(default_state == base::FEATURE_ENABLED_BY_DEFAULT, "Check default state") ++ ++#define BASE_FEATURE_ENABLED_2_ARGS(name, default_state) \ ++ BASE_FEATURE(name, default_state); \ ++ static_assert(default_state == base::FEATURE_ENABLED_BY_DEFAULT, "Check default state") ++ ++#define GET_BASE_FEATURE_ENABLED_MACRO(_1, _2, _3, NAME, ...) NAME ++#define BASE_FEATURE_ENABLED(...) \ ++ GET_BASE_FEATURE_ENABLED_MACRO(__VA_ARGS__, BASE_FEATURE_ENABLED_3_ARGS, \ ++ BASE_FEATURE_ENABLED_2_ARGS)(__VA_ARGS__) + #endif // BASE_FEATURE_LIST_H_ diff --git a/build/android/gyp/java_cpp_features.py b/build/android/gyp/java_cpp_features.py --- a/build/android/gyp/java_cpp_features.py +++ b/build/android/gyp/java_cpp_features.py -@@ -21,10 +21,27 @@ class FeatureParserDelegate(java_cpp_utils.CppConstantParser.Delegate): - # ExtractConstantName() -> 'ConstantName' - # ExtractValue() -> '"StringNameOfTheFeature"' - FEATURE_RE = re.compile(r'BASE_FEATURE\(k([^,]+),') +@@ -25,10 +25,27 @@ class FeatureParserDelegate(java_cpp_utils.CppConstantParser.Delegate): + _FEATURE_RE_3_ARGS = re.compile(r'BASE_FEATURE\(k([^,]+),') + # For 2-arg macro: BASE_FEATURE(MyFeature, ...) + _FEATURE_RE_2_ARGS = re.compile(r'BASE_FEATURE\(([^,]+),') + + FEATURE_RE1 = re.compile(r'CROMITE_FEATURE\(k([^,]+),') + FEATURE_RE2 = re.compile(r'CROMITE_FEATURE_KEEP_DISABLED\(k([^,]+),') @@ -412,10 +429,10 @@ diff --git a/build/android/gyp/java_cpp_features.py b/build/android/gyp/java_cpp + FEATURE_RE4 = re.compile(r'CROMITE_FEATURE_KEEP_ENABLED\(k([^,]+),') + FEATURE_RE5 = re.compile(r'CROMITE_FEATURE_ENABLED\(k([^,]+),') + - VALUE_RE = re.compile(r'\s*("(?:\"|[^"])*")\s*,') + _VALUE_RE = re.compile(r'\s*("(?:\\"|[^"])*")\s*,') def ExtractConstantName(self, line): - match = FeatureParserDelegate.FEATURE_RE.match(line) + match = self._FEATURE_RE_3_ARGS.match(line) + if match is None: + match = FeatureParserDelegate.FEATURE_RE1.match(line) + if match is None: @@ -426,9 +443,9 @@ diff --git a/build/android/gyp/java_cpp_features.py b/build/android/gyp/java_cpp + match = FeatureParserDelegate.FEATURE_RE4.match(line) + if match is None: + match = FeatureParserDelegate.FEATURE_RE5.match(line) - return match.group(1) if match else None - - def ExtractValue(self, line): + if match: + return match.group(1) + match = self._FEATURE_RE_2_ARGS.match(line) diff --git a/chrome/android/java/res/values/values.xml b/chrome/android/java/res/values/values.xml --- a/chrome/android/java/res/values/values.xml +++ b/chrome/android/java/res/values/values.xml @@ -471,7 +488,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/settin diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java -@@ -130,7 +130,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment +@@ -132,7 +132,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment } @Override @@ -483,18 +500,18 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java --- a/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java -@@ -11,6 +11,7 @@ import androidx.annotation.NonNull; +@@ -10,6 +10,7 @@ import android.os.Bundle; import androidx.fragment.app.Fragment; import androidx.fragment.app.FragmentManager; +import org.chromium.base.supplier.Supplier; import org.chromium.base.supplier.ObservableSupplier; import org.chromium.base.supplier.OneshotSupplier; - import org.chromium.chrome.browser.accessibility.settings.ChromeAccessibilitySettingsDelegate; -@@ -70,18 +71,21 @@ public class FragmentDependencyProvider extends FragmentManager.FragmentLifecycl + import org.chromium.build.annotations.NullMarked; +@@ -72,24 +73,31 @@ public class FragmentDependencyProvider extends FragmentManager.FragmentLifecycl private final OneshotSupplier mSnackbarManagerSupplier; private final OneshotSupplier mBottomSheetControllerSupplier; - private final ObservableSupplier mModalDialogManagerSupplier; + private final ObservableSupplier<@Nullable ModalDialogManager> mModalDialogManagerSupplier; + private final Supplier mRequireRestartDelegateSupplier; public FragmentDependencyProvider( @@ -502,8 +519,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Fragme Profile profile, OneshotSupplier snackbarManagerSupplier, OneshotSupplier bottomSheetControllerSupplier, -- ObservableSupplier modalDialogManagerSupplier) { -+ ObservableSupplier modalDialogManagerSupplier, +- ObservableSupplier<@Nullable ModalDialogManager> modalDialogManagerSupplier) { ++ ObservableSupplier<@Nullable ModalDialogManager> modalDialogManagerSupplier, + Supplier requireRestartDelegateSupplier) { mContext = context; mProfile = profile; @@ -514,9 +531,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Fragme } @Override -@@ -90,6 +94,10 @@ public class FragmentDependencyProvider extends FragmentManager.FragmentLifecycl - @NonNull Fragment fragment, - @NonNull Context unusedContext) { + public void onFragmentAttached( + FragmentManager fragmentManager, Fragment fragment, Context unusedContext) { // Common dependencies attachments. + if (fragment instanceof ChromeBaseSettingsFragment) { + ((ChromeBaseSettingsFragment)fragment).setRequestRestartDelegateSupplier( @@ -528,25 +544,25 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Fragme diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java -@@ -4,6 +4,7 @@ +@@ -6,6 +6,7 @@ package org.chromium.chrome.browser.settings; - package org.chromium.chrome.browser.settings; + import static org.chromium.build.NullUtil.assumeNonNull; +import android.app.Activity; import android.annotation.SuppressLint; import android.content.Context; import android.content.Intent; -@@ -32,7 +33,9 @@ import org.chromium.base.Callback; - import org.chromium.base.CallbackUtils; +@@ -32,7 +33,9 @@ import org.chromium.base.CallbackUtils; + import org.chromium.base.DeviceInfo; import org.chromium.base.Log; import org.chromium.base.metrics.RecordHistogram; +import org.chromium.base.supplier.Supplier; import org.chromium.base.supplier.ObservableSupplier; +import org.chromium.base.supplier.OneshotSupplier; import org.chromium.base.supplier.OneshotSupplierImpl; - import org.chromium.chrome.R; - import org.chromium.chrome.browser.ChromeBaseAppCompatActivity; -@@ -40,12 +43,14 @@ import org.chromium.chrome.browser.back_press.BackPressHelper; + import org.chromium.build.annotations.NullMarked; + import org.chromium.build.annotations.Nullable; +@@ -42,12 +45,14 @@ import org.chromium.chrome.browser.back_press.BackPressHelper; import org.chromium.chrome.browser.feedback.HelpAndFeedbackLauncherImpl; import org.chromium.chrome.browser.flags.ChromeFeatureList; import org.chromium.chrome.browser.init.ChromeBrowserInitializer; @@ -561,7 +577,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Settin import org.chromium.components.browser_ui.bottomsheet.BottomSheetController; import org.chromium.components.browser_ui.bottomsheet.BottomSheetControllerFactory; import org.chromium.components.browser_ui.bottomsheet.ManagedBottomSheetController; -@@ -88,6 +93,40 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity +@@ -92,6 +97,40 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity implements PreferenceFragmentCompat.OnPreferenceStartFragmentCallback, SnackbarManageable { private static final String TAG = "SettingsActivity"; @@ -589,7 +605,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Settin + ApplicationLifetime.terminate(true); + } + }, Snackbar.TYPE_NOTIFICATION, Snackbar.UMA_UNKNOWN) -+ .setSingleLine(false) ++ .setDefaultLines(false) + .setAction(mActivity.getString(R.string.relaunch), + /*actionData*/null) + .setDuration(/*durationMs*/70000); @@ -602,7 +618,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Settin @VisibleForTesting(otherwise = VisibleForTesting.PACKAGE_PRIVATE) public static final String EXTRA_SHOW_FRAGMENT = "show_fragment"; -@@ -154,7 +193,8 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity +@@ -158,7 +197,8 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity mProfile, mSnackbarManagerSupplier, mBottomSheetControllerSupplier, @@ -615,22 +631,17 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Settin diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tracing/settings/DeveloperSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/tracing/settings/DeveloperSettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tracing/settings/DeveloperSettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tracing/settings/DeveloperSettings.java -@@ -19,12 +19,13 @@ import org.chromium.build.annotations.Nullable; - import org.chromium.chrome.R; - import org.chromium.chrome.browser.preferences.ChromePreferenceKeys; - import org.chromium.chrome.browser.preferences.ChromeSharedPreferences; -+import org.chromium.chrome.browser.settings.ChromeBaseSettingsFragment; - import org.chromium.components.browser_ui.settings.EmbeddableSettingsPage; - import org.chromium.components.browser_ui.settings.SettingsUtils; +@@ -23,8 +23,7 @@ import org.chromium.components.browser_ui.settings.SettingsUtils; /** Settings fragment containing preferences aimed at Chrome and web developers. */ @NullMarked --public class DeveloperSettings extends PreferenceFragmentCompat implements EmbeddableSettingsPage { +-public class DeveloperSettings extends ChromeBaseSettingsFragment +- implements EmbeddableSettingsPage { +public class DeveloperSettings extends ChromeBaseSettingsFragment implements EmbeddableSettingsPage { private static final String UI_PREF_BETA_STABLE_HINT = "beta_stable_hint"; // Non-translated strings: -@@ -55,7 +56,7 @@ public class DeveloperSettings extends PreferenceFragmentCompat implements Embed +@@ -55,7 +54,7 @@ public class DeveloperSettings extends ChromeBaseSettingsFragment } @Override @@ -642,7 +653,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tracing/setting diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -381,6 +381,10 @@ using flags_ui::kOsLinux; +@@ -384,6 +384,10 @@ using flags_ui::kOsLinux; using flags_ui::kOsMac; using flags_ui::kOsWin; @@ -653,9 +664,9 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc namespace about_flags { namespace { -@@ -4903,6 +4907,10 @@ const FeatureEntry::FeatureVariation - constexpr char kWebiumFlag[] = "webium"; - #endif // !BUILDFLAG(IS_ANDROID) +@@ -4895,6 +4899,10 @@ const FeatureEntry::FeatureVariation kNtpEnterpriseShortcutsVariations[] = { + #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ + // BUILDFLAG(IS_CHROMEOS) +#define FEATURE_PARAM_SECTION +#include "cromite_flags/chrome_browser_about_flags_cc.inc" @@ -664,7 +675,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc // RECORDING USER METRICS FOR FLAGS: // ----------------------------------------------------------------------------- // The first line of the entry is the internal name. -@@ -4929,6 +4937,9 @@ constexpr char kWebiumFlag[] = "webium"; +@@ -4921,6 +4929,9 @@ const FeatureEntry::FeatureVariation kNtpEnterpriseShortcutsVariations[] = { const FeatureEntry kFeatureEntries[] = { // Include generated flags for flag unexpiry; see //docs/flag_expiry.md and // //tools/flags/generate_unexpire_flags.py. @@ -686,7 +697,7 @@ diff --git a/chrome/browser/browser_features.cc b/chrome/browser/browser_feature diff --git a/chrome/browser/browser_features.h b/chrome/browser/browser_features.h --- a/chrome/browser/browser_features.h +++ b/chrome/browser/browser_features.h -@@ -121,6 +121,7 @@ BASE_DECLARE_FEATURE(kRemovalOfIWAsFromTabCapture); +@@ -125,6 +125,7 @@ BASE_DECLARE_FEATURE(kRemovalOfIWAsFromTabCapture); // module, e.g. // //chrome/browser//features.h // @@ -736,7 +747,7 @@ diff --git a/chrome/browser/flags/BUILD.gn b/chrome/browser/flags/BUILD.gn diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc --- a/chrome/browser/flags/android/chrome_feature_list.cc +++ b/chrome/browser/flags/android/chrome_feature_list.cc -@@ -1489,5 +1489,6 @@ BASE_FEATURE(kWebOtpCrossDeviceSimpleString, +@@ -1558,5 +1558,6 @@ BASE_FEATURE(kWebOtpCrossDeviceSimpleString, "WebOtpCrossDeviceSimpleString", base::FEATURE_DISABLED_BY_DEFAULT); @@ -746,7 +757,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse diff --git a/chrome/browser/flags/android/chrome_feature_list.h b/chrome/browser/flags/android/chrome_feature_list.h --- a/chrome/browser/flags/android/chrome_feature_list.h +++ b/chrome/browser/flags/android/chrome_feature_list.h -@@ -337,6 +337,7 @@ constexpr base::FeatureParam kTouchToSearchCalloutSnippetAsSubtitle( +@@ -346,6 +346,7 @@ constexpr base::FeatureParam kTouchToSearchCalloutSnippetAsSubtitle( "snippet_as_subtitle", /*default_value=*/false); @@ -768,18 +779,18 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f import java.util.List; import java.util.Map; -@@ -1063,7 +1067,7 @@ public abstract class ChromeFeatureList { - public static final CachedFlag sWebApkMinShellApkVersion = +@@ -1111,7 +1115,7 @@ public abstract class ChromeFeatureList { newCachedFlag(WEB_APK_MIN_SHELL_APK_VERSION, true); + // keep-sorted end - public static final List sFlagsCachedFullBrowser = + public static final List sFlagsCachedFullBrowserChromium = List.of( + // keep-sorted start sAccountForSuppressedKeyboardInsets, - sAllowTabClosingUponMinimization, -@@ -1205,6 +1209,13 @@ public abstract class ChromeFeatureList { - sUseLibunwindstackNativeUnwinderAndroid, - sWebApkMinShellApkVersion); +@@ -1268,6 +1272,13 @@ public abstract class ChromeFeatureList { + // keep-sorted end + ); + private static List concatenateLists(List... collections) { + return Arrays.stream(collections).flatMap(x -> x.stream()).collect(Collectors.toList()); @@ -849,30 +860,20 @@ new file mode 100644 + }} + +}} -diff --git a/chrome/browser/settings/BUILD.gn b/chrome/browser/settings/BUILD.gn ---- a/chrome/browser/settings/BUILD.gn -+++ b/chrome/browser/settings/BUILD.gn -@@ -35,6 +35,7 @@ android_library("java") { - "//base:base_java", - "//chrome/browser/feedback/android:factory_java", - "//chrome/browser/feedback/android:java", -+ "//chrome/browser/flags:java", - "//chrome/browser/preferences:java", - "//chrome/browser/profiles/android:java", - "//chrome/browser/ui/android/favicon:java", diff --git a/chrome/browser/settings/android/java/src/org/chromium/chrome/browser/settings/ChromeBaseSettingsFragment.java b/chrome/browser/settings/android/java/src/org/chromium/chrome/browser/settings/ChromeBaseSettingsFragment.java --- a/chrome/browser/settings/android/java/src/org/chromium/chrome/browser/settings/ChromeBaseSettingsFragment.java +++ b/chrome/browser/settings/android/java/src/org/chromium/chrome/browser/settings/ChromeBaseSettingsFragment.java -@@ -8,12 +8,19 @@ import androidx.preference.PreferenceFragmentCompat; - +@@ -16,6 +16,7 @@ import androidx.recyclerview.widget.RecyclerView; import org.chromium.build.annotations.Initializer; import org.chromium.build.annotations.NullMarked; + import org.chromium.build.annotations.Nullable; +import org.chromium.base.supplier.Supplier; import org.chromium.chrome.browser.feedback.HelpAndFeedbackLauncher; import org.chromium.chrome.browser.feedback.HelpAndFeedbackLauncherFactory; - import org.chromium.chrome.browser.profiles.Profile; - import org.chromium.components.browser_ui.settings.EmbeddableSettingsPage; - import org.chromium.components.browser_ui.settings.SettingsCustomTabLauncher; + import org.chromium.chrome.browser.flags.ChromeFeatureList; +@@ -28,6 +29,12 @@ import org.chromium.components.browser_ui.settings.SettingsStylingController; + + import java.util.Objects; +import android.os.Bundle; +import androidx.preference.Preference; @@ -883,9 +884,9 @@ diff --git a/chrome/browser/settings/android/java/src/org/chromium/chrome/browse /** * Base class for settings in Chrome. * -@@ -28,6 +35,49 @@ public abstract class ChromeBaseSettingsFragment extends PreferenceFragmentCompa - private Profile mProfile; - private SettingsCustomTabLauncher mCustomTabLauncher; +@@ -89,6 +96,49 @@ public abstract class ChromeBaseSettingsFragment extends PreferenceFragmentCompa + }); + } + private Supplier mRequireRestartDelegateSupplier; + @@ -967,9 +968,9 @@ new file mode 100644 diff --git a/chrome/browser/ui/ui_features.cc b/chrome/browser/ui/ui_features.cc --- a/chrome/browser/ui/ui_features.cc +++ b/chrome/browser/ui/ui_features.cc -@@ -619,4 +619,5 @@ bool IsBookmarkTabGroupConversionEnabled() { - return base::FeatureList::IsEnabled(kBookmarkTabGroupConversion); +@@ -748,4 +748,5 @@ bool IsNewTabAddsToActiveGroupEnabled() { } + #endif // !BUILDFLAG(IS_ANDROID) +#include "cromite_flags/chrome_browser_ui_ui_features_cc.inc" } // namespace features @@ -1008,9 +1009,9 @@ diff --git a/chrome/browser/unexpire_flags.cc b/chrome/browser/unexpire_flags.cc diff --git a/chrome/common/chrome_features.cc b/chrome/common/chrome_features.cc --- a/chrome/common/chrome_features.cc +++ b/chrome/common/chrome_features.cc -@@ -1977,5 +1977,5 @@ BASE_FEATURE(kDisableShortcutsEnableDiy, - BASE_FEATURE(kSilentPolicyAndDefaultAppUpdating, - "SilentPolicyAndDefaultAppUpdating", +@@ -1612,5 +1612,5 @@ BASE_FEATURE(DisableShortcutsEnableDiy, base::FEATURE_ENABLED_BY_DEFAULT); + // happen silently without prompting an updating dialog. + BASE_FEATURE(SilentPolicyAndDefaultAppUpdating, base::FEATURE_DISABLED_BY_DEFAULT); - +#include "cromite_flags/chrome_common_chrome_features_cc.inc" @@ -1160,7 +1161,7 @@ diff --git a/components/components_strings.grd b/components/components_strings.g diff --git a/components/content_settings/core/common/features.cc b/components/content_settings/core/common/features.cc --- a/components/content_settings/core/common/features.cc +++ b/components/content_settings/core/common/features.cc -@@ -181,5 +181,6 @@ BASE_FEATURE(kForceAllowStorageAccess, +@@ -176,5 +176,6 @@ BASE_FEATURE(kForceAllowStorageAccess, "ForceAllowStorageAccess", base::FEATURE_DISABLED_BY_DEFAULT); @@ -1196,7 +1197,7 @@ diff --git a/components/offline_pages/core/offline_page_feature.h b/components/o diff --git a/components/password_manager/core/browser/features/password_features.cc b/components/password_manager/core/browser/features/password_features.cc --- a/components/password_manager/core/browser/features/password_features.cc +++ b/components/password_manager/core/browser/features/password_features.cc -@@ -219,4 +219,5 @@ BASE_FEATURE(kRetrieveTrustedVaultKeyKeyboardAccessoryAction, +@@ -225,4 +225,5 @@ BASE_FEATURE(kRetrieveTrustedVaultKeyKeyboardAccessoryAction, base::FEATURE_DISABLED_BY_DEFAULT); #endif // BUILDFLAG(IS_ANDROID) @@ -1205,7 +1206,7 @@ diff --git a/components/password_manager/core/browser/features/password_features diff --git a/components/permissions/features.cc b/components/permissions/features.cc --- a/components/permissions/features.cc +++ b/components/permissions/features.cc -@@ -139,6 +139,8 @@ BASE_FEATURE(kOsAdditionalSecurityPermissionKillSwitch, +@@ -137,6 +137,8 @@ BASE_FEATURE(kOsAdditionalSecurityPermissionKillSwitch, "OsAdditionalSecurityPermissionKillSwitch", base::FEATURE_DISABLED_BY_DEFAULT); #endif @@ -1638,7 +1639,7 @@ diff --git a/components/webui/version/version_handler_helper.cc b/components/web diff --git a/content/common/features.cc b/content/common/features.cc --- a/content/common/features.cc +++ b/content/common/features.cc -@@ -743,4 +743,5 @@ bool IsEnforceSameDocumentOriginInvariantsEnabled() { +@@ -761,4 +761,5 @@ bool IsEnforceSameDocumentOriginInvariantsEnabled() { blink::features::kTreatMhtmlInitialDocumentLoadsAsCrossDocument); } @@ -1647,7 +1648,7 @@ diff --git a/content/common/features.cc b/content/common/features.cc diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc --- a/content/public/common/content_features.cc +++ b/content/public/common/content_features.cc -@@ -1676,4 +1676,5 @@ bool IsPushSubscriptionChangeEventEnabled() { +@@ -1403,4 +1403,5 @@ bool IsPushSubscriptionChangeEventEnabled() { features::kPushSubscriptionChangeEventOnResubscribe); } @@ -1656,7 +1657,7 @@ diff --git a/content/public/common/content_features.cc b/content/public/common/c diff --git a/content/public/common/content_features.h b/content/public/common/content_features.h --- a/content/public/common/content_features.h +++ b/content/public/common/content_features.h -@@ -400,6 +400,7 @@ CONTENT_EXPORT bool IsVideoCaptureServiceEnabledForOutOfProcess(); +@@ -404,6 +404,7 @@ CONTENT_EXPORT bool IsVideoCaptureServiceEnabledForOutOfProcess(); CONTENT_EXPORT bool IsVideoCaptureServiceEnabledForBrowserProcess(); CONTENT_EXPORT bool IsPushSubscriptionChangeEventEnabled(); @@ -2002,7 +2003,7 @@ new file mode 100755 diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc --- a/media/base/media_switches.cc +++ b/media/base/media_switches.cc -@@ -2008,5 +2008,5 @@ uint32_t GetPassthroughAudioFormats() { +@@ -1727,5 +1727,5 @@ uint32_t GetPassthroughAudioFormats() { return 0; #endif // BUILDFLAG(ENABLE_PASSTHROUGH_AUDIO_CODECS) } @@ -2012,7 +2013,7 @@ diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc diff --git a/media/base/media_switches.h b/media/base/media_switches.h --- a/media/base/media_switches.h +++ b/media/base/media_switches.h -@@ -601,5 +601,5 @@ MEDIA_EXPORT bool IsOutOfProcessVideoDecodingEnabled(); +@@ -603,5 +603,5 @@ MEDIA_EXPORT bool IsOutOfProcessVideoDecodingEnabled(); MEDIA_EXPORT uint32_t GetPassthroughAudioFormats(); } // namespace media @@ -2022,18 +2023,18 @@ diff --git a/media/base/media_switches.h b/media/base/media_switches.h diff --git a/net/base/features.cc b/net/base/features.cc --- a/net/base/features.cc +++ b/net/base/features.cc -@@ -909,4 +909,5 @@ BASE_FEATURE_PARAM(bool, - "url_request_redirect_job", - false); +@@ -804,4 +804,5 @@ BASE_FEATURE_PARAM(std::string, + /*name=*/"wildcard_quic_hints", + /*default_value=*/""); +#include "cromite_flags/net_base_features_cc.inc" } // namespace net::features diff --git a/net/base/features.h b/net/base/features.h --- a/net/base/features.h +++ b/net/base/features.h -@@ -896,6 +896,7 @@ NET_EXPORT BASE_DECLARE_FEATURE_PARAM(bool, kNetTaskSchedulerURLRequestJob); - NET_EXPORT BASE_DECLARE_FEATURE_PARAM(bool, - kNetTaskSchedulerURLRequestRedirectJob); +@@ -912,6 +912,7 @@ NET_EXPORT BASE_DECLARE_FEATURE_PARAM(std::string, kQuicHintHostPortPairs); + NET_EXPORT BASE_DECLARE_FEATURE_PARAM(std::string, + kWildcardQuicHintHostPortPairs); +#include "cromite_flags/net_base_features_h.inc" } // namespace net::features @@ -2042,7 +2043,7 @@ diff --git a/net/base/features.h b/net/base/features.h diff --git a/services/network/public/cpp/features.cc b/services/network/public/cpp/features.cc --- a/services/network/public/cpp/features.cc +++ b/services/network/public/cpp/features.cc -@@ -666,4 +666,5 @@ BASE_FEATURE_PARAM(bool, +@@ -674,4 +674,5 @@ BASE_FEATURE_PARAM(bool, "url_loader", false); @@ -2051,7 +2052,7 @@ diff --git a/services/network/public/cpp/features.cc b/services/network/public/c diff --git a/services/network/public/cpp/features.h b/services/network/public/cpp/features.h --- a/services/network/public/cpp/features.h +++ b/services/network/public/cpp/features.h -@@ -366,6 +366,7 @@ BASE_DECLARE_FEATURE_PARAM(bool, kNetworkServiceTaskSchedulerResourceScheduler); +@@ -367,6 +367,7 @@ BASE_DECLARE_FEATURE_PARAM(bool, kNetworkServiceTaskSchedulerResourceScheduler); COMPONENT_EXPORT(NETWORK_CPP_FLAGS_AND_SWITCHES) BASE_DECLARE_FEATURE_PARAM(bool, kNetworkServiceTaskSchedulerURLLoader); @@ -2062,7 +2063,7 @@ diff --git a/services/network/public/cpp/features.h b/services/network/public/cp diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/features.cc --- a/third_party/blink/common/features.cc +++ b/third_party/blink/common/features.cc -@@ -2927,4 +2927,5 @@ bool IsXrDevice() { +@@ -2566,4 +2566,5 @@ bool IsXrDevice() { // // DO NOT ADD NEW FEATURES HERE. @@ -2071,7 +2072,7 @@ diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/fea diff --git a/third_party/blink/public/common/features.h b/third_party/blink/public/common/features.h --- a/third_party/blink/public/common/features.h +++ b/third_party/blink/public/common/features.h -@@ -1912,6 +1912,7 @@ BLINK_COMMON_EXPORT bool IsXrDevice(); +@@ -1903,6 +1903,7 @@ BLINK_COMMON_EXPORT bool IsXrDevice(); // // DO NOT ADD NEW FEATURES HERE. @@ -2082,18 +2083,18 @@ diff --git a/third_party/blink/public/common/features.h b/third_party/blink/publ diff --git a/ui/base/ui_base_features.cc b/ui/base/ui_base_features.cc --- a/ui/base/ui_base_features.cc +++ b/ui/base/ui_base_features.cc -@@ -483,4 +483,5 @@ bool IsHandleIMESpanChangesOnUpdateCompositionEnabled() { - features::kHandleIMESpanChangesOnUpdateComposition); - } +@@ -492,4 +492,5 @@ BASE_FEATURE(kUseSystemDefaultAccentColors, + "UseSystemDefaultAccentColors", + base::FEATURE_ENABLED_BY_DEFAULT); +#include "cromite_flags/ui_base_features_cc.inc" } // namespace features diff --git a/ui/base/ui_base_features.h b/ui/base/ui_base_features.h --- a/ui/base/ui_base_features.h +++ b/ui/base/ui_base_features.h -@@ -242,6 +242,7 @@ BASE_DECLARE_FEATURE(kHandleIMESpanChangesOnUpdateComposition); +@@ -248,6 +248,7 @@ bool IsHandleIMESpanChangesOnUpdateCompositionEnabled(); COMPONENT_EXPORT(UI_BASE_FEATURES) - bool IsHandleIMESpanChangesOnUpdateCompositionEnabled(); + BASE_DECLARE_FEATURE(kUseSystemDefaultAccentColors); +#include "cromite_flags/ui_base_features_h.inc" } // namespace features diff --git a/build/cromite_patches/Add-custom-tab-intents-privacy-option.patch b/build/cromite_patches/Add-custom-tab-intents-privacy-option.patch index 5073f0e6b56c272b87da0937d281f9cb409108e6..a898ec2b635430dfba8e8c29c795c3ceb1962a98 100644 --- a/build/cromite_patches/Add-custom-tab-intents-privacy-option.patch +++ b/build/cromite_patches/Add-custom-tab-intents-privacy-option.patch @@ -88,7 +88,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDis // Since configureIntentForResizableCustomTab() might change the componenet/class // associated with the passed intent, it needs to be called after #setClassName(context, // CustomTabActivity.class.getName()); -@@ -490,6 +500,17 @@ public class LaunchIntentDispatcher { +@@ -489,6 +499,17 @@ public class LaunchIntentDispatcher { if (Intent.ACTION_VIEW.equals(newIntent.getAction()) && !IntentHandler.wasIntentSenderChrome(newIntent)) { @@ -109,7 +109,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDis diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java --- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java -@@ -233,16 +233,16 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid +@@ -236,16 +236,16 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid // Extra whose value is an array of ints that is supplied to // SyntheticTrialRegistry::RegisterExternalExperiments(). @@ -132,7 +132,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust /** * Extra that, if set, makes the Custom Tab Activity's height to be x pixels, the Custom Tab -@@ -682,7 +682,7 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid +@@ -685,7 +685,7 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid TrustedWebActivityIntentBuilder.EXTRA_SCREEN_ORIENTATION, ScreenOrientation.DEFAULT)); @@ -141,7 +141,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust mBreakPointDp = getActivityBreakPointFromIntent(intent); mInitialActivityHeight = getInitialActivityHeightFromIntent(intent); -@@ -695,8 +695,8 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid +@@ -698,8 +698,8 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid intent, EXTRA_ACTIVITY_HEIGHT_RESIZE_BEHAVIOR, ACTIVITY_HEIGHT_DEFAULT); mIsPartialCustomTabFixedHeight = activityHeightResizeBehavior == ACTIVITY_HEIGHT_FIXED; @@ -152,7 +152,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust @BackgroundInteractBehavior int backgroundInteractBehavior = IntentUtils.safeGetIntExtra( -@@ -1267,7 +1267,9 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid +@@ -1270,7 +1270,9 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid public @CustomTabProfileType int getCustomTabMode() { return AlwaysIncognitoLinkInterceptor.isAlwaysIncognito() ? CustomTabProfileType.INCOGNITO @@ -166,7 +166,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabsConnection.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabsConnection.java --- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabsConnection.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabsConnection.java -@@ -780,7 +780,7 @@ public class CustomTabsConnection { +@@ -776,7 +776,7 @@ public class CustomTabsConnection { ThreadUtils.assertOnUiThread(); if (extras == null) return; int[] experimentIds = @@ -175,7 +175,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust if (experimentIds == null) return; // When ids are set through cct, they should not override existing ids. boolean override = false; -@@ -996,6 +996,7 @@ public class CustomTabsConnection { +@@ -992,6 +992,7 @@ public class CustomTabsConnection { PostTask.postTask( TaskTraits.UI_DEFAULT, () -> { @@ -206,7 +206,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Inco return ChromeFeatureList.sCctIncognitoAvailableToThirdParty.isEnabled(); } -@@ -220,6 +226,10 @@ public class IncognitoCustomTabIntentDataProvider extends BrowserServicesIntentD +@@ -221,6 +227,10 @@ public class IncognitoCustomTabIntentDataProvider extends BrowserServicesIntentD } public static boolean isValidIncognitoIntent(Intent intent, boolean recordMetrics) { @@ -217,7 +217,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Inco if (!isIncognitoRequested(intent)) return false; var session = SessionHolder.getSessionHolderFromIntent(intent); if (isIntentFromThirdPartyAllowed() -@@ -329,6 +339,10 @@ public class IncognitoCustomTabIntentDataProvider extends BrowserServicesIntentD +@@ -330,6 +340,10 @@ public class IncognitoCustomTabIntentDataProvider extends BrowserServicesIntentD @Override public @CustomTabProfileType int getCustomTabMode() { @@ -231,7 +231,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Inco diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java -@@ -10,6 +10,7 @@ import android.content.Context; +@@ -11,6 +11,7 @@ import android.content.Context; import android.content.Intent; import android.content.SharedPreferences; import android.graphics.drawable.Drawable; @@ -255,7 +255,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting import androidx.preference.PreferenceCategory; import org.chromium.chrome.browser.contextualsearch.ContextualSearchManager; import org.chromium.base.shared_preferences.SharedPreferencesManager; -@@ -152,6 +162,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment +@@ -153,6 +163,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment startTag, endTag, new ChromeClickableSpan(context, onClickCallback)); } @@ -327,7 +327,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc --- a/chrome/browser/flags/android/chrome_feature_list.cc +++ b/chrome/browser/flags/android/chrome_feature_list.cc -@@ -1093,7 +1093,7 @@ BASE_FEATURE(kMagicStackAndroid, +@@ -1153,7 +1153,7 @@ BASE_FEATURE(kMagicStackAndroid, // Enables an experimental feature which forces mayLaunchUrl to use a different // storage partition. This may reduce performance. This should not be enabled by // default. @@ -339,7 +339,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java --- 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 -@@ -943,6 +943,8 @@ public abstract class ChromeFeatureList { +@@ -991,6 +991,8 @@ public abstract class ChromeFeatureList { MOST_VISITED_TILES_CUSTOMIZATION, /* defaultValue= */ false, /* defaultValueInTests= */ true); @@ -348,7 +348,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f public static final CachedFlag sMostVisitedTilesReselect = newCachedFlag(MOST_VISITED_TILES_RESELECT, false); public static final CachedFlag sMultiInstanceApplicationStatusCleanup = -@@ -1165,6 +1167,7 @@ public abstract class ChromeFeatureList { +@@ -1226,6 +1228,7 @@ public abstract class ChromeFeatureList { sMiniOriginBar, sMitigateLegacySearchEnginePromoOverlap, sMostVisitedTilesCustomization, @@ -422,7 +422,7 @@ diff --git a/components/language/core/common/language_experiments.cc b/component +++ b/components/language/core/common/language_experiments.cc @@ -26,4 +26,5 @@ BASE_FEATURE(kDisableGeoLanguageModel, "DisableGeoLanguageModel", - base::FEATURE_DISABLED_BY_DEFAULT); + base::FEATURE_ENABLED_BY_DEFAULT); +SET_CROMITE_FEATURE_DISABLED(kCctAutoTranslate); } // namespace language diff --git a/build/cromite_patches/Add-exit-menu-item.patch b/build/cromite_patches/Add-exit-menu-item.patch index 417e77ad049d7901192a10f66f2e6e2a2f0b3ebf..4e1fc75c6c932df0798ceaff219d2b344ca3e642 100644 --- a/build/cromite_patches/Add-exit-menu-item.patch +++ b/build/cromite_patches/Add-exit-menu-item.patch @@ -17,7 +17,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/java/res/values/ids.xml b/chrome/android/java/res/values/ids.xml --- a/chrome/android/java/res/values/ids.xml +++ b/chrome/android/java/res/values/ids.xml -@@ -119,6 +119,7 @@ found in the LICENSE file. +@@ -121,6 +121,7 @@ found in the LICENSE file. @@ -28,16 +28,16 @@ diff --git a/chrome/android/java/res/values/ids.xml b/chrome/android/java/res/va diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java -@@ -345,6 +345,8 @@ import java.util.Map; - import java.util.Set; +@@ -352,6 +352,8 @@ import java.util.Set; import java.util.concurrent.atomic.AtomicBoolean; + import java.util.function.Supplier; +import org.chromium.chrome.browser.lifetime.ApplicationLifetime; + /** * This is the main activity for ChromeMobile when not running in document mode. All the tabs are * accessible via a chrome specific tab switching UI. -@@ -3692,6 +3694,8 @@ public class ChromeTabbedActivity extends ChromeActivity { +@@ -3820,6 +3822,8 @@ public class ChromeTabbedActivity extends ChromeActivity { .closeTabs( TabClosureParams.closeTab(currentTab).build(), /* allowDialog= */ true); RecordUserAction.record("MobileTabClosed"); @@ -49,7 +49,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java -@@ -59,6 +59,7 @@ import org.chromium.base.supplier.UnownedUserDataSupplier; +@@ -61,6 +61,7 @@ import org.chromium.base.supplier.UnownedUserDataSupplier; import org.chromium.chrome.R; import org.chromium.chrome.browser.ActivityTabProvider; import org.chromium.chrome.browser.ActivityUtils; @@ -57,7 +57,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv import org.chromium.chrome.browser.ChromeActivitySessionTracker; import org.chromium.chrome.browser.ChromeApplicationImpl; import org.chromium.chrome.browser.ChromeKeyboardVisibilityDelegate; -@@ -2445,6 +2446,11 @@ public abstract class ChromeActivity extends AsyncInitializationActivity +@@ -2481,6 +2482,11 @@ public abstract class ChromeActivity extends AsyncInitializationActivity return true; } @@ -91,7 +91,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeLife diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java -@@ -384,6 +384,13 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm +@@ -390,6 +390,13 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm maybeAddDividerLine(modelList, R.id.menu_item_content_filter_divider_line_id); modelList.add(buildContentFilterHelpCenterMenuItem(currentTab)); } @@ -108,7 +108,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd -@@ -4347,6 +4347,9 @@ To change this setting, BEGIN_LINKdelete the Chrome d +@@ -4311,6 +4311,9 @@ To change this setting, BEGIN_LINKdelete the Chrome d Dark theme diff --git a/build/cromite_patches/Add-flag-for-omnibox-autocomplete-filtering.patch b/build/cromite_patches/Add-flag-for-omnibox-autocomplete-filtering.patch index 73e47e1dd3d4f19eaaf511b7b674ade55437e639..5fa03a3d1c559159cb59d828b8c593a5ab3eeccc 100644 --- a/build/cromite_patches/Add-flag-for-omnibox-autocomplete-filtering.patch +++ b/build/cromite_patches/Add-flag-for-omnibox-autocomplete-filtering.patch @@ -66,7 +66,7 @@ diff --git a/components/omnibox/browser/search_provider.cc b/components/omnibox/ #include "base/functional/callback.h" #include "base/i18n/break_iterator.h" #include "base/i18n/case_conversion.h" -@@ -632,6 +633,9 @@ void SearchProvider::Run(bool query_is_private) { +@@ -637,6 +638,9 @@ void SearchProvider::Run(bool query_is_private) { } void SearchProvider::DoHistoryQuery(bool minimal_changes) { @@ -79,16 +79,16 @@ diff --git a/components/omnibox/browser/search_provider.cc b/components/omnibox/ diff --git a/components/url_formatter/url_fixer.cc b/components/url_formatter/url_fixer.cc --- a/components/url_formatter/url_fixer.cc +++ b/components/url_formatter/url_fixer.cc -@@ -15,6 +15,8 @@ - #include +@@ -11,6 +11,8 @@ #include "base/check_op.h" + #include "base/compiler_specific.h" +#include "base/containers/contains.h" +#include "base/command_line.h" #include "base/files/file_path.h" #include "base/files/file_util.h" #include "base/i18n/char_iterator.h" -@@ -648,6 +650,8 @@ GURL FixupURLInternal(const std::string& text, +@@ -644,6 +646,8 @@ GURL FixupURLInternal(const std::string& text, FixupHost(trimmed, parts.host, parts.scheme.is_valid(), desired_tld, &url); if (chrome_url && !parts.host.is_valid()) { diff --git a/build/cromite_patches/Add-flag-to-disable-IPv6-probes.patch b/build/cromite_patches/Add-flag-to-disable-IPv6-probes.patch index 1bf86135bbb8024a2ea51fa0a4c840e8bcdc8378..1c3be714b8e2249a88f0d15c3d171857c4dfcdf3 100644 --- a/build/cromite_patches/Add-flag-to-disable-IPv6-probes.patch +++ b/build/cromite_patches/Add-flag-to-disable-IPv6-probes.patch @@ -45,7 +45,7 @@ new file mode 100644 diff --git a/net/BUILD.gn b/net/BUILD.gn --- a/net/BUILD.gn +++ b/net/BUILD.gn -@@ -1157,6 +1157,7 @@ component("net") { +@@ -1167,6 +1167,7 @@ component("net") { ":net_deps", "//components/miracle_parameter/common", "//components/network_time/time_tracker", @@ -64,7 +64,7 @@ diff --git a/net/dns/host_resolver_manager.cc b/net/dns/host_resolver_manager.cc #include "net/log/net_log_with_source.h" #include "net/socket/client_socket_factory.h" #include "net/url_request/url_request_context.h" -@@ -1497,6 +1498,13 @@ int HostResolverManager::StartIPv6ReachabilityCheck( +@@ -1496,6 +1497,13 @@ int HostResolverManager::StartIPv6ReachabilityCheck( return OK; } diff --git a/build/cromite_patches/Add-flag-to-disable-external-intent-requests.patch b/build/cromite_patches/Add-flag-to-disable-external-intent-requests.patch index aa90eb26733cb4f85c0bd7ecd14306f50d9a73e0..10ff8e43bad41102e70d86c15189ba2dc8783940 100644 --- a/build/cromite_patches/Add-flag-to-disable-external-intent-requests.patch +++ b/build/cromite_patches/Add-flag-to-disable-external-intent-requests.patch @@ -49,7 +49,7 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabDelegateFactory.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabDelegateFactory.java --- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabDelegateFactory.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabDelegateFactory.java -@@ -36,6 +36,7 @@ import org.chromium.chrome.browser.ephemeraltab.EphemeralTabCoordinator; +@@ -35,6 +35,7 @@ import org.chromium.chrome.browser.ephemeraltab.EphemeralTabCoordinator; import org.chromium.chrome.browser.externalnav.ExternalNavigationDelegateImpl; import org.chromium.chrome.browser.flags.ActivityType; import org.chromium.chrome.browser.flags.ChromeFeatureList; @@ -57,7 +57,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust import org.chromium.chrome.browser.fullscreen.BrowserControlsManager; import org.chromium.chrome.browser.fullscreen.FullscreenManager; import org.chromium.chrome.browser.init.ChromeActivityNativeDelegate; -@@ -128,6 +129,7 @@ public class CustomTabDelegateFactory implements TabDelegateFactory { +@@ -152,6 +153,7 @@ public class CustomTabDelegateFactory implements TabDelegateFactory { @Override public boolean shouldDisableAllExternalIntents() { @@ -68,7 +68,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust diff --git a/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java --- a/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java -@@ -26,6 +26,7 @@ import org.chromium.base.supplier.Supplier; +@@ -25,6 +25,7 @@ import org.chromium.base.PackageManagerUtils; import org.chromium.build.annotations.NullMarked; import org.chromium.build.annotations.Nullable; import org.chromium.chrome.browser.ChromeTabbedActivity2; @@ -76,12 +76,12 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/externalnav/Ext import org.chromium.chrome.browser.IntentHandler; import org.chromium.chrome.browser.browserservices.intents.WebappConstants; import org.chromium.chrome.browser.document.ChromeLauncherActivity; -@@ -117,7 +118,8 @@ public class ExternalNavigationDelegateImpl implements ExternalNavigationDelegat - +@@ -119,7 +120,8 @@ public class ExternalNavigationDelegateImpl implements ExternalNavigationDelegat @Override - public boolean shouldDisableExternalIntentRequestsForUrl(GURL url) { + public boolean shouldDisableExternalIntentRequestsForUrl( + ExternalNavigationParams params, Intent intent) { - return false; -+ if ("tel".equals(url.getScheme())) return false; ++ if ("tel".equals(params.getUrl().getScheme())) return false; + return !sAllowExternalIntentRequests.getInstance().isEnabled(); } @@ -193,7 +193,7 @@ diff --git a/components/external_intents/android/java/src/org/chromium/component diff --git a/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalNavigationHandler.java b/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalNavigationHandler.java --- a/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalNavigationHandler.java +++ b/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalNavigationHandler.java -@@ -1558,6 +1558,12 @@ public class ExternalNavigationHandler { +@@ -1556,6 +1556,12 @@ public class ExternalNavigationHandler { || ignoreBackForwardNav(params); } @@ -206,7 +206,7 @@ diff --git a/components/external_intents/android/java/src/org/chromium/component private OverrideUrlLoadingResult shouldOverrideUrlLoadingInternal( ExternalNavigationParams params, Intent targetIntent, -@@ -1626,6 +1632,21 @@ public class ExternalNavigationHandler { +@@ -1624,6 +1630,21 @@ public class ExternalNavigationHandler { return OverrideUrlLoadingResult.forNoOverride(); } diff --git a/build/cromite_patches/Add-flag-to-disable-vibration.patch b/build/cromite_patches/Add-flag-to-disable-vibration.patch index 21ee820adc536f60d4161d966d7d02e09cd15d2a..4148cafc1b1cfdd4faab4f50ba2638b6dc27c58c 100644 --- a/build/cromite_patches/Add-flag-to-disable-vibration.patch +++ b/build/cromite_patches/Add-flag-to-disable-vibration.patch @@ -104,7 +104,7 @@ diff --git a/third_party/blink/renderer/platform/exported/web_runtime_features.c diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 -@@ -1011,6 +1011,10 @@ +@@ -1045,6 +1045,10 @@ { name: "CompositingDecisionAtAnimationPhaseBoundaries" }, diff --git a/build/cromite_patches/Add-lifetime-options-for-permissions.patch b/build/cromite_patches/Add-lifetime-options-for-permissions.patch index a3e22b0d5f3971045419e3097d60c0876f1274d9..9d45a22f88593787245ed76413ea494dd2fbb2df 100644 --- a/build/cromite_patches/Add-lifetime-options-for-permissions.patch +++ b/build/cromite_patches/Add-lifetime-options-for-permissions.patch @@ -233,7 +233,7 @@ diff --git a/chrome/browser/permissions/one_time_permissions_tracker_factory.cc diff --git a/chrome/browser/ui/views/permissions/chip/chip_controller.cc b/chrome/browser/ui/views/permissions/chip/chip_controller.cc --- a/chrome/browser/ui/views/permissions/chip/chip_controller.cc +++ b/chrome/browser/ui/views/permissions/chip/chip_controller.cc -@@ -227,7 +227,7 @@ void ChipController::OnWidgetDestroyed(views::Widget* widget) { +@@ -228,7 +228,7 @@ void ChipController::OnWidgetDestroyed(views::Widget* widget) { active_chip_permission_request_manager_.value()->Accept(); break; case permissions::PermissionAction::GRANTED_ONCE: @@ -269,7 +269,7 @@ diff --git a/chrome/browser/ui/views/permissions/permission_prompt_bubble_base_v diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java --- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java +++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java -@@ -630,6 +630,11 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment +@@ -634,6 +634,11 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment } @RequiresNonNull({"mSite"}) @@ -281,7 +281,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c private void setUpClearDataPreference() { ClearWebsiteStorage preference = findPreference(PREF_CLEAR_DATA); long usage = mSite.getTotalUsage(); -@@ -1316,6 +1321,10 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment +@@ -1240,6 +1245,10 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment .getDefaultColor()); } } @@ -295,7 +295,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c diff --git a/components/browser_ui/site_settings/android/website_preference_bridge.cc b/components/browser_ui/site_settings/android/website_preference_bridge.cc --- a/components/browser_ui/site_settings/android/website_preference_bridge.cc +++ b/components/browser_ui/site_settings/android/website_preference_bridge.cc -@@ -218,7 +218,7 @@ void GetOrigins(JNIEnv* env, +@@ -223,7 +223,7 @@ void GetOrigins(JNIEnv* env, seen_origins.push_back(origin); insertionFunc(env, static_cast(content_type), list, ConvertOriginToJavaString(env, origin), jembedder, @@ -365,7 +365,7 @@ diff --git a/components/content_settings/core/browser/content_settings_utils.cc bool CanTrackLastVisit(ContentSettingsType type) { DCHECK(WebsiteSettingsRegistry::GetInstance()->Get(type)) << type; -@@ -261,10 +297,6 @@ const std::vector& GetTypesWithTemporaryGrants() { +@@ -273,10 +309,6 @@ const std::vector& GetTypesWithTemporaryGrants() { ContentSettingsType::CAPTURED_SURFACE_CONTROL, #endif ContentSettingsType::KEYBOARD_LOCK, @@ -376,7 +376,7 @@ diff --git a/components/content_settings/core/browser/content_settings_utils.cc ContentSettingsType::HAND_TRACKING, ContentSettingsType::SMART_CARD_DATA, ContentSettingsType::AR, -@@ -280,10 +312,6 @@ const std::vector& GetTypesWithTemporaryGrantsInHcsm() { +@@ -292,10 +324,6 @@ const std::vector& GetTypesWithTemporaryGrantsInHcsm() { ContentSettingsType::CAPTURED_SURFACE_CONTROL, #endif ContentSettingsType::KEYBOARD_LOCK, @@ -425,34 +425,33 @@ diff --git a/components/content_settings/core/common/content_settings_enums.mojo diff --git a/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoController.java b/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoController.java --- a/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoController.java +++ b/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoController.java -@@ -378,9 +378,9 @@ public class PageInfoController - String name, - String nameMidSentence, - int type, -- @ContentSettingValues int currentSettingValue) { -+ @ContentSettingValues int currentSettingValue, boolean is_user_session) { - mPermissionParamsListBuilder.addPermissionEntry( -- name, nameMidSentence, type, currentSettingValue); -+ name, nameMidSentence, type, currentSettingValue, is_user_session); +@@ -374,8 +374,8 @@ public class PageInfoController + */ + @CalledByNative + private void addPermissionSection( +- String name, String nameMidSentence, int type, boolean allowed) { +- mPermissionParamsListBuilder.addPermissionEntry(name, nameMidSentence, type, allowed); ++ String name, String nameMidSentence, int type, boolean allowed, boolean is_user_session) { ++ mPermissionParamsListBuilder.addPermissionEntry(name, nameMidSentence, type, allowed, is_user_session); } /** Update the permissions view based on the contents of mDisplayedPermissions. */ diff --git a/components/page_info/android/java/src/org/chromium/components/page_info/PermissionParamsListBuilder.java b/components/page_info/android/java/src/org/chromium/components/page_info/PermissionParamsListBuilder.java --- a/components/page_info/android/java/src/org/chromium/components/page_info/PermissionParamsListBuilder.java +++ b/components/page_info/android/java/src/org/chromium/components/page_info/PermissionParamsListBuilder.java -@@ -48,8 +48,9 @@ public class PermissionParamsListBuilder { +@@ -46,8 +46,9 @@ public class PermissionParamsListBuilder { + mEntries = new ArrayList<>(); } - public void addPermissionEntry( -- String name, String nameMidSentence, int type, @ContentSettingValues int value) { -- mEntries.add(new PageInfoPermissionEntry(name, nameMidSentence, type, value)); -+ String name, String nameMidSentence, int type, @ContentSettingValues int value, +- public void addPermissionEntry(String name, String nameMidSentence, int type, boolean allowed) { +- mEntries.add(new PageInfoPermissionEntry(name, nameMidSentence, type, allowed)); ++ public void addPermissionEntry(String name, String nameMidSentence, int type, boolean allowed, + boolean is_user_session) { -+ mEntries.add(new PageInfoPermissionEntry(name, nameMidSentence, type, value, is_user_session)); ++ mEntries.add(new PageInfoPermissionEntry(name, nameMidSentence, type, allowed, is_user_session)); } public void clearPermissionEntries() { -@@ -85,6 +86,10 @@ public class PermissionParamsListBuilder { +@@ -84,6 +85,10 @@ public class PermissionParamsListBuilder { } else { warningTextResource = R.string.page_info_android_permission_blocked; } @@ -461,21 +460,20 @@ diff --git a/components/page_info/android/java/src/org/chromium/components/page_ + R.string.page_info_android_permission_session_permission; + } } - } else { - assert permission.setting == ContentSettingValues.ASK -@@ -121,13 +126,15 @@ public class PermissionParamsListBuilder { + } + +@@ -112,12 +117,14 @@ public class PermissionParamsListBuilder { public final String nameMidSentence; public final int type; - public final @ContentSettingValues int setting; + public final boolean allowed; + public final boolean is_user_session; - PageInfoPermissionEntry( -- String name, String nameMidSentence, int type, @ContentSettingValues int setting) { -+ String name, String nameMidSentence, int type, @ContentSettingValues int setting, boolean is_user_session) { +- PageInfoPermissionEntry(String name, String nameMidSentence, int type, boolean allowed) { ++ PageInfoPermissionEntry(String name, String nameMidSentence, int type, boolean allowed, boolean is_user_session) { this.name = name; this.nameMidSentence = nameMidSentence; this.type = type; - this.setting = setting; + this.allowed = allowed; + this.is_user_session = is_user_session; } @@ -483,35 +481,35 @@ diff --git a/components/page_info/android/java/src/org/chromium/components/page_ diff --git a/components/page_info/android/page_info_controller_android.cc b/components/page_info/android/page_info_controller_android.cc --- a/components/page_info/android/page_info_controller_android.cc +++ b/components/page_info/android/page_info_controller_android.cc -@@ -186,6 +186,8 @@ void PageInfoControllerAndroid::SetPermissionInfo( +@@ -199,6 +199,8 @@ void PageInfoControllerAndroid::SetPermissionInfo( - std::map + std::map user_specified_settings_to_display; + std::map + user_specified_settings_is_user_session; for (const auto& permission : permission_info_list) { if (base::Contains(permissions_to_display, permission.type)) { -@@ -194,6 +196,8 @@ void PageInfoControllerAndroid::SetPermissionInfo( - if (setting_to_display) { +@@ -211,6 +213,8 @@ void PageInfoControllerAndroid::SetPermissionInfo( + user_specified_settings_to_display[permission.type] = - *setting_to_display; + info->delegate().IsAnyPermissionAllowed(*setting_to_display); + user_specified_settings_is_user_session[permission.type] = + permission.is_user_session; } } } -@@ -210,7 +214,8 @@ void PageInfoControllerAndroid::SetPermissionInfo( +@@ -227,7 +231,8 @@ void PageInfoControllerAndroid::SetPermissionInfo( ConvertUTF16ToJavaString(env, setting_title), ConvertUTF16ToJavaString(env, setting_title_mid_sentence), static_cast(permission), -- static_cast(user_specified_settings_to_display[permission])); -+ static_cast(user_specified_settings_to_display[permission]), +- user_specified_settings_to_display[permission]); ++ user_specified_settings_to_display[permission], + user_specified_settings_is_user_session[permission]); } } -@@ -223,7 +228,8 @@ void PageInfoControllerAndroid::SetPermissionInfo( +@@ -240,7 +245,8 @@ void PageInfoControllerAndroid::SetPermissionInfo( env, controller_jobject_, ConvertUTF16ToJavaString(env, object_title), ConvertUTF16ToJavaString(env, object_title), static_cast(chosen_object->ui_info->content_settings_type), @@ -524,15 +522,15 @@ diff --git a/components/page_info/android/page_info_controller_android.cc b/comp diff --git a/components/page_info/page_info.cc b/components/page_info/page_info.cc --- a/components/page_info/page_info.cc +++ b/components/page_info/page_info.cc -@@ -1256,6 +1256,8 @@ void PageInfo::PopulatePermissionInfo(PermissionInfo& permission_info, +@@ -1293,6 +1293,8 @@ void PageInfo::PopulatePermissionInfo(PermissionInfo& permission_info, permission_info.is_one_time = (info.metadata.session_model() == content_settings::mojom::SessionModel::ONE_TIME); + permission_info.is_user_session = + (info.metadata.session_model() == content_settings::mojom::SessionModel::USER_SESSION); - auto* page_specific_content_settings = GetPageSpecificContentSettings(); - if (page_specific_content_settings && setting == CONTENT_SETTING_ALLOW) { + auto* setting_info = + content_settings::PermissionSettingsRegistry::GetInstance()->Get( diff --git a/components/page_info/page_info.h b/components/page_info/page_info.h --- a/components/page_info/page_info.h +++ b/components/page_info/page_info.h @@ -962,7 +960,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr diff --git a/components/permissions/embedded_permission_prompt_flow_model.cc b/components/permissions/embedded_permission_prompt_flow_model.cc --- a/components/permissions/embedded_permission_prompt_flow_model.cc +++ b/components/permissions/embedded_permission_prompt_flow_model.cc -@@ -295,7 +295,7 @@ void EmbeddedPermissionPromptFlowModel::SetDelegateAction( +@@ -294,7 +294,7 @@ void EmbeddedPermissionPromptFlowModel::SetDelegateAction( delegate_->Accept(); break; case DelegateAction::kAllowThisTime: @@ -974,7 +972,7 @@ diff --git a/components/permissions/embedded_permission_prompt_flow_model.cc b/c diff --git a/components/permissions/permission_context_base.cc b/components/permissions/permission_context_base.cc --- a/components/permissions/permission_context_base.cc +++ b/components/permissions/permission_context_base.cc -@@ -260,6 +260,17 @@ PermissionContextBase::CreatePermissionRequest( +@@ -267,6 +267,17 @@ PermissionContextBase::CreatePermissionRequest( std::move(request_finished_callback), UsesAutomaticEmbargo()); } @@ -992,7 +990,7 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm bool PermissionContextBase::UsesAutomaticEmbargo() const { return true; } -@@ -551,7 +562,8 @@ void PermissionContextBase::DecidePermission( +@@ -571,7 +582,8 @@ void PermissionContextBase::DecidePermission( void PermissionContextBase::PermissionDecided( PermissionDecision decision, bool is_final_decision, @@ -1002,7 +1000,7 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm UserMadePermissionDecision(request_data.id, request_data.requesting_origin, request_data.embedding_origin, decision); -@@ -564,11 +576,12 @@ void PermissionContextBase::PermissionDecided( +@@ -584,11 +596,12 @@ void PermissionContextBase::PermissionDecided( // missing if a permission prompt was preignored and we already notified an // origin about it. if (request->second.second) { @@ -1019,7 +1017,7 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm } } -@@ -653,6 +666,30 @@ void PermissionContextBase::NotifyPermissionSet( +@@ -673,6 +686,30 @@ void PermissionContextBase::NotifyPermissionSet( bool persist, PermissionDecision decision, bool is_final_decision) { @@ -1050,18 +1048,18 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm DCHECK_CURRENTLY_ON(content::BrowserThread::UI); // Note that rfh may be null, see crbug.com/426909787. -@@ -668,8 +705,8 @@ void PermissionContextBase::NotifyPermissionSet( +@@ -688,8 +725,8 @@ void PermissionContextBase::NotifyPermissionSet( if (persist) { // Clone new value, because we need it again for the callback. -- UpdateSetting(request_data, std::move(new_value), +- UpdateSetting(request_data, new_value, - decision == PermissionDecision::kAllowThisTime); -+ UpdateSettingImpl(request_data, std::move(new_value), ++ UpdateSettingImpl(request_data, new_value, + decision == PermissionDecision::kAllowThisTime, use_lifetime_option, lifetime_option); } if (is_final_decision) { -@@ -706,6 +743,17 @@ void PermissionContextBase::UpdateSetting( +@@ -727,6 +764,17 @@ void PermissionContextBase::UpdateSetting( const PermissionRequestData& request_data, PermissionSetting setting, bool is_one_time) { @@ -1079,15 +1077,15 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm DCHECK_EQ(request_data.requesting_origin, request_data.requesting_origin.DeprecatedGetOriginAsURL()); DCHECK_EQ(request_data.embedding_origin, -@@ -715,6 +763,8 @@ void PermissionContextBase::UpdateSetting( +@@ -736,6 +784,8 @@ void PermissionContextBase::UpdateSetting( constraints.set_session_model( is_one_time ? content_settings::mojom::SessionModel::ONE_TIME : content_settings::mojom::SessionModel::DURABLE); + if (use_lifetime_option) + constraints = content_settings::GetConstraintSessionExpiration(lifetime_option); - // The Permissions module in Safety check will revoke permissions after - // a finite amount of time if the permission can be revoked. + // The unused permissions module in Safety check will revoke unused site + // permissions after a finite amount of time if the permission can be revoked. diff --git a/components/permissions/permission_context_base.h b/components/permissions/permission_context_base.h --- a/components/permissions/permission_context_base.h +++ b/components/permissions/permission_context_base.h @@ -1276,7 +1274,7 @@ diff --git a/components/permissions/permission_request.h b/components/permission diff --git a/components/permissions/permission_request_manager.cc b/components/permissions/permission_request_manager.cc --- a/components/permissions/permission_request_manager.cc +++ b/components/permissions/permission_request_manager.cc -@@ -198,7 +198,7 @@ void PermissionRequestManager::AddRequest( +@@ -201,7 +201,7 @@ void PermissionRequestManager::AddRequest( if (base::CommandLine::ForCurrentProcess()->HasSwitch( switches::kDenyPermissionPrompts)) { @@ -1285,7 +1283,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p return; } -@@ -267,7 +267,7 @@ void PermissionRequestManager::AddRequest( +@@ -270,7 +270,7 @@ void PermissionRequestManager::AddRequest( if (should_auto_approve_request) { if (should_auto_approve_request == PermissionAction::GRANTED) { @@ -1294,7 +1292,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p } return; } -@@ -626,7 +626,8 @@ void PermissionRequestManager::Accept() { +@@ -597,7 +597,8 @@ void PermissionRequestManager::Accept() { (*requests_iter)->request_type(), PermissionAction::GRANTED); PermissionGrantedIncludingDuplicates(requests_iter->get(), @@ -1304,7 +1302,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p #if !BUILDFLAG(IS_ANDROID) std::optional content_settings_type = -@@ -644,7 +645,7 @@ void PermissionRequestManager::Accept() { +@@ -615,7 +616,7 @@ void PermissionRequestManager::Accept() { CurrentRequestsDecided(PermissionAction::GRANTED); } @@ -1313,7 +1311,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p if (ignore_callbacks_from_prompt_) { return; } -@@ -658,7 +659,8 @@ void PermissionRequestManager::AcceptThisTime() { +@@ -629,7 +630,8 @@ void PermissionRequestManager::AcceptThisTime() { (*requests_iter)->request_type(), PermissionAction::GRANTED_ONCE); PermissionGrantedIncludingDuplicates(requests_iter->get(), @@ -1323,7 +1321,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p } NotifyRequestDecided(PermissionAction::GRANTED_ONCE); -@@ -666,6 +668,15 @@ void PermissionRequestManager::AcceptThisTime() { +@@ -637,6 +639,15 @@ void PermissionRequestManager::AcceptThisTime() { } void PermissionRequestManager::Deny() { @@ -1339,7 +1337,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p if (ignore_callbacks_from_prompt_) { return; } -@@ -688,7 +699,7 @@ void PermissionRequestManager::Deny() { +@@ -659,7 +670,7 @@ void PermissionRequestManager::Deny() { StorePermissionActionForUMA((*requests_iter)->requesting_origin(), (*requests_iter)->request_type(), PermissionAction::DENIED); @@ -1348,7 +1346,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p } NotifyRequestDecided(PermissionAction::DENIED); -@@ -1300,32 +1311,32 @@ PermissionRequestManager::VisitDuplicateRequests( +@@ -1283,32 +1294,32 @@ PermissionRequestManager::VisitDuplicateRequests( void PermissionRequestManager::PermissionGrantedIncludingDuplicates( PermissionRequest* request, @@ -1391,7 +1389,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p request); } -@@ -1596,7 +1607,7 @@ void PermissionRequestManager::DoAutoResponseForTesting() { +@@ -1578,7 +1589,7 @@ void PermissionRequestManager::DoAutoResponseForTesting() { } switch (auto_response_for_test_) { case ACCEPT_ONCE: @@ -1403,7 +1401,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p diff --git a/components/permissions/permission_request_manager.h b/components/permissions/permission_request_manager.h --- a/components/permissions/permission_request_manager.h +++ b/components/permissions/permission_request_manager.h -@@ -166,8 +166,10 @@ class PermissionRequestManager +@@ -168,8 +168,10 @@ class PermissionRequestManager GURL GetRequestingOrigin() const override; GURL GetEmbeddingOrigin() const override; void Accept() override; @@ -1415,7 +1413,7 @@ diff --git a/components/permissions/permission_request_manager.h b/components/pe void Dismiss() override; void Ignore() override; void FinalizeCurrentRequests() override; -@@ -413,9 +415,12 @@ class PermissionRequestManager +@@ -419,9 +421,12 @@ class PermissionRequestManager // Calls PermissionGranted on a request and all its duplicates. void PermissionGrantedIncludingDuplicates(PermissionRequest* request, diff --git a/build/cromite_patches/Add-menu-item-to-bookmark-all-tabs.patch b/build/cromite_patches/Add-menu-item-to-bookmark-all-tabs.patch index cb4ac3e5a40aec38e9d2feadae38a345e04824c5..24ae12087effbc19424dd3dbbe5456ad895e3050 100644 --- a/build/cromite_patches/Add-menu-item-to-bookmark-all-tabs.patch +++ b/build/cromite_patches/Add-menu-item-to-bookmark-all-tabs.patch @@ -16,6 +16,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../dialogs/DownloadLocationCustomView.java | 4 +- .../strings/android_chrome_strings.grd | 3 ++ .../bookmark_ui_operations_helper.cc | 2 + + .../bookmark_bar_page_handler.cc | 2 + components/bookmark_bar_strings.grdp | 6 +++ .../bookmarks/browser/bookmark_codec.cc | 20 +++++++-- components/bookmarks/browser/bookmark_codec.h | 7 ++- @@ -30,12 +31,12 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html components/bookmarks/browser/bookmark_uuids.h | 1 + components/bookmarks/browser/model_loader.cc | 9 +++- .../bookmark_specifics_conversions.cc | 1 + - 26 files changed, 255 insertions(+), 14 deletions(-) + 27 files changed, 257 insertions(+), 14 deletions(-) diff --git a/chrome/android/java/res/values/ids.xml b/chrome/android/java/res/values/ids.xml --- a/chrome/android/java/res/values/ids.xml +++ b/chrome/android/java/res/values/ids.xml -@@ -180,6 +180,7 @@ found in the LICENSE file. +@@ -187,6 +187,7 @@ found in the LICENSE file. @@ -46,7 +47,7 @@ diff --git a/chrome/android/java/res/values/ids.xml b/chrome/android/java/res/va diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java -@@ -103,6 +103,7 @@ import org.chromium.chrome.browser.bookmarks.BookmarkPane; +@@ -102,6 +102,7 @@ import org.chromium.chrome.browser.bookmarks.BookmarkPane; import org.chromium.chrome.browser.bookmarks.BookmarkUtils; import org.chromium.chrome.browser.browserservices.intents.WebappConstants; import org.chromium.chrome.browser.compositor.CompositorViewHolder; @@ -54,7 +55,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct import org.chromium.chrome.browser.compositor.layouts.Layout; import org.chromium.chrome.browser.compositor.layouts.LayoutManagerChrome; import org.chromium.chrome.browser.compositor.layouts.LayoutManagerChromePhone; -@@ -287,6 +288,9 @@ import org.chromium.chrome.browser.ui.browser_window.ChromeAndroidTaskTrackerFac +@@ -292,6 +293,9 @@ import org.chromium.chrome.browser.ui.browser_window.ChromeAndroidTaskTrackerFac import org.chromium.chrome.browser.ui.desktop_windowing.AppHeaderUtils; import org.chromium.chrome.browser.ui.edge_to_edge.EdgeToEdgeUtils; import org.chromium.chrome.browser.ui.extensions.windowing.ExtensionWindowControllerBridgeFactory; @@ -64,25 +65,25 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct import org.chromium.chrome.browser.ui.searchactivityutils.SearchActivityClient; import org.chromium.chrome.browser.ui.searchactivityutils.SearchActivityExtras.IntentOrigin; import org.chromium.chrome.browser.ui.signin.BottomSheetSigninAndHistorySyncConfig; -@@ -298,6 +302,8 @@ import org.chromium.chrome.browser.usage_stats.UsageStatsService; +@@ -303,6 +307,8 @@ import org.chromium.chrome.browser.usage_stats.UsageStatsService; import org.chromium.chrome.browser.util.ChromeAccessibilityUtil; import org.chromium.chrome.browser.xr.scenecore.XrSceneCoreSessionInitializerImpl; import org.chromium.chrome.browser.xr.scenecore.XrSceneCoreSessionManagerImpl; +import org.chromium.components.bookmarks.BookmarkId; +import org.chromium.components.bookmarks.BookmarkItem; 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; -@@ -3724,6 +3730,8 @@ public class ChromeTabbedActivity extends ChromeActivity { - getTabModelSelectorSupplier().get(), - closeAllTabsRunnable); + import org.chromium.components.browser_ui.util.BrowserControlsVisibilityDelegate; + import org.chromium.components.browser_ui.util.ComposedBrowserControlsVisibilityDelegate; +@@ -3848,6 +3854,8 @@ public class ChromeTabbedActivity extends ChromeActivity { + CloseAllTabsDialog.show( + this, getModalDialogManagerSupplier(), tabModelSelector, closeAllTabsRunnable); RecordUserAction.record("MobileMenuCloseAllTabs"); + } else if (id == R.id.bookmark_all_tabs_menu_id) { + bookmarkAllTabs(); } else if (id == R.id.close_all_incognito_tabs_menu_id) { boolean allowUndo = TabClosureParamsUtils.shouldAllowUndo(triggeringMotion); -@@ -3848,6 +3856,41 @@ public class ChromeTabbedActivity extends ChromeActivity { +@@ -3970,6 +3978,41 @@ public class ChromeTabbedActivity extends ChromeActivity { getTabModalLifetimeHandler().onOmniboxFocusChanged(hasFocus); } @@ -127,7 +128,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java --- 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 -@@ -270,6 +270,14 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm +@@ -271,6 +271,14 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm // Bookmarks modelList.add(buildBookmarksItem()); @@ -142,7 +143,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab // Recent Tabs if (shouldShowRecentTabsItem()) modelList.add(buildRecentTabsItem()); -@@ -434,6 +442,13 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm +@@ -448,6 +456,13 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm } modelList.add(buildCloseAllTabsItem()); if (shouldShowTinkerTank()) modelList.add(buildTinkerTankItem()); @@ -459,7 +460,7 @@ diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browse diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd -@@ -4482,6 +4482,9 @@ To change this setting, BEGIN_LINKdelete the Chrome d +@@ -4431,6 +4431,9 @@ To change this setting, BEGIN_LINKdelete the Chrome d Select tabs @@ -481,6 +482,18 @@ diff --git a/chrome/browser/ui/bookmarks/bookmark_ui_operations_helper.cc b/chro case bookmarks::BookmarkNode::URL: NOTREACHED(); case bookmarks::BookmarkNode::FOLDER: +diff --git a/chrome/browser/ui/webui_browser/bookmark_bar_page_handler.cc b/chrome/browser/ui/webui_browser/bookmark_bar_page_handler.cc +--- a/chrome/browser/ui/webui_browser/bookmark_bar_page_handler.cc ++++ b/chrome/browser/ui/webui_browser/bookmark_bar_page_handler.cc +@@ -37,6 +37,8 @@ bookmark_bar::mojom::BookmarkType ConvertType( + return bookmark_bar::mojom::BookmarkType::OTHER_NODE; + case bookmarks::BookmarkNode::MOBILE: + return bookmark_bar::mojom::BookmarkType::MOBILE; ++ case bookmarks::BookmarkNode::TABS_COLLECTION: ++ NOTREACHED(); + } + NOTREACHED(); + } diff --git a/components/bookmark_bar_strings.grdp b/components/bookmark_bar_strings.grdp --- a/components/bookmark_bar_strings.grdp +++ b/components/bookmark_bar_strings.grdp diff --git a/build/cromite_patches/Add-menu-item-to-view-source.patch b/build/cromite_patches/Add-menu-item-to-view-source.patch index 01f732f2b2cc4229a6edbf92fbec12732496571e..d9033c350c3516823e7eebdc601d227c6083f5ac 100644 --- a/build/cromite_patches/Add-menu-item-to-view-source.patch +++ b/build/cromite_patches/Add-menu-item-to-view-source.patch @@ -16,7 +16,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/java/res/values/ids.xml b/chrome/android/java/res/values/ids.xml --- a/chrome/android/java/res/values/ids.xml +++ b/chrome/android/java/res/values/ids.xml -@@ -129,6 +129,7 @@ found in the LICENSE file. +@@ -131,6 +131,7 @@ found in the LICENSE file. @@ -27,7 +27,7 @@ diff --git a/chrome/android/java/res/values/ids.xml b/chrome/android/java/res/va diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java -@@ -3764,6 +3764,8 @@ public class ChromeTabbedActivity extends ChromeActivity { +@@ -3884,6 +3884,8 @@ public class ChromeTabbedActivity extends ChromeActivity { NewTabPageUma.recordAction(NewTabPageUma.ACTION_OPENED_DOWNLOADS_MANAGER); } RecordUserAction.record("MobileMenuDownloadManager"); @@ -39,7 +39,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java -@@ -2602,6 +2602,11 @@ public abstract class ChromeActivity extends AsyncInitializationActivity +@@ -2638,6 +2638,11 @@ public abstract class ChromeActivity extends AsyncInitializationActivity return doOpenWebApk(currentTab); } @@ -54,7 +54,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java --- 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 -@@ -957,6 +957,30 @@ public abstract class AppMenuPropertiesDelegateImpl implements AppMenuProperties +@@ -974,6 +974,30 @@ public abstract class AppMenuPropertiesDelegateImpl implements AppMenuProperties return false; } @@ -101,7 +101,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java --- 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 -@@ -334,6 +334,9 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm +@@ -338,6 +338,9 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm modelList.add(buildAddToHomescreenListItem(currentTab, shouldShowIconBeforeItem())); } diff --git a/build/cromite_patches/Add-option-to-force-tablet-UI.patch b/build/cromite_patches/Add-option-to-force-tablet-UI.patch index 77221faa4f5f22a8ca629fefa971db76c21d7f07..8976f1cfca8b5464a85c8a805e46e8b4fbc8e180 100644 --- a/build/cromite_patches/Add-option-to-force-tablet-UI.patch +++ b/build/cromite_patches/Add-option-to-force-tablet-UI.patch @@ -99,15 +99,15 @@ diff --git a/chrome/android/java/res/values/dimens.xml b/chrome/android/java/res diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java -@@ -63,6 +63,7 @@ import org.chromium.chrome.browser.ui.edge_to_edge.EdgeToEdgeController; +@@ -62,6 +62,7 @@ import org.chromium.chrome.browser.ui.edge_to_edge.EdgeToEdgeController; import org.chromium.chrome.browser.ui.edge_to_edge.EdgeToEdgeControllerCreator; import org.chromium.chrome.browser.ui.edge_to_edge.EdgeToEdgeFieldTrialImpl; import org.chromium.chrome.browser.ui.edge_to_edge.EdgeToEdgeUtils; +import org.chromium.chrome.browser.preferences.ChromeSharedPreferences; import org.chromium.chrome.browser.ui.edge_to_edge.SimpleEdgeToEdgeController; - import org.chromium.components.browser_ui.edge_to_edge.EdgeToEdgeManager; - import org.chromium.components.browser_ui.edge_to_edge.EdgeToEdgeStateProvider; -@@ -145,6 +146,8 @@ public class ChromeBaseAppCompatActivity extends AppCompatActivity + import org.chromium.components.browser_ui.styles.SemanticColorUtils; + import org.chromium.components.browser_ui.util.AutomotiveUtils; +@@ -142,6 +143,8 @@ public class ChromeBaseAppCompatActivity extends AppCompatActivity protected void attachBaseContext(Context newBase) { super.attachBaseContext(newBase); @@ -119,15 +119,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeBaseAppCo diff --git a/chrome/android/java/src/org/chromium/chrome/browser/WarmupManager.java b/chrome/android/java/src/org/chromium/chrome/browser/WarmupManager.java --- a/chrome/android/java/src/org/chromium/chrome/browser/WarmupManager.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/WarmupManager.java -@@ -69,6 +69,7 @@ import org.chromium.content_public.browser.WebContents; - import org.chromium.content_public.browser.WebContentsObserver; - import org.chromium.net.NetId; +@@ -63,6 +63,7 @@ import org.chromium.chrome.browser.toolbar.ControlContainer; + import org.chromium.components.embedder_support.util.UrlConstants; + import org.chromium.content_public.browser.WebContents; import org.chromium.ui.LayoutInflaterUtils; +import org.chromium.ui.base.DeviceFormFactor; import org.chromium.ui.base.WindowAndroid; import org.chromium.ui.display.DisplayUtil; import org.chromium.url.GURL; -@@ -491,7 +492,9 @@ public class WarmupManager { +@@ -472,7 +473,9 @@ public class WarmupManager { ControlContainer controlContainer = mainView.findViewById(R.id.control_container); if (toolbarId != ActivityUtils.NO_RESOURCE_ID && controlContainer != null) { @@ -170,7 +170,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/s diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java -@@ -791,7 +791,9 @@ public abstract class ChromeActivity extends AsyncInitializationActivity +@@ -803,7 +803,9 @@ public abstract class ChromeActivity extends AsyncInitializationActivity // Inflate the correct toolbar layout for the device. int toolbarLayoutId = getToolbarLayoutId(); if (toolbarLayoutId != ActivityUtils.NO_RESOURCE_ID && controlContainer != null) { @@ -184,7 +184,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelper.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelper.java --- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelper.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelper.java -@@ -127,6 +127,7 @@ import org.chromium.components.tab_group_sync.TabGroupSyncService; +@@ -130,6 +130,7 @@ import org.chromium.components.tab_group_sync.TabGroupSyncService; import org.chromium.components.tab_group_sync.TriggerSource; import org.chromium.components.tab_groups.TabGroupColorId; import org.chromium.ui.accessibility.AccessibilityState; @@ -192,7 +192,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over import org.chromium.ui.base.LocalizationUtils; import org.chromium.ui.base.WindowAndroid; import org.chromium.ui.util.ColorUtils; -@@ -4955,8 +4956,13 @@ public class StripLayoutHelper +@@ -5147,8 +5148,13 @@ public class StripLayoutHelper mCloseButtonMenu.setAnchorView(tabView); // 3. Set the vertical offset to align the close button menu with bottom of the tab strip int tabHeight = mManagerHost.getHeight(); @@ -219,7 +219,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over import org.chromium.ui.base.LocalizationUtils; import org.chromium.ui.base.PageTransition; import org.chromium.ui.base.WindowAndroid; -@@ -495,7 +496,10 @@ public class StripLayoutHelperManager +@@ -498,7 +499,10 @@ public class StripLayoutHelperManager mIsLayoutOptimizationsEnabled = ToolbarFeatures.isTabStripWindowLayoutOptimizationEnabled( /* isTablet= */ true, DisplayUtil.isContextInDefaultDisplay(mContext)); @@ -234,7 +234,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/TabStripSceneLayer.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/TabStripSceneLayer.java --- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/TabStripSceneLayer.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/TabStripSceneLayer.java -@@ -111,6 +111,14 @@ public class TabStripSceneLayer extends SceneOverlayLayer { +@@ -120,6 +120,14 @@ public class TabStripSceneLayer extends SceneOverlayLayer { if (mNativePtr == 0) return; final boolean visible = yOffset > -layoutHelper.getHeight(); @@ -252,15 +252,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/scen diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrowserInitializer.java b/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrowserInitializer.java --- a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrowserInitializer.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrowserInitializer.java -@@ -16,6 +16,7 @@ import org.chromium.base.library_loader.LibraryProcessType; - import org.chromium.base.task.ChainedTasks; - import org.chromium.base.task.TaskTraits; +@@ -18,6 +18,7 @@ import org.chromium.base.task.TaskTraits; + import org.chromium.build.annotations.NullMarked; + import org.chromium.build.annotations.Nullable; import org.chromium.chrome.browser.flags.ChromeSwitches; +import org.chromium.chrome.browser.preferences.ChromeSharedPreferences; import org.chromium.chrome.browser.profiles.ProfileManager; import org.chromium.chrome.browser.signin.SigninCheckerProvider; import org.chromium.components.background_task_scheduler.BackgroundTaskSchedulerFactory; -@@ -106,6 +107,7 @@ public class ChromeBrowserInitializer { +@@ -109,6 +110,7 @@ public class ChromeBrowserInitializer { public void handlePreNativeStartupAndLoadLibraries(final BrowserParts parts) { ThreadUtils.checkUiThread(); if (parts.isActivityFinishingOrDestroyed()) return; @@ -271,7 +271,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrow diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java --- 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 -@@ -747,7 +747,9 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { +@@ -762,7 +762,9 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { @Override public int getControlContainerHeightResource() { @@ -285,7 +285,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java b/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java --- a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java -@@ -108,6 +108,8 @@ import org.chromium.chrome.browser.paint_preview.DemoPaintPreview; +@@ -107,6 +107,8 @@ import org.chromium.chrome.browser.paint_preview.DemoPaintPreview; import org.chromium.chrome.browser.password_manager.ManagePasswordsReferrer; import org.chromium.chrome.browser.password_manager.PasswordManagerLauncher; import org.chromium.chrome.browser.pdf.PdfPage; @@ -319,7 +319,7 @@ diff --git a/chrome/browser/preferences/BUILD.gn b/chrome/browser/preferences/BU diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java --- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java +++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java -@@ -317,6 +317,7 @@ public final class ChromePreferenceKeys { +@@ -321,6 +321,7 @@ public final class ChromePreferenceKeys { /** Whether the app-specific history info text was already seen by users. */ public static final String HISTORY_APP_SPECIFIC_INFO_SEEN = "Chrome.History.AppSpecificInfoSeen"; @@ -371,8 +371,8 @@ diff --git a/chrome/browser/ui/android/desktop_windowing/java/src/org/chromium/c --- a/chrome/browser/ui/android/desktop_windowing/java/src/org/chromium/chrome/browser/ui/desktop_windowing/AppHeaderCoordinator.java +++ b/chrome/browser/ui/android/desktop_windowing/java/src/org/chromium/chrome/browser/ui/desktop_windowing/AppHeaderCoordinator.java @@ -42,6 +42,7 @@ import org.chromium.components.browser_ui.desktop_windowing.DesktopWindowStateMa - import org.chromium.components.browser_ui.edge_to_edge.EdgeToEdgeStateProvider; import org.chromium.ui.display.DisplayUtil; + import org.chromium.ui.edge_to_edge.EdgeToEdgeStateProvider; import org.chromium.ui.insets.CaptionBarInsetsRectProvider; +import org.chromium.ui.base.DeviceFormFactor; import org.chromium.ui.insets.InsetObserver; @@ -389,7 +389,7 @@ diff --git a/chrome/browser/ui/android/desktop_windowing/java/src/org/chromium/c diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java --- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java +++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java -@@ -833,7 +833,7 @@ public class LocationBarCoordinator +@@ -862,7 +862,7 @@ public class LocationBarCoordinator } private boolean isTabletWindow() { @@ -401,7 +401,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd -@@ -1531,6 +1531,13 @@ Your Google account may have other forms of browsing history like searches and a +@@ -1483,6 +1483,13 @@ Your Google account may have other forms of browsing history like searches and a Privacy guide explanation closed @@ -422,24 +422,25 @@ diff --git a/chrome/browser/ui/android/toolbar/java/res/layout/control_container android:id="@+id/control_container" android:layout_width="match_parent" android:layout_height="wrap_content" -- android:minHeight="@dimen/control_container_height" > -+ android:minHeight="@dimen/control_container_height_cromite" > +- android:minHeight="@dimen/control_container_height"> ++ android:minHeight="@dimen/control_container_height_cromite"> - + app:layout_anchorGravity="bottom" +- /> + android:layout_marginTop="@dimen/control_container_height_cromite" /> 2dp 64dp - + 72dp diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/ControlContainer.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/ControlContainer.java --- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/ControlContainer.java +++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/ControlContainer.java -@@ -27,7 +27,7 @@ public interface ControlContainer { +@@ -26,7 +26,7 @@ public interface ControlContainer { * * @param toolbarLayoutId The ID of the toolbar layout to use. */ @@ -515,7 +516,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow import android.graphics.Canvas; import android.graphics.Color; import android.graphics.PorterDuff; -@@ -163,8 +164,25 @@ public class ToolbarControlContainer extends OptimizedFrameLayout +@@ -165,8 +166,25 @@ public class ToolbarControlContainer extends OptimizedFrameLayout @Override @Initializer @@ -545,7 +546,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarLayout.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarLayout.java --- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarLayout.java +++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarLayout.java -@@ -66,6 +66,7 @@ import org.chromium.chrome.browser.util.BrowserUiUtils.ModuleTypeOnStartAndNtp; +@@ -64,6 +64,7 @@ import org.chromium.chrome.browser.util.BrowserUiUtils.ModuleTypeOnStartAndNtp; import org.chromium.components.feature_engagement.Tracker; import org.chromium.ui.base.ViewUtils; import org.chromium.ui.util.MotionEventUtils; @@ -553,7 +554,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow import org.chromium.ui.util.TokenHolder; import org.chromium.url.GURL; -@@ -594,7 +595,9 @@ public abstract class ToolbarLayout extends FrameLayout +@@ -581,7 +582,9 @@ public abstract class ToolbarLayout extends FrameLayout * not have a tab strip. */ protected int getTabStripHeightFromResource() { diff --git a/build/cromite_patches/Add-option-to-not-persist-tabs-across-sessions.patch b/build/cromite_patches/Add-option-to-not-persist-tabs-across-sessions.patch index 5526a6338fcb73f750377acc02e08404619f47e7..46458afbdc92e225956e2a8ef6d4cea7a64ef178 100644 --- a/build/cromite_patches/Add-option-to-not-persist-tabs-across-sessions.patch +++ b/build/cromite_patches/Add-option-to-not-persist-tabs-across-sessions.patch @@ -4,11 +4,11 @@ Subject: Add option to not persist tabs across sessions License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html --- - .../android/java/res/xml/privacy_preferences.xml | 5 +++++ - .../chrome/browser/ChromeTabbedActivity.java | 5 ++++- - .../privacy/settings/PrivacySettings.java | 16 +++++++++++++++- - .../android/strings/android_chrome_strings.grd | 6 ++++++ - 4 files changed, 30 insertions(+), 2 deletions(-) + .../android/java/res/xml/privacy_preferences.xml | 5 +++++ + .../chrome/browser/ChromeTabbedActivity.java | 5 ++++- + .../browser/privacy/settings/PrivacySettings.java | 15 ++++++++++++++- + .../ui/android/strings/android_chrome_strings.grd | 6 ++++++ + 4 files changed, 29 insertions(+), 2 deletions(-) diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml --- a/chrome/android/java/res/xml/privacy_preferences.xml @@ -36,7 +36,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct import org.chromium.base.IntentUtils; import org.chromium.base.Log; import org.chromium.base.MemoryPressureListener; -@@ -2086,8 +2087,10 @@ public class ChromeTabbedActivity extends ChromeActivity { +@@ -2151,8 +2152,10 @@ public class ChromeTabbedActivity extends ChromeActivity { boolean hadCipherData = CipherLazyHolder.sCipherInstance.restoreFromBundle(getSavedInstanceState()); @@ -51,7 +51,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java -@@ -8,6 +8,7 @@ import static org.chromium.components.content_settings.PrefNames.COOKIE_CONTROLS +@@ -9,6 +9,7 @@ import static org.chromium.components.content_settings.PrefNames.COOKIE_CONTROLS import android.content.Context; import android.content.Intent; @@ -59,17 +59,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting import android.graphics.drawable.Drawable; import android.os.Bundle; import android.text.SpannableString; -@@ -20,7 +21,9 @@ import android.view.View; - import androidx.annotation.VisibleForTesting; +@@ -22,6 +23,7 @@ import androidx.annotation.VisibleForTesting; import androidx.preference.Preference; -+import org.chromium.base.BuildInfo; import org.chromium.base.Callback; +import org.chromium.base.ContextUtils; import org.chromium.base.IntentUtils; import org.chromium.base.metrics.RecordHistogram; import org.chromium.base.metrics.RecordUserAction; -@@ -112,6 +115,8 @@ public class PrivacySettings extends ChromeBaseSettingsFragment +@@ -114,6 +116,8 @@ public class PrivacySettings extends ChromeBaseSettingsFragment private final SharedPreferencesManager mSharedPreferencesManager = ChromeSharedPreferences.getInstance(); @@ -78,7 +76,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting private ManagedPreferenceDelegate mManagedPreferenceDelegate; @VisibleForTesting static final String PREF_THIRD_PARTY_COOKIES = "third_party_cookies"; @VisibleForTesting static final String PREF_TRACKING_PROTECTION = "tracking_protection"; -@@ -381,7 +386,11 @@ public class PrivacySettings extends ChromeBaseSettingsFragment +@@ -382,7 +386,11 @@ public class PrivacySettings extends ChromeBaseSettingsFragment @Override public boolean onPreferenceChange(Preference preference, Object newValue) { String key = preference.getKey(); @@ -91,7 +89,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting UserPrefs.get(getProfile()) .setBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED, (boolean) newValue); } else if (PREF_HTTPS_FIRST_MODE_LEGACY.equals(key)) { -@@ -441,6 +450,11 @@ public class PrivacySettings extends ChromeBaseSettingsFragment +@@ -442,6 +450,11 @@ public class PrivacySettings extends ChromeBaseSettingsFragment getContext(), getProfile())); } @@ -106,7 +104,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd -@@ -2901,6 +2901,12 @@ To change this setting, BEGIN_LINKdelete the Chrome d +@@ -2850,6 +2850,12 @@ To change this setting, BEGIN_LINKdelete the Chrome d All tabs diff --git a/build/cromite_patches/Add-option-to-use-home-page-as-NTP.patch b/build/cromite_patches/Add-option-to-use-home-page-as-NTP.patch index 142e4f0debff78cd224da27a830f803ae9501acb..8dbd181db93a48d10971ec646dbd68d389b6ac73 100644 --- a/build/cromite_patches/Add-option-to-use-home-page-as-NTP.patch +++ b/build/cromite_patches/Add-option-to-use-home-page-as-NTP.patch @@ -24,9 +24,9 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridDialogMediator.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridDialogMediator.java --- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridDialogMediator.java +++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGridDialogMediator.java -@@ -120,6 +120,9 @@ import java.util.Objects; - import java.util.Optional; +@@ -120,6 +120,9 @@ import java.util.Optional; import java.util.Set; + import java.util.function.Supplier; +import org.chromium.chrome.browser.homepage.HomepageManager; +import org.chromium.url.GURL; @@ -34,7 +34,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser /** * A mediator for the TabGridDialog component, responsible for communicating with the components' * coordinator as well as managing the business logic for dialog show/hide. -@@ -1035,9 +1038,15 @@ public class TabGridDialogMediator +@@ -1028,9 +1031,15 @@ public class TabGridDialogMediator return; } @@ -48,13 +48,13 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser assumeNonNull(mCurrentTabGroupModelFilterSupplier.get()), - UrlConstants.NTP_URL, + url, - currentTab.getId(), + tabsInGroup.get(tabsInGroup.size() - 1).getId(), TabLaunchType.FROM_TAB_GROUP_UI); RecordUserAction.record("MobileNewTabOpened." + mComponentName); diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupUiMediator.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupUiMediator.java --- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupUiMediator.java +++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupUiMediator.java -@@ -36,6 +36,7 @@ import org.chromium.chrome.browser.data_sharing.DataSharingServiceFactory; +@@ -35,6 +35,7 @@ import org.chromium.chrome.browser.data_sharing.DataSharingServiceFactory; import org.chromium.chrome.browser.data_sharing.ui.shared_image_tiles.SharedImageTilesConfig; import org.chromium.chrome.browser.data_sharing.ui.shared_image_tiles.SharedImageTilesCoordinator; import org.chromium.chrome.browser.layouts.LayoutStateProvider; @@ -97,9 +97,9 @@ diff --git a/chrome/android/java/res/xml/homepage_preferences.xml b/chrome/andro diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/TabGroupContextMenuCoordinator.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/TabGroupContextMenuCoordinator.java --- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/TabGroupContextMenuCoordinator.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/TabGroupContextMenuCoordinator.java -@@ -75,6 +75,9 @@ import org.chromium.ui.text.EmptyTextWatcher; - import org.chromium.ui.widget.AnchoredPopupWindow.HorizontalOrientation; - import org.chromium.ui.widget.RectProvider; +@@ -84,6 +84,9 @@ import org.chromium.ui.widget.RectProvider; + + import java.util.function.Supplier; +import org.chromium.chrome.browser.homepage.HomepageManager; +import org.chromium.url.GURL; @@ -107,7 +107,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over /** * A coordinator for the context menu on the tab strip by long-pressing on the group titles. It is * responsible for creating a list of menu items, setting up the menu and displaying the menu. -@@ -215,9 +218,15 @@ public class TabGroupContextMenuCoordinator extends TabGroupOverflowMenuCoordina +@@ -228,9 +231,15 @@ public class TabGroupContextMenuCoordinator extends TabGroupOverflowMenuCoordina /* didCloseCallback= */ null); RecordUserAction.record("MobileToolbarTabGroupMenu.DeleteGroup"); } else if (menuId == R.id.open_new_tab_in_group) { @@ -127,7 +127,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java --- a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java -@@ -258,6 +258,22 @@ public class HomepageManager +@@ -257,6 +257,22 @@ public class HomepageManager notifyHomepageUpdated(); } @@ -170,8 +170,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/settin private HomepageManager mHomepageManager; private RadioButtonGroupHomepagePreference mRadioButtons; private final ObservableSupplierImpl mPageTitle = new ObservableSupplierImpl<>(); -@@ -78,6 +81,15 @@ public class HomepageSettings extends ChromeBaseSettingsFragment { - }); +@@ -102,6 +105,15 @@ public class HomepageSettings extends ChromeBaseSettingsFragment { + mRadioButtons.setOnHomepagePreferenceChangeListener(this::onRadioButtonGroupChanged); mRadioButtons.setupPreferenceValues(createPreferenceValuesForRadioGroup()); + ChromeSwitchPreference mNTPIsHomepageSwitch = @@ -200,7 +200,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/metrics/LaunchM diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java -@@ -27,6 +27,7 @@ import org.chromium.chrome.browser.app.tab_activity_glue.ReparentingTask; +@@ -26,6 +26,7 @@ import org.chromium.chrome.browser.app.tab_activity_glue.ReparentingTask; import org.chromium.chrome.browser.compositor.CompositorViewHolder; import org.chromium.chrome.browser.flags.ChromeFeatureList; import org.chromium.chrome.browser.multiwindow.MultiInstanceManager; @@ -208,7 +208,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome import org.chromium.chrome.browser.prefetch.settings.PreloadPagesSettingsBridge; import org.chromium.chrome.browser.prefetch.settings.PreloadPagesState; import org.chromium.chrome.browser.profiles.Profile; -@@ -565,6 +566,13 @@ public class ChromeTabCreator extends TabCreator +@@ -569,6 +570,13 @@ public class ChromeTabCreator extends TabCreator */ public @Nullable Tab launchUrl( String url, @TabLaunchType int type, @Nullable Intent intent, long intentTimestamp) { @@ -225,7 +225,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java --- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java +++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java -@@ -330,6 +330,7 @@ public final class ChromePreferenceKeys { +@@ -334,6 +334,7 @@ public final class ChromePreferenceKeys { public static final String HOMEPAGE_USE_CHROME_NTP = "Chrome.Homepage.UseNTP"; public static final String HOMEPAGE_USE_DEFAULT_URI = "homepage_partner_enabled"; @@ -247,7 +247,7 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd -@@ -1357,6 +1357,9 @@ Your Google account may have other forms of browsing history like searches and a +@@ -1324,6 +1324,9 @@ Your Google account may have other forms of browsing history like searches and a Last hour @@ -260,7 +260,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro diff --git a/chrome/browser/ui/browser_ui_prefs.cc b/chrome/browser/ui/browser_ui_prefs.cc --- a/chrome/browser/ui/browser_ui_prefs.cc +++ b/chrome/browser/ui/browser_ui_prefs.cc -@@ -111,6 +111,8 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistrySyncable* registry) { +@@ -115,6 +115,8 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistrySyncable* registry) { registry->RegisterBooleanPref(prefs::kPinSplitTabButton, false, pref_registration_flags); @@ -272,7 +272,7 @@ diff --git a/chrome/browser/ui/browser_ui_prefs.cc b/chrome/browser/ui/browser_u diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h --- a/chrome/common/pref_names.h +++ b/chrome/common/pref_names.h -@@ -1327,6 +1327,10 @@ inline constexpr char kPinSplitTabButton[] = "browser.pin_split_tab_button"; +@@ -1345,6 +1345,10 @@ inline constexpr char kSplitViewDragAndDropNudgeUsedCount[] = // by enterprise policy. inline constexpr char kGeminiSettings[] = "browser.gemini_settings"; diff --git a/build/cromite_patches/Add-search-engine.patch b/build/cromite_patches/Add-search-engine.patch index edd96ac08595b1a2b8abbe8229b61e02040321a7..3498b0b98d753049449c93d52acd7d20cb48d32e 100644 --- a/build/cromite_patches/Add-search-engine.patch +++ b/build/cromite_patches/Add-search-engine.patch @@ -141,7 +141,7 @@ new file mode 100644 diff --git a/components/search_engines/search_engine_choice/search_engine_choice_utils.cc b/components/search_engines/search_engine_choice/search_engine_choice_utils.cc --- a/components/search_engines/search_engine_choice/search_engine_choice_utils.cc +++ b/components/search_engines/search_engine_choice/search_engine_choice_utils.cc -@@ -155,10 +155,7 @@ void RecordChoiceScreenDefaultSearchProviderType( +@@ -172,10 +172,7 @@ void RecordChoiceScreenDefaultSearchProviderType( } void RecordChoiceScreenSelectedIndex(int selected_engine_index) { @@ -212,17 +212,16 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon std::unique_ptr GetPrepopulatedEngine( PrefService& prefs, std::vector -@@ -159,11 +172,15 @@ std::vector> GetLocalPrepopulatedEngines( +@@ -159,10 +172,14 @@ std::vector> GetLocalPrepopulatedEngines( return std::vector>(); } -- return base::ToVector( +- return base::ToVector(regional_capabilities::GetPrepopulatedEngines( + std::vector> t_urls = -+ base::ToVector( - regional_capabilities::GetPrepopulatedEngines( - country_id, prefs, - regional_capabilities::SearchEngineListType::kTopFive), - &PrepopulatedEngineToTemplateURLData); ++ base::ToVector(regional_capabilities::GetPrepopulatedEngines( + country_id, prefs, + regional_capabilities::SearchEngineListType::kTopN), + &PrepopulatedEngineToTemplateURLData); + t_urls.push_back(TemplateURLDataFromPrepopulatedEngine(googleen)); + t_urls.push_back(TemplateURLDataFromPrepopulatedEngine(duckduckgo_light)); + return t_urls; diff --git a/build/cromite_patches/Add-site-engagement-flag.patch b/build/cromite_patches/Add-site-engagement-flag.patch index ccfccada2a499c2b2f23db97b89e69183eaf4bb2..b95565e26423cbd1d818ec95375626a74d08836a 100644 --- a/build/cromite_patches/Add-site-engagement-flag.patch +++ b/build/cromite_patches/Add-site-engagement-flag.patch @@ -24,7 +24,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -166,6 +166,7 @@ +@@ -169,6 +169,7 @@ #include "components/sensitive_content/features.h" #include "components/services/heap_profiling/public/cpp/switches.h" #include "components/services/storage/public/cpp/buckets/bucket_info.h" @@ -88,7 +88,7 @@ diff --git a/components/feature_engagement/internal/tracker_impl.cc b/components diff --git a/components/feature_engagement/public/feature_configurations.cc b/components/feature_engagement/public/feature_configurations.cc --- a/components/feature_engagement/public/feature_configurations.cc +++ b/components/feature_engagement/public/feature_configurations.cc -@@ -11,6 +11,7 @@ +@@ -6,6 +6,7 @@ #include "base/strings/string_util.h" #include "build/build_config.h" @@ -96,7 +96,7 @@ diff --git a/components/feature_engagement/public/feature_configurations.cc b/co #include "components/feature_engagement/public/configuration.h" #include "components/feature_engagement/public/event_constants.h" #include "components/feature_engagement/public/feature_constants.h" -@@ -118,6 +119,12 @@ std::optional GetClientSideFeatureConfig( +@@ -113,6 +114,12 @@ std::optional GetClientSideFeatureConfig( } #endif // BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) diff --git a/build/cromite_patches/Add-support-for-ISupportHelpAndFeedback.patch b/build/cromite_patches/Add-support-for-ISupportHelpAndFeedback.patch index 4270e0244fd089eeba0b69068a52742629463bb4..4756ba1200de2cfcbfd5e19b8f1fe97d10bccc82 100644 --- a/build/cromite_patches/Add-support-for-ISupportHelpAndFeedback.patch +++ b/build/cromite_patches/Add-support-for-ISupportHelpAndFeedback.patch @@ -12,7 +12,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java -@@ -54,6 +54,7 @@ import org.chromium.chrome.browser.ui.messages.snackbar.Snackbar; +@@ -56,6 +56,7 @@ import org.chromium.chrome.browser.ui.messages.snackbar.Snackbar; import org.chromium.components.browser_ui.bottomsheet.BottomSheetController; import org.chromium.components.browser_ui.bottomsheet.BottomSheetControllerFactory; import org.chromium.components.browser_ui.bottomsheet.ManagedBottomSheetController; @@ -20,7 +20,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Settin import org.chromium.components.browser_ui.modaldialog.AppModalPresenter; import org.chromium.components.browser_ui.settings.EmbeddableSettingsPage; import org.chromium.components.browser_ui.settings.SettingsFragment; -@@ -469,8 +470,12 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity +@@ -485,8 +486,12 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity finishCurrentSettings(mainFragment); return true; } else if (item.getItemId() == R.id.menu_id_general_help) { diff --git a/build/cromite_patches/Add-support-for-writing-URIs.patch b/build/cromite_patches/Add-support-for-writing-URIs.patch index 821d598bdccfae600a873eac70485ea8a9251e64..49836eb4ae558f500f3dbea8bc11301c8bbc1035 100644 --- a/build/cromite_patches/Add-support-for-writing-URIs.patch +++ b/build/cromite_patches/Add-support-for-writing-URIs.patch @@ -15,7 +15,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/base/android/content_uri_utils.cc b/base/android/content_uri_utils.cc --- a/base/android/content_uri_utils.cc +++ b/base/android/content_uri_utils.cc -@@ -136,6 +136,16 @@ void JNI_ContentUriUtils_AddFileInfoToVector(JNIEnv* env, +@@ -137,6 +137,16 @@ void JNI_ContentUriUtils_AddFileInfoToVector(JNIEnv* env, Time::FromMillisecondsSinceUnixEpoch(last_modified)); } diff --git a/build/cromite_patches/Add-webGL-site-setting.patch b/build/cromite_patches/Add-webGL-site-setting.patch index 86a1d176905f02268d5feb0656ef95a59f32e32e..ebcfe814862f09efe14e35b545e49e2d2c351cb0 100644 --- a/build/cromite_patches/Add-webGL-site-setting.patch +++ b/build/cromite_patches/Add-webGL-site-setting.patch @@ -52,7 +52,7 @@ new file mode 100644 +import org.chromium.components.browser_ui.site_settings.BromiteCustomContentSetting; +import org.chromium.components.browser_ui.site_settings.ContentSettingsResources; +import org.chromium.components.browser_ui.site_settings.SiteSettingsCategory; -+import org.chromium.components.content_settings.ContentSettingValues; ++import org.chromium.components.content_settings.ContentSetting; +import org.chromium.components.content_settings.ContentSettingsType; +import org.chromium.content_public.browser.BrowserContextHandle; + @@ -65,8 +65,8 @@ new file mode 100644 +public class BromiteWebGLContentSetting extends BromiteCustomContentSetting { + public BromiteWebGLContentSetting() { + super(/*contentSettingsType*/ ContentSettingsType.WEBGL, -+ /*defaultEnabledValue*/ ContentSettingValues.ALLOW, -+ /*defaultDisabledValue*/ ContentSettingValues.BLOCK, ++ /*defaultEnabledValue*/ ContentSetting.ALLOW, ++ /*defaultDisabledValue*/ ContentSetting.BLOCK, + /*allowException*/ true, + /*preferenceKey*/ "webgl", + /*profilePrefKey*/ "webgl"); @@ -85,11 +85,11 @@ new file mode 100644 + } + + @Override -+ public int getCategorySummary(@Nullable @ContentSettingValues int value) { ++ public int getCategorySummary(@Nullable @ContentSetting int value) { + switch (value) { -+ case ContentSettingValues.ALLOW: ++ case ContentSetting.ALLOW: + return R.string.website_settings_category_webgl_enabled; -+ case ContentSettingValues.BLOCK: ++ case ContentSetting.BLOCK: + return R.string.website_settings_category_webgl_disabled; + default: + return 0; @@ -117,8 +117,8 @@ new file mode 100644 + } + + @Override -+ public @Nullable Boolean considerException(SiteSettingsCategory category, @ContentSettingValues int value) { -+ return value != ContentSettingValues.BLOCK; ++ public @Nullable Boolean considerException(SiteSettingsCategory category, @ContentSetting int value) { ++ return value != ContentSetting.BLOCK; + } +} diff --git a/components/browser_ui/strings/bromite_content_settings/webgl.grdp b/components/browser_ui/strings/bromite_content_settings/webgl.grdp @@ -258,7 +258,7 @@ diff --git a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_ba FormatWebGLStatusString("ErrorMessage", info.error_message.Utf8().c_str(), builder); builder.Append('.'); -@@ -693,6 +681,12 @@ WebGLRenderingContextBase::CreateWebGraphicsContext3DProvider( +@@ -694,6 +682,12 @@ WebGLRenderingContextBase::CreateWebGraphicsContext3DProvider( const CanvasContextCreationAttributesCore& attributes, Platform::ContextType context_type, Platform::GraphicsInfo* graphics_info) { @@ -274,7 +274,7 @@ diff --git a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_ba diff --git a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.h b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.h --- a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.h +++ b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.h -@@ -1951,6 +1951,8 @@ class MODULES_EXPORT WebGLRenderingContextBase +@@ -1959,6 +1959,8 @@ class MODULES_EXPORT WebGLRenderingContextBase DOMArrayBufferView* pixels, int64_t offset); diff --git a/build/cromite_patches/Add-webRTC-site-settings.patch b/build/cromite_patches/Add-webRTC-site-settings.patch index b6e5800fde46a9c0d0d4b1b2f1f68bb8f1680a29..d981ed2d362694bd27fb20bcb9ecd4dae26ce789 100644 --- a/build/cromite_patches/Add-webRTC-site-settings.patch +++ b/build/cromite_patches/Add-webRTC-site-settings.patch @@ -49,7 +49,7 @@ new file mode 100644 +import org.chromium.components.browser_ui.site_settings.BromiteCustomContentSetting; +import org.chromium.components.browser_ui.site_settings.ContentSettingsResources; +import org.chromium.components.browser_ui.site_settings.SiteSettingsCategory; -+import org.chromium.components.content_settings.ContentSettingValues; ++import org.chromium.components.content_settings.ContentSetting; +import org.chromium.components.content_settings.ContentSettingsType; +import org.chromium.content_public.browser.BrowserContextHandle; + @@ -62,8 +62,8 @@ new file mode 100644 +public class BromiteWebRTCContentSetting extends BromiteCustomContentSetting { + public BromiteWebRTCContentSetting() { + super(/*contentSettingsType*/ ContentSettingsType.WEBRTC, -+ /*defaultEnabledValue*/ ContentSettingValues.ALLOW, -+ /*defaultDisabledValue*/ ContentSettingValues.BLOCK, ++ /*defaultEnabledValue*/ ContentSetting.ALLOW, ++ /*defaultDisabledValue*/ ContentSetting.BLOCK, + /*allowException*/ true, + /*preferenceKey*/ "webrtc", + /*profilePrefKey*/ "webrtc"); @@ -82,11 +82,11 @@ new file mode 100644 + } + + @Override -+ public int getCategorySummary(@Nullable @ContentSettingValues int value) { ++ public int getCategorySummary(@Nullable @ContentSetting int value) { + switch (value) { -+ case ContentSettingValues.ALLOW: ++ case ContentSetting.ALLOW: + return R.string.website_settings_category_webrtc_enabled; -+ case ContentSettingValues.BLOCK: ++ case ContentSetting.BLOCK: + return R.string.website_settings_category_webrtc_disabled; + default: + // this will cause a runtime exception @@ -115,8 +115,8 @@ new file mode 100644 + } + + @Override -+ public @Nullable Boolean considerException(SiteSettingsCategory category, @ContentSettingValues int value) { -+ return value != ContentSettingValues.BLOCK; ++ public @Nullable Boolean considerException(SiteSettingsCategory category, @ContentSetting int value) { ++ return value != ContentSetting.BLOCK; + } +} diff --git a/components/browser_ui/strings/bromite_content_settings/webrtc.grdp b/components/browser_ui/strings/bromite_content_settings/webrtc.grdp @@ -195,7 +195,7 @@ diff --git a/third_party/blink/renderer/modules/peerconnection/peer_connection_d #include "third_party/blink/public/platform/web_url.h" #include "third_party/blink/public/web/modules/mediastream/media_stream_video_source.h" #include "third_party/blink/public/web/web_document.h" -@@ -1062,6 +1063,11 @@ PeerConnectionDependencyFactory::CreatePortAllocator( +@@ -1023,6 +1024,11 @@ PeerConnectionDependencyFactory::CreatePortAllocator( // |request_multiple_routes|. Whether local IP addresses could be // collected depends on if mic/camera permission is granted for this // origin. @@ -220,7 +220,7 @@ diff --git a/third_party/blink/renderer/modules/peerconnection/rtc_rtp_receiver. #include "third_party/blink/renderer/bindings/core/v8/script_promise_resolver.h" #include "third_party/blink/renderer/bindings/modules/v8/v8_rtc_insertable_streams.h" #include "third_party/blink/renderer/bindings/modules/v8/v8_rtc_rtcp_parameters.h" -@@ -288,6 +291,14 @@ RTCRtpCapabilities* RTCRtpReceiver::getCapabilities(ScriptState* state, +@@ -287,6 +290,14 @@ RTCRtpCapabilities* RTCRtpReceiver::getCapabilities(ScriptState* state, if (kind != "audio" && kind != "video") return nullptr; @@ -248,7 +248,7 @@ diff --git a/third_party/blink/renderer/modules/peerconnection/rtc_rtp_sender.cc #include "third_party/blink/renderer/bindings/core/v8/script_promise_resolver.h" #include "third_party/blink/renderer/bindings/modules/v8/v8_rtc_encoding_options.h" #include "third_party/blink/renderer/bindings/modules/v8/v8_rtc_insertable_streams.h" -@@ -1035,6 +1038,14 @@ RTCRtpCapabilities* RTCRtpSender::getCapabilities(ScriptState* state, +@@ -1034,6 +1037,14 @@ RTCRtpCapabilities* RTCRtpSender::getCapabilities(ScriptState* state, if (kind != "audio" && kind != "video") return nullptr; diff --git a/build/cromite_patches/Allow-building-without-enable_reporting.patch b/build/cromite_patches/Allow-building-without-enable_reporting.patch index fb54dbe059c922ff5b1e2ff19c349bf58d00cec0..e818961004d40c00ae7b0629b13da3a964da0572 100644 --- a/build/cromite_patches/Allow-building-without-enable_reporting.patch +++ b/build/cromite_patches/Allow-building-without-enable_reporting.patch @@ -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 -@@ -1496,6 +1496,7 @@ String BuildReportStatus(const net::ReportingReport::Status status) { +@@ -1516,6 +1516,7 @@ String BuildReportStatus(const net::ReportingReport::Status status) { } } @@ -51,7 +51,7 @@ diff --git a/content/browser/devtools/protocol/network_handler.cc b/content/brow std::vector ComputeReportingURLs(RenderFrameHostImpl* frame_host) { std::vector urls; frame_host->ForEachRenderFrameHostImplWithAction( -@@ -1509,6 +1510,7 @@ std::vector ComputeReportingURLs(RenderFrameHostImpl* frame_host) { +@@ -1529,6 +1530,7 @@ std::vector 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 -@@ -16153,12 +16153,6 @@ void RenderFrameHostImpl::MaybeGenerateCrashReport( +@@ -16185,12 +16185,6 @@ void RenderFrameHostImpl::MaybeGenerateCrashReport( } } } @@ -308,7 +308,7 @@ diff --git a/net/reporting/reporting_service.cc b/net/reporting/reporting_servic diff --git a/services/network/network_context.h b/services/network/network_context.h --- a/services/network/network_context.h +++ b/services/network/network_context.h -@@ -494,14 +494,14 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext +@@ -501,14 +501,14 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext const GURL& url, const std::optional& reporting_source, const net::NetworkAnonymizationKey& network_anonymization_key, @@ -351,7 +351,7 @@ diff --git a/services/network/public/mojom/BUILD.gn b/services/network/public/mo diff --git a/services/network/public/mojom/network_context.mojom b/services/network/public/mojom/network_context.mojom --- a/services/network/public/mojom/network_context.mojom +++ b/services/network/public/mojom/network_context.mojom -@@ -1240,6 +1240,7 @@ interface NetworkContext { +@@ -1264,6 +1264,7 @@ interface NetworkContext { // provided `network_anonymization_key`. // // Spec: https://w3c.github.io/reporting/#concept-reports @@ -359,7 +359,7 @@ diff --git a/services/network/public/mojom/network_context.mojom b/services/netw QueueReport(string type, string group, url.mojom.Url url, -@@ -1247,6 +1248,7 @@ interface NetworkContext { +@@ -1271,6 +1272,7 @@ interface NetworkContext { NetworkAnonymizationKey network_anonymization_key, mojo_base.mojom.DictionaryValue body); @@ -367,7 +367,7 @@ diff --git a/services/network/public/mojom/network_context.mojom b/services/netw QueueEnterpriseReport(string type, string group, url.mojom.Url url, -@@ -1257,6 +1259,7 @@ interface NetworkContext { +@@ -1281,6 +1283,7 @@ interface NetworkContext { // Note that this queued report will never be delivered if no reporting // endpoint matching is registered for with the provided // `network_anonymization_key`. @@ -386,7 +386,7 @@ diff --git a/third_party/blink/renderer/core/frame/csp/content_security_policy.c #include "base/containers/contains.h" #include "base/debug/dump_without_crashing.h" #include "base/feature_list.h" -@@ -1344,6 +1345,7 @@ void ContentSecurityPolicy::ReportViolation( +@@ -1356,6 +1357,7 @@ void ContentSecurityPolicy::ReportViolation( ShouldBypassContentSecurityPolicy(KURL(violation_data->sourceFile()))) { return; } @@ -394,7 +394,7 @@ diff --git a/third_party/blink/renderer/core/frame/csp/content_security_policy.c PostViolationReport(violation_data, context_frame, report_endpoints, use_reporting_api); -@@ -1351,6 +1353,7 @@ void ContentSecurityPolicy::ReportViolation( +@@ -1363,6 +1365,7 @@ void ContentSecurityPolicy::ReportViolation( // `context_frame` (i.e. we're not processing 'frame-ancestors'). if (delegate_ && !context_frame) delegate_->DispatchViolationEvent(*violation_data, element); @@ -413,7 +413,7 @@ diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/ #include "services/network/public/cpp/features.h" #include "services/network/public/mojom/content_security_policy.mojom-blink.h" #include "services/network/public/mojom/source_location.mojom-blink.h" -@@ -2836,9 +2837,11 @@ DocumentResourceCoordinator* LocalFrame::GetDocumentResourceCoordinator() { +@@ -2860,9 +2861,11 @@ DocumentResourceCoordinator* LocalFrame::GetDocumentResourceCoordinator() { return CHECK_DEREF(GetDocument()).GetResourceCoordinator(); } @@ -547,7 +547,7 @@ diff --git a/third_party/blink/renderer/core/frame/reporting_context.h b/third_p diff --git a/third_party/blink/renderer/core/frame/reporting_observer.cc b/third_party/blink/renderer/core/frame/reporting_observer.cc --- a/third_party/blink/renderer/core/frame/reporting_observer.cc +++ b/third_party/blink/renderer/core/frame/reporting_observer.cc -@@ -62,8 +62,7 @@ void ReportingObserver::QueueReport(Report* report) { +@@ -61,8 +61,7 @@ void ReportingObserver::QueueReport(Report* report) { } bool ReportingObserver::ObservedType(const String& type) { diff --git a/build/cromite_patches/Allow-building-without-supervised-users.patch b/build/cromite_patches/Allow-building-without-supervised-users.patch index 84dd6e1adffa9c69c2b5f590ed6020c74e930028..ea83f0b0a646fd4d5ad3be70d10ccfabb61d774e 100644 --- a/build/cromite_patches/Allow-building-without-supervised-users.patch +++ b/build/cromite_patches/Allow-building-without-supervised-users.patch @@ -24,7 +24,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -819,7 +819,6 @@ if (_is_default_toolchain) { +@@ -820,7 +820,6 @@ if (_is_default_toolchain) { "//components/offline_pages/core:offline_page_model_enums_java", "//components/sharing_message:sharing_dialog_type_generated_enum", "//components/sharing_message:sharing_send_message_result_generated_enum", @@ -65,7 +65,7 @@ diff --git a/chrome/browser/feedback/android/BUILD.gn b/chrome/browser/feedback/ diff --git a/chrome/browser/prefs/chrome_pref_service_factory.cc b/chrome/browser/prefs/chrome_pref_service_factory.cc --- a/chrome/browser/prefs/chrome_pref_service_factory.cc +++ b/chrome/browser/prefs/chrome_pref_service_factory.cc -@@ -319,7 +319,7 @@ void PrepareFactory( +@@ -324,7 +324,7 @@ void PrepareFactory( policy::BrowserPolicyConnector* policy_connector) { factory->SetManagedPolicies(policy_service, policy_connector); factory->SetRecommendedPolicies(policy_service, policy_connector); @@ -77,7 +77,7 @@ diff --git a/chrome/browser/prefs/chrome_pref_service_factory.cc b/chrome/browse diff --git a/chrome/browser/profiles/profile_attributes_entry.cc b/chrome/browser/profiles/profile_attributes_entry.cc --- a/chrome/browser/profiles/profile_attributes_entry.cc +++ b/chrome/browser/profiles/profile_attributes_entry.cc -@@ -471,7 +471,7 @@ bool ProfileAttributesEntry::IsSigninRequired() const { +@@ -476,7 +476,7 @@ bool ProfileAttributesEntry::IsSigninRequired() const { } std::string ProfileAttributesEntry::GetSupervisedUserId() const { @@ -89,7 +89,7 @@ diff --git a/chrome/browser/profiles/profile_attributes_entry.cc b/chrome/browse diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/profile_impl.cc --- a/chrome/browser/profiles/profile_impl.cc +++ b/chrome/browser/profiles/profile_impl.cc -@@ -684,10 +684,6 @@ void ProfileImpl::DoFinalInit(CreateMode create_mode) { +@@ -683,10 +683,6 @@ void ProfileImpl::DoFinalInit(CreateMode create_mode) { prefs->SetTime(prefs::kProfileCreationTime, path_creation_time_); pref_change_registrar_.Init(prefs); @@ -100,7 +100,7 @@ diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/p // Changes in the profile avatar. pref_change_registrar_.Add( -@@ -1624,6 +1620,7 @@ GURL ProfileImpl::GetHomePage() { +@@ -1623,6 +1619,7 @@ GURL ProfileImpl::GetHomePage() { } void ProfileImpl::UpdateSupervisedUserIdInStorage() { @@ -111,7 +111,7 @@ diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/p diff --git a/chrome/browser/profiles/profile_manager.cc b/chrome/browser/profiles/profile_manager.cc --- a/chrome/browser/profiles/profile_manager.cc +++ b/chrome/browser/profiles/profile_manager.cc -@@ -1192,10 +1192,6 @@ void ProfileManager::InitProfileUserPrefs(Profile* profile) { +@@ -1190,10 +1190,6 @@ void ProfileManager::InitProfileUserPrefs(Profile* profile) { profile->GetPrefs()->SetString(prefs::kProfileName, profile_name); } @@ -122,7 +122,7 @@ diff --git a/chrome/browser/profiles/profile_manager.cc b/chrome/browser/profile } void ProfileManager::RegisterTestingProfile(std::unique_ptr profile, -@@ -1962,9 +1958,6 @@ void ProfileManager::AddProfileToStorage(Profile* profile) { +@@ -1955,9 +1951,6 @@ void ProfileManager::AddProfileToStorage(Profile* profile) { init_params.icon_index = profile->GetPrefs()->GetInteger(prefs::kProfileAvatarIndex); @@ -160,7 +160,7 @@ diff --git a/chrome/browser/ui/webui/managed_ui_handler.cc b/chrome/browser/ui/w diff --git a/chrome/browser/ui/webui/management/management_ui_handler.cc b/chrome/browser/ui/webui/management/management_ui_handler.cc --- a/chrome/browser/ui/webui/management/management_ui_handler.cc +++ b/chrome/browser/ui/webui/management/management_ui_handler.cc -@@ -617,10 +617,6 @@ bool ManagementUIHandler::managed() const { +@@ -623,10 +623,6 @@ bool ManagementUIHandler::managed() const { void ManagementUIHandler::RegisterPrefChange( PrefChangeRegistrar& pref_registrar) { @@ -174,7 +174,7 @@ diff --git a/chrome/browser/ui/webui/management/management_ui_handler.cc b/chrom diff --git a/components/supervised_user/core/browser/supervised_user_pref_store.cc b/components/supervised_user/core/browser/supervised_user_pref_store.cc --- a/components/supervised_user/core/browser/supervised_user_pref_store.cc +++ b/components/supervised_user/core/browser/supervised_user_pref_store.cc -@@ -175,6 +175,7 @@ void SupervisedUserPrefStore::OnNewContentFiltersStateAvailable( +@@ -172,6 +172,7 @@ void SupervisedUserPrefStore::OnNewContentFiltersStateAvailable( void SupervisedUserPrefStore::OnNewSettingsAvailable( const base::Value::Dict& settings) { @@ -185,7 +185,7 @@ diff --git a/components/supervised_user/core/browser/supervised_user_pref_store. diff --git a/components/supervised_user/core/browser/supervised_user_preferences.cc b/components/supervised_user/core/browser/supervised_user_preferences.cc --- a/components/supervised_user/core/browser/supervised_user_preferences.cc +++ b/components/supervised_user/core/browser/supervised_user_preferences.cc -@@ -164,6 +164,10 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) { +@@ -160,6 +160,10 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) { } void EnableParentalControls(PrefService& pref_service) { @@ -196,7 +196,7 @@ diff --git a/components/supervised_user/core/browser/supervised_user_preferences pref_service.SetString(prefs::kSupervisedUserId, supervised_user::kChildAccountSUID); #if BUILDFLAG(IS_CHROMEOS) -@@ -197,7 +201,7 @@ bool IsSafeSitesEnabled(const PrefService& pref_service) { +@@ -187,7 +191,7 @@ bool IsSafeSitesEnabled(const PrefService& pref_service) { } bool IsSubjectToParentalControls(const PrefService& pref_service) { @@ -208,7 +208,7 @@ diff --git a/components/supervised_user/core/browser/supervised_user_preferences diff --git a/components/supervised_user/core/browser/supervised_user_service.cc b/components/supervised_user/core/browser/supervised_user_service.cc --- a/components/supervised_user/core/browser/supervised_user_service.cc +++ b/components/supervised_user/core/browser/supervised_user_service.cc -@@ -249,6 +249,7 @@ SupervisedUserService::SupervisedUserService( +@@ -248,6 +248,7 @@ SupervisedUserService::SupervisedUserService( } void SupervisedUserService::SetSettingsServiceActive(bool active) { @@ -227,7 +227,7 @@ diff --git a/components/supervised_user/core/common/features.cc b/components/sup #if BUILDFLAG(IS_IOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ BUILDFLAG(IS_WIN) const int kLocalWebApprovalBottomSheetLoadTimeoutDefaultValueMs = 5000; -@@ -170,4 +169,5 @@ bool ClassifyUrlWithoutCredentialsForLocalSupervision() { +@@ -164,4 +163,5 @@ bool ClassifyUrlWithoutCredentialsForLocalSupervision() { #endif diff --git a/build/cromite_patches/Allow-playing-audio-in-background.patch b/build/cromite_patches/Allow-playing-audio-in-background.patch index 0b428b3ec1a1a9013c29b61116b342931bf022c7..96462a4647b97cf654d434753371c1fe06d29181 100644 --- a/build/cromite_patches/Allow-playing-audio-in-background.patch +++ b/build/cromite_patches/Allow-playing-audio-in-background.patch @@ -24,9 +24,9 @@ diff --git a/third_party/blink/renderer/platform/media/web_media_player_impl.cc void WebMediaPlayerImpl::EnabledAudioTracksChanged( std::optional enabled_track_id) { DCHECK(main_task_runner_->BelongsToCurrentThread()); -@@ -3683,7 +3689,10 @@ bool WebMediaPlayerImpl::ShouldPausePlaybackWhenHidden() const { - : HasAudio(); +@@ -3679,7 +3685,10 @@ bool WebMediaPlayerImpl::ShouldPausePlaybackWhenHidden() const { + const bool preserve_audio = HasUnmutedAudio() || audio_source_provider_->IsAudioBeingCaptured(); // Audio only stream is allowed to play when in background. - if (!HasVideo() && preserve_audio) + //pipeline_metadata_.has_video is true for MediaPlayerRenderer, @@ -39,7 +39,7 @@ diff --git a/third_party/blink/renderer/platform/media/web_media_player_impl.cc diff --git a/third_party/blink/renderer/platform/media/web_media_player_impl.h b/third_party/blink/renderer/platform/media/web_media_player_impl.h --- a/third_party/blink/renderer/platform/media/web_media_player_impl.h +++ b/third_party/blink/renderer/platform/media/web_media_player_impl.h -@@ -211,6 +211,9 @@ class PLATFORM_EXPORT WebMediaPlayerImpl +@@ -212,6 +212,9 @@ class PLATFORM_EXPORT WebMediaPlayerImpl bool HasVideo() const override; bool HasAudio() const override; diff --git a/build/cromite_patches/Always-use-new-tab-page-for-default-home-page.patch b/build/cromite_patches/Always-use-new-tab-page-for-default-home-page.patch index c4b3e395b7b47c13ce68f12bfa2ef62d72b24db0..336a8f39e80ce50b5cc8f33eb5a63c4aeada49f4 100644 --- a/build/cromite_patches/Always-use-new-tab-page-for-default-home-page.patch +++ b/build/cromite_patches/Always-use-new-tab-page-for-default-home-page.patch @@ -7,19 +7,19 @@ Ignore any partner-provided home page. License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html --- .../org/chromium/chrome/browser/homepage/HomepageManager.java | 4 ---- - .../chrome/browser/new_tab_url/DseNewTabUrlManager.java | 1 + + .../chrome/browser/new_tab_url/DseNewTabUrlManager.java | 2 +- .../partnerbookmarks/PartnerBookmarksProviderIterator.java | 1 + .../partnercustomizations/PartnerBrowserCustomizations.java | 2 +- .../org/chromium/components/search_engines/TemplateUrl.java | 1 + .../search_engines/android/template_url_service_android.cc | 1 + .../always-use-new-tab-page-for-default-home-page.inc | 1 + - 7 files changed, 6 insertions(+), 5 deletions(-) + 7 files changed, 6 insertions(+), 6 deletions(-) create mode 100755 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/always-use-new-tab-page-for-default-home-page.inc diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java --- a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java -@@ -160,10 +160,6 @@ public class HomepageManager +@@ -159,10 +159,6 @@ public class HomepageManager * tab page if the homepage button is force enabled via flag. */ public GURL getDefaultHomepageGurl() { @@ -33,14 +33,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/Homepa diff --git a/chrome/android/java/src/org/chromium/chrome/browser/new_tab_url/DseNewTabUrlManager.java b/chrome/android/java/src/org/chromium/chrome/browser/new_tab_url/DseNewTabUrlManager.java --- a/chrome/android/java/src/org/chromium/chrome/browser/new_tab_url/DseNewTabUrlManager.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/new_tab_url/DseNewTabUrlManager.java -@@ -60,6 +60,7 @@ public class DseNewTabUrlManager { +@@ -59,7 +59,7 @@ public class DseNewTabUrlManager { /** Returns whether the feature NewTabSearchEngineUrlAndroid is enabled. */ public static boolean isNewTabSearchEngineUrlAndroidEnabled() { -+ if ((true)) return false; - return ChromeSharedPreferences.getInstance() - .readBoolean(ChromePreferenceKeys.IS_EEA_CHOICE_COUNTRY, false) - || (OmniboxFeatures.sOmniboxMobileParityUpdate.isEnabled() +- return true; ++ return false; + } + + /** diff --git a/chrome/browser/partnerbookmarks/android/java/src/org/chromium/chrome/browser/partnerbookmarks/PartnerBookmarksProviderIterator.java b/chrome/browser/partnerbookmarks/android/java/src/org/chromium/chrome/browser/partnerbookmarks/PartnerBookmarksProviderIterator.java --- a/chrome/browser/partnerbookmarks/android/java/src/org/chromium/chrome/browser/partnerbookmarks/PartnerBookmarksProviderIterator.java +++ b/chrome/browser/partnerbookmarks/android/java/src/org/chromium/chrome/browser/partnerbookmarks/PartnerBookmarksProviderIterator.java diff --git a/build/cromite_patches/AudioBuffer-AnalyserNode-fp-mitigations.patch b/build/cromite_patches/AudioBuffer-AnalyserNode-fp-mitigations.patch index 14c90d4c41a0ad8dd184c5898dd6079d353085a5..caa7d3095f3b5ad7651aec74851e9c1b2956946e 100644 --- a/build/cromite_patches/AudioBuffer-AnalyserNode-fp-mitigations.patch +++ b/build/cromite_patches/AudioBuffer-AnalyserNode-fp-mitigations.patch @@ -15,9 +15,9 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../modules/webaudio/base_audio_context.cc | 12 ++++++++++++ .../renderer/modules/webaudio/base_audio_context.h | 2 ++ .../modules/webaudio/offline_audio_context.cc | 1 + - .../renderer/modules/webaudio/realtime_analyser.cc | 9 ++++++++- + .../renderer/modules/webaudio/realtime_analyser.cc | 13 ++++++++++--- .../platform/runtime_enabled_features.json5 | 5 ++--- - 11 files changed, 57 insertions(+), 5 deletions(-) + 11 files changed, 59 insertions(+), 7 deletions(-) create mode 100644 cromite_flags/chrome/browser/about_flags_cc/AudioBuffer-AnalyserNode-fp-mitigations.inc create mode 100644 cromite_flags/third_party/blink/common/features_cc/AudioBuffer-AnalyserNode-fp-mitigations.inc create mode 100644 cromite_flags/third_party/blink/common/features_h/AudioBuffer-AnalyserNode-fp-mitigations.inc @@ -88,7 +88,7 @@ diff --git a/third_party/blink/renderer/modules/webaudio/audio_buffer.h b/third_ diff --git a/third_party/blink/renderer/modules/webaudio/audio_context.cc b/third_party/blink/renderer/modules/webaudio/audio_context.cc --- a/third_party/blink/renderer/modules/webaudio/audio_context.cc +++ b/third_party/blink/renderer/modules/webaudio/audio_context.cc -@@ -16,6 +16,7 @@ +@@ -17,6 +17,7 @@ #include "third_party/blink/public/common/features.h" #include "third_party/blink/public/common/mediastream/media_devices.h" #include "third_party/blink/public/platform/browser_interface_broker_proxy.h" @@ -96,7 +96,7 @@ diff --git a/third_party/blink/renderer/modules/webaudio/audio_context.cc b/thir #include "third_party/blink/public/platform/modules/webrtc/webrtc_logging.h" #include "third_party/blink/public/platform/web_audio_latency_hint.h" #include "third_party/blink/renderer/bindings/core/v8/script_promise_resolver.h" -@@ -678,7 +679,9 @@ double AudioContext::baseLatency() const { +@@ -850,7 +851,9 @@ double AudioContext::baseLatency() const { DCHECK_CALLED_ON_VALID_SEQUENCE(main_thread_sequence_checker_); DCHECK(destination()); @@ -118,7 +118,7 @@ diff --git a/third_party/blink/renderer/modules/webaudio/base_audio_context.cc b #include "third_party/blink/public/mojom/devtools/console_message.mojom-blink.h" #include "third_party/blink/public/mojom/frame/lifecycle.mojom-shared.h" #include "third_party/blink/public/platform/platform.h" -@@ -710,6 +711,17 @@ LocalDOMWindow* BaseAudioContext::GetWindow() const { +@@ -774,6 +775,17 @@ LocalDOMWindow* BaseAudioContext::GetWindow() const { return To(GetExecutionContext()); } @@ -170,7 +170,30 @@ diff --git a/third_party/blink/renderer/modules/webaudio/realtime_analyser.cc b/ #include "third_party/blink/renderer/platform/audio/audio_bus.h" #include "third_party/blink/renderer/platform/audio/audio_utilities.h" #include "third_party/blink/renderer/platform/audio/vector_math.h" -@@ -156,6 +157,7 @@ void RealtimeAnalyser::GetFloatTimeDomainData( +@@ -117,7 +118,8 @@ void RealtimeAnalyser::GetFloatFrequencyData(DOMFloat32Array* destination_array, + for (unsigned i = 0; i < len; ++i) { + const float linear_value = UNSAFE_TODO(source[i]); + const double db_mag = audio_utilities::LinearToDecibels(linear_value); +- UNSAFE_TODO(destination[i]) = static_cast(db_mag); ++ auto v = static_cast(db_mag); ++ UNSAFE_TODO(destination[i]) = BaseAudioContext::ShuffleAudioData(v, i); + } + } + } +@@ -155,9 +157,11 @@ void RealtimeAnalyser::GetByteFrequencyData(DOMUint8Array* destination_array, + + // The range m_minDecibels to m_maxDecibels will be scaled to byte values + // from 0 to UCHAR_MAX. +- const double scaled_value = ++ double scaled_value = + UCHAR_MAX * (db_mag - min_decibels) * range_scale_factor; + ++ scaled_value = BaseAudioContext::ShuffleAudioData(scaled_value, i); ++ + // Clip to valid range. + UNSAFE_TODO(destination[i]) = + static_cast(ClampTo(scaled_value, 0, UCHAR_MAX)); +@@ -188,6 +192,7 @@ void RealtimeAnalyser::GetFloatTimeDomainData( input_buffer[(i + write_index - fft_size + kInputBufferSize) % kInputBufferSize]); @@ -178,38 +201,24 @@ diff --git a/third_party/blink/renderer/modules/webaudio/realtime_analyser.cc b/ UNSAFE_TODO(destination[i]) = value; } } -@@ -183,6 +185,8 @@ void RealtimeAnalyser::GetByteTimeDomainData(DOMUint8Array* destination_array) { +@@ -211,10 +216,12 @@ void RealtimeAnalyser::GetByteTimeDomainData(DOMUint8Array* destination_array) { + + for (unsigned i = 0; i < len; ++i) { + // Buffer access is protected due to modulo operation. +- const float value = UNSAFE_TODO( ++ float value = UNSAFE_TODO( input_buffer[(i + write_index - fft_size + kInputBufferSize) % kInputBufferSize]); + value = BaseAudioContext::ShuffleAudioData(value, i); + // Scale from nominal -1 -> +1 to unsigned byte. - double scaled_value = 128 * (value + 1); - -@@ -306,6 +310,8 @@ void RealtimeAnalyser::ConvertToByteData(DOMUint8Array* destination_array) { - double scaled_value = - UCHAR_MAX * (db_mag - min_decibels) * range_scale_factor; + const double scaled_value = 128 * (value + 1); -+ scaled_value = BaseAudioContext::ShuffleAudioData(scaled_value, i); -+ - // Clip to valid range. - UNSAFE_TODO(destination[i]) = - static_cast(ClampTo(scaled_value, 0, UCHAR_MAX)); -@@ -324,7 +330,8 @@ void RealtimeAnalyser::ConvertFloatToDb(DOMFloat32Array* destination_array) { - for (unsigned i = 0; i < len; ++i) { - float linear_value = UNSAFE_TODO(source[i]); - double db_mag = audio_utilities::LinearToDecibels(linear_value); -- UNSAFE_TODO(destination[i]) = static_cast(db_mag); -+ auto v = static_cast(db_mag); -+ UNSAFE_TODO(destination[i]) = BaseAudioContext::ShuffleAudioData(v, i); - } - } - } diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 -@@ -575,9 +575,8 @@ +@@ -594,9 +594,8 @@ { // AudioContext.playoutStats interface. // https://chromestatus.com/feature/5172818344148992 diff --git a/build/cromite_patches/Block-qjz9zk-or-trk-requests.patch b/build/cromite_patches/Block-qjz9zk-or-trk-requests.patch index ee02db19514a06e013b47d77d58fe4412c5d1eca..e9eb6ceba1b18917c0ebe08de635ec3f9cce0995 100644 --- a/build/cromite_patches/Block-qjz9zk-or-trk-requests.patch +++ b/build/cromite_patches/Block-qjz9zk-or-trk-requests.patch @@ -93,7 +93,7 @@ diff --git a/components/omnibox/browser/autocomplete_input.cc b/components/omnib diff --git a/components/url_formatter/url_fixer.cc b/components/url_formatter/url_fixer.cc --- a/components/url_formatter/url_fixer.cc +++ b/components/url_formatter/url_fixer.cc -@@ -602,6 +602,10 @@ GURL FixupURLInternal(const std::string& text, +@@ -598,6 +598,10 @@ GURL FixupURLInternal(const std::string& text, } } @@ -118,7 +118,7 @@ diff --git a/content/browser/child_process_security_policy_impl.cc b/content/bro diff --git a/net/BUILD.gn b/net/BUILD.gn --- a/net/BUILD.gn +++ b/net/BUILD.gn -@@ -1127,6 +1127,8 @@ component("net") { +@@ -1137,6 +1137,8 @@ component("net") { "url_request/url_request_http_job.cc", "url_request/url_request_http_job.h", "url_request/url_request_interceptor.cc", diff --git a/build/cromite_patches/Bromite-subresource-adblocker.patch b/build/cromite_patches/Bromite-subresource-adblocker.patch index a18305564760379d3f561010904cc2d2112d13d9..4197934f98953f91cc3cdf1539f5a4bdfdbdf8a0 100644 --- a/build/cromite_patches/Bromite-subresource-adblocker.patch +++ b/build/cromite_patches/Bromite-subresource-adblocker.patch @@ -66,7 +66,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -325,6 +325,7 @@ if (_is_default_toolchain) { +@@ -324,6 +324,7 @@ if (_is_default_toolchain) { "//chrome/android/features/tab_ui/public:ui_java_resources", "//chrome/android/modules/stack_unwinder/provider:java", "//chrome/android/webapk/libs/client:client_java", @@ -77,7 +77,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_java_resources.gni --- a/chrome/android/chrome_java_resources.gni +++ b/chrome/android/chrome_java_resources.gni -@@ -419,6 +419,7 @@ chrome_java_resources = [ +@@ -424,6 +424,7 @@ chrome_java_resources = [ "java/res/layout/account_divider_preference.xml", "java/res/layout/account_management_account_row.xml", "java/res/layout/app_history_filter.xml", @@ -85,7 +85,7 @@ diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_ja "java/res/layout/auto_sign_in_first_run_dialog.xml", "java/res/layout/autofill_billing_address_dropdown.xml", "java/res/layout/autofill_card_name_and_number.xml", -@@ -608,6 +609,7 @@ chrome_java_resources = [ +@@ -613,6 +614,7 @@ chrome_java_resources = [ "java/res/xml/account_management_preferences.xml", "java/res/xml/ad_services_config.xml", "java/res/xml/appearance_preferences.xml", @@ -96,7 +96,7 @@ diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_ja diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni --- a/chrome/android/chrome_java_sources.gni +++ b/chrome/android/chrome_java_sources.gni -@@ -903,6 +903,8 @@ chrome_java_sources = [ +@@ -909,6 +909,8 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/permissions/PermissionBlockedDialog.java", "java/src/org/chromium/chrome/browser/permissions/PermissionUpdateRequester.java", "java/src/org/chromium/chrome/browser/photo_picker/DecoderServiceImpl.java", @@ -180,8 +180,8 @@ new file mode 100644 diff --git a/chrome/android/java/res/values/styles.xml b/chrome/android/java/res/values/styles.xml --- a/chrome/android/java/res/values/styles.xml +++ b/chrome/android/java/res/values/styles.xml -@@ -273,6 +273,24 @@ found in the LICENSE file. - 20sp +@@ -311,6 +311,24 @@ found in the LICENSE file. + + @@ -293,7 +293,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/Defaul diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivity.java -@@ -41,8 +41,7 @@ import org.chromium.chrome.browser.feature_engagement.TrackerFactory; +@@ -42,8 +42,7 @@ import org.chromium.chrome.browser.feature_engagement.TrackerFactory; import org.chromium.chrome.browser.metrics.UmaUtils; import org.chromium.chrome.browser.profiles.Profile; import org.chromium.chrome.browser.search_engines.TemplateUrlServiceFactory; @@ -303,7 +303,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR import org.chromium.chrome.browser.ui.edge_to_edge.EdgeToEdgeUtils; import org.chromium.chrome.browser.ui.signin.DialogWhenLargeContentLayout; import org.chromium.chrome.browser.ui.signin.SigninUtils; -@@ -231,7 +230,7 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa +@@ -232,7 +231,7 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa /** Creates first page and sets up adapter. Should result UI being shown on the screen. */ private void createFirstPage() { BooleanSupplier showWelcomePage = () -> !FirstRunStatus.shouldSkipWelcomePage(); @@ -312,7 +312,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR mFreProgressStates.add(MobileFreProgress.WELCOME_SHOWN); mPagerAdapter = new FirstRunPagerAdapter(FirstRunActivity.this, mPages); mPager.setAdapter(mPagerAdapter); -@@ -256,7 +255,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa +@@ -257,7 +256,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa // // TODO(b/245912657): explicitly sign in supervised users in {@link // FullscreenSigninMediator#handleContinueWithNative} rather than relying on SigninChecker. @@ -320,7 +320,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR assumeNonNull(mFreProperties); mFirstRunFlowSequencer.updateFirstRunProperties(mFreProperties); -@@ -272,18 +270,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa +@@ -273,18 +271,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa mFreProgressStates.add(MobileFreProgress.DEFAULT_SEARCH_ENGINE_SHOWN); } @@ -339,7 +339,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR if (mPagerAdapter != null) { mPagerAdapter.notifyDataSetChanged(); } -@@ -663,11 +649,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa +@@ -666,11 +652,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa public void acceptTermsOfService(boolean allowMetricsAndCrashUploading) { assert mNativeInitializationPromise.isFulfilled(); @@ -1181,7 +1181,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/ChildAcc diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/FullscreenSigninAndHistorySyncActivityBase.java b/chrome/android/java/src/org/chromium/chrome/browser/signin/FullscreenSigninAndHistorySyncActivityBase.java --- a/chrome/android/java/src/org/chromium/chrome/browser/signin/FullscreenSigninAndHistorySyncActivityBase.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/signin/FullscreenSigninAndHistorySyncActivityBase.java -@@ -24,8 +24,6 @@ import org.chromium.chrome.browser.profiles.ProfileProvider; +@@ -25,8 +25,6 @@ import org.chromium.chrome.browser.profiles.ProfileProvider; import org.chromium.chrome.browser.ui.system.StatusBarColorController; import org.chromium.components.browser_ui.widget.gesture.BackPressHandler; import org.chromium.components.policy.PolicyService; @@ -1189,8 +1189,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/Fullscre -import org.chromium.components.signin.AccountManagerFacadeProvider; /** Base class for First run experience and fullscreen signin and history sync promos. */ - public abstract class FullscreenSigninAndHistorySyncActivityBase extends AsyncInitializationActivity -@@ -90,9 +88,7 @@ public abstract class FullscreenSigninAndHistorySyncActivityBase extends AsyncIn + @NullMarked +@@ -92,9 +90,7 @@ public abstract class FullscreenSigninAndHistorySyncActivityBase extends AsyncIn @Override @CallSuper public void triggerLayoutInflation() { diff --git a/build/cromite_patches/autofill-miscellaneous.patch b/build/cromite_patches/autofill-miscellaneous.patch index c5c48a2fe7130f75b07b03a2c3220d6c6ee66f72..f5e9ee3f9e76f2ca6fbb40852841f0e56b26006d 100644 --- a/build/cromite_patches/autofill-miscellaneous.patch +++ b/build/cromite_patches/autofill-miscellaneous.patch @@ -30,7 +30,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/java/src/org/chromium/chrome/browser/AutofillOptionsLauncher.java b/chrome/android/java/src/org/chromium/chrome/browser/AutofillOptionsLauncher.java --- a/chrome/android/java/src/org/chromium/chrome/browser/AutofillOptionsLauncher.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/AutofillOptionsLauncher.java -@@ -41,6 +41,7 @@ public final class AutofillOptionsLauncher extends Activity { +@@ -43,6 +43,7 @@ public final class AutofillOptionsLauncher extends Activity { } private static boolean isDeepLinkFeatureEnabled() { @@ -41,7 +41,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/AutofillOptions diff --git a/chrome/browser/password_manager/chrome_password_manager_client.cc b/chrome/browser/password_manager/chrome_password_manager_client.cc --- a/chrome/browser/password_manager/chrome_password_manager_client.cc +++ b/chrome/browser/password_manager/chrome_password_manager_client.cc -@@ -1150,10 +1150,6 @@ password_manager::OtpManager* ChromePasswordManagerClient::GetOtpManager() { +@@ -1111,10 +1111,6 @@ password_manager::OtpManager* ChromePasswordManagerClient::GetOtpManager() { autofill::AutofillCrowdsourcingManager* ChromePasswordManagerClient::GetAutofillCrowdsourcingManager() { @@ -55,7 +55,7 @@ diff --git a/chrome/browser/password_manager/chrome_password_manager_client.cc b diff --git a/chrome/browser/ui/autofill/chrome_autofill_client.cc b/chrome/browser/ui/autofill/chrome_autofill_client.cc --- a/chrome/browser/ui/autofill/chrome_autofill_client.cc +++ b/chrome/browser/ui/autofill/chrome_autofill_client.cc -@@ -395,15 +395,6 @@ ChromeAutofillClient::GetURLLoaderFactory() { +@@ -394,15 +394,6 @@ ChromeAutofillClient::GetURLLoaderFactory() { ->GetURLLoaderFactoryForBrowserProcess(); } @@ -80,12 +80,12 @@ diff --git a/chrome/browser/ui/autofill/chrome_autofill_client.h b/chrome/browse scoped_refptr GetURLLoaderFactory() final; - AutofillCrowdsourcingManager& GetCrowdsourcingManager() final; VotesUploader& GetVotesUploader() final; - AutofillOptimizationGuide* GetAutofillOptimizationGuide() const final; - FieldClassificationModelHandler* GetAutofillFieldClassificationModelHandler() + AutofillOptimizationGuideDecider* GetAutofillOptimizationGuideDecider() + const final; diff --git a/components/android_autofill/browser/android_autofill_client.cc b/components/android_autofill/browser/android_autofill_client.cc --- a/components/android_autofill/browser/android_autofill_client.cc +++ b/components/android_autofill/browser/android_autofill_client.cc -@@ -79,17 +79,6 @@ AndroidAutofillClient::GetURLLoaderFactory() { +@@ -80,17 +80,6 @@ AndroidAutofillClient::GetURLLoaderFactory() { ->GetURLLoaderFactoryForBrowserProcess(); } @@ -232,7 +232,7 @@ diff --git a/components/autofill/core/browser/crowdsourcing/votes_uploader.cc b/ diff --git a/components/autofill/core/browser/foundations/autofill_client.h b/components/autofill/core/browser/foundations/autofill_client.h --- a/components/autofill/core/browser/foundations/autofill_client.h +++ b/components/autofill/core/browser/foundations/autofill_client.h -@@ -280,10 +280,6 @@ class AutofillClient { +@@ -287,10 +287,6 @@ class AutofillClient { // Returns the VotesUploader. virtual VotesUploader& GetVotesUploader() = 0; @@ -246,7 +246,7 @@ diff --git a/components/autofill/core/browser/foundations/autofill_client.h b/co diff --git a/components/autofill/core/browser/foundations/autofill_manager.cc b/components/autofill/core/browser/foundations/autofill_manager.cc --- a/components/autofill/core/browser/foundations/autofill_manager.cc +++ b/components/autofill/core/browser/foundations/autofill_manager.cc -@@ -311,17 +311,6 @@ void AutofillManager::OnFormsParsed(const std::vector& forms) { +@@ -343,17 +343,6 @@ void AutofillManager::OnFormsParsed(const std::vector& forms) { if (base::FeatureList::IsEnabled(features::test::kShowDomNodeIDs)) { driver().ExposeDomNodeIDs(); } @@ -267,7 +267,7 @@ diff --git a/components/autofill/core/browser/foundations/autofill_manager.cc b/ 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 -@@ -1089,6 +1089,8 @@ BASE_FEATURE(kAutofillUploadThrottling, +@@ -1082,6 +1082,8 @@ BASE_FEATURE(kAutofillUploadThrottling, "AutofillUploadThrottling", base::FEATURE_ENABLED_BY_DEFAULT); @@ -301,7 +301,7 @@ diff --git a/components/autofill/core/common/autofill_prefs.cc b/components/auto user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); registry->RegisterBooleanPref( kAutofillPaymentCardBenefits, true, -@@ -85,7 +85,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) { +@@ -91,7 +91,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) { #endif // Deprecated prefs registered for migration. diff --git a/build/cromite_patches/bromite-build-utils.patch b/build/cromite_patches/bromite-build-utils.patch index 584e8357d1b2976b9fd834f4dc04cfb727471667..9a8f19609f050b67356d6badd26a49de939d0f9f 100644 --- a/build/cromite_patches/bromite-build-utils.patch +++ b/build/cromite_patches/bromite-build-utils.patch @@ -50,7 +50,7 @@ diff --git a/build/android/gyp/java_cpp_enum.py b/build/android/gyp/java_cpp_enu self._lines = lines self._path = path self._enum_definitions = [] -@@ -253,6 +254,7 @@ class HeaderParser: +@@ -257,6 +258,7 @@ class HeaderParser: self._generator_directives = DirectiveSet() self._multi_line_generator_directive = None self._current_enum_entry = '' @@ -58,7 +58,7 @@ diff --git a/build/android/gyp/java_cpp_enum.py b/build/android/gyp/java_cpp_enu def _ShouldIgnoreLine(self): return self._in_preprocessor_block and not all(self._in_buildflag_android) -@@ -295,6 +297,24 @@ class HeaderParser: +@@ -303,6 +305,24 @@ class HeaderParser: raise Exception('Multi-line comments in enums are not supported in ' + self._path) @@ -83,7 +83,7 @@ diff --git a/build/android/gyp/java_cpp_enum.py b/build/android/gyp/java_cpp_enu enum_comment = HeaderParser.single_line_comment_re.match(line) if enum_comment: comment = enum_comment.groups()[0] -@@ -395,9 +415,9 @@ class HeaderParser: +@@ -404,9 +424,9 @@ class HeaderParser: self._ParseSingleLineEnum(single_line_enum.group('enum_entries')) @@ -95,7 +95,7 @@ diff --git a/build/android/gyp/java_cpp_enum.py b/build/android/gyp/java_cpp_enu if not enum_definitions: raise Exception('No enums found in %s\n' 'Did you forget prefixing enums with ' -@@ -410,9 +430,9 @@ def DoGenerate(source_paths): +@@ -419,9 +439,9 @@ def DoGenerate(source_paths): yield output_path, output @@ -107,7 +107,7 @@ diff --git a/build/android/gyp/java_cpp_enum.py b/build/android/gyp/java_cpp_enu def GenerateOutput(source_path, enum_definition): -@@ -498,11 +518,16 @@ def DoMain(argv): +@@ -507,11 +527,16 @@ def DoMain(argv): nargs='+', help='Path to at least one input file.') @@ -424,7 +424,7 @@ new file mode 100644 diff --git a/build/config/BUILDCONFIG.gn b/build/config/BUILDCONFIG.gn --- a/build/config/BUILDCONFIG.gn +++ b/build/config/BUILDCONFIG.gn -@@ -870,3 +870,5 @@ if (is_component_build) { +@@ -835,3 +835,5 @@ if (is_component_build) { set_defaults("component") { configs = default_component_configs } diff --git a/build/cromite_patches/disable-WebView-variations-support.patch b/build/cromite_patches/disable-WebView-variations-support.patch index de75b81bbdfd98144f903f08cab28d685ce8f992..a8d02ad3b04249f2d18393228f6f52a645a0873d 100644 --- a/build/cromite_patches/disable-WebView-variations-support.patch +++ b/build/cromite_patches/disable-WebView-variations-support.patch @@ -12,7 +12,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumAwInit.java b/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumAwInit.java --- a/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumAwInit.java +++ b/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumAwInit.java -@@ -430,13 +430,6 @@ public class WebViewChromiumAwInit { +@@ -443,13 +443,6 @@ public class WebViewChromiumAwInit { } AwBrowserProcess.configureChildProcessLauncher(); @@ -29,7 +29,7 @@ diff --git a/android_webview/glue/java/src/com/android/webview/chromium/WebViewC diff --git a/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java b/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java --- a/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java +++ b/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java -@@ -561,10 +561,6 @@ public class WebViewChromiumFactoryProvider implements WebViewFactoryProvider { +@@ -582,10 +582,6 @@ public class WebViewChromiumFactoryProvider implements WebViewFactoryProvider { // This must happen after pref value has been read and SafeMode setup has completed. setupStartupTaskExperiments(androidXConfig); @@ -37,7 +37,7 @@ diff --git a/android_webview/glue/java/src/com/android/webview/chromium/WebViewC - mAwInit.startVariationsInit(); - } - - mShouldDisableThreadChecking = shouldDisableThreadChecking(ctx); - FlagOverrideHelper helper = + new FlagOverrideHelper(ProductionSupportedFlagList.sFlagList); + helper.applyFlagOverrides( -- diff --git a/build/cromite_patches/disable-appending-variations-header.patch b/build/cromite_patches/disable-appending-variations-header.patch index 606684e68bfea5bc60e723dff9dd3f10c1406d23..0395130c6be6612cc9290eaaa8c1e65027793f1a 100644 --- a/build/cromite_patches/disable-appending-variations-header.patch +++ b/build/cromite_patches/disable-appending-variations-header.patch @@ -10,7 +10,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/components/variations/net/variations_http_headers.cc b/components/variations/net/variations_http_headers.cc --- a/components/variations/net/variations_http_headers.cc +++ b/components/variations/net/variations_http_headers.cc -@@ -116,10 +116,7 @@ URLValidationResult GetUrlValidationResult(const GURL& url) { +@@ -120,10 +120,7 @@ URLValidationResult GetUrlValidationResult(const GURL& url) { // Also, logs the result of validating |url| in histograms, one of which ends in // |suffix|. bool ShouldAppendVariationsHeader(const GURL& url, const std::string& suffix) { diff --git a/build/cromite_patches/dns-send-IPv6-connectivity-probes-to-RIPE-DNS.patch b/build/cromite_patches/dns-send-IPv6-connectivity-probes-to-RIPE-DNS.patch index dda78a4f9ca21713fc7543bc450c0f9ae79e71ce..7875b39a3c0d50944d11eeb350a1556426e844de 100644 --- a/build/cromite_patches/dns-send-IPv6-connectivity-probes-to-RIPE-DNS.patch +++ b/build/cromite_patches/dns-send-IPv6-connectivity-probes-to-RIPE-DNS.patch @@ -16,7 +16,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/net/dns/host_resolver_manager.cc b/net/dns/host_resolver_manager.cc --- a/net/dns/host_resolver_manager.cc +++ b/net/dns/host_resolver_manager.cc -@@ -150,12 +150,12 @@ const size_t kMaxHostLength = 4096; +@@ -149,12 +149,12 @@ const size_t kMaxHostLength = 4096; // Time between IPv6 probes, i.e. for how long results of each IPv6 probe are // cached. diff --git a/build/cromite_patches/enable-ftrivial-auto-var-init-zero.patch b/build/cromite_patches/enable-ftrivial-auto-var-init-zero.patch index 260c6541d18684e8420c8a6c6a14c86dbc679bee..a61e766bf1a4f4a35ce81845ca9bc1c567717b67 100644 --- a/build/cromite_patches/enable-ftrivial-auto-var-init-zero.patch +++ b/build/cromite_patches/enable-ftrivial-auto-var-init-zero.patch @@ -11,7 +11,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn --- a/build/config/compiler/BUILD.gn +++ b/build/config/compiler/BUILD.gn -@@ -456,6 +456,10 @@ config("compiler") { +@@ -451,6 +451,10 @@ config("compiler") { cflags += [ "-fwrapv" ] } diff --git a/build/cromite_patches/eyeo-133.0.6943.49-android_api.patch b/build/cromite_patches/eyeo-133.0.6943.49-android_api.patch index afece6fc559528341172db30b35b20dad9e355ef..5b231a2aa8e41bb5d65b0f40de7e2e8b9668516d 100644 --- a/build/cromite_patches/eyeo-133.0.6943.49-android_api.patch +++ b/build/cromite_patches/eyeo-133.0.6943.49-android_api.patch @@ -97,15 +97,15 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn import("//build/config/android/config.gni") import("//build/config/cronet/config.gni") -@@ -554,6 +557,7 @@ if (_is_default_toolchain) { +@@ -553,6 +556,7 @@ if (_is_default_toolchain) { "//chrome/browser/xsurface:java", "//chrome/browser/xsurface_provider:dependency_provider_impl_java", "//chrome/browser/xsurface_provider:java", + "//components/adblock/android:adblock_controller_java", + "//components/android_autofill/browser:features_java", "//components/android_autofill/browser:java", "//components/autofill/android:autofill_features_java", - "//components/autofill/android:autofill_java", -@@ -1394,6 +1398,7 @@ if (_is_default_toolchain) { +@@ -1395,6 +1399,7 @@ if (_is_default_toolchain) { "javatests:chrome_test_java_org.chromium.chrome.browser.toolbar", "javatests:chrome_test_java_org.chromium.chrome.browser.webapps", "javatests:chrome_test_java_various", @@ -113,7 +113,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn "//chrome/browser/android/browserservices/verification:javatests", "//chrome/browser/android/httpclient:javatests", "//chrome/browser/android/metrics:ukm_javatests", -@@ -1464,6 +1469,7 @@ if (_is_default_toolchain) { +@@ -1465,6 +1470,7 @@ if (_is_default_toolchain) { "//chrome/test/data/translate/", "//chrome/test/data/webauthn/", "//chrome/test/media_router/resources/", @@ -121,7 +121,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn "//components/test/data/autofill/", "//components/test/data/payments/", "//content/test/data/browsing_data/", -@@ -3256,6 +3262,12 @@ if (_is_default_toolchain) { +@@ -3261,6 +3267,12 @@ if (_is_default_toolchain) { sources += [ "java/src/org/chromium/chrome/browser/media/MediaCapturePickerDialogBridge.java" ] } @@ -134,7 +134,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn # Used for testing only, should not be shipped to end users. if (enable_offline_pages_harness) { sources += [ "java/src/org/chromium/chrome/browser/offlinepages/evaluation/OfflinePageEvaluationBridge.java" ] -@@ -3347,6 +3359,7 @@ if (_is_default_toolchain) { +@@ -3352,6 +3364,7 @@ if (_is_default_toolchain) { "//chrome/browser/ui/plus_addresses/android:jni_headers", "//chrome/browser/util:jni_headers", "//chrome/browser/webauthn/android:jni_headers", @@ -155,7 +155,7 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java import("//content/public/common/features.gni") -@@ -55,6 +58,7 @@ chrome_java_sources = [ +@@ -56,6 +59,7 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/accessibility/AccessibilityTabHelper.java", "java/src/org/chromium/chrome/browser/accessibility/PageZoomIphController.java", "java/src/org/chromium/chrome/browser/accessibility/settings/ChromeAccessibilitySettingsDelegate.java", @@ -207,7 +207,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 -@@ -3412,6 +3412,10 @@ static_library("browser") { +@@ -3399,6 +3399,10 @@ static_library("browser") { ] deps += [ "//chrome/browser/password_entry_edit/android" ] @@ -267,7 +267,7 @@ new file mode 100644 diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn --- a/chrome/browser/ui/BUILD.gn +++ b/chrome/browser/ui/BUILD.gn -@@ -996,6 +996,12 @@ static_library("ui") { +@@ -1012,6 +1012,12 @@ static_library("ui") { deps += [ "//components/themes:ntp_background_proto", ] diff --git a/build/cromite_patches/eyeo-133.0.6943.49-android_settings.patch b/build/cromite_patches/eyeo-133.0.6943.49-android_settings.patch index 9e29170d572ab6b115e77153413d6f227d3c5642..0a6fc660c40db80e7ea9b75f5f37521d81a16a5b 100644 --- a/build/cromite_patches/eyeo-133.0.6943.49-android_settings.patch +++ b/build/cromite_patches/eyeo-133.0.6943.49-android_settings.patch @@ -8,7 +8,6 @@ Pre-requisites: eyeo Browser Ad filtering Solution: Base Module and Android API --- chrome/android/BUILD.gn | 8 + .../android/java/res/xml/main_preferences.xml | 8 + - .../java/res/xml/main_preferences_legacy.xml | 8 + chrome/browser/adblock/android/BUILD.gn | 85 ++++++ chrome/browser/adblock/android/README.md | 13 + .../adblock/android/adblock_strings.grd | 244 ++++++++++++++++++ @@ -122,7 +121,7 @@ Pre-requisites: eyeo Browser Ad filtering Solution: Base Module and Android API .../translations/adblock_strings_zh-HK.xtb | 4 + .../translations/adblock_strings_zh-TW.xtb | 13 + .../translations/adblock_strings_zu.xtb | 4 + - 116 files changed, 2357 insertions(+) + 115 files changed, 2349 insertions(+) create mode 100644 chrome/browser/adblock/android/README.md create mode 100644 chrome/browser/adblock/android/adblock_strings.grd create mode 100644 chrome/browser/adblock/android/java/res/drawable-hdpi/fragment_adblock_custom_item_add.png @@ -239,7 +238,7 @@ Pre-requisites: eyeo Browser Ad filtering Solution: Base Module and Android API diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -290,6 +290,10 @@ if (_is_default_toolchain) { +@@ -289,6 +289,10 @@ if (_is_default_toolchain) { deps += [ "//chrome/browser:screen_capture_java_resources" ] } @@ -250,7 +249,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn if (enable_extensions_core) { deps += [ "//chrome/browser/ui/android/extensions:java_resources" ] } -@@ -808,6 +812,10 @@ if (_is_default_toolchain) { +@@ -809,6 +813,10 @@ if (_is_default_toolchain) { "//chrome/browser/password_entry_edit:public_java", ] @@ -273,8 +272,8 @@ diff --git a/chrome/android/java/res/xml/main_preferences.xml b/chrome/android/j +Use of this source code is governed by the GPLv3 that can be found in the components/adblock/LICENSE file. --> - + @@ -282,31 +281,6 @@ diff --git a/chrome/android/java/res/xml/main_preferences.xml b/chrome/android/j + android:fragment="org.chromium.chrome.browser.adblock.settings.AdblockSettingsFragment" + android:key="adblock" + android:order="17" -+ android:title="@string/adblock_settings_title" /> - - - - - android:key="ui_theme" - android:order="18" - android:title="@string/theme_settings" /> -+ -@@ -1526,7 +1530,7 @@ void NavigationURLLoaderImpl::OnReceiveRedirect( +@@ -1583,7 +1587,7 @@ void NavigationURLLoaderImpl::OnReceiveRedirect( ? head->bypass_redirect_checks : bypass_redirect_checks_; @@ -50266,7 +50266,7 @@ diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/b #include "content/browser/renderer_host/render_frame_host_impl.h" -@@ -3607,6 +3611,12 @@ void RenderFrameHostImpl::ExecuteJavaScriptMethod( +@@ -3615,6 +3619,12 @@ void RenderFrameHostImpl::ExecuteJavaScriptMethod( std::move(callback)); } @@ -50293,7 +50293,7 @@ diff --git a/content/browser/renderer_host/render_frame_host_impl.h b/content/br #ifndef CONTENT_BROWSER_RENDERER_HOST_RENDER_FRAME_HOST_IMPL_H_ #define CONTENT_BROWSER_RENDERER_HOST_RENDER_FRAME_HOST_IMPL_H_ -@@ -498,6 +502,10 @@ class CONTENT_EXPORT RenderFrameHostImpl +@@ -504,6 +508,10 @@ class CONTENT_EXPORT RenderFrameHostImpl const std::u16string& method_name, base::Value::List arguments, JavaScriptResultCallback callback) override; @@ -50318,7 +50318,7 @@ diff --git a/content/public/browser/render_frame_host.h b/content/public/browser #ifndef CONTENT_PUBLIC_BROWSER_RENDER_FRAME_HOST_H_ #define CONTENT_PUBLIC_BROWSER_RENDER_FRAME_HOST_H_ -@@ -556,6 +560,9 @@ class CONTENT_EXPORT RenderFrameHost : public IPC::Listener { +@@ -559,6 +563,9 @@ class CONTENT_EXPORT RenderFrameHost : public IPC::Listener { virtual void AddMessageToConsole(blink::mojom::ConsoleMessageLevel level, const std::string& message) = 0; @@ -50412,7 +50412,7 @@ diff --git a/content/shell/BUILD.gn b/content/shell/BUILD.gn import("//build/config/cast.gni") import("//build/config/chromeos/ui_mode.gni") -@@ -167,6 +170,10 @@ inspector_protocol_generate("protocol_sources") { +@@ -171,6 +174,10 @@ inspector_protocol_generate("protocol_sources") { static_library("content_shell_lib") { testonly = true sources = [ @@ -50423,7 +50423,7 @@ diff --git a/content/shell/BUILD.gn b/content/shell/BUILD.gn "browser/protocol/browser_handler.cc", "browser/protocol/browser_handler.h", "browser/protocol/domain_handler.h", -@@ -236,6 +243,7 @@ static_library("content_shell_lib") { +@@ -240,6 +247,7 @@ static_library("content_shell_lib") { "browser/shell_platform_delegate_android.cc", "browser/shell_web_contents_view_delegate_android.cc", ] @@ -50431,7 +50431,7 @@ diff --git a/content/shell/BUILD.gn b/content/shell/BUILD.gn } if (is_mac) { -@@ -317,6 +325,8 @@ static_library("content_shell_lib") { +@@ -321,6 +329,8 @@ static_library("content_shell_lib") { "//base", "//base:base_static", "//cc/base", @@ -50440,7 +50440,7 @@ diff --git a/content/shell/BUILD.gn b/content/shell/BUILD.gn "//components/cdm/renderer", "//components/custom_handlers", "//components/custom_handlers:test_support", -@@ -337,6 +347,7 @@ static_library("content_shell_lib") { +@@ -341,6 +351,7 @@ static_library("content_shell_lib") { "//components/prefs", "//components/services/storage/test_api", "//components/url_formatter", @@ -50448,7 +50448,7 @@ diff --git a/content/shell/BUILD.gn b/content/shell/BUILD.gn "//components/variations", "//components/variations/service", "//components/web_cache/renderer", -@@ -428,6 +439,7 @@ static_library("content_shell_lib") { +@@ -432,6 +443,7 @@ static_library("content_shell_lib") { "//mojo/public/java/system:test_support", "//ui/android", ] @@ -50701,7 +50701,7 @@ new file mode 100644 diff --git a/content/shell/browser/shell.cc b/content/shell/browser/shell.cc --- a/content/shell/browser/shell.cc +++ b/content/shell/browser/shell.cc -@@ -25,6 +25,8 @@ +@@ -21,6 +21,8 @@ #include "base/strings/string_util.h" #include "base/strings/utf_string_conversions.h" #include "build/build_config.h" @@ -50710,7 +50710,7 @@ diff --git a/content/shell/browser/shell.cc b/content/shell/browser/shell.cc #include "components/custom_handlers/protocol_handler.h" #include "components/custom_handlers/protocol_handler_registry.h" #include "components/custom_handlers/simple_protocol_handler_registry_factory.h" -@@ -44,6 +46,7 @@ +@@ -41,6 +43,7 @@ #include "content/public/browser/web_contents.h" #include "content/public/common/content_switches.h" #include "content/shell/app/resource.h" @@ -50718,7 +50718,7 @@ diff --git a/content/shell/browser/shell.cc b/content/shell/browser/shell.cc #include "content/shell/browser/shell_content_browser_client.h" #include "content/shell/browser/shell_devtools_frontend.h" #include "content/shell/browser/shell_javascript_dialog_manager.h" -@@ -89,6 +92,12 @@ Shell::Shell(std::unique_ptr web_contents, +@@ -87,6 +90,12 @@ Shell::Shell(std::unique_ptr web_contents, windows_.push_back(this); @@ -50894,7 +50894,7 @@ diff --git a/third_party/blink/public/mojom/frame/frame.mojom b/third_party/blin module blink.mojom; -@@ -1010,6 +1014,10 @@ interface LocalFrame { +@@ -1016,6 +1020,10 @@ interface LocalFrame { // the given point in the view coordinate space. PluginActionAt(gfx.mojom.Point location, blink.mojom.PluginActionType action); @@ -51035,7 +51035,7 @@ diff --git a/third_party/blink/renderer/core/frame/local_frame_mojo_handler.cc b #include "third_party/blink/renderer/core/frame/local_frame_mojo_handler.h" @@ -350,6 +354,14 @@ LocalFrameMojoHandler::LocalFrameMojoHandler(blink::LocalFrame& frame) - WrapWeakPersistent(this))); + WrapWeakPersistent(this))); } +void LocalFrameMojoHandler::InsertAbpElemhideStylesheet( @@ -51065,7 +51065,7 @@ diff --git a/third_party/blink/renderer/core/frame/local_frame_mojo_handler.h b/ #define THIRD_PARTY_BLINK_RENDERER_CORE_FRAME_LOCAL_FRAME_MOJO_HANDLER_H_ @@ -113,6 +117,7 @@ class LocalFrameMojoHandler void AddMessageToConsole(mojom::blink::ConsoleMessageLevel level, - const WTF::String& message, + const String& message, bool discard_duplicates) final; + void InsertAbpElemhideStylesheet(const WTF::String& stylesheet) final; void SwapInImmediately() final; @@ -51074,7 +51074,7 @@ diff --git a/third_party/blink/renderer/core/frame/local_frame_mojo_handler.h b/ diff --git a/third_party/blink/renderer/core/html/html_element.cc b/third_party/blink/renderer/core/html/html_element.cc --- a/third_party/blink/renderer/core/html/html_element.cc +++ b/third_party/blink/renderer/core/html/html_element.cc -@@ -2618,7 +2618,13 @@ void HTMLElement::setSpellcheck(bool enable) { +@@ -2672,7 +2672,13 @@ void HTMLElement::setSpellcheck(bool enable) { } void HTMLElement::click() { @@ -51753,7 +51753,7 @@ diff --git a/tools/gritsettings/resource_ids.spec b/tools/gritsettings/resource_ # This file is used to assign starting resource ids for resources and strings # used by Chromium. This is done to ensure that resource ids are unique # across all the grd files. If you are adding a new grd file, please add -@@ -1192,6 +1196,14 @@ +@@ -1212,6 +1216,14 @@ "components/user_scripts/browser/resources/browser_resources.grd": { "includes": [7620], }, @@ -51791,7 +51791,7 @@ diff --git a/tools/metrics/histograms/metadata/extensions/enums.xml b/tools/metr -@@ -3221,6 +3225,8 @@ Called by update_extension_permission.py.--> +@@ -3223,6 +3227,8 @@ Called by update_extension_permission.py.--> diff --git a/build/cromite_patches/eyeo-133.0.6943.49-chrome_integration.patch b/build/cromite_patches/eyeo-133.0.6943.49-chrome_integration.patch index 30a5cfdd87e3af8fc64a7d9051dadac2cd43fd89..a4c95ad9bfbf7c7193fcb1e07a01c65d141ee1f5 100644 --- a/build/cromite_patches/eyeo-133.0.6943.49-chrome_integration.patch +++ b/build/cromite_patches/eyeo-133.0.6943.49-chrome_integration.patch @@ -113,7 +113,7 @@ diff --git a/chrome/app/chrome_main_delegate.cc b/chrome/app/chrome_main_delegat #include "chrome/browser/buildflags.h" #include "chrome/browser/chrome_content_browser_client.h" #include "chrome/browser/chrome_resource_bundle_helper.h" -@@ -1578,7 +1583,7 @@ content::ContentClient* ChromeMainDelegate::CreateContentClient() { +@@ -1595,7 +1600,7 @@ content::ContentClient* ChromeMainDelegate::CreateContentClient() { content::ContentBrowserClient* ChromeMainDelegate::CreateContentBrowserClient() { chrome_content_browser_client_ = @@ -136,15 +136,15 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn import("//base/allocator/allocator.gni") import("//build/buildflag_header.gni") @@ -204,6 +207,8 @@ static_library("browser") { - "accessibility/page_colors_factory.h", + "accessibility/page_colors_controller_factory.h", "accessibility/prefers_default_scrollbar_styles_prefs.cc", "accessibility/prefers_default_scrollbar_styles_prefs.h", + "adblock/adblock_chrome_content_browser_client.cc", + "adblock/adblock_chrome_content_browser_client.h", "after_startup_task_utils.cc", "after_startup_task_utils.h", - "app_mode/app_mode_utils.cc", -@@ -2139,6 +2144,7 @@ static_library("browser") { + "autocomplete/autocomplete_classifier_factory.cc", +@@ -2119,6 +2124,7 @@ static_library("browser") { "//chrome/common/notifications", "//chrome/installer/util:with_no_strings", "//chrome/services/speech/buildflags", @@ -152,7 +152,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn "//components/application_locale_storage", "//components/assist_ranker", "//components/autofill/content/browser", -@@ -8558,6 +8564,7 @@ static_library("browser_public_dependencies") { +@@ -8611,6 +8617,7 @@ static_library("browser_public_dependencies") { "//chrome/services/file_util/public/mojom", "//components/account_id", "//components/autofill/content/browser", @@ -3433,7 +3433,7 @@ diff --git a/chrome/browser/chrome_browser_main.cc b/chrome/browser/chrome_brows #include "chrome/browser/chrome_browser_main.h" -@@ -77,6 +81,7 @@ +@@ -78,6 +82,7 @@ #include "chrome/grit/branded_strings.h" #include "chrome/grit/generated_resources.h" #include "chrome/installer/util/google_update_settings.h" @@ -3441,7 +3441,7 @@ diff --git a/chrome/browser/chrome_browser_main.cc b/chrome/browser/chrome_brows #include "components/color/color_mixers.h" #include "components/device_event_log/device_event_log.h" #include "components/embedder_support/origin_trials/component_updater_utils.h" -@@ -1555,6 +1560,8 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() { +@@ -1548,6 +1553,8 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() { // called inside PostProfileInit. content::WebUIControllerFactory::RegisterFactory( ChromeWebUIControllerFactory::GetInstance()); @@ -3491,7 +3491,7 @@ diff --git a/chrome/browser/extensions/BUILD.gn b/chrome/browser/extensions/BUIL import("//build/config/chromebox_for_meetings/buildflags.gni") import("//build/config/chromeos/ui_mode.gni") -@@ -496,6 +499,7 @@ source_set("extensions") { +@@ -501,6 +504,7 @@ source_set("extensions") { "window_controller_list.h", "window_controller_list_observer.h", ] @@ -3499,7 +3499,7 @@ diff --git a/chrome/browser/extensions/BUILD.gn b/chrome/browser/extensions/BUIL configs += [ "//build/config:precompiled_headers", "//build/config/compiler:wexit_time_destructors", -@@ -824,6 +828,7 @@ source_set("extensions") { +@@ -828,6 +832,7 @@ source_set("extensions") { ] } @@ -3521,7 +3521,7 @@ diff --git a/chrome/browser/net/errorpage_browsertest.cc b/chrome/browser/net/er #include #include #include -@@ -38,6 +42,7 @@ +@@ -39,6 +43,7 @@ #include "chrome/common/pref_names.h" #include "chrome/test/base/in_process_browser_test.h" #include "chrome/test/base/ui_test_utils.h" @@ -3529,8 +3529,8 @@ diff --git a/chrome/browser/net/errorpage_browsertest.cc b/chrome/browser/net/er #include "components/browsing_data/content/browsing_data_helper.h" #include "components/embedder_support/switches.h" #include "components/error_page/content/browser/net_error_auto_reloader.h" -@@ -639,6 +644,9 @@ class ErrorPageAutoReloadTest : public InProcessBrowserTest { - public: +@@ -644,6 +649,9 @@ class ErrorPageAutoReloadTest : public InProcessBrowserTest { + void SetUpCommandLine(base::CommandLine* command_line) override { command_line->AppendSwitch(embedder_support::kEnableAutoReload); + // The URLLoaderInterceptor is not resilient to the browser making @@ -3538,7 +3538,7 @@ diff --git a/chrome/browser/net/errorpage_browsertest.cc b/chrome/browser/net/er + command_line->AppendSwitch(adblock::switches::kDisableAdblock); } - void TearDownOnMainThread() override { url_loader_interceptor_.reset(); } + void NavigateToURLAndWaitForTitle(const GURL& url, diff --git a/chrome/browser/page_load_metrics/observers/ad_metrics/ads_page_load_metrics_observer_browsertest.cc b/chrome/browser/page_load_metrics/observers/ad_metrics/ads_page_load_metrics_observer_browsertest.cc --- a/chrome/browser/page_load_metrics/observers/ad_metrics/ads_page_load_metrics_observer_browsertest.cc +++ b/chrome/browser/page_load_metrics/observers/ad_metrics/ads_page_load_metrics_observer_browsertest.cc @@ -3553,7 +3553,7 @@ diff --git a/chrome/browser/page_load_metrics/observers/ad_metrics/ads_page_load #include "components/page_load_metrics/browser/observers/ad_metrics/ads_page_load_metrics_observer.h" -@@ -24,6 +28,7 @@ +@@ -25,6 +29,7 @@ #include "chrome/test/base/in_process_browser_test.h" #include "chrome/test/base/interactive_test_utils.h" #include "chrome/test/base/ui_test_utils.h" @@ -3561,7 +3561,7 @@ diff --git a/chrome/browser/page_load_metrics/observers/ad_metrics/ads_page_load #include "components/heavy_ad_intervention/heavy_ad_features.h" #include "components/page_load_metrics/browser/ads_page_load_metrics_test_waiter.h" #include "components/page_load_metrics/browser/features.h" -@@ -1521,7 +1526,7 @@ class AdsPageLoadMetricsObserverResourceBrowserTest +@@ -1469,7 +1474,7 @@ class AdsPageLoadMetricsObserverResourceBrowserTest {heavy_ad_intervention::features::kHeavyAdIntervention, {}}, {heavy_ad_intervention::features::kHeavyAdPrivacyMitigations, {{"host-threshold", "3"}}}}, @@ -3613,10 +3613,10 @@ diff --git a/chrome/browser/prefs/chrome_pref_service_factory.cc b/chrome/browse #include "components/component_updater/pref_names.h" #include "components/policy/core/browser/configuration_policy_pref_store.h" #include "components/pref_registry/pref_registry_syncable.h" -@@ -189,6 +194,12 @@ const auto kTrackedPrefs = std::to_array({ - // Allows it to trigger a write to the protected pref store. - {36, user_prefs::kScheduleToFlushToDisk, EnforcementLevel::ENFORCE_ON_LOAD, - PrefTrackingStrategy::ATOMIC, ValueType::IMPERSONAL}, +@@ -194,6 +199,12 @@ const auto kTrackedPrefs = std::to_array({ + EnforcementLevel::ENFORCE_ON_LOAD, PrefTrackingStrategy::ATOMIC, + ValueType::IMPERSONAL}, + #endif + {100, adblock::common::prefs::kSubscriptionSignatures, + EnforcementLevel::ENFORCE_ON_LOAD, PrefTrackingStrategy::SPLIT, + ValueType::IMPERSONAL}, @@ -3640,7 +3640,7 @@ diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc #include "chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.h" -@@ -250,6 +254,15 @@ +@@ -249,6 +253,15 @@ #include "chrome/browser/webid/federated_identity_permission_context_factory.h" #include "chrome/common/buildflags.h" #include "chrome/common/chrome_features.h" @@ -3656,7 +3656,7 @@ diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc #include "components/autofill/content/browser/autofill_log_router_factory.h" #include "components/breadcrumbs/core/breadcrumbs_status.h" #include "components/captive_portal/core/buildflags.h" -@@ -934,6 +947,15 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -932,6 +945,15 @@ void ChromeBrowserMainExtraPartsProfiles:: // Makes manual testing possible. FakeSmartCardDeviceServiceFactory::GetInstance(); #endif @@ -3675,7 +3675,7 @@ diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc diff --git a/chrome/browser/profiles/profile_keyed_service_browsertest.cc b/chrome/browser/profiles/profile_keyed_service_browsertest.cc --- a/chrome/browser/profiles/profile_keyed_service_browsertest.cc +++ b/chrome/browser/profiles/profile_keyed_service_browsertest.cc -@@ -283,6 +283,17 @@ IN_PROC_BROWSER_TEST_F(ProfileKeyedServiceBrowserTest, +@@ -284,6 +284,17 @@ IN_PROC_BROWSER_TEST_F(ProfileKeyedServiceBrowserTest, "PermissionsUpdaterShutdownFactory", "PluginInfoHostImpl", "TurnSyncOnHelperShutdownNotifier", @@ -3693,7 +3693,7 @@ diff --git a/chrome/browser/profiles/profile_keyed_service_browsertest.cc b/chro }; // clang-format on -@@ -863,6 +874,13 @@ IN_PROC_BROWSER_TEST_F(ProfileKeyedServiceGuestBrowserTest, +@@ -869,6 +880,13 @@ IN_PROC_BROWSER_TEST_F(ProfileKeyedServiceGuestBrowserTest, "ZeroSuggestCacheServiceFactory", #endif // !BUILDFLAG(IS_CHROMEOS) @@ -3720,7 +3720,7 @@ diff --git a/chrome/browser/resources/BUILD.gn b/chrome/browser/resources/BUILD. import("//chrome/browser/buildflags.gni") import("//chrome/common/features.gni") -@@ -297,6 +300,7 @@ group("dev_ui_resources") { +@@ -299,6 +302,7 @@ group("dev_ui_resources") { "predictors:resources", "privacy_sandbox/internals:resources", "usb_internals:resources", @@ -3728,7 +3728,7 @@ diff --git a/chrome/browser/resources/BUILD.gn b/chrome/browser/resources/BUILD. "//components/commerce/core/internals/resources", "//components/data_sharing/data_sharing_internals/resources", "//components/download/resources/download_internals:resources", -@@ -366,6 +370,7 @@ repack("dev_ui_paks") { +@@ -373,6 +377,7 @@ repack("dev_ui_paks") { "$root_gen_dir/chrome/predictors_resources.pak", "$root_gen_dir/chrome/privacy_sandbox_internals_resources.pak", "$root_gen_dir/chrome/usb_internals_resources.pak", @@ -3812,7 +3812,7 @@ diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn import("//build/config/buildflags_paint_preview.gni") import("//build/config/compiler/compiler.gni") -@@ -408,6 +411,7 @@ static_library("ui") { +@@ -399,6 +402,7 @@ static_library("ui") { "//chrome/services/media_gallery_util/public/mojom", "//components/access_code_cast/common:metrics", "//components/account_id", @@ -3871,7 +3871,7 @@ diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc #include "chrome/browser/ui/tab_helpers.h" -@@ -102,6 +106,8 @@ +@@ -105,6 +109,8 @@ #include "chrome/common/chrome_features.h" #include "chrome/common/chrome_isolated_world_ids.h" #include "chrome/common/chrome_switches.h" @@ -3880,7 +3880,7 @@ diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc #include "components/autofill/content/browser/content_autofill_client.h" #include "components/autofill/content/browser/content_autofill_driver_factory.h" #include "components/autofill/core/browser/foundations/browser_autofill_manager.h" -@@ -342,6 +348,12 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) { +@@ -344,6 +350,12 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) { optimization_guide_decider); } } @@ -3893,7 +3893,7 @@ diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc autofill::AutofillClientProvider& autofill_client_provider = autofill::AutofillClientProviderFactory::GetForProfile(profile); autofill_client_provider.CreateClientForWebContents(web_contents); -@@ -379,6 +391,7 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) { +@@ -385,6 +397,7 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) { ip_protection::IpProtectionStatus::CreateForWebContents(web_contents); } #endif // BUILDFLAG(IS_ANDROID) @@ -3914,7 +3914,7 @@ diff --git a/chrome/chrome_paks.gni b/chrome/chrome_paks.gni import("//ash/ambient/resources/resources.gni") import("//build/config/chrome_build.gni") -@@ -126,6 +129,7 @@ template("chrome_extra_paks") { +@@ -125,6 +128,7 @@ template("chrome_extra_paks") { "$root_gen_dir/chrome/connectors_internals_resources.pak", "$root_gen_dir/chrome/saved_tab_groups_unsupported_resources.pak", "$root_gen_dir/chrome/segmentation_internals_resources.pak", @@ -3922,7 +3922,7 @@ diff --git a/chrome/chrome_paks.gni b/chrome/chrome_paks.gni "$root_gen_dir/components/autofill/core/browser/geo/autofill_address_rewriter_resources.pak", "$root_gen_dir/components/autofill_and_password_manager_internals_resources.pak", "$root_gen_dir/components/chrome_urls_resources.pak", -@@ -164,6 +168,7 @@ template("chrome_extra_paks") { +@@ -163,6 +167,7 @@ template("chrome_extra_paks") { "//chrome/browser/resources/connectors_internals:resources", "//chrome/browser/resources/saved_tab_groups_unsupported:resources", "//chrome/common:resources", @@ -3956,7 +3956,7 @@ diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn import("//build/cipd/cipd.gni") import("//build/config/buildflags_paint_preview.gni") -@@ -1851,6 +1854,7 @@ if (is_android) { +@@ -1879,6 +1882,7 @@ if (is_android) { "//chrome/test/data/webui:browser_tests", "//chrome/test/data/webui:interactive_ui_tests", "//chrome/test/data/webui:resources", @@ -3964,7 +3964,7 @@ diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn "//components/autofill/content/browser:test_support", "//components/autofill/content/renderer:test_support", "//components/autofill/core/common", -@@ -2500,6 +2504,7 @@ if (!is_android) { +@@ -2536,6 +2540,7 @@ if (!is_android) { "//chrome/test/media_router/access_code_cast:access_code_cast_integration_base", "//chrome/test/payments:test_support", "//chrome/test/supervised_user:test_support", @@ -3972,7 +3972,7 @@ diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn "//components/affiliations/core/browser:affiliation_proto", "//components/affiliations/core/browser:test_support", "//components/autofill/content/browser:autofill_shared_storage_proto", -@@ -3012,6 +3017,7 @@ if (!is_android) { +@@ -3054,6 +3059,7 @@ if (!is_android) { "//chrome/test/data/cart/", "//chrome/test/data/devtools/protocol/flash_embed_test.html", "//components/test/data/ad_tagging/", @@ -3980,9 +3980,9 @@ diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn "//components/test/data/ads_observer/", "//components/test/data/autofill/", "//components/test/data/custom_handlers", -@@ -3103,6 +3109,9 @@ if (!is_android) { +@@ -3145,6 +3151,9 @@ if (!is_android) { "../browser/accessibility/live_translate_controller_browsertest.cc", - "../browser/accessibility/page_colors_browsertest.cc", + "../browser/accessibility/page_colors_controller_browsertest.cc", "../browser/accessibility/phrase_segmentation/dependency_parser_model_loader_browsertest.cc", + "../browser/adblock/test/adblock_frame_hierarchy_builder_browsertest.cc", + "../browser/adblock/test/adblock_multiple_tabs_browsertest.cc", @@ -3990,7 +3990,7 @@ diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn "../browser/ai/ai_data_keyed_service_browsertest.cc", "../browser/attribution_reporting/chrome_attribution_browsertest.cc", "../browser/autocomplete/autocomplete_browsertest.cc", -@@ -4687,6 +4696,7 @@ if (!is_android) { +@@ -4739,6 +4748,7 @@ if (!is_android) { ] } @@ -3998,7 +3998,7 @@ diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn if (is_chromeos) { deps += [ "//chrome/browser/ui/webui/ash/parent_access:test_support", -@@ -6249,6 +6259,7 @@ test("unit_tests") { +@@ -6308,6 +6318,7 @@ test("unit_tests") { sources = [ # All unittests in browser, common, renderer and service. "../browser/about_flags_unittest.cc", @@ -4006,9 +4006,9 @@ diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn "../browser/after_startup_task_utils_unittest.cc", "../browser/apps/icon_standardizer_unittest.cc", "../browser/apps/user_type_filter_unittest.cc", -@@ -10780,6 +10791,7 @@ if (!is_android) { - "//chrome/browser/ui/exclusive_access", +@@ -10826,6 +10837,7 @@ if (!is_android) { "//chrome/browser/ui/views/frame:toolbar_button_provider", + "//chrome/browser/ui/views/interaction", "//chrome/browser/ui/views/side_panel", + "//components/adblock/core:test_support", "//components/supervised_user/core/browser", diff --git a/build/cromite_patches/eyeo-133.0.6943.49-extension_api.patch b/build/cromite_patches/eyeo-133.0.6943.49-extension_api.patch index 83dcea83185ca2be755f565eba4cad35ff51fbdd..1e1e6f4ffd1b3380faf16fa34ba76d17dda0ca73 100644 --- a/build/cromite_patches/eyeo-133.0.6943.49-extension_api.patch +++ b/build/cromite_patches/eyeo-133.0.6943.49-extension_api.patch @@ -72,7 +72,7 @@ Pre-requisites: eyeo Browser Ad filtering Solution: Base Module diff --git a/chrome/browser/extensions/BUILD.gn b/chrome/browser/extensions/BUILD.gn --- a/chrome/browser/extensions/BUILD.gn +++ b/chrome/browser/extensions/BUILD.gn -@@ -828,6 +828,17 @@ source_set("extensions") { +@@ -832,6 +832,17 @@ source_set("extensions") { ] } @@ -2138,7 +2138,7 @@ diff --git a/chrome/browser/extensions/api/api_browser_context_keyed_service_fac #include "chrome/browser/extensions/api/bookmarks/bookmarks_api.h" #include "chrome/browser/extensions/api/bookmarks/bookmarks_api_watcher.h" -@@ -29,11 +33,13 @@ +@@ -30,11 +34,13 @@ #include "build/build_config.h" #include "build/chromeos_buildflags.h" #include "chrome/browser/extensions/api/activity_log_private/activity_log_private_api.h" @@ -2151,8 +2151,8 @@ diff --git a/chrome/browser/extensions/api/api_browser_context_keyed_service_fac +#include "chrome/browser/extensions/api/eyeo_filtering_private/eyeo_filtering_private_api.h" #include "chrome/browser/extensions/api/image_writer_private/operation_manager.h" #include "chrome/browser/extensions/api/language_settings_private/language_settings_private_delegate_factory.h" - #include "chrome/browser/extensions/api/messaging/incognito_connectability.h" // nogncheck -@@ -102,6 +108,8 @@ void EnsureApiBrowserContextKeyedServiceFactoriesBuilt() { + #include "chrome/browser/extensions/api/networking_private/networking_private_ui_delegate_factory_impl.h" +@@ -103,6 +109,8 @@ void EnsureApiBrowserContextKeyedServiceFactoriesBuilt() { #if BUILDFLAG(ENABLE_EXTENSIONS) extensions::ActivityLogAPI::GetFactoryInstance(); @@ -3601,9 +3601,9 @@ diff --git a/chrome/common/extensions/api/_api_features.json b/chrome/common/ext // This features file defines extension APIs implemented under src/chrome. // See chrome/common/extensions/api/_features.md to understand this file, as -@@ -71,6 +75,16 @@ - "dependencies": ["permission:experimentalAiData"], - "channel": "stable" +@@ -68,6 +72,16 @@ + "contexts": ["privileged_extension"], + "dependencies": ["permission:experimentalAiData"] }, + "adblockPrivate": [{ + "dependencies": ["permission:adblockPrivate"], @@ -3618,7 +3618,7 @@ diff --git a/chrome/common/extensions/api/_api_features.json b/chrome/common/ext "app": { "blocklist": [ "2FC374607C2DF285634B67C64A2E356C607091C3", // Quickoffice -@@ -543,6 +557,14 @@ +@@ -540,6 +554,14 @@ "channel": "stable", "contexts": [] }, @@ -3661,7 +3661,7 @@ diff --git a/chrome/common/extensions/api/_permission_features.json b/chrome/com "autofillPrivate": { "channel": "trunk", "extension_types": ["extension", "platform_app"], -@@ -415,6 +426,13 @@ +@@ -407,6 +418,13 @@ // "desktop_android" is not supported. "platforms": ["chromeos", "linux", "mac", "win"] }, @@ -3873,10 +3873,10 @@ diff --git a/chrome/common/extensions/api/api_sources.gni b/chrome/common/extens import("//build/config/features.gni") import("//chrome/common/features.gni") -@@ -32,7 +35,8 @@ schema_sources_ = [ +@@ -34,7 +37,8 @@ schema_sources_ = [ "scripting.idl", "tabs.json", - "web_authentication_proxy.idl", + "web_authentication_proxy.webidl", - + "adblock_private.idl", + "eyeo_filtering_private.idl", @@ -4155,7 +4155,7 @@ diff --git a/chrome/common/extensions/permissions/permission_set_unittest.cc b/c diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn --- a/chrome/test/BUILD.gn +++ b/chrome/test/BUILD.gn -@@ -4151,6 +4151,20 @@ if (!is_android) { +@@ -4206,6 +4206,20 @@ if (!is_android) { ] } diff --git a/build/cromite_patches/kill-Auth.patch b/build/cromite_patches/kill-Auth.patch index d1b03d4975bc4d62f9aa1fc4b826f74adebe90cd..1b461fbf7320588324696256b42b277f559c082a 100644 --- a/build/cromite_patches/kill-Auth.patch +++ b/build/cromite_patches/kill-Auth.patch @@ -4,127 +4,23 @@ Subject: kill Auth License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html --- - .../signin/SystemAccountManagerDelegate.java | 78 +------------------ - 1 file changed, 4 insertions(+), 74 deletions(-) + .../components/signin/AccountManagerFacadeProvider.java | 6 +----- + 1 file changed, 1 insertion(+), 5 deletions(-) -diff --git a/components/signin/public/android/java/src/org/chromium/components/signin/SystemAccountManagerDelegate.java b/components/signin/public/android/java/src/org/chromium/components/signin/SystemAccountManagerDelegate.java ---- a/components/signin/public/android/java/src/org/chromium/components/signin/SystemAccountManagerDelegate.java -+++ b/components/signin/public/android/java/src/org/chromium/components/signin/SystemAccountManagerDelegate.java -@@ -24,9 +24,6 @@ import android.os.PatternMatcher; - import android.os.Process; - import android.os.SystemClock; +diff --git a/components/signin/public/android/java/src/org/chromium/components/signin/AccountManagerFacadeProvider.java b/components/signin/public/android/java/src/org/chromium/components/signin/AccountManagerFacadeProvider.java +--- a/components/signin/public/android/java/src/org/chromium/components/signin/AccountManagerFacadeProvider.java ++++ b/components/signin/public/android/java/src/org/chromium/components/signin/AccountManagerFacadeProvider.java +@@ -24,11 +24,7 @@ public class AccountManagerFacadeProvider { + private static final AccountManagerFacade INSTANCE; --import com.google.android.gms.auth.GoogleAuthException; --import com.google.android.gms.auth.GoogleAuthUtil; -- - import org.chromium.base.ApiCompatibilityUtils; - import org.chromium.base.Callback; - import org.chromium.base.ContextUtils; -@@ -94,18 +91,6 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { - - @Override - public Account[] getAccountsSynchronous() throws AccountManagerDelegateException { -- if (!isGooglePlayServicesAvailable()) { -- throw new AccountManagerDelegateException("Can't use Google Play Services"); -- } -- if (hasGetAccountsPermission()) { -- long startTime = SystemClock.elapsedRealtime(); -- Account[] accounts = -- mAccountManager.getAccountsByType(GoogleAuthUtil.GOOGLE_ACCOUNT_TYPE); -- RecordHistogram.recordTimesHistogram( -- "Signin.AndroidGetAccountsTime_AccountManager", -- SystemClock.elapsedRealtime() - startTime); -- return accounts; -- } - // Don't report any accounts if we don't have permission. - // TODO(crbug.com/40942462): Throw an exception if permission was denied. - return new Account[] {}; -@@ -116,43 +101,13 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { - public AccessTokenData getAccessToken(Account account, String authTokenScope) - throws AuthException { - ThreadUtils.assertOnBackgroundThread(); -- assert AccountUtils.GOOGLE_ACCOUNT_TYPE.equals(account.type); -- try { -- return new AccessTokenData( -- GoogleAuthUtil.getTokenWithNotification( -- ContextUtils.getApplicationContext(), account, authTokenScope, null)); -- } catch (GoogleAuthException ex) { -- // This case includes a UserRecoverableNotifiedException, but most clients will have -- // their own retry mechanism anyway. -- throw new AuthException( -- "Error while getting token for scope '" + authTokenScope + "'", -- ex, -- new GoogleServiceAuthError( -- GoogleServiceAuthErrorState.INVALID_GAIA_CREDENTIALS)); -- } catch (IOException ex) { -- throw new AuthException( -- "Error while getting token for scope '" + authTokenScope + "'", -- ex, -- new GoogleServiceAuthError(GoogleServiceAuthErrorState.CONNECTION_FAILED)); -- } -+ throw new AuthException(AuthException.NONTRANSIENT, -+ "Error while getting token for scope '" + authTokenScope + "'", -+ new IOException()); - } - - @Override - public void invalidateAccessToken(String authToken) throws AuthException { -- try { -- GoogleAuthUtil.clearToken(ContextUtils.getApplicationContext(), authToken); -- } catch (GoogleAuthException ex) { -- throw new AuthException( -- "Error while invalidating access token", -- ex, -- new GoogleServiceAuthError( -- GoogleServiceAuthErrorState.INVALID_GAIA_CREDENTIALS)); -- } catch (IOException ex) { -- throw new AuthException( -- "Error while invalidating access token", -- ex, -- new GoogleServiceAuthError(GoogleServiceAuthErrorState.CONNECTION_FAILED)); -- } - } - - @Override -@@ -168,24 +123,6 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { - @SuppressLint("MissingPermission") - @Override - public void createAddAccountIntent(Callback<@Nullable Intent> callback) { -- AccountManagerCallback accountManagerCallback = -- accountManagerFuture -> { -- try { -- Bundle bundle = accountManagerFuture.getResult(); -- callback.onResult(bundle.getParcelable(AccountManager.KEY_INTENT)); -- } catch (OperationCanceledException | IOException | AuthenticatorException e) { -- Log.e(TAG, "Error while creating an intent to add an account: ", e); -- callback.onResult(null); -- } -- }; -- mAccountManager.addAccount( -- GoogleAuthUtil.GOOGLE_ACCOUNT_TYPE, -- null, -- null, -- null, -- null, -- accountManagerCallback, -- null); + static { +- AccountManagerDelegate delegate = +- ServiceLoaderUtil.maybeCreate(AccountManagerDelegate.class); +- if (delegate == null) { +- delegate = new NullAccountManagerDelegate(); +- } ++ var delegate = new NullAccountManagerDelegate(); + INSTANCE = new AccountManagerFacadeImpl(delegate); + } } - - // No permission is needed on 23+ and Chrome always has MANAGE_ACCOUNTS permission on lower APIs -@@ -219,14 +156,7 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { - - @Override - public @Nullable GaiaId getAccountGaiaId(String accountEmail) { -- try { -- return new GaiaId( -- GoogleAuthUtil.getAccountId( -- ContextUtils.getApplicationContext(), accountEmail)); -- } catch (IOException | GoogleAuthException ex) { -- Log.e(TAG, "SystemAccountManagerDelegate.getAccountGaiaId", ex); -- return null; -- } -+ return null; - } - - @Override -- diff --git a/build/cromite_patches/kill-Location-fall-back-to-system.patch b/build/cromite_patches/kill-Location-fall-back-to-system.patch index 36b31f749999e85e2255c8f2361cc9ec13063f8b..a3c29e0dcb1c104e0d92ef2164bcf640e4d9009c 100644 --- a/build/cromite_patches/kill-Location-fall-back-to-system.patch +++ b/build/cromite_patches/kill-Location-fall-back-to-system.patch @@ -4,15 +4,15 @@ Subject: kill Location, fall back to system License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html --- - services/device/geolocation/BUILD.gn | 1 - - .../device/geolocation/LocationProviderFactory.java | 11 ++--------- - services/device/public/cpp/device_features.cc | 3 ++- - 3 files changed, 4 insertions(+), 11 deletions(-) + services/device/geolocation/BUILD.gn | 1 - + .../geolocation/LocationProviderFactory.java | 20 ++----------------- + services/device/public/cpp/device_features.cc | 3 ++- + 3 files changed, 4 insertions(+), 20 deletions(-) diff --git a/services/device/geolocation/BUILD.gn b/services/device/geolocation/BUILD.gn --- a/services/device/geolocation/BUILD.gn +++ b/services/device/geolocation/BUILD.gn -@@ -152,7 +152,6 @@ if (is_android) { +@@ -155,7 +155,6 @@ if (is_android) { "android/java/src/org/chromium/device/geolocation/LocationProviderAdapter.java", "android/java/src/org/chromium/device/geolocation/LocationProviderAndroid.java", "android/java/src/org/chromium/device/geolocation/LocationProviderFactory.java", @@ -23,7 +23,7 @@ diff --git a/services/device/geolocation/BUILD.gn b/services/device/geolocation/ diff --git a/services/device/geolocation/android/java/src/org/chromium/device/geolocation/LocationProviderFactory.java b/services/device/geolocation/android/java/src/org/chromium/device/geolocation/LocationProviderFactory.java --- a/services/device/geolocation/android/java/src/org/chromium/device/geolocation/LocationProviderFactory.java +++ b/services/device/geolocation/android/java/src/org/chromium/device/geolocation/LocationProviderFactory.java -@@ -29,19 +29,12 @@ public class LocationProviderFactory { +@@ -51,28 +51,12 @@ public class LocationProviderFactory { @CalledByNative public static void useGmsCoreLocationProvider() { @@ -38,8 +38,17 @@ diff --git a/services/device/geolocation/android/java/src/org/chromium/device/ge - && LocationProviderGmsCore.isGooglePlayServicesAvailable( - ContextUtils.getApplicationContext())) { - sProviderImpl = new LocationProviderGmsCore(ContextUtils.getApplicationContext()); +- RecordHistogram.recordEnumeratedHistogram( +- "Geolocation.AndroidLocationProvider.ProviderType", +- LocationProviderType.GMS_CORE, +- LocationProviderType.COUNT); +- - } else { - sProviderImpl = new LocationProviderAndroid(); +- RecordHistogram.recordEnumeratedHistogram( +- "Geolocation.AndroidLocationProvider.ProviderType", +- LocationProviderType.ANDROID, +- LocationProviderType.COUNT); - } + sProviderImpl = new LocationProviderAndroid(); return sProviderImpl; diff --git a/build/cromite_patches/kill-Vision.patch b/build/cromite_patches/kill-Vision.patch index fd9bfdb8ae6a465209f8b185c5ad34d7756c3538..29d2e19502f9326b1ae629f7ff70780bb3fea704 100644 --- a/build/cromite_patches/kill-Vision.patch +++ b/build/cromite_patches/kill-Vision.patch @@ -15,7 +15,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -319,8 +319,6 @@ if (_is_default_toolchain) { +@@ -318,8 +318,6 @@ if (_is_default_toolchain) { "$google_play_services_package:google_play_services_gcm_java", "$google_play_services_package:google_play_services_iid_java", "$google_play_services_package:google_play_services_tasks_java", @@ -27,7 +27,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn diff --git a/services/shape_detection/BUILD.gn b/services/shape_detection/BUILD.gn --- a/services/shape_detection/BUILD.gn +++ b/services/shape_detection/BUILD.gn -@@ -122,21 +122,13 @@ if (is_android) { +@@ -124,21 +124,13 @@ if (is_android) { android_library("shape_detection_java") { sources = [ diff --git a/build/cromite_patches/sharing-hub-always-use-visible-URL.patch b/build/cromite_patches/sharing-hub-always-use-visible-URL.patch index d2212fc1c336cc775cab5fc061ad7ca58120800e..86526ce59e5ece5de40d70ffd1d67c9e9ea9f4fa 100644 --- a/build/cromite_patches/sharing-hub-always-use-visible-URL.patch +++ b/build/cromite_patches/sharing-hub-always-use-visible-URL.patch @@ -10,7 +10,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/java/src/org/chromium/chrome/browser/share/ShareDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/share/ShareDelegateImpl.java --- a/chrome/android/java/src/org/chromium/chrome/browser/share/ShareDelegateImpl.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/share/ShareDelegateImpl.java -@@ -304,6 +304,7 @@ public class ShareDelegateImpl implements ShareDelegate { +@@ -314,6 +314,7 @@ public class ShareDelegateImpl implements ShareDelegate { @VisibleForTesting static boolean shouldFetchCanonicalUrl(final Tab currentTab) { diff --git a/build/cromite_patches/ungoogled-chromium-Disable-profile-avatar.patch b/build/cromite_patches/ungoogled-chromium-Disable-profile-avatar.patch index 869d38401b6bccbf66aa86d0f6fb41ca1101374f..3e65583cb4054f0b0ca2cd87292ae9bd77b51122 100644 --- a/build/cromite_patches/ungoogled-chromium-Disable-profile-avatar.patch +++ b/build/cromite_patches/ungoogled-chromium-Disable-profile-avatar.patch @@ -14,7 +14,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -1304,8 +1304,6 @@ static_library("browser") { +@@ -1297,8 +1297,6 @@ static_library("browser") { "profiles/incognito_mode_policy_handler.h", "profiles/off_the_record_profile_impl.cc", "profiles/off_the_record_profile_impl.h", @@ -22,11 +22,11 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn - "profiles/profile_avatar_downloader.h", "profiles/profile_destroyer.cc", "profiles/profile_destroyer.h", - "profiles/profile_downloader.cc", + "profiles/profile_impl.cc", diff --git a/chrome/browser/profiles/profile_attributes_entry.cc b/chrome/browser/profiles/profile_attributes_entry.cc --- a/chrome/browser/profiles/profile_attributes_entry.cc +++ b/chrome/browser/profiles/profile_attributes_entry.cc -@@ -376,12 +376,6 @@ gfx::Image ProfileAttributesEntry::GetAvatarIcon( +@@ -381,12 +381,6 @@ gfx::Image ProfileAttributesEntry::GetAvatarIcon( int size_for_placeholder_avatar, bool use_high_res_file, const PlaceholderAvatarIconParams& icon_params) const { diff --git a/build/cromite_patches/ungoogled-chromium-Disable-translate-integration.patch b/build/cromite_patches/ungoogled-chromium-Disable-translate-integration.patch index 3c7cd7d6bd62e7b121e143c9f34fd660bf8dbbb1..ae14fa775cc303be2abe3ba0f6096402b1828215 100644 --- a/build/cromite_patches/ungoogled-chromium-Disable-translate-integration.patch +++ b/build/cromite_patches/ungoogled-chromium-Disable-translate-integration.patch @@ -6,24 +6,24 @@ Remove translate offer License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html --- - .../xml/languages_detailed_preferences.xml | 43 ----------------- + .../xml/languages_detailed_preferences.xml | 42 ----------------- .../java/res/xml/languages_preferences.xml | 5 -- .../language/settings/LanguageSettings.java | 47 +------------------ .../strings/android_chrome_strings.grd | 3 -- .../core/browser/translate_manager.cc | 5 +- .../core/browser/translate_script.cc | 17 ++----- - 6 files changed, 10 insertions(+), 110 deletions(-) + 6 files changed, 10 insertions(+), 109 deletions(-) diff --git a/chrome/browser/language/android/java/res/xml/languages_detailed_preferences.xml b/chrome/browser/language/android/java/res/xml/languages_detailed_preferences.xml --- a/chrome/browser/language/android/java/res/xml/languages_detailed_preferences.xml +++ b/chrome/browser/language/android/java/res/xml/languages_detailed_preferences.xml -@@ -31,47 +31,4 @@ found in the LICENSE file. +@@ -39,46 +39,4 @@ found in the LICENSE file. - @@ -37,8 +37,7 @@ diff --git a/chrome/browser/language/android/java/res/xml/languages_detailed_pre - - - @@ -68,7 +67,7 @@ diff --git a/chrome/browser/language/android/java/res/xml/languages_detailed_pre diff --git a/chrome/browser/language/android/java/res/xml/languages_preferences.xml b/chrome/browser/language/android/java/res/xml/languages_preferences.xml --- a/chrome/browser/language/android/java/res/xml/languages_preferences.xml +++ b/chrome/browser/language/android/java/res/xml/languages_preferences.xml -@@ -13,9 +13,4 @@ found in the LICENSE file. +@@ -18,9 +18,4 @@ found in the LICENSE file. android:layout="@layout/languages_preference" android:widgetLayout="@layout/accept_languages_list" /> @@ -173,7 +172,7 @@ diff --git a/chrome/browser/language/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 -@@ -1991,9 +1991,6 @@ Your Google account may have other forms of browsing history like searches and a +@@ -1940,9 +1940,6 @@ Your Google account may have other forms of browsing history like searches and a Let websites know the languages you speak. They’ll show content in those languages, when possible. @@ -201,7 +200,7 @@ diff --git a/components/translate/core/browser/translate_manager.cc b/components diff --git a/components/translate/core/browser/translate_script.cc b/components/translate/core/browser/translate_script.cc --- a/components/translate/core/browser/translate_script.cc +++ b/components/translate/core/browser/translate_script.cc -@@ -126,20 +126,13 @@ void TranslateScript::OnScriptFetchComplete(bool success, +@@ -134,20 +134,13 @@ void TranslateScript::OnScriptFetchComplete(bool success, data_ = base::StringPrintf("var translateApiKey = '%s';\n", google_apis::GetAPIKey().c_str()); diff --git a/build/cromite_patches/ungoogled-chromium-Disable-webRTC-log-uploader.patch b/build/cromite_patches/ungoogled-chromium-Disable-webRTC-log-uploader.patch index 1c0dd856a6e75a145dd0fc80cc45161188536972..c5f898db2169df657a470b39fc4c29bae5053539 100644 --- a/build/cromite_patches/ungoogled-chromium-Disable-webRTC-log-uploader.patch +++ b/build/cromite_patches/ungoogled-chromium-Disable-webRTC-log-uploader.patch @@ -10,7 +10,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/browser/ui/browser_ui_prefs.cc b/chrome/browser/ui/browser_ui_prefs.cc --- a/chrome/browser/ui/browser_ui_prefs.cc +++ b/chrome/browser/ui/browser_ui_prefs.cc -@@ -135,7 +135,7 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistrySyncable* registry) { +@@ -139,7 +139,7 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistrySyncable* registry) { registry->RegisterStringPref(prefs::kWebRTCUDPPortRange, std::string()); registry->RegisterBooleanPref(prefs::kWebRtcEventLogCollectionAllowed, false); registry->RegisterListPref(prefs::kWebRtcLocalIpsAllowedUrls); diff --git a/build/cromite_patches/ungoogled-chromium-no-special-hosts-domains.patch b/build/cromite_patches/ungoogled-chromium-no-special-hosts-domains.patch index 1f5136161d935d3f0e6907e34152cf598e02c4d3..80407088dc5839ebbc06acd1b19306c0e0f595aa 100644 --- a/build/cromite_patches/ungoogled-chromium-no-special-hosts-domains.patch +++ b/build/cromite_patches/ungoogled-chromium-no-special-hosts-domains.patch @@ -40,8 +40,9 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html chrome/browser/ui/BUILD.gn | 1 - chrome/browser/ui/android/omnibox/BUILD.gn | 2 - .../omnibox/LocationBarCoordinator.java | 2 - - .../browser/omnibox/LocationBarMediator.java | 23 -- + .../browser/omnibox/LocationBarMediator.java | 24 -- .../ui/webui/new_tab_page/new_tab_page_ui.cc | 6 - + chrome/browser/upgrade_detector/BUILD.gn | 2 - .../upgrade_detector/upgrade_detector_impl.cc | 6 - chrome/common/BUILD.gn | 2 - .../google_accounts_private_api_util.cc | 3 + @@ -68,13 +69,13 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html ...gled-chromium-no-special-hosts-domains.inc | 1 + net/base/url_util.cc | 25 +- services/network/network_context.cc | 2 +- - 61 files changed, 55 insertions(+), 884 deletions(-) + 62 files changed, 55 insertions(+), 887 deletions(-) create mode 100644 cromite_flags/content/public/common/content_features_cc/ungoogled-chromium-no-special-hosts-domains.inc diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java b/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java --- a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java -@@ -103,7 +103,6 @@ import org.chromium.chrome.browser.multiwindow.MultiWindowUtils; +@@ -102,7 +102,6 @@ import org.chromium.chrome.browser.multiwindow.MultiWindowUtils; import org.chromium.chrome.browser.ntp_customization.NtpCustomizationUtils; import org.chromium.chrome.browser.ntp_customization.edge_to_edge.TopInsetCoordinator; import org.chromium.chrome.browser.omnibox.OmniboxFocusReason; @@ -82,7 +83,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordi import org.chromium.chrome.browser.omnibox.suggestions.action.OmniboxActionDelegateImpl; import org.chromium.chrome.browser.paint_preview.DemoPaintPreview; import org.chromium.chrome.browser.password_manager.ManagePasswordsReferrer; -@@ -1227,10 +1226,8 @@ public class RootUiCoordinator +@@ -1225,10 +1224,8 @@ public class RootUiCoordinator Profile profile = tab.getProfile(); TemplateUrlService service = TemplateUrlServiceFactory.getForProfile(profile); String url = service.getUrlForSearchQuery(query); @@ -96,7 +97,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordi diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -934,10 +934,6 @@ static_library("browser") { +@@ -932,10 +932,6 @@ static_library("browser") { "page_info/privacy_policy_insights_service_factory.h", "page_load_metrics/observers/bookmark_bar_page_load_metrics_observer.cc", "page_load_metrics/observers/bookmark_bar_page_load_metrics_observer.h", @@ -107,7 +108,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn "page_load_metrics/observers/core/amp_page_load_metrics_observer.cc", "page_load_metrics/observers/core/amp_page_load_metrics_observer.h", "page_load_metrics/observers/core/ukm_page_load_metrics_observer.cc", -@@ -946,10 +942,6 @@ static_library("browser") { +@@ -944,10 +940,6 @@ static_library("browser") { "page_load_metrics/observers/document_write_page_load_metrics_observer.h", "page_load_metrics/observers/foreground_duration_ukm_observer.cc", "page_load_metrics/observers/foreground_duration_ukm_observer.h", @@ -118,7 +119,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn "page_load_metrics/observers/histogram_suffixes.cc", "page_load_metrics/observers/histogram_suffixes.h", "page_load_metrics/observers/https_engagement_metrics/https_engagement_page_load_metrics_observer.cc", -@@ -1567,8 +1559,6 @@ static_library("browser") { +@@ -1536,8 +1528,6 @@ static_library("browser") { "supervised_user/supervised_user_browser_utils.h", "supervised_user/supervised_user_content_filters_service_factory.cc", "supervised_user/supervised_user_content_filters_service_factory.h", @@ -127,7 +128,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn "supervised_user/supervised_user_interstitial_tab_closer.cc", "supervised_user/supervised_user_interstitial_tab_closer.h", "supervised_user/supervised_user_metrics_service_factory.cc", -@@ -1756,10 +1746,7 @@ static_library("browser") { +@@ -1723,10 +1713,7 @@ static_library("browser") { "//chrome/browser/content_settings:impl", "//chrome/browser/devtools", "//chrome/browser/favicon", @@ -138,7 +139,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn "//chrome/browser/ip_protection", "//chrome/browser/media/webrtc", "//chrome/browser/navigation_predictor:impl", -@@ -1884,7 +1871,6 @@ static_library("browser") { +@@ -1856,7 +1843,6 @@ static_library("browser") { # New dependencies inside of //chrome/browser that generate header files # should be added to browser_generated_files. ":browser_public_dependencies", @@ -169,7 +170,7 @@ diff --git a/chrome/browser/android/metrics/uma_session_stats.cc b/chrome/browse diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_process_impl.cc --- a/chrome/browser/browser_process_impl.cc +++ b/chrome/browser/browser_process_impl.cc -@@ -1264,7 +1264,6 @@ BrowserProcessImpl::component_updater() { +@@ -1261,7 +1261,6 @@ BrowserProcessImpl::component_updater() { std::make_unique(); std::string brand; @@ -180,7 +181,7 @@ diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_pro diff --git a/chrome/browser/chrome_browser_main.cc b/chrome/browser/chrome_browser_main.cc --- a/chrome/browser/chrome_browser_main.cc +++ b/chrome/browser/chrome_browser_main.cc -@@ -460,11 +460,6 @@ void ProcessSingletonNotificationCallbackImpl( +@@ -455,11 +455,6 @@ void ProcessSingletonNotificationCallbackImpl( StartupBrowserCreator::ProcessCommandLineAlreadyRunning( command_line, current_directory, startup_profile_path_info); @@ -192,7 +193,7 @@ diff --git a/chrome/browser/chrome_browser_main.cc b/chrome/browser/chrome_brows } #endif // BUILDFLAG(ENABLE_PROCESS_SINGLETON) -@@ -1723,11 +1718,6 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() { +@@ -1732,11 +1727,6 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() { upgrade_util::SaveLastModifiedTimeOfExe(); #endif @@ -207,7 +208,7 @@ diff --git a/chrome/browser/chrome_browser_main.cc b/chrome/browser/chrome_brows 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 -@@ -2966,7 +2966,6 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches( +@@ -3099,7 +3099,6 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches( switches::kForceAppMode, #endif switches::kForceUIDirection, @@ -215,7 +216,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch switches::kJavaScriptHarmony, switches::kEnableExperimentalWebAssemblyFeatures, embedder_support::kOriginTrialDisabledFeatures, -@@ -5708,7 +5707,8 @@ GetClientDataHeader(content::FrameTreeNodeId frame_tree_node_id) { +@@ -5857,7 +5856,8 @@ GetClientDataHeader(content::FrameTreeNodeId frame_tree_node_id) { } #endif @@ -225,7 +226,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch #if BUILDFLAG(IS_ANDROID) const std::string& client_data_header, #endif -@@ -5748,7 +5748,7 @@ std::unique_ptr CreateGoogleURLLoaderThrottle( +@@ -5897,7 +5897,7 @@ std::unique_ptr CreateGoogleURLLoaderThrottle( std::move(bound_session_request_throttled_handler), #endif std::move(dynamic_params)); @@ -234,7 +235,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch std::vector> ChromeContentBrowserClient::CreateURLLoaderThrottles( -@@ -5805,15 +5805,6 @@ ChromeContentBrowserClient::CreateURLLoaderThrottles( +@@ -5954,15 +5954,6 @@ ChromeContentBrowserClient::CreateURLLoaderThrottles( GetClientDataHeader(frame_tree_node_id); #endif @@ -250,7 +251,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch { auto* factory = ProtocolHandlerRegistryFactory::GetForBrowserContext(browser_context); -@@ -5858,20 +5849,6 @@ ChromeContentBrowserClient::CreateURLLoaderThrottlesForKeepAlive( +@@ -6007,20 +5998,6 @@ ChromeContentBrowserClient::CreateURLLoaderThrottlesForKeepAlive( Profile* profile = Profile::FromBrowserContext(browser_context); DCHECK(profile); @@ -362,7 +363,7 @@ diff --git a/chrome/browser/enterprise/connectors/device_trust/key_management/br diff --git a/chrome/browser/extensions/BUILD.gn b/chrome/browser/extensions/BUILD.gn --- a/chrome/browser/extensions/BUILD.gn +++ b/chrome/browser/extensions/BUILD.gn -@@ -521,7 +521,6 @@ source_set("extensions") { +@@ -527,7 +527,6 @@ source_set("extensions") { "//chrome/browser/extensions:cws_item_service_proto", "//chrome/browser/extensions/api:api_registration", "//chrome/browser/favicon", @@ -406,7 +407,7 @@ diff --git a/chrome/browser/feedback/system_logs/log_sources/chrome_internal_log diff --git a/chrome/browser/first_run/first_run.cc b/chrome/browser/first_run/first_run.cc --- a/chrome/browser/first_run/first_run.cc +++ b/chrome/browser/first_run/first_run.cc -@@ -296,14 +296,6 @@ void SetupInitialPrefsFromInstallPrefs( +@@ -497,14 +497,6 @@ void SetupInitialPrefsFromInstallPrefs( // -- Platform-specific functions -- @@ -445,7 +446,7 @@ diff --git a/chrome/browser/google/BUILD.gn b/chrome/browser/google/BUILD.gn diff --git a/chrome/browser/long_screenshots/long_screenshots_tab_service.cc b/chrome/browser/long_screenshots/long_screenshots_tab_service.cc --- a/chrome/browser/long_screenshots/long_screenshots_tab_service.cc +++ b/chrome/browser/long_screenshots/long_screenshots_tab_service.cc -@@ -36,13 +36,11 @@ constexpr size_t kMaxPerCaptureSizeBytes = 50 * 1000L * 1000L; // 50 MB. +@@ -37,13 +37,11 @@ constexpr size_t kMaxPerCaptureSizeBytes = 50 * 1000L * 1000L; // 50 MB. // Host/regex pattern for Google AMP Cache URLs. // See https://developers.google.com/amp/cache/overview#amp-cache-url-format // for a definition of the format of AMP Cache URLs. @@ -459,7 +460,7 @@ diff --git a/chrome/browser/long_screenshots/long_screenshots_tab_service.cc b/c const char kGoogleNewsPathPattern[] = "/articles/(.*)"; } // namespace -@@ -231,26 +229,6 @@ bool LongScreenshotsTabService::IsAmpUrl(const GURL& url) { +@@ -242,26 +240,6 @@ bool LongScreenshotsTabService::IsAmpUrl(const GURL& url) { return false; } @@ -489,7 +490,7 @@ diff --git a/chrome/browser/long_screenshots/long_screenshots_tab_service.cc b/c diff --git a/chrome/browser/metrics/chrome_metrics_service_client.cc b/chrome/browser/metrics/chrome_metrics_service_client.cc --- a/chrome/browser/metrics/chrome_metrics_service_client.cc +++ b/chrome/browser/metrics/chrome_metrics_service_client.cc -@@ -618,7 +618,7 @@ ChromeMetricsServiceClient::GetNetworkTimeTracker() { +@@ -620,7 +620,7 @@ ChromeMetricsServiceClient::GetNetworkTimeTracker() { } bool ChromeMetricsServiceClient::GetBrand(std::string* brand_code) { @@ -620,7 +621,7 @@ diff --git a/chrome/browser/metrics/metrics_reporting_state.cc b/chrome/browser/ diff --git a/chrome/browser/net/system_network_context_manager.cc b/chrome/browser/net/system_network_context_manager.cc --- a/chrome/browser/net/system_network_context_manager.cc +++ b/chrome/browser/net/system_network_context_manager.cc -@@ -931,7 +931,6 @@ void SystemNetworkContextManager::AddSSLConfigToNetworkContextParams( +@@ -927,7 +927,6 @@ void SystemNetworkContextManager::AddSSLConfigToNetworkContextParams( void SystemNetworkContextManager::ConfigureDefaultNetworkContextParams( network::mojom::NetworkContextParams* network_context_params) { variations::UpdateCorsExemptHeaderForVariations(network_context_params); @@ -631,7 +632,7 @@ diff --git a/chrome/browser/net/system_network_context_manager.cc b/chrome/brows diff --git a/chrome/browser/new_tab_page/one_google_bar/one_google_bar_loader_impl.cc b/chrome/browser/new_tab_page/one_google_bar/one_google_bar_loader_impl.cc --- a/chrome/browser/new_tab_page/one_google_bar/one_google_bar_loader_impl.cc +++ b/chrome/browser/new_tab_page/one_google_bar/one_google_bar_loader_impl.cc -@@ -329,10 +329,11 @@ void OneGoogleBarLoaderImpl::SetAdditionalQueryParams( +@@ -324,10 +324,11 @@ void OneGoogleBarLoaderImpl::SetAdditionalQueryParams( } GURL OneGoogleBarLoaderImpl::GetApiUrl() const { @@ -675,7 +676,7 @@ diff --git a/chrome/browser/page_load_metrics/observers/from_gws_page_load_metri diff --git a/chrome/browser/page_load_metrics/page_load_metrics_initialize.cc b/chrome/browser/page_load_metrics/page_load_metrics_initialize.cc --- a/chrome/browser/page_load_metrics/page_load_metrics_initialize.cc +++ b/chrome/browser/page_load_metrics/page_load_metrics_initialize.cc -@@ -168,14 +168,9 @@ void PageLoadMetricsEmbedder::RegisterObservers( +@@ -170,14 +170,9 @@ void PageLoadMetricsEmbedder::RegisterObservers( tracker->AddObserver(std::make_unique()); tracker->AddObserver(std::make_unique()); tracker->AddObserver(std::make_unique()); @@ -717,7 +718,7 @@ diff --git a/chrome/browser/profile_resetter/profile_resetter.cc b/chrome/browse diff --git a/chrome/browser/safe_browsing/BUILD.gn b/chrome/browser/safe_browsing/BUILD.gn --- a/chrome/browser/safe_browsing/BUILD.gn +++ b/chrome/browser/safe_browsing/BUILD.gn -@@ -24,7 +24,6 @@ static_library("safe_browsing") { +@@ -27,7 +27,6 @@ static_library("safe_browsing") { "//build:branding_buildflags", "//chrome/app:generated_resources", "//chrome/browser:browser_process", @@ -775,7 +776,7 @@ diff --git a/chrome/browser/signin/android/signin_manager_android.cc b/chrome/br 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 -@@ -303,7 +303,6 @@ static_library("ui") { +@@ -289,7 +289,6 @@ static_library("ui") { "//chrome/browser/feedback:feedback_impl", "//chrome/browser/file_system_access", "//chrome/browser/fingerprinting_protection", @@ -792,21 +793,21 @@ diff --git a/chrome/browser/ui/android/omnibox/BUILD.gn b/chrome/browser/ui/andr "java/src/org/chromium/chrome/browser/omnibox/UrlFocusChangeListener.java", - "java/src/org/chromium/chrome/browser/omnibox/geo/GeolocationHeader.java", - "java/src/org/chromium/chrome/browser/omnibox/geo/GeolocationTracker.java", - "java/src/org/chromium/chrome/browser/omnibox/status/PageInfoIphController.java", - "java/src/org/chromium/chrome/browser/omnibox/status/StatusCoordinator.java", - "java/src/org/chromium/chrome/browser/omnibox/status/StatusIconView.java", + "java/src/org/chromium/chrome/browser/omnibox/navattach/AttachmentDetailsFetcher.java", + "java/src/org/chromium/chrome/browser/omnibox/navattach/ComposeBoxQueryControllerBridge.java", + "java/src/org/chromium/chrome/browser/omnibox/navattach/NavigationAttachmentItemProperties.java", diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java --- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java +++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java -@@ -37,7 +37,6 @@ import org.chromium.chrome.browser.lifecycle.NativeInitObserver; +@@ -36,7 +36,6 @@ import org.chromium.chrome.browser.lifecycle.NativeInitObserver; import org.chromium.chrome.browser.locale.LocaleManager; import org.chromium.chrome.browser.merchant_viewer.MerchantTrustSignalsCoordinator; import org.chromium.chrome.browser.omnibox.LocationBarMediator.OmniboxUma; -import org.chromium.chrome.browser.omnibox.geo.GeolocationHeader; + import org.chromium.chrome.browser.omnibox.navattach.NavigationAttachmentsCoordinator; import org.chromium.chrome.browser.omnibox.status.StatusCoordinator; import org.chromium.chrome.browser.omnibox.status.StatusCoordinator.PageInfoAction; - import org.chromium.chrome.browser.omnibox.status.StatusView; -@@ -407,7 +406,6 @@ public class LocationBarCoordinator +@@ -435,7 +434,6 @@ public class LocationBarCoordinator mLocationBarMediator.destroy(); mLocationBarMediator = null; @@ -817,7 +818,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow 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 -@@ -58,7 +58,6 @@ import org.chromium.chrome.browser.lifecycle.PauseResumeWithNativeObserver; +@@ -59,7 +59,6 @@ import org.chromium.chrome.browser.lifecycle.PauseResumeWithNativeObserver; import org.chromium.chrome.browser.locale.LocaleManager; import org.chromium.chrome.browser.omnibox.UrlBar.UrlBarDelegate; import org.chromium.chrome.browser.omnibox.UrlBarCoordinator.SelectionState; @@ -825,28 +826,30 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow import org.chromium.chrome.browser.omnibox.status.StatusCoordinator; import org.chromium.chrome.browser.omnibox.styles.OmniboxResourceProvider; import org.chromium.chrome.browser.omnibox.suggestions.AutocompleteCoordinator; -@@ -317,20 +316,6 @@ class LocationBarMediator +@@ -332,22 +331,6 @@ class LocationBarMediator if (!mUrlFocusedWithoutAnimations) handleUrlFocusAnimation(hasFocus); - if (hasFocus - && mLocationBarDataProvider.hasTab() - && !mLocationBarDataProvider.isIncognito()) { -- if (mTemplateUrlServiceSupplier.hasValue()) { +- TemplateUrlService templateUrlService = mTemplateUrlServiceSupplier.get(); +- if (templateUrlService != null) { - GeolocationHeader.primeLocationForGeoHeaderIfEnabled( -- mProfileSupplier.get(), mTemplateUrlServiceSupplier.get()); +- mProfileSupplier.get(), templateUrlService); - } else { - mTemplateUrlServiceSupplier.onAvailable( -- (templateUrlService) -> { +- (service) -> { - GeolocationHeader.primeLocationForGeoHeaderIfEnabled( -- mProfileSupplier.get(), templateUrlService); +- mProfileSupplier.get(), service); - }); - } +- hintZeroSuggestRefresh(); - } // Focus change caused by a closed tab may result in there not being an active tab. if (!hasFocus && mLocationBarDataProvider.hasTab()) { setUrl( mLocationBarDataProvider.getCurrentGurl(), -@@ -345,8 +330,6 @@ class LocationBarMediator +@@ -362,8 +345,6 @@ class LocationBarMediator mCallbackController.makeCancelable( (templateUrlService) -> { templateUrlService.addObserver(this); @@ -855,7 +858,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow })); mLocationBarLayout.onFinishNativeInitialization(); -@@ -605,9 +588,6 @@ class LocationBarMediator +@@ -625,9 +606,6 @@ class LocationBarMediator LoadUrlParams loadUrlParams = new LoadUrlParams(url); try (TimingMetric record = TimingMetric.shortUptime("Android.Omnibox.SetGeolocationHeadersTime")) { @@ -865,16 +868,15 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow } loadUrlParams.setTransitionType( omniboxLoadUrlParams.transitionType | PageTransition.FROM_ADDRESS_BAR); -@@ -1703,8 +1683,6 @@ class LocationBarMediator +@@ -1787,7 +1765,6 @@ class LocationBarMediator if (OmniboxFeatures.sUseFusedLocationProvider.isEnabled() - && mProfileSupplier.hasValue() - && mTemplateUrlServiceSupplier.hasValue()) { -- GeolocationHeader.primeLocationForGeoHeaderIfEnabled( -- mProfileSupplier.get(), mTemplateUrlServiceSupplier.get()); + && profile != null + && templateUrlService != null) { +- GeolocationHeader.primeLocationForGeoHeaderIfEnabled(profile, templateUrlService); } } -@@ -1712,7 +1690,6 @@ class LocationBarMediator +@@ -1795,7 +1772,6 @@ class LocationBarMediator public void onPauseWithNative() { OmniboxFeatures.updateLastExitTimestamp(); if (OmniboxFeatures.sUseFusedLocationProvider.isEnabled()) { @@ -885,7 +887,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow diff --git a/chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.cc b/chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.cc --- a/chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.cc +++ b/chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.cc -@@ -570,12 +570,6 @@ content::WebUIDataSource* CreateAndAddNewTabPageUiHtmlSource(Profile* profile) { +@@ -611,12 +611,6 @@ content::WebUIDataSource* CreateAndAddNewTabPageUiHtmlSource(Profile* profile) { // chrome-untrusted://new-tab-page for other external content and resources. // NOTE: Use caution when overriding content security policies as that cean // lead to subtle security bugs such as https://crbug.com/1251541. @@ -898,6 +900,25 @@ diff --git a/chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.cc b/chrome/br return source; } +diff --git a/chrome/browser/upgrade_detector/BUILD.gn b/chrome/browser/upgrade_detector/BUILD.gn +--- a/chrome/browser/upgrade_detector/BUILD.gn ++++ b/chrome/browser/upgrade_detector/BUILD.gn +@@ -98,7 +98,6 @@ source_set("impl") { + ] + deps += [ + "//chrome/browser:buildflags", +- "//chrome/browser/google", + "//content/public/browser", + ] + } else { +@@ -200,7 +199,6 @@ source_set("unit_tests") { + + deps += [ + "//base:i18n", +- "//chrome/browser/google", + "//components/enterprise:test_support", + "//components/network_time", + "//content/test:test_support", diff --git a/chrome/browser/upgrade_detector/upgrade_detector_impl.cc b/chrome/browser/upgrade_detector/upgrade_detector_impl.cc --- a/chrome/browser/upgrade_detector/upgrade_detector_impl.cc +++ b/chrome/browser/upgrade_detector/upgrade_detector_impl.cc @@ -917,7 +938,7 @@ diff --git a/chrome/browser/upgrade_detector/upgrade_detector_impl.cc b/chrome/b diff --git a/chrome/common/BUILD.gn b/chrome/common/BUILD.gn --- a/chrome/common/BUILD.gn +++ b/chrome/common/BUILD.gn -@@ -138,8 +138,6 @@ static_library("common_lib") { +@@ -139,8 +139,6 @@ static_library("common_lib") { "content_restriction.h", "crash_keys.cc", "crash_keys.h", @@ -963,7 +984,7 @@ diff --git a/chrome/renderer/url_loader_throttle_provider_impl.cc b/chrome/rende diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn --- a/chrome/test/BUILD.gn +++ b/chrome/test/BUILD.gn -@@ -6830,7 +6830,6 @@ test("unit_tests") { +@@ -6882,7 +6882,6 @@ test("unit_tests") { "//chrome/browser/file_system_access:unit_tests", "//chrome/browser/fingerprinting_protection", "//chrome/browser/first_party_sets", @@ -1681,7 +1702,7 @@ diff --git a/components/search_engines/search_terms_data.cc b/components/search_ diff --git a/components/search_engines/template_url.cc b/components/search_engines/template_url.cc --- a/components/search_engines/template_url.cc +++ b/components/search_engines/template_url.cc -@@ -607,11 +607,7 @@ std::u16string TemplateURLRef::SearchTermToString16( +@@ -608,11 +608,7 @@ std::u16string TemplateURLRef::SearchTermToString16( bool TemplateURLRef::HasGoogleBaseURLs( const SearchTermsData& search_terms_data) const { @@ -1747,7 +1768,7 @@ diff --git a/components/search_provider_logos/logo_service_impl.cc b/components/ diff --git a/components/url_matcher/url_util.cc b/components/url_matcher/url_util.cc --- a/components/url_matcher/url_util.cc +++ b/components/url_matcher/url_util.cc -@@ -42,27 +42,15 @@ namespace { +@@ -37,27 +37,15 @@ namespace { // Host/regex pattern for Google AMP Cache URLs. // See https://developers.google.com/amp/cache/overview#amp-cache-url-format // for a definition of the format of AMP Cache URLs. @@ -1775,7 +1796,7 @@ diff --git a/components/url_matcher/url_util.cc b/components/url_matcher/url_uti void ProcessQueryToConditions( url_matcher::URLMatcherConditionFactory* condition_factory, const std::string& query, -@@ -120,87 +108,10 @@ class EmbeddedURLExtractor { +@@ -115,87 +103,10 @@ class EmbeddedURLExtractor { // Implements url_filter::GetEmbeddedURL(). GURL GetEmbeddedURL(const GURL& url) { @@ -1922,7 +1943,7 @@ diff --git a/net/base/url_util.cc b/net/base/url_util.cc diff --git a/services/network/network_context.cc b/services/network/network_context.cc --- a/services/network/network_context.cc +++ b/services/network/network_context.cc -@@ -3077,7 +3077,7 @@ URLRequestContextOwner NetworkContext::MakeURLRequestContext( +@@ -3090,7 +3090,7 @@ URLRequestContextOwner NetworkContext::MakeURLRequestContext( } #endif // BUILDFLAG(IS_CT_SUPPORTED) diff --git a/build/cromite_patches/webRTC-do-not-expose-local-IP-addresses.patch b/build/cromite_patches/webRTC-do-not-expose-local-IP-addresses.patch index abf348eb887d471a60d948c4e268944a6f07ddd6..17489eb2ab86c0e4b3bbf8a6aba9f22877b133d2 100644 --- a/build/cromite_patches/webRTC-do-not-expose-local-IP-addresses.patch +++ b/build/cromite_patches/webRTC-do-not-expose-local-IP-addresses.patch @@ -18,7 +18,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/browser/ui/browser_ui_prefs.cc b/chrome/browser/ui/browser_ui_prefs.cc --- a/chrome/browser/ui/browser_ui_prefs.cc +++ b/chrome/browser/ui/browser_ui_prefs.cc -@@ -129,7 +129,7 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistrySyncable* registry) { +@@ -133,7 +133,7 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistrySyncable* registry) { false); #endif registry->RegisterStringPref(prefs::kWebRTCIPHandlingPolicy, @@ -45,7 +45,7 @@ diff --git a/third_party/blink/common/peerconnection/webrtc_ip_handling_policy.c diff --git a/third_party/blink/renderer/modules/peerconnection/peer_connection_dependency_factory.cc b/third_party/blink/renderer/modules/peerconnection/peer_connection_dependency_factory.cc --- a/third_party/blink/renderer/modules/peerconnection/peer_connection_dependency_factory.cc +++ b/third_party/blink/renderer/modules/peerconnection/peer_connection_dependency_factory.cc -@@ -1085,7 +1085,7 @@ PeerConnectionDependencyFactory::CreatePortAllocator( +@@ -1046,7 +1046,7 @@ PeerConnectionDependencyFactory::CreatePortAllocator( break; } diff --git a/build/e_patches/Browser-Add-provider-to-share-default-search-engine.patch b/build/e_patches/Browser-Add-provider-to-share-default-search-engine.patch index 58ef4d4dcd9167ed1b28e3655278594db8484975..0b818ec8b9d83ad568adfdeaf795c98b66838fba 100644 --- a/build/e_patches/Browser-Add-provider-to-share-default-search-engine.patch +++ b/build/e_patches/Browser-Add-provider-to-share-default-search-engine.patch @@ -1,9 +1,10 @@ -From a0182b7e29179e13feb0e9b2d05433b94b8c020e Mon Sep 17 00:00:00 2001 +From a01155064cd931d5d079d2ef655e8931c0e801bf Mon Sep 17 00:00:00 2001 From: Aayush Gupta Date: Fri, 26 Nov 2021 08:03:13 +0000 Subject: Browser: Add provider to share default search engine Signed-off-by: Aayush Gupta +Signed-off-by: Saalim Quadri --- chrome/android/java/AndroidManifest.xml | 6 ++ .../provider/SearchEngineProvider.java | 79 +++++++++++++++++++ @@ -12,10 +13,10 @@ Signed-off-by: Aayush Gupta create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/provider/SearchEngineProvider.java diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/AndroidManifest.xml -index e6cb86d1eb1ae..4f29159a6f4b1 100644 +index 7cc827c5a17aa..7f80e24f06aa4 100644 --- a/chrome/android/java/AndroidManifest.xml +++ b/chrome/android/java/AndroidManifest.xml -@@ -1377,6 +1377,12 @@ by a child template that "extends" this file. +@@ -1386,6 +1386,12 @@ by a child template that "extends" this file. tools:ignore="ExportedContentProvider"> @@ -123,5 +124,5 @@ index 9c175c0d24804..eccb0847f7cd6 100644 chrome_java_sources += userscripts_java_sources +chrome_java_sources += [ "java/src/org/chromium/chrome/browser/provider/SearchEngineProvider.java" ] -- -2.50.1 +2.34.1 diff --git a/build/e_patches/Browser-Add-support-for-eOS-webapk.patch b/build/e_patches/Browser-Add-support-for-eOS-webapk.patch index 8ee86f39dbe3b13d7e29a4869840d0e12ff3382f..254f9d98d9367e8697cc2d23c082397d8500273d 100644 --- a/build/e_patches/Browser-Add-support-for-eOS-webapk.patch +++ b/build/e_patches/Browser-Add-support-for-eOS-webapk.patch @@ -1,8 +1,9 @@ -From 3977a8ca23a92ca27040e7c4e090ae110314f4d8 Mon Sep 17 00:00:00 2001 +From 3d127b524b0ea73272eb62347f7bf0c2d5200ee0 Mon Sep 17 00:00:00 2001 From: althafvly Date: Thu, 29 May 2025 19:49:11 +0530 Subject: Browser: Add support for /e/OS webapk +Signed-off-by: Saalim Quadri --- .../components/webapk/lib/client/WebApkValidator.java | 4 +++- .../components/webapk/lib/common/WebApkConstants.java | 1 + diff --git a/build/e_patches/Browser-Change-adblock-url-to-ours.patch b/build/e_patches/Browser-Change-adblock-url-to-ours.patch index af66073bc67817a911c4cc931cd07c3ef15ee9ed..fe74a5d54f265b5a3c3c99661474bb6d846d807b 100644 --- a/build/e_patches/Browser-Change-adblock-url-to-ours.patch +++ b/build/e_patches/Browser-Change-adblock-url-to-ours.patch @@ -1,8 +1,9 @@ -From 899c590b7583e6aaf7efb81b2bdbd541367b8003 Mon Sep 17 00:00:00 2001 +From 3b609414fcd38daee7422a2ffcf0f28ef6f61759 Mon Sep 17 00:00:00 2001 From: althafvly Date: Tue, 10 Sep 2024 12:17:23 +0530 Subject: Browser: Change adblock url to ours +Signed-off-by: Saalim Quadri --- chrome/android/java/res/values/values.xml | 2 +- .../chrome/browser/settings/AdBlockEditor.java | 8 ++++++++ @@ -43,10 +44,10 @@ index ef6d1652c97f0..24cd56084827d 100644 mAdBlockFiltersUrlEdit.setText(AdBlockNativeGateway.getAdBlockFiltersURL()); mAdBlockFiltersUrlEdit.addTextChangedListener(this); diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_process_impl.cc -index abbfda8304b33..7ad3315cc5afe 100644 +index 1236db78ea354..dd0b7a3a18f5c 100644 --- a/chrome/browser/browser_process_impl.cc +++ b/chrome/browser/browser_process_impl.cc -@@ -1284,11 +1284,11 @@ BrowserProcessImpl::adblock_updater() { +@@ -1281,11 +1281,11 @@ BrowserProcessImpl::adblock_updater() { std::unique_ptr scheduler = std::make_unique(); @@ -63,7 +64,7 @@ index abbfda8304b33..7ad3315cc5afe 100644 } adblock_updater_ = std::make_unique( -@@ -1296,7 +1296,7 @@ BrowserProcessImpl::adblock_updater() { +@@ -1293,7 +1293,7 @@ BrowserProcessImpl::adblock_updater() { std::move(scheduler), g_browser_process->subresource_filter_ruleset_service(), local_state()->GetBoolean(prefs::kAdBlockEnabled), @@ -73,10 +74,10 @@ index abbfda8304b33..7ad3315cc5afe 100644 return adblock_updater_.get(); } diff --git a/chrome/browser/net/system_network_context_manager.cc b/chrome/browser/net/system_network_context_manager.cc -index d17975dd962f1..c9fcf65f41f0b 100644 +index 369961c9d3e9e..3fdf970ee57a8 100644 --- a/chrome/browser/net/system_network_context_manager.cc +++ b/chrome/browser/net/system_network_context_manager.cc -@@ -726,7 +726,7 @@ void SystemNetworkContextManager::RegisterPrefs(PrefRegistrySimple* registry) { +@@ -722,7 +722,7 @@ void SystemNetworkContextManager::RegisterPrefs(PrefRegistrySimple* registry) { registry->RegisterBooleanPref(prefs::kAdBlockEnabled, false); registry->RegisterStringPref(prefs::kAdBlockFiltersURL, @@ -86,5 +87,5 @@ index d17975dd962f1..c9fcf65f41f0b 100644 // Static auth params registry->RegisterStringPref(prefs::kAuthSchemes, -- -2.50.1 +2.34.1 diff --git a/build/e_patches/Browser-Change-app-and-package-name-to-browser.patch b/build/e_patches/Browser-Change-app-and-package-name-to-browser.patch index 465352baa4c175779a061535077fbb6292e3966f..872e6fc1b5170b3b3dbf5681f275567306ae8a14 100644 --- a/build/e_patches/Browser-Change-app-and-package-name-to-browser.patch +++ b/build/e_patches/Browser-Change-app-and-package-name-to-browser.patch @@ -1,10 +1,11 @@ -From ac04f8686be3bb1ff89748e63d1117d9a3e12e47 Mon Sep 17 00:00:00 2001 +From 9f02e531218c2ad26f778f4af2533251ddc271a2 Mon Sep 17 00:00:00 2001 From: Aayush Gupta Date: Fri, 26 Nov 2021 05:39:25 +0000 Subject: Browser: Change app and package name to browser Signed-off-by: Aayush Gupta Signed-off-by: althafvly +Signed-off-by: Saalim Quadri --- .../java/res_chromium_base/values/channel_constants.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) @@ -27,5 +28,5 @@ index cc1f2a30cb3c5..49863cede1033 100644 + Browser quick action search -- -2.48.1 +2.34.1 diff --git a/build/e_patches/Browser-Change-info-bar-icon.patch b/build/e_patches/Browser-Change-info-bar-icon.patch index fbc77b350465442c65367e4ef5ad507e4ad862e7..35cc0eb0a0b0df2a913c5ffbab2ec29c8bf846bd 100644 --- a/build/e_patches/Browser-Change-info-bar-icon.patch +++ b/build/e_patches/Browser-Change-info-bar-icon.patch @@ -1,8 +1,9 @@ -From b61e569e040fab409b62d661aa78a3aa30dc347f Mon Sep 17 00:00:00 2001 +From 237603b5a0f758039563d152cc3f5b67a63bdf98 Mon Sep 17 00:00:00 2001 From: althafvly Date: Wed, 14 Dec 2022 16:17:58 +0530 Subject: Browser: Change info bar icon +Signed-off-by: Saalim Quadri --- .../java/res/drawable-hdpi/infobar_chrome.png | Bin 1039 -> 1450 bytes .../java/res/drawable-mdpi/infobar_chrome.png | Bin 728 -> 736 bytes diff --git a/build/e_patches/Browser-Check-for-webapk-and-system-signature.patch b/build/e_patches/Browser-Check-for-webapk-and-system-signature.patch index 1b9faa261041751ffb35a2401100ca5908d5c75c..51d0355af7e1526c7ed7c5ad0f1e9c00326a0359 100644 --- a/build/e_patches/Browser-Check-for-webapk-and-system-signature.patch +++ b/build/e_patches/Browser-Check-for-webapk-and-system-signature.patch @@ -1,8 +1,9 @@ -From 74cc04e57f5810393700f050c7874b0d68b6af12 Mon Sep 17 00:00:00 2001 +From 66dfe46ec7f763dc4177a3ad1f6d7b501be5ad14 Mon Sep 17 00:00:00 2001 From: althafvly Date: Thu, 29 May 2025 17:12:54 +0530 Subject: Browser: Check for webapk and system signature +Signed-off-by: Saalim Quadri --- .../webapk/lib/client/WebApkValidator.java | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/build/e_patches/Browser-Disable-Android-native-autofill-by-default.patch b/build/e_patches/Browser-Disable-Android-native-autofill-by-default.patch index c7dc9aee74237ea7c1bd939fb544b2f9dc36bff1..2bd31d27b41516339af22897c3a976ec59fd32df 100644 --- a/build/e_patches/Browser-Disable-Android-native-autofill-by-default.patch +++ b/build/e_patches/Browser-Disable-Android-native-autofill-by-default.patch @@ -1,17 +1,18 @@ -From 49e74be9500009fdca07302e207a2e14d07acd87 Mon Sep 17 00:00:00 2001 +From c4bf887b08c25908d16766cf3adb940c23dfe962 Mon Sep 17 00:00:00 2001 From: althafvly Date: Tue, 22 Aug 2023 06:16:40 +0000 Subject: Browser: Disable Android native autofill by default +Signed-off-by: Saalim Quadri --- components/autofill/core/common/autofill_prefs.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/autofill/core/common/autofill_prefs.cc b/components/autofill/core/common/autofill_prefs.cc -index 525c04af7f006..39ec9aad10d9f 100644 +index 231241c40a2e6..5ba291e3c55b9 100644 --- a/components/autofill/core/common/autofill_prefs.cc +++ b/components/autofill/core/common/autofill_prefs.cc -@@ -56,7 +56,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) { +@@ -62,7 +62,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) { registry->RegisterBooleanPref(kAutofillCreditCardFidoAuthOfferCheckboxState, true); #endif @@ -21,5 +22,5 @@ index 525c04af7f006..39ec9aad10d9f 100644 registry->RegisterIntegerPref(kAutocompleteLastVersionRetentionPolicy, 0); registry->RegisterStringPref(kAutofillUploadEncodingSeed, ""); -- -2.50.1 +2.34.1 diff --git a/build/e_patches/Browser-Enable-custom-tabs-by-default.patch b/build/e_patches/Browser-Enable-custom-tabs-by-default.patch index 1bc4f6288e78327b0b3c21405b0cb6a8f5054b65..0ee4d0aad67315aec0e9c4ec79cef9e91d89e7a6 100644 --- a/build/e_patches/Browser-Enable-custom-tabs-by-default.patch +++ b/build/e_patches/Browser-Enable-custom-tabs-by-default.patch @@ -1,10 +1,11 @@ -From 21531b43813889830067cc99d4d2fb5eec3715e0 Mon Sep 17 00:00:00 2001 +From 0773874a41ad00bfe1a3414b6b75cdd957feaaf6 Mon Sep 17 00:00:00 2001 From: Aayush Gupta Date: Mon, 29 Nov 2021 03:37:37 +0000 Subject: Browser: Enable custom tabs by default Signed-off-by: Aayush Gupta Signed-off-by: althafvly +Signed-off-by: Saalim Quadri --- chrome/android/java/res/xml/privacy_preferences.xml | 2 +- .../src/org/chromium/chrome/browser/LaunchIntentDispatcher.java | 2 +- @@ -24,7 +25,7 @@ index b6517a812a2cb..e2fcf5db2f0f9 100644 android:title="@string/uses_separate_storagepartition_for_cct_title" android:summary="@string/uses_separate_storagepartition_for_cct_summary" diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java b/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java -index 54ff0a90839a9..69418746cc23b 100644 +index 2b526a39026c4..3cf3434e5bc47 100644 --- a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java @@ -280,7 +280,7 @@ public class LaunchIntentDispatcher { @@ -37,5 +38,5 @@ index 54ff0a90839a9..69418746cc23b 100644 Log.w( TAG, -- -2.50.1 +2.34.1 diff --git a/build/e_patches/Browser-Enable-do-not-track-by-default.patch b/build/e_patches/Browser-Enable-do-not-track-by-default.patch index e5ab61bd1b253e9ea0452bdaca48b9f5529a4bdf..372be8bdf20e3621536a9b2d932507f8f305e764 100644 --- a/build/e_patches/Browser-Enable-do-not-track-by-default.patch +++ b/build/e_patches/Browser-Enable-do-not-track-by-default.patch @@ -1,8 +1,9 @@ -From d5d15121893b6cdea4d0dea0468e5e4c51475e7d Mon Sep 17 00:00:00 2001 +From 336745cf010cff281e7ab4d8a101dbff9bacf555 Mon Sep 17 00:00:00 2001 From: althafvly Date: Fri, 26 Nov 2021 07:34:57 +0000 Subject: Browser: Enable do not track by default +Signed-off-by: Saalim Quadri --- components/privacy_sandbox/tracking_protection_prefs.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) @@ -21,5 +22,5 @@ index b03aa2f688155..7a1cf6203de59 100644 registry->RegisterBooleanPref( prefs::kFingerprintingProtectionEnabled, true, -- -2.50.1 +2.34.1 diff --git a/build/e_patches/Browser-Enable-external-intent-requests.patch b/build/e_patches/Browser-Enable-external-intent-requests.patch index 49c05b84114dcb7e29a98bc4173888c410b4ff1b..aca937b38dd652b2275ded1141dd35beb4844810 100644 --- a/build/e_patches/Browser-Enable-external-intent-requests.patch +++ b/build/e_patches/Browser-Enable-external-intent-requests.patch @@ -1,8 +1,9 @@ -From 1eee5ef85d303fd2155d9d64b5c7d4466cc7ac7f Mon Sep 17 00:00:00 2001 +From fe84005c72dc6e5e212f08f7c1530301fa8d70d2 Mon Sep 17 00:00:00 2001 From: althafvly Date: Tue, 5 Nov 2024 10:08:21 +0530 Subject: Browser: Enable external intent requests +Signed-off-by: Saalim Quadri --- .../java/res/xml/privacy_preferences.xml | 3 +- .../customtabs/CustomTabDelegateFactory.java | 4 +-- @@ -31,7 +32,7 @@ index e2fcf5db2f0f9..0241aa8a4a775 100644 android:key="security_section" android:title="@string/security_section_title" /> diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabDelegateFactory.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabDelegateFactory.java -index a2617bb046602..2c2f5ce7787c5 100644 +index c74f651e1e883..6c4b4417c3e05 100644 --- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabDelegateFactory.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabDelegateFactory.java @@ -16,6 +16,7 @@ import androidx.annotation.Nullable; @@ -40,9 +41,9 @@ index a2617bb046602..2c2f5ce7787c5 100644 import org.chromium.base.CallbackUtils; +import org.chromium.base.ContextUtils; import org.chromium.base.metrics.RecordHistogram; - import org.chromium.base.supplier.Supplier; import org.chromium.blink.mojom.DisplayMode; -@@ -36,7 +37,6 @@ import org.chromium.chrome.browser.ephemeraltab.EphemeralTabCoordinator; + import org.chromium.blink.mojom.DisplayMode.EnumType; +@@ -35,7 +36,6 @@ import org.chromium.chrome.browser.ephemeraltab.EphemeralTabCoordinator; import org.chromium.chrome.browser.externalnav.ExternalNavigationDelegateImpl; import org.chromium.chrome.browser.flags.ActivityType; import org.chromium.chrome.browser.flags.ChromeFeatureList; @@ -50,7 +51,7 @@ index a2617bb046602..2c2f5ce7787c5 100644 import org.chromium.chrome.browser.fullscreen.BrowserControlsManager; import org.chromium.chrome.browser.fullscreen.FullscreenManager; import org.chromium.chrome.browser.init.ChromeActivityNativeDelegate; -@@ -129,7 +129,7 @@ public class CustomTabDelegateFactory implements TabDelegateFactory { +@@ -153,7 +153,7 @@ public class CustomTabDelegateFactory implements TabDelegateFactory { @Override public boolean shouldDisableAllExternalIntents() { @@ -60,10 +61,10 @@ index a2617bb046602..2c2f5ce7787c5 100644 && ChromeFeatureList.sCctAuthTabDisableAllExternalIntents.isEnabled(); } diff --git a/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java -index 0aaec7e505a12..ae6b9ea74056a 100644 +index c81e823af5f8c..c1ebb5a1b1fe3 100644 --- a/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java -@@ -26,7 +26,6 @@ import org.chromium.base.supplier.Supplier; +@@ -25,7 +25,6 @@ import org.chromium.base.PackageManagerUtils; import org.chromium.build.annotations.NullMarked; import org.chromium.build.annotations.Nullable; import org.chromium.chrome.browser.ChromeTabbedActivity2; @@ -71,7 +72,7 @@ index 0aaec7e505a12..ae6b9ea74056a 100644 import org.chromium.chrome.browser.IntentHandler; import org.chromium.chrome.browser.browserservices.intents.WebappConstants; import org.chromium.chrome.browser.document.ChromeLauncherActivity; -@@ -56,6 +55,8 @@ public class ExternalNavigationDelegateImpl implements ExternalNavigationDelegat +@@ -57,6 +56,8 @@ public class ExternalNavigationDelegateImpl implements ExternalNavigationDelegat private boolean mIsTabDestroyed; @@ -80,21 +81,21 @@ index 0aaec7e505a12..ae6b9ea74056a 100644 public ExternalNavigationDelegateImpl(Tab tab) { mTab = tab; mTabModelSelectorSupplier = TabModelSelectorSupplier.from(tab.getWindowAndroid()); -@@ -118,8 +119,7 @@ public class ExternalNavigationDelegateImpl implements ExternalNavigationDelegat - +@@ -120,8 +121,7 @@ public class ExternalNavigationDelegateImpl implements ExternalNavigationDelegat @Override - public boolean shouldDisableExternalIntentRequestsForUrl(GURL url) { -- if ("tel".equals(url.getScheme())) return false; + public boolean shouldDisableExternalIntentRequestsForUrl( + ExternalNavigationParams params, Intent intent) { +- if ("tel".equals(params.getUrl().getScheme())) return false; - return !sAllowExternalIntentRequests.getInstance().isEnabled(); + return !ContextUtils.getAppSharedPreferences().getBoolean(PREF_OPEN_EXTERNAL_INTENT, true); } @Override diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java -index 55f1756add01d..dc3957bfe4251 100644 +index c0f9c1faf0f9d..c3dbed7a60930 100644 --- a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java -@@ -170,6 +170,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment +@@ -171,6 +171,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment private ChromeSwitchPreference allowCustomTabIntentsPref; private ChromeSwitchPreference openExternalLinksPref; @@ -201,5 +202,5 @@ index c4015ad7de119..0000000000000 - "AllowExternalIntentRequests", - base::FEATURE_DISABLED_BY_DEFAULT); -- -2.50.1 +2.34.1 diff --git a/build/e_patches/Browser-Enable-search-suggestion-by-default.patch b/build/e_patches/Browser-Enable-search-suggestion-by-default.patch index c8ce5e7d220b7839143b81d8195308f524045a71..010f1070913a57fbd1f12479551f5cb1f22b310b 100644 --- a/build/e_patches/Browser-Enable-search-suggestion-by-default.patch +++ b/build/e_patches/Browser-Enable-search-suggestion-by-default.patch @@ -1,9 +1,10 @@ -From 07db2bc2c931908298031083a4413177977a9769 Mon Sep 17 00:00:00 2001 +From 57e2cb0ed7cbe6aada035c46e0c62de4bfd0c65e Mon Sep 17 00:00:00 2001 From: Aayush Gupta Date: Mon, 29 Nov 2021 03:39:21 +0000 Subject: Browser: Enable search suggestion by default Signed-off-by: Aayush Gupta +Signed-off-by: Saalim Quadri --- chrome/browser/profiles/profile.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) @@ -22,5 +23,5 @@ index d27196a35d8ee..b7dfccef78a3d 100644 #if BUILDFLAG(IS_ANDROID) registry->RegisterStringPref( -- -2.50.1 +2.34.1 diff --git a/build/e_patches/Browser-Enable-unified-autoplay-by-default.patch b/build/e_patches/Browser-Enable-unified-autoplay-by-default.patch index 617644017e01c44c7e32e5514d27de698ee01ec5..bdb0cd32884f0aef5765588783c53a23bae2282a 100644 --- a/build/e_patches/Browser-Enable-unified-autoplay-by-default.patch +++ b/build/e_patches/Browser-Enable-unified-autoplay-by-default.patch @@ -1,15 +1,16 @@ -From 88fe8ada9f25d2e1c829e6722c68029753695193 Mon Sep 17 00:00:00 2001 +From f35855fdcf544179f67bef5c54065e3f0c91ad1d Mon Sep 17 00:00:00 2001 From: althafvly Date: Fri, 29 Sep 2023 16:30:17 +0530 Subject: Browser: Enable unified autoplay by default +Signed-off-by: Saalim Quadri --- .../content_settings/core/browser/content_settings_registry.cc | 2 +- third_party/blink/renderer/core/html/media/autoplay_policy.cc | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/components/content_settings/core/browser/content_settings_registry.cc b/components/content_settings/core/browser/content_settings_registry.cc -index 0d0124bd06109..9c6244f0fd8f9 100644 +index d3a4eb365538e..4e2b79302596e 100644 --- a/components/content_settings/core/browser/content_settings_registry.cc +++ b/components/content_settings/core/browser/content_settings_registry.cc @@ -254,7 +254,7 @@ void ContentSettingsRegistry::Init() { @@ -22,10 +23,10 @@ index 0d0124bd06109..9c6244f0fd8f9 100644 /*valid_settings=*/{CONTENT_SETTING_ALLOW, CONTENT_SETTING_BLOCK}, WebsiteSettingsInfo::TOP_ORIGIN_ONLY_SCOPE, diff --git a/third_party/blink/renderer/core/html/media/autoplay_policy.cc b/third_party/blink/renderer/core/html/media/autoplay_policy.cc -index 7ec87e7331cca..6cf31134a2160 100644 +index 8ac83bd3f2444..d2f9a47a55a4f 100644 --- a/third_party/blink/renderer/core/html/media/autoplay_policy.cc +++ b/third_party/blink/renderer/core/html/media/autoplay_policy.cc -@@ -467,7 +467,7 @@ bool AutoplayPolicy::IsAutoplayAllowedPerSettings() const { +@@ -466,7 +466,7 @@ bool AutoplayPolicy::IsAutoplayAllowedPerSettings() const { return false; if (auto* settings_client = frame->GetContentSettingsClient()) { return settings_client->AllowContentSetting( @@ -35,5 +36,5 @@ index 7ec87e7331cca..6cf31134a2160 100644 return true; } -- -2.50.1 +2.34.1 diff --git a/build/e_patches/Browser-Enable-webRTC-by-default.patch b/build/e_patches/Browser-Enable-webRTC-by-default.patch index 839e3f07ff05715796f9fcf0301bece100849658..e501ecdc1f07c3275ea69e38d219c35e97ca3840 100644 --- a/build/e_patches/Browser-Enable-webRTC-by-default.patch +++ b/build/e_patches/Browser-Enable-webRTC-by-default.patch @@ -1,8 +1,9 @@ -From 8b2a0b80a894d09e403f0f06bfc9a6a3f201245b Mon Sep 17 00:00:00 2001 +From b2edb830bc436297577ea81b81da452f06e51f25 Mon Sep 17 00:00:00 2001 From: althafvly Date: Fri, 20 Oct 2023 18:49:36 +0530 Subject: Browser: Enable webRTC by default +Signed-off-by: Saalim Quadri --- .../core/browser/bromite_content_settings/webrtc.inc | 2 +- .../peerconnection/peer_connection_dependency_factory.cc | 2 +- @@ -21,10 +22,10 @@ index 03843792d8d50..446e689d7db9d 100644 /*allowlisted_schemes=*/{}, /*valid_settings=*/{CONTENT_SETTING_ALLOW, diff --git a/third_party/blink/renderer/modules/peerconnection/peer_connection_dependency_factory.cc b/third_party/blink/renderer/modules/peerconnection/peer_connection_dependency_factory.cc -index 033c43dba742c..59ca8df95091a 100644 +index 0cc806b9a2159..221895b9a1edf 100644 --- a/third_party/blink/renderer/modules/peerconnection/peer_connection_dependency_factory.cc +++ b/third_party/blink/renderer/modules/peerconnection/peer_connection_dependency_factory.cc -@@ -1064,7 +1064,7 @@ PeerConnectionDependencyFactory::CreatePortAllocator( +@@ -1025,7 +1025,7 @@ PeerConnectionDependencyFactory::CreatePortAllocator( // collected depends on if mic/camera permission is granted for this // origin. blink::WebContentSettingsClient* settings = web_frame->GetContentSettingsClient(); @@ -34,10 +35,10 @@ index 033c43dba742c..59ca8df95091a 100644 } diff --git a/third_party/blink/renderer/modules/peerconnection/rtc_rtp_receiver.cc b/third_party/blink/renderer/modules/peerconnection/rtc_rtp_receiver.cc -index e43d0f028c611..090a5e690ba5a 100644 +index 6e88593f0ba5b..199738705037a 100644 --- a/third_party/blink/renderer/modules/peerconnection/rtc_rtp_receiver.cc +++ b/third_party/blink/renderer/modules/peerconnection/rtc_rtp_receiver.cc -@@ -295,7 +295,7 @@ RTCRtpCapabilities* RTCRtpReceiver::getCapabilities(ScriptState* state, +@@ -294,7 +294,7 @@ RTCRtpCapabilities* RTCRtpReceiver::getCapabilities(ScriptState* state, auto* web_frame = static_cast(WebFrame::FromCoreFrame(window->GetFrame())); blink::WebContentSettingsClient* settings = web_frame->GetContentSettingsClient(); @@ -47,10 +48,10 @@ index e43d0f028c611..090a5e690ba5a 100644 } diff --git a/third_party/blink/renderer/modules/peerconnection/rtc_rtp_sender.cc b/third_party/blink/renderer/modules/peerconnection/rtc_rtp_sender.cc -index c156a37e27f48..868f06fc92553 100644 +index 3ca6a86461304..65d5d5063b795 100644 --- a/third_party/blink/renderer/modules/peerconnection/rtc_rtp_sender.cc +++ b/third_party/blink/renderer/modules/peerconnection/rtc_rtp_sender.cc -@@ -1042,7 +1042,7 @@ RTCRtpCapabilities* RTCRtpSender::getCapabilities(ScriptState* state, +@@ -1041,7 +1041,7 @@ RTCRtpCapabilities* RTCRtpSender::getCapabilities(ScriptState* state, auto* web_frame = static_cast(WebFrame::FromCoreFrame(window->GetFrame())); blink::WebContentSettingsClient* settings = web_frame->GetContentSettingsClient(); @@ -60,5 +61,5 @@ index c156a37e27f48..868f06fc92553 100644 } -- -2.50.1 +2.34.1 diff --git a/build/e_patches/Browser-Enable-webgl-by-default.patch b/build/e_patches/Browser-Enable-webgl-by-default.patch index 9831cf556bdea85f6f6a12292358ef00d27507dd..b0e6c0715b658215161176db303fdf189cc24db9 100644 --- a/build/e_patches/Browser-Enable-webgl-by-default.patch +++ b/build/e_patches/Browser-Enable-webgl-by-default.patch @@ -1,8 +1,9 @@ -From 50d871977dbbfc7f5b53273c7cf0f17ee7baa6df Mon Sep 17 00:00:00 2001 +From a76681158e833a2710ea6c0e40b7cf0afa258a2c Mon Sep 17 00:00:00 2001 From: althafvly Date: Tue, 24 Oct 2023 14:39:06 +0530 Subject: Browser: Enable webgl by default +Signed-off-by: Saalim Quadri --- .../core/browser/bromite_content_settings/webgl.inc | 2 +- .../renderer/core/execution_context/execution_context.cc | 4 ++-- @@ -34,5 +35,5 @@ index 646236f94a812..e9a12f7deefbc 100644 ExecutionContext::ExecutionContext(v8::Isolate* isolate, -- -2.50.1 +2.34.1 diff --git a/build/e_patches/Browser-Fix-open-in-browser-text.patch b/build/e_patches/Browser-Fix-open-in-browser-text.patch index 83d0bcc166e4c1f9c9c8ba58835af20954feb228..591c4099ffb63636d956ab287b7e1ff6ab802207 100644 --- a/build/e_patches/Browser-Fix-open-in-browser-text.patch +++ b/build/e_patches/Browser-Fix-open-in-browser-text.patch @@ -1,14 +1,15 @@ -From 8ac9615c98a94c55724ad6a3ef54926360f7b57b Mon Sep 17 00:00:00 2001 +From 7ed1ed8394ad3e65e7e12848174fa1ed05d2f9cf Mon Sep 17 00:00:00 2001 From: althafvly Date: Wed, 2 Oct 2024 11:41:48 +0530 Subject: Browser: Fix open in browser text +Signed-off-by: Saalim Quadri --- .../chromium/chrome/browser/DefaultBrowserInfo.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/chrome/android/java/src/org/chromium/chrome/browser/DefaultBrowserInfo.java b/chrome/android/java/src/org/chromium/chrome/browser/DefaultBrowserInfo.java -index 08533ce43c2f0..994a3e5e45c08 100644 +index d310cf1f0fcd7..487ef1dfabc9a 100644 --- a/chrome/android/java/src/org/chromium/chrome/browser/DefaultBrowserInfo.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/DefaultBrowserInfo.java @@ -90,9 +90,13 @@ public final class DefaultBrowserInfo { @@ -29,5 +30,5 @@ index 08533ce43c2f0..994a3e5e45c08 100644 /** -- -2.50.0 +2.34.1 diff --git a/build/e_patches/Browser-Hide-settings-when-parental-control-is-active.patch b/build/e_patches/Browser-Hide-settings-when-parental-control-is-active.patch index 79911a22b98e955f9f139e078851235af559ad71..4150dfdc0b2c0bf8f260d7c22988a0b774afe09a 100644 --- a/build/e_patches/Browser-Hide-settings-when-parental-control-is-active.patch +++ b/build/e_patches/Browser-Hide-settings-when-parental-control-is-active.patch @@ -1,9 +1,10 @@ -From e0af4258d76b6aaeb04cb78cf74bd9a4be955239 Mon Sep 17 00:00:00 2001 +From a8e520b306d501118edee34d30e0b8fe461271fd Mon Sep 17 00:00:00 2001 From: althafvly Date: Thu, 11 Jul 2024 11:11:15 +0530 Subject: Browser: Hide settings when parental control is active Co-authored-by: Nishith Khanna +Signed-off-by: Saalim Quadri --- .../chrome/browser/app/ChromeActivity.java | 3 +- .../browser/app/flags/ChromeCachedFlags.java | 29 +++++++++++++++++++ @@ -12,10 +13,10 @@ Co-authored-by: Nishith Khanna 4 files changed, 43 insertions(+), 4 deletions(-) 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 -index c290674daf8d9..ba58b517ba730 100644 +index 4e12aa17b33ea..696ddca4b6058 100644 --- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java -@@ -71,6 +71,7 @@ import org.chromium.chrome.browser.WarmupManager; +@@ -74,6 +74,7 @@ import org.chromium.chrome.browser.WarmupManager; import org.chromium.chrome.browser.ai.AiAssistantService; import org.chromium.chrome.browser.app.appmenu.AppMenuPropertiesDelegateImpl; import org.chromium.chrome.browser.app.download.DownloadMessageUiDelegate; @@ -23,7 +24,7 @@ index c290674daf8d9..ba58b517ba730 100644 import org.chromium.chrome.browser.app.metrics.LaunchCauseMetrics; import org.chromium.chrome.browser.app.tab_activity_glue.ReparentingDelegateFactory; import org.chromium.chrome.browser.app.tab_activity_glue.TabReparentingController; -@@ -2443,7 +2444,7 @@ public abstract class ChromeActivity extends AsyncInitializationActivity +@@ -2479,7 +2480,7 @@ public abstract class ChromeActivity extends AsyncInitializationActivity @BrowserProfileType int type = Profile.getBrowserProfileTypeFromProfile(getCurrentTabModel().getProfile()); @@ -33,18 +34,18 @@ index c290674daf8d9..ba58b517ba730 100644 SettingsNavigationFactory.createSettingsNavigation(); settingsNavigation.startSettings(this); diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/flags/ChromeCachedFlags.java b/chrome/android/java/src/org/chromium/chrome/browser/app/flags/ChromeCachedFlags.java -index caf39dffd5b90..7b5f2a09a5b8a 100644 +index b05d8a5fa13e1..b50ab894dfd2f 100644 --- a/chrome/android/java/src/org/chromium/chrome/browser/app/flags/ChromeCachedFlags.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/flags/ChromeCachedFlags.java -@@ -28,6 +28,7 @@ import org.chromium.components.omnibox.OmniboxFeatures; - import org.chromium.components.permissions.PermissionsAndroidFeatureList; +@@ -29,6 +29,7 @@ import org.chromium.components.permissions.PermissionsAndroidFeatureList; + import org.chromium.components.signin.SigninFeatureMap; import org.chromium.ui.base.UiAndroidFeatureList; +import java.lang.reflect.Method; import java.util.ArrayList; import java.util.List; import java.util.Set; -@@ -187,4 +188,32 @@ public class ChromeCachedFlags { +@@ -189,4 +190,32 @@ public class ChromeCachedFlags { return cachedFlag.isEnabled(); } @@ -78,18 +79,18 @@ index caf39dffd5b90..7b5f2a09a5b8a 100644 + } } 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 -index 55c76ff1bf954..1af9b5372b5be 100644 +index a1e7a22af6039..4802fe88a55db 100644 --- a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java -@@ -22,6 +22,7 @@ import androidx.lifecycle.Lifecycle; +@@ -21,6 +21,7 @@ import androidx.annotation.VisibleForTesting; + import androidx.lifecycle.Lifecycle; import androidx.preference.Preference; - import org.chromium.base.BuildInfo; +import org.chromium.chrome.browser.app.flags.ChromeCachedFlags; import org.chromium.base.ContextUtils; import org.chromium.base.DeviceInfo; import org.chromium.base.shared_preferences.SharedPreferencesManager; -@@ -178,6 +179,9 @@ public class MainSettings extends ChromeBaseSettingsFragment +@@ -183,6 +184,9 @@ public class MainSettings extends ChromeBaseSettingsFragment @Override public void onStart() { @@ -100,7 +101,7 @@ index 55c76ff1bf954..1af9b5372b5be 100644 SyncService syncService = SyncServiceFactory.getForProfile(getProfile()); if (syncService != null) { diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedAppMenuPropertiesDelegate.java -index 47b6bcd9108a8..49662ca7f069f 100644 +index 4a2d47f15d327..ccd2e09226995 100644 --- 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 @@ -32,6 +32,7 @@ import org.chromium.chrome.browser.ActivityTabProvider; @@ -111,7 +112,7 @@ index 47b6bcd9108a8..49662ca7f069f 100644 import org.chromium.chrome.browser.bookmarks.BookmarkModel; import org.chromium.chrome.browser.device.DeviceConditions; import org.chromium.chrome.browser.enterprise.util.ManagedBrowserUtils; -@@ -819,12 +820,16 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm +@@ -831,12 +832,16 @@ public class TabbedAppMenuPropertiesDelegate extends AppMenuPropertiesDelegateIm } private MVCListAdapter.ListItem buildSettingsItem() { @@ -132,5 +133,5 @@ index 47b6bcd9108a8..49662ca7f069f 100644 private boolean shouldShowListenToFeedItem(@Nullable Tab currentTab) { -- -2.50.1 +2.34.1 diff --git a/build/e_patches/Browser-Modify-default-search-engines.patch b/build/e_patches/Browser-Modify-default-search-engines.patch index f5bb0444228c8f6341db1dee7add10d51d8bd0bf..eb8360052cf8f07ce25c0c43f9ecb514c88ded21 100644 --- a/build/e_patches/Browser-Modify-default-search-engines.patch +++ b/build/e_patches/Browser-Modify-default-search-engines.patch @@ -1,4 +1,4 @@ -From 0ba3aef23b4ff4256f76bc691cbdcdb18e8265c9 Mon Sep 17 00:00:00 2001 +From 964b6a2e6fab75e0f95c967cfdbad80efa4d81e2 Mon Sep 17 00:00:00 2001 From: Aayush Gupta Date: Thu, 18 Mar 2021 13:42:44 +0100 Subject: Browser: Modify default search engines @@ -7,6 +7,7 @@ Signed-off-by: althafvly Co-authored-by: althafvly Co-authored-by: Nishith Khanna +Signed-off-by: Saalim Quadri --- .../locale/locale_template_url_loader.cc | 42 ++----------------- .../locale/locale_template_url_loader.h | 1 - @@ -150,10 +151,10 @@ index 26c187bbcff33..60a32065acd26 100644 } } diff --git a/components/regional_capabilities/regional_capabilities_service.cc b/components/regional_capabilities/regional_capabilities_service.cc -index 1f0b39cd2c4f1..e583d18bd225f 100644 +index 4f95ae3d0471c..d40f93b79ad6e 100644 --- a/components/regional_capabilities/regional_capabilities_service.cc +++ b/components/regional_capabilities/regional_capabilities_service.cc -@@ -236,6 +236,10 @@ RegionalCapabilitiesService::~RegionalCapabilitiesService() { +@@ -270,6 +270,10 @@ RegionalCapabilitiesService::~RegionalCapabilitiesService() { std::vector RegionalCapabilitiesService::GetRegionalPrepopulatedEngines() { @@ -251,7 +252,7 @@ index 4b32c2424922b..9808a5e92ff3a 100644 if (SameDomain(url, GURL(engine->search_url))) { return engine->type; diff --git a/components/search_engines/template_url_prepopulate_data.cc b/components/search_engines/template_url_prepopulate_data.cc -index bb24aca0e6f82..e57e6b90f6f34 100644 +index fe4af9b0ec735..3e96bf696425e 100644 --- a/components/search_engines/template_url_prepopulate_data.cc +++ b/components/search_engines/template_url_prepopulate_data.cc @@ -146,7 +146,8 @@ std::vector> GetPrepopulatedEngines( @@ -264,17 +265,17 @@ index bb24aca0e6f82..e57e6b90f6f34 100644 t_urls.push_back(TemplateURLDataFromPrepopulatedEngine(duckduckgo_light)); return t_urls; } -@@ -178,7 +179,8 @@ std::vector> GetLocalPrepopulatedEngines( - country_id, prefs, - regional_capabilities::SearchEngineListType::kTopFive), - &PrepopulatedEngineToTemplateURLData); +@@ -177,7 +178,8 @@ std::vector> GetLocalPrepopulatedEngines( + country_id, prefs, + regional_capabilities::SearchEngineListType::kTopN), + &PrepopulatedEngineToTemplateURLData); - t_urls.push_back(TemplateURLDataFromPrepopulatedEngine(googleen)); + t_urls.push_back(TemplateURLDataFromPrepopulatedEngine(murenasearch)); + t_urls.push_back(TemplateURLDataFromPrepopulatedEngine(spot)); t_urls.push_back(TemplateURLDataFromPrepopulatedEngine(duckduckgo_light)); return t_urls; } -@@ -253,7 +255,7 @@ std::unique_ptr GetPrepopulatedFallbackSearch( +@@ -252,7 +254,7 @@ std::unique_ptr GetPrepopulatedFallbackSearch( std::vector regional_prepopulated_engines) { return FindPrepopulatedEngineInternal(prefs, regional_prepopulated_engines, @@ -284,5 +285,5 @@ index bb24aca0e6f82..e57e6b90f6f34 100644 } -- -2.50.1 +2.34.1 diff --git a/build/e_patches/Browser-Move-to-Murena-Qwant-from-QwanteSpot.patch b/build/e_patches/Browser-Move-to-Murena-Qwant-from-QwanteSpot.patch index a875729d19c34065bce704cbf04c8de5e5da3845..7537ed1ca6a4aa2dd81966217e207ca8bad7d74f 100644 --- a/build/e_patches/Browser-Move-to-Murena-Qwant-from-QwanteSpot.patch +++ b/build/e_patches/Browser-Move-to-Murena-Qwant-from-QwanteSpot.patch @@ -1,17 +1,18 @@ -From 01db22f534a46d7aea3c05aadd06615e7fcd9f51 Mon Sep 17 00:00:00 2001 +From e8bcce3bd9f7c52532003618856732f5c3cb8374 Mon Sep 17 00:00:00 2001 From: althafvly Date: Fri, 25 Apr 2025 11:15:25 +0530 Subject: Browser: Move to Murena Qwant from Qwant/eSpot +Signed-off-by: Saalim Quadri --- .../chrome/browser/settings/MainSettings.java | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) 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 -index 1af9b5372b5be..f7ea86fc7113e 100644 +index 4802fe88a55db..cc9618a5be47d 100644 --- a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java -@@ -74,6 +74,7 @@ import org.chromium.components.browser_ui.settings.SettingsCustomTabLauncher; +@@ -76,6 +76,7 @@ import org.chromium.components.browser_ui.settings.SettingsCustomTabLauncher; import org.chromium.components.browser_ui.settings.SettingsNavigation; import org.chromium.components.browser_ui.settings.SettingsUtils; import org.chromium.components.browser_ui.styles.SemanticColorUtils; @@ -19,7 +20,7 @@ index 1af9b5372b5be..f7ea86fc7113e 100644 import org.chromium.components.search_engines.TemplateUrl; import org.chromium.components.search_engines.TemplateUrlService; import org.chromium.components.signin.AccountManagerFacade; -@@ -248,6 +249,7 @@ public class MainSettings extends ChromeBaseSettingsFragment +@@ -254,6 +255,7 @@ public class MainSettings extends ChromeBaseSettingsFragment cachePreferences(); updateAutofillPreferences(); updatePlusAddressesPreference(); @@ -27,7 +28,7 @@ index 1af9b5372b5be..f7ea86fc7113e 100644 // TODO(crbug.com/40242060): Remove the passwords managed subtitle for local and UPM // unenrolled users who can see it directly in the context of the setting. -@@ -422,6 +424,35 @@ public class MainSettings extends ChromeBaseSettingsFragment +@@ -436,6 +438,35 @@ public class MainSettings extends ChromeBaseSettingsFragment }); } @@ -64,5 +65,5 @@ index 1af9b5372b5be..f7ea86fc7113e 100644 TemplateUrlService templateUrlService = TemplateUrlServiceFactory.getForProfile(getProfile()); -- -2.50.1 +2.34.1 diff --git a/build/e_patches/Browser-Point-to-our-default-popular-sites.patch b/build/e_patches/Browser-Point-to-our-default-popular-sites.patch index a606d997e83f122b0bdd7d5ffd3e245f03320a2f..bc8eefeb78f4d2d2225257a11c23b43e5fc2e1eb 100644 --- a/build/e_patches/Browser-Point-to-our-default-popular-sites.patch +++ b/build/e_patches/Browser-Point-to-our-default-popular-sites.patch @@ -1,9 +1,10 @@ -From 33e94d6b715498bb3e9bde2581d0a863d9c109e6 Mon Sep 17 00:00:00 2001 +From 1414aa1b5669866d813ec3316adb2ac1bce0b550 Mon Sep 17 00:00:00 2001 From: Aayush Gupta Date: Fri, 26 Nov 2021 07:29:59 +0000 Subject: Browser: Point to our default popular sites Signed-off-by: Aayush Gupta +Signed-off-by: Saalim Quadri --- .../ntp_tiles/resources/foundation_e.json | 17 +++++++++++++++++ components/resources/ntp_tiles_resources.grdp | 2 +- @@ -47,5 +48,5 @@ index 3403a2c029399..259160cce7edf 100644 -- -2.48.1 +2.34.1 diff --git a/build/e_patches/Browser-Redirect-users-to-e-foundation-docs.patch b/build/e_patches/Browser-Redirect-users-to-e-foundation-docs.patch index 5092917e18d76b9b523183ac6bb98b0a5e6c1dcc..0a2350378fc486f53904d9113e4cf68953493f29 100644 --- a/build/e_patches/Browser-Redirect-users-to-e-foundation-docs.patch +++ b/build/e_patches/Browser-Redirect-users-to-e-foundation-docs.patch @@ -1,9 +1,10 @@ -From 56f7dfdbd082e4ab6bd32c87fe8fa8911bae3905 Mon Sep 17 00:00:00 2001 +From eeaa91245f250a9fd3b63ba4bef6f53ff1e8df34 Mon Sep 17 00:00:00 2001 From: Aayush Gupta Date: Tue, 11 May 2021 14:22:00 +0200 Subject: Browser: Redirect users to e foundation docs Signed-off-by: Aayush Gupta +Signed-off-by: Saalim Quadri --- .../chrome/browser/feedback/HelpAndFeedbackLauncherImpl.java | 2 +- .../browser/feedback/HelpAndFeedbackLauncherDelegate.java | 2 +- @@ -23,18 +24,18 @@ index 29f170b2c0b08..a02338c9419f8 100644 private static @Nullable ProfileKeyedMap sProfileToLauncherMap; private final HelpAndFeedbackLauncherDelegate mDelegate; diff --git a/chrome/browser/feedback/android/java/src/org/chromium/chrome/browser/feedback/HelpAndFeedbackLauncherDelegate.java b/chrome/browser/feedback/android/java/src/org/chromium/chrome/browser/feedback/HelpAndFeedbackLauncherDelegate.java -index b900240bfa2f2..53b13800197a5 100644 +index 13793349cb392..d7e74636f0464 100644 --- a/chrome/browser/feedback/android/java/src/org/chromium/chrome/browser/feedback/HelpAndFeedbackLauncherDelegate.java +++ b/chrome/browser/feedback/android/java/src/org/chromium/chrome/browser/feedback/HelpAndFeedbackLauncherDelegate.java @@ -15,7 +15,7 @@ import org.chromium.build.annotations.NullMarked; /** Delegate that handles the display of the HelpAndFeedback flows. */ @NullMarked public interface HelpAndFeedbackLauncherDelegate { -- static final String FALLBACK_SUPPORT_URL = "https://support.google.com/chrome/topic/6069782"; -+ static final String FALLBACK_SUPPORT_URL = "https://doc.e.foundation/how-tos/"; +- String FALLBACK_SUPPORT_URL = "https://support.google.com/chrome/topic/6069782"; ++ String FALLBACK_SUPPORT_URL = "https://doc.e.foundation/how-tos/"; /** * Starts an activity showing a help page for the specified context ID. -- -2.50.1 +2.34.1 diff --git a/build/e_patches/Browser-Remove-broken-link-about-entries.patch b/build/e_patches/Browser-Remove-broken-link-about-entries.patch index d61435c9f46b31f03ebf2a7be4bf14b8331777f4..12b5ce9ce33c083edc52eba36cf0d77b95a17751 100644 --- a/build/e_patches/Browser-Remove-broken-link-about-entries.patch +++ b/build/e_patches/Browser-Remove-broken-link-about-entries.patch @@ -1,8 +1,9 @@ -From 56a2a499059cbfe769debd53d8062387a179512c Mon Sep 17 00:00:00 2001 +From 002faac013d88c8166f5eaacec5fedf5425c38ae Mon Sep 17 00:00:00 2001 From: althafvly Date: Mon, 20 Feb 2023 07:39:35 +0000 Subject: Browser: Remove broken link about entries +Signed-off-by: Saalim Quadri --- .../java/res/xml/legal_information_preferences.xml | 12 ------------ 1 file changed, 12 deletions(-) @@ -29,5 +30,5 @@ index 32067c19d4f7a..8998689617e27 100644 - app:url="@string/google_privacy_policy_url" /> -- -2.48.1 +2.34.1 diff --git a/build/e_patches/Browser-Remove-logo-from-chromeversion.patch b/build/e_patches/Browser-Remove-logo-from-chromeversion.patch index 23d240e358ecf7485d10ad3375eb1a44877b67fd..65f49ece6da26930840a6d189dd858158624360e 100644 --- a/build/e_patches/Browser-Remove-logo-from-chromeversion.patch +++ b/build/e_patches/Browser-Remove-logo-from-chromeversion.patch @@ -1,8 +1,9 @@ -From 0d82639ae8fbebac97cdf1c0052bfc1d084ef1c6 Mon Sep 17 00:00:00 2001 +From 97ca0de83c2dc2e3666ea9fba130f0f8650f95d4 Mon Sep 17 00:00:00 2001 From: A Mak Date: Sat, 25 Jul 2020 17:56:47 -0700 Subject: Browser: Remove logo from chrome://version +Signed-off-by: Saalim Quadri --- components/webui/version/resources/about_version.html | 7 ------- 1 file changed, 7 deletions(-) @@ -26,5 +27,5 @@ index e4ad426e42bca..9036415084b05 100644
$i18n{company}
-- -2.49.0 +2.34.1 diff --git a/build/e_patches/Browser-Remove-send-to-devices-option.patch b/build/e_patches/Browser-Remove-send-to-devices-option.patch index 58acb9f56530a95bd27d28e487ff470a5f6996c5..736d90afeccf9eb7df86f64bb3f1c7d4384ba9e8 100644 --- a/build/e_patches/Browser-Remove-send-to-devices-option.patch +++ b/build/e_patches/Browser-Remove-send-to-devices-option.patch @@ -1,17 +1,18 @@ -From 90cc783ce7ce381a38146b99212b5521fb3d8ca0 Mon Sep 17 00:00:00 2001 +From 3546cac0dbd26f1af40dfdb9b2256b6ddf1492d8 Mon Sep 17 00:00:00 2001 From: althafvly Date: Fri, 20 Oct 2023 18:23:09 +0530 Subject: Browser: Remove send to devices option +Signed-off-by: Saalim Quadri --- ...omeProvidedSharingOptionsProviderBase.java | 34 ------------------- 1 file changed, 34 deletions(-) diff --git a/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/ChromeProvidedSharingOptionsProviderBase.java b/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/ChromeProvidedSharingOptionsProviderBase.java -index 1f2a1d869d242..c5b2a8765251d 100644 +index f3f37dd51d794..6d3cc64de4c0c 100644 --- a/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/ChromeProvidedSharingOptionsProviderBase.java +++ b/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/ChromeProvidedSharingOptionsProviderBase.java -@@ -276,7 +276,6 @@ public abstract class ChromeProvidedSharingOptionsProviderBase { +@@ -280,7 +280,6 @@ public abstract class ChromeProvidedSharingOptionsProviderBase { } maybeAddPrintFirstPartyOption(); } @@ -19,7 +20,7 @@ index 1f2a1d869d242..c5b2a8765251d 100644 maybeAddQrCodeFirstPartyOption(); } -@@ -290,14 +289,6 @@ public abstract class ChromeProvidedSharingOptionsProviderBase { +@@ -294,14 +293,6 @@ public abstract class ChromeProvidedSharingOptionsProviderBase { } } @@ -34,7 +35,7 @@ index 1f2a1d869d242..c5b2a8765251d 100644 private void maybeAddQrCodeFirstPartyOption() { } -@@ -407,31 +398,6 @@ public abstract class ChromeProvidedSharingOptionsProviderBase { +@@ -410,31 +401,6 @@ public abstract class ChromeProvidedSharingOptionsProviderBase { .build(); } @@ -67,5 +68,5 @@ index 1f2a1d869d242..c5b2a8765251d 100644 return new FirstPartyOptionBuilder(ContentType.LINK_PAGE_VISIBLE) .setIcon(R.drawable.sharing_print, R.string.print_share_activity_title) -- -2.50.1 +2.34.1 diff --git a/build/e_patches/Browser-Rename-strings-to-browser.patch b/build/e_patches/Browser-Rename-strings-to-browser.patch index 236cf179c19e35ed793e08403a678a3593f8293c..59efc09478072c440c913482c449d6f51d5d4f99 100644 --- a/build/e_patches/Browser-Rename-strings-to-browser.patch +++ b/build/e_patches/Browser-Rename-strings-to-browser.patch @@ -1,9 +1,10 @@ -From 8cf7b60a35bea5c9a6ee646966ec5ae3897845c5 Mon Sep 17 00:00:00 2001 +From f75475e798bd6814195753514968406b5e001795 Mon Sep 17 00:00:00 2001 From: Aayush Gupta Date: Fri, 26 Nov 2021 07:12:30 +0000 Subject: Browser: Rename strings to browser Signed-off-by: Aayush Gupta +Signed-off-by: Saalim Quadri --- .../android/java/res/xml/about_chrome_preferences.xml | 3 +++ .../browser/about_settings/AboutChromeSettings.java | 7 +++---- @@ -27,10 +28,10 @@ index fb1dfed23052b..d5092508ce452 100644 android:key="application_version" android:title="@string/application_version_title" /> diff --git a/chrome/android/java/src/org/chromium/chrome/browser/about_settings/AboutChromeSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/about_settings/AboutChromeSettings.java -index 599df250a62b6..c8878ba918a68 100644 +index d782e5552b417..0c8ff21049cfc 100644 --- a/chrome/android/java/src/org/chromium/chrome/browser/about_settings/AboutChromeSettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/about_settings/AboutChromeSettings.java -@@ -37,7 +37,7 @@ public class AboutChromeSettings extends PreferenceFragmentCompat +@@ -37,7 +37,7 @@ public class AboutChromeSettings extends ChromeBaseSettingsFragment private static final String PREF_APPLICATION_VERSION = "application_version"; private static final String PREF_OS_VERSION = "os_version"; @@ -39,7 +40,7 @@ index 599df250a62b6..c8878ba918a68 100644 // Non-translated strings: @SuppressWarnings("InlineFormatString") -@@ -68,10 +68,9 @@ public class AboutChromeSettings extends PreferenceFragmentCompat +@@ -68,10 +68,9 @@ public class AboutChromeSettings extends ChromeBaseSettingsFragment p = findPreference(PREF_OS_VERSION); assumeNonNull(p); p.setSummary(AboutSettingsBridge.getOSVersion()); @@ -53,7 +54,7 @@ index 599df250a62b6..c8878ba918a68 100644 @Override diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd -index 81df58cd2b54f..08102a5a2fe9c 100644 +index 3d58a047cdff6..d12b34bbf637d 100644 --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd @@ -202,6 +202,8 @@ CHAR_LIMIT guidelines: @@ -82,5 +83,5 @@ index 0000000000000..49da40abd38e7 + + -- -2.50.1 +2.34.1 diff --git a/build/e_patches/Browser-Replace-default-tab-favicon.patch b/build/e_patches/Browser-Replace-default-tab-favicon.patch index abc17f78d7608d31dd4c5e7950fc045e6d78ce63..e1530afb13c6569434b1c586b7ed59826d756e37 100644 --- a/build/e_patches/Browser-Replace-default-tab-favicon.patch +++ b/build/e_patches/Browser-Replace-default-tab-favicon.patch @@ -1,8 +1,9 @@ -From 837121cceed229663fe807ff684a28f41aa96a3a Mon Sep 17 00:00:00 2001 +From f7e59c8ca2106227ed4b7571e0cbb8804df37d22 Mon Sep 17 00:00:00 2001 From: althafvly Date: Mon, 2 Jan 2023 15:12:41 +0530 Subject: Browser: Replace default tab favicon +Signed-off-by: Saalim Quadri --- .../java/res/drawable-hdpi/chromelogo16.png | Bin 425 -> 1016 bytes .../java/res/drawable-mdpi/chromelogo16.png | Bin 318 -> 647 bytes diff --git a/build/e_patches/Browser-Spoof-as-Pixel-4a-by-default.patch b/build/e_patches/Browser-Spoof-as-Pixel-4a-by-default.patch index c81bfc4f87dcb3adc3b9b96179d0ad19a6872ce3..81b5d3a33bd02c91ece805dd7d92272189c95d3d 100644 --- a/build/e_patches/Browser-Spoof-as-Pixel-4a-by-default.patch +++ b/build/e_patches/Browser-Spoof-as-Pixel-4a-by-default.patch @@ -1,9 +1,11 @@ -From ed31c4954416624014361d81301625f07252a936 Mon Sep 17 00:00:00 2001 +From 5b72cc903fc2404911648c9f99eb2f800cc7df51 Mon Sep 17 00:00:00 2001 From: althafvly Date: Thu, 19 Jan 2023 05:41:58 +0000 Subject: Browser: Spoof as Pixel 4a by default - Android 10 Pixel 4a QD4A.200805.003 + +Signed-off-by: Saalim Quadri --- base/system/sys_info_android.cc | 20 ++++++-------------- 1 file changed, 6 insertions(+), 14 deletions(-) @@ -71,5 +73,5 @@ index b1b5e3cd95450..e1eea8c7d14a3 100644 std::string SysInfo::GetAndroidHardware() { -- -2.50.1 +2.34.1 diff --git a/build/e_patches/Browser-Use-adaptive-icon-for-recents-UI.patch b/build/e_patches/Browser-Use-adaptive-icon-for-recents-UI.patch index 3b7536dc9f11f5df60b33fef810bcc0a211a0125..c7fc6377ff26b301e2e7ce6fd47a8d8dfa87bcf3 100644 --- a/build/e_patches/Browser-Use-adaptive-icon-for-recents-UI.patch +++ b/build/e_patches/Browser-Use-adaptive-icon-for-recents-UI.patch @@ -1,14 +1,15 @@ -From 30b39a15418ccc153e549a1796ac815ea4c5d7e3 Mon Sep 17 00:00:00 2001 +From 842014e404ccbdc699ef4f38ccd42ee9ba3620a8 Mon Sep 17 00:00:00 2001 From: althafvly Date: Wed, 14 Dec 2022 12:18:50 +0530 Subject: Browser: Use adaptive icon for recents UI +Signed-off-by: Saalim Quadri --- .../chrome/browser/ChromeBaseAppCompatActivity.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java -index 5ff063553bb90..1698506eb745a 100644 +index 6150fc9d43c10..42d97e99ec0c8 100644 --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java @@ -13,6 +13,8 @@ import android.app.ActivityManager.TaskDescription; @@ -20,7 +21,7 @@ index 5ff063553bb90..1698506eb745a 100644 import android.os.Build; import android.os.Build.VERSION; import android.os.Build.VERSION_CODES; -@@ -589,11 +591,15 @@ public class ChromeBaseAppCompatActivity extends AppCompatActivity +@@ -583,11 +585,15 @@ public class ChromeBaseAppCompatActivity extends AppCompatActivity /** Sets the default task description that will appear in the recents UI. */ protected void setDefaultTaskDescription() { @@ -38,5 +39,5 @@ index 5ff063553bb90..1698506eb745a 100644 @Override public void onNightModeStateChanged() { -- -2.50.1 +2.34.1 diff --git a/build/e_patches/Browser-Use-correct-switch-scale.patch b/build/e_patches/Browser-Use-correct-switch-scale.patch index 6eac9684df037bd2ccb74e64f87a069f1a7e3f47..c437a8a144885555bf8e22320a4f7cd04b369ee5 100644 --- a/build/e_patches/Browser-Use-correct-switch-scale.patch +++ b/build/e_patches/Browser-Use-correct-switch-scale.patch @@ -1,17 +1,18 @@ -From 40044600e13cb2647a4a9c85a3f07a05aa5f6aa3 Mon Sep 17 00:00:00 2001 +From e5f65dfec30bbe10a2ccaa6822aab130b3b1b061 Mon Sep 17 00:00:00 2001 From: althafvly Date: Wed, 7 Aug 2024 14:05:16 +0530 Subject: Browser: Use correct switch scale +Signed-off-by: Saalim Quadri --- components/browser_ui/widget/android/java/res/values/dimens.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/browser_ui/widget/android/java/res/values/dimens.xml b/components/browser_ui/widget/android/java/res/values/dimens.xml -index 0c2fdd11e3248..bd88eea277639 100644 +index 33efc5ebb8115..25f1191ca36fb 100644 --- a/components/browser_ui/widget/android/java/res/values/dimens.xml +++ b/components/browser_ui/widget/android/java/res/values/dimens.xml -@@ -221,7 +221,7 @@ found in the LICENSE file. +@@ -220,7 +220,7 @@ found in the LICENSE file. @@ -21,5 +22,5 @@ index 0c2fdd11e3248..bd88eea277639 100644 60dp @dimen/min_touch_target_size -- -2.50.1 +2.34.1 diff --git a/build/e_patches/Browser-Use-our-custom-icon-for-browser.patch b/build/e_patches/Browser-Use-our-custom-icon-for-browser.patch index ad061181b5eb2e5f613e19917f2ce77b8fee4111..35cfbcad5edac801fc1e96a4bf0e78053d834921 100644 --- a/build/e_patches/Browser-Use-our-custom-icon-for-browser.patch +++ b/build/e_patches/Browser-Use-our-custom-icon-for-browser.patch @@ -1,8 +1,9 @@ -From 55cf9026ebbd36a2d74e999504888fbf79bd5d98 Mon Sep 17 00:00:00 2001 +From ab1d5069c62b8702927edde3727bb60c787f7041 Mon Sep 17 00:00:00 2001 From: althafvly Date: Fri, 18 Nov 2022 10:07:39 +0000 Subject: Browser: Use our custom icon for browser +Signed-off-by: Saalim Quadri --- chrome/android/BUILD.gn | 44 ++++++++++-------- .../java/res_base/drawable/ic_launcher.xml | 14 ++---- @@ -60,7 +61,7 @@ Subject: Browser: Use our custom icon for browser delete mode 100644 chrome/android/java/res_chromium_base/mipmap-xxxhdpi/layered_app_icon_background.png diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn -index 127890091a4ba..6ed4cd064bc8d 100644 +index 6a4020096f7f4..c153aa54056b0 100644 --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn @@ -169,22 +169,24 @@ if (_is_default_toolchain) { diff --git a/build/e_patches/Browser-disable-first-run-welcome-page.patch b/build/e_patches/Browser-disable-first-run-welcome-page.patch index beec9e0689e58bd93dc383c727d75cc165d6e38d..815f9172433541b89fd4ec2cfaab020eea3be1d6 100644 --- a/build/e_patches/Browser-disable-first-run-welcome-page.patch +++ b/build/e_patches/Browser-disable-first-run-welcome-page.patch @@ -1,8 +1,9 @@ -From dc24b17ff4181b6938a23a05a3dee0ded54a8c11 Mon Sep 17 00:00:00 2001 +From 8291e567f818d84626268165cde00ba65f1da2cb Mon Sep 17 00:00:00 2001 From: csagan5 <32685696+csagan5@users.noreply.github.com> Date: Sun, 26 Nov 2017 22:51:43 +0100 Subject: Browser: disable first run welcome page +Signed-off-by: Saalim Quadri --- .../org/chromium/chrome/browser/firstrun/FirstRunUtils.java | 2 +- .../chromium/chrome/browser/firstrun/FirstRunStatus.java | 6 +++++- @@ -40,5 +41,5 @@ index ae781f16eb405..5351b1d87da37 100644 /** -- -2.49.0 +2.34.1 diff --git a/build/e_patches/Browser-disable-price-shopping-commerce-integration.patch b/build/e_patches/Browser-disable-price-shopping-commerce-integration.patch index e0cb2772c3f5666d1fe8e8bb7da6f3d3414f93fa..ccd5b125e597f0a64685547b264e743da7f87083 100644 --- a/build/e_patches/Browser-disable-price-shopping-commerce-integration.patch +++ b/build/e_patches/Browser-disable-price-shopping-commerce-integration.patch @@ -1,19 +1,20 @@ -From ce29cd78f9199f38960d96a8aa25970376d5a4c7 Mon Sep 17 00:00:00 2001 +From 9e303a294c50cff5e46529e1c84941a466630701 Mon Sep 17 00:00:00 2001 From: althafvly Date: Wed, 4 Oct 2023 19:36:24 +0530 Subject: Browser: disable price shopping commerce integration Co-authored-by: Nishith Khanna +Signed-off-by: Saalim Quadri --- .../browser/app/appmenu/AppMenuPropertiesDelegateImpl.java | 6 +++--- components/commerce/core/commerce_feature_list.cc | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) 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 -index 94a164b3663cc..dadca9b49ac5a 100644 +index c599a24568ffe..639d1d9b0ad57 100644 --- 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 -@@ -1061,7 +1061,7 @@ public abstract class AppMenuPropertiesDelegateImpl implements AppMenuProperties +@@ -1077,7 +1077,7 @@ public abstract class AppMenuPropertiesDelegateImpl implements AppMenuProperties } Profile profile = currentTab.getProfile(); @@ -22,7 +23,7 @@ index 94a164b3663cc..dadca9b49ac5a 100644 ShoppingService.ProductInfo info = null; if (service != null) { info = service.getAvailableProductInfoForUrl(currentTab.getUrl()); -@@ -1086,8 +1086,8 @@ public abstract class AppMenuPropertiesDelegateImpl implements AppMenuProperties +@@ -1102,8 +1102,8 @@ public abstract class AppMenuPropertiesDelegateImpl implements AppMenuProperties boolean isSubscribed = service.isSubscribedFromCache(sub); showStartPriceTracking = !isSubscribed; } @@ -34,7 +35,7 @@ index 94a164b3663cc..dadca9b49ac5a 100644 /** diff --git a/components/commerce/core/commerce_feature_list.cc b/components/commerce/core/commerce_feature_list.cc -index 5e9e91097d14c..3b601f41f1c20 100644 +index cdfd575ff99dd..c4087af438f21 100644 --- a/components/commerce/core/commerce_feature_list.cc +++ b/components/commerce/core/commerce_feature_list.cc @@ -125,7 +125,7 @@ BASE_FEATURE(kCommerceAllowLocalImages, @@ -56,5 +57,5 @@ index 5e9e91097d14c..3b601f41f1c20 100644 BASE_FEATURE(kCommerceDeveloper, "CommerceDeveloper", -- -2.50.1 +2.34.1 diff --git a/build/e_patches/Browser-disable-search-provider-logo.patch b/build/e_patches/Browser-disable-search-provider-logo.patch index f7272f3f4bf990eba8afd2b0d22622ae731d8b9c..59d88fd8bda837128c696b0d2fdb60fb4499c7b1 100644 --- a/build/e_patches/Browser-disable-search-provider-logo.patch +++ b/build/e_patches/Browser-disable-search-provider-logo.patch @@ -1,8 +1,9 @@ -From 424324177b26b8f7672b7aa0225b972a960f5142 Mon Sep 17 00:00:00 2001 +From 845b60311ba0a1c6a9f0b98bc31bd4657bc40c6d Mon Sep 17 00:00:00 2001 From: Daniel Micay Date: Mon, 17 Jun 2019 12:03:52 -0400 Subject: Browser: disable search provider logo +Signed-off-by: Saalim Quadri --- .../android/template_url_service_android.cc | 24 +------------------ 1 file changed, 1 insertion(+), 23 deletions(-) @@ -43,5 +44,5 @@ index bc91d780998a5..6f7a119cb3e6a 100644 jboolean TemplateUrlServiceAndroid::IsDefaultSearchEngineGoogle(JNIEnv* env) { -- -2.50.1 +2.34.1 diff --git a/build/e_patches/Change-accent-and-switch-to-match-our-palette.patch b/build/e_patches/Change-accent-and-switch-to-match-our-palette.patch index 4597d60e9af76218d8de2d97f14588f59da1c40c..fd29a78c4d5a8e686ffd9adde6f44f7c07509f21 100644 --- a/build/e_patches/Change-accent-and-switch-to-match-our-palette.patch +++ b/build/e_patches/Change-accent-and-switch-to-match-our-palette.patch @@ -1,13 +1,13 @@ -From 9a988ba8dd1ceadb670d3fd09dd222aa15369e41 Mon Sep 17 00:00:00 2001 +From 13765bd3bad7d2030d439f4672000dc38ebcfb8f Mon Sep 17 00:00:00 2001 From: Nishith Khanna Date: Tue, 20 Feb 2024 20:35:25 +0530 Subject: Change accent and switch to match our palette +Signed-off-by: Saalim Quadri --- .../keyboard_accessory_sheet_tab_option_toggle.xml | 2 +- .../browser/tasks/tab_management/TabUiThemeProvider.java | 9 +++++---- .../java/res/layout/improved_bookmark_save_flow.xml | 2 +- - .../java/res/layout/incognito_cookie_controls_card.xml | 2 +- .../android/java/res/layout/readaloud_toggle_switch.xml | 2 +- .../res/layout/fast_checkout_autofill_profile_item.xml | 2 +- .../java/res/layout/fast_checkout_credit_card_item.xml | 2 +- @@ -28,7 +28,7 @@ Subject: Change accent and switch to match our palette .../widget/android/java/res/layout/preference_switch.xml | 2 +- .../android/res/layout/infobar_control_toggle.xml | 2 +- ui/android/java/res/values/color_palette.xml | 8 ++++++-- - 24 files changed, 67 insertions(+), 25 deletions(-) + 23 files changed, 66 insertions(+), 24 deletions(-) create mode 100644 components/browser_ui/styles/android/java/res/color/e_switch_thumb_color.xml create mode 100644 components/browser_ui/styles/android/java/res/color/e_switch_track_color.xml create mode 100644 components/browser_ui/styles/android/java/res/drawable/e_switch_thumb.xml @@ -48,7 +48,7 @@ index 9d1713c43e8b1..5cefd325aae52 100644 android:layout_marginStart="16dp" android:layout_width="48dp" diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabUiThemeProvider.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabUiThemeProvider.java -index 0e60d9b20e26c..4b87c7e4098f5 100644 +index beb8813e9d5ce..0d0a80f44c29f 100644 --- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabUiThemeProvider.java +++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabUiThemeProvider.java @@ -51,7 +51,8 @@ public class TabUiThemeProvider { @@ -70,7 +70,7 @@ index 0e60d9b20e26c..4b87c7e4098f5 100644 int alpha = context.getResources() .getInteger( -@@ -171,8 +172,8 @@ public class TabUiThemeProvider { +@@ -175,8 +176,8 @@ public class TabUiThemeProvider { ? R.color.incognito_tab_grid_dialog_ungroup_bar_text_hovered_color : R.color.incognito_tab_grid_dialog_ungroup_bar_text_color); } else { @@ -94,19 +94,6 @@ index 8b83198cdfae7..3c883d9e4aded 100644 android:id="@+id/price_tracking_switch" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" -diff --git a/chrome/android/java/res/layout/incognito_cookie_controls_card.xml b/chrome/android/java/res/layout/incognito_cookie_controls_card.xml -index b64746de1b4d3..4b9e14c19fd2e 100644 ---- a/chrome/android/java/res/layout/incognito_cookie_controls_card.xml -+++ b/chrome/android/java/res/layout/incognito_cookie_controls_card.xml -@@ -27,7 +27,7 @@ found in the LICENSE file. - "@string/accessibility_incognito_3pc_settings" - app:tint="@color/default_icon_color_light" /> - -- + app:drawableTint="@color/default_control_color_active_baseline" /> diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarViewBinder.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarViewBinder.java -index 2ef882beb0af9..79f862cc949a1 100644 +index 43bfc9775d6b7..228c81c8a4892 100644 --- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarViewBinder.java +++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarViewBinder.java -@@ -163,7 +163,7 @@ class UrlBarViewBinder { +@@ -169,7 +169,7 @@ class UrlBarViewBinder { final int color = useIncognitoColors ? view.getContext().getColor(R.color.default_control_color_active_dark) @@ -191,7 +178,7 @@ index b9570b7802f1e..b6f8b814a802d 100644 - app:drawableTint="?attr/colorPrimary" /> + app:drawableTint="@color/default_control_color_active_baseline" /> diff --git a/components/browser_ui/styles/android/BUILD.gn b/components/browser_ui/styles/android/BUILD.gn -index 0eebc801da340..003817b0dff23 100644 +index cf0bf0eee6dee..ead67aa90c23c 100644 --- a/components/browser_ui/styles/android/BUILD.gn +++ b/components/browser_ui/styles/android/BUILD.gn @@ -73,6 +73,8 @@ android_resources("java_resources") { @@ -277,7 +264,7 @@ index 0000000000000..f5b1eed6f2e6f + + diff --git a/components/browser_ui/styles/android/java/res/values/semantic_colors_dynamic.xml b/components/browser_ui/styles/android/java/res/values/semantic_colors_dynamic.xml -index 8cfae64f0119c..7985902587a2a 100644 +index 252315af398c1..07b06756ab687 100644 --- a/components/browser_ui/styles/android/java/res/values/semantic_colors_dynamic.xml +++ b/components/browser_ui/styles/android/java/res/values/semantic_colors_dynamic.xml @@ -9,11 +9,11 @@ found in the LICENSE file. @@ -304,7 +291,7 @@ index 8cfae64f0119c..7985902587a2a 100644 ?attr/colorOnPrimaryContainer ?attr/colorOnSecondaryContainer diff --git a/components/browser_ui/styles/android/java/res/values/styles.xml b/components/browser_ui/styles/android/java/res/values/styles.xml -index 516d07c84d033..5b8e12e1996d0 100644 +index d7843461cbdb8..5ceb6dac1ee92 100644 --- a/components/browser_ui/styles/android/java/res/values/styles.xml +++ b/components/browser_ui/styles/android/java/res/values/styles.xml @@ -20,9 +20,13 @@ found in the LICENSE file. @@ -319,13 +306,13 @@ index 516d07c84d033..5b8e12e1996d0 100644 + @color/e_switch_track_color + @color/e_switch_thumb_color -