diff --git a/Dockerfile b/Dockerfile index 474ba143d78d1c28827612a2a9fb91820e21eada..615dedbec98e10e72262a855c760aee7cef84769 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,7 @@ FROM ubuntu:20.04 ENV CHROMIUM_DIR "/srv/chromium" -ENV CHROMIUM_VER "129.0.6668.71" +ENV CHROMIUM_VER "130.0.6723.67" RUN apt-get update && \ DEBIAN_FRONTEND=noninteractive \ diff --git a/build.sh b/build.sh index e5c325ea8f9e06da9ead2de44110cb33808f031d..d72dd2eb67c7535c06b172bf1577eb417eba0c87 100755 --- a/build.sh +++ b/build.sh @@ -8,7 +8,7 @@ if [ ! -d "$chromium_dir" ]; then chromium_dir=$root_dir fi chromium_version=$(grep 'ENV CHROMIUM_VER' Dockerfile | awk -F'"' '{print $2}') -chromium_code=$(echo "$chromium_version" | tr -d '.' | cut -c5-) +chromium_code=$(echo "${chromium_version}" | tr -d '.' | cut -c1-8) chromium_url=https://github.com/chromium/chromium.git clean=0 gsync=0 @@ -38,19 +38,8 @@ build() { build_args="$(cat "${root_dir}"/build/browser.gn_args) target_cpu=\"${1}\" " apk_arch=${1} - code=$chromium_code - if [ $1 '==' "arm" ]; then - code+=00 - elif [ $1 '==' "arm64" ]; then - code+=50 - elif [ $1 '==' "x86" ]; then - code+=10 - elif [ $1 '==' "x64" ]; then - apk_arch="x86_64" - code+=60 - fi build_args+=' android_default_version_name="'$chromium_version'"' - build_args+=' android_default_version_code="'$code'"' + build_args+=' android_default_version_code="'$chromium_code'"' if [ $clean -eq 1 ]; then if [ -d "out/$1" ]; then @@ -197,8 +186,13 @@ solutions = [{ "url": "$chromium_url@$chromium_commit_hash", "managed": False, "name": "src", + "deps_file": 'DEPS', "custom_deps": {}, - "custom_vars": {} + "custom_vars": { + "checkout_android_prebuilts_build_tools": True, + "checkout_telemetry_dependencies": False, + "checkout_pgo_profiles": True, + } }] target_os = ["android"] diff --git a/build/.gitignore b/build/.gitignore index 721043c8ab872eef1b6d9d158ee444461cceef68..4ac1fbaf48eef0fc7c48f1d4c77c36494209a839 100644 --- a/build/.gitignore +++ b/build/.gitignore @@ -1,2 +1 @@ cromite/ - diff --git a/build/browser.gn_args b/build/browser.gn_args index b52615de37547e65ca7a4e2e144c91665c40cb9f..feab1ff6a7d304247f2035a121080cf17d935631 100644 --- a/build/browser.gn_args +++ b/build/browser.gn_args @@ -2,17 +2,19 @@ android_channel="stable" blink_symbol_level=1 build_contextual_search=false build_with_tflite_lib=false -chrome_pgo_phase=0 +chrome_pgo_phase=2 dcheck_always_on=false dfmify_dev_ui=false disable_android_lint=true disable_fieldtrial_testing_config=true enable_arcore=false enable_av1_decoder=true +enable_bound_session_credentials=false enable_cardboard=false enable_dav1d_decoder=true enable_hangout_services_extension=false enable_iterator_debugging=false +enable_log_error_not_reached=true enable_mdns=false enable_mse_mpeg2ts_stream_parser=true enable_nacl=false @@ -22,17 +24,19 @@ enable_platform_dts_audio=false enable_platform_encrypted_dolby_vision=false enable_platform_hevc=true enable_precompiled_headers=false +enable_remoting=false enable_reporting=false enable_request_header_integrity=false -enable_remoting=false enable_vr=false exclude_unwind_tables=false ffmpeg_branding="Chrome" +generate_linker_map=true icu_use_data_file=true is_cfi=false is_component_build=false is_debug=false is_official_build=true +media_use_openh264=false proprietary_codecs=true rtc_build_examples=false safe_browsing_use_unrar=false diff --git a/build/cromite_patches/AImageReader-CFI-crash-mitigations.patch b/build/cromite_patches/AImageReader-CFI-crash-mitigations.patch index 7de74ef55405f62c2cd86b6ee644543a3819b85b..33f76f526068b452fc765ad002721c7ac650c157 100644 --- a/build/cromite_patches/AImageReader-CFI-crash-mitigations.patch +++ b/build/cromite_patches/AImageReader-CFI-crash-mitigations.patch @@ -90,7 +90,7 @@ diff --git a/base/android/android_image_reader_compat.h b/base/android/android_i diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json --- a/chrome/browser/flag-metadata.json +++ b/chrome/browser/flag-metadata.json -@@ -3406,9 +3406,9 @@ +@@ -3430,9 +3430,9 @@ "expiry_milestone": 135 }, { @@ -168,8 +168,8 @@ diff --git a/gpu/config/gpu_finch_features.h b/gpu/config/gpu_finch_features.h #if BUILDFLAG(IS_ANDROID) +GPU_EXPORT BASE_DECLARE_FEATURE(kAImageReaderMediaPlayer); GPU_EXPORT BASE_DECLARE_FEATURE(kAndroidSurfaceControl); - GPU_EXPORT BASE_DECLARE_FEATURE(kEnableGpuMemoryBufferImplAHB); GPU_EXPORT BASE_DECLARE_FEATURE(kWebViewSurfaceControl); + GPU_EXPORT BASE_DECLARE_FEATURE(kWebViewSurfaceControlForTV); diff --git a/gpu/config/gpu_util.cc b/gpu/config/gpu_util.cc --- a/gpu/config/gpu_util.cc +++ b/gpu/config/gpu_util.cc diff --git a/build/cromite_patches/Add-AllowUserCertificates-flag.patch b/build/cromite_patches/Add-AllowUserCertificates-flag.patch index c7331745ea7516da49596e31fc986b79230827f1..758c398d87b99cf820ce9ac1b98b8b260145a3be 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 -@@ -233,6 +233,7 @@ import org.chromium.content_public.browser.ScreenOrientationProvider; +@@ -227,6 +227,7 @@ import org.chromium.content_public.browser.ScreenOrientationProvider; import org.chromium.content_public.browser.SelectionPopupController; import org.chromium.content_public.browser.WebContents; import org.chromium.content_public.common.ContentSwitches; @@ -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; -@@ -1054,6 +1055,8 @@ public abstract class ChromeActivity +@@ -1045,6 +1046,8 @@ public abstract class ChromeActivity ChromeActivitySessionTracker.getInstance().onStartWithNative(getProfileProviderSupplier()); ChromeCachedFlags.getInstance().cacheNativeFlags(); @@ -56,10 +56,10 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f public static final String ACCOUNT_REAUTHENTICATION_RECENT_TIME_WINDOW = "AccountReauthenticationRecentTimeWindow"; + public static final String ALLOW_USER_CERTIFICATES = "AllowUserCertificates"; - public static final String ADAPTIVE_BUTTON_IN_TOP_TOOLBAR_TRANSLATE = - "AdaptiveButtonInTopToolbarTranslate"; - public static final String ADAPTIVE_BUTTON_IN_TOP_TOOLBAR_ADD_TO_BOOKMARKS = -@@ -572,6 +573,8 @@ public abstract class ChromeFeatureList { + public static final String ADAPTIVE_BUTTON_IN_TOP_TOOLBAR_PAGE_SUMMARY = + "AdaptiveButtonInTopToolbarPageSummary"; + public static final String ADAPTIVE_BUTTON_IN_TOP_TOOLBAR_CUSTOMIZATION_V2 = +@@ -583,6 +584,8 @@ public abstract class ChromeFeatureList { public static final CachedFlag sAndroidTabDeclutterDedupeTabIdsKillSwitch = newCachedFlag(ANDROID_TAB_DECLUTTER_DEDUPE_TAB_IDS_KILL_SWITCH, true); public static final CachedFlag sAppSpecificHistory = newCachedFlag(APP_SPECIFIC_HISTORY, true); @@ -68,14 +68,14 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f public static final CachedFlag sAsyncNotificationManager = newCachedFlag(ASYNC_NOTIFICATION_MANAGER, false); public static final CachedFlag sBackGestureActivityTabProvider = -@@ -725,6 +728,7 @@ public abstract class ChromeFeatureList { +@@ -746,6 +749,7 @@ public abstract class ChromeFeatureList { public static final List sFlagsCachedFullBrowserChromium = List.of( sAccountReauthenticationRecentTimeWindow, + sAllowUserCertificates, sAndroidAppIntegration, + sAndroidBottomToolbar, sAndroidElegantTextHeight, - sAndroidGoogleSansText, diff --git a/cromite_flags/chrome/browser/about_flags_cc/Add-AllowUserCertificates-flag.inc b/cromite_flags/chrome/browser/about_flags_cc/Add-AllowUserCertificates-flag.inc new file mode 100644 --- /dev/null diff --git a/build/cromite_patches/Add-IsCleartextPermitted-flag.patch b/build/cromite_patches/Add-IsCleartextPermitted-flag.patch index b97584d3a45ce9d519513843868c29de1db3ee13..7f8c467b3f5aaa24d0ac1eef2cd9f80ae54f20a0 100644 --- a/build/cromite_patches/Add-IsCleartextPermitted-flag.patch +++ b/build/cromite_patches/Add-IsCleartextPermitted-flag.patch @@ -44,7 +44,7 @@ new file mode 100644 diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_request_http_job.cc --- a/net/url_request/url_request_http_job.cc +++ b/net/url_request/url_request_http_job.cc -@@ -390,6 +390,11 @@ std::unique_ptr URLRequestHttpJob::Create(URLRequest* request) { +@@ -391,6 +391,11 @@ std::unique_ptr URLRequestHttpJob::Create(URLRequest* request) { } } diff --git a/build/cromite_patches/Add-a-proxy-configuration-page.patch b/build/cromite_patches/Add-a-proxy-configuration-page.patch index 98066a1deb9da62d0a378f4aebd89e3aaf5f1080..207369edeff2b76f809954a65e3f7cedebd30e55 100644 --- a/build/cromite_patches/Add-a-proxy-configuration-page.patch +++ b/build/cromite_patches/Add-a-proxy-configuration-page.patch @@ -77,7 +77,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 -@@ -73,6 +73,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment +@@ -75,6 +75,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment private static final String PREF_SAFE_BROWSING = "safe_browsing"; private static final String PREF_SYNC_AND_SERVICES_LINK = "sync_and_services_link"; private static final String PREF_PRIVACY_SANDBOX = "privacy_sandbox"; @@ -88,7 +88,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc --- a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc +++ b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc -@@ -319,6 +319,7 @@ ChromeAutocompleteProviderClient::GetBuiltinsToProvideAsUserTypes() { +@@ -318,6 +318,7 @@ ChromeAutocompleteProviderClient::GetBuiltinsToProvideAsUserTypes() { builtins_to_provide.push_back(chrome::kChromeUISettingsURL16); #endif builtins_to_provide.push_back(chrome::kChromeUIVersionURL16); @@ -99,7 +99,7 @@ diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc diff --git a/chrome/browser/browser_resources.grd b/chrome/browser/browser_resources.grd --- a/chrome/browser/browser_resources.grd +++ b/chrome/browser/browser_resources.grd -@@ -244,6 +244,9 @@ +@@ -239,6 +239,9 @@ @@ -196,7 +196,7 @@ diff --git a/chrome/browser/net/proxy_service_factory.h b/chrome/browser/net/pro diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc --- a/chrome/browser/prefs/browser_prefs.cc +++ b/chrome/browser/prefs/browser_prefs.cc -@@ -201,6 +201,8 @@ +@@ -203,6 +203,8 @@ #include "printing/buildflags/buildflags.h" #include "rlz/buildflags/buildflags.h" @@ -205,7 +205,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse #if BUILDFLAG(ENABLE_BACKGROUND_MODE) #include "chrome/browser/background/background_mode_manager.h" #endif -@@ -1496,6 +1498,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) { +@@ -1577,6 +1579,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) { component_updater::RegisterPrefs(registry); domain_reliability::RegisterPrefs(registry); embedder_support::OriginTrialPrefs::RegisterPrefs(registry); @@ -660,7 +660,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 -@@ -336,6 +336,8 @@ static_library("ui") { +@@ -281,6 +281,8 @@ static_library("ui") { "webui/metrics_internals/metrics_internals_ui.h", "webui/net_export_ui.cc", "webui/net_export_ui.h", @@ -672,23 +672,23 @@ diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn diff --git a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc b/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc --- a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc +++ b/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc -@@ -50,6 +50,7 @@ - #include "chrome/browser/ui/webui/ntp_tiles_internals_ui.h" - #include "chrome/browser/ui/webui/omnibox/omnibox_ui.h" +@@ -46,6 +46,7 @@ + #include "chrome/browser/ui/webui/media/media_engagement_ui.h" + #include "chrome/browser/ui/webui/media/webrtc_logs_ui.h" #include "chrome/browser/ui/webui/policy/policy_ui.h" +#include "chrome/browser/ui/webui/proxy_config_ui.h" - #include "chrome/browser/ui/webui/predictors/predictors_ui.h" #include "chrome/browser/ui/webui/privacy_sandbox/privacy_sandbox_internals_ui.h" - #include "chrome/browser/ui/webui/segmentation_internals/segmentation_internals_ui.h" -@@ -419,6 +420,8 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui, - #endif // BUILDFLAG(IS_CHROMEOS_ASH) - if (url.host_piece() == chrome::kChromeUINetExportHost) - return &NewWebUI; + #include "chrome/browser/ui/webui/suggest_internals/suggest_internals_ui.h" + #include "chrome/browser/ui/webui/webui_util.h" +@@ -532,6 +533,8 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui, + return &NewWebUI; + } + #endif // BUILDFLAG(IS_ANDROID) + if (url.host_piece() == chrome::kChromeUIProxyConfigHost) + return &NewWebUI; - if (url.host_piece() == chrome::kChromeUINetInternalsHost) - return &NewWebUI; - if (url.host_piece() == chrome::kChromeUINTPTilesInternalsHost) + #if !BUILDFLAG(IS_CHROMEOS_ASH) && !BUILDFLAG(IS_ANDROID) + if (url.host_piece() == chrome::kChromeUIManagedUserProfileNoticeHost) { + return &NewWebUI; diff --git a/chrome/browser/ui/webui/proxy_config_ui.cc b/chrome/browser/ui/webui/proxy_config_ui.cc new file mode 100644 --- /dev/null @@ -1141,7 +1141,7 @@ diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_cons diff --git a/chrome/common/webui_url_constants.h b/chrome/common/webui_url_constants.h --- a/chrome/common/webui_url_constants.h +++ b/chrome/common/webui_url_constants.h -@@ -171,6 +171,8 @@ inline constexpr char kChromeUINetExportURL[] = "chrome://net-export"; +@@ -176,6 +176,8 @@ inline constexpr char kChromeUINetExportURL[] = "chrome://net-export"; inline constexpr char kChromeUINetInternalsHost[] = "net-internals"; inline constexpr char kChromeUINetInternalsURL[] = "chrome://net-internals/"; inline constexpr char kChromeUINewTabHost[] = "newtab"; @@ -1319,16 +1319,16 @@ diff --git a/components/proxy_config/proxy_policy_handler.cc b/components/proxy_ diff --git a/net/proxy_resolution/proxy_config.cc b/net/proxy_resolution/proxy_config.cc --- a/net/proxy_resolution/proxy_config.cc +++ b/net/proxy_resolution/proxy_config.cc -@@ -109,7 +109,7 @@ void ProxyConfig::ProxyRules::ParseFromString(const std::string& proxy_rules) { - &single_proxies, - ProxyServer::SCHEME_HTTP); +@@ -124,7 +124,7 @@ void ProxyConfig::ProxyRules::ParseFromString( + ProxyServer::SCHEME_HTTP, + allow_bracketed_proxy_chains); type = Type::PROXY_LIST; - return; + continue; } // Trim whitespace off the url scheme. -@@ -140,6 +140,55 @@ void ProxyConfig::ProxyRules::ParseFromString(const std::string& proxy_rules) { +@@ -155,6 +155,55 @@ void ProxyConfig::ProxyRules::ParseFromString( } } @@ -1383,14 +1383,14 @@ diff --git a/net/proxy_resolution/proxy_config.cc b/net/proxy_resolution/proxy_c + const ProxyList* ProxyConfig::ProxyRules::MapUrlSchemeToProxyList( const std::string& url_scheme) const { - const ProxyList* proxy_server_list = const_cast(this)-> + const ProxyList* proxy_server_list = diff --git a/net/proxy_resolution/proxy_config.h b/net/proxy_resolution/proxy_config.h --- a/net/proxy_resolution/proxy_config.h +++ b/net/proxy_resolution/proxy_config.h -@@ -103,6 +103,9 @@ class NET_EXPORT ProxyConfig { - // and use socks4://foopy2 for all other +@@ -108,6 +108,9 @@ class NET_EXPORT ProxyConfig { // URLs. - void ParseFromString(const std::string& proxy_rules); + void ParseFromString(const std::string& proxy_rules, + bool allow_bracketed_proxy_chains = false); + // Returns the proxy rules in a format that can be parsed by ParseFromString; + // all information except bypass rules is used. + std::string ToString() const; diff --git a/build/cromite_patches/Add-an-always-incognito-mode.patch b/build/cromite_patches/Add-an-always-incognito-mode.patch index 930cac46c8d5bd8b723d979bab148566c3e8401c..c0de729c76457051592773ce4e8e89e14f06e694 100644 --- a/build/cromite_patches/Add-an-always-incognito-mode.patch +++ b/build/cromite_patches/Add-an-always-incognito-mode.patch @@ -37,8 +37,8 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../chrome/browser/history/HistoryPage.java | 16 ++ .../native_page/NativePageFactory.java | 4 +- .../chrome/browser/ntp/RecentTabsManager.java | 28 ++- - .../privacy/settings/IncognitoSettings.java | 161 ++++++++++++++++++ - .../browser/settings/SettingsActivity.java | 4 + + .../privacy/settings/IncognitoSettings.java | 162 ++++++++++++++++++ + .../settings/FragmentDependencyProvider.java | 4 + .../HistoricalTabModelObserver.java | 5 +- .../tab/tab_restore/HistoricalTabSaver.java | 2 +- .../tab_restore/HistoricalTabSaverImpl.java | 17 +- @@ -70,7 +70,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../strings/android_chrome_strings.grd | 25 +++ .../browser/toolbar/LocationBarModel.java | 5 +- chrome/browser/ui/messages/android/BUILD.gn | 1 + - .../snackbar/INeedSnackbarManager.java | 27 +++ + .../snackbar/INeedSnackbarManager.java | 28 +++ chrome/common/pref_names.h | 6 + .../browser/content_settings_pref_provider.cc | 6 +- .../browser/content_settings_pref_provider.h | 2 + @@ -84,7 +84,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 + - 65 files changed, 782 insertions(+), 111 deletions(-) + 65 files changed, 784 insertions(+), 111 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 @@ -97,7 +97,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_java_resources.gni --- a/chrome/android/chrome_java_resources.gni +++ b/chrome/android/chrome_java_resources.gni -@@ -635,6 +635,7 @@ chrome_java_resources = [ +@@ -636,6 +636,7 @@ chrome_java_resources = [ "java/res/xml/manage_sync_preferences.xml", "java/res/xml/personalize_google_services_preferences.xml", "java/res/xml/phone_as_a_security_key_accessory_filter.xml", @@ -116,7 +116,7 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java "java/src/com/google/android/apps/chrome/appwidget/bookmarks/BookmarkThumbnailWidgetProvider.java", "java/src/org/chromium/chrome/browser/ActivityTabProvider.java", "java/src/org/chromium/chrome/browser/ActivityUtils.java", -@@ -946,6 +947,7 @@ chrome_java_sources = [ +@@ -947,6 +948,7 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/privacy/settings/IncognitoLockSettings.java", "java/src/org/chromium/chrome/browser/privacy/settings/PrivacyPreferencesManagerImpl.java", "java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java", @@ -243,7 +243,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 -@@ -68,6 +68,10 @@ import org.chromium.base.task.TaskTraits; +@@ -70,6 +70,10 @@ import org.chromium.base.task.TaskTraits; import org.chromium.build.annotations.UsedByReflection; import org.chromium.cc.input.BrowserControlsState; import org.chromium.chrome.R; @@ -254,7 +254,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct import org.chromium.chrome.browser.IntentHandler.TabOpenType; import org.chromium.chrome.browser.app.ChromeActivity; import org.chromium.chrome.browser.app.metrics.LaunchCauseMetrics; -@@ -672,12 +676,17 @@ public class ChromeTabbedActivity extends ChromeActivity +@@ -1973,6 +1974,9 @@ public abstract class ChromeActivity throw new IllegalStateException( "Attempting to access TabCreator before initialization"); } @@ -380,15 +380,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java --- a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java -@@ -29,6 +29,7 @@ import org.chromium.base.ContextUtils; +@@ -30,6 +30,7 @@ import org.chromium.base.ContextUtils; import org.chromium.base.shared_preferences.SharedPreferencesManager; import org.chromium.base.supplier.Supplier; import org.chromium.chrome.R; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; - import org.chromium.chrome.browser.compositor.bottombar.ephemeraltab.EphemeralTabCoordinator; import org.chromium.chrome.browser.contextmenu.ChromeContextMenuItem.Item; import org.chromium.chrome.browser.contextmenu.ContextMenuCoordinator.ListItemType; -@@ -265,6 +266,9 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator { + import org.chromium.chrome.browser.download.DownloadUtils; +@@ -267,6 +268,9 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator { public List> buildContextMenu() { mShowEphemeralTabNewLabel = null; @@ -398,7 +398,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr List> groupedItems = new ArrayList<>(); if (mParams.isAnchor()) { -@@ -275,6 +279,7 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator { +@@ -277,6 +281,7 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator { if (mMode == ContextMenuMode.NORMAL) { linkGroup.add(createListItem(Item.OPEN_IN_NEW_TAB_IN_GROUP)); linkGroup.add(createListItem(Item.OPEN_IN_NEW_TAB)); @@ -406,15 +406,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr if (!mItemDelegate.isIncognito() && mItemDelegate.isIncognitoSupported()) { linkGroup.add(createListItem(Item.OPEN_IN_INCOGNITO_TAB)); } -@@ -299,7 +304,7 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator { +@@ -301,7 +306,7 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator { } } if (FirstRunStatus.getFirstRunFlowComplete()) { - if (!mItemDelegate.isIncognito() + if ((always_incognito || !mItemDelegate.isIncognito()) && UrlUtilities.isDownloadableScheme(mParams.getLinkUrl())) { - linkGroup.add(createListItem(Item.SAVE_LINK_AS)); - } + linkGroup.add( + createListItem( 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 @@ -454,7 +454,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust - // Incognito CCT, falling back to check if they provided EXTRA_APPLICATION_ID. - externalId = - IntentHandler.determineExternalIntentSource( -- mIntentDataProvider.getIntent()); +- mIntentDataProvider.getIntent(), mActivity); - RecordHistogram.recordEnumeratedHistogram( - "CustomTabs.ClientAppId.Incognito", - externalId, @@ -475,7 +475,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust import org.chromium.chrome.browser.DefaultBrowserInfo; import org.chromium.chrome.browser.app.appmenu.AppMenuPropertiesDelegateImpl; import org.chromium.chrome.browser.app.appmenu.DividerLineMenuItemViewBinder; -@@ -225,6 +226,9 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat +@@ -222,6 +223,9 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat openInChromeItemVisible = false; tryAddingReadAloud = false; } @@ -498,7 +498,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; -@@ -1161,6 +1164,13 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid +@@ -1207,6 +1210,13 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid return getInitialActivityWidth() > 0; } @@ -534,7 +534,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/Downlo /** A class containing some utility static methods. */ public class DownloadUtils { private static final String TAG = "download"; -@@ -296,7 +301,16 @@ public class DownloadUtils { +@@ -298,7 +303,16 @@ public class DownloadUtils { // Offline pages isn't supported in Incognito. This should be checked before calling // OfflinePageBridge.getForProfile because OfflinePageBridge instance will not be found // for incognito profile. @@ -680,7 +680,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat import org.chromium.chrome.browser.app.ChromeActivity; import org.chromium.chrome.browser.app.download.home.DownloadPage; import org.chromium.chrome.browser.bookmarks.BookmarkPage; -@@ -310,7 +311,8 @@ public class NativePageFactory { +@@ -319,7 +320,8 @@ public class NativePageFactory { String url, NativePage candidatePage, Tab tab, boolean isIncognito, PdfInfo pdfInfo) { NativePage page; @@ -746,7 +746,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting new file mode 100644 --- /dev/null +++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/IncognitoSettings.java -@@ -0,0 +1,161 @@ +@@ -0,0 +1,162 @@ +/* + This file is part of Bromite. + @@ -779,6 +779,7 @@ new file mode 100644 +import androidx.preference.PreferenceFragmentCompat; +import androidx.vectordrawable.graphics.drawable.VectorDrawableCompat; + ++import org.chromium.base.supplier.Supplier; +import org.chromium.chrome.R; +import org.chromium.chrome.browser.preferences.Pref; +import org.chromium.chrome.browser.profiles.Profile; @@ -787,7 +788,7 @@ new file mode 100644 +import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager; +import org.chromium.chrome.browser.ui.messages.snackbar.INeedSnackbarManager; +import org.chromium.chrome.browser.ui.messages.snackbar.Snackbar; -+import org.chromium.chrome.browser.ApplicationLifetime; ++import org.chromium.chrome.browser.lifetime.ApplicationLifetime; +import org.chromium.components.browser_ui.settings.ChromeSwitchPreference; +import org.chromium.components.browser_ui.settings.SettingsUtils; +import org.chromium.components.prefs.PrefService; @@ -799,7 +800,7 @@ new file mode 100644 +public class IncognitoSettings + extends PreferenceFragmentCompat implements Preference.OnPreferenceChangeListener, + INeedSnackbarManager { -+ private SnackbarManager mSnackbarManager; ++ private Supplier mSnackbarManagerSupplier; + private Snackbar mSnackbar; + + private static final String PREF_ALWAYS_INCOGNITO = "always_incognito"; @@ -871,8 +872,8 @@ new file mode 100644 + } else if (PREF_INCOGNITO_SAVE_SITE_SETTING.equals(key)) { + prefService.setBoolean(Pref.INCOGNITO_SAVE_SITE_SETTING_ENABLED, (boolean) newValue); + } -+ if (!mSnackbarManager.isShowing()) { -+ mSnackbarManager.showSnackbar(mSnackbar); ++ if (!mSnackbarManagerSupplier.get().isShowing()) { ++ mSnackbarManagerSupplier.get().showSnackbar(mSnackbar); + } + return true; + } @@ -904,31 +905,31 @@ new file mode 100644 + } + + @Override -+ public void setSnackbarManager(SnackbarManager manager) { -+ mSnackbarManager = manager; ++ public void setSnackbarManagerSupplier(Supplier manager) { ++ mSnackbarManagerSupplier = manager; + } +} -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 -@@ -86,6 +86,7 @@ import org.chromium.chrome.browser.sync.settings.AccountManagementFragment; +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 +@@ -58,6 +58,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.device_lock.MissingDeviceLockLauncher; -+import org.chromium.chrome.browser.ui.messages.snackbar.INeedSnackbarManager; import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager; - import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager.SnackbarManageable; - import org.chromium.chrome.browser.ui.messages.snackbar.Snackbar; -@@ -403,6 +404,9 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity - ((ChromeBaseSettingsFragment)fragment).setRequestRestartDelegate( - new RequestRestartDelegate(mSnackbarManager, this)); ++import org.chromium.chrome.browser.ui.messages.snackbar.INeedSnackbarManager; + import org.chromium.components.browser_ui.bottomsheet.BottomSheetController; + import org.chromium.components.browser_ui.settings.FragmentSettingsLauncher; + import org.chromium.components.browser_ui.site_settings.BaseSiteSettingsFragment; +@@ -270,6 +271,9 @@ public class FragmentDependencyProvider extends FragmentManager.FragmentLifecycl + safetyHubFragment.setCustomTabIntentHelper( + LaunchIntentDispatcher::createCustomTabActivityIntent); } + if (fragment instanceof INeedSnackbarManager) { -+ ((INeedSnackbarManager)fragment).setSnackbarManager(mSnackbarManager); ++ ((INeedSnackbarManager)fragment).setSnackbarManagerSupplier(mSnackbarManagerSupplier); + } if (fragment instanceof AccountManagementFragment) { - ((AccountManagementFragment) fragment).setSnackbarManager(mSnackbarManager); - } + ((AccountManagementFragment) fragment) + .setSnackbarManagerSupplier(mSnackbarManagerSupplier); 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 @@ -1038,7 +1039,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/tab_restore diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java -@@ -144,6 +144,8 @@ import org.chromium.ui.InsetObserver; +@@ -149,6 +149,8 @@ import org.chromium.ui.InsetObserver; import org.chromium.ui.UiUtils; import org.chromium.ui.base.ActivityWindowAndroid; import org.chromium.ui.base.DeviceFormFactor; @@ -1047,7 +1048,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab import org.chromium.ui.base.IntentRequestTracker; import org.chromium.ui.base.LocalizationUtils; import org.chromium.ui.dragdrop.DragDropGlobalState; -@@ -975,7 +977,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { +@@ -988,7 +990,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { () -> { mTabCreatorManagerSupplier .get() @@ -1101,16 +1102,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabMod diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java -@@ -48,6 +48,8 @@ import org.chromium.chrome.browser.tabpersistence.TabStateFileManager; +@@ -49,6 +49,8 @@ import org.chromium.chrome.browser.tabpersistence.TabStateFileManager; import org.chromium.components.embedder_support.util.UrlUtilities; import org.chromium.content_public.browser.LoadUrlParams; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; + import java.io.BufferedInputStream; + import java.io.BufferedOutputStream; import java.io.ByteArrayInputStream; - import java.io.DataInputStream; -@@ -777,6 +779,13 @@ public class TabPersistentStore { +@@ -794,6 +796,13 @@ public class TabPersistentStore { } } } @@ -1135,7 +1136,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/Toolbar import org.chromium.chrome.browser.IntentHandler; import org.chromium.chrome.browser.app.tabmodel.TabWindowManagerSingleton; import org.chromium.chrome.browser.back_press.BackPressManager; -@@ -644,7 +645,7 @@ public class ToolbarManager +@@ -640,7 +641,7 @@ public class ToolbarManager TraceEvent.end("isOfflinePage"); return ret; } @@ -1259,7 +1260,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 -@@ -366,6 +366,15 @@ ChromeAutocompleteProviderClient::GetProviderStateService() const { +@@ -359,6 +359,15 @@ ChromeAutocompleteProviderClient::GetProviderStateService() const { return ProviderStateServiceFactory::GetForProfile(profile_); } @@ -1278,7 +1279,7 @@ diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.h b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.h --- a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.h +++ b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.h -@@ -86,6 +86,7 @@ class ChromeAutocompleteProviderClient : public AutocompleteProviderClient { +@@ -85,6 +85,7 @@ class ChromeAutocompleteProviderClient : public AutocompleteProviderClient { OnDeviceTailModelService* GetOnDeviceTailModelService() const override; ProviderStateService* GetProviderStateService() const override; bool IsOffTheRecord() const override; @@ -1360,7 +1361,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 -@@ -42,6 +42,9 @@ +@@ -44,6 +44,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" @@ -1370,7 +1371,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" -@@ -457,6 +460,13 @@ void HistoryTabHelper::TitleWasSet(NavigationEntry* entry) { +@@ -488,6 +491,13 @@ void HistoryTabHelper::TitleWasSet(NavigationEntry* entry) { history::HistoryService* HistoryTabHelper::GetHistoryService() { Profile* profile = Profile::FromBrowserContext(web_contents()->GetBrowserContext()); @@ -1384,7 +1385,7 @@ diff --git a/chrome/browser/history/history_tab_helper.cc b/chrome/browser/histo if (profile->IsOffTheRecord()) return nullptr; -@@ -464,6 +474,16 @@ history::HistoryService* HistoryTabHelper::GetHistoryService() { +@@ -495,6 +505,16 @@ history::HistoryService* HistoryTabHelper::GetHistoryService() { profile, ServiceAccessType::IMPLICIT_ACCESS); } @@ -1733,7 +1734,7 @@ diff --git a/chrome/browser/offline_pages/request_coordinator_factory.h b/chrome diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc --- a/chrome/browser/prefs/browser_prefs.cc +++ b/chrome/browser/prefs/browser_prefs.cc -@@ -247,6 +247,7 @@ +@@ -252,6 +252,7 @@ #if BUILDFLAG(IS_ANDROID) #include "chrome/browser/accessibility/accessibility_prefs/android/accessibility_prefs_controller.h" @@ -1741,7 +1742,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse #include "chrome/browser/android/bookmarks/partner_bookmarks_shim.h" #include "chrome/browser/android/ntp/recent_tabs_page_prefs.h" #include "chrome/browser/android/oom_intervention/oom_intervention_decider.h" -@@ -1950,6 +1951,10 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry, +@@ -2034,6 +2035,10 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry, usage_stats::UsageStatsBridge::RegisterProfilePrefs(registry); variations::VariationsService::RegisterProfilePrefs(registry); webapps::InstallPromptPrefs::RegisterProfilePrefs(registry); @@ -1827,7 +1828,7 @@ diff --git a/chrome/browser/ui/android/native_page/java/src/org/chromium/chrome/ /** An interface for pages that will be using Android views instead of html/rendered Web content. */ public interface NativePage { -@@ -166,7 +168,8 @@ public interface NativePage { +@@ -176,7 +178,8 @@ public interface NativePage { */ static boolean isNativePageUrl(GURL url, boolean isIncognito, boolean hasPdfDownload) { return url != null @@ -1837,7 +1838,7 @@ diff --git a/chrome/browser/ui/android/native_page/java/src/org/chromium/chrome/ } /** -@@ -176,7 +179,7 @@ public interface NativePage { +@@ -186,7 +189,7 @@ public interface NativePage { * not have chrome or chrome-native scheme. */ static boolean isChromePageUrl(GURL url, boolean isIncognito) { @@ -1846,7 +1847,7 @@ diff --git a/chrome/browser/ui/android/native_page/java/src/org/chromium/chrome/ } /** -@@ -188,11 +191,12 @@ public interface NativePage { +@@ -198,11 +201,12 @@ public interface NativePage { */ // TODO(crbug.com/40549331) - Convert to using GURL. static @NativePageType int nativePageType( @@ -1861,7 +1862,7 @@ diff --git a/chrome/browser/ui/android/native_page/java/src/org/chromium/chrome/ } /** -@@ -203,7 +207,8 @@ public interface NativePage { +@@ -213,7 +217,8 @@ public interface NativePage { * @return Type of the native page defined in {@link NativePageType}. */ private static @NativePageType int nativePageType( @@ -1871,7 +1872,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. -@@ -221,7 +226,7 @@ public interface NativePage { +@@ -231,7 +236,7 @@ public interface NativePage { // created after the pdf document is re-downloaded in other parts of the code. return NativePageType.NONE; } else { @@ -1880,7 +1881,7 @@ diff --git a/chrome/browser/ui/android/native_page/java/src/org/chromium/chrome/ } } -@@ -233,7 +238,7 @@ public interface NativePage { +@@ -243,7 +248,7 @@ public interface NativePage { * which do not have chrome or chrome-native scheme. */ private static @NativePageType int chromePageType( @@ -1889,7 +1890,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) -@@ -253,7 +258,8 @@ public interface NativePage { +@@ -263,7 +268,8 @@ public interface NativePage { return NativePageType.DOWNLOADS; } else if (UrlConstants.HISTORY_HOST.equals(host)) { return NativePageType.HISTORY; @@ -1902,7 +1903,7 @@ diff --git a/chrome/browser/ui/android/native_page/java/src/org/chromium/chrome/ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd -@@ -1344,6 +1344,31 @@ Your Google account may have other forms of browsing history like searches and a +@@ -1398,6 +1398,31 @@ Your Google account may have other forms of browsing history like searches and a Deletes history from all synced devices @@ -1937,7 +1938,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 -@@ -161,6 +161,7 @@ public class LocationBarModel implements ToolbarDataProvider, LocationBarDataPro +@@ -162,6 +162,7 @@ public class LocationBarModel implements ToolbarDataProvider, LocationBarDataPro protected String mFormattedFullUrl; protected String mUrlForDisplay; private boolean mOmniboxUpdatedConnectionSecurityIndicatorsEnabled; @@ -1945,7 +1946,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow // notifyUrlChanged and notifySecurityStateChanged are usually called 3 times across a same // document navigation. The first call is usually necessary, which updates the UrlBar to reflect -@@ -184,7 +185,9 @@ public class LocationBarModel implements ToolbarDataProvider, LocationBarDataPro +@@ -185,7 +186,9 @@ public class LocationBarModel implements ToolbarDataProvider, LocationBarDataPro Context context, NewTabPageDelegate newTabPageDelegate, @NonNull UrlFormatter urlFormatter, @@ -1971,7 +1972,7 @@ diff --git a/chrome/browser/ui/messages/android/java/src/org/chromium/chrome/bro new file mode 100644 --- /dev/null +++ b/chrome/browser/ui/messages/android/java/src/org/chromium/chrome/browser/ui/messages/snackbar/INeedSnackbarManager.java -@@ -0,0 +1,27 @@ +@@ -0,0 +1,28 @@ +/* + This file is part of Bromite. + @@ -1991,18 +1992,19 @@ new file mode 100644 + +package org.chromium.chrome.browser.ui.messages.snackbar; + ++import org.chromium.base.supplier.Supplier; +import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager; + +/** + * An interface that allows using snackbars in the settings + */ +public interface INeedSnackbarManager { -+ void setSnackbarManager(SnackbarManager manager); ++ void setSnackbarManagerSupplier(Supplier manager); +} 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 -@@ -4187,6 +4187,12 @@ inline constexpr char kOutOfProcessSystemDnsResolutionEnabled[] = +@@ -4202,6 +4202,12 @@ inline constexpr char kOutOfProcessSystemDnsResolutionEnabled[] = "net.out_of_process_system_dns_resolution_enabled"; #endif // BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) @@ -2018,7 +2020,7 @@ diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h diff --git a/components/content_settings/core/browser/content_settings_pref_provider.cc b/components/content_settings/core/browser/content_settings_pref_provider.cc --- a/components/content_settings/core/browser/content_settings_pref_provider.cc +++ b/components/content_settings/core/browser/content_settings_pref_provider.cc -@@ -98,10 +98,12 @@ void PrefProvider::RegisterProfilePrefs( +@@ -114,10 +114,12 @@ void PrefProvider::RegisterProfilePrefs( PrefProvider::PrefProvider(PrefService* prefs, bool off_the_record, @@ -2031,7 +2033,7 @@ diff --git a/components/content_settings/core/browser/content_settings_pref_prov store_last_modified_(store_last_modified), clock_(base::DefaultClock::GetInstance()) { TRACE_EVENT_BEGIN("startup", "PrefProvider::PrefProvider"); -@@ -124,11 +126,13 @@ PrefProvider::PrefProvider(PrefService* prefs, +@@ -140,11 +142,13 @@ PrefProvider::PrefProvider(PrefService* prefs, WebsiteSettingsRegistry* website_settings = WebsiteSettingsRegistry::GetInstance(); for (const WebsiteSettingsInfo* info : *website_settings) { @@ -2127,7 +2129,7 @@ diff --git a/components/omnibox/browser/autocomplete_provider_client.cc b/compon diff --git a/components/omnibox/browser/autocomplete_provider_client.h b/components/omnibox/browser/autocomplete_provider_client.h --- a/components/omnibox/browser/autocomplete_provider_client.h +++ b/components/omnibox/browser/autocomplete_provider_client.h -@@ -142,6 +142,7 @@ class AutocompleteProviderClient : public OmniboxAction::Client { +@@ -137,6 +137,7 @@ class AutocompleteProviderClient : public OmniboxAction::Client { virtual bool IsOffTheRecord() const = 0; virtual bool IsIncognitoProfile() const = 0; virtual bool IsGuestSession() const = 0; diff --git a/build/cromite_patches/Add-bookmark-import-export-actions.patch b/build/cromite_patches/Add-bookmark-import-export-actions.patch index 5ec27e45980583582c1f52bbc29c0c39a871d06f..d38477cf81da94c4c87de2476d05042cb60e8c79 100644 --- a/build/cromite_patches/Add-bookmark-import-export-actions.patch +++ b/build/cromite_patches/Add-bookmark-import-export-actions.patch @@ -104,7 +104,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDe 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; -@@ -54,7 +55,7 @@ import org.chromium.ui.modaldialog.ModalDialogManager; +@@ -55,7 +56,7 @@ import org.chromium.ui.modaldialog.ModalDialogManager; * {@link ChromeTabbedActivity}. */ public class TabbedModeTabDelegateFactory implements TabDelegateFactory { @@ -113,7 +113,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDe private final BrowserControlsVisibilityDelegate mAppBrowserControlsVisibilityDelegate; private final Supplier mShareDelegateSupplier; private final Supplier mEphemeralTabCoordinatorSupplier; -@@ -83,7 +84,7 @@ public class TabbedModeTabDelegateFactory implements TabDelegateFactory { +@@ -85,7 +86,7 @@ public class TabbedModeTabDelegateFactory implements TabDelegateFactory { private NativePageFactory mNativePageFactory; public TabbedModeTabDelegateFactory( @@ -559,16 +559,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManagerMediator.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManagerMediator.java --- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManagerMediator.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManagerMediator.java -@@ -53,6 +53,8 @@ import org.chromium.components.browser_ui.widget.selectable_list.SelectionDelega - import org.chromium.components.commerce.core.CommerceSubscription; - import org.chromium.components.commerce.core.ShoppingService; - import org.chromium.components.commerce.core.SubscriptionsObserver; -+import org.chromium.ui.base.ActivityWindowAndroid; -+import org.chromium.ui.modaldialog.ModalDialogManager; +@@ -57,6 +57,8 @@ import org.chromium.components.embedder_support.util.UrlConstants; import org.chromium.components.favicon.LargeIconBridge; import org.chromium.components.power_bookmarks.PowerBookmarkMeta; import org.chromium.components.power_bookmarks.PowerBookmarkType; -@@ -81,6 +83,9 @@ class BookmarkManagerMediator ++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; +@@ -82,6 +84,9 @@ class BookmarkManagerMediator private static boolean sPreventLoadingForTesting; @@ -578,7 +578,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm /** Keeps track of whether drag is enabled / active for bookmark lists. */ private class BookmarkDragStateDelegate implements DragStateDelegate { private BookmarkDelegate mBookmarkDelegate; -@@ -544,6 +549,14 @@ class BookmarkManagerMediator +@@ -545,6 +550,14 @@ class BookmarkManagerMediator mNativePage = nativePage; } @@ -593,7 +593,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm /** See BookmarkManager(Coordinator)#updateForUrl */ void updateForUrl(String url) { // Bookmark model is null if the manager has been destroyed. -@@ -724,6 +737,16 @@ class BookmarkManagerMediator +@@ -725,6 +738,16 @@ class BookmarkManagerMediator } } @@ -766,7 +766,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat import org.chromium.chrome.browser.app.download.home.DownloadPage; import org.chromium.chrome.browser.bookmarks.BookmarkPage; import org.chromium.chrome.browser.browser_controls.BrowserControlsMarginSupplier; -@@ -57,7 +58,7 @@ import org.chromium.ui.util.ColorUtils; +@@ -58,7 +59,7 @@ import org.chromium.ui.util.ColorUtils; * Creates NativePage objects to show chrome-native:// URLs using the native Android view system. */ public class NativePageFactory { @@ -775,7 +775,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat private final BottomSheetController mBottomSheetController; private final BrowserControlsManager mBrowserControlsManager; private final Supplier mCurrentTabSupplier; -@@ -78,7 +79,7 @@ public class NativePageFactory { +@@ -80,7 +81,7 @@ public class NativePageFactory { private static NativePage sTestPage; public NativePageFactory( @@ -784,7 +784,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat @NonNull BottomSheetController sheetController, @NonNull BrowserControlsManager browserControlsManager, @NonNull Supplier currentTabSupplier, -@@ -144,7 +145,7 @@ public class NativePageFactory { +@@ -149,7 +150,7 @@ public class NativePageFactory { @VisibleForTesting static class NativePageBuilder { @@ -793,8 +793,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat private final BottomSheetController mBottomSheetController; private final Supplier mUma; private final BrowserControlsManager mBrowserControlsManager; -@@ -162,7 +163,7 @@ public class NativePageFactory { - private final OneshotSupplier mModuleRegistrySupplier; +@@ -168,7 +169,7 @@ public class NativePageFactory { + private final ObservableSupplier mEdgeToEdgeControllerSupplier; public NativePageBuilder( - Activity activity, @@ -802,7 +802,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat Supplier uma, BottomSheetController sheetController, BrowserControlsManager browserControlsManager, -@@ -233,7 +234,7 @@ public class NativePageFactory { +@@ -242,7 +243,7 @@ public class NativePageFactory { mActivity.getComponentName(), mSnackbarManagerSupplier.get(), tab.getProfile(), @@ -814,7 +814,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 -@@ -200,6 +200,8 @@ static_library("browser") { +@@ -207,6 +207,8 @@ static_library("browser") { "bluetooth/chrome_bluetooth_delegate_impl_client.h", "bookmarks/bookmark_model_factory.cc", "bookmarks/bookmark_model_factory.h", @@ -823,7 +823,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", -@@ -1785,6 +1787,13 @@ static_library("browser") { +@@ -1749,6 +1751,13 @@ static_library("browser") { "webid/identity_provider_permission_request.h", ] @@ -837,7 +837,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn configs += [ "//build/config/compiler:wexit_time_destructors", "//build/config:precompiled_headers", -@@ -3476,8 +3485,6 @@ static_library("browser") { +@@ -3498,8 +3507,6 @@ static_library("browser") { "bookmarks/bookmark_expanded_state_tracker.h", "bookmarks/bookmark_expanded_state_tracker_factory.cc", "bookmarks/bookmark_expanded_state_tracker_factory.h", @@ -1256,7 +1256,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.h b/chrome/browser diff --git a/chrome/browser/bookmarks/bookmark_html_writer.cc b/chrome/browser/bookmarks/bookmark_html_writer.cc --- a/chrome/browser/bookmarks/bookmark_html_writer.cc +++ b/chrome/browser/bookmarks/bookmark_html_writer.cc -@@ -27,6 +27,9 @@ +@@ -32,6 +32,9 @@ #include "base/task/thread_pool.h" #include "base/time/time.h" #include "base/values.h" @@ -1266,7 +1266,7 @@ diff --git a/chrome/browser/bookmarks/bookmark_html_writer.cc b/chrome/browser/b #include "chrome/browser/bookmarks/bookmark_model_factory.h" #include "chrome/browser/favicon/favicon_service_factory.h" #include "chrome/browser/profiles/profile.h" -@@ -234,7 +237,15 @@ class Writer : public base::RefCountedThreadSafe { +@@ -239,7 +242,15 @@ class Writer : public base::RefCountedThreadSafe { // Opens the file, returning true on success. bool OpenFile() { int flags = base::File::FLAG_CREATE_ALWAYS | base::File::FLAG_WRITE; @@ -1370,7 +1370,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 -@@ -530,6 +530,7 @@ public abstract class ChromeFeatureList { +@@ -536,6 +536,7 @@ public abstract class ChromeFeatureList { public static final String VERTICAL_AUTOMOTIVE_BACK_BUTTON_TOOLBAR = "VerticalAutomotiveBackButtonToolbar"; public static final String VISITED_URL_RANKING_SERVICE = "VisitedURLRankingService"; @@ -1433,7 +1433,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"; -@@ -920,6 +922,7 @@ public final class ChromePreferenceKeys { +@@ -923,6 +925,7 @@ public final class ChromePreferenceKeys { AUTOFILL_ASSISTANT_PROACTIVE_HELP_ENABLED, APP_LAUNCH_LAST_KNOWN_ACTIVE_TAB_STATE, APP_LAUNCH_SEARCH_ENGINE_HAD_LOGO, @@ -1472,7 +1472,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro diff --git a/chrome/common/BUILD.gn b/chrome/common/BUILD.gn --- a/chrome/common/BUILD.gn +++ b/chrome/common/BUILD.gn -@@ -355,6 +355,9 @@ static_library("common_lib") { +@@ -358,6 +358,9 @@ static_library("common_lib") { sources += [ "media/chrome_media_drm_bridge_client.cc", "media/chrome_media_drm_bridge_client.h", @@ -1656,7 +1656,7 @@ new file mode 100644 diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java --- a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java +++ b/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java -@@ -45,6 +45,7 @@ import org.chromium.base.task.AsyncTask; +@@ -46,6 +46,7 @@ import org.chromium.base.task.AsyncTask; import org.chromium.base.task.PostTask; import org.chromium.base.task.TaskTraits; import org.chromium.ui.R; @@ -1664,16 +1664,16 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui import org.chromium.ui.UiUtils; import java.io.File; -@@ -67,6 +68,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick +@@ -68,6 +69,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick private static final String TAG = "SelectFileDialog"; private static final String IMAGE_TYPE = "image"; private static final String VIDEO_TYPE = "video"; + private static final String HTML_TYPE = "html"; private static final String AUDIO_TYPE = "audio"; private static final String ALL_TYPES = "*/*"; - -@@ -307,6 +309,11 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick - ResettersForTesting.register(() -> mFileTypes = oldValue); + private static final String GENERIC_TYPE = "application/octet-stream"; +@@ -313,6 +315,11 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick + mMimeTypes = convertToSupportedMimeTypes(mFileTypes); } + @CalledByNative @@ -1684,7 +1684,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui /** * Creates and starts an intent based on the passed fileTypes and capture value. * -@@ -343,7 +350,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick +@@ -359,7 +366,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick List missingPermissions = new ArrayList<>(); String storagePermission = Manifest.permission.READ_EXTERNAL_STORAGE; boolean shouldUsePhotoPicker = shouldUsePhotoPicker(); @@ -1693,7 +1693,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui // The permission scenario for accessing media has evolved a bit over the years: // Early on, READ_EXTERNAL_STORAGE was required to access media, but that permission was // later deprecated. In its place (starting with Android T) READ_MEDIA_IMAGES and -@@ -396,7 +403,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick +@@ -412,7 +419,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick // TODO(finnur): Remove once we figure out the cause of // crbug.com/950024. @@ -1702,7 +1702,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui if (permissions.length != requestPermissions.length) { throw new RuntimeException( String.format( -@@ -413,7 +420,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick +@@ -429,7 +436,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick } } @@ -1711,16 +1711,16 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui if (permissions[i].equals(storagePermission) || permissions[i].equals( Manifest.permission.READ_MEDIA_IMAGES) -@@ -701,6 +708,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick +@@ -740,6 +747,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick + mimeTypes.add(mimeType); } - if (!mimeTypes.contains(mimeType)) mimeTypes.add(mimeType); } + if (mimeTypes.size() == 0) return null; return mimeTypes; } -@@ -1062,6 +1070,10 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick - return countAcceptTypesFor(superType) == mFileTypes.size(); +@@ -1108,6 +1116,10 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick + return countAcceptTypesFor(superType) == mMimeTypes.size(); } + private boolean shouldShowHtmlTypes() { @@ -1728,8 +1728,8 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui + } + /** - * Checks whether the list of accepted types effectively describes only a single - * type, which might be wildcard. For example: + * Checks whether the list of accepted types effectively describes only a single type, which + * might be wildcard. For example: diff --git a/ui/android/java/strings/android_ui_strings.grd b/ui/android/java/strings/android_ui_strings.grd --- a/ui/android/java/strings/android_ui_strings.grd +++ b/ui/android/java/strings/android_ui_strings.grd diff --git a/build/cromite_patches/Add-cromite-flags-support.patch b/build/cromite_patches/Add-cromite-flags-support.patch index 6f5fba89e1558e102f9075f7f0060e687311bd7f..4d007ab5eaf06417e31eda0d9030128cb70aec34 100644 --- a/build/cromite_patches/Add-cromite-flags-support.patch +++ b/build/cromite_patches/Add-cromite-flags-support.patch @@ -24,9 +24,10 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html .../settings/AccessibilitySettings.java | 5 +- .../homepage/settings/HomepageSettings.java | 2 +- .../privacy/settings/PrivacySettings.java | 2 +- - .../browser/settings/SettingsActivity.java | 36 ++++ + .../settings/FragmentDependencyProvider.java | 10 +- + .../browser/settings/SettingsActivity.java | 42 ++++- chrome/browser/about_flags.cc | 11 ++ - chrome/browser/browser_features.cc | 2 + + chrome/browser/browser_features.cc | 1 + chrome/browser/flags/BUILD.gn | 13 ++ .../flags/android/chrome_feature_list.cc | 1 + .../flags/android/chrome_feature_list.h | 1 + @@ -34,7 +35,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html .../flags/cromite/include_all_directory.java | 1 + .../java_template/CromiteCachedFlag.java.tmpl | 47 +++++ chrome/browser/settings/BUILD.gn | 1 + - .../settings/ChromeBaseSettingsFragment.java | 47 +++++ + .../settings/ChromeBaseSettingsFragment.java | 50 ++++++ .../strings/android_chrome_strings.grd | 1 + .../Add-cromite-flags-support.grdp | 9 + .../placeholder.txt | 1 + @@ -96,7 +97,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 + - 83 files changed, 771 insertions(+), 20 deletions(-) + 84 files changed, 787 insertions(+), 22 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 @@ -132,7 +133,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 -@@ -196,6 +196,8 @@ buildflag_header("message_pump_buildflags") { +@@ -185,6 +185,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") { @@ -141,15 +142,15 @@ diff --git a/base/BUILD.gn b/base/BUILD.gn sources = [ "allocator/allocator_check.cc", "allocator/allocator_check.h", -@@ -1048,7 +1050,7 @@ component("base") { +@@ -1029,7 +1031,7 @@ component("base") { "//build/config/compiler:wglobal_constructors", ] - deps = [ + deps += [ ":check_version_internal", - ":message_pump_buildflags", "//base/allocator:buildflags", + "//base/third_party/cityhash", diff --git a/base/android/feature_map.cc b/base/android/feature_map.cc --- a/base/android/feature_map.cc +++ b/base/android/feature_map.cc @@ -225,7 +226,7 @@ diff --git a/base/feature_list.cc b/base/feature_list.cc namespace { // Pointer to the FeatureList instance singleton that was set via -@@ -472,6 +497,46 @@ bool FeatureList::IsEnabled(const Feature& feature) { +@@ -470,6 +495,46 @@ bool FeatureList::IsEnabled(const Feature& feature) { return g_feature_list_instance->IsFeatureEnabled(feature); } @@ -272,7 +273,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; -@@ -718,6 +783,17 @@ void FeatureList::VisitFeaturesAndParams(FeatureVisitor& visitor) { +@@ -716,6 +781,17 @@ void FeatureList::VisitFeaturesAndParams(FeatureVisitor& visitor) { void FeatureList::FinalizeInitialization() { DCHECK(!initialized_); @@ -293,7 +294,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 -@@ -153,8 +153,10 @@ enum class FeatureMacroHandshake { kSecret }; +@@ -170,8 +170,10 @@ enum class FeatureMacroHandshake { kSecret }; struct BASE_EXPORT LOGICALLY_CONST Feature { constexpr Feature(const char* name, FeatureState default_state, @@ -306,7 +307,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) { -@@ -181,6 +183,9 @@ struct BASE_EXPORT LOGICALLY_CONST Feature { +@@ -198,6 +200,9 @@ struct BASE_EXPORT LOGICALLY_CONST Feature { // command line switch. const FeatureState default_state; @@ -316,7 +317,7 @@ diff --git a/base/feature_list.h b/base/feature_list.h private: friend class FeatureList; -@@ -456,6 +461,11 @@ class BASE_EXPORT FeatureList { +@@ -473,6 +478,11 @@ class BASE_EXPORT FeatureList { // instance, which is checked in builds with DCHECKs enabled. static bool IsEnabled(const Feature& feature); @@ -328,7 +329,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 -@@ -721,4 +731,62 @@ class BASE_EXPORT FeatureList { +@@ -738,4 +748,62 @@ class BASE_EXPORT FeatureList { } // namespace base @@ -452,7 +453,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/accessibility/settings/AccessibilitySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/AccessibilitySettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/AccessibilitySettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/AccessibilitySettings.java -@@ -16,6 +16,7 @@ import org.chromium.chrome.R; +@@ -18,6 +18,7 @@ import org.chromium.chrome.R; import org.chromium.chrome.browser.image_descriptions.ImageDescriptionsController; import org.chromium.chrome.browser.preferences.Pref; import org.chromium.chrome.browser.settings.SettingsLauncherFactory; @@ -460,16 +461,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/s import org.chromium.components.browser_ui.accessibility.AccessibilitySettingsDelegate; import org.chromium.components.browser_ui.accessibility.FontSizePrefs; import org.chromium.components.browser_ui.accessibility.FontSizePrefs.FontSizePrefsObserver; -@@ -33,7 +34,7 @@ import org.chromium.content_public.browser.ContentFeatureList; +@@ -36,7 +37,7 @@ import org.chromium.content_public.browser.ContentFeatureList; import org.chromium.content_public.browser.ContentFeatureMap; /** Fragment to keep track of all the accessibility related preferences. */ -public class AccessibilitySettings extends PreferenceFragmentCompat +public class AccessibilitySettings extends ChromeBaseSettingsFragment - implements Preference.OnPreferenceChangeListener { + implements SettingsPage, Preference.OnPreferenceChangeListener { public static final String PREF_TEXT_SCALE = "text_scale"; public static final String PREF_PAGE_ZOOM_DEFAULT_ZOOM = "page_zoom_default_zoom"; -@@ -92,7 +93,7 @@ public class AccessibilitySettings extends PreferenceFragmentCompat +@@ -99,7 +100,7 @@ public class AccessibilitySettings extends PreferenceFragmentCompat } @Override @@ -481,27 +482,72 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/s diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/settings/HomepageSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/homepage/settings/HomepageSettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/homepage/settings/HomepageSettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/homepage/settings/HomepageSettings.java -@@ -34,7 +34,7 @@ public class HomepageSettings extends ChromeBaseSettingsFragment { - private RadioButtonGroupHomepagePreference mRadioButtons; +@@ -37,7 +37,7 @@ public class HomepageSettings extends ChromeBaseSettingsFragment { + private final ObservableSupplierImpl mPageTitle = new ObservableSupplierImpl<>(); @Override - public void onCreatePreferences(Bundle savedInstanceState, String rootKey) { + public void onCreatePreferencesCromite(Bundle savedInstanceState, String rootKey) { mHomepageManager = HomepageManager.getInstance(); - getActivity().setTitle(R.string.options_homepage_title); + mPageTitle.set(getString(R.string.options_homepage_title)); 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 -@@ -76,7 +76,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment - private IncognitoLockSettings mIncognitoLockSettings; +@@ -79,7 +79,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment + private final ObservableSupplierImpl mPageTitle = new ObservableSupplierImpl<>(); @Override - public void onCreatePreferences(Bundle savedInstanceState, String rootKey) { + public void onCreatePreferencesCromite(Bundle savedInstanceState, String rootKey) { - getActivity().setTitle(R.string.prefs_privacy_security); + mPageTitle.set(getString(R.string.prefs_privacy_security)); SettingsUtils.addPreferencesFromResource(this, R.xml.privacy_preferences); +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 +@@ -12,6 +12,7 @@ import androidx.fragment.app.Fragment; + import androidx.fragment.app.FragmentManager; + + import org.chromium.base.IntentUtils; ++import org.chromium.base.supplier.Supplier; + import org.chromium.base.supplier.ObservableSupplier; + import org.chromium.base.supplier.OneshotSupplier; + import org.chromium.chrome.browser.LaunchIntentDispatcher; +@@ -78,18 +79,21 @@ public class FragmentDependencyProvider extends FragmentManager.FragmentLifecycl + private final OneshotSupplier mSnackbarManagerSupplier; + private final OneshotSupplier mBottomSheetControllerSupplier; + private final ObservableSupplier mModalDialogManagerSupplier; ++ private final Supplier mRequireRestartDelegateSupplier; + + public FragmentDependencyProvider( + Context context, + Profile profile, + OneshotSupplier snackbarManagerSupplier, + OneshotSupplier bottomSheetControllerSupplier, +- ObservableSupplier modalDialogManagerSupplier) { ++ ObservableSupplier modalDialogManagerSupplier, ++ Supplier requireRestartDelegateSupplier) { + mContext = context; + mProfile = profile; + mSnackbarManagerSupplier = snackbarManagerSupplier; + mBottomSheetControllerSupplier = bottomSheetControllerSupplier; + mModalDialogManagerSupplier = modalDialogManagerSupplier; ++ mRequireRestartDelegateSupplier = requireRestartDelegateSupplier; + } + + @Override +@@ -98,6 +102,10 @@ public class FragmentDependencyProvider extends FragmentManager.FragmentLifecycl + @NonNull Fragment fragment, + @NonNull Context unusedContext) { + // Common dependencies attachments. ++ if (fragment instanceof ChromeBaseSettingsFragment) { ++ ((ChromeBaseSettingsFragment)fragment).setRequestRestartDelegateSupplier( ++ mRequireRestartDelegateSupplier); ++ } + if (fragment instanceof ProfileDependentSetting) { + ((ProfileDependentSetting) fragment).setProfile(mProfile); + } 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 @@ -513,7 +559,24 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Settin import android.annotation.SuppressLint; import android.content.Context; import android.content.Intent; -@@ -87,6 +88,7 @@ import org.chromium.chrome.browser.sync.settings.ManageSyncSettings; +@@ -31,7 +32,9 @@ import org.chromium.base.BuildInfo; + import org.chromium.base.Callback; + 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.SecondaryActivityBackPressUma.Seco + import org.chromium.chrome.browser.feedback.HelpAndFeedbackLauncherImpl; + import org.chromium.chrome.browser.flags.ChromeFeatureList; + import org.chromium.chrome.browser.init.ChromeBrowserInitializer; ++import org.chromium.chrome.browser.lifetime.ApplicationLifetime; + import org.chromium.chrome.browser.profiles.Profile; + import org.chromium.chrome.browser.profiles.ProfileManager; + import org.chromium.chrome.browser.profiles.ProfileManagerUtils; import org.chromium.chrome.browser.ui.device_lock.MissingDeviceLockLauncher; import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager; import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager.SnackbarManageable; @@ -521,58 +584,61 @@ 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; -@@ -126,6 +128,36 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity - implements PreferenceFragmentCompat.OnPreferenceStartFragmentCallback, - SnackbarManageable, - DisplayStyleObserver { +@@ -82,6 +87,40 @@ import java.util.Locale; + */ + public class SettingsActivity extends ChromeBaseAppCompatActivity + implements PreferenceFragmentCompat.OnPreferenceStartFragmentCallback, SnackbarManageable { + private static class RequestRestartDelegate implements ChromeBaseSettingsFragment.RequireRestartDelegate { -+ private SnackbarManager mSnackbarManager; ++ private OneshotSupplier mSnackbarManagerSupplier; + private Activity mActivity; + -+ RequestRestartDelegate(SnackbarManager snackbarManager, Activity activity) { -+ mSnackbarManager = snackbarManager; ++ RequestRestartDelegate(OneshotSupplier snackbarManagerSupplier, ++ Activity activity) { ++ mSnackbarManagerSupplier = snackbarManagerSupplier; + mActivity = activity; + } + + @Override + public void RequireRestart() { -+ Snackbar mSnackbar = Snackbar.make(mActivity.getString(R.string.ui_relaunch_notice), -+ new SnackbarManager.SnackbarController() { -+ @Override -+ public void onDismissNoAction(Object actionData) { } -+ -+ @Override -+ public void onAction(Object actionData) { -+ ApplicationLifetime.terminate(true); -+ } -+ }, Snackbar.TYPE_NOTIFICATION, Snackbar.UMA_UNKNOWN) -+ .setSingleLine(false) -+ .setAction(mActivity.getString(R.string.relaunch), -+ /*actionData*/null) -+ .setDuration(/*durationMs*/70000); -+ if (!mSnackbarManager.isShowing()) -+ mSnackbarManager.showSnackbar(mSnackbar); ++ mSnackbarManagerSupplier.onAvailable( ++ (snackbarManager) -> { ++ Snackbar mSnackbar = Snackbar.make(mActivity.getString(R.string.ui_relaunch_notice), ++ new SnackbarManager.SnackbarController() { ++ @Override ++ public void onDismissNoAction(Object actionData) { } ++ ++ @Override ++ public void onAction(Object actionData) { ++ ApplicationLifetime.terminate(true); ++ } ++ }, Snackbar.TYPE_NOTIFICATION, Snackbar.UMA_UNKNOWN) ++ .setSingleLine(false) ++ .setAction(mActivity.getString(R.string.relaunch), ++ /*actionData*/null) ++ .setDuration(/*durationMs*/70000); ++ if (!snackbarManager.isShowing()) ++ snackbarManager.showSnackbar(mSnackbar); ++ }); + } + } + @VisibleForTesting(otherwise = VisibleForTesting.PACKAGE_PRIVATE) public static final String EXTRA_SHOW_FRAGMENT = "show_fragment"; -@@ -366,6 +398,10 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity - ((PrivacySandboxSettingsBaseFragment) fragment) - .setSnackbarManager(getSnackbarManager()); - } -+ if (fragment instanceof ChromeBaseSettingsFragment) { -+ ((ChromeBaseSettingsFragment)fragment).setRequestRestartDelegate( -+ new RequestRestartDelegate(mSnackbarManager, this)); -+ } - if (fragment instanceof AccountManagementFragment) { - ((AccountManagementFragment) fragment).setSnackbarManager(mSnackbarManager); - } +@@ -135,7 +174,8 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity + mProfile, + mSnackbarManagerSupplier, + mBottomSheetControllerSupplier, +- getModalDialogManagerSupplier()), ++ getModalDialogManagerSupplier(), ++ () -> new RequestRestartDelegate(mSnackbarManagerSupplier, this)), + true /* recursive */); + fragmentManager.registerFragmentLifecycleCallbacks( + new WideDisplayPaddingApplier(), false /* recursive */); 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 -@@ -382,6 +382,10 @@ using flags_ui::kOsLinux; +@@ -380,6 +380,10 @@ using flags_ui::kOsLinux; using flags_ui::kOsMac; using flags_ui::kOsWin; @@ -583,9 +649,9 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc namespace about_flags { namespace { -@@ -4192,6 +4196,10 @@ const FeatureEntry::FeatureVariation - std::size(kSecurePaymentConfirmationNetworkAndIssuerIcons_Rows), - nullptr}}; +@@ -4207,6 +4211,10 @@ const FeatureEntry::FeatureVariation + 1, nullptr}, + }; +#define FEATURE_PARAM_SECTION +#include "cromite_flags/chrome_browser_about_flags_cc.inc" @@ -594,7 +660,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. -@@ -4218,6 +4226,9 @@ const FeatureEntry::FeatureVariation +@@ -4233,6 +4241,9 @@ const FeatureEntry::FeatureVariation const FeatureEntry kFeatureEntries[] = { // Include generated flags for flag unexpiry; see //docs/flag_expiry.md and // //tools/flags/generate_unexpire_flags.py. @@ -607,11 +673,10 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc diff --git a/chrome/browser/browser_features.cc b/chrome/browser/browser_features.cc --- a/chrome/browser/browser_features.cc +++ b/chrome/browser/browser_features.cc -@@ -410,4 +410,6 @@ BASE_FEATURE(kReportPakFileIntegrity, - BASE_FEATURE(kRemovalOfIWAsFromTabCapture, +@@ -450,4 +450,5 @@ BASE_FEATURE(kRemovalOfIWAsFromTabCapture, "RemovalOfIWAsFromTabCapture", base::FEATURE_ENABLED_BY_DEFAULT); -+ + +#include "cromite_flags/chrome_browser_browser_features_cc.inc" } // namespace features diff --git a/chrome/browser/flags/BUILD.gn b/chrome/browser/flags/BUILD.gn @@ -656,7 +721,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 -@@ -1050,5 +1050,6 @@ BASE_FEATURE(kWebApkAllowIconUpdate, +@@ -1074,5 +1074,6 @@ BASE_FEATURE(kWebApkAllowIconUpdate, "WebApkAllowIconUpdate", base::FEATURE_DISABLED_BY_DEFAULT); @@ -666,7 +731,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 -@@ -208,6 +208,7 @@ constexpr base::FeatureParam kQuickDeleteAndroidSurveyTriggerId( +@@ -214,6 +214,7 @@ constexpr base::FeatureParam kQuickDeleteAndroidSurveyTriggerId( "trigger_id", /*default_value=*/""); @@ -688,7 +753,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f import java.util.List; import java.util.Map; -@@ -712,7 +716,7 @@ public abstract class ChromeFeatureList { +@@ -732,7 +736,7 @@ public abstract class ChromeFeatureList { public static final CachedFlag sWebApkMinShellApkVersion = newCachedFlag(WEB_APK_MIN_SHELL_APK_VERSION, true); @@ -697,7 +762,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f List.of( sAccountReauthenticationRecentTimeWindow, sAndroidAppIntegration, -@@ -805,6 +809,13 @@ public abstract class ChromeFeatureList { +@@ -828,6 +832,13 @@ public abstract class ChromeFeatureList { sVerticalAutomotiveBackButtonToolbar, sWebApkMinShellApkVersion); @@ -783,9 +848,15 @@ diff --git a/chrome/browser/settings/BUILD.gn b/chrome/browser/settings/BUILD.gn 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 -@@ -11,6 +11,12 @@ import org.chromium.chrome.browser.feedback.HelpAndFeedbackLauncher; +@@ -7,11 +7,18 @@ package org.chromium.chrome.browser.settings; + import androidx.annotation.NonNull; + import androidx.preference.PreferenceFragmentCompat; + ++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.SettingsPage; +import android.os.Bundle; +import androidx.preference.Preference; @@ -796,18 +867,19 @@ diff --git a/chrome/browser/settings/android/java/src/org/chromium/chrome/browse /** * Base class for settings in Chrome. * -@@ -21,6 +27,47 @@ public abstract class ChromeBaseSettingsFragment extends PreferenceFragmentCompa - implements ProfileDependentSetting { +@@ -22,6 +29,49 @@ public abstract class ChromeBaseSettingsFragment extends PreferenceFragmentCompa + implements SettingsPage, ProfileDependentSetting { private Profile mProfile; -+ private RequireRestartDelegate mRequireRestartDelegate; ++ private Supplier mRequireRestartDelegateSupplier; + + public interface RequireRestartDelegate { + void RequireRestart(); + } + -+ public void setRequestRestartDelegate(RequireRestartDelegate delegate) { -+ mRequireRestartDelegate = delegate; ++ public void setRequestRestartDelegateSupplier( ++ Supplier delegate) { ++ mRequireRestartDelegateSupplier = delegate; + } + + public void onCreatePreferencesCromite(Bundle savedInstanceState, String rootKey) { @@ -833,8 +905,9 @@ diff --git a/chrome/browser/settings/android/java/src/org/chromium/chrome/browse + + switchPref.setOnPreferenceChangeListener((preference, newValue) -> { + CromiteNativeUtils.setFlagEnabled(featureName, (boolean)newValue); -+ if (switchPref.needRestart()) -+ mRequireRestartDelegate.RequireRestart(); ++ if (switchPref.needRestart()) { ++ mRequireRestartDelegateSupplier.get().RequireRestart(); ++ } + return true; + }); + } @@ -878,16 +951,16 @@ 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 -@@ -477,4 +477,5 @@ BASE_FEATURE(kUsePortalAccentColor, - - BASE_FEATURE(kCompactMode, "CompactMode", base::FEATURE_DISABLED_BY_DEFAULT); +@@ -479,4 +479,5 @@ BASE_FEATURE(kPageSpecificDataDialogRelatedInstalledAppsSection, + "PageSpecificDataDialogRelatedInstalledAppsSection", + base::FEATURE_DISABLED_BY_DEFAULT); +#include "cromite_flags/chrome_browser_ui_ui_features_cc.inc" } // namespace features 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 -@@ -1760,4 +1760,5 @@ BASE_FEATURE(kPeriodicLogUploadMigration, +@@ -1756,4 +1756,5 @@ BASE_FEATURE(kPeriodicLogUploadMigration, base::FEATURE_DISABLED_BY_DEFAULT); #endif // BUILDFLAG(IS_CHROMEOS_ASH) @@ -974,13 +1047,13 @@ 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 -@@ -113,5 +113,6 @@ BASE_FEATURE(kIndexedHostContentSettingsMap, - "IndexedHostContentSettingsMap", - base::FEATURE_ENABLED_BY_DEFAULT); +@@ -109,5 +109,6 @@ BASE_FEATURE(kContentSettingsPartitioning, + "ContentSettingsPartitioning", + base::FEATURE_DISABLED_BY_DEFAULT); +#include "cromite_flags/components_content_settings_core_common_features_cc.inc" } // namespace features @@ -1380,8 +1453,8 @@ 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 -@@ -159,4 +159,5 @@ BASE_FEATURE(kUseAsyncOsCryptInLoginDatabase, - "UseAsyncOsCryptInLoginDatabase", +@@ -169,4 +169,5 @@ BASE_FEATURE(kEncryptAllPasswordsWithOSCryptAsync, + "EncryptAllPasswordsWithOSCryptAsync", base::FEATURE_DISABLED_BY_DEFAULT); +#include "cromite_flags/components_password_manager_core_browser_features_password_features_cc.inc" @@ -1389,7 +1462,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 -@@ -150,6 +150,7 @@ BASE_FEATURE(kCpssQuietChipTextUpdate, +@@ -154,6 +154,7 @@ BASE_FEATURE(kCpssQuietChipTextUpdate, "CpssQuietChipTextUpdate", base::FEATURE_DISABLED_BY_DEFAULT); @@ -1412,7 +1485,7 @@ diff --git a/components/version_ui/version_handler_helper.cc b/components/versio diff --git a/content/common/features.cc b/content/common/features.cc --- a/content/common/features.cc +++ b/content/common/features.cc -@@ -592,4 +592,5 @@ BASE_FEATURE(kScrollBubblingFix, +@@ -614,4 +614,5 @@ BASE_FEATURE(kScrollBubblingFix, // Please keep features in alphabetical order. @@ -1421,7 +1494,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 -@@ -1380,4 +1380,5 @@ bool IsVideoCaptureServiceEnabledForBrowserProcess() { +@@ -1422,4 +1422,5 @@ bool IsVideoCaptureServiceEnabledForBrowserProcess() { VideoCaptureServiceConfiguration::kEnabledForBrowserProcess; } @@ -1430,7 +1503,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 -@@ -311,6 +311,7 @@ CONTENT_EXPORT BASE_DECLARE_FEATURE(kWebRtcPipeWireCapturer); +@@ -329,6 +329,7 @@ CONTENT_EXPORT extern const base::FeatureParam CONTENT_EXPORT bool IsVideoCaptureServiceEnabledForOutOfProcess(); CONTENT_EXPORT bool IsVideoCaptureServiceEnabledForBrowserProcess(); @@ -1764,7 +1837,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 -@@ -1912,5 +1912,5 @@ uint32_t GetPassthroughAudioFormats() { +@@ -1927,5 +1927,5 @@ uint32_t GetPassthroughAudioFormats() { return 0; #endif // BUILDFLAG(ENABLE_PASSTHROUGH_AUDIO_CODECS) } @@ -1774,7 +1847,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 -@@ -580,5 +580,5 @@ MEDIA_EXPORT OOPVDMode GetOutOfProcessVideoDecodingMode(); +@@ -583,5 +583,5 @@ MEDIA_EXPORT OOPVDMode GetOutOfProcessVideoDecodingMode(); MEDIA_EXPORT uint32_t GetPassthroughAudioFormats(); } // namespace media @@ -1784,8 +1857,8 @@ 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 -@@ -594,4 +594,5 @@ BASE_FEATURE(kLegacyPKCS1ForTLS13, - "LegacyPKCS1ForTLS13", +@@ -596,4 +596,5 @@ BASE_FEATURE(kNoVarySearchIgnoreUnrecognizedKeys, + "NoVarySearchIgnoreUnrecognizedKeys", base::FEATURE_ENABLED_BY_DEFAULT); +#include "cromite_flags/net_base_features_cc.inc" @@ -1793,9 +1866,9 @@ diff --git a/net/base/features.cc b/net/base/features.cc diff --git a/net/base/features.h b/net/base/features.h --- a/net/base/features.h +++ b/net/base/features.h -@@ -600,6 +600,7 @@ NET_EXPORT BASE_DECLARE_FEATURE(kOptimizeParsingDataUrls); - // support RSA-PSS. - NET_EXPORT BASE_DECLARE_FEATURE(kLegacyPKCS1ForTLS13); +@@ -608,6 +608,7 @@ NET_EXPORT BASE_DECLARE_FEATURE(kKeepWhitespaceForDataUrls); + // Otherwise, unrecognized keys are treated as if the header was invalid. + NET_EXPORT BASE_DECLARE_FEATURE(kNoVarySearchIgnoreUnrecognizedKeys); +#include "cromite_flags/net_base_features_h.inc" } // namespace net::features @@ -1804,18 +1877,18 @@ 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 -@@ -475,4 +475,5 @@ BASE_FEATURE(kTreatNullIPAsPublicAddressSpace, - "TreatNullIPAsPublicAddressSpace", - base::FEATURE_DISABLED_BY_DEFAULT); +@@ -489,4 +489,5 @@ BASE_FEATURE(kStorageAccessHeadersTrial, + "StorageAccessHeadersTrial", + base::FEATURE_ENABLED_BY_DEFAULT); +#include "cromite_flags/services_network_public_cpp_features_cc.inc" } // namespace network::features 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 -@@ -186,6 +186,7 @@ extern const base::FeatureParam kNetworkContextPrefetchMaxLoaders; - COMPONENT_EXPORT(NETWORK_CPP) - BASE_DECLARE_FEATURE(kTreatNullIPAsPublicAddressSpace); +@@ -195,6 +195,7 @@ COMPONENT_EXPORT(NETWORK_CPP) BASE_DECLARE_FEATURE(kStorageAccessHeaders); + // Enables the Storage Access Headers Origin Trial. + COMPONENT_EXPORT(NETWORK_CPP) BASE_DECLARE_FEATURE(kStorageAccessHeadersTrial); +#include "cromite_flags/services_network_public_cpp_features_h.inc" } // namespace network::features @@ -1824,7 +1897,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 -@@ -2708,4 +2708,5 @@ bool IsCanvasSharedBitmapConversionEnabled() { +@@ -2735,4 +2735,5 @@ bool IsCanvasSharedBitmapConversionEnabled() { features::kCanvasSharedBitmapToSharedImage); } @@ -1833,8 +1906,8 @@ 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 -@@ -1831,6 +1831,7 @@ BLINK_COMMON_EXPORT BASE_DECLARE_FEATURE(kOptimizeLoadingDataUrls); - +@@ -1840,6 +1840,7 @@ BLINK_COMMON_EXPORT BASE_DECLARE_FEATURE(kOptimizeLoadingDataUrls); + BLINK_COMMON_EXPORT BASE_DECLARE_FEATURE(kCanvasSharedBitmapToSharedImage); BLINK_COMMON_EXPORT bool IsCanvasSharedBitmapConversionEnabled(); +#include "cromite_flags/third_party_blink_common_features_h.inc" 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 0d59e17e94c71ef722772325552229e2091e377b..363cd8e17828b6f219da4c431098d7d6bac04aef 100644 --- a/build/cromite_patches/Add-custom-tab-intents-privacy-option.patch +++ b/build/cromite_patches/Add-custom-tab-intents-privacy-option.patch @@ -4,6 +4,7 @@ Subject: Add custom tab intents privacy option Add custom tab intents privacy option and force open external links in incognito flag. +Use the CCT ephemeral mode. Flags are mutually exclusive. @@ -11,23 +12,26 @@ See also: https://github.com/bromite/bromite/issues/1474 License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html --- - .../java/res/xml/privacy_preferences.xml | 10 ++++++++ - .../browser/LaunchIntentDispatcher.java | 21 ++++++++++++++++ + .../java/res/xml/privacy_preferences.xml | 15 ++++++ + .../browser/LaunchIntentDispatcher.java | 21 ++++++++ + .../CustomTabIntentDataProvider.java | 4 +- .../customtabs/CustomTabsConnection.java | 1 + - .../IncognitoCustomTabIntentDataProvider.java | 6 +++++ - .../privacy/settings/PrivacySettings.java | 24 +++++++++++++++++++ - .../chrome/browser/tab/TabAssociatedApp.java | 6 ++++- - .../strings/android_chrome_strings.grd | 14 +++++++++++ - .../OriginVerifier.java | 5 ++++ + .../IncognitoCustomTabIntentDataProvider.java | 14 ++++++ + .../privacy/settings/PrivacySettings.java | 50 +++++++++++++++++++ + .../browser/flags/ChromeFeatureList.java | 2 + + .../chrome/browser/tab/TabAssociatedApp.java | 6 ++- + ...Add-custom-tab-intents-privacy-option.grdp | 25 ++++++++++ + .../OriginVerifier.java | 5 ++ .../core/common/language_experiments.cc | 1 + .../add-custom-tab-intents-privacy-option.inc | 1 + - 10 files changed, 88 insertions(+), 1 deletion(-) + 12 files changed, 143 insertions(+), 2 deletions(-) + create mode 100644 chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Add-custom-tab-intents-privacy-option.grdp create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/add-custom-tab-intents-privacy-option.inc diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml --- a/chrome/android/java/res/xml/privacy_preferences.xml +++ b/chrome/android/java/res/xml/privacy_preferences.xml -@@ -63,6 +63,16 @@ found in the LICENSE file. +@@ -63,6 +63,21 @@ found in the LICENSE file. android:key="cromite_flags" android:title="@string/cromite_flags_title" app:url="@string/cromite_flags_url" /> @@ -37,6 +41,11 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi + android:summary="@string/allow_custom_tab_intents_summary" + android:defaultValue="false" /> + ++ { @@ -130,20 +153,58 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Inco return ChromeFeatureList.sCctIncognitoAvailableToThirdParty.isEnabled(); } +@@ -216,6 +222,10 @@ public class IncognitoCustomTabIntentDataProvider extends BrowserServicesIntentD + } + + public static boolean isValidIncognitoIntent(Intent intent) { ++ if (ContextUtils.getAppSharedPreferences() ++ .getBoolean(PrivacySettings.PREF_OPEN_EXTERNAL_LINKS_INCOGNITO, false)) { ++ return true; ++ } + if (!isIncognitoRequested(intent)) return false; + var session = CustomTabsSessionToken.getSessionTokenFromIntent(intent); + if (isIntentFromThirdPartyAllowed() +@@ -326,6 +336,10 @@ public class IncognitoCustomTabIntentDataProvider extends BrowserServicesIntentD + + @Override + public @CustomTabProfileType int getCustomTabMode() { ++ if (ContextUtils.getAppSharedPreferences() ++ .getBoolean(PrivacySettings.PREF_OPEN_EXTERNAL_LINKS_INCOGNITO, false)) { ++ return CustomTabProfileType.EPHEMERAL; ++ } + return CustomTabProfileType.INCOGNITO; + } + 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 -@@ -99,6 +99,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment +@@ -55,6 +55,15 @@ import org.chromium.components.user_prefs.UserPrefs; + import org.chromium.ui.text.NoUnderlineClickableSpan; + import org.chromium.ui.text.SpanApplier; ++import android.app.role.RoleManager; ++import android.content.Context; ++import android.content.Intent; ++import android.content.pm.ResolveInfo; ++import android.provider.Settings; ++import android.text.TextUtils; ++import org.chromium.base.IntentUtils; ++import org.chromium.base.PackageManagerUtils; ++ + import androidx.annotation.Nullable; + import androidx.preference.PreferenceCategory; + import org.chromium.chrome.browser.contextualsearch.ContextualSearchManager; +@@ -102,6 +111,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment private IncognitoLockSettings mIncognitoLockSettings; + private final ObservableSupplierImpl mPageTitle = new ObservableSupplierImpl<>(); + private ChromeSwitchPreference allowCustomTabIntentsPref; + private ChromeSwitchPreference openExternalLinksPref; + @Override public void onCreatePreferencesCromite(Bundle savedInstanceState, String rootKey) { - getActivity().setTitle(R.string.prefs_privacy_security); -@@ -312,6 +315,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment + mPageTitle.set(getString(R.string.prefs_privacy_security)); +@@ -320,6 +332,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment new SpanApplier.SpanInfo("", "", servicesLink)); } @@ -153,7 +214,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting @Override public boolean onPreferenceChange(Preference preference, Object newValue) { String key = preference.getKey(); -@@ -328,6 +334,14 @@ public class PrivacySettings extends ChromeBaseSettingsFragment +@@ -336,6 +351,31 @@ public class PrivacySettings extends ChromeBaseSettingsFragment } else if (PREF_SEARCH_SUGGESTIONS.equals(key)) { UserPrefs.get(getProfile()) .setBoolean(Pref.SEARCH_SUGGEST_ENABLED, (boolean) newValue); @@ -161,6 +222,23 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting + SharedPreferences.Editor sharedPreferencesEditor = ContextUtils.getAppSharedPreferences().edit(); + sharedPreferencesEditor.putBoolean(PREF_ALLOW_CUSTOM_TAB_INTENTS, (boolean)newValue); + sharedPreferencesEditor.apply(); ++ // check default browser ++ if ((boolean)newValue) { ++ ResolveInfo info = PackageManagerUtils.resolveDefaultWebBrowserActivity(); ++ if (info == null || info.match == 0 || ++ !TextUtils.equals(ContextUtils.getApplicationContext().getPackageName(), ++ info.activityInfo.packageName)) { ++ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { ++ RoleManager roleManager = (RoleManager) getContext().getSystemService(Context.ROLE_SERVICE); ++ Intent intent = roleManager.createRequestRoleIntent(RoleManager.ROLE_BROWSER); ++ startActivityForResult(intent, 0); ++ } else { ++ Intent intent = new Intent(Settings.ACTION_MANAGE_DEFAULT_APPS_SETTINGS); ++ intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); ++ IntentUtils.safeStartActivity(getContext(), intent); ++ } ++ } ++ } + } else if (PREF_OPEN_EXTERNAL_LINKS_INCOGNITO.equals(key)) { + SharedPreferences.Editor sharedPreferencesEditor = ContextUtils.getAppSharedPreferences().edit(); + sharedPreferencesEditor.putBoolean(PREF_OPEN_EXTERNAL_LINKS_INCOGNITO, (boolean)newValue); @@ -168,7 +246,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting } return true; } -@@ -350,6 +364,16 @@ public class PrivacySettings extends ChromeBaseSettingsFragment +@@ -358,6 +398,16 @@ public class PrivacySettings extends ChromeBaseSettingsFragment UserPrefs.get(getProfile()).getBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED)); } @@ -185,6 +263,25 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting Preference doNotTrackPref = findPreference(PREF_DO_NOT_TRACK); if (doNotTrackPref != null) { doNotTrackPref.setSummary( +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 +@@ -656,6 +656,7 @@ public abstract class ChromeFeatureList { + public static final CachedFlag sLogoPolishAnimationKillSwitch = + newCachedFlag(LOGO_POLISH_ANIMATION_KILL_SWITCH, true); + public static final CachedFlag sMagicStackAndroid = newCachedFlag(MAGIC_STACK_ANDROID, true); ++ public static final CachedFlag sMayLaunchurlUsesSeparateStoragePartition = newCachedFlag(MAYLAUNCHURL_USES_SEPARATE_STORAGE_PARTITION, false); + public static final CachedFlag sMostVisitedTilesReselect = + newCachedFlag(MOST_VISITED_TILES_RESELECT, false); + public static final CachedFlag sMultiInstanceApplicationStatusCleanup = +@@ -792,6 +793,7 @@ public abstract class ChromeFeatureList { + sLogoPolish, + sLogoPolishAnimationKillSwitch, + sMagicStackAndroid, ++ sMayLaunchurlUsesSeparateStoragePartition, + sMostVisitedTilesReselect, + sMultiInstanceApplicationStatusCleanup, + sNavBarColorMatchesTabBackground, diff --git a/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/TabAssociatedApp.java b/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/TabAssociatedApp.java --- a/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/TabAssociatedApp.java +++ b/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/TabAssociatedApp.java @@ -201,30 +298,36 @@ diff --git a/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/TabAsso String packageName = ContextUtils.getApplicationContext().getPackageName(); return tab.getLaunchType() == TabLaunchType.FROM_EXTERNAL_APP && !TextUtils.equals(app.getAppId(), packageName); -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 -@@ -5696,6 +5696,20 @@ To change this setting, BEGIN_LINKdelete the Chrome d - - Resume - -+ -+ -+ Allow custom tab intents -+ -+ -+ Allow applications to open custom tab intents, similar to webview. -+ -+ -+ +diff --git a/chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Add-custom-tab-intents-privacy-option.grdp b/chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Add-custom-tab-intents-privacy-option.grdp +new file mode 100644 +--- /dev/null ++++ b/chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Add-custom-tab-intents-privacy-option.grdp +@@ -0,0 +1,25 @@ ++ ++ ++ ++ ++ Allow custom tab intents. ++ ++ ++ Allow applications to open custom tab intents, similar to webview. To work, Cromite must be set as the default browser. ++ ++ ++ ++ Use ephemeral mode for CCT ++ ++ ++ Use a separate storage partition when opening custom tab intents ++ ++ ++ ++ + Open external links in incognito -+ -+ -+ Force the opening of all external links in incognito mode. Caution: there is only one incognito profile. -+ - - - Show your Chrome activity in Digital Wellbeing? ++ ++ ++ Force the opening of all external links in incognito mode and uses the CCT ephemeral mode. Caution: there is only one incognito profile. ++ ++ diff --git a/components/content_relationship_verification/android/java/src/org/chromium/components/content_relationship_verification/OriginVerifier.java b/components/content_relationship_verification/android/java/src/org/chromium/components/content_relationship_verification/OriginVerifier.java --- a/components/content_relationship_verification/android/java/src/org/chromium/components/content_relationship_verification/OriginVerifier.java +++ b/components/content_relationship_verification/android/java/src/org/chromium/components/content_relationship_verification/OriginVerifier.java @@ -243,7 +346,7 @@ diff --git a/components/content_relationship_verification/android/java/src/org/c diff --git a/components/language/core/common/language_experiments.cc b/components/language/core/common/language_experiments.cc --- a/components/language/core/common/language_experiments.cc +++ b/components/language/core/common/language_experiments.cc -@@ -24,4 +24,5 @@ BASE_FEATURE(kCctAutoTranslate, +@@ -28,4 +28,5 @@ BASE_FEATURE(kTranslateOpenSettings, // Params: const char kContentLanguagesDisableObserversParam[] = "disable_observers"; diff --git a/build/cromite_patches/Add-exit-menu-item.patch b/build/cromite_patches/Add-exit-menu-item.patch index c2c33791b33d6d318e37b9cf4278e29ad5a045be..5ea8e34ba870d02c745511e0c67ef7687184ccbc 100644 --- a/build/cromite_patches/Add-exit-menu-item.patch +++ b/build/cromite_patches/Add-exit-menu-item.patch @@ -7,16 +7,16 @@ Corrected Exit functionality License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html --- chrome/android/java/res/menu/main_menu.xml | 6 ++++++ - .../org/chromium/chrome/browser/ApplicationLifetime.java | 2 ++ .../org/chromium/chrome/browser/ChromeTabbedActivity.java | 4 ++++ .../src/org/chromium/chrome/browser/app/ChromeActivity.java | 6 ++++++ + .../chrome/browser/init/ChromeLifetimeController.java | 2 ++ .../browser/ui/android/strings/android_chrome_strings.grd | 3 +++ 5 files changed, 21 insertions(+) diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/res/menu/main_menu.xml --- a/chrome/android/java/res/menu/main_menu.xml +++ b/chrome/android/java/res/menu/main_menu.xml -@@ -163,6 +163,9 @@ found in the LICENSE file. +@@ -157,6 +157,9 @@ found in the LICENSE file. @@ -26,7 +26,7 @@ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/re -@@ -192,6 +195,9 @@ found in the LICENSE file. +@@ -186,6 +189,9 @@ found in the LICENSE file. @@ -36,38 +36,19 @@ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/re -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ApplicationLifetime.java b/chrome/android/java/src/org/chromium/chrome/browser/ApplicationLifetime.java ---- a/chrome/android/java/src/org/chromium/chrome/browser/ApplicationLifetime.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/ApplicationLifetime.java -@@ -7,6 +7,7 @@ package org.chromium.chrome.browser; - import org.jni_zero.CalledByNative; - - import org.chromium.base.ObserverList; -+import org.chromium.chrome.browser.incognito.IncognitoNotificationManager; - - /** Watches for when Chrome is told to restart itself. */ - public class ApplicationLifetime { -@@ -39,6 +40,7 @@ public class ApplicationLifetime { - - @CalledByNative - public static void terminate(boolean restart) { -+ IncognitoNotificationManager.dismissIncognitoNotification(); - for (Observer observer : sObservers) { - observer.onTerminate(restart); - } 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 -@@ -263,6 +263,8 @@ import java.util.Set; +@@ -273,6 +273,8 @@ import java.util.Set; import java.util.concurrent.atomic.AtomicBoolean; import java.util.function.DoubleConsumer; -+import org.chromium.chrome.browser.ApplicationLifetime; ++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. -@@ -2699,6 +2701,8 @@ public class ChromeTabbedActivity extends ChromeActivity +@@ -2495,6 +2496,11 @@ public abstract class ChromeActivity return true; } @@ -99,10 +80,29 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv if (id == R.id.update_menu_id) { UpdateMenuItemHelper.getInstance( getProfileProviderSupplier().get().getOriginalProfile()) +diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeLifetimeController.java b/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeLifetimeController.java +--- a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeLifetimeController.java ++++ b/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeLifetimeController.java +@@ -18,6 +18,7 @@ import org.chromium.base.ContextUtils; + import org.chromium.base.ThreadUtils; + import org.chromium.chrome.browser.BrowserRestartActivity; + import org.chromium.chrome.browser.lifetime.ApplicationLifetime; ++import org.chromium.chrome.browser.incognito.IncognitoNotificationManager; + + /** + * Answers requests to kill and (potentially) restart Chrome's main browser process. +@@ -73,6 +74,7 @@ class ChromeLifetimeController + + @Override + public void onTerminate(boolean restart) { ++ IncognitoNotificationManager.dismissIncognitoNotification(); + mRestartChromeOnDestroy = restart; + + // Tell all Chrome Activities to finish themselves. 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 -@@ -4245,6 +4245,9 @@ To change this setting, BEGIN_LINKdelete the Chrome d +@@ -4334,6 +4334,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 2cd9a8112ac93b16dba5aaaad721318adb1431dd..8665a06b6f47182c44fba367b7a5e72e18b4fbd9 100644 --- a/build/cromite_patches/Add-flag-for-omnibox-autocomplete-filtering.patch +++ b/build/cromite_patches/Add-flag-for-omnibox-autocomplete-filtering.patch @@ -26,7 +26,7 @@ diff --git a/components/omnibox/browser/autocomplete_controller.cc b/components/ #include "base/feature_list.h" #include "base/format_macros.h" #include "base/functional/bind.h" -@@ -541,6 +542,15 @@ AutocompleteController::AutocompleteController( +@@ -535,6 +536,15 @@ AutocompleteController::AutocompleteController( provider_client_->GetOmniboxTriggeredFeatureService()), steady_state_omnibox_position_( metrics::OmniboxEventProto::UNKNOWN_POSITION) { 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 7a5b9bb46c99b835cad9ab987b1a9ebd4b399e94..4dd58944ba4fe39ce0a86ce9ed02906b95f39f33 100644 --- a/build/cromite_patches/Add-flag-to-disable-IPv6-probes.patch +++ b/build/cromite_patches/Add-flag-to-disable-IPv6-probes.patch @@ -45,9 +45,9 @@ new file mode 100644 diff --git a/net/BUILD.gn b/net/BUILD.gn --- a/net/BUILD.gn +++ b/net/BUILD.gn -@@ -1081,6 +1081,7 @@ component("net") { - "//build:chromeos_buildflags", +@@ -1096,6 +1096,7 @@ component("net") { "//components/miracle_parameter/common", + "//components/network_time/time_tracker", "//net/http:transport_security_state_generated_files", + "//components/network_session_configurator/common" ] 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 8c896f961fe3aa7cb9f1d1fee41357a7ac30bc0b..9fda0a81c8a95f83f53acf7a295eb491b2794a75 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 @@ -3,26 +3,35 @@ Date: Tue, 25 May 2021 19:46:14 +0200 Subject: Add flag to disable external intent requests Adds a new flag that allows to control the switch with same name; -when flag is disabled no external intent will ever be allowed, for any URL. +when flag is disabled no external intent will ever be allowed, +for any URL except for the tel: schema. +This also reverts commit b710cefb53b558a8bcd884f6baf0229ba4225721 and +enables IntentBlockExternalFormRedirectsNoGesture. License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html --- .../java/res/xml/privacy_preferences.xml | 7 +++- - .../ExternalNavigationDelegateImpl.java | 3 +- + .../ExternalNavigationDelegateImpl.java | 4 ++- .../cromite/sAllowExternalIntentRequests.java | 33 +++++++++++++++++++ ...g-to-disable-external-intent-requests.grdp | 9 +++++ + .../android/external_intents_features.cc | 7 +++- + .../android/external_intents_features.h | 1 + + .../ExternalIntentsFeatures.java | 6 ++++ + .../ExternalNavigationHandler.java | 21 ++++++++++++ ...ag-to-disable-external-intent-requests.inc | 13 ++++++++ + ...t-Delete-block-external-form-redirects.inc | 15 +++++++++ ...ag-to-disable-external-intent-requests.inc | 3 ++ - 6 files changed, 66 insertions(+), 2 deletions(-) + 11 files changed, 116 insertions(+), 3 deletions(-) create mode 100644 chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/cromite/sAllowExternalIntentRequests.java create mode 100644 chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Add-flag-to-disable-external-intent-requests.grdp create mode 100644 cromite_flags/chrome/browser/about_flags_cc/Add-flag-to-disable-external-intent-requests.inc + create mode 100644 cromite_flags/chrome/browser/about_flags_cc/Revert-Delete-block-external-form-redirects.inc create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Add-flag-to-disable-external-intent-requests.inc diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml --- a/chrome/android/java/res/xml/privacy_preferences.xml +++ b/chrome/android/java/res/xml/privacy_preferences.xml -@@ -83,7 +83,12 @@ found in the LICENSE file. +@@ -88,7 +88,12 @@ found in the LICENSE file. android:title="@string/settings_incognito_tab_lock_title" android:summary="@string/settings_incognito_tab_lock_summary_android_setting_off" android:persistent="false" /> @@ -47,11 +56,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.tab.EmptyTabObserver; import org.chromium.chrome.browser.tab.Tab; -@@ -103,7 +104,7 @@ public class ExternalNavigationDelegateImpl implements ExternalNavigationDelegat +@@ -103,7 +104,8 @@ public class ExternalNavigationDelegateImpl implements ExternalNavigationDelegat @Override public boolean shouldDisableExternalIntentRequestsForUrl(GURL url) { - return false; ++ if ("tel".equals(url.getScheme())) return false; + return !sAllowExternalIntentRequests.getInstance().isEnabled(); } @@ -105,9 +115,99 @@ new file mode 100644 + Allow forward URL requests to external intents + + -+ If disabled, URL requests will never allow redirection to an external intent, such as open application or dialer. Caution: since no verification is possible on the information, allows linkage between browser browsing and activity on the application. ++ If disabled, URL requests will never allow redirection to an external intent, such as open application. Caution: since no verification is possible on the information, allows linkage between browser browsing and activity on the application. + + +diff --git a/components/external_intents/android/external_intents_features.cc b/components/external_intents/android/external_intents_features.cc +--- a/components/external_intents/android/external_intents_features.cc ++++ b/components/external_intents/android/external_intents_features.cc +@@ -27,7 +27,6 @@ namespace { + const base::Feature* kFeaturesExposedToJava[] = { + &kExternalNavigationDebugLogs, &kBlockFrameRenavigations, + &kBlockIntentsToSelf, &kTrustedClientGestureBypass}; +- + } // namespace + + // Alphabetical: +@@ -48,7 +47,13 @@ BASE_FEATURE(kTrustedClientGestureBypass, + "TrustedClientGestureBypass", + base::FEATURE_ENABLED_BY_DEFAULT); + ++CROMITE_FEATURE(kIntentBlockExternalFormRedirectsNoGesture, ++ "IntentBlockExternalFormRedirectsNoGesture", ++ base::FEATURE_ENABLED_BY_DEFAULT); ++ + static jlong JNI_ExternalIntentsFeatures_GetFeature(JNIEnv* env, jint ordinal) { ++ if (ordinal == -1) ++ return reinterpret_cast(&kIntentBlockExternalFormRedirectsNoGesture); + return reinterpret_cast(kFeaturesExposedToJava[ordinal]); + } + +diff --git a/components/external_intents/android/external_intents_features.h b/components/external_intents/android/external_intents_features.h +--- a/components/external_intents/android/external_intents_features.h ++++ b/components/external_intents/android/external_intents_features.h +@@ -9,6 +9,7 @@ + + namespace external_intents { + ++BASE_DECLARE_FEATURE(kIntentBlockExternalFormRedirectsNoGesture); + BASE_DECLARE_FEATURE(kExternalNavigationDebugLogs); + BASE_DECLARE_FEATURE(kBlockFrameRenavigations); + BASE_DECLARE_FEATURE(kBlockIntentsToSelf); +diff --git a/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalIntentsFeatures.java b/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalIntentsFeatures.java +--- a/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalIntentsFeatures.java ++++ b/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalIntentsFeatures.java +@@ -18,6 +18,12 @@ import org.chromium.base.Features; + */ + @JNINamespace("external_intents") + public class ExternalIntentsFeatures extends Features { ++ public static final String INTENT_BLOCK_EXTERNAL_FORM_REDIRECT_NO_GESTURE_NAME = ++ "IntentBlockExternalFormRedirectsNoGesture"; ++ ++ public static final ExternalIntentsFeatures INTENT_BLOCK_EXTERNAL_FORM_REDIRECT_NO_GESTURE = ++ new ExternalIntentsFeatures(-1, INTENT_BLOCK_EXTERNAL_FORM_REDIRECT_NO_GESTURE_NAME); ++ + public static final String EXTERNAL_NAVIGATION_DEBUG_LOGS_NAME = "ExternalNavigationDebugLogs"; + public static final String BLOCK_FRAME_RENAVIGATIONS_NAME = "BlockFrameRenavigations3"; + public static final String BLOCK_INTENTS_TO_SELF_NAME = "BlockIntentsToSelf"; +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 +@@ -1532,6 +1532,12 @@ public class ExternalNavigationHandler { + || ignoreBackForwardNav(params); + } + ++ /** Wrapper of check against the feature to support overriding for testing. */ ++ @VisibleForTesting ++ boolean blockExternalFormRedirectsWithoutGesture() { ++ return ExternalIntentsFeatures.INTENT_BLOCK_EXTERNAL_FORM_REDIRECT_NO_GESTURE.isEnabled(); ++ } ++ + private OverrideUrlLoadingResult shouldOverrideUrlLoadingInternal( + ExternalNavigationParams params, + Intent targetIntent, +@@ -1594,6 +1600,21 @@ public class ExternalNavigationHandler { + return OverrideUrlLoadingResult.forNoOverride(); + } + ++ // http://crbug.com/839751: Require user gestures for form submits to external ++ // protocols. ++ // TODO(tedchoc): Turn this on by default once we verify this change does ++ // not break the world. ++ int pageTransitionCore = params.getPageTransition() & PageTransition.CORE_MASK; ++ boolean isFormSubmit = pageTransitionCore == PageTransition.FORM_SUBMIT; ++ boolean isRedirectFromFormSubmit = isFormSubmit && params.isRedirect(); ++ if (isRedirectFromFormSubmit && !incomingIntentRedirect && !params.hasUserGesture() ++ && blockExternalFormRedirectsWithoutGesture()) { ++ if (debug()) { ++ Log.i(TAG, "Incoming form intent attempting to redirect without user gesture"); ++ } ++ return OverrideUrlLoadingResult.forNoOverride(); ++ } ++ + if (hasInternalScheme(params.getUrl(), targetIntent) + || hasContentScheme(params.getUrl(), targetIntent) + || hasFileSchemeInIntentURI(params.getUrl(), targetIntent) diff --git a/cromite_flags/chrome/browser/about_flags_cc/Add-flag-to-disable-external-intent-requests.inc b/cromite_flags/chrome/browser/about_flags_cc/Add-flag-to-disable-external-intent-requests.inc new file mode 100644 --- /dev/null @@ -126,6 +226,26 @@ new file mode 100644 +#endif + +#endif +diff --git a/cromite_flags/chrome/browser/about_flags_cc/Revert-Delete-block-external-form-redirects.inc b/cromite_flags/chrome/browser/about_flags_cc/Revert-Delete-block-external-form-redirects.inc +new file mode 100644 +--- /dev/null ++++ b/cromite_flags/chrome/browser/about_flags_cc/Revert-Delete-block-external-form-redirects.inc +@@ -0,0 +1,15 @@ ++#if BUILDFLAG(IS_ANDROID) ++ ++#ifdef FLAG_SECTION ++ ++ {"block-external-form-redirects-no-gesture", ++ "Block intents from form submissions without user gesture", ++ "Require a user gesture that triggered a form submission in order to " ++ "allow for redirecting to an external intent.", ++ kOsAndroid, ++ FEATURE_VALUE_TYPE( ++ external_intents::kIntentBlockExternalFormRedirectsNoGesture)}, ++ ++#endif ++ ++#endif diff --git a/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Add-flag-to-disable-external-intent-requests.inc b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Add-flag-to-disable-external-intent-requests.inc new file mode 100644 --- /dev/null diff --git a/build/cromite_patches/Add-flag-to-disable-vibration.patch b/build/cromite_patches/Add-flag-to-disable-vibration.patch index e7237dec6ef7a47a0f2d92c92b4b674a0e89798f..2815f1cdb44bd8f97607c015525d7a61ebf9601e 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 -@@ -757,6 +757,10 @@ +@@ -797,6 +797,10 @@ status: {"Android": "stable"}, base_feature: "none", }, diff --git a/build/cromite_patches/Add-lifetime-options-for-permissions.patch b/build/cromite_patches/Add-lifetime-options-for-permissions.patch index 4f6830dab7c5900d54bcffd625186ef04cb6970f..b3f4df8acd3332415e6972966a6f0cbf2ac12da9 100644 --- a/build/cromite_patches/Add-lifetime-options-for-permissions.patch +++ b/build/cromite_patches/Add-lifetime-options-for-permissions.patch @@ -56,6 +56,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../one_time_permissions_tracker.cc | 33 +++++++- .../one_time_permissions_tracker.h | 5 +- .../one_time_permissions_tracker_factory.cc | 2 +- + .../views/permissions/chip/chip_controller.cc | 2 +- .../permissions/embedded_permission_prompt.cc | 2 +- ...exclusive_access_permission_prompt_view.cc | 2 +- .../permission_prompt_bubble_base_view.cc | 2 +- @@ -87,7 +88,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html components/permissions/permission_request.h | 16 +++- .../permissions/permission_request_manager.cc | 45 ++++++---- .../permissions/permission_request_manager.h | 11 ++- - 35 files changed, 489 insertions(+), 62 deletions(-) + 36 files changed, 490 insertions(+), 63 deletions(-) diff --git a/chrome/browser/permissions/last_tab_standing_tracker.cc b/chrome/browser/permissions/last_tab_standing_tracker.cc --- a/chrome/browser/permissions/last_tab_standing_tracker.cc @@ -226,6 +227,18 @@ diff --git a/chrome/browser/permissions/one_time_permissions_tracker_factory.cc - return std::make_unique(); + return std::make_unique(context); } +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 +@@ -234,7 +234,7 @@ void ChipController::OnWidgetDestroyed(views::Widget* widget) { + active_chip_permission_request_manager_.value()->Accept(); + break; + case permissions::PermissionAction::GRANTED_ONCE: +- active_chip_permission_request_manager_.value()->AcceptThisTime(); ++ active_chip_permission_request_manager_.value()->AcceptThisTime(content_settings::mojom::LifetimeMode::ONLY_THIS_TIME); + break; + case permissions::PermissionAction::DENIED: + active_chip_permission_request_manager_.value()->Deny(); diff --git a/chrome/browser/ui/views/permissions/embedded_permission_prompt.cc b/chrome/browser/ui/views/permissions/embedded_permission_prompt.cc --- a/chrome/browser/ui/views/permissions/embedded_permission_prompt.cc +++ b/chrome/browser/ui/views/permissions/embedded_permission_prompt.cc @@ -241,7 +254,7 @@ diff --git a/chrome/browser/ui/views/permissions/embedded_permission_prompt.cc b diff --git a/chrome/browser/ui/views/permissions/exclusive_access_permission_prompt_view.cc b/chrome/browser/ui/views/permissions/exclusive_access_permission_prompt_view.cc --- a/chrome/browser/ui/views/permissions/exclusive_access_permission_prompt_view.cc +++ b/chrome/browser/ui/views/permissions/exclusive_access_permission_prompt_view.cc -@@ -99,7 +99,7 @@ void ExclusiveAccessPermissionPromptView::RunButtonCallback(int button_id) { +@@ -100,7 +100,7 @@ void ExclusiveAccessPermissionPromptView::RunButtonCallback(int button_id) { } ButtonType button = GetButtonType(button_id); if (button == ButtonType::kAllowThisTime) { @@ -253,7 +266,7 @@ diff --git a/chrome/browser/ui/views/permissions/exclusive_access_permission_pro diff --git a/chrome/browser/ui/views/permissions/permission_prompt_bubble_base_view.cc b/chrome/browser/ui/views/permissions/permission_prompt_bubble_base_view.cc --- a/chrome/browser/ui/views/permissions/permission_prompt_bubble_base_view.cc +++ b/chrome/browser/ui/views/permissions/permission_prompt_bubble_base_view.cc -@@ -241,7 +241,7 @@ void PermissionPromptBubbleBaseView::RunButtonCallback(int button_id) { +@@ -266,7 +266,7 @@ void PermissionPromptBubbleBaseView::RunButtonCallback(int button_id) { delegate_->Accept(); return; case PermissionDialogButton::kAcceptOnce: @@ -276,7 +289,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/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 -@@ -561,6 +561,11 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment +@@ -574,6 +574,11 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment } } @@ -288,7 +301,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(); -@@ -1092,6 +1097,10 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment +@@ -1108,6 +1113,10 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment AppCompatResources.getColorStateList(getContext(), mHighlightColor) .getDefaultColor()); } @@ -468,7 +481,7 @@ diff --git a/components/page_info/android/java/src/org/chromium/components/page_ diff --git a/components/page_info/android/page_info_controller_android.cc b/components/page_info/android/page_info_controller_android.cc --- a/components/page_info/android/page_info_controller_android.cc +++ b/components/page_info/android/page_info_controller_android.cc -@@ -153,6 +153,8 @@ void PageInfoControllerAndroid::SetPermissionInfo( +@@ -164,6 +164,8 @@ void PageInfoControllerAndroid::SetPermissionInfo( std::map user_specified_settings_to_display; @@ -477,7 +490,7 @@ diff --git a/components/page_info/android/page_info_controller_android.cc b/comp for (const auto& permission : permission_info_list) { if (base::Contains(permissions_to_display, permission.type)) { -@@ -161,6 +163,8 @@ void PageInfoControllerAndroid::SetPermissionInfo( +@@ -172,6 +174,8 @@ void PageInfoControllerAndroid::SetPermissionInfo( if (setting_to_display) { user_specified_settings_to_display[permission.type] = *setting_to_display; @@ -486,7 +499,7 @@ diff --git a/components/page_info/android/page_info_controller_android.cc b/comp } } } -@@ -177,7 +181,8 @@ void PageInfoControllerAndroid::SetPermissionInfo( +@@ -188,7 +192,8 @@ void PageInfoControllerAndroid::SetPermissionInfo( ConvertUTF16ToJavaString(env, setting_title), ConvertUTF16ToJavaString(env, setting_title_mid_sentence), static_cast(permission), @@ -496,7 +509,7 @@ diff --git a/components/page_info/android/page_info_controller_android.cc b/comp } } -@@ -190,7 +195,8 @@ void PageInfoControllerAndroid::SetPermissionInfo( +@@ -201,7 +206,8 @@ void PageInfoControllerAndroid::SetPermissionInfo( env, controller_jobject_, ConvertUTF16ToJavaString(env, object_title), ConvertUTF16ToJavaString(env, object_title), static_cast(chosen_object->ui_info->content_settings_type), @@ -509,7 +522,7 @@ 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 -@@ -1179,6 +1179,8 @@ void PageInfo::PopulatePermissionInfo(PermissionInfo& permission_info, +@@ -1181,6 +1181,8 @@ void PageInfo::PopulatePermissionInfo(PermissionInfo& permission_info, permission_info.is_one_time = (info.metadata.session_model() == content_settings::mojom::SessionModel::ONE_TIME); @@ -763,7 +776,7 @@ diff --git a/components/permissions/android/permission_prompt/permission_prompt_ diff --git a/components/permissions/android/permissions_android_strings.grd b/components/permissions/android/permissions_android_strings.grd --- a/components/permissions/android/permissions_android_strings.grd +++ b/components/permissions/android/permissions_android_strings.grd -@@ -264,6 +264,23 @@ +@@ -267,6 +267,23 @@ Unknown or unsupported device (%1$sA1:B2:C3:D4:E5:F6) @@ -920,7 +933,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr diff --git a/components/permissions/permission_context_base.cc b/components/permissions/permission_context_base.cc --- a/components/permissions/permission_context_base.cc +++ b/components/permissions/permission_context_base.cc -@@ -266,6 +266,17 @@ bool PermissionContextBase::UsesAutomaticEmbargo() const { +@@ -267,6 +267,17 @@ bool PermissionContextBase::UsesAutomaticEmbargo() const { return true; } @@ -938,7 +951,7 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm content::PermissionResult PermissionContextBase::GetPermissionStatus( content::RenderFrameHost* render_frame_host, const GURL& requesting_origin, -@@ -502,7 +513,8 @@ void PermissionContextBase::PermissionDecided(const PermissionRequestID& id, +@@ -513,7 +524,8 @@ void PermissionContextBase::PermissionDecided(const PermissionRequestID& id, const GURL& embedding_origin, ContentSetting content_setting, bool is_one_time, @@ -948,7 +961,7 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm DCHECK(content_setting == CONTENT_SETTING_ALLOW || content_setting == CONTENT_SETTING_BLOCK || content_setting == CONTENT_SETTING_DEFAULT); -@@ -517,13 +529,14 @@ void PermissionContextBase::PermissionDecided(const PermissionRequestID& id, +@@ -528,13 +540,14 @@ void PermissionContextBase::PermissionDecided(const PermissionRequestID& id, // missing if a permission prompt was preignored and we already notified an // origin about it. if (request->second.second) { @@ -967,7 +980,7 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm } } -@@ -591,11 +604,27 @@ void PermissionContextBase::NotifyPermissionSet( +@@ -602,11 +615,27 @@ void PermissionContextBase::NotifyPermissionSet( ContentSetting content_setting, bool is_one_time, bool is_final_decision) { @@ -996,7 +1009,7 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm } if (is_final_decision) { -@@ -635,6 +664,15 @@ void PermissionContextBase::UpdateContentSetting(const GURL& requesting_origin, +@@ -646,6 +675,15 @@ void PermissionContextBase::UpdateContentSetting(const GURL& requesting_origin, const GURL& embedding_origin, ContentSetting content_setting, bool is_one_time) { @@ -1012,7 +1025,7 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm DCHECK_EQ(requesting_origin, requesting_origin.DeprecatedGetOriginAsURL()); DCHECK_EQ(embedding_origin, embedding_origin.DeprecatedGetOriginAsURL()); DCHECK(content_setting == CONTENT_SETTING_ALLOW || -@@ -644,6 +682,8 @@ void PermissionContextBase::UpdateContentSetting(const GURL& requesting_origin, +@@ -655,6 +693,8 @@ void PermissionContextBase::UpdateContentSetting(const GURL& requesting_origin, constraints.set_session_model( is_one_time ? content_settings::mojom::SessionModel::ONE_TIME : content_settings::mojom::SessionModel::DURABLE); @@ -1107,7 +1120,7 @@ diff --git a/components/permissions/permission_request.cc b/components/permissio PermissionRequest::~PermissionRequest() { DCHECK(delete_callback_.is_null()); } -@@ -386,19 +394,37 @@ bool PermissionRequest::ShouldUseTwoOriginPrompt() const { +@@ -412,19 +420,37 @@ bool PermissionRequest::ShouldUseTwoOriginPrompt() const { return request_type() == RequestType::kStorageAccess; } @@ -1217,7 +1230,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p } request->RequestFinished(); return; -@@ -618,7 +618,8 @@ void PermissionRequestManager::Accept() { +@@ -620,7 +620,8 @@ void PermissionRequestManager::Accept() { (*requests_iter)->request_type(), PermissionAction::GRANTED); PermissionGrantedIncludingDuplicates(*requests_iter, @@ -1227,7 +1240,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p #if !BUILDFLAG(IS_ANDROID) std::optional content_settings_type = -@@ -636,7 +637,7 @@ void PermissionRequestManager::Accept() { +@@ -638,7 +639,7 @@ void PermissionRequestManager::Accept() { CurrentRequestsDecided(PermissionAction::GRANTED); } @@ -1236,7 +1249,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p if (ignore_callbacks_from_prompt_) return; DCHECK(view_); -@@ -648,7 +649,8 @@ void PermissionRequestManager::AcceptThisTime() { +@@ -651,7 +652,8 @@ void PermissionRequestManager::AcceptThisTime() { (*requests_iter)->request_type(), PermissionAction::GRANTED_ONCE); PermissionGrantedIncludingDuplicates(*requests_iter, @@ -1246,7 +1259,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p } NotifyRequestDecided(PermissionAction::GRANTED_ONCE); -@@ -656,6 +658,15 @@ void PermissionRequestManager::AcceptThisTime() { +@@ -659,6 +661,15 @@ void PermissionRequestManager::AcceptThisTime() { } void PermissionRequestManager::Deny() { @@ -1262,7 +1275,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p if (ignore_callbacks_from_prompt_) return; DCHECK(view_); -@@ -679,7 +690,7 @@ void PermissionRequestManager::Deny() { +@@ -683,7 +694,7 @@ void PermissionRequestManager::Deny() { StorePermissionActionForUMA((*requests_iter)->requesting_origin(), (*requests_iter)->request_type(), PermissionAction::DENIED); @@ -1271,7 +1284,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p } NotifyRequestDecided(PermissionAction::DENIED); -@@ -1255,32 +1266,32 @@ PermissionRequestManager::VisitDuplicateRequests( +@@ -1264,32 +1275,32 @@ PermissionRequestManager::VisitDuplicateRequests( void PermissionRequestManager::PermissionGrantedIncludingDuplicates( PermissionRequest* request, @@ -1314,7 +1327,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p request); } -@@ -1541,7 +1552,7 @@ void PermissionRequestManager::DoAutoResponseForTesting() { +@@ -1550,7 +1561,7 @@ void PermissionRequestManager::DoAutoResponseForTesting() { } switch (auto_response_for_test_) { case ACCEPT_ONCE: 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 fd8e45bcbd2ec4da517c209e1d43f024f152a192..abff9f3fb0068da3c521f7683edfe52663242a14 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 @@ -42,7 +42,7 @@ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/re -@@ -186,6 +190,9 @@ found in the LICENSE file. +@@ -180,6 +184,9 @@ found in the LICENSE file. @@ -55,7 +55,7 @@ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/re diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java -@@ -92,6 +92,7 @@ import org.chromium.chrome.browser.base.ColdStartTracker; +@@ -95,6 +95,7 @@ import org.chromium.chrome.browser.base.ColdStartTracker; import org.chromium.chrome.browser.bookmarks.BookmarkUtils; import org.chromium.chrome.browser.browserservices.intents.WebappConstants; import org.chromium.chrome.browser.compositor.CompositorViewHolder; @@ -63,7 +63,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; -@@ -2731,6 +2732,8 @@ public class ChromeTabbedActivity extends ChromeActivity { +@@ -173,7 +173,8 @@ class Writer : public base::RefCountedThreadSafe { BookmarkCodec codec; bookmarks_ = codec.Encode(model->bookmark_bar_node(), model->other_node(), @@ -337,7 +337,7 @@ diff --git a/chrome/browser/bookmarks/bookmark_html_writer.cc b/chrome/browser/b } Writer(const Writer&) = delete; -@@ -195,15 +196,19 @@ class Writer : public base::RefCountedThreadSafe { +@@ -200,15 +201,19 @@ class Writer : public base::RefCountedThreadSafe { roots->FindDict(BookmarkCodec::kOtherBookmarkFolderNameKey); base::Value::Dict* mobile_folder_value = roots->FindDict(BookmarkCodec::kMobileBookmarkFolderNameKey); @@ -358,7 +358,7 @@ diff --git a/chrome/browser/bookmarks/bookmark_html_writer.cc b/chrome/browser/b NotifyOnFinish(BookmarksExportObserver::Result::kCouldNotWriteNodes); return; } -@@ -467,6 +472,8 @@ void BookmarkFaviconFetcher::ExportBookmarks() { +@@ -472,6 +477,8 @@ void BookmarkFaviconFetcher::ExportBookmarks() { BookmarkModelFactory::GetForBrowserContext(profile_)->other_node()); ExtractUrls( BookmarkModelFactory::GetForBrowserContext(profile_)->mobile_node()); @@ -391,7 +391,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 -@@ -4372,6 +4372,9 @@ To change this setting, BEGIN_LINKdelete the Chrome d +@@ -4461,6 +4461,9 @@ To change this setting, BEGIN_LINKdelete the Chrome d Select tabs 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 771a10069cd17afb4163adbd0761ad99253203fb..b5a9ed589bce92f87f3e75c7bb5364368e6197ed 100644 --- a/build/cromite_patches/Add-menu-item-to-view-source.patch +++ b/build/cromite_patches/Add-menu-item-to-view-source.patch @@ -17,32 +17,32 @@ diff --git a/chrome/android/java/res/menu/custom_tabs_menu.xml b/chrome/android/ --- a/chrome/android/java/res/menu/custom_tabs_menu.xml +++ b/chrome/android/java/res/menu/custom_tabs_menu.xml @@ -58,6 +58,9 @@ found in the LICENSE file. - + - diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/res/menu/main_menu.xml --- a/chrome/android/java/res/menu/main_menu.xml +++ b/chrome/android/java/res/menu/main_menu.xml @@ -110,6 +110,9 @@ found in the LICENSE file. - + - + 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 -@@ -2764,6 +2764,8 @@ public class ChromeTabbedActivity extends ChromeActivity +@@ -2640,6 +2640,11 @@ public abstract class ChromeActivity return doOpenWebApk(currentTab); } @@ -77,7 +77,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App updateAutoDarkMenuItem(menu, currentTab, isNativePage); -@@ -1298,6 +1299,23 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate +@@ -1276,6 +1277,23 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate findInPageMenuRow.setVisible(itemVisible); } @@ -104,7 +104,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java --- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java -@@ -299,6 +299,7 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat +@@ -296,6 +296,7 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat updateRequestDesktopSiteMenuItem( menu, currentTab, requestDesktopSiteVisible, isNativePage); 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 55ed9629bd2e84d76504d027689474ce432183c7..ba9601715b1d5ff6936cc9990e4756e5685b9779 100644 --- a/build/cromite_patches/Add-option-to-force-tablet-UI.patch +++ b/build/cromite_patches/Add-option-to-force-tablet-UI.patch @@ -8,34 +8,36 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html .../java/res/layout/recent_tabs_page.xml | 2 +- .../java/res/values-sw600dp/dimens.xml | 4 ++-- chrome/android/java/res/values/dimens.xml | 6 ++++- + .../browser/ChromeBaseAppCompatActivity.java | 3 +++ .../chrome/browser/WarmupManager.java | 5 +++- .../settings/AccessibilitySettings.java | 13 ++++++++++ .../ChromeAccessibilitySettingsDelegate.java | 19 +++++++++++++++ .../chrome/browser/app/ChromeActivity.java | 4 +++- .../overlays/strip/StripLayoutHelper.java | 10 ++++++-- - .../strip/StripLayoutHelperManager.java | 7 +++++- + .../strip/StripLayoutHelperManager.java | 5 +++- + .../init/ChromeBrowserInitializer.java | 2 ++ .../tabbed_mode/TabbedRootUiCoordinator.java | 4 +++- .../chrome/browser/ui/RootUiCoordinator.java | 5 +++- chrome/browser/preferences/BUILD.gn | 1 + .../preferences/ChromePreferenceKeys.java | 1 + - .../preferences/ChromeSharedPreferences.java | 8 +++++++ + .../preferences/ChromeSharedPreferences.java | 12 ++++++++++ .../LegacyChromePreferenceKeys.java | 1 + - .../SingleTabSwitcherOnNtpMediator.java | 1 + + .../AppHeaderCoordinator.java | 2 ++ .../omnibox/LocationBarCoordinator.java | 2 +- .../strings/android_chrome_strings.grd | 7 ++++++ .../java/res/layout/control_container.xml | 10 ++++---- .../java/res/layout/toolbar_tablet.xml | 2 +- .../java/res/values-sw600dp/dimens.xml | 5 ++-- - .../toolbar/java/res/values/dimens.xml | 5 ++-- + .../toolbar/java/res/values/dimens.xml | 6 +++-- .../browser/toolbar/ControlContainer.java | 2 +- .../toolbar/top/ToolbarControlContainer.java | 24 ++++++++++++++++++- .../browser/toolbar/top/ToolbarLayout.java | 5 +++- - .../TabStripTransitionCoordinator.java | 2 +- - components/BUILD.gn | 6 ++--- + .../tab_strip/HeightTransitionHandler.java | 2 ++ + .../TabStripTransitionCoordinator.java | 6 ++++- .../res/xml/accessibility_preferences.xml | 5 ++++ .../AccessibilitySettingsDelegate.java | 11 +++++++++ - .../chromium/ui/base/DeviceFormFactor.java | 9 +++++++ - 31 files changed, 158 insertions(+), 30 deletions(-) + .../chromium/ui/base/DeviceFormFactor.java | 14 +++++++++++ + 33 files changed, 175 insertions(+), 27 deletions(-) diff --git a/chrome/android/java/res/layout/custom_tabs_control_container.xml b/chrome/android/java/res/layout/custom_tabs_control_container.xml --- a/chrome/android/java/res/layout/custom_tabs_control_container.xml @@ -78,7 +80,7 @@ diff --git a/chrome/android/java/res/values-sw600dp/dimens.xml b/chrome/android/ diff --git a/chrome/android/java/res/values/dimens.xml b/chrome/android/java/res/values/dimens.xml --- a/chrome/android/java/res/values/dimens.xml +++ b/chrome/android/java/res/values/dimens.xml -@@ -118,9 +118,13 @@ found in the LICENSE file. +@@ -115,9 +115,13 @@ found in the LICENSE file. 16dp @@ -93,6 +95,26 @@ diff --git a/chrome/android/java/res/values/dimens.xml b/chrome/android/java/res 375dp 60dp +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 +@@ -51,6 +51,7 @@ import org.chromium.chrome.browser.metrics.UmaSessionStats; + import org.chromium.chrome.browser.night_mode.GlobalNightModeStateProviderHolder; + import org.chromium.chrome.browser.night_mode.NightModeStateProvider; + import org.chromium.chrome.browser.night_mode.NightModeUtils; ++import org.chromium.chrome.browser.preferences.ChromeSharedPreferences; + import org.chromium.components.browser_ui.util.AutomotiveUtils; + import org.chromium.ui.display.DisplaySwitches; + import org.chromium.ui.display.DisplayUtil; +@@ -123,6 +124,8 @@ public class ChromeBaseAppCompatActivity extends AppCompatActivity + protected void attachBaseContext(Context newBase) { + super.attachBaseContext(newBase); + ++ ChromeSharedPreferences.warmUp(); ++ + // Make sure the "chrome" split is loaded before checking if ClassLoaders are equal. + SplitChromeApplication.finishPreload(CHROME_SPLIT_NAME); + ClassLoader chromeModuleClassLoader = ChromeBaseAppCompatActivity.class.getClassLoader(); 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 @@ -118,7 +140,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/WarmupManager.j diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/AccessibilitySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/AccessibilitySettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/AccessibilitySettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/AccessibilitySettings.java -@@ -18,6 +18,7 @@ import org.chromium.chrome.browser.preferences.Pref; +@@ -20,6 +20,7 @@ import org.chromium.chrome.browser.preferences.Pref; import org.chromium.chrome.browser.settings.SettingsLauncherFactory; import org.chromium.chrome.browser.settings.ChromeBaseSettingsFragment; import org.chromium.components.browser_ui.accessibility.AccessibilitySettingsDelegate; @@ -126,7 +148,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/s import org.chromium.components.browser_ui.accessibility.FontSizePrefs; import org.chromium.components.browser_ui.accessibility.FontSizePrefs.FontSizePrefsObserver; import org.chromium.components.browser_ui.accessibility.PageZoomPreference; -@@ -47,6 +48,9 @@ public class AccessibilitySettings extends ChromeBaseSettingsFragment +@@ -50,6 +51,9 @@ public class AccessibilitySettings extends ChromeBaseSettingsFragment public static final String PREF_ZOOM_INFO = "zoom_info"; public static final String PREF_IMAGE_DESCRIPTIONS = "image_descriptions"; @@ -136,7 +158,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/s private TextScalePreference mTextScalePref; private PageZoomPreference mPageZoomDefaultZoomPref; private ChromeSwitchPreference mPageZoomIncludeOSAdjustment; -@@ -144,6 +148,12 @@ public class AccessibilitySettings extends ChromeBaseSettingsFragment +@@ -151,6 +155,12 @@ public class AccessibilitySettings extends ChromeBaseSettingsFragment mPrefService.getBoolean(Pref.READER_FOR_ACCESSIBILITY)); readerForAccessibilityPref.setOnPreferenceChangeListener(this); @@ -149,7 +171,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/s Preference captions = findPreference(PREF_CAPTIONS); captions.setOnPreferenceClickListener( preference -> { -@@ -216,6 +226,9 @@ public class AccessibilitySettings extends ChromeBaseSettingsFragment +@@ -223,6 +233,9 @@ public class AccessibilitySettings extends ChromeBaseSettingsFragment mFontSizePrefs.setUserFontScaleFactor((Float) newValue); } else if (PREF_FORCE_ENABLE_ZOOM.equals(preference.getKey())) { mFontSizePrefs.setForceEnableZoomFromUser((Boolean) newValue); @@ -191,7 +213,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 -@@ -870,7 +870,9 @@ public abstract class ChromeActivity +@@ -861,7 +861,9 @@ public abstract class ChromeActivity // Inflate the correct toolbar layout for the device. int toolbarLayoutId = getToolbarLayoutId(); if (toolbarLayoutId != ActivityUtils.NO_RESOURCE_ID && controlContainer != null) { @@ -205,7 +227,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 -@@ -89,6 +89,7 @@ import org.chromium.components.prefs.PrefService; +@@ -90,6 +90,7 @@ import org.chromium.components.prefs.PrefService; import org.chromium.components.tab_groups.TabGroupColorId; import org.chromium.components.user_prefs.UserPrefs; import org.chromium.ui.MotionEventUtils; @@ -213,7 +235,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.interpolators.Interpolators; -@@ -5176,8 +5177,13 @@ public class StripLayoutHelper implements StripLayoutTabDelegate, StripLayoutGro +@@ -5273,8 +5274,13 @@ public class StripLayoutHelper mTabMenu.setAnchorView(tabView); // 3. Set the vertical offset to align the tab menu with bottom of the tab strip int tabHeight = mManagerHost.getHeight(); @@ -232,15 +254,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/overlays/strip/StripLayoutHelperManager.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelperManager.java --- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelperManager.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelperManager.java -@@ -90,6 +90,7 @@ import org.chromium.chrome.browser.ui.system.StatusBarColorController; - import org.chromium.components.browser_ui.styles.SemanticColorUtils; - import org.chromium.components.browser_ui.widget.scrim.ScrimProperties; - import org.chromium.content_public.browser.LoadUrlParams; -+import org.chromium.ui.base.DeviceFormFactor; - import org.chromium.ui.base.LocalizationUtils; - import org.chromium.ui.base.PageTransition; - import org.chromium.ui.base.WindowAndroid; -@@ -455,11 +456,15 @@ public class StripLayoutHelperManager +@@ -455,7 +455,10 @@ public class StripLayoutHelperManager mIsLayoutOptimizationsEnabled = ToolbarFeatures.isTabStripWindowLayoutOptimizationEnabled(true); @@ -252,15 +266,29 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over mHeight = mIsLayoutOptimizationsEnabled ? toolbarManager.getTabStripHeightSupplier().get() / mDensity - : mScrollableStripHeight; -+ - mTopPadding = mHeight - mScrollableStripHeight; - mDesktopWindowStateProvider = desktopWindowStateProvider; - mStripVisibilityStateSupplier = new ObservableSupplierImpl<>(StripVisibilityState.UNKNOWN); +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 +@@ -17,6 +17,7 @@ import org.chromium.base.library_loader.LibraryProcessType; + import org.chromium.base.task.ChainedTasks; + import org.chromium.base.task.TaskTraits; + 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; +@@ -107,6 +108,7 @@ public class ChromeBrowserInitializer { + public void handlePreNativeStartupAndLoadLibraries(final BrowserParts parts) { + ThreadUtils.checkUiThread(); + if (parts.isActivityFinishingOrDestroyed()) return; ++ ChromeSharedPreferences.warmUp(); + ProcessInitializationHandler.getInstance().initializePreNative(); + ProcessInitializationHandler.getInstance().initializePreNativeLibraryLoad(); + try (TraceEvent e = TraceEvent.scoped("ChromeBrowserInitializer.preInflationStartup")) { 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 -@@ -531,7 +531,9 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { +@@ -556,7 +556,9 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { @Override public int getControlContainerHeightResource() { @@ -274,7 +302,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 -@@ -103,6 +103,7 @@ import org.chromium.chrome.browser.password_manager.ManagePasswordsReferrer; +@@ -104,6 +104,7 @@ import org.chromium.chrome.browser.password_manager.ManagePasswordsReferrer; import org.chromium.chrome.browser.password_manager.PasswordManagerLauncher; import org.chromium.chrome.browser.pdf.PdfPage; import org.chromium.chrome.browser.preferences.ChromeSharedPreferences; @@ -282,7 +310,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordi import org.chromium.chrome.browser.price_insights.PriceInsightsButtonController; import org.chromium.chrome.browser.price_tracking.CurrentTabPriceTrackingStateSupplier; import org.chromium.chrome.browser.price_tracking.PriceTrackingButtonController; -@@ -1740,7 +1741,9 @@ public class RootUiCoordinator +@@ -1775,7 +1776,9 @@ public class RootUiCoordinator if (!mSupportsFindInPageSupplier.getAsBoolean()) return; int stubId = R.id.find_toolbar_stub; @@ -327,7 +355,7 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro @JNINamespace("android::shared_preferences") public class ChromeSharedPreferences { public static final PreferenceKeyRegistry REGISTRY = -@@ -23,6 +25,12 @@ public class ChromeSharedPreferences { +@@ -23,6 +25,16 @@ public class ChromeSharedPreferences { LegacyChromePreferenceKeys.getPrefixesInUse()) : null); @@ -336,6 +364,10 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro + ChromeSharedPreferences.getInstance().readBoolean( + ChromePreferenceKeys.FLAGS_FORCE_TABLET_UI_ENABLED, false)); + } ++ ++ public static void warmUp() { ++ // intentionally empty ++ } + /** * @return The //base SharedPreferencesManager singleton. @@ -351,17 +383,25 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro ChromePreferenceKeys.FONT_USER_SET_FORCE_ENABLE_ZOOM, ChromePreferenceKeys.HISTORY_SHOW_HISTORY_INFO, ChromePreferenceKeys.HOMEPAGE_ENABLED, -diff --git a/chrome/browser/single_tab/android/java/src/org/chromium/chrome/browser/single_tab/SingleTabSwitcherOnNtpMediator.java b/chrome/browser/single_tab/android/java/src/org/chromium/chrome/browser/single_tab/SingleTabSwitcherOnNtpMediator.java ---- a/chrome/browser/single_tab/android/java/src/org/chromium/chrome/browser/single_tab/SingleTabSwitcherOnNtpMediator.java -+++ b/chrome/browser/single_tab/android/java/src/org/chromium/chrome/browser/single_tab/SingleTabSwitcherOnNtpMediator.java -@@ -41,6 +41,7 @@ import org.chromium.components.browser_ui.widget.displaystyle.HorizontalDisplayS - import org.chromium.components.browser_ui.widget.displaystyle.UiConfig; - import org.chromium.components.browser_ui.widget.displaystyle.UiConfig.DisplayStyle; - import org.chromium.components.embedder_support.util.UrlUtilities; +diff --git 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 +--- 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 +@@ -30,6 +30,7 @@ import org.chromium.chrome.browser.lifecycle.ActivityLifecycleDispatcher; + import org.chromium.chrome.browser.lifecycle.SaveInstanceStateObserver; + import org.chromium.chrome.browser.lifecycle.TopResumedActivityChangedObserver; + import org.chromium.chrome.browser.ui.desktop_windowing.AppHeaderUtils.DesktopWindowHeuristicResult; +import org.chromium.ui.base.DeviceFormFactor; - import org.chromium.ui.modelutil.PropertyModel; - import org.chromium.url.GURL; - + import org.chromium.ui.InsetObserver; + import org.chromium.ui.InsetsRectProvider; + import org.chromium.ui.util.ColorUtils; +@@ -238,6 +239,7 @@ public class AppHeaderCoordinator + InsetObserver insetObserver, + InsetsRectProvider insetsRectProvider, + @DesktopWindowHeuristicResult int currentResult) { ++ if (DeviceFormFactor.isForceTabletUI()) return DesktopWindowHeuristicResult.IN_DESKTOP_WINDOW; + @DesktopWindowHeuristicResult int newResult; + + assert insetObserver.getLastRawWindowInsets() != null 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 @@ -377,7 +417,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 -@@ -1664,6 +1664,13 @@ Your Google account may have other forms of browsing history like searches and a +@@ -1721,6 +1721,13 @@ Your Google account may have other forms of browsing history like searches and a Hide your IP address @@ -467,7 +507,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/res/values-sw600dp/dimens.xm diff --git a/chrome/browser/ui/android/toolbar/java/res/values/dimens.xml b/chrome/browser/ui/android/toolbar/java/res/values/dimens.xml --- a/chrome/browser/ui/android/toolbar/java/res/values/dimens.xml +++ b/chrome/browser/ui/android/toolbar/java/res/values/dimens.xml -@@ -10,8 +10,9 @@ found in the LICENSE file. +@@ -10,8 +10,10 @@ found in the LICENSE file. 10dp @@ -476,6 +516,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/res/values/dimens.xml b/chro + 0dp + 40dp + 0dp ++ 2dp 64dp @@ -544,7 +585,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; -@@ -634,7 +635,9 @@ public abstract class ToolbarLayout extends FrameLayout +@@ -642,7 +643,9 @@ public abstract class ToolbarLayout extends FrameLayout * not have a tab strip. */ protected int getTabStripHeightFromResource() { @@ -555,48 +596,48 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow } /** Triggered when the content view for the specified tab has changed. */ +diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/tab_strip/HeightTransitionHandler.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/tab_strip/HeightTransitionHandler.java +--- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/tab_strip/HeightTransitionHandler.java ++++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/tab_strip/HeightTransitionHandler.java +@@ -27,6 +27,7 @@ import org.chromium.chrome.browser.toolbar.top.ToolbarLayout; + import org.chromium.chrome.browser.toolbar.top.tab_strip.TabStripTransitionCoordinator.TabStripHeightObserver; + import org.chromium.chrome.browser.toolbar.top.tab_strip.TabStripTransitionCoordinator.TabStripTransitionDelegate; + import org.chromium.ui.base.ViewUtils; ++import org.chromium.ui.base.DeviceFormFactor; + import org.chromium.ui.resources.dynamics.DynamicResourceReadyOnceCallback; + + /** +@@ -450,6 +451,7 @@ class HeightTransitionHandler { + if (TabStripTransitionCoordinator.sHeightTransitionThresholdForTesting != null) { + return TabStripTransitionCoordinator.sHeightTransitionThresholdForTesting; + } ++ if (DeviceFormFactor.isForceTabletUI()) return 0; + return TRANSITION_THRESHOLD_DP; + } + } diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/tab_strip/TabStripTransitionCoordinator.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/tab_strip/TabStripTransitionCoordinator.java --- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/tab_strip/TabStripTransitionCoordinator.java +++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/tab_strip/TabStripTransitionCoordinator.java -@@ -151,7 +151,7 @@ public class TabStripTransitionCoordinator implements ComponentCallbacks, AppHea +@@ -27,6 +27,7 @@ import org.chromium.chrome.browser.ui.desktop_windowing.AppHeaderState; + import org.chromium.chrome.browser.ui.desktop_windowing.AppHeaderUtils; + import org.chromium.chrome.browser.ui.desktop_windowing.DesktopWindowStateProvider; + import org.chromium.chrome.browser.ui.desktop_windowing.DesktopWindowStateProvider.AppHeaderObserver; ++import org.chromium.ui.base.DeviceFormFactor; + import org.chromium.ui.util.TokenHolder; + + /** Class used to manage tab strip visibility and height updates. */ +@@ -151,7 +152,10 @@ public class TabStripTransitionCoordinator implements ComponentCallbacks, AppHea mTabStripReservedTopPadding = controlContainerView() .getResources() - .getDimensionPixelSize(R.dimen.tab_strip_reserved_top_padding); -+ .getDimensionPixelSize(R.dimen.tab_strip_reserved_top_padding_cromite); ++ .getDimensionPixelSize( ++ DeviceFormFactor.isForceTabletUI() ++ ? R.dimen.tab_strip_reserved_top_padding_tabletui ++ : R.dimen.tab_strip_reserved_top_padding_cromite); mOnLayoutChangedListener = (view, left, top, right, bottom, oldLeft, oldTop, oldRight, oldBottom) -> { -diff --git a/components/BUILD.gn b/components/BUILD.gn ---- a/components/BUILD.gn -+++ b/components/BUILD.gn -@@ -70,7 +70,7 @@ if (is_ios) { - - # Omit Lacros because it allows //components to depend on //chrome, which in - # turn depends on //extensions. --if (!is_chromeos_lacros) { -+if (!is_chromeos_lacros && !is_android) { - disallowed_extension_deps_ = [ - # Components should largely not depend on //extensions. Since // extensions - # is not a component target and is linked with //chrome, depending on most -@@ -868,7 +868,7 @@ test("components_unittests") { - # On other platforms, no components should depend on Chrome. - # Since //chrome depends on //extensions, we also only assert_no_deps on - # extensions targets for non-lacros builds. -- if (!is_chromeos_lacros) { -+ if (!is_chromeos_lacros && !is_android) { - assert_no_deps = [ "//chrome/*" ] - assert_no_deps += disallowed_extension_deps_ - } -@@ -1161,7 +1161,7 @@ if (use_blink) { - # dependency. On other platforms, no components should depend on Chrome. - # Since //chrome depends on //extensions, we also only assert_no_deps on - # extensions targets for non-lacros builds. -- if (!is_chromeos_lacros) { -+ if (!is_chromeos_lacros && !is_android) { - assert_no_deps = [ "//chrome/*" ] - assert_no_deps += disallowed_extension_deps_ - } diff --git a/components/browser_ui/accessibility/android/java/res/xml/accessibility_preferences.xml b/components/browser_ui/accessibility/android/java/res/xml/accessibility_preferences.xml --- a/components/browser_ui/accessibility/android/java/res/xml/accessibility_preferences.xml +++ b/components/browser_ui/accessibility/android/java/res/xml/accessibility_preferences.xml @@ -643,11 +684,11 @@ diff --git a/components/browser_ui/accessibility/android/java/src/org/chromium/c diff --git a/ui/android/java/src/org/chromium/ui/base/DeviceFormFactor.java b/ui/android/java/src/org/chromium/ui/base/DeviceFormFactor.java --- a/ui/android/java/src/org/chromium/ui/base/DeviceFormFactor.java +++ b/ui/android/java/src/org/chromium/ui/base/DeviceFormFactor.java -@@ -31,6 +31,14 @@ public class DeviceFormFactor { - /** Matches the value set in res/values-sw720dp/values.xml */ - private static final int SCREEN_BUCKET_LARGET_TABLET = 3; +@@ -35,6 +35,14 @@ public class DeviceFormFactor { + /** See {@link #setIsTabletForTesting(boolean)}. */ + private static Boolean sIsTabletForTesting; -+ private static boolean mForceTabletUI = true; ++ private static boolean mForceTabletUI = false; + public static void setForceTabletUI(boolean forceTabletUI) { + mForceTabletUI = forceTabletUI; + } @@ -657,13 +698,53 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/DeviceFormFactor.java b/ui + /** * Each activity could be on a different display, and this will just tell you whether the - * display associated with the application context is "tablet sized". -@@ -56,6 +64,7 @@ public class DeviceFormFactor { - * E.g. http://developer.samsung.com/samsung-dex/testing + * display associated with the application context is "tablet sized". Use {@link +@@ -43,6 +51,7 @@ public class DeviceFormFactor { + @CalledByNative + @Deprecated + public static boolean isTablet() { ++ if (mForceTabletUI) return true; + if (sIsTabletForTesting != null) { + return sIsTabletForTesting; + } +@@ -73,6 +82,7 @@ public class DeviceFormFactor { + * E.g. http://developer.samsung.com/samsung-dex/testing */ public static boolean isNonMultiDisplayContextOnTablet(Context context) { + if (mForceTabletUI) return true; return detectScreenWidthBucket(context) >= SCREEN_BUCKET_TABLET; } +@@ -108,6 +118,7 @@ public class DeviceFormFactor { + * @return The screen width bucket the device is in (see constants at the top of this class). + */ + private static int detectScreenWidthBucket(Context context) { ++ if (mForceTabletUI) return SCREEN_BUCKET_TABLET; + return context.getResources().getInteger(R.integer.min_screen_width_bucket); + } + +@@ -115,6 +126,7 @@ public class DeviceFormFactor { + ThreadUtils.assertOnUiThread(); + Context context = windowAndroid.getContext().get(); + if (context == null) return 0; ++ if (mForceTabletUI) return SCREEN_BUCKET_TABLET; + return context.getResources().getInteger(R.integer.min_screen_width_bucket); + } + +@@ -124,6 +136,7 @@ public class DeviceFormFactor { + */ + @UiThread + public static int getNonMultiDisplayMinimumTabletWidthPx(Context context) { ++ if (mForceTabletUI) return 0; + return getMinimumTabletWidthPx(DisplayAndroid.getNonMultiDisplay(context)); + } + +@@ -132,6 +145,7 @@ public class DeviceFormFactor { + * layout. + */ + public static int getMinimumTabletWidthPx(DisplayAndroid display) { ++ if (mForceTabletUI) return 0; + return DisplayUtil.dpToPx(display, DeviceFormFactor.MINIMUM_TABLET_WIDTH_DP); + } + } -- 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 541018cd101c30ca905a67e759527f0105b12b42..41571325f163513a532eb3bc8ea6f1c52de9a735 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 @@ -28,7 +28,7 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java -@@ -41,6 +41,7 @@ import org.chromium.base.BuildInfo; +@@ -43,6 +43,7 @@ import org.chromium.base.BuildInfo; import org.chromium.base.Callback; import org.chromium.base.CallbackController; import org.chromium.base.CommandLine; @@ -36,9 +36,9 @@ 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; -@@ -1477,8 +1478,10 @@ public class ChromeTabbedActivity extends ChromeActivityBEGIN_LINKdelete the Chrome d +@@ -5488,6 +5488,12 @@ To change this setting, BEGIN_LINKdelete the Chrome d IMAGE 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 5d6f997dab27b481029ffa58134e963521fbb712..30bf001f06d1da31e615d106dcb4016d49a17388 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 @@ -23,15 +23,15 @@ 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/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 -@@ -20,6 +20,7 @@ import org.chromium.base.supplier.LazyOneshotSupplier; - import org.chromium.base.supplier.ObservableSupplier; - import org.chromium.base.supplier.ObservableSupplierImpl; - import org.chromium.base.supplier.OneshotSupplier; +@@ -22,6 +22,7 @@ import org.chromium.base.supplier.OneshotSupplier; + import org.chromium.chrome.R; + import org.chromium.chrome.browser.data_sharing.ui.shared_image_tiles.SharedImageTilesCoordinator; + import org.chromium.chrome.browser.flags.ChromeFeatureList; +import org.chromium.chrome.browser.homepage.HomepageManager; import org.chromium.chrome.browser.layouts.LayoutStateProvider; import org.chromium.chrome.browser.layouts.LayoutStateProvider.LayoutStateObserver; import org.chromium.chrome.browser.layouts.LayoutType; -@@ -433,10 +434,15 @@ public class TabGroupUiMediator implements BackPressHandler { +@@ -392,10 +393,15 @@ public class TabGroupUiMediator implements BackPressHandler { assert relatedTabs.size() > 0; parentTabToAttach = relatedTabs.get(relatedTabs.size() - 1); @@ -51,7 +51,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabUiUtils.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabUiUtils.java --- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabUiUtils.java +++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabUiUtils.java -@@ -31,6 +31,8 @@ import org.chromium.components.tab_group_sync.SavedTabGroup; +@@ -35,6 +35,8 @@ import org.chromium.components.tab_group_sync.SavedTabGroup; import org.chromium.components.tab_group_sync.TabGroupSyncService; import org.chromium.components.tab_groups.TabGroupColorId; import org.chromium.content_public.browser.LoadUrlParams; @@ -60,7 +60,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser import java.util.List; import java.util.Objects; -@@ -191,8 +193,13 @@ public class TabUiUtils { +@@ -195,8 +197,13 @@ public class TabUiUtils { List relatedTabs = filter.getRelatedTabList(tabId); assert relatedTabs.size() > 0; @@ -119,7 +119,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/Homepa diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/settings/HomepageSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/homepage/settings/HomepageSettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/homepage/settings/HomepageSettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/homepage/settings/HomepageSettings.java -@@ -22,6 +22,7 @@ import org.chromium.components.browser_ui.settings.SettingsUtils; +@@ -24,6 +24,7 @@ import org.chromium.components.browser_ui.settings.SettingsUtils; import org.chromium.components.embedder_support.util.UrlUtilities; import org.chromium.components.url_formatter.UrlFormatter; import org.chromium.url.GURL; @@ -127,7 +127,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/settin /** Fragment that allows the user to configure homepage related preferences. */ public class HomepageSettings extends ChromeBaseSettingsFragment { -@@ -30,6 +31,8 @@ public class HomepageSettings extends ChromeBaseSettingsFragment { +@@ -32,6 +33,8 @@ public class HomepageSettings extends ChromeBaseSettingsFragment { @VisibleForTesting public static final String PREF_HOMEPAGE_RADIO_GROUP = "homepage_radio_group"; @@ -135,8 +135,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/settin + private HomepageManager mHomepageManager; private RadioButtonGroupHomepagePreference mRadioButtons; - -@@ -64,6 +67,15 @@ public class HomepageSettings extends ChromeBaseSettingsFragment { + private final ObservableSupplierImpl mPageTitle = new ObservableSupplierImpl<>(); +@@ -67,6 +70,15 @@ public class HomepageSettings extends ChromeBaseSettingsFragment { }); mRadioButtons.setupPreferenceValues(createPreferenceValuesForRadioGroup()); @@ -213,7 +213,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 -@@ -1453,6 +1453,9 @@ Your Google account may have other forms of browsing history like searches and a +@@ -1507,6 +1507,9 @@ Your Google account may have other forms of browsing history like searches and a Last hour @@ -238,7 +238,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 -@@ -1361,6 +1361,10 @@ inline constexpr char kShowHomeButton[] = "browser.show_home_button"; +@@ -1365,6 +1365,10 @@ inline constexpr char kShowHomeButton[] = "browser.show_home_button"; // toolbar. inline constexpr char kShowForwardButton[] = "browser.show_forward_button"; diff --git a/build/cromite_patches/Add-search-engine.patch b/build/cromite_patches/Add-search-engine.patch index 47e98c7b636bd77abda52f6f27bbe55a8d0f31db..08b52dfe16bbcd42e8728c09af3255018ddb30f5 100644 --- a/build/cromite_patches/Add-search-engine.patch +++ b/build/cromite_patches/Add-search-engine.patch @@ -60,8 +60,8 @@ diff --git a/components/resources/search_engine_choice_scaled_resources.grdp b/c diff --git a/components/search_engines/prepopulated_engines.json b/components/search_engines/prepopulated_engines.json --- a/components/search_engines/prepopulated_engines.json +++ b/components/search_engines/prepopulated_engines.json -@@ -115,6 +115,16 @@ - "id": 92 +@@ -133,6 +133,16 @@ + ] }, + "duckduckgo_light": { @@ -77,7 +77,7 @@ diff --git a/components/search_engines/prepopulated_engines.json b/components/se "ecosia": { "name": "Ecosia", "keyword": "ecosia.org", -@@ -184,6 +194,27 @@ +@@ -208,6 +218,27 @@ "id": 111 }, @@ -108,7 +108,7 @@ diff --git a/components/search_engines/prepopulated_engines.json b/components/se 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 -@@ -219,10 +219,7 @@ void RecordChoiceScreenDefaultSearchProviderType(SearchEngineType engine_type) { +@@ -178,10 +178,7 @@ void RecordChoiceScreenDefaultSearchProviderType(SearchEngineType engine_type) { } void RecordChoiceScreenSelectedIndex(int selected_engine_index) { @@ -144,7 +144,7 @@ diff --git a/components/search_engines/search_engine_type.h b/components/search_ +++ b/components/search_engines/search_engine_type.h @@ -91,10 +91,15 @@ enum SearchEngineType { SEARCH_ENGINE_YOU = 72, - SEARCH_ENGINE_STARTER_PACK_ASK_GOOGLE = 73, + SEARCH_ENGINE_STARTER_PACK_GEMINI = 73, SEARCH_ENGINE_LILO = 74, + SEARCH_ENGINE_GOOGLE_EN = 75, + SEARCH_ENGINE_DUCKDUCKGOLIGHT = 76, @@ -161,7 +161,7 @@ diff --git a/components/search_engines/search_engine_type.h b/components/search_ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/components/search_engines/template_url_prepopulate_data.cc --- a/components/search_engines/template_url_prepopulate_data.cc +++ b/components/search_engines/template_url_prepopulate_data.cc -@@ -85,7 +85,6 @@ GetPrepopulatedEnginesForEeaRegionCountries(int country_id, +@@ -83,7 +83,6 @@ GetPrepopulatedEnginesForEeaRegionCountries(int country_id, generator.seed(profile_seed); std::shuffle(t_urls.begin(), t_urls.end(), generator); diff --git a/build/cromite_patches/Add-site-engagement-flag.patch b/build/cromite_patches/Add-site-engagement-flag.patch index c24725a8ba6a75a4e4ae65071af019132582e292..2a00fae854bc5b8ceda5faa3f8ea1627eaa9759d 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 -@@ -160,6 +160,7 @@ +@@ -159,6 +159,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" @@ -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" -@@ -112,6 +113,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 08351af4bd5605714a01291cbb3033441a1b9536..9d4f1b72d484cda0361b8f9c6433d4278247f286 100644 --- a/build/cromite_patches/Add-support-for-ISupportHelpAndFeedback.patch +++ b/build/cromite_patches/Add-support-for-ISupportHelpAndFeedback.patch @@ -12,16 +12,16 @@ 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 -@@ -96,6 +96,7 @@ import org.chromium.components.browser_ui.modaldialog.AppModalPresenter; - import org.chromium.components.browser_ui.settings.CustomDividerFragment; - import org.chromium.components.browser_ui.settings.FragmentSettingsLauncher; - import org.chromium.components.browser_ui.settings.PaddedItemDecorationWithDivider; +@@ -54,6 +54,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; +import org.chromium.components.browser_ui.settings.SettingsUtils; - import org.chromium.components.browser_ui.site_settings.BaseSiteSettingsFragment; - import org.chromium.components.browser_ui.site_settings.SiteSettingsCategory; + import org.chromium.components.browser_ui.modaldialog.AppModalPresenter; + import org.chromium.components.browser_ui.settings.SettingsPage; import org.chromium.components.browser_ui.util.TraceEventVectorDrawableCompat; -@@ -510,8 +511,12 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity - finish(); +@@ -419,8 +420,12 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity + } return true; } else if (item.getItemId() == R.id.menu_id_general_help) { - HelpAndFeedbackLauncherImpl.getForProfile(mProfile) diff --git a/build/cromite_patches/Add-support-for-writing-URIs.patch b/build/cromite_patches/Add-support-for-writing-URIs.patch index ecea32d16c9e4b063007050de4cae7e23756139e..c4a1b8a098585b56be59f8f5f5aee77428268320 100644 --- a/build/cromite_patches/Add-support-for-writing-URIs.patch +++ b/build/cromite_patches/Add-support-for-writing-URIs.patch @@ -57,8 +57,8 @@ diff --git a/base/android/java/src/org/chromium/base/ContentUriUtils.java b/base import android.provider.DocumentsContract; import android.provider.MediaStore; import android.text.TextUtils; -@@ -22,6 +23,9 @@ import org.jni_zero.CalledByNative; - import java.io.File; +@@ -21,6 +22,9 @@ import org.jni_zero.CalledByNative; + import java.io.IOException; +import android.system.Os; @@ -67,7 +67,7 @@ diff --git a/base/android/java/src/org/chromium/base/ContentUriUtils.java b/base /** This class provides methods to access content URI schemes. */ public abstract class ContentUriUtils { private static final String TAG = "ContentUriUtils"; -@@ -89,6 +93,36 @@ public abstract class ContentUriUtils { +@@ -47,6 +51,36 @@ public abstract class ContentUriUtils { return -1; } diff --git a/build/cromite_patches/Add-webRTC-site-settings.patch b/build/cromite_patches/Add-webRTC-site-settings.patch index 7d48121da53a62e103893ecea3808ae5d9ecfafb..8d26c555be35e410a8e8099262dad53029d64e9b 100644 --- a/build/cromite_patches/Add-webRTC-site-settings.patch +++ b/build/cromite_patches/Add-webRTC-site-settings.patch @@ -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" -@@ -889,6 +890,11 @@ PeerConnectionDependencyFactory::CreatePortAllocator( +@@ -887,6 +888,11 @@ PeerConnectionDependencyFactory::CreatePortAllocator( // origin. WebRTCIPHandlingPolicy policy = GetWebRTCIPHandlingPolicy(webrtc_ip_handling_policy); @@ -246,7 +246,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" -@@ -1013,6 +1015,14 @@ RTCRtpCapabilities* RTCRtpSender::getCapabilities(ScriptState* state, +@@ -1027,6 +1029,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 e82becb5f9a072fa3a1316039a93be1ad4272d57..99dd74252acfd693e36d0a13e4474369a26565c2 100644 --- a/build/cromite_patches/Allow-building-without-enable_reporting.patch +++ b/build/cromite_patches/Allow-building-without-enable_reporting.patch @@ -124,7 +124,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 -@@ -14727,12 +14727,6 @@ void RenderFrameHostImpl::MaybeGenerateCrashReport( +@@ -14982,12 +14982,6 @@ void RenderFrameHostImpl::MaybeGenerateCrashReport( } } } @@ -218,7 +218,7 @@ diff --git a/content/browser/web_package/signed_exchange_reporter.cc b/content/b --- a/content/browser/web_package/signed_exchange_reporter.cc +++ b/content/browser/web_package/signed_exchange_reporter.cc @@ -128,6 +128,7 @@ void ReportResult( - int frame_tree_node_id, + FrameTreeNodeId frame_tree_node_id, network::mojom::SignedExchangeReportPtr report, const net::NetworkAnonymizationKey& network_anonymization_key) { +#if BUILDFLAG(ENABLE_REPORTING) @@ -254,7 +254,7 @@ new file mode 100644 diff --git a/net/base/features.cc b/net/base/features.cc --- a/net/base/features.cc +++ b/net/base/features.cc -@@ -217,6 +217,7 @@ extern const base::FeatureParam kTimeoutTcpConnectAttemptMax( +@@ -219,6 +219,7 @@ extern const base::FeatureParam kTimeoutTcpConnectAttemptMax( base::Seconds(30)); #if BUILDFLAG(ENABLE_REPORTING) @@ -348,7 +348,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/ranges/algorithm.h" -@@ -1239,6 +1240,7 @@ void ContentSecurityPolicy::ReportViolation( +@@ -1241,6 +1242,7 @@ void ContentSecurityPolicy::ReportViolation( return; } @@ -356,7 +356,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); -@@ -1246,6 +1248,7 @@ void ContentSecurityPolicy::ReportViolation( +@@ -1248,6 +1250,7 @@ void ContentSecurityPolicy::ReportViolation( // `context_frame` (i.e. we're not processing 'frame-ancestors'). if (delegate_ && !context_frame) delegate_->DispatchViolationEvent(*violation_data, element); @@ -367,7 +367,7 @@ diff --git a/third_party/blink/renderer/core/frame/csp/content_security_policy.c diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc --- a/third_party/blink/renderer/core/frame/local_frame.cc +++ b/third_party/blink/renderer/core/frame/local_frame.cc -@@ -45,6 +45,7 @@ +@@ -46,6 +46,7 @@ #include "build/build_config.h" #include "mojo/public/cpp/bindings/self_owned_receiver.h" #include "mojo/public/cpp/system/message_pipe.h" @@ -375,8 +375,8 @@ 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" -@@ -2771,9 +2772,11 @@ void LocalFrame::MainFrameFirstMeaningfulPaint() { - v8_local_compile_hints_producer_->GenerateData(kIsFinalData); +@@ -2784,9 +2785,11 @@ DocumentResourceCoordinator* LocalFrame::GetDocumentResourceCoordinator() { + return CHECK_DEREF(GetDocument()).GetResourceCoordinator(); } +#if BUILDFLAG(ENABLE_REPORTING) diff --git a/build/cromite_patches/Allow-building-without-supervised-users.patch b/build/cromite_patches/Allow-building-without-supervised-users.patch index 44dd142584a3a57237b1bd3f20fe472044abd17d..776b4d3d8f602122a333ef95ad0a30fac0076a06 100644 --- a/build/cromite_patches/Allow-building-without-supervised-users.patch +++ b/build/cromite_patches/Allow-building-without-supervised-users.patch @@ -23,7 +23,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 -@@ -783,7 +783,6 @@ if (current_toolchain == default_toolchain) { +@@ -794,7 +794,6 @@ if (current_toolchain == 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", @@ -88,7 +88,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 -@@ -694,10 +694,6 @@ void ProfileImpl::DoFinalInit(CreateMode create_mode) { +@@ -697,10 +697,6 @@ void ProfileImpl::DoFinalInit(CreateMode create_mode) { prefs->SetTime(prefs::kProfileCreationTime, path_creation_time_); pref_change_registrar_.Init(prefs); @@ -99,7 +99,7 @@ diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/p // Changes in the profile avatar. pref_change_registrar_.Add( -@@ -1631,6 +1627,7 @@ GURL ProfileImpl::GetHomePage() { +@@ -1640,6 +1636,7 @@ GURL ProfileImpl::GetHomePage() { } void ProfileImpl::UpdateSupervisedUserIdInStorage() { @@ -110,7 +110,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 -@@ -1213,10 +1213,6 @@ void ProfileManager::InitProfileUserPrefs(Profile* profile) { +@@ -1221,10 +1221,6 @@ void ProfileManager::InitProfileUserPrefs(Profile* profile) { profile->GetPrefs()->SetString(prefs::kProfileName, profile_name); } @@ -121,7 +121,7 @@ diff --git a/chrome/browser/profiles/profile_manager.cc b/chrome/browser/profile #if !BUILDFLAG(IS_ANDROID) if (profile->IsNewProfile()) { profile->GetPrefs()->SetBoolean(prefs::kHasSeenWelcomePage, false); -@@ -2029,9 +2025,6 @@ void ProfileManager::AddProfileToStorage(Profile* profile) { +@@ -2026,9 +2022,6 @@ void ProfileManager::AddProfileToStorage(Profile* profile) { init_params.icon_index = profile->GetPrefs()->GetInteger(prefs::kProfileAvatarIndex); @@ -148,7 +148,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 -@@ -557,10 +557,6 @@ bool ManagementUIHandler::managed() const { +@@ -571,10 +571,6 @@ bool ManagementUIHandler::managed() const { void ManagementUIHandler::RegisterPrefChange( PrefChangeRegistrar& pref_registrar) { @@ -196,7 +196,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 -@@ -48,10 +48,6 @@ void SupervisedUserService::Init() { +@@ -49,10 +49,6 @@ void SupervisedUserService::Init() { DCHECK(settings_service_->IsReady()); pref_change_registrar_.Init(&user_prefs_.get()); @@ -207,7 +207,7 @@ diff --git a/components/supervised_user/core/browser/supervised_user_service.cc FirstTimeInterstitialBannerState banner_state = static_cast( user_prefs_->GetInteger(prefs::kFirstTimeInterstitialBannerState)); -@@ -187,6 +183,7 @@ FirstTimeInterstitialBannerState SupervisedUserService::GetUpdatedBannerState( +@@ -166,6 +162,7 @@ FirstTimeInterstitialBannerState SupervisedUserService::GetUpdatedBannerState( } void SupervisedUserService::SetActive(bool active) { @@ -218,7 +218,7 @@ diff --git a/components/supervised_user/core/browser/supervised_user_service.cc diff --git a/components/supervised_user/core/browser/supervised_user_utils.cc b/components/supervised_user/core/browser/supervised_user_utils.cc --- a/components/supervised_user/core/browser/supervised_user_utils.cc +++ b/components/supervised_user/core/browser/supervised_user_utils.cc -@@ -132,6 +132,7 @@ GURL NormalizeUrl(const GURL& url) { +@@ -116,6 +116,7 @@ GURL NormalizeUrl(const GURL& url) { } bool AreWebFilterPrefsDefault(const PrefService& pref_service) { @@ -229,7 +229,7 @@ diff --git a/components/supervised_user/core/browser/supervised_user_utils.cc b/ diff --git a/components/supervised_user/core/common/features.cc b/components/supervised_user/core/common/features.cc --- a/components/supervised_user/core/common/features.cc +++ b/components/supervised_user/core/common/features.cc -@@ -177,4 +177,10 @@ bool IsKidFriendlyContentFeedAvailable() { +@@ -185,4 +185,10 @@ bool IsKidFriendlyContentFeedAvailable() { return base::FeatureList::IsEnabled(kKidFriendlyContentFeed); } diff --git a/build/cromite_patches/Allow-playing-audio-in-background.patch b/build/cromite_patches/Allow-playing-audio-in-background.patch index f56ac3af60d7a714c82425404e69a2d537c14196..7f42ed9f589df52ff1596f6ba80ca2884a0e9502 100644 --- a/build/cromite_patches/Allow-playing-audio-in-background.patch +++ b/build/cromite_patches/Allow-playing-audio-in-background.patch @@ -11,8 +11,8 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/third_party/blink/renderer/platform/media/web_media_player_impl.cc b/third_party/blink/renderer/platform/media/web_media_player_impl.cc --- a/third_party/blink/renderer/platform/media/web_media_player_impl.cc +++ b/third_party/blink/renderer/platform/media/web_media_player_impl.cc -@@ -1249,6 +1249,12 @@ bool WebMediaPlayerImpl::HasAudio() const { - return pipeline_metadata_.has_audio; +@@ -1263,6 +1263,12 @@ void WebMediaPlayerImpl::OnSelectedVideoTrackChanged( + pipeline_controller_->OnSelectedVideoTrackChanged(selected); } +bool WebMediaPlayerImpl::HasVideoNonEmptySize() const { @@ -22,9 +22,9 @@ diff --git a/third_party/blink/renderer/platform/media/web_media_player_impl.cc +} + void WebMediaPlayerImpl::EnabledAudioTracksChanged( - const WebVector& enabledTrackIds) { + const WebVector& enabled_track_ids) { DCHECK(main_task_runner_->BelongsToCurrentThread()); -@@ -3656,7 +3662,10 @@ bool WebMediaPlayerImpl::ShouldPausePlaybackWhenHidden() const { +@@ -3649,7 +3655,10 @@ bool WebMediaPlayerImpl::ShouldPausePlaybackWhenHidden() const { : HasAudio(); // Audio only stream is allowed to play when in background. @@ -47,6 +47,6 @@ diff --git a/third_party/blink/renderer/platform/media/web_media_player_impl.h b + bool HasVideoNonEmptySize() const; + void EnabledAudioTracksChanged( - const WebVector& enabledTrackIds) override; + const WebVector& enabled_track_ids) override; void SelectedVideoTrackChanged( -- diff --git a/build/cromite_patches/AudioBuffer-AnalyserNode-fp-mitigations.patch b/build/cromite_patches/AudioBuffer-AnalyserNode-fp-mitigations.patch index d14dd5e4e17dc62ed6393e4779011b0947acc301..16ce866f49ee1dc2f9f718725aa098ab584c6a15 100644 --- a/build/cromite_patches/AudioBuffer-AnalyserNode-fp-mitigations.patch +++ b/build/cromite_patches/AudioBuffer-AnalyserNode-fp-mitigations.patch @@ -139,7 +139,7 @@ diff --git a/third_party/blink/renderer/modules/webaudio/base_audio_context.cc b diff --git a/third_party/blink/renderer/modules/webaudio/base_audio_context.h b/third_party/blink/renderer/modules/webaudio/base_audio_context.h --- a/third_party/blink/renderer/modules/webaudio/base_audio_context.h +++ b/third_party/blink/renderer/modules/webaudio/base_audio_context.h -@@ -341,6 +341,8 @@ class MODULES_EXPORT BaseAudioContext +@@ -331,6 +331,8 @@ class MODULES_EXPORT BaseAudioContext // if the execution context does not exist. bool CheckExecutionContextAndThrowIfNecessary(ExceptionState&); @@ -207,7 +207,7 @@ diff --git a/third_party/blink/renderer/modules/webaudio/realtime_analyser.cc b/ 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 -@@ -416,8 +416,8 @@ +@@ -441,8 +441,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 194bc0934fd01554515f7e05fdecfba4beb7ba22..033468ea19e58c604b865717ac8ce03657b4e6c8 100644 --- a/build/cromite_patches/Block-qjz9zk-or-trk-requests.patch +++ b/build/cromite_patches/Block-qjz9zk-or-trk-requests.patch @@ -49,7 +49,7 @@ diff --git a/chrome/browser/history/history_utils.cc b/chrome/browser/history/hi diff --git a/chrome/browser/ui/singleton_tabs.cc b/chrome/browser/ui/singleton_tabs.cc --- a/chrome/browser/ui/singleton_tabs.cc +++ b/chrome/browser/ui/singleton_tabs.cc -@@ -169,6 +169,11 @@ int GetIndexOfExistingTab(Browser* browser, const NavigateParams& params) { +@@ -127,6 +127,11 @@ int GetIndexOfExistingTab(Browser* browser, const NavigateParams& params) { continue; } @@ -107,7 +107,7 @@ diff --git a/components/url_formatter/url_fixer.cc b/components/url_formatter/ur diff --git a/content/browser/child_process_security_policy_impl.cc b/content/browser/child_process_security_policy_impl.cc --- a/content/browser/child_process_security_policy_impl.cc +++ b/content/browser/child_process_security_policy_impl.cc -@@ -867,6 +867,7 @@ ChildProcessSecurityPolicyImpl::ChildProcessSecurityPolicyImpl() +@@ -866,6 +866,7 @@ ChildProcessSecurityPolicyImpl::ChildProcessSecurityPolicyImpl() RegisterPseudoScheme(url::kJavaScriptScheme); RegisterPseudoScheme(kViewSourceScheme); RegisterPseudoScheme(kGoogleChromeScheme); @@ -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 -@@ -1048,6 +1048,8 @@ component("net") { +@@ -1062,6 +1062,8 @@ component("net") { "url_request/url_request_http_job.cc", "url_request/url_request_http_job.h", "url_request/url_request_interceptor.cc", @@ -202,8 +202,8 @@ diff --git a/net/url_request/url_request.cc b/net/url_request/url_request.cc +#include "base/strings/string_util.h" #include "base/synchronization/lock.h" #include "base/task/single_thread_task_runner.h" - #include "base/types/pass_key.h" -@@ -51,6 +52,7 @@ + #include "base/types/optional_util.h" +@@ -52,6 +53,7 @@ #include "net/url_request/url_request_redirect_job.h" #include "url/gurl.h" #include "url/origin.h" @@ -211,7 +211,7 @@ diff --git a/net/url_request/url_request.cc b/net/url_request/url_request.cc namespace net { -@@ -618,6 +620,12 @@ URLRequest::URLRequest(base::PassKey pass_key, +@@ -619,6 +621,12 @@ URLRequest::URLRequest(base::PassKey pass_key, // Sanity check out environment. DCHECK(base::SingleThreadTaskRunner::HasCurrentDefault()); diff --git a/build/cromite_patches/Bromite-subresource-adblocker.patch b/build/cromite_patches/Bromite-subresource-adblocker.patch index 42dfad584e78464d029ff1a7f4550461756473a8..afaf722a278e19e9520ebbbaf7b184e089aa3c93 100644 --- a/build/cromite_patches/Bromite-subresource-adblocker.patch +++ b/build/cromite_patches/Bromite-subresource-adblocker.patch @@ -26,7 +26,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html chrome/app/generated_resources.grd | 10 + chrome/browser/after_startup_task_utils.cc | 4 + chrome/browser/browser_process.h | 6 + - chrome/browser/browser_process_impl.cc | 21 ++ + chrome/browser/browser_process_impl.cc | 28 ++ chrome/browser/browser_process_impl.h | 2 + chrome/browser/chrome_browser_main.cc | 3 + chrome/browser/flags/BUILD.gn | 3 + @@ -37,10 +37,10 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../strings/android_chrome_strings.grd | 14 + chrome/common/pref_names.h | 5 + .../strings/android/site_settings.grdp | 3 + - components/component_updater/BUILD.gn | 7 + + components/component_updater/BUILD.gn | 8 + .../adblock_updater_service.cc | 281 ++++++++++++++++++ .../adblock_updater_service.h | 103 +++++++ - .../download_filters_task.cc | 239 +++++++++++++++ + .../download_filters_task.cc | 250 ++++++++++++++++ .../component_updater/download_filters_task.h | 129 ++++++++ ...ent_subresource_filter_throttle_manager.cc | 15 + ...tent_subresource_filter_throttle_manager.h | 2 + @@ -51,7 +51,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../browser/subresource_filter_features.cc | 116 +------- .../core/browser/verified_ruleset_dealer.cc | 4 + .../core/common/indexed_ruleset.cc | 5 +- - 39 files changed, 1254 insertions(+), 129 deletions(-) + 39 files changed, 1273 insertions(+), 129 deletions(-) create mode 100644 chrome/android/java/res/layout/adblock_editor.xml create mode 100644 chrome/android/java/res/xml/adblock_preferences.xml create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/settings/AdBlockEditor.java @@ -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 -@@ -357,6 +357,7 @@ if (current_toolchain == default_toolchain) { +@@ -360,6 +360,7 @@ if (current_toolchain == default_toolchain) { "//chrome/android/modules/cablev2_authenticator/public:java", "//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 -@@ -433,6 +433,7 @@ chrome_java_resources = [ +@@ -434,6 +434,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", @@ -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 -@@ -941,6 +941,8 @@ chrome_java_sources = [ +@@ -942,6 +942,8 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/permissions/PermissionSettingsBridge.java", "java/src/org/chromium/chrome/browser/permissions/PermissionUpdateRequester.java", "java/src/org/chromium/chrome/browser/photo_picker/DecoderServiceImpl.java", @@ -214,7 +214,7 @@ diff --git a/chrome/android/java/res/values/values.xml b/chrome/android/java/res + Autoupdate enabled + Autoupdate disabled -+ https://www.bromite.org/custom-filters ++ https://github.com/uazo/cromite/blob/master/docs/BROMITE_LEGACY_ADBLOCK.md + Proxy configuration chrome://proxy @@ -252,10 +252,10 @@ new file mode 100644 diff --git a/chrome/android/java/res/xml/main_preferences.xml b/chrome/android/java/res/xml/main_preferences.xml --- a/chrome/android/java/res/xml/main_preferences.xml +++ b/chrome/android/java/res/xml/main_preferences.xml -@@ -83,6 +83,11 @@ found in the LICENSE file. - android:key="safety_hub" - android:order="14" - android:title="@string/prefs_safety_check"/> +@@ -122,6 +122,11 @@ for the previous order (main_preferences_legacy). --> + android:key="toolbar_shortcut" + android:order="21" + android:title="@string/toolbar_shortcut"/> + @@ -511,7 +511,7 @@ diff --git a/chrome/browser/browser_process.h b/chrome/browser/browser_process.h 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 -@@ -1197,6 +1197,27 @@ BrowserProcessImpl::component_updater() { +@@ -1227,6 +1227,34 @@ BrowserProcessImpl::component_updater() { return component_updater_.get(); } @@ -526,6 +526,13 @@ diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_pro + std::unique_ptr scheduler = + std::make_unique(); + ++ auto adblock_updater_url = ++ local_state()->GetString(prefs::kAdBlockFiltersURL); ++ if (base::StartsWith(adblock_updater_url, ++ "https://www.bromite.org", base::CompareCase::INSENSITIVE_ASCII)) { ++ local_state()->SetString(prefs::kAdBlockFiltersURL, "about:blank"); ++ } ++ + adblock_updater_ = std::make_unique( + g_browser_process->system_network_context_manager()->GetSharedURLLoaderFactory(), + std::move(scheduler), @@ -550,7 +557,7 @@ diff --git a/chrome/browser/browser_process_impl.h b/chrome/browser/browser_proc MediaFileSystemRegistry* media_file_system_registry() override; WebRtcLogUploader* webrtc_log_uploader() override; network_time::NetworkTimeTracker* network_time_tracker() override; -@@ -419,6 +420,7 @@ class BrowserProcessImpl : public BrowserProcess, +@@ -421,6 +422,7 @@ class BrowserProcessImpl : public BrowserProcess, // to concerns over integrity of data shared between profiles, // but some users of component updater only install per-user. std::unique_ptr component_updater_; @@ -561,7 +568,7 @@ diff --git a/chrome/browser/browser_process_impl.h b/chrome/browser/browser_proc 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 -@@ -470,6 +470,9 @@ StartupProfileInfo CreateInitialProfile( +@@ -472,6 +472,9 @@ StartupProfileInfo CreateInitialProfile( // missing code in the above test. CHECK(profile_info.profile) << "Cannot get default profile."; @@ -672,13 +679,13 @@ new file mode 100755 diff --git a/chrome/browser/net/system_network_context_manager.cc b/chrome/browser/net/system_network_context_manager.cc --- a/chrome/browser/net/system_network_context_manager.cc +++ b/chrome/browser/net/system_network_context_manager.cc -@@ -635,6 +635,10 @@ SystemNetworkContextManager::~SystemNetworkContextManager() { - void SystemNetworkContextManager::RegisterPrefs(PrefRegistrySimple* registry) { +@@ -637,6 +637,10 @@ void SystemNetworkContextManager::RegisterPrefs(PrefRegistrySimple* registry) { StubResolverConfigReader::RegisterPrefs(registry); + DefaultDnsOverHttpsConfigSource::RegisterPrefs(registry); + registry->RegisterBooleanPref(prefs::kAdBlockEnabled, false); + registry->RegisterStringPref(prefs::kAdBlockFiltersURL, -+ "https://www.bromite.org/filters/filters.dat"); ++ "about:blank"); + // Static auth params registry->RegisterStringPref(prefs::kAuthSchemes, @@ -727,7 +734,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd 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 -@@ -2824,6 +2824,11 @@ inline constexpr char kAudioCaptureAllowed[] = "hardware.audio_capture_enabled"; +@@ -2840,6 +2840,11 @@ inline constexpr char kAudioCaptureAllowed[] = "hardware.audio_capture_enabled"; inline constexpr char kAudioCaptureAllowedUrls[] = "hardware.audio_capture_allowed_urls"; @@ -742,7 +749,7 @@ diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h diff --git a/components/browser_ui/strings/android/site_settings.grdp b/components/browser_ui/strings/android/site_settings.grdp --- a/components/browser_ui/strings/android/site_settings.grdp +++ b/components/browser_ui/strings/android/site_settings.grdp -@@ -371,6 +371,9 @@ +@@ -374,6 +374,9 @@ This site shows intrusive or misleading ads @@ -768,7 +775,7 @@ diff --git a/components/component_updater/BUILD.gn b/components/component_update "component_updater_service.cc", "component_updater_service.h", "component_updater_service_internal.h", -@@ -48,6 +54,7 @@ static_library("component_updater") { +@@ -49,9 +55,11 @@ static_library("component_updater") { "//components/update_client", "//components/version_info", "//net", @@ -776,6 +783,10 @@ diff --git a/components/component_updater/BUILD.gn b/components/component_update "//third_party/boringssl", "//ui/base", "//url", ++ "//content/common:buildflags" + ] + } + diff --git a/components/component_updater/adblock_updater_service.cc b/components/component_updater/adblock_updater_service.cc new file mode 100644 --- /dev/null @@ -1174,7 +1185,7 @@ diff --git a/components/component_updater/download_filters_task.cc b/components/ new file mode 100644 --- /dev/null +++ b/components/component_updater/download_filters_task.cc -@@ -0,0 +1,239 @@ +@@ -0,0 +1,250 @@ +/* + This file is part of Bromite. + @@ -1344,10 +1355,21 @@ new file mode 100644 + final_url_ = final_url; + response_code_ = response_head.headers ? response_head.headers->response_code() : -1; + -+ if (!response_head.headers->GetLastModifiedValue(&last_modified_)) -+ LOG(WARNING) << "DownloadFiltersTask: fetching URL '" << final_url.spec() << "' with method " << (min_last_modified_.is_null() ? "GET" : "HEAD") << " (no Last-Modified header)"; -+ else -+ LOG(INFO) << "DownloadFiltersTask: fetching URL '" << final_url.spec() << "' with method " << (min_last_modified_.is_null() ? "GET" : "HEAD"); ++ std::optional last_modified_value = ++ response_head.headers->GetLastModifiedValue(); ++ if (last_modified_value) { ++ last_modified_ = last_modified_value.value(); ++ LOG(INFO) << "DownloadFiltersTask: fetching URL '" ++ << final_url.spec() ++ << "' with method " ++ << (min_last_modified_.is_null() ? "GET" : "HEAD"); ++ } else { ++ LOG(WARNING) << "DownloadFiltersTask: fetching URL '" ++ << final_url.spec() ++ << "' with method " ++ << (min_last_modified_.is_null() ? "GET" : "HEAD") ++ << " (no Last-Modified header)"; ++ } +} + +void DownloadFiltersTask::OnDownloadComplete(base::FilePath file_path) { @@ -1561,7 +1583,7 @@ diff --git a/components/subresource_filter/content/browser/content_subresource_f #include "components/subresource_filter/content/browser/ad_tagging_utils.h" #include "components/subresource_filter/content/browser/content_subresource_filter_web_contents_helper.h" #include "components/subresource_filter/content/browser/profile_interaction_manager.h" -@@ -110,6 +113,7 @@ ContentSubresourceFilterThrottleManager:: +@@ -111,6 +114,7 @@ ContentSubresourceFilterThrottleManager:: profile_interaction_manager_( std::make_unique( profile_context)), @@ -1569,7 +1591,7 @@ diff --git a/components/subresource_filter/content/browser/content_subresource_f web_contents_helper_(web_contents_helper) {} ContentSubresourceFilterThrottleManager:: -@@ -667,6 +671,17 @@ ContentSubresourceFilterThrottleManager:: +@@ -671,6 +675,17 @@ ContentSubresourceFilterThrottleManager:: throttle->NotifyPageActivationWithRuleset(EnsureRulesetHandle(), ad_tagging_state); } @@ -1590,7 +1612,7 @@ diff --git a/components/subresource_filter/content/browser/content_subresource_f diff --git a/components/subresource_filter/content/browser/content_subresource_filter_throttle_manager.h b/components/subresource_filter/content/browser/content_subresource_filter_throttle_manager.h --- a/components/subresource_filter/content/browser/content_subresource_filter_throttle_manager.h +++ b/components/subresource_filter/content/browser/content_subresource_filter_throttle_manager.h -@@ -411,6 +411,8 @@ class ContentSubresourceFilterThrottleManager +@@ -414,6 +414,8 @@ class ContentSubresourceFilterThrottleManager std::unique_ptr profile_interaction_manager_; diff --git a/build/cromite_patches/Client-hints-overrides.patch b/build/cromite_patches/Client-hints-overrides.patch index f5479ed8a4509c715576865e40c9041c5be14b8c..bf0b28a17c68e19d5e4c4ef9f030f587cc761716 100644 --- a/build/cromite_patches/Client-hints-overrides.patch +++ b/build/cromite_patches/Client-hints-overrides.patch @@ -90,7 +90,7 @@ diff --git a/content/browser/client_hints/client_hints.cc b/content/browser/clie diff --git a/content/browser/loader/navigation_url_loader_impl.cc b/content/browser/loader/navigation_url_loader_impl.cc --- a/content/browser/loader/navigation_url_loader_impl.cc +++ b/content/browser/loader/navigation_url_loader_impl.cc -@@ -1208,6 +1208,11 @@ void NavigationURLLoaderImpl::OnAcceptCHFrameReceived( +@@ -1216,6 +1216,11 @@ void NavigationURLLoaderImpl::OnAcceptCHFrameReceived( return; } @@ -234,7 +234,7 @@ diff --git a/third_party/blink/renderer/core/frame/navigator_ua_data.idl b/third diff --git a/third_party/blink/renderer/core/loader/frame_fetch_context.cc b/third_party/blink/renderer/core/loader/frame_fetch_context.cc --- a/third_party/blink/renderer/core/loader/frame_fetch_context.cc +++ b/third_party/blink/renderer/core/loader/frame_fetch_context.cc -@@ -216,6 +216,8 @@ bool ShouldSendClientHint(const PermissionsPolicy& policy, +@@ -217,6 +217,8 @@ bool ShouldSendClientHint(const PermissionsPolicy& policy, bool is_1p_origin, network::mojom::blink::WebClientHintsType type, const ClientHintsPreferences& hints_preferences) { @@ -243,7 +243,7 @@ diff --git a/third_party/blink/renderer/core/loader/frame_fetch_context.cc b/thi // For subresource requests, sending the hint in the fetch request based on // the permissions policy. if (!policy.IsFeatureEnabledForOrigin( -@@ -600,7 +602,7 @@ void FrameFetchContext::AddClientHintsIfNecessary( +@@ -610,7 +612,7 @@ void FrameFetchContext::AddClientHintsIfNecessary( } // Only send User Agent hints if the info is available @@ -255,8 +255,8 @@ diff --git a/third_party/blink/renderer/core/loader/frame_fetch_context.cc b/thi 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 -@@ -381,6 +381,11 @@ - name: "AtomicMoveAPI", +@@ -391,6 +391,11 @@ + name: "AriaNotify", status: "test", }, + { @@ -265,6 +265,6 @@ diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 + base_feature: "UserAgentClientHint", + }, { - name: "AttributionReporting", + name: "AriaRowColIndexText", status: "stable", -- diff --git a/build/cromite_patches/Content-settings-infrastructure.patch b/build/cromite_patches/Content-settings-infrastructure.patch index e5ffba29460404ef5cb0e4b7016cdc6e51d2a80c..cc8168775dd2a0f9813f95aef82091132aacc9f6 100644 --- a/build/cromite_patches/Content-settings-infrastructure.patch +++ b/build/cromite_patches/Content-settings-infrastructure.patch @@ -30,7 +30,7 @@ Require: bromite-build-utils.patch .../ui/views/page_info/page_info_main_view.cc | 28 +- .../views/page_info/page_info_view_factory.cc | 20 + .../views/page_info/page_info_view_factory.h | 5 + - .../page_info/permission_toggle_row_view.cc | 163 ++++++- + .../page_info/permission_toggle_row_view.cc | 173 +++++++- .../page_info/permission_toggle_row_view.h | 18 +- .../settings_localized_strings_provider.cc | 54 +++ .../ui/webui/settings/site_settings_helper.cc | 46 +- @@ -72,18 +72,18 @@ Require: bromite-build-utils.patch .../common/content_settings_mojom_traits.cc | 12 +- .../common/content_settings_mojom_traits.h | 24 + .../core/common/content_settings_types.mojom | 1 + - .../renderer/content_settings_agent_impl.cc | 45 +- - .../renderer/content_settings_agent_impl.h | 9 +- + .../renderer/content_settings_agent_impl.cc | 68 +++ + .../renderer/content_settings_agent_impl.h | 9 + .../PageInfoPermissionsController.java | 9 + .../PermissionParamsListBuilder.java | 1 + .../android/page_info_controller_android.cc | 18 + components/page_info/page_info.cc | 23 +- - components/page_info/page_info_ui.cc | 18 + + components/page_info/page_info_ui.cc | 25 ++ components/site_settings_strings.grdp | 1 + .../platform/web_content_settings_client.h | 9 + .../execution_context/execution_context.cc | 16 + .../execution_context/execution_context.h | 5 + - 72 files changed, 1868 insertions(+), 95 deletions(-) + 72 files changed, 1910 insertions(+), 93 deletions(-) create mode 100644 components/browser_ui/settings/android/java/res/layout/preference_spinner_single_widget.xml create mode 100644 components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/BromiteCustomContentSetting.java create mode 100644 components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/BromiteCustomContentSettingImpl.java @@ -97,7 +97,7 @@ Require: bromite-build-utils.patch diff --git a/chrome/android/java/src/org/chromium/chrome/browser/site_settings/ChromeSiteSettingsDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/site_settings/ChromeSiteSettingsDelegate.java --- a/chrome/android/java/src/org/chromium/chrome/browser/site_settings/ChromeSiteSettingsDelegate.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/site_settings/ChromeSiteSettingsDelegate.java -@@ -59,6 +59,10 @@ import org.chromium.url.GURL; +@@ -62,6 +62,10 @@ import org.chromium.url.GURL; import java.util.Set; @@ -108,7 +108,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/site_settings/C /** A SiteSettingsDelegate instance that contains Chrome-specific Site Settings logic. */ public class ChromeSiteSettingsDelegate implements SiteSettingsDelegate { public static final String EMBEDDED_CONTENT_HELP_CENTER_URL = -@@ -217,7 +221,7 @@ public class ChromeSiteSettingsDelegate implements SiteSettingsDelegate { +@@ -227,7 +231,7 @@ public class ChromeSiteSettingsDelegate implements SiteSettingsDelegate { @Override public boolean isHelpAndFeedbackEnabled() { @@ -117,7 +117,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/site_settings/C } @Override -@@ -349,6 +353,17 @@ public class ChromeSiteSettingsDelegate implements SiteSettingsDelegate { +@@ -359,6 +363,17 @@ public class ChromeSiteSettingsDelegate implements SiteSettingsDelegate { return mPrivacySandboxBridge.getFirstPartySetOwner(memberOrigin); } @@ -138,7 +138,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/site_settings/C diff --git a/chrome/browser/content_settings/page_specific_content_settings_delegate.cc b/chrome/browser/content_settings/page_specific_content_settings_delegate.cc --- a/chrome/browser/content_settings/page_specific_content_settings_delegate.cc +++ b/chrome/browser/content_settings/page_specific_content_settings_delegate.cc -@@ -166,7 +166,7 @@ namespace { +@@ -162,7 +162,7 @@ namespace { void GetGuestViewDefaultContentSettingRules( bool incognito, RendererContentSettingRules* rules) { @@ -150,7 +150,7 @@ diff --git a/chrome/browser/content_settings/page_specific_content_settings_dele diff --git a/chrome/browser/resources/settings/privacy_page/privacy_page.html b/chrome/browser/resources/settings/privacy_page/privacy_page.html --- a/chrome/browser/resources/settings/privacy_page/privacy_page.html +++ b/chrome/browser/resources/settings/privacy_page/privacy_page.html -@@ -1474,4 +1474,5 @@ +@@ -1534,4 +1534,5 @@ @@ -159,7 +159,7 @@ diff --git a/chrome/browser/resources/settings/privacy_page/privacy_page.html b/ diff --git a/chrome/browser/resources/settings/privacy_page/privacy_page.ts b/chrome/browser/resources/settings/privacy_page/privacy_page.ts --- a/chrome/browser/resources/settings/privacy_page/privacy_page.ts +++ b/chrome/browser/resources/settings/privacy_page/privacy_page.ts -@@ -53,6 +53,7 @@ import {SiteSettingsPrefsBrowserProxyImpl} from '../site_settings/site_settings_ +@@ -54,6 +54,7 @@ import {SiteSettingsPrefsBrowserProxyImpl} from '../site_settings/site_settings_ import {PrivacyGuideAvailabilityMixin} from './privacy_guide/privacy_guide_availability_mixin.js'; import {getTemplate} from './privacy_page.html.js'; @@ -167,7 +167,7 @@ diff --git a/chrome/browser/resources/settings/privacy_page/privacy_page.ts b/ch interface BlockAutoplayStatus { enabled: boolean; -@@ -76,8 +77,82 @@ export class SettingsPrivacyPageElement extends SettingsPrivacyPageElementBase { +@@ -77,8 +78,82 @@ export class SettingsPrivacyPageElement extends SettingsPrivacyPageElementBase { return 'settings-privacy-page'; } @@ -262,9 +262,9 @@ diff --git a/chrome/browser/resources/settings/route.ts b/chrome/browser/resourc /** * Add all of the child routes that originate from the privacy route, -@@ -154,6 +155,7 @@ function addPrivacyChildRoutes(r: Partial) { - r.SITE_SETTINGS_AUTOMATIC_FULLSCREEN = - r.SITE_SETTINGS.createChild('automaticFullScreen'); +@@ -165,6 +166,7 @@ function addPrivacyChildRoutes(r: Partial) { + r.SITE_SETTINGS_WEB_APP_INSTALLATION = + r.SITE_SETTINGS.createChild('webApplications'); } + setupContentSettingsRoutes(r); } @@ -294,7 +294,7 @@ diff --git a/chrome/browser/resources/settings/site_settings/settings_category_d diff --git a/chrome/browser/resources/settings/site_settings/settings_category_default_radio_group.ts b/chrome/browser/resources/settings/site_settings/settings_category_default_radio_group.ts --- a/chrome/browser/resources/settings/site_settings/settings_category_default_radio_group.ts +++ b/chrome/browser/resources/settings/site_settings/settings_category_default_radio_group.ts -@@ -31,6 +31,7 @@ import {ContentSettingProvider} from './site_settings_prefs_browser_proxy.js'; +@@ -31,6 +31,7 @@ import {DefaultSettingSource} from './site_settings_prefs_browser_proxy.js'; export enum SiteContentRadioSetting { DISABLED = 0, ENABLED = 1, @@ -337,7 +337,7 @@ diff --git a/chrome/browser/resources/settings/site_settings/settings_category_d private getAllowOptionForCategory_(): ContentSetting { switch (this.category) { case ContentSettingsTypes.ADS: -@@ -169,6 +184,8 @@ export class SettingsCategoryDefaultRadioGroupElement extends +@@ -172,6 +187,8 @@ export class SettingsCategoryDefaultRadioGroupElement extends // "Ask" vs "Blocked". return ContentSetting.ASK; default: @@ -346,7 +346,7 @@ diff --git a/chrome/browser/resources/settings/site_settings/settings_category_d assertNotReached('Invalid category: ' + this.category); } } -@@ -193,6 +210,7 @@ export class SettingsCategoryDefaultRadioGroupElement extends +@@ -196,6 +213,7 @@ export class SettingsCategoryDefaultRadioGroupElement extends /** @type {!ContentSetting} */ (this.getAllowOptionForCategory_()); this.browserProxy.setDefaultValueForContentType( this.category, @@ -354,7 +354,7 @@ diff --git a/chrome/browser/resources/settings/site_settings/settings_category_d this.categoryEnabled_ ? allowOption : ContentSetting.BLOCK); } -@@ -224,7 +242,10 @@ export class SettingsCategoryDefaultRadioGroupElement extends +@@ -227,7 +245,10 @@ export class SettingsCategoryDefaultRadioGroupElement extends } const enabled = this.computeIsSettingEnabled(update.setting); @@ -369,11 +369,11 @@ diff --git a/chrome/browser/resources/settings/site_settings/settings_category_d diff --git a/chrome/browser/resources/settings/site_settings/site_details.html b/chrome/browser/resources/settings/site_settings/site_details.html --- a/chrome/browser/resources/settings/site_settings/site_details.html +++ b/chrome/browser/resources/settings/site_settings/site_details.html -@@ -309,4 +309,5 @@ - label="$i18n{siteSettingsPointerLock}"> +@@ -322,4 +322,5 @@ + label="$i18n{siteSettingsWebAppInstallation}"> - -+
+ ++
diff --git a/chrome/browser/resources/settings/site_settings/site_details.ts b/chrome/browser/resources/settings/site_settings/site_details.ts --- a/chrome/browser/resources/settings/site_settings/site_details.ts @@ -588,7 +588,7 @@ diff --git a/chrome/browser/resources/settings/site_settings_page/site_settings_ { route: routes.SITE_SETTINGS_ADS, id: Id.ADS, -@@ -435,10 +435,36 @@ function getCategoryItemMap(): Map { +@@ -463,10 +463,36 @@ function getCategoryItemMap(): Map { disabledLabel: 'trackingProtectionLinkRowSubLabel', }); } @@ -625,7 +625,7 @@ diff --git a/chrome/browser/resources/settings/site_settings_page/site_settings_ function buildItemListFromIds(orderedIdList: ContentSettingsTypes[]): CategoryListItem[] { const map = getCategoryItemMap(); -@@ -524,7 +550,7 @@ export class SettingsSiteSettingsPageElement extends +@@ -554,7 +580,7 @@ export class SettingsSiteSettingsPageElement extends Id.IMAGES, Id.POPUPS, ]), @@ -692,8 +692,8 @@ diff --git a/chrome/browser/resources/settings/site_settings_page/site_settings_ /** * Determine localization string for i18n for a given content settings type. * Sorted alphabetically by |ContentSettingsType|. -@@ -102,6 +150,13 @@ export function getLocalizationStringForContentType( - case ContentSettingsTypes.OFFER_WRITING_HELP: +@@ -107,6 +155,13 @@ export function getLocalizationStringForContentType( + case ContentSettingsTypes.SMART_CARD_READERS: return null; default: + for (let index=0; index < loadTimeData.getInteger("br_cs_count"); index++) { @@ -709,7 +709,7 @@ diff --git a/chrome/browser/resources/settings/site_settings_page/site_settings_ diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn --- a/chrome/browser/ui/BUILD.gn +++ b/chrome/browser/ui/BUILD.gn -@@ -2041,6 +2041,7 @@ static_library("ui") { +@@ -1990,6 +1990,7 @@ static_library("ui") { "//components/commerce/core:shopping_service", "//components/commerce/core/webui", "//components/endpoint_fetcher:endpoint_fetcher", @@ -745,7 +745,7 @@ diff --git a/chrome/browser/ui/views/page_info/page_info_main_view.cc b/chrome/b #include "ui/views/view_class_properties.h" #if BUILDFLAG(FULL_SAFE_BROWSING) -@@ -251,8 +252,20 @@ void PageInfoMainView::SetPermissionInfo( +@@ -252,8 +253,20 @@ void PageInfoMainView::SetPermissionInfo( scroll_view->SetDrawOverflowIndicator(false); auto* content_view = scroll_view->SetContents(std::make_unique()); @@ -768,7 +768,7 @@ diff --git a/chrome/browser/ui/views/page_info/page_info_main_view.cc b/chrome/b content_view->SetID(PageInfoViewFactory::VIEW_ID_PAGE_INFO_PERMISSION_VIEW); content_view->SetProperty(views::kElementIdentifierKey, kPermissionsElementId); -@@ -267,11 +280,16 @@ void PageInfoMainView::SetPermissionInfo( +@@ -268,11 +281,16 @@ void PageInfoMainView::SetPermissionInfo( } } @@ -785,7 +785,7 @@ diff --git a/chrome/browser/ui/views/page_info/page_info_main_view.cc b/chrome/b toggle_row->SetProperty(views::kCrossAxisAlignmentKey, views::LayoutAlignment::kStretch); syncable_permission_rows_.emplace(permission.type, toggle_row); -@@ -279,6 +297,8 @@ void PageInfoMainView::SetPermissionInfo( +@@ -280,6 +298,8 @@ void PageInfoMainView::SetPermissionInfo( } for (auto& object : chosen_object_info_list) { @@ -794,7 +794,7 @@ diff --git a/chrome/browser/ui/views/page_info/page_info_main_view.cc b/chrome/b // The view takes ownership of the object info. auto object_view = std::make_unique( std::move(object), -@@ -289,6 +309,10 @@ void PageInfoMainView::SetPermissionInfo( +@@ -290,6 +310,10 @@ void PageInfoMainView::SetPermissionInfo( content_view->AddChildView(std::move(object_view))); } @@ -817,7 +817,7 @@ diff --git a/chrome/browser/ui/views/page_info/page_info_view_factory.cc b/chrom #include "components/page_info/core/features.h" #include "components/page_info/core/proto/about_this_site_metadata.pb.h" #include "components/page_info/page_info.h" -@@ -246,7 +248,14 @@ const ui::ImageModel PageInfoViewFactory::GetPermissionIcon( +@@ -261,7 +263,14 @@ const ui::ImageModel PageInfoViewFactory::GetPermissionIcon( ContentSetting setting = info.setting == CONTENT_SETTING_DEFAULT ? info.default_setting : info.setting; @@ -832,7 +832,7 @@ diff --git a/chrome/browser/ui/views/page_info/page_info_view_factory.cc b/chrom // For guard content settings and Automatic Picture-in-Picture, ASK is treated // as an "on" state. const bool show_blocked_badge = -@@ -528,6 +537,17 @@ const ui::ImageModel PageInfoViewFactory::GetPermissionIcon( +@@ -555,6 +564,17 @@ const ui::ImageModel PageInfoViewFactory::GetPermissionIcon( icon = &vector_icons::kPointerLockIcon; break; default: @@ -853,7 +853,7 @@ diff --git a/chrome/browser/ui/views/page_info/page_info_view_factory.cc b/chrom diff --git a/chrome/browser/ui/views/page_info/page_info_view_factory.h b/chrome/browser/ui/views/page_info/page_info_view_factory.h --- a/chrome/browser/ui/views/page_info/page_info_view_factory.h +++ b/chrome/browser/ui/views/page_info/page_info_view_factory.h -@@ -87,6 +87,11 @@ class PageInfoViewFactory { +@@ -88,6 +88,11 @@ class PageInfoViewFactory { const PageInfo::PermissionInfo& info, bool blocked_on_system_level = false); @@ -1039,8 +1039,8 @@ diff --git a/chrome/browser/ui/views/page_info/permission_toggle_row_view.cc b/c + choose_button_ = row_view_->AddControlUnderLabel(std::move(toggle_button)); const int icon_size = GetLayoutConstant(PAGE_INFO_ICON_SIZE); - // TODO(crbug.com/40101962): Update below code to only display the updated -@@ -250,9 +349,6 @@ void PermissionToggleRowView::InitForUserSource( + +@@ -226,9 +325,6 @@ void PermissionToggleRowView::InitForUserSource( auto spacer_view = std::make_unique(); spacer_view->SetPreferredSize(gfx::Size(icon_size, icon_size)); spacer_view_ = row_view_->AddControl(std::move(spacer_view)); @@ -1050,7 +1050,20 @@ diff --git a/chrome/browser/ui/views/page_info/permission_toggle_row_view.cc b/c } } } -@@ -324,6 +420,33 @@ void PermissionToggleRowView::UpdateUiOnPermissionChanged() { +@@ -255,6 +351,12 @@ void PermissionToggleRowView::InitForManagedSource( + } + + void PermissionToggleRowView::UpdateUiOnPermissionChanged() { ++ choose_button_->SetEnabledTextColors(std::nullopt); ++ if (permission_.setting == CONTENT_SETTING_DEFAULT) { ++ choose_button_->SetTextColorId(views::Button::ButtonState::STATE_NORMAL, ++ ui::kColorLabelForeground); ++ } ++ + if (blocked_on_system_level_label_) { + if (permission_.setting == CONTENT_SETTING_DEFAULT) { + permission_blocked_on_system_level_ = false; +@@ -300,6 +402,37 @@ void PermissionToggleRowView::UpdateUiOnPermissionChanged() { } } } @@ -1080,6 +1093,10 @@ diff --git a/chrome/browser/ui/views/page_info/permission_toggle_row_view.cc b/c + caption = u"Unknown"; + } + choose_button_->SetText(caption); ++ if (permission_.setting == CONTENT_SETTING_DEFAULT) { ++ choose_button_->SetTextColorId(views::Button::ButtonState::STATE_NORMAL, ++ ui::kColorLabelForeground); ++ } + } } @@ -1109,7 +1126,7 @@ diff --git a/chrome/browser/ui/views/page_info/permission_toggle_row_view.h b/ch METADATA_HEADER(PermissionToggleRowView, views::View) public: -@@ -66,6 +72,12 @@ class PermissionToggleRowView : public views::View { +@@ -68,6 +74,12 @@ class PermissionToggleRowView : public views::View { private: friend class test::PageInfoBubbleViewTestApi; @@ -1122,7 +1139,7 @@ diff --git a/chrome/browser/ui/views/page_info/permission_toggle_row_view.h b/ch void OnToggleButtonPressed(); void InitForUserSource(bool should_show_spacer_view, const std::u16string& toggle_accessible_name); -@@ -82,6 +94,10 @@ class PermissionToggleRowView : public views::View { +@@ -84,6 +96,10 @@ class PermissionToggleRowView : public views::View { raw_ptr toggle_button_ = nullptr; raw_ptr spacer_view_ = nullptr; @@ -1144,7 +1161,7 @@ diff --git a/chrome/browser/ui/webui/settings/settings_localized_strings_provide #include "build/branding_buildflags.h" #include "build/build_config.h" #include "build/buildflag.h" -@@ -75,6 +76,9 @@ +@@ -76,6 +77,9 @@ #include "components/google/core/common/google_util.h" #include "components/history/core/common/pref_names.h" #include "components/omnibox/common/omnibox_features.h" @@ -1154,7 +1171,7 @@ diff --git a/chrome/browser/ui/webui/settings/settings_localized_strings_provide #include "components/password_manager/core/browser/leak_detection_dialog_utils.h" #include "components/password_manager/core/browser/manage_passwords_referrer.h" #include "components/password_manager/core/common/password_manager_features.h" -@@ -3756,6 +3760,56 @@ void AddLocalizedStrings(content::WebUIDataSource* html_source, +@@ -3693,6 +3697,56 @@ void AddLocalizedStrings(content::WebUIDataSource* html_source, policy_indicator::AddLocalizedStrings(html_source); AddSecurityKeysStrings(html_source); @@ -1223,7 +1240,7 @@ diff --git a/chrome/browser/ui/webui/settings/site_settings_helper.cc b/chrome/b #include "components/content_settings/core/common/content_settings.h" #include "components/content_settings/core/common/content_settings_pattern.h" #include "components/content_settings/core/common/content_settings_types.h" -@@ -239,13 +241,13 @@ const ContentSettingsTypeNameEntry kContentSettingsTypeGroupNames[] = { +@@ -246,13 +248,13 @@ const ContentSettingsTypeNameEntry kContentSettingsTypeGroupNames[] = { {ContentSettingsType::STORAGE_ACCESS_HEADER_ORIGIN_TRIAL, nullptr}, }; @@ -1244,7 +1261,7 @@ diff --git a/chrome/browser/ui/webui/settings/site_settings_helper.cc b/chrome/b struct SiteSettingSourceStringMapping { SiteSettingSource source; -@@ -477,6 +479,13 @@ bool HasRegisteredGroupName(ContentSettingsType type) { +@@ -482,6 +484,13 @@ bool HasRegisteredGroupName(ContentSettingsType type) { return true; } } @@ -1258,7 +1275,7 @@ diff --git a/chrome/browser/ui/webui/settings/site_settings_helper.cc b/chrome/b return false; } -@@ -490,11 +499,24 @@ ContentSettingsType ContentSettingsTypeFromGroupName(std::string_view name) { +@@ -495,11 +504,24 @@ ContentSettingsType ContentSettingsTypeFromGroupName(std::string_view name) { return entry.type; } } @@ -1284,7 +1301,7 @@ diff --git a/chrome/browser/ui/webui/settings/site_settings_helper.cc b/chrome/b for (const auto& entry : kContentSettingsTypeGroupNames) { if (type == entry.type) { // Content setting types that aren't represented in the settings UI -@@ -509,7 +531,6 @@ std::string_view ContentSettingsTypeToGroupName(ContentSettingsType type) { +@@ -514,7 +536,6 @@ std::string_view ContentSettingsTypeToGroupName(ContentSettingsType type) { return entry.name ? entry.name : std::string_view(); } } @@ -1292,8 +1309,8 @@ diff --git a/chrome/browser/ui/webui/settings/site_settings_helper.cc b/chrome/b NOTREACHED_IN_MIGRATION() << static_cast(type) << " is not a recognized content settings type."; return std::string_view(); -@@ -609,6 +630,13 @@ std::vector GetVisiblePermissionCategories( - base_types->push_back(ContentSettingsType::POINTER_LOCK); +@@ -624,6 +645,13 @@ std::vector GetVisiblePermissionCategories( + base_types->push_back(ContentSettingsType::WEB_APP_INSTALLATION); } + content_settings::WebsiteSettingsRegistry* website_settings = @@ -1309,7 +1326,7 @@ diff --git a/chrome/browser/ui/webui/settings/site_settings_helper.cc b/chrome/b diff --git a/components/browser_ui/settings/android/BUILD.gn b/components/browser_ui/settings/android/BUILD.gn --- a/components/browser_ui/settings/android/BUILD.gn +++ b/components/browser_ui/settings/android/BUILD.gn -@@ -83,6 +83,7 @@ android_resources("java_resources") { +@@ -84,6 +84,7 @@ android_resources("java_resources") { "java/res/layout/managed_disclaimer_preference_for_radio_groups.xml", "java/res/layout/preference_chrome_image_view.xml", "java/res/layout/preference_spinner.xml", @@ -1507,7 +1524,7 @@ diff --git a/components/browser_ui/site_settings/android/BUILD.gn b/components/b diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/AllSiteSettings.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/AllSiteSettings.java --- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/AllSiteSettings.java +++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/AllSiteSettings.java -@@ -372,7 +372,8 @@ public class AllSiteSettings extends BaseSiteSettingsFragment +@@ -383,7 +383,8 @@ public class AllSiteSettings extends BaseSiteSettingsFragment if (queryHasChanged) getInfoForOrigins(); }); @@ -1517,7 +1534,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c MenuItem help = menu.add( Menu.NONE, -@@ -384,6 +385,8 @@ public class AllSiteSettings extends BaseSiteSettingsFragment +@@ -395,6 +396,8 @@ public class AllSiteSettings extends BaseSiteSettingsFragment getResources(), R.drawable.ic_help_and_feedback, getContext().getTheme())); @@ -2153,7 +2170,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c int icon, int title, @ContentSettingValues @Nullable Integer defaultEnabledValue, -@@ -415,6 +415,8 @@ public class ContentSettingsResources { +@@ -425,6 +425,8 @@ public class ContentSettingsResources { R.string.website_settings_category_vr_blocked, R.string.website_settings_category_vr_a11y); } @@ -2162,7 +2179,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c assert false; // NOTREACHED return null; } -@@ -573,6 +575,14 @@ public class ContentSettingsResources { +@@ -583,6 +585,14 @@ public class ContentSettingsResources { return getResourceItem(contentType).getDefaultDisabledValue(); } @@ -2177,7 +2194,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c /** * Returns the string resource id for a given ContentSetting to show with a permission category. * -@@ -736,6 +746,8 @@ public class ContentSettingsResources { +@@ -746,6 +756,8 @@ public class ContentSettingsResources { * Blocked states, in that order. */ public static int[] getTriStateSettingDescriptionIDs(int contentType) { @@ -2189,7 +2206,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java --- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java +++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java -@@ -331,6 +331,10 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment +@@ -337,6 +337,10 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment website.site() .getContentSetting( browserContextHandle, mCategory.getContentSettingsType()); @@ -2200,7 +2217,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c if (contentSetting != null) { return ContentSettingValues.BLOCK == contentSetting; } -@@ -495,6 +499,7 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment +@@ -501,6 +505,7 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment ? new HashSet<>(getArguments().getStringArrayList(EXTRA_SELECTED_DOMAINS)) : null; @@ -2208,7 +2225,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c configureGlobalToggles(); if (mCategory.getType() == SiteSettingsCategory.Type.REQUEST_DESKTOP_SITE) { RecordUserAction.record("DesktopSiteContentSetting.SettingsPage.Entered"); -@@ -525,7 +530,8 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment +@@ -536,7 +541,8 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment if (queryHasChanged) getInfoForOrigins(); }); @@ -2218,7 +2235,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c MenuItem help = menu.add( Menu.NONE, -@@ -537,12 +543,20 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment +@@ -548,12 +554,20 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment getResources(), R.drawable.ic_help_and_feedback, getContext().getTheme())); @@ -2239,7 +2256,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c if (mCategory.getType() == SiteSettingsCategory.Type.PROTECTED_MEDIA) { getSiteSettingsDelegate() .launchProtectedContentHelpAndFeedbackActivity(getActivity()); -@@ -614,6 +628,11 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment +@@ -625,6 +639,11 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment BrowserContextHandle browserContextHandle = getSiteSettingsDelegate().getBrowserContextHandle(); PrefService prefService = UserPrefs.get(browserContextHandle); @@ -2251,7 +2268,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c if (BINARY_TOGGLE_KEY.equals(preference.getKey())) { assert !mCategory.isManaged(); boolean toggleValue = (boolean) newValue; -@@ -808,6 +827,8 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment +@@ -819,6 +838,8 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment .website_settings_allowed_group_heading_request_desktop_site; break; } @@ -2260,7 +2277,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c assert resource > 0; return getString(resource); } -@@ -923,6 +944,8 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment +@@ -934,6 +955,8 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment default: break; } @@ -2269,7 +2286,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c if (allowSpecifyingExceptions) { getPreferenceScreen() .addPreference( -@@ -1109,8 +1132,16 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment +@@ -1120,8 +1143,16 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment private boolean isBlocked() { switch (mGlobalToggleLayout) { case GlobalToggleLayout.TRI_STATE_TOGGLE: @@ -2286,7 +2303,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c return (triStateToggle.getCheckedSetting() == ContentSettingValues.BLOCK); case GlobalToggleLayout.TRI_STATE_COOKIE_TOGGLE: TriStateCookieSettingsPreference triStateCookieToggle = -@@ -1177,7 +1208,11 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment +@@ -1188,7 +1219,11 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment } else if (mCategory.getType() == SiteSettingsCategory.Type.STORAGE_ACCESS) { infoText.setSummary(getStorageAccessSummary()); } else { @@ -2299,7 +2316,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c } // Hide the anti-abuse text preferences, as needed. -@@ -1214,6 +1249,7 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment +@@ -1225,6 +1260,7 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment } else { screen.removePreference(mLocationTriStatePref); } @@ -2307,7 +2324,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c if (permissionBlockedByOs) { maybeShowOsWarning(screen); -@@ -1370,7 +1406,7 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment +@@ -1381,7 +1417,7 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment getSiteSettingsDelegate().getBrowserContextHandle(), contentType); int[] descriptionIds = ContentSettingsResources.getTriStateSettingDescriptionIDs(contentType); @@ -2316,7 +2333,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c } private void configureBinaryToggle(ChromeSwitchPreference binaryToggle, int contentType) { -@@ -1494,6 +1530,14 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment +@@ -1505,6 +1541,14 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment @ContentSettingValues Integer value = site.getContentSetting(browserContextHandle, contentSettingsType); @@ -2334,7 +2351,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/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 -@@ -48,6 +48,7 @@ import java.util.Collection; +@@ -51,6 +51,7 @@ import java.util.Collection; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -2342,7 +2359,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c /** Shows the permissions and other settings for a particular website. */ public class SingleWebsiteSettings extends BaseSiteSettingsFragment -@@ -166,7 +167,7 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment +@@ -172,7 +173,7 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment case ContentSettingsType.CLIPBOARD_READ_WRITE: return "clipboard_permission_list"; default: @@ -2351,7 +2368,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c } } -@@ -536,8 +537,21 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment +@@ -549,8 +550,21 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment private void setupContentSettingsPreferences() { mMaxPermissionOrder = findPreference(PREF_PERMISSIONS_HEADER).getOrder(); @@ -2375,7 +2392,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c preference.setKey(getPreferenceKey(type)); if (type == ContentSettingsType.ADS) { -@@ -1080,20 +1094,32 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment +@@ -1096,20 +1110,32 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment @ContentSettingValues @Nullable Integer value, boolean isEmbargoed, boolean isOneTime) { @@ -2414,7 +2431,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c AppCompatResources.getColorStateList(getContext(), mHighlightColor) .getDefaultColor()); } -@@ -1309,14 +1335,20 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment +@@ -1325,14 +1351,20 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment permission = (Boolean) newValue ? ContentSettingValues.ALLOW : ContentSettingValues.BLOCK; } else { @@ -2440,15 +2457,15 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettings.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettings.java --- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettings.java +++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettings.java -@@ -46,6 +46,7 @@ public class SiteSettings extends BaseSiteSettingsFragment +@@ -51,6 +51,7 @@ public class SiteSettings extends BaseSiteSettingsFragment SettingsUtils.addPreferencesFromResource(this, R.xml.site_settings_preferences); - getActivity().setTitle(getContext().getString(R.string.prefs_site_settings)); + mPageTitle.set(getContext().getString(R.string.prefs_site_settings)); + BromiteCustomContentSettingImpl.configurePreferences(this); configurePreferences(); updatePreferenceStates(); } -@@ -67,7 +68,7 @@ public class SiteSettings extends BaseSiteSettingsFragment +@@ -77,7 +78,7 @@ public class SiteSettings extends BaseSiteSettingsFragment // Remove unsupported settings categories. for (@SiteSettingsCategory.Type int type = 0; @@ -2457,7 +2474,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c type++) { if (!getSiteSettingsDelegate().isCategoryVisible(type)) { getPreferenceScreen().removePreference(findPreference(type)); -@@ -89,7 +90,7 @@ public class SiteSettings extends BaseSiteSettingsFragment +@@ -99,7 +100,7 @@ public class SiteSettings extends BaseSiteSettingsFragment @CookieControlsMode int cookieControlsMode = UserPrefs.get(browserContextHandle).getInteger(COOKIE_CONTROLS_MODE); @@ -2466,7 +2483,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c Preference p = findPreference(prefCategory); int contentType = SiteSettingsCategory.contentSettingsType(prefCategory); // p can be null if the Preference was removed in configurePreferences. -@@ -158,19 +159,21 @@ public class SiteSettings extends BaseSiteSettingsFragment +@@ -169,19 +170,21 @@ public class SiteSettings extends BaseSiteSettingsFragment } else if (Type.ZOOM == prefCategory) { // Don't want to set a summary for Zoom because we don't want any message to display // under the Zoom row on site settings. @@ -2503,7 +2520,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettingsCategory.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettingsCategory.java --- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettingsCategory.java +++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettingsCategory.java -@@ -70,7 +70,7 @@ public class SiteSettingsCategory { +@@ -73,7 +73,7 @@ public class SiteSettingsCategory { Type.ZOOM, Type.STORAGE_ACCESS, Type.TRACKING_PROTECTION, @@ -2512,16 +2529,16 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c }) @Retention(RetentionPolicy.SOURCE) public @interface Type { -@@ -109,7 +109,7 @@ public class SiteSettingsCategory { - int TRACKING_PROTECTION = 30; +@@ -113,7 +113,7 @@ public class SiteSettingsCategory { + int HAND_TRACKING = 31; /** Number of handled categories used for calculating array sizes. */ -- int NUM_ENTRIES = 31; -+ int NUM_ENTRIES_CHROMIUM = 31; +- int NUM_ENTRIES = 32; ++ int NUM_ENTRIES_CHROMIUM = 32; } private final BrowserContextHandle mBrowserContextHandle; -@@ -154,6 +154,9 @@ public class SiteSettingsCategory { +@@ -162,6 +162,9 @@ public class SiteSettingsCategory { } else { permission = ""; } @@ -2531,7 +2548,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c return new SiteSettingsCategory(browserContextHandle, type, permission); } -@@ -162,7 +165,7 @@ public class SiteSettingsCategory { +@@ -170,7 +173,7 @@ public class SiteSettingsCategory { @ContentSettingsType.EnumType int contentSettingsType) { assert contentSettingsType != -1; assert Type.ALL_SITES == 0; @@ -2540,7 +2557,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c if (contentSettingsType(i) == contentSettingsType) { return createFromType(browserContextHandle, i); } -@@ -173,7 +176,7 @@ public class SiteSettingsCategory { +@@ -181,7 +184,7 @@ public class SiteSettingsCategory { public static SiteSettingsCategory createFromPreferenceKey( BrowserContextHandle browserContextHandle, String preferenceKey) { assert Type.ALL_SITES == 0; @@ -2549,7 +2566,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c if (preferenceKey(i).equals(preferenceKey)) { return createFromType(browserContextHandle, i); } -@@ -244,8 +247,7 @@ public class SiteSettingsCategory { +@@ -254,8 +257,7 @@ public class SiteSettingsCategory { case Type.TRACKING_PROTECTION: return ContentSettingsType.DEFAULT; // Conversion unavailable. } @@ -2559,7 +2576,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c } /** -@@ -330,8 +332,12 @@ public class SiteSettingsCategory { +@@ -342,8 +344,12 @@ public class SiteSettingsCategory { case Type.ZOOM: return "zoom"; default: @@ -2647,7 +2664,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePermissionsFetcher.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePermissionsFetcher.java --- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePermissionsFetcher.java +++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePermissionsFetcher.java -@@ -107,7 +107,7 @@ public class WebsitePermissionsFetcher { +@@ -108,7 +108,7 @@ public class WebsitePermissionsFetcher { case ContentSettingsType.USB_GUARD: return WebsitePermissionsType.CHOSEN_OBJECT_INFO; default: @@ -2786,9 +2803,9 @@ diff --git a/components/content_settings/core/browser/content_settings_registry. namespace content_settings { -@@ -813,6 +814,7 @@ void ContentSettingsRegistry::Init() { +@@ -836,6 +837,7 @@ void ContentSettingsRegistry::Init() { WebsiteSettingsRegistry::DESKTOP, - ContentSettingsInfo::DONT_INHERIT_IN_INCOGNITO, + ContentSettingsInfo::INHERIT_IF_LESS_PERMISSIVE, ContentSettingsInfo::EXCEPTIONS_ON_SECURE_ORIGINS_ONLY); +#include "components/content_settings/core/browser/bromite_content_settings.inc" } @@ -2797,7 +2814,7 @@ diff --git a/components/content_settings/core/browser/content_settings_registry. diff --git a/components/content_settings/core/browser/content_settings_uma_util.cc b/components/content_settings/core/browser/content_settings_uma_util.cc --- a/components/content_settings/core/browser/content_settings_uma_util.cc +++ b/components/content_settings/core/browser/content_settings_uma_util.cc -@@ -203,11 +203,7 @@ void RecordContentSettingsHistogram(const std::string& name, +@@ -205,11 +205,7 @@ void RecordContentSettingsHistogram(const std::string& name, } int ContentSettingTypeToHistogramValue(ContentSettingsType content_setting) { @@ -3129,17 +3146,17 @@ diff --git a/components/content_settings/core/common/content_settings_mojom_trai diff --git a/components/content_settings/core/common/content_settings_types.mojom b/components/content_settings/core/common/content_settings_types.mojom --- a/components/content_settings/core/common/content_settings_types.mojom +++ b/components/content_settings/core/common/content_settings_types.mojom -@@ -451,5 +451,6 @@ enum ContentSettingsType { - // origins to retry a request or load with storage access. - // BLOCK (default): no effect. - STORAGE_ACCESS_HEADER_ORIGIN_TRIAL, +@@ -458,5 +458,6 @@ enum ContentSettingsType { + // Website setting to indicate whether user has opted in to allow web apps to + // install other web apps. + WEB_APP_INSTALLATION, +#include "components/content_settings/core/common/bromite_content_settings.inc" }; // LINT.ThenChange(//components/content_settings/core/browser/content_settings_uma_util.cc:kHistogramValue) diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc b/components/content_settings/renderer/content_settings_agent_impl.cc --- a/components/content_settings/renderer/content_settings_agent_impl.cc +++ b/components/content_settings/renderer/content_settings_agent_impl.cc -@@ -202,6 +202,49 @@ void ContentSettingsAgentImpl::SendRendererContentSettingRules( +@@ -200,6 +200,74 @@ void ContentSettingsAgentImpl::SendRendererContentSettingRules( std::move(renderer_settings)); } @@ -3185,23 +3202,39 @@ diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc + } + return default_value; +} ++ ++bool ContentSettingsAgentImpl::IsAllowlistedForContentSettings() const { ++ const WebDocument& document = render_frame()->GetWebFrame()->GetDocument(); ++ WebSecurityOrigin origin = document.GetSecurityOrigin(); ++ WebURL document_url = document.Url(); ++ ++ if (origin.IsNull() || origin.IsOpaque()) ++ return false; // Uninitialized document? ++ ++ blink::WebString protocol = origin.Protocol(); ++ ++ if (protocol == content::kChromeUIScheme) ++ return true; // Browser UI elements should still work. ++ ++ if (protocol == content::kChromeDevToolsScheme) ++ return true; // DevTools UI elements should still work. ++ ++ // If the scheme is file:, an empty file name indicates a directory listing, ++ // which requires JavaScript to function properly. ++ if (protocol == url::kFileScheme && ++ document_url.ProtocolIs(url::kFileScheme)) { ++ return GURL(document_url).ExtractFileName().empty(); ++ } ++ return false; ++} + void ContentSettingsAgentImpl::OnContentSettingsAgentRequest( mojo::PendingAssociatedReceiver receiver) { receivers_.Add(this, std::move(receiver)); -@@ -353,7 +396,7 @@ void ContentSettingsAgentImpl::ClearBlockedContentSettings() { - cached_storage_permissions_.clear(); - } - --bool ContentSettingsAgentImpl::IsAllowlistedForContentSettings() const { -+bool ContentSettingsAgentImpl::IsAllowlistedForContentSettingsCromite() const { - if (should_allowlist_) - return true; - diff --git a/components/content_settings/renderer/content_settings_agent_impl.h b/components/content_settings/renderer/content_settings_agent_impl.h --- a/components/content_settings/renderer/content_settings_agent_impl.h +++ b/components/content_settings/renderer/content_settings_agent_impl.h -@@ -80,6 +80,13 @@ class ContentSettingsAgentImpl +@@ -77,6 +77,13 @@ class ContentSettingsAgentImpl static mojom::ContentSettingsManager::StorageType ConvertToMojoStorageType( StorageType storage_type); @@ -3215,15 +3248,15 @@ diff --git a/components/content_settings/renderer/content_settings_agent_impl.h // blink::WebContentSettingsClient: void AllowStorageAccess(StorageType storage_type, base::OnceCallback callback) override; -@@ -135,7 +142,7 @@ class ContentSettingsAgentImpl - // Helpers. - // True if `render_frame()` contains content that is allowlisted for content - // settings. -- bool IsAllowlistedForContentSettings() const; -+ bool IsAllowlistedForContentSettingsCromite() const; +@@ -129,6 +136,8 @@ class ContentSettingsAgentImpl + // Resets the `content_blocked_` array. + void ClearBlockedContentSettings(); ++ bool IsAllowlistedForContentSettings() const; ++ // A getter for `content_settings_manager_` that ensures it is bound. mojom::ContentSettingsManager& GetContentSettingsManager(); + diff --git a/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoPermissionsController.java b/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoPermissionsController.java --- a/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoPermissionsController.java +++ b/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoPermissionsController.java @@ -3257,7 +3290,7 @@ diff --git a/components/page_info/android/java/src/org/chromium/components/page_ diff --git a/components/page_info/android/page_info_controller_android.cc b/components/page_info/android/page_info_controller_android.cc --- a/components/page_info/android/page_info_controller_android.cc +++ b/components/page_info/android/page_info_controller_android.cc -@@ -12,6 +12,7 @@ +@@ -13,6 +13,7 @@ #include "base/containers/contains.h" #include "base/feature_list.h" #include "components/content_settings/core/browser/host_content_settings_map.h" @@ -3265,7 +3298,7 @@ diff --git a/components/page_info/android/page_info_controller_android.cc b/comp #include "components/content_settings/core/common/content_settings.h" #include "components/content_settings/core/common/content_settings_types.h" #include "components/page_info/android/page_info_client.h" -@@ -151,6 +152,15 @@ void PageInfoControllerAndroid::SetPermissionInfo( +@@ -162,6 +163,15 @@ void PageInfoControllerAndroid::SetPermissionInfo( } permissions_to_display.push_back(ContentSettingsType::STORAGE_ACCESS); @@ -3281,7 +3314,7 @@ diff --git a/components/page_info/android/page_info_controller_android.cc b/comp std::map user_specified_settings_to_display; std::map -@@ -210,6 +220,14 @@ std::optional PageInfoControllerAndroid::GetSettingToDisplay( +@@ -221,6 +231,14 @@ std::optional PageInfoControllerAndroid::GetSettingToDisplay( return permission.setting; } @@ -3307,7 +3340,7 @@ diff --git a/components/page_info/page_info.cc b/components/page_info/page_info. #include "components/content_settings/browser/ui/cookie_controls_controller.h" #include "components/content_settings/core/browser/content_settings_registry.h" #include "components/content_settings/core/browser/content_settings_uma_util.h" -@@ -1240,6 +1241,14 @@ void PageInfo::PopulatePermissionInfo(PermissionInfo& permission_info, +@@ -1242,6 +1243,14 @@ void PageInfo::PopulatePermissionInfo(PermissionInfo& permission_info, // applies to permissions listed in |kPermissionType|. bool PageInfo::ShouldShowPermission( const PageInfo::PermissionInfo& info) const { @@ -3322,7 +3355,7 @@ diff --git a/components/page_info/page_info.cc b/components/page_info/page_info. // Note |ContentSettingsType::ADS| will show up regardless of its default // value when it has been activated on the current origin. if (info.type == ContentSettingsType::ADS) { -@@ -1347,7 +1356,19 @@ void PageInfo::PresentSitePermissions() { +@@ -1356,7 +1365,19 @@ void PageInfo::PresentSitePermissions() { HostContentSettingsMap* content_settings = GetContentSettings(); DCHECK(web_contents_); @@ -3354,7 +3387,21 @@ diff --git a/components/page_info/page_info_ui.cc b/components/page_info/page_in #include "components/page_info/core/features.h" #include "components/page_info/page_info.h" #include "components/page_info/page_info_ui_delegate.h" -@@ -623,6 +624,12 @@ PageInfoUI::~PageInfoUI() = default; +@@ -331,6 +332,13 @@ void CreateOppositeToDefaultSiteException( + std::u16string GetPermissionAskStateString(ContentSettingsType type) { + int message_id = kInvalidResourceID; + ++ const content_settings::WebsiteSettingsInfo* settingInfo = ++ content_settings::WebsiteSettingsRegistry::GetInstance()->Get(type); ++ if (settingInfo && settingInfo->show_into_info_page()) { ++ if (settingInfo->ask_ui() != 0) ++ return l10n_util::GetStringUTF16(settingInfo->ask_ui()); ++ } ++ + switch (type) { + case ContentSettingsType::GEOLOCATION: + message_id = IDS_PAGE_INFO_STATE_TEXT_LOCATION_ASK; +@@ -625,6 +633,12 @@ PageInfoUI::~PageInfoUI() = default; // static std::u16string PageInfoUI::PermissionTypeToUIString(ContentSettingsType type) { @@ -3367,7 +3414,7 @@ diff --git a/components/page_info/page_info_ui.cc b/components/page_info/page_in for (const PermissionUIInfo& info : GetContentSettingsUIInfo()) { if (info.type == type) return l10n_util::GetStringUTF16(info.string_id); -@@ -634,6 +641,12 @@ std::u16string PageInfoUI::PermissionTypeToUIString(ContentSettingsType type) { +@@ -636,6 +650,12 @@ std::u16string PageInfoUI::PermissionTypeToUIString(ContentSettingsType type) { // static std::u16string PageInfoUI::PermissionTypeToUIStringMidSentence( ContentSettingsType type) { @@ -3380,7 +3427,7 @@ diff --git a/components/page_info/page_info_ui.cc b/components/page_info/page_in for (const PermissionUIInfo& info : GetContentSettingsUIInfo()) { if (info.type == type) return l10n_util::GetStringUTF16(info.string_id_mid_sentence); -@@ -1079,6 +1092,11 @@ bool PageInfoUI::ContentSettingsTypeInPageInfo(ContentSettingsType type) { +@@ -1081,6 +1101,11 @@ bool PageInfoUI::ContentSettingsTypeInPageInfo(ContentSettingsType type) { if (info.type == type) return true; } diff --git a/build/cromite_patches/Dictionary-suggestions-for-the-Omnibox.patch b/build/cromite_patches/Dictionary-suggestions-for-the-Omnibox.patch index 466b384ce060febbc469505befa948a4d954fb0f..6a72e8cba0f7c330929f00522dd93edc47cc71a5 100644 --- a/build/cromite_patches/Dictionary-suggestions-for-the-Omnibox.patch +++ b/build/cromite_patches/Dictionary-suggestions-for-the-Omnibox.patch @@ -29,8 +29,8 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow +++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java @@ -294,8 +294,17 @@ class LocationBarMediator if (mNativeInitialized) RecordUserAction.record("FocusLocation"); - // Don't clear Omnibox if the user just pasted text to NTP Omnibox. - if (mShouldClearOmniboxOnFocus) { + boolean shouldRetainOmniboxOnFocus = OmniboxFeatures.shouldRetainOmniboxOnFocus(); + if (!mUrlFocusedWithPastedText && !shouldRetainOmniboxOnFocus) { - setUrlBarText( - UrlBarData.EMPTY, UrlBar.ScrollType.NO_SCROLL, SelectionState.SELECT_END); + UrlBarData data = mLocationBarDataProvider.getUrlBarData(); @@ -44,9 +44,9 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow + } + } + setUrlBarText(data, UrlBar.ScrollType.NO_SCROLL, selectionState); + } else if (shouldRetainOmniboxOnFocus) { + mUrlCoordinator.setSelectAllOnFocus(true); } - } else { - mUrlFocusedFromFakebox = false; diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBar.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBar.java --- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBar.java +++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBar.java diff --git a/build/cromite_patches/Disable-PrivacyGuide.patch b/build/cromite_patches/Disable-PrivacyGuide.patch index 4a038f302b570d70c9185401bb96e51645ca9411..80f7747f2d118c93857b1bcdbfd97b6f65d7e23e 100644 --- a/build/cromite_patches/Disable-PrivacyGuide.patch +++ b/build/cromite_patches/Disable-PrivacyGuide.patch @@ -24,7 +24,7 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi diff --git a/chrome/browser/ui/webui/settings/settings_ui.cc b/chrome/browser/ui/webui/settings/settings_ui.cc --- a/chrome/browser/ui/webui/settings/settings_ui.cc +++ b/chrome/browser/ui/webui/settings/settings_ui.cc -@@ -365,8 +365,7 @@ SettingsUI::SettingsUI(content::WebUI* web_ui) +@@ -357,8 +357,7 @@ SettingsUI::SettingsUI(content::WebUI* web_ui) #endif // !BUILDFLAG(IS_CHROMEOS_LACROS) bool show_privacy_guide = diff --git a/build/cromite_patches/Disable-TLS-resumption.patch b/build/cromite_patches/Disable-TLS-resumption.patch index 2d306d91d6796d11b8903b64496f287094f9b145..1ab46b23ec437ac7dbc0cec54b0fdffb8b8a5462 100644 --- a/build/cromite_patches/Disable-TLS-resumption.patch +++ b/build/cromite_patches/Disable-TLS-resumption.patch @@ -79,7 +79,7 @@ new file mode 100644 diff --git a/net/http/http_network_session.cc b/net/http/http_network_session.cc --- a/net/http/http_network_session.cc +++ b/net/http/http_network_session.cc -@@ -211,6 +211,7 @@ HttpNetworkSession::HttpNetworkSession(const HttpNetworkSessionParams& params, +@@ -222,6 +222,7 @@ HttpNetworkSession::HttpNetworkSession(const HttpNetworkSessionParams& params, next_protos_.push_back(kProtoHTTP11); @@ -137,7 +137,7 @@ diff --git a/net/quic/quic_session_pool.cc b/net/quic/quic_session_pool.cc QuicSessionRequest::QuicSessionRequest(QuicSessionPool* pool) : pool_(pool) {} QuicSessionRequest::~QuicSessionRequest() { -@@ -2039,7 +2072,7 @@ QuicSessionPool::CreateCryptoConfigHandle( +@@ -2075,7 +2108,7 @@ QuicSessionPool::CreateCryptoConfigHandle( cert_verifier_, transport_security_state_, sct_auditing_delegate_, HostsFromOrigins(params_.origins_to_force_quic_on), actual_network_anonymization_key), @@ -149,7 +149,7 @@ diff --git a/net/quic/quic_session_pool.cc b/net/quic/quic_session_pool.cc diff --git a/net/socket/ssl_client_socket_impl.cc b/net/socket/ssl_client_socket_impl.cc --- a/net/socket/ssl_client_socket_impl.cc +++ b/net/socket/ssl_client_socket_impl.cc -@@ -292,7 +292,33 @@ SSLClientSocketImpl::SSLClientSocketImpl( +@@ -284,7 +284,33 @@ SSLClientSocketImpl::SSLClientSocketImpl( CHECK(context_); } @@ -183,7 +183,7 @@ diff --git a/net/socket/ssl_client_socket_impl.cc b/net/socket/ssl_client_socket Disconnect(); } -@@ -676,6 +702,8 @@ int SSLClientSocketImpl::Init() { +@@ -672,6 +698,8 @@ int SSLClientSocketImpl::Init() { } if (session) SSL_set_session(ssl_.get(), session.get()); @@ -191,8 +191,8 @@ diff --git a/net/socket/ssl_client_socket_impl.cc b/net/socket/ssl_client_socket + Log_ssl_session_data("Old session resumed", session.get()); } - const int kBufferSize = GetDefaultOpenSSLBufferSize(); -@@ -962,6 +990,35 @@ int SSLClientSocketImpl::DoHandshakeComplete(int result) { + transport_adapter_ = std::make_unique( +@@ -958,6 +986,35 @@ int SSLClientSocketImpl::DoHandshakeComplete(int result) { : SSLHandshakeDetails::kTLS13Full; } } @@ -227,8 +227,8 @@ diff --git a/net/socket/ssl_client_socket_impl.cc b/net/socket/ssl_client_socket + } UMA_HISTOGRAM_ENUMERATION("Net.SSLHandshakeDetails", details); - // Measure TLS connections that implement the renegotiation_info extension. -@@ -1594,6 +1651,8 @@ bool SSLClientSocketImpl::IsRenegotiationAllowed() const { + // Measure TLS connections that implement the renegotiation_info and EMS +@@ -1592,6 +1649,8 @@ bool SSLClientSocketImpl::IsRenegotiationAllowed() const { } bool SSLClientSocketImpl::IsCachingEnabled() const { diff --git a/build/cromite_patches/Disable-all-predictors-code.patch b/build/cromite_patches/Disable-all-predictors-code.patch index ae3b4a1fa055381f1517b19caed3194cdb50cbce..b29cbac20aba9ddddbd3b500932ac33448c6f3a6 100644 --- a/build/cromite_patches/Disable-all-predictors-code.patch +++ b/build/cromite_patches/Disable-all-predictors-code.patch @@ -16,6 +16,10 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html chrome/browser/predictors/predictors_features.cc | 3 +-- chrome/browser/ui/tab_helpers.cc | 1 - .../ui/webui/omnibox/omnibox_page_handler.cc | 2 ++ + .../accessibility/read_aloud_app_model.cc | 8 ++++++++ + .../renderer/accessibility/read_aloud_app_model.h | 7 +++++++ + .../accessibility/read_anything_app_controller.cc | 12 ++++++++++++ + .../accessibility/read_anything_app_controller.h | 4 ++++ chrome/utility/BUILD.gn | 2 +- chrome/utility/services.cc | 8 -------- .../core/browser/autofill_optimization_guide.cc | 5 +++-- @@ -27,7 +31,6 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../core/prediction_model_fetcher_impl.cc | 1 + components/optimization_guide/features.gni | 3 +-- .../core/page_content_annotations_features.cc | 5 +++++ - components/search/ntp_features.cc | 3 +++ .../Disable-all-predictors-code.inc | 3 +++ .../Disable-all-predictors-code.inc | 1 + .../Disable-all-predictors-code.inc | 1 + @@ -37,7 +40,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html services/webnn/features.gni | 2 +- .../document_speculation_rules.cc | 1 + .../platform/runtime_enabled_features.json5 | 2 +- - 32 files changed, 69 insertions(+), 35 deletions(-) + 35 files changed, 97 insertions(+), 35 deletions(-) create mode 100644 cromite_flags/chrome/browser/browser_features_cc/Disable-all-predictors-code.inc create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Disable-all-predictors-code.inc create mode 100644 cromite_flags/chrome/common/chrome_features_cc/Disable-all-predictors-code.inc @@ -48,7 +51,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 -@@ -785,8 +785,6 @@ static_library("browser") { +@@ -774,8 +774,6 @@ static_library("browser") { "navigation_predictor/navigation_predictor_keyed_service_factory.h", "navigation_predictor/navigation_predictor_metrics_document_data.cc", "navigation_predictor/navigation_predictor_metrics_document_data.h", @@ -160,7 +163,7 @@ diff --git a/chrome/browser/optimization_guide/model_validator_keyed_service.cc diff --git a/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc b/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc --- a/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc +++ b/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc -@@ -554,7 +554,6 @@ void OptimizationGuideKeyedService::RemoveObserverForOptimizationTargetModel( +@@ -558,7 +558,6 @@ void OptimizationGuideKeyedService::RemoveObserverForOptimizationTargetModel( void OptimizationGuideKeyedService::RegisterOptimizationTypes( const std::vector& optimization_types) { @@ -210,7 +213,7 @@ diff --git a/chrome/browser/predictors/predictors_features.cc b/chrome/browser/p diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc --- a/chrome/browser/ui/tab_helpers.cc +++ b/chrome/browser/ui/tab_helpers.cc -@@ -439,7 +439,6 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) { +@@ -444,7 +444,6 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) { } MixedContentSettingsTabHelper::CreateForWebContents(web_contents); NavigationMetricsRecorder::CreateForWebContents(web_contents); @@ -231,6 +234,195 @@ diff --git a/chrome/browser/ui/webui/omnibox/omnibox_page_handler.cc b/chrome/br #include "components/optimization_guide/machine_learning_tflite_buildflags.h" #include "components/search_engines/template_url.h" #include "content/public/browser/web_ui.h" +diff --git a/chrome/renderer/accessibility/read_aloud_app_model.cc b/chrome/renderer/accessibility/read_aloud_app_model.cc +--- a/chrome/renderer/accessibility/read_aloud_app_model.cc ++++ b/chrome/renderer/accessibility/read_aloud_app_model.cc +@@ -6,7 +6,9 @@ + + #include "base/strings/utf_string_conversions.h" + #include "base/values.h" ++#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) + #include "chrome/renderer/accessibility/phrase_segmentation/dependency_parser_model.h" ++#endif + #include "chrome/renderer/accessibility/phrase_segmentation/dependency_tree.h" + #include "chrome/renderer/accessibility/phrase_segmentation/phrase_segmenter.h" + #include "chrome/renderer/accessibility/phrase_segmentation/token_boundaries.h" +@@ -16,6 +18,7 @@ + + namespace { + ++#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) + std::vector GetDependencyHeads( + DependencyParserModel& dependency_parser_model, + std::vector input) { +@@ -25,6 +28,7 @@ std::vector GetDependencyHeads( + return {}; + } + } ++#endif + + } // namespace + +@@ -131,6 +135,7 @@ void ReadAloudAppModel::PreprocessTextForSpeech( + } + } + ++#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) + void ReadAloudAppModel::PreprocessPhrasesForText( + DependencyParserModel& dependency_parser_model) { + if (features::IsReadAnythingReadAloudPhraseHighlightingEnabled()) { +@@ -145,7 +150,9 @@ void ReadAloudAppModel::PreprocessPhrasesForText( + DLOG(WARNING) << "Phrase calculation done."; + } + } ++#endif + ++#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) + void ReadAloudAppModel::CalculatePhrases( + DependencyParserModel& dependency_parser_model, + a11y::ReadAloudCurrentGranularity& granularity) { +@@ -200,6 +207,7 @@ void ReadAloudAppModel::CalculatePhrases( + smart_highlight, tokenized_sentence, token_boundaries, Strategy::kWords, + /* max_words_per_phrase=*/5); + } ++#endif + + // TODO(crbug.com/40927698): Update to use AXRange to better handle multiple + // nodes. This may require updating GetText in ax_range.h to return AXNodeIds. +diff --git a/chrome/renderer/accessibility/read_aloud_app_model.h b/chrome/renderer/accessibility/read_aloud_app_model.h +--- a/chrome/renderer/accessibility/read_aloud_app_model.h ++++ b/chrome/renderer/accessibility/read_aloud_app_model.h +@@ -9,7 +9,10 @@ + #include "base/values.h" + #include "chrome/common/accessibility/read_anything.mojom.h" + #include "chrome/common/accessibility/read_anything_constants.h" ++#include "components/optimization_guide/machine_learning_tflite_buildflags.h" ++#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) + #include "chrome/renderer/accessibility/phrase_segmentation/dependency_parser_model.h" ++#endif + #include "chrome/renderer/accessibility/read_aloud_traversal_utils.h" + #include "ui/accessibility/ax_node_position.h" + +@@ -87,7 +90,9 @@ class ReadAloudAppModel { + bool is_docs, + const std::set* current_nodes); + ++#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) + void PreprocessPhrasesForText(DependencyParserModel& dependency_parser_model); ++#endif + + // Increments the processed_granularity_index_, updating ReadAloud's state of + // the current granularity to refer to the next granularity. The current +@@ -241,9 +246,11 @@ class ReadAloudAppModel { + // still needs to be read. + bool NoValidTextRemainingInCurrentNode(bool is_pdf, bool is_docs) const; + ++#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) + // Segment the given granularity into phrases with the given model. + void CalculatePhrases(DependencyParserModel& dependency_parser_model, + a11y::ReadAloudCurrentGranularity& granularity); ++#endif + + // Whether Read Aloud speech is currently playing or not. + bool speech_playing_ = false; +diff --git a/chrome/renderer/accessibility/read_anything_app_controller.cc b/chrome/renderer/accessibility/read_anything_app_controller.cc +--- a/chrome/renderer/accessibility/read_anything_app_controller.cc ++++ b/chrome/renderer/accessibility/read_anything_app_controller.cc +@@ -20,7 +20,9 @@ + #include "base/strings/utf_string_conversions.h" + #include "chrome/common/accessibility/read_anything_constants.h" + #include "chrome/renderer/accessibility/ax_tree_distiller.h" ++#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) + #include "chrome/renderer/accessibility/phrase_segmentation/dependency_parser_model.h" ++#endif + #include "chrome/renderer/accessibility/read_aloud_traversal_utils.h" + #include "chrome/renderer/accessibility/read_anything_node_utils.h" + #include "components/language/core/common/locale_util.h" +@@ -362,11 +364,13 @@ SkBitmap CorrectColorOfBitMap(SkBitmap& originalBitmap) { + return converted; + } + ++#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) + // Returns the dependency parser model for this renderer process. + DependencyParserModel& GetDependencyParserModel() { + static base::NoDestructor instance; + return *instance; + } ++#endif + + } // namespace + +@@ -1474,6 +1478,7 @@ void ReadAnythingAppController::OnConnected() { + render_frame()->GetBrowserInterfaceBroker().GetInterface( + std::move(page_handler_factory_receiver)); + ++#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) + // Get the dependency parser model used by phrase-based highlighting. + DependencyParserModel& dependency_parser_model = GetDependencyParserModel(); + if (dependency_parser_model.IsAvailable()) { +@@ -1483,6 +1488,7 @@ void ReadAnythingAppController::OnConnected() { + page_handler_->GetDependencyParserModel( + base::BindOnce(&ReadAnythingAppController::UpdateDependencyParserModel, + weak_ptr_factory_.GetWeakPtr())); ++#endif + } + + void ReadAnythingAppController::OnCopy() const { +@@ -1692,6 +1698,7 @@ std::vector ReadAnythingAppController::GetCurrentText() { + } + + void ReadAnythingAppController::PreprocessTextForSpeech() { ++#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) + const std::set* node_ids = model_.selection_node_ids().empty() + ? &model_.display_node_ids() + : &model_.selection_node_ids(); +@@ -1701,6 +1708,7 @@ void ReadAnythingAppController::PreprocessTextForSpeech() { + DependencyParserModel& model = GetDependencyParserModel(); + read_aloud_model_.PreprocessPhrasesForText(model); + } ++#endif + } + + void ReadAnythingAppController::MovePositionToNextGranularity() { +@@ -1874,11 +1882,15 @@ bool ReadAnythingAppController::IsDocsLoadMoreButtonVisible() const { + + void ReadAnythingAppController::UpdateDependencyParserModel( + base::File model_file) { ++#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) + DependencyParserModel& dependency_parser_model = GetDependencyParserModel(); + dependency_parser_model.UpdateWithFile(std::move(model_file)); ++#endif + } + ++#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) + DependencyParserModel& + ReadAnythingAppController::GetDependencyParserModelForTesting() { + return GetDependencyParserModel(); + } ++#endif +diff --git a/chrome/renderer/accessibility/read_anything_app_controller.h b/chrome/renderer/accessibility/read_anything_app_controller.h +--- a/chrome/renderer/accessibility/read_anything_app_controller.h ++++ b/chrome/renderer/accessibility/read_anything_app_controller.h +@@ -44,7 +44,9 @@ class MojoUkmRecorder; + } // namespace ukm + + class AXTreeDistiller; ++#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) + class DependencyParserModel; ++#endif + class ReadAnythingAppControllerTest; + class ReadAnythingAppControllerScreen2xDataCollectionModeTest; + +@@ -366,7 +368,9 @@ class ReadAnythingAppController + // available. + void UpdateDependencyParserModel(base::File model_file); + ++#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) + DependencyParserModel& GetDependencyParserModelForTesting(); ++#endif + + std::unique_ptr distiller_; + mojo::Remote diff --git a/chrome/utility/BUILD.gn b/chrome/utility/BUILD.gn --- a/chrome/utility/BUILD.gn +++ b/chrome/utility/BUILD.gn @@ -271,7 +463,7 @@ diff --git a/chrome/utility/services.cc b/chrome/utility/services.cc diff --git a/components/autofill/core/browser/autofill_optimization_guide.cc b/components/autofill/core/browser/autofill_optimization_guide.cc --- a/components/autofill/core/browser/autofill_optimization_guide.cc +++ b/components/autofill/core/browser/autofill_optimization_guide.cc -@@ -207,6 +207,7 @@ void AutofillOptimizationGuide::OnDidParseForm( +@@ -209,6 +209,7 @@ void AutofillOptimizationGuide::OnDidParseForm( // If we do not have any optimization types to register, do not do anything. if (!optimization_types.empty()) { // Register all optimization types that we need based on `form_structure`. @@ -279,7 +471,7 @@ diff --git a/components/autofill/core/browser/autofill_optimization_guide.cc b/c decider_->RegisterOptimizationTypes( std::vector( std::move(optimization_types).extract())); -@@ -258,7 +259,7 @@ bool AutofillOptimizationGuide::ShouldBlockSingleFieldSuggestions( +@@ -260,7 +261,7 @@ bool AutofillOptimizationGuide::ShouldBlockSingleFieldSuggestions( const AutofillField* field) const { // If the field's storable type is `IBAN_VALUE`, check whether IBAN // suggestions should be blocked based on `url`. @@ -288,7 +480,7 @@ diff --git a/components/autofill/core/browser/autofill_optimization_guide.cc b/c optimization_guide::OptimizationGuideDecision decision = decider_->CanApplyOptimization( url, optimization_guide::proto::IBAN_AUTOFILL_BLOCKED, -@@ -284,7 +285,7 @@ bool AutofillOptimizationGuide::ShouldBlockFormFieldSuggestion( +@@ -286,7 +287,7 @@ bool AutofillOptimizationGuide::ShouldBlockFormFieldSuggestion( const CreditCard& card) const { if (auto optimization_type = GetVcnMerchantOptOutOptimizationTypeForCard(card); @@ -310,7 +502,7 @@ diff --git a/components/omnibox/browser/autocomplete_controller.cc b/components/ #include "components/omnibox/browser/autocomplete_scoring_signals_annotator.h" #include "components/omnibox/browser/bookmark_provider.h" #include "components/omnibox/browser/bookmark_scoring_signals_annotator.h" -@@ -121,6 +123,7 @@ using ProviderType = AutocompleteProvider::Type; +@@ -120,6 +122,7 @@ using ProviderType = AutocompleteProvider::Type; constexpr bool is_android = !!BUILDFLAG(IS_ANDROID); @@ -318,7 +510,7 @@ diff --git a/components/omnibox/browser/autocomplete_controller.cc b/components/ void RecordMlScoreCoverage(size_t matches_with_non_null_scores, size_t total_scored_matches) { int percent_score_coverage = -@@ -229,6 +232,7 @@ void RecordTotalMatchesScored(size_t num_scored) { +@@ -228,6 +231,7 @@ void RecordTotalMatchesScored(size_t num_scored) { base::UmaHistogramCounts1000("Omnibox.URLScoringModelExecuted.Matches", num_scored); } @@ -381,7 +573,7 @@ diff --git a/components/optimization_guide/core/optimization_guide_features.cc b } // namespace -@@ -423,8 +419,7 @@ size_t MaxURLKeyedHintCacheSize() { +@@ -412,8 +408,7 @@ size_t MaxURLKeyedHintCacheSize() { } bool ShouldPersistHintsToDisk() { @@ -391,7 +583,7 @@ diff --git a/components/optimization_guide/core/optimization_guide_features.cc b } RequestContextSet GetAllowedContextsForPersonalizedMetadata() { -@@ -880,5 +875,13 @@ int GetOnDeviceModelValidationAttemptCount() { +@@ -869,5 +864,13 @@ int GetOnDeviceModelValidationAttemptCount() { return kParam.Get(); } @@ -479,17 +671,6 @@ diff --git a/components/page_content_annotations/core/page_content_annotations_f +SET_CROMITE_FEATURE_DISABLED(kPageContentAnnotationsValidation); +SET_CROMITE_FEATURE_DISABLED(kPageContentAnnotationsPersistSalientImageMetadata); } // namespace page_content_annotations::features -diff --git a/components/search/ntp_features.cc b/components/search/ntp_features.cc ---- a/components/search/ntp_features.cc -+++ b/components/search/ntp_features.cc -@@ -558,4 +558,7 @@ int GetWallpaperSearchButtonAnimationShownThreshold() { - kNtpWallpaperSearchButtonAnimationShownThreshold, - kNtpWallpaperSearchButtonAnimationShownThresholdParam, 15); - } -+SET_CROMITE_FEATURE_DISABLED(kNtpHistoryClustersModule); -+SET_CROMITE_FEATURE_DISABLED(kNtpHistoryClustersModuleLoad); -+SET_CROMITE_FEATURE_DISABLED(kNtpHistoryClustersModuleUseModelRanking); - } // namespace ntp_features diff --git a/cromite_flags/chrome/browser/browser_features_cc/Disable-all-predictors-code.inc b/cromite_flags/chrome/browser/browser_features_cc/Disable-all-predictors-code.inc new file mode 100644 --- /dev/null @@ -558,7 +739,7 @@ diff --git a/third_party/blink/renderer/core/speculation_rules/document_speculat 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 -@@ -3337,7 +3337,7 @@ +@@ -3331,7 +3331,7 @@ // // It also has some feature params defined throughout the codebase. name: "Prerender2", diff --git a/build/cromite_patches/Disable-all-promo-dialogs.patch b/build/cromite_patches/Disable-all-promo-dialogs.patch index 33ac44ec6e2bf6757862419ffccd8905af90bbbb..7c3ac2d945e8dc0c904eb5b6c2f0cb079e87327b 100644 --- a/build/cromite_patches/Disable-all-promo-dialogs.patch +++ b/build/cromite_patches/Disable-all-promo-dialogs.patch @@ -17,7 +17,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html 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 -@@ -1299,6 +1299,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { +@@ -1313,6 +1313,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { } private boolean maybeShowPromo(Profile profile) { @@ -40,7 +40,7 @@ diff --git a/chrome/browser/ui/browser_ui_prefs.cc b/chrome/browser/ui/browser_u diff --git a/chrome/browser/ui/views/user_education/browser_feature_promo_controller.cc b/chrome/browser/ui/views/user_education/browser_feature_promo_controller.cc --- a/chrome/browser/ui/views/user_education/browser_feature_promo_controller.cc +++ b/chrome/browser/ui/views/user_education/browser_feature_promo_controller.cc -@@ -78,6 +78,7 @@ ui::ElementContext BrowserFeaturePromoController::GetAnchorContext() const { +@@ -77,6 +77,7 @@ ui::ElementContext BrowserFeaturePromoController::GetAnchorContext() const { bool BrowserFeaturePromoController::CanShowPromoForElement( ui::TrackedElement* anchor_element) const { diff --git a/build/cromite_patches/Disable-conversion-measurement-api.patch b/build/cromite_patches/Disable-conversion-measurement-api.patch index d74f1fdad287e5f9a78571745b3b3e24bcd880d1..d16b28eeb67f5643a4486be6570698b1da5e7586 100644 --- a/build/cromite_patches/Disable-conversion-measurement-api.patch +++ b/build/cromite_patches/Disable-conversion-measurement-api.patch @@ -44,7 +44,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/android_webview/browser/aw_content_browser_client.cc b/android_webview/browser/aw_content_browser_client.cc --- a/android_webview/browser/aw_content_browser_client.cc +++ b/android_webview/browser/aw_content_browser_client.cc -@@ -1291,6 +1291,7 @@ network::mojom::AttributionSupport +@@ -1296,6 +1296,7 @@ network::mojom::AttributionSupport AwContentBrowserClient::GetAttributionSupport( AttributionReportingOsApiState state, bool client_os_disabled) { @@ -52,7 +52,7 @@ diff --git a/android_webview/browser/aw_content_browser_client.cc b/android_webv // WebView only supports OS-level attribution and not web-attribution. switch (state) { case AttributionReportingOsApiState::kDisabled: -@@ -1309,6 +1310,8 @@ bool AwContentBrowserClient::IsAttributionReportingOperationAllowed( +@@ -1314,6 +1315,8 @@ bool AwContentBrowserClient::IsAttributionReportingOperationAllowed( const url::Origin* destination_origin, const url::Origin* reporting_origin, bool* can_bypass) { @@ -73,7 +73,7 @@ diff --git a/android_webview/java/src/org/chromium/android_webview/AwSettings.ja @SpeculativeLoadingAllowedFlags private int mSpeculativeLoadingAllowedFlags = -@@ -1781,7 +1781,7 @@ public class AwSettings { +@@ -1778,7 +1778,7 @@ public class AwSettings { public void setAttributionBehavior(@AttributionBehavior int behavior) { synchronized (mAwSettingsLock) { if (mAttributionBehavior != behavior) { @@ -120,7 +120,7 @@ diff --git a/components/attribution_reporting/features.cc b/components/attributi +++ b/components/attribution_reporting/features.cc @@ -29,4 +29,5 @@ BASE_FEATURE(kAttributionScopes, "AttributionScopes", - base::FEATURE_DISABLED_BY_DEFAULT); + base::FEATURE_ENABLED_BY_DEFAULT); +SET_CROMITE_FEATURE_DISABLED(kConversionMeasurement); } // namespace attribution_reporting::features @@ -190,7 +190,7 @@ diff --git a/content/browser/aggregation_service/aggregation_service_features.cc diff --git a/content/browser/attribution_reporting/attribution_data_host_manager_impl.cc b/content/browser/attribution_reporting/attribution_data_host_manager_impl.cc --- a/content/browser/attribution_reporting/attribution_data_host_manager_impl.cc +++ b/content/browser/attribution_reporting/attribution_data_host_manager_impl.cc -@@ -1127,6 +1127,7 @@ void AttributionDataHostManagerImpl::ParseHeader( +@@ -1155,6 +1155,7 @@ void AttributionDataHostManagerImpl::ParseHeader( HeaderPendingDecode pending_decode, Registrar registrar) { CHECK(it != registrations_.end()); @@ -232,7 +232,7 @@ diff --git a/content/browser/attribution_reporting/attribution_os_level_manager. diff --git a/content/browser/attribution_reporting/attribution_report_network_sender.cc b/content/browser/attribution_reporting/attribution_report_network_sender.cc --- a/content/browser/attribution_reporting/attribution_report_network_sender.cc +++ b/content/browser/attribution_reporting/attribution_report_network_sender.cc -@@ -130,6 +130,9 @@ void AttributionReportNetworkSender::SendReport(GURL url, +@@ -144,6 +144,9 @@ void AttributionReportNetworkSender::SendReport(GURL url, url::Origin origin, const std::string& body, UrlLoaderCallback callback) { @@ -242,7 +242,7 @@ diff --git a/content/browser/attribution_reporting/attribution_report_network_se auto resource_request = std::make_unique(); resource_request->url = std::move(url); resource_request->method = net::HttpRequestHeaders::kPostMethod; -@@ -204,6 +207,12 @@ void AttributionReportNetworkSender::OnReportSent( +@@ -218,6 +221,12 @@ void AttributionReportNetworkSender::OnReportSent( ReportSentCallback sent_callback, UrlLoaderList::iterator it, scoped_refptr headers) { @@ -258,8 +258,8 @@ diff --git a/content/browser/attribution_reporting/attribution_report_network_se diff --git a/content/browser/attribution_reporting/attribution_storage_sql.cc b/content/browser/attribution_reporting/attribution_storage_sql.cc --- a/content/browser/attribution_reporting/attribution_storage_sql.cc +++ b/content/browser/attribution_reporting/attribution_storage_sql.cc -@@ -484,6 +484,8 @@ base::FilePath DatabasePath(const base::FilePath& user_data_directory) { - return user_data_directory.Append(kDatabasePath); +@@ -507,6 +507,8 @@ void AssignSourceForDeactivationOrDeletion( + } } +bool g_run_in_memory = true; @@ -267,7 +267,7 @@ diff --git a/content/browser/attribution_reporting/attribution_storage_sql.cc b/ } // namespace // static -@@ -506,9 +508,9 @@ bool AttributionStorageSql::Transaction::Commit() { +@@ -529,9 +531,9 @@ bool AttributionStorageSql::Transaction::Commit() { AttributionStorageSql::AttributionStorageSql( const base::FilePath& user_data_directory, AttributionResolverDelegate* delegate) @@ -283,7 +283,7 @@ diff --git a/content/browser/attribution_reporting/attribution_storage_sql.cc b/ diff --git a/content/browser/storage_partition_impl.cc b/content/browser/storage_partition_impl.cc --- a/content/browser/storage_partition_impl.cc +++ b/content/browser/storage_partition_impl.cc -@@ -1426,15 +1426,6 @@ void StoragePartitionImpl::Initialize( +@@ -1449,15 +1449,6 @@ void StoragePartitionImpl::Initialize( bucket_manager_ = std::make_unique(this); @@ -776,7 +776,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/Attrib diff --git a/content/public/browser/content_browser_client.cc b/content/public/browser/content_browser_client.cc --- a/content/public/browser/content_browser_client.cc +++ b/content/public/browser/content_browser_client.cc -@@ -562,6 +562,7 @@ void ContentBrowserClient::OnAuctionComplete( +@@ -565,6 +565,7 @@ void ContentBrowserClient::OnAuctionComplete( network::mojom::AttributionSupport ContentBrowserClient::GetAttributionSupport( AttributionReportingOsApiState state, bool client_os_disabled) { @@ -784,7 +784,7 @@ diff --git a/content/public/browser/content_browser_client.cc b/content/public/b switch (state) { case AttributionReportingOsApiState::kDisabled: return network::mojom::AttributionSupport::kWeb; -@@ -579,13 +580,13 @@ bool ContentBrowserClient::IsAttributionReportingOperationAllowed( +@@ -582,13 +583,13 @@ bool ContentBrowserClient::IsAttributionReportingOperationAllowed( const url::Origin* destination_origin, const url::Origin* reporting_origin, bool* can_bypass) { @@ -800,7 +800,7 @@ diff --git a/content/public/browser/content_browser_client.cc b/content/public/b } bool ContentBrowserClient::IsAttributionReportingAllowedForContext( -@@ -593,7 +594,7 @@ bool ContentBrowserClient::IsAttributionReportingAllowedForContext( +@@ -596,7 +597,7 @@ bool ContentBrowserClient::IsAttributionReportingAllowedForContext( content::RenderFrameHost* rfh, const url::Origin& context_origin, const url::Origin& reporting_origin) { @@ -875,7 +875,7 @@ diff --git a/services/network/public/cpp/attribution_utils.cc b/services/network diff --git a/third_party/blink/renderer/core/page/page.cc b/third_party/blink/renderer/core/page/page.cc --- a/third_party/blink/renderer/core/page/page.cc +++ b/third_party/blink/renderer/core/page/page.cc -@@ -1539,7 +1539,7 @@ void Page::UpdateBrowsingContextGroup( +@@ -1581,7 +1581,7 @@ void Page::UpdateBrowsingContextGroup( void Page::SetAttributionSupport( network::mojom::AttributionSupport attribution_support) { @@ -896,7 +896,7 @@ diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 origin_trial_feature_name: "AdInterestGroupAPI", implied_by: ["Fledge", "Parakeet"], public: true, -@@ -388,15 +388,15 @@ +@@ -413,15 +413,15 @@ }, { name: "AttributionReporting", @@ -914,7 +914,7 @@ diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 }, { // This only exists so we can use RuntimeEnabled in the IDL file -@@ -4277,15 +4277,15 @@ +@@ -4257,15 +4257,15 @@ }, { name: "TopicsAPI", diff --git a/build/cromite_patches/Disable-crash-reporting.patch b/build/cromite_patches/Disable-crash-reporting.patch index daf7363e0598eec358366f9c4f7547e3dfde8f94..86125ce69a6d3d0e4a636bbe1f31a95237763efb 100644 --- a/build/cromite_patches/Disable-crash-reporting.patch +++ b/build/cromite_patches/Disable-crash-reporting.patch @@ -11,7 +11,7 @@ Subject: Disable crash reporting 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 -@@ -2756,15 +2756,6 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches( +@@ -2765,15 +2765,6 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches( base::NumberToString(pid)); } #endif diff --git a/build/cromite_patches/Disable-feeds-support-by-default.patch b/build/cromite_patches/Disable-feeds-support-by-default.patch index 85ec303d96ca6c3e8121d0b2f404d7784a217c34..9730fcacf62486b1cbbe44a7cc7be84c1f5cb3e1 100644 --- a/build/cromite_patches/Disable-feeds-support-by-default.patch +++ b/build/cromite_patches/Disable-feeds-support-by-default.patch @@ -83,7 +83,7 @@ diff --git a/components/feed/core/shared_prefs/pref_names.cc b/components/feed/c diff --git a/components/feed/feed_feature_list.cc b/components/feed/feed_feature_list.cc --- a/components/feed/feed_feature_list.cc +++ b/components/feed/feed_feature_list.cc -@@ -149,4 +149,7 @@ bool IsWebFeedEnabledForLocale(const std::string& country) { +@@ -141,4 +141,7 @@ bool IsWebFeedEnabledForLocale(const std::string& country) { !base::FeatureList::IsEnabled(kWebFeedKillSwitch); } diff --git a/build/cromite_patches/Disable-fetching-of-all-field-trials.patch b/build/cromite_patches/Disable-fetching-of-all-field-trials.patch index d5bd16ff7d99188c61c64f48c6185b11e429b8e4..795c2ce24a5c79a92598f39adbc47af8a2a64f00 100644 --- a/build/cromite_patches/Disable-fetching-of-all-field-trials.patch +++ b/build/cromite_patches/Disable-fetching-of-all-field-trials.patch @@ -76,7 +76,7 @@ diff --git a/android_webview/nonembedded/BUILD.gn b/android_webview/nonembedded/ diff --git a/android_webview/nonembedded/java/src/org/chromium/android_webview/services/NonEmbeddedFastVariationsSeedSafeModeAction.java b/android_webview/nonembedded/java/src/org/chromium/android_webview/services/NonEmbeddedFastVariationsSeedSafeModeAction.java --- a/android_webview/nonembedded/java/src/org/chromium/android_webview/services/NonEmbeddedFastVariationsSeedSafeModeAction.java +++ b/android_webview/nonembedded/java/src/org/chromium/android_webview/services/NonEmbeddedFastVariationsSeedSafeModeAction.java -@@ -27,13 +27,11 @@ public class NonEmbeddedFastVariationsSeedSafeModeAction implements NonEmbeddedS +@@ -25,13 +25,11 @@ public class NonEmbeddedFastVariationsSeedSafeModeAction implements NonEmbeddedS @Override public boolean onActivate() { @@ -141,7 +141,7 @@ diff --git a/chrome/browser/metrics/chrome_browser_sampling_trials.cc b/chrome/b 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 -@@ -841,7 +841,6 @@ void SystemNetworkContextManager::AddSSLConfigToNetworkContextParams( +@@ -855,7 +855,6 @@ void SystemNetworkContextManager::AddSSLConfigToNetworkContextParams( void SystemNetworkContextManager::ConfigureDefaultNetworkContextParams( network::mojom::NetworkContextParams* network_context_params) { @@ -309,7 +309,7 @@ diff --git a/components/variations/service/variations_field_trial_creator_base.c diff --git a/components/variations/service/variations_service.cc b/components/variations/service/variations_service.cc --- a/components/variations/service/variations_service.cc +++ b/components/variations/service/variations_service.cc -@@ -226,17 +226,8 @@ bool GetInstanceManipulations(const net::HttpResponseHeaders* headers, +@@ -227,17 +227,8 @@ bool GetInstanceManipulations(const net::HttpResponseHeaders* headers, // Variations seed fetching is only enabled in official Chrome builds, if a URL // is specified on the command line, and for testing. bool IsFetchingEnabled() { @@ -329,7 +329,7 @@ diff --git a/components/variations/service/variations_service.cc b/components/va } // Returns the already downloaded first run seed, and clear the seed from the -@@ -625,7 +616,7 @@ bool VariationsService::DoFetchFromURL(const GURL& url, bool is_http_retry) { +@@ -626,7 +617,7 @@ bool VariationsService::DoFetchFromURL(const GURL& url, bool is_http_retry) { // debugger or if the machine was suspended) and OnURLFetchComplete() hasn't // had a chance to run yet from the previous request. In this case, don't // start a new request and just let the previous one finish. diff --git a/build/cromite_patches/Disable-idle-detection.patch b/build/cromite_patches/Disable-idle-detection.patch index cf8e7bfaee76417420d489d448651a42fae3c83b..8a56a077fde4de147515c72435e57e6f6069b8f2 100644 --- a/build/cromite_patches/Disable-idle-detection.patch +++ b/build/cromite_patches/Disable-idle-detection.patch @@ -31,7 +31,7 @@ new file mode 100644 diff --git a/third_party/blink/renderer/core/permissions_policy/permissions_policy_features.json5 b/third_party/blink/renderer/core/permissions_policy/permissions_policy_features.json5 --- a/third_party/blink/renderer/core/permissions_policy/permissions_policy_features.json5 +++ b/third_party/blink/renderer/core/permissions_policy/permissions_policy_features.json5 -@@ -308,6 +308,7 @@ +@@ -314,6 +314,7 @@ { name: "IdleDetection", permissions_policy_name: "idle-detection", @@ -55,7 +55,7 @@ diff --git a/third_party/blink/renderer/modules/idle/idle_detector.idl b/third_p 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 -@@ -2318,6 +2318,11 @@ +@@ -2335,6 +2335,11 @@ name: "IgnoresCSSTextTransformsForPlainTextCopy", status: "stable", }, diff --git a/build/cromite_patches/Disable-lock-icon-in-address-bar-by-default.patch b/build/cromite_patches/Disable-lock-icon-in-address-bar-by-default.patch index e3c33b06aa4db0c88c7806e18f03a6e355294883..c3f6fdb43a9272f5eaefed74bf4af27269d0ba7d 100644 --- a/build/cromite_patches/Disable-lock-icon-in-address-bar-by-default.patch +++ b/build/cromite_patches/Disable-lock-icon-in-address-bar-by-default.patch @@ -10,7 +10,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/components/omnibox/common/omnibox_features.cc b/components/omnibox/common/omnibox_features.cc --- a/components/omnibox/common/omnibox_features.cc +++ b/components/omnibox/common/omnibox_features.cc -@@ -383,8 +383,8 @@ BASE_FEATURE(kOmniboxSteadyStateTextColor, +@@ -378,8 +378,8 @@ BASE_FEATURE(kOmniboxSteadyStateTextColor, // used, on non-Android platforms this is controlled through the // ChromeRefresh2023 flag. BASE_FEATURE(kUpdatedConnectionSecurityIndicators, diff --git a/build/cromite_patches/Disable-media-router-and-remoting-by-default.patch b/build/cromite_patches/Disable-media-router-and-remoting-by-default.patch index b3a914180fa18a33de6400378b814932e75e07f2..be1eab0b65c0651784fe45fa41747b4126016b53 100644 --- a/build/cromite_patches/Disable-media-router-and-remoting-by-default.patch +++ b/build/cromite_patches/Disable-media-router-and-remoting-by-default.patch @@ -15,7 +15,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/browser/media/router/media_router_feature.cc b/chrome/browser/media/router/media_router_feature.cc --- a/chrome/browser/media/router/media_router_feature.cc +++ b/chrome/browser/media/router/media_router_feature.cc -@@ -123,6 +123,7 @@ void ClearMediaRouterStoredPrefsForTesting() { +@@ -117,6 +117,7 @@ void ClearMediaRouterStoredPrefsForTesting() { } bool MediaRouterEnabled(content::BrowserContext* context) { @@ -23,7 +23,7 @@ diff --git a/chrome/browser/media/router/media_router_feature.cc b/chrome/browse #if !BUILDFLAG(IS_ANDROID) if (!base::FeatureList::IsEnabled(kMediaRouter)) return false; -@@ -165,7 +166,7 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) { +@@ -161,7 +162,7 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) { registry->RegisterStringPref(prefs::kMediaRouterReceiverIdHashToken, "", PrefRegistry::PUBLIC); registry->RegisterBooleanPref( @@ -32,7 +32,7 @@ diff --git a/chrome/browser/media/router/media_router_feature.cc b/chrome/browse registry->RegisterBooleanPref( media_router::prefs::kMediaRouterShowCastSessionsStartedByOtherDevices, true); -@@ -236,4 +237,7 @@ std::optional GetCastMirroringPlayoutDelay() { +@@ -225,4 +226,7 @@ std::optional GetCastMirroringPlayoutDelay() { #endif // !BUILDFLAG(IS_ANDROID) @@ -43,7 +43,7 @@ diff --git a/chrome/browser/media/router/media_router_feature.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 -@@ -424,7 +424,7 @@ void ProfileImpl::RegisterProfilePrefs( +@@ -427,7 +427,7 @@ void ProfileImpl::RegisterProfilePrefs( #endif registry->RegisterBooleanPref(prefs::kForceEphemeralProfiles, false); @@ -79,7 +79,7 @@ diff --git a/third_party/blink/renderer/modules/remoteplayback/remote_playback.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 -@@ -3509,14 +3509,10 @@ +@@ -3499,14 +3499,10 @@ base_feature: "none", }, { @@ -96,5 +96,5 @@ diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 + status: "experimental", // by default }, { - name: "RemoveDanglingMarkupInTarget", + // See https://issues.chromium.org/40805258 -- diff --git a/build/cromite_patches/Disable-omission-of-URL-elements.patch b/build/cromite_patches/Disable-omission-of-URL-elements.patch index 62d929c89fae37c0fcc241a7bf24df2752012c96..c55b91c70c3c72d223dce0367ffe052da5b904fb 100644 --- a/build/cromite_patches/Disable-omission-of-URL-elements.patch +++ b/build/cromite_patches/Disable-omission-of-URL-elements.patch @@ -6,28 +6,15 @@ Disabling some omissions of complete urls License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html --- - .../ephemeraltab/EphemeralTabSheetContent.java | 3 +-- - .../share_sheet/ShareSheetBottomSheetContent.java | 4 +--- - .../toolbar/chrome_location_bar_model_delegate.cc | 2 +- - .../ui/views/page_info/page_info_main_view.cc | 15 ++++++++++----- - .../components/bookmarks/BookmarkItem.java | 1 + - .../omnibox/browser/titled_url_match_utils.cc | 2 +- - .../components/page_info/PageInfoController.java | 3 +-- - 7 files changed, 16 insertions(+), 14 deletions(-) + .../ShareSheetBottomSheetContent.java | 4 +- + .../EphemeralTabSheetContent.java | 3 +- + .../chrome_location_bar_model_delegate.cc | 2 +- + .../ui/views/page_info/page_info_main_view.cc | 67 ++++++++++--------- + .../components/bookmarks/BookmarkItem.java | 1 + + .../omnibox/browser/titled_url_match_utils.cc | 2 +- + .../page_info/PageInfoController.java | 3 +- + 7 files changed, 41 insertions(+), 41 deletions(-) -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/bottombar/ephemeraltab/EphemeralTabSheetContent.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/bottombar/ephemeraltab/EphemeralTabSheetContent.java ---- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/bottombar/ephemeraltab/EphemeralTabSheetContent.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/bottombar/ephemeraltab/EphemeralTabSheetContent.java -@@ -235,8 +235,7 @@ public class EphemeralTabSheetContent implements BottomSheetContent { - /** Sets the ephemeral tab URL. */ - public void updateURL(GURL url) { - TextView originView = mToolbarView.findViewById(R.id.origin); -- originView.setText( -- UrlFormatter.formatUrlForSecurityDisplay(url, SchemeDisplay.OMIT_HTTP_AND_HTTPS)); -+ originView.setText(url.getSpec()); - } - - /** Sets the security icon. */ diff --git a/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/share_sheet/ShareSheetBottomSheetContent.java b/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/share_sheet/ShareSheetBottomSheetContent.java --- a/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/share_sheet/ShareSheetBottomSheetContent.java +++ b/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/share_sheet/ShareSheetBottomSheetContent.java @@ -42,6 +29,19 @@ diff --git a/chrome/browser/share/android/java/src/org/chromium/chrome/browser/s if (contentTypes.contains(ContentType.IMAGE) || contentTypes.contains(ContentType.IMAGE_AND_LINK)) { +diff --git a/chrome/browser/ui/android/ephemeraltab/java/src/org/chromium/chrome/browser/ephemeraltab/EphemeralTabSheetContent.java b/chrome/browser/ui/android/ephemeraltab/java/src/org/chromium/chrome/browser/ephemeraltab/EphemeralTabSheetContent.java +--- a/chrome/browser/ui/android/ephemeraltab/java/src/org/chromium/chrome/browser/ephemeraltab/EphemeralTabSheetContent.java ++++ b/chrome/browser/ui/android/ephemeraltab/java/src/org/chromium/chrome/browser/ephemeraltab/EphemeralTabSheetContent.java +@@ -234,8 +234,7 @@ public class EphemeralTabSheetContent implements BottomSheetContent { + /** Sets the ephemeral tab URL. */ + public void updateURL(GURL url) { + TextView originView = mToolbarView.findViewById(R.id.origin); +- originView.setText( +- UrlFormatter.formatUrlForSecurityDisplay(url, SchemeDisplay.OMIT_HTTP_AND_HTTPS)); ++ originView.setText(url.getSpec()); + } + + /** Sets the security icon. */ diff --git a/chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.cc b/chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.cc --- a/chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.cc +++ b/chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.cc @@ -55,33 +55,76 @@ diff --git a/chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.cc b/c diff --git a/chrome/browser/ui/views/page_info/page_info_main_view.cc b/chrome/browser/ui/views/page_info/page_info_main_view.cc --- a/chrome/browser/ui/views/page_info/page_info_main_view.cc +++ b/chrome/browser/ui/views/page_info/page_info_main_view.cc -@@ -562,10 +562,14 @@ void PageInfoMainView::ChildPreferredSizeChanged(views::View* child) { +@@ -562,38 +562,41 @@ void PageInfoMainView::ChildPreferredSizeChanged(views::View* child) { } std::unique_ptr PageInfoMainView::CreateBubbleHeaderView() { -- auto header = std::make_unique(); -- header->SetLayoutManager(std::make_unique()) +- return views::Builder() +- .SetInteriorMargin(gfx::Insets::VH(0, 20)) +- .AddChildren( +- views::Builder( +- std::make_unique( +- std::u16string(), views::style::CONTEXT_DIALOG_TITLE, +- views::style::STYLE_HEADLINE_4, +- gfx::DirectionalityMode::DIRECTIONALITY_AS_URL)) +- .CopyAddressTo(&title_) +- .SetMultiLine(true) +- .SetAllowCharacterBreak(true) +- .SetHorizontalAlignment(gfx::ALIGN_LEFT) +- .SetProperty(views::kFlexBehaviorKey, +- views::FlexSpecification( +- views::LayoutOrientation::kHorizontal, +- views::MinimumFlexSizeRule::kScaleToZero, +- views::MaximumFlexSizeRule::kUnbounded) +- .WithWeight(1)), +- views::Builder( +- views::BubbleFrameView::CreateCloseButton( +- base::BindRepeating(&PageInfoNavigationHandler::CloseBubble, +- base::Unretained(navigation_handler_)))) +- .SetVisible(true) +- .SetProperty(views::kCrossAxisAlignmentKey, +- views::LayoutAlignment::kStart) +- .CustomConfigure(base::BindOnce([](views::View* button) { +- // Set views::kInternalPaddingKey for flex layout to account for +- // internal button padding when calculating margins. +- button->SetProperty(views::kInternalPaddingKey, +- button->GetInsets()); +- }))) +- .Build(); + auto cromite_header = std::make_unique(); + cromite_header->SetVerticalScrollBarMode(views::ScrollView::ScrollBarMode::kHiddenButEnabled); + cromite_header->SetHorizontalScrollBarMode(views::ScrollView::ScrollBarMode::kDisabled); + cromite_header->ClipHeightTo(0, 150); + auto scroll_contents = std::make_unique(); + scroll_contents->SetLayoutManager(std::make_unique()) - ->SetInteriorMargin(gfx::Insets::VH(0, 20)); -- title_ = header->AddChildView(std::make_unique( ++ ->SetInteriorMargin(gfx::Insets::VH(0, 20)); + title_ = scroll_contents->AddChildView(std::make_unique( - std::u16string(), views::style::CONTEXT_DIALOG_TITLE, - views::style::STYLE_HEADLINE_4, - gfx::DirectionalityMode::DIRECTIONALITY_AS_URL)); -@@ -589,9 +593,10 @@ std::unique_ptr PageInfoMainView::CreateBubbleHeaderView() { - // button padding when calculating margins. - close_button->SetProperty(views::kInternalPaddingKey, - close_button->GetInsets()); -- header->AddChildView(close_button.release()); ++ std::u16string(), views::style::CONTEXT_DIALOG_TITLE, ++ views::style::STYLE_HEADLINE_4, ++ gfx::DirectionalityMode::DIRECTIONALITY_AS_URL)); ++ title_->SetMultiLine(true); ++ title_->SetAllowCharacterBreak(true); ++ title_->SetHorizontalAlignment(gfx::ALIGN_LEFT); ++ title_->SetProperty( ++ views::kFlexBehaviorKey, ++ views::FlexSpecification(views::MinimumFlexSizeRule::kScaleToZero, ++ views::MaximumFlexSizeRule::kUnbounded, ++ /*adjust_height_for_width =*/true) ++ .WithWeight(1)); ++ auto close_button = views::BubbleFrameView::CreateCloseButton( ++ base::BindRepeating(&PageInfoNavigationHandler::CloseBubble, ++ base::Unretained(navigation_handler_))); ++ ++ close_button->SetVisible(true); ++ close_button->SetProperty(views::kCrossAxisAlignmentKey, ++ views::LayoutAlignment::kStart); ++ // Set views::kInternalPaddingKey for flex layout to account for internal ++ // button padding when calculating margins. ++ close_button->SetProperty(views::kInternalPaddingKey, ++ close_button->GetInsets()); + scroll_contents->AddChildView(close_button.release()); + cromite_header->SetContents(std::move(scroll_contents)); - -- return header; ++ + return cromite_header; } diff --git a/build/cromite_patches/Disable-plugins-enumeration.patch b/build/cromite_patches/Disable-plugins-enumeration.patch index 366bb8868568901304716c0731aa950772e93c49..9862695675abac4b8ab28a1f56ab623e660aecaa 100644 --- a/build/cromite_patches/Disable-plugins-enumeration.patch +++ b/build/cromite_patches/Disable-plugins-enumeration.patch @@ -10,7 +10,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc --- a/third_party/blink/renderer/core/frame/local_frame.cc +++ b/third_party/blink/renderer/core/frame/local_frame.cc -@@ -2263,9 +2263,7 @@ WebContentSettingsClient* LocalFrame::GetContentSettingsClient() { +@@ -2272,9 +2272,7 @@ WebContentSettingsClient* LocalFrame::GetContentSettingsClient() { } PluginData* LocalFrame::GetPluginData() const { diff --git a/build/cromite_patches/Disable-privacy-sandbox.patch b/build/cromite_patches/Disable-privacy-sandbox.patch index 1526398b7a823944c6c341e6e383a4c427b9df5d..fc6d5f6016493e1f4e682d9104a9a6d22af1455d 100644 --- a/build/cromite_patches/Disable-privacy-sandbox.patch +++ b/build/cromite_patches/Disable-privacy-sandbox.patch @@ -36,7 +36,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc --- a/chrome/browser/chrome_content_browser_client.cc +++ b/chrome/browser/chrome_content_browser_client.cc -@@ -3532,6 +3532,9 @@ bool ChromeContentBrowserClient::IsAttributionReportingOperationAllowed( +@@ -3552,6 +3552,9 @@ bool ChromeContentBrowserClient::IsAttributionReportingOperationAllowed( const url::Origin* destination_origin, const url::Origin* reporting_origin, bool* can_bypass) { @@ -81,7 +81,7 @@ diff --git a/chrome/browser/first_party_sets/first_party_sets_policy_service.cc diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc --- a/chrome/browser/prefs/browser_prefs.cc +++ b/chrome/browser/prefs/browser_prefs.cc -@@ -1298,7 +1298,7 @@ void RegisterProfilePrefsForMigration( +@@ -1354,7 +1354,7 @@ void RegisterProfilePrefsForMigration( registry->RegisterTimePref(kPlusAddressLastFetchedTime, base::Time()); // Deprecated 03/2024. @@ -93,7 +93,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse diff --git a/chrome/browser/privacy_sandbox/privacy_sandbox_service_impl.cc b/chrome/browser/privacy_sandbox/privacy_sandbox_service_impl.cc --- a/chrome/browser/privacy_sandbox/privacy_sandbox_service_impl.cc +++ b/chrome/browser/privacy_sandbox/privacy_sandbox_service_impl.cc -@@ -519,7 +519,7 @@ bool PrivacySandboxServiceImpl::IsRestrictedNoticeEnabled() { +@@ -626,7 +626,7 @@ bool PrivacySandboxServiceImpl::IsRestrictedNoticeEnabled() { void PrivacySandboxServiceImpl::SetFirstPartySetsDataAccessEnabled( bool enabled) { pref_service_->SetBoolean(prefs::kPrivacySandboxRelatedWebsiteSetsEnabled, @@ -126,7 +126,7 @@ diff --git a/chrome/browser/ui/privacy_sandbox/privacy_sandbox_prompt.cc b/chrom diff --git a/components/history/core/browser/history_backend.cc b/components/history/core/browser/history_backend.cc --- a/components/history/core/browser/history_backend.cc +++ b/components/history/core/browser/history_backend.cc -@@ -657,18 +657,7 @@ void HistoryBackend::SetBrowsingTopicsAllowed(ContextID context_id, +@@ -665,18 +665,7 @@ void HistoryBackend::SetBrowsingTopicsAllowed(ContextID context_id, if (!visit_id) return; @@ -161,9 +161,9 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_attestations/privacy_san diff --git a/components/privacy_sandbox/privacy_sandbox_features.cc b/components/privacy_sandbox/privacy_sandbox_features.cc --- a/components/privacy_sandbox/privacy_sandbox_features.cc +++ b/components/privacy_sandbox/privacy_sandbox_features.cc -@@ -236,4 +236,8 @@ BASE_FEATURE(kPrivacySandboxPrivacyPolicy, - "PrivacySandboxPrivacyPolicy", - base::FEATURE_DISABLED_BY_DEFAULT); +@@ -255,4 +255,8 @@ BASE_FEATURE(kPrivacySandboxSentimentSurvey, + const base::FeatureParam kPrivacySandboxSentimentSurveyTriggerId{ + &kPrivacySandboxSentimentSurvey, "sentiment-survey-trigger-id", ""}; +SET_CROMITE_FEATURE_DISABLED(kPrivacySandboxSettings4); +SET_CROMITE_FEATURE_ENABLED(kDisablePrivacySandboxPrompts); @@ -194,7 +194,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_prefs.cc b/components/pr diff --git a/components/privacy_sandbox/privacy_sandbox_settings_impl.cc b/components/privacy_sandbox/privacy_sandbox_settings_impl.cc --- a/components/privacy_sandbox/privacy_sandbox_settings_impl.cc +++ b/components/privacy_sandbox/privacy_sandbox_settings_impl.cc -@@ -125,7 +125,7 @@ std::set GetTopicsSetFromString( +@@ -127,7 +127,7 @@ std::set GetTopicsSetFromString( // static bool PrivacySandboxSettingsImpl::IsAllowed(Status status) { @@ -203,7 +203,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings_impl.cc b/compo } // static -@@ -245,7 +245,8 @@ PrivacySandboxSettingsImpl::GetFinchPrioritizedTopics() { +@@ -247,7 +247,8 @@ PrivacySandboxSettingsImpl::GetFinchPrioritizedTopics() { return finch_prioritized_topics_; } @@ -213,7 +213,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings_impl.cc b/compo Status status = GetM1TopicAllowedStatus(); JoinHistogram(kIsTopicsAllowedHistogram, status); return IsAllowed(status); -@@ -277,7 +278,8 @@ bool PrivacySandboxSettingsImpl::IsTopicsAllowedForContext( +@@ -279,7 +280,8 @@ bool PrivacySandboxSettingsImpl::IsTopicsAllowedForContext( return IsAllowed(status); } @@ -223,7 +223,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings_impl.cc b/compo const auto& blocked_topics = pref_service_->GetList(prefs::kPrivacySandboxBlockedTopics); -@@ -479,6 +481,7 @@ bool PrivacySandboxSettingsImpl:: +@@ -481,6 +483,7 @@ bool PrivacySandboxSettingsImpl:: void PrivacySandboxSettingsImpl::SetFledgeJoiningAllowed( const std::string& top_frame_etld_plus1, bool allowed) { @@ -231,7 +231,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings_impl.cc b/compo ScopedDictPrefUpdate scoped_pref_update( pref_service_, prefs::kPrivacySandboxFledgeJoinBlocked); -@@ -550,7 +553,8 @@ void PrivacySandboxSettingsImpl::ClearFledgeJoiningAllowedSettings( +@@ -552,7 +555,8 @@ void PrivacySandboxSettingsImpl::ClearFledgeJoiningAllowedSettings( } bool PrivacySandboxSettingsImpl::IsFledgeJoiningAllowed( @@ -241,7 +241,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings_impl.cc b/compo ScopedDictPrefUpdate scoped_pref_update( pref_service_, prefs::kPrivacySandboxFledgeJoinBlocked); auto& pref_data = scoped_pref_update.Get(); -@@ -813,7 +817,10 @@ void PrivacySandboxSettingsImpl::SetDelegateForTesting( +@@ -860,7 +864,10 @@ void PrivacySandboxSettingsImpl::SetDelegateForTesting( delegate_ = std::move(delegate); } @@ -253,7 +253,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings_impl.cc b/compo pref_service_->SetTime(prefs::kPrivacySandboxTopicsDataAccessibleSince, base::Time::Now()); -@@ -826,6 +833,7 @@ PrivacySandboxSettingsImpl::Status +@@ -873,6 +880,7 @@ PrivacySandboxSettingsImpl::Status PrivacySandboxSettingsImpl::GetSiteAccessAllowedStatus( const url::Origin& top_frame_origin, const GURL& url) const { @@ -261,7 +261,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings_impl.cc b/compo // Relying on |host_content_settings_map_| instead of |cookie_settings_| // allows to query whether the site associated with the |url| is allowed to // access Site data (aka ContentSettingsType::COOKIES) without considering any -@@ -840,6 +848,7 @@ PrivacySandboxSettingsImpl::GetSiteAccessAllowedStatus( +@@ -887,6 +895,7 @@ PrivacySandboxSettingsImpl::GetSiteAccessAllowedStatus( PrivacySandboxSettingsImpl::Status PrivacySandboxSettingsImpl::GetPrivacySandboxAllowedStatus( bool should_ignore_restriction /*=false*/) const { @@ -287,7 +287,7 @@ diff --git a/components/privacy_sandbox/tracking_protection_prefs.cc b/component diff --git a/components/signin/public/identity_manager/account_capabilities.cc b/components/signin/public/identity_manager/account_capabilities.cc --- a/components/signin/public/identity_manager/account_capabilities.cc +++ b/components/signin/public/identity_manager/account_capabilities.cc -@@ -86,7 +86,7 @@ signin::Tribool AccountCapabilities:: +@@ -87,7 +87,7 @@ signin::Tribool AccountCapabilities:: signin::Tribool AccountCapabilities::can_run_chrome_privacy_sandbox_trials() const { @@ -320,7 +320,7 @@ new file mode 100644 diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/features.cc --- a/third_party/blink/common/features.cc +++ b/third_party/blink/common/features.cc -@@ -2625,6 +2625,7 @@ BASE_FEATURE(kWebviewAccelerateSmallCanvases, +@@ -2640,6 +2640,7 @@ BASE_FEATURE(kWebviewAccelerateSmallCanvases, // constants for features in the section above. bool IsAllowURNsInIframeEnabled() { diff --git a/build/cromite_patches/Disable-references-to-fonts.googleapis.com.patch b/build/cromite_patches/Disable-references-to-fonts.googleapis.com.patch index 32a94ad5d1a2bf108a1a39e7dd0faf52dbfc6d0b..cf361ea8ae8e698dac26217203aaf2336c9ebd11 100644 --- a/build/cromite_patches/Disable-references-to-fonts.googleapis.com.patch +++ b/build/cromite_patches/Disable-references-to-fonts.googleapis.com.patch @@ -15,7 +15,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/browser/resources/side_panel/read_anything/read_anything_toolbar.ts b/chrome/browser/resources/side_panel/read_anything/read_anything_toolbar.ts --- a/chrome/browser/resources/side_panel/read_anything/read_anything_toolbar.ts +++ b/chrome/browser/resources/side_panel/read_anything/read_anything_toolbar.ts -@@ -413,9 +413,7 @@ export class ReadAnythingToolbarElement extends ReadAnythingToolbarElementBase { +@@ -374,9 +374,7 @@ export class ReadAnythingToolbarElement extends ReadAnythingToolbarElementBase { const link = document.createElement('link'); link.rel = 'preload'; link.as = 'style'; diff --git a/build/cromite_patches/Disable-safety-check.patch b/build/cromite_patches/Disable-safety-check.patch index b93ae4b5206efe194bb288b4c5ce2958c7827ec7..82ffe23c705ed59404f45c4e1d1db45fbbc6a11f 100644 --- a/build/cromite_patches/Disable-safety-check.patch +++ b/build/cromite_patches/Disable-safety-check.patch @@ -4,19 +4,19 @@ Subject: Disable safety check License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html --- - chrome/android/BUILD.gn | 5 ----- - chrome/android/chrome_java_sources.gni | 1 - - .../android/java/res/xml/main_preferences.xml | 5 ----- - .../browser/settings/SettingsActivity.java | 18 ------------------ - .../browser/settings/SettingsLauncherImpl.java | 8 ++------ - chrome/browser/BUILD.gn | 1 - - .../suggestions/action/OmniboxPedal.java | 3 --- - 7 files changed, 2 insertions(+), 39 deletions(-) + chrome/android/BUILD.gn | 5 --- + chrome/android/chrome_java_sources.gni | 1 - + .../android/java/res/xml/main_preferences.xml | 5 --- + .../settings/FragmentDependencyProvider.java | 37 ------------------- + .../settings/SettingsLauncherImpl.java | 13 +------ + chrome/browser/BUILD.gn | 1 - + .../suggestions/action/OmniboxPedal.java | 3 -- + 7 files changed, 2 insertions(+), 63 deletions(-) diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -465,7 +465,6 @@ if (current_toolchain == default_toolchain) { +@@ -475,7 +475,6 @@ if (current_toolchain == default_toolchain) { "//chrome/browser/recent_tabs:helper_java", "//chrome/browser/recent_tabs:java", "//chrome/browser/safe_browsing/android:java", @@ -24,7 +24,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn "//chrome/browser/safety_hub/android:java", "//chrome/browser/screenshot_monitor:java", "//chrome/browser/search_engines/android:java", -@@ -1122,8 +1121,6 @@ if (current_toolchain == default_toolchain) { +@@ -1139,8 +1138,6 @@ if (current_toolchain == default_toolchain) { "//chrome/browser/recent_tabs:java", "//chrome/browser/recent_tabs:junit", "//chrome/browser/recent_tabs/internal:junit", @@ -33,7 +33,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn "//chrome/browser/safety_hub/android:java", "//chrome/browser/safety_hub/android:junit", "//chrome/browser/screenshot_monitor:java", -@@ -1778,8 +1775,6 @@ if (current_toolchain == default_toolchain) { +@@ -1803,8 +1800,6 @@ if (current_toolchain == default_toolchain) { "//chrome/browser/readaloud/android:java", "//chrome/browser/safe_browsing/android:java", "//chrome/browser/safe_browsing/android:javatests", @@ -56,33 +56,36 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java diff --git a/chrome/android/java/res/xml/main_preferences.xml b/chrome/android/java/res/xml/main_preferences.xml --- a/chrome/android/java/res/xml/main_preferences.xml +++ b/chrome/android/java/res/xml/main_preferences.xml -@@ -73,11 +73,6 @@ found in the LICENSE file. +@@ -56,11 +56,6 @@ for the previous order (main_preferences_legacy). --> android:key="privacy" - android:order="12" + android:order="8" android:title="@string/prefs_privacy_security"/> - RegisterDictionaryPref( prefs::kDevToolsBackgroundServicesExpirationDict); diff --git a/build/cromite_patches/Disable-text-fragments-by-default.patch b/build/cromite_patches/Disable-text-fragments-by-default.patch index 21dd32e0a5fcb29e9d2fe35e141f41c0556a4be2..d3bc7d71a9933462abe12e3fc6086be9d61dee3a 100644 --- a/build/cromite_patches/Disable-text-fragments-by-default.patch +++ b/build/cromite_patches/Disable-text-fragments-by-default.patch @@ -22,7 +22,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/browser/ui/prefs/prefs_tab_helper.cc b/chrome/browser/ui/prefs/prefs_tab_helper.cc --- a/chrome/browser/ui/prefs/prefs_tab_helper.cc +++ b/chrome/browser/ui/prefs/prefs_tab_helper.cc -@@ -379,7 +379,7 @@ void PrefsTabHelper::RegisterProfilePrefs( +@@ -378,7 +378,7 @@ void PrefsTabHelper::RegisterProfilePrefs( registry->RegisterBooleanPref(prefs::kEnableEncryptedMedia, true); registry->RegisterStringPref(prefs::kPrefixedVideoFullscreenApiAvailability, "runtime-enabled"); @@ -74,7 +74,7 @@ new file mode 100644 diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink/renderer/core/dom/document.cc --- a/third_party/blink/renderer/core/dom/document.cc +++ b/third_party/blink/renderer/core/dom/document.cc -@@ -4587,9 +4587,14 @@ void Document::SetURL(const KURL& url) { +@@ -4534,9 +4534,14 @@ void Document::SetURL(const KURL& url) { TRACE_EVENT_FLAG_FLOW_IN | TRACE_EVENT_FLAG_FLOW_OUT, "url", new_url.GetString().Utf8()); @@ -92,7 +92,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 -@@ -4227,10 +4227,9 @@ +@@ -4203,10 +4203,9 @@ }, { name: "TextFragmentIdentifiers", diff --git a/build/cromite_patches/Disable-third-party-origin-trials.patch b/build/cromite_patches/Disable-third-party-origin-trials.patch index 58123eb08ea1f6231b11769c5a452b1cb7d05d4d..d84685550ae4ca12f0c6d2e5ea8d89367374ad2e 100644 --- a/build/cromite_patches/Disable-third-party-origin-trials.patch +++ b/build/cromite_patches/Disable-third-party-origin-trials.patch @@ -76,7 +76,7 @@ diff --git a/components/embedder_support/origin_trials/origin_trial_policy_impl. diff --git a/content/browser/renderer_host/navigation_request.cc b/content/browser/renderer_host/navigation_request.cc --- a/content/browser/renderer_host/navigation_request.cc +++ b/content/browser/renderer_host/navigation_request.cc -@@ -9142,7 +9142,6 @@ void NavigationRequest::SetSourceSiteInstanceToInitiatorIfNeeded() { +@@ -9141,7 +9141,6 @@ void NavigationRequest::SetSourceSiteInstanceToInitiatorIfNeeded() { void NavigationRequest::ForceEnableOriginTrials( const std::vector& trials) { DCHECK(!HasCommitted()); @@ -116,7 +116,7 @@ diff --git a/content/browser/renderer_host/origin_trial_state_host_impl.cc b/con diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc --- a/content/renderer/render_frame_impl.cc +++ b/content/renderer/render_frame_impl.cc -@@ -538,10 +538,6 @@ void FillNavigationParamsRequest( +@@ -539,10 +539,6 @@ void FillNavigationParamsRequest( common_params.initiator_origin.value(); } @@ -127,7 +127,7 @@ diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_fra navigation_params->was_discarded = commit_params.was_discarded; navigation_params->document_ukm_source_id = commit_params.document_ukm_source_id; -@@ -569,12 +565,6 @@ void FillNavigationParamsRequest( +@@ -570,12 +566,6 @@ void FillNavigationParamsRequest( navigation_params->had_transient_user_activation = common_params.has_user_gesture; @@ -140,7 +140,7 @@ diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_fra if (!commit_params.early_hints_preloaded_resources.empty()) { navigation_params->early_hints_preloaded_resources = WebVector(); for (const auto& resource : commit_params.early_hints_preloaded_resources) { -@@ -635,11 +625,6 @@ blink::mojom::CommonNavigationParamsPtr MakeCommonNavigationParams( +@@ -636,11 +626,6 @@ blink::mojom::CommonNavigationParamsPtr MakeCommonNavigationParams( info->url_request.GetURLRequestExtraData().get()); DCHECK(url_request_extra_data); @@ -152,7 +152,7 @@ diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_fra blink::NavigationDownloadPolicy download_policy; download_policy.ApplyDownloadFramePolicy( info->is_opener_navigation, info->url_request.HasUserGesture(), -@@ -667,7 +652,7 @@ blink::mojom::CommonNavigationParamsPtr MakeCommonNavigationParams( +@@ -668,7 +653,7 @@ blink::mojom::CommonNavigationParamsPtr MakeCommonNavigationParams( info->url_request.HasUserGesture(), info->url_request.HasTextFragmentToken(), info->should_check_main_world_content_security_policy, @@ -237,7 +237,7 @@ diff --git a/third_party/blink/renderer/core/loader/document_loader.cc b/third_p return result; } -@@ -3123,10 +3110,6 @@ void DocumentLoader::CreateParserPostCommit() { +@@ -3132,10 +3119,6 @@ void DocumentLoader::CreateParserPostCommit() { mojom::blink::OriginTrialFeature::kTouchEventFeatureDetection); } diff --git a/build/cromite_patches/Disable-various-metrics.patch b/build/cromite_patches/Disable-various-metrics.patch index 865f4b6e7b26c8d85b4041f958af600f6e065d6d..bec7a747e797033d13319b651fa3612a0d817126 100644 --- a/build/cromite_patches/Disable-various-metrics.patch +++ b/build/cromite_patches/Disable-various-metrics.patch @@ -92,19 +92,19 @@ diff --git a/chrome/browser/android/ntp/most_visited_sites_bridge.cc b/chrome/br 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 -@@ -1095,7 +1095,7 @@ void BrowserProcessImpl::RegisterPrefs(PrefRegistrySimple* registry) { +@@ -1121,7 +1121,7 @@ void BrowserProcessImpl::RegisterPrefs(PrefRegistrySimple* registry) { #endif // BUILDFLAG(IS_CHROMEOS_ASH) registry->RegisterBooleanPref(metrics::prefs::kMetricsReportingEnabled, - GoogleUpdateSettings::GetCollectStatsConsent()); + false); registry->RegisterBooleanPref(prefs::kDevToolsRemoteDebuggingAllowed, true); - } + #if BUILDFLAG(IS_LINUX) 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 -@@ -88,7 +88,6 @@ +@@ -89,7 +89,6 @@ #include "chrome/browser/history/history_service_factory.h" #include "chrome/browser/interstitials/enterprise_util.h" #include "chrome/browser/lifetime/browser_shutdown.h" @@ -112,7 +112,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch #include "chrome/browser/media/audio_service_util.h" #include "chrome/browser/media/prefs/capture_device_ranking.h" #include "chrome/browser/media/router/media_router_feature.h" -@@ -5357,16 +5356,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation( +@@ -5363,16 +5362,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation( content::NavigationHandle* handle) { std::vector> throttles; @@ -129,7 +129,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch #if BUILDFLAG(IS_ANDROID) // TODO(davidben): This is insufficient to integrate with prerender properly. // https://crbug.com/370595 -@@ -5481,10 +5470,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation( +@@ -5487,10 +5476,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation( } } @@ -211,7 +211,7 @@ diff --git a/components/ntp_tiles/custom_links_manager_impl.cc b/components/ntp_ diff --git a/components/ntp_tiles/most_visited_sites.cc b/components/ntp_tiles/most_visited_sites.cc --- a/components/ntp_tiles/most_visited_sites.cc +++ b/components/ntp_tiles/most_visited_sites.cc -@@ -775,8 +775,6 @@ void MostVisitedSites::SaveTilesAndNotify( +@@ -776,8 +776,6 @@ void MostVisitedSites::SaveTilesAndNotify( : new_tiles; if (fixed_tiles.size() != new_tiles.size()) { diff --git a/build/cromite_patches/Do-not-build-API-keys-infobar.patch b/build/cromite_patches/Do-not-build-API-keys-infobar.patch index 1b1af5e9e08fdc14f614202619fffc5bad95b185..59bdc679e2939d1f674c9d10e74f5e535ff79f58 100644 --- a/build/cromite_patches/Do-not-build-API-keys-infobar.patch +++ b/build/cromite_patches/Do-not-build-API-keys-infobar.patch @@ -11,7 +11,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 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 -@@ -1393,8 +1393,6 @@ static_library("ui") { +@@ -1331,8 +1331,6 @@ static_library("ui") { "startup/default_browser_prompt/default_browser_prompt_manager.h", "startup/default_browser_prompt/default_browser_prompt_prefs.cc", "startup/default_browser_prompt/default_browser_prompt_prefs.h", diff --git a/build/cromite_patches/Do-not-compile-QR-code-sharing.patch b/build/cromite_patches/Do-not-compile-QR-code-sharing.patch index 61da4b60d56604fe0299bcd9b69aa838f270aaf8..f5f9fc985e7501b07ca737510114c2b094baf3be 100644 --- a/build/cromite_patches/Do-not-compile-QR-code-sharing.patch +++ b/build/cromite_patches/Do-not-compile-QR-code-sharing.patch @@ -19,7 +19,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 -@@ -3643,7 +3643,6 @@ generate_jni("chrome_jni_headers") { +@@ -3666,7 +3666,6 @@ generate_jni("chrome_jni_headers") { "../browser/share/android/java/src/org/chromium/chrome/browser/share/link_to_text/LinkToTextBridge.java", "../browser/share/android/java/src/org/chromium/chrome/browser/share/long_screenshots/bitmap_generation/LongScreenshotsTabService.java", "../browser/share/android/java/src/org/chromium/chrome/browser/share/long_screenshots/bitmap_generation/LongScreenshotsTabServiceFactory.java", @@ -30,15 +30,15 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn 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 -@@ -120,7 +120,6 @@ import org.chromium.chrome.browser.share.ShareButtonController; - import org.chromium.chrome.browser.share.ShareDelegate; - import org.chromium.chrome.browser.share.ShareDelegate.ShareOrigin; +@@ -123,7 +123,6 @@ import org.chromium.chrome.browser.share.ShareDelegate.ShareOrigin; import org.chromium.chrome.browser.share.ShareUtils; + import org.chromium.chrome.browser.share.page_info_sheet.PageInfoSharingControllerImpl; + import org.chromium.chrome.browser.share.page_info_sheet.PageSummaryButtonController; -import org.chromium.chrome.browser.share.qrcode.QrCodeDialog; import org.chromium.chrome.browser.share.scroll_capture.ScrollCaptureManager; import org.chromium.chrome.browser.tab.AccessibilityVisibilityHandler; import org.chromium.chrome.browser.tab.AutofillSessionLifetimeController; -@@ -614,10 +613,6 @@ public class RootUiCoordinator +@@ -598,10 +597,6 @@ public class RootUiCoordinator } public void onAttachFragment(Fragment fragment) { @@ -52,7 +52,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordi diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc --- a/chrome/browser/prefs/browser_prefs.cc +++ b/chrome/browser/prefs/browser_prefs.cc -@@ -1780,7 +1780,7 @@ void RegisterLocalState(PrefRegistrySimple* registry) { +@@ -1862,7 +1862,7 @@ void RegisterLocalState(PrefRegistrySimple* registry) { registry->RegisterBooleanPref(prefs::kUiAutomationProviderEnabled, false); #endif @@ -93,7 +93,7 @@ diff --git a/chrome/browser/share/android/java/src/org/chromium/chrome/browser/s } private void maybeAddLongScreenshotFirstPartyOption() { -@@ -414,25 +410,6 @@ public abstract class ChromeProvidedSharingOptionsProviderBase { +@@ -424,25 +420,6 @@ public abstract class ChromeProvidedSharingOptionsProviderBase { .build(); } @@ -122,7 +122,7 @@ diff --git a/chrome/browser/share/android/java/src/org/chromium/chrome/browser/s diff --git a/chrome/browser/share/android/java_sources.gni b/chrome/browser/share/android/java_sources.gni --- a/chrome/browser/share/android/java_sources.gni +++ b/chrome/browser/share/android/java_sources.gni -@@ -44,17 +44,6 @@ share_java_sources = [ +@@ -45,17 +45,6 @@ share_java_sources = [ "//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/page_info_sheet/feedback/FeedbackSheetMediator.java", "//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/page_info_sheet/feedback/FeedbackSheetProperties.java", "//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/page_info_sheet/feedback/FeedbackSheetViewBinder.java", @@ -172,7 +172,7 @@ diff --git a/chrome/browser/ui/browser_command_controller.cc b/chrome/browser/ui diff --git a/chrome/browser/ui/browser_commands.cc b/chrome/browser/ui/browser_commands.cc --- a/chrome/browser/ui/browser_commands.cc +++ b/chrome/browser/ui/browser_commands.cc -@@ -1667,6 +1667,7 @@ void SendTabToSelf(Browser* browser) { +@@ -1691,6 +1691,7 @@ void SendTabToSelf(Browser* browser) { } bool CanGenerateQrCode(const Browser* browser) { diff --git a/build/cromite_patches/Do-not-link-with-libatomic.patch b/build/cromite_patches/Do-not-link-with-libatomic.patch index 1a68ff084ad92df0d0149c621f73078f5bc091fa..6a2a77f47be93ddcd9efca6d699df53dfa4420cd 100644 --- a/build/cromite_patches/Do-not-link-with-libatomic.patch +++ b/build/cromite_patches/Do-not-link-with-libatomic.patch @@ -14,7 +14,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/base/BUILD.gn b/base/BUILD.gn --- a/base/BUILD.gn +++ b/base/BUILD.gn -@@ -1119,7 +1119,7 @@ component("base") { +@@ -1103,7 +1103,7 @@ component("base") { # more robust check for this. if (!use_sysroot && (is_android || is_chromeos || (is_linux && !is_castos)) && host_toolchain != "//build/toolchain/cros:host") { diff --git a/build/cromite_patches/Do-not-store-passwords-by-default.patch b/build/cromite_patches/Do-not-store-passwords-by-default.patch index e3011b090423bd19221e565a0e648c5b945cea34..23b2e2a8ba3a2fac402306f2482166eb2df9ca5d 100644 --- a/build/cromite_patches/Do-not-store-passwords-by-default.patch +++ b/build/cromite_patches/Do-not-store-passwords-by-default.patch @@ -10,7 +10,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/components/password_manager/core/browser/password_manager.cc b/components/password_manager/core/browser/password_manager.cc --- a/components/password_manager/core/browser/password_manager.cc +++ b/components/password_manager/core/browser/password_manager.cc -@@ -314,14 +314,14 @@ bool HasManuallyFilledFields(const PasswordForm& form) { +@@ -315,14 +315,14 @@ bool HasManuallyFilledFields(const PasswordForm& form) { void PasswordManager::RegisterProfilePrefs( user_prefs::PrefRegistrySyncable* registry) { registry->RegisterBooleanPref( @@ -25,9 +25,9 @@ diff --git a/components/password_manager/core/browser/password_manager.cc b/comp - prefs::kCredentialsEnableAutosignin, true, + prefs::kCredentialsEnableAutosignin, false, user_prefs::PrefRegistrySyncable::SYNCABLE_PRIORITY_PREF); - registry->RegisterStringPref(prefs::kSyncPasswordHash, std::string(), - PrefRegistry::NO_REGISTRATION_FLAGS); -@@ -361,9 +361,9 @@ void PasswordManager::RegisterProfilePrefs( + registry->RegisterBooleanPref( + prefs::kWasAutoSignInFirstRunExperienceShown, false, +@@ -357,9 +357,9 @@ void PasswordManager::RegisterProfilePrefs( user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); registry->RegisterBooleanPref(prefs::kPasswordsPrefWithNewLabelUsed, false); #if BUILDFLAG(IS_ANDROID) diff --git a/build/cromite_patches/DoH-improvements.patch b/build/cromite_patches/DoH-improvements.patch index f7d6bea72812af0df7cc8f6adb9d3f79f122adb1..ae1e6dfac735bcee3323c50fcfb56036af405980 100644 --- a/build/cromite_patches/DoH-improvements.patch +++ b/build/cromite_patches/DoH-improvements.patch @@ -45,7 +45,7 @@ diff --git a/chrome/browser/net/secure_dns_util.cc b/chrome/browser/net/secure_d diff --git a/chrome/browser/net/stub_resolver_config_reader.cc b/chrome/browser/net/stub_resolver_config_reader.cc --- a/chrome/browser/net/stub_resolver_config_reader.cc +++ b/chrome/browser/net/stub_resolver_config_reader.cc -@@ -83,6 +83,7 @@ enum class SecureDnsModeDetailsForHistogram { +@@ -79,6 +79,7 @@ enum class SecureDnsModeDetailsForHistogram { #if BUILDFLAG(IS_WIN) bool ShouldDisableDohForWindowsParentalControls() { @@ -53,7 +53,7 @@ diff --git a/chrome/browser/net/stub_resolver_config_reader.cc b/chrome/browser/ return GetWinParentalControls().web_filter; } #endif // BUILDFLAG(IS_WIN) -@@ -189,6 +190,7 @@ void StubResolverConfigReader::UpdateNetworkService(bool record_metrics) { +@@ -166,6 +167,7 @@ void StubResolverConfigReader::UpdateNetworkService(bool record_metrics) { } bool StubResolverConfigReader::ShouldDisableDohForManaged() { @@ -61,7 +61,7 @@ diff --git a/chrome/browser/net/stub_resolver_config_reader.cc b/chrome/browser/ // This function ignores cloud policies which are loaded on a per-profile basis. #if BUILDFLAG(IS_ANDROID) // Check for MDM/management/owner apps. android_has_owner_ is true if either a -@@ -217,6 +219,7 @@ bool StubResolverConfigReader::ShouldDisableDohForManaged() { +@@ -194,6 +196,7 @@ bool StubResolverConfigReader::ShouldDisableDohForManaged() { } bool StubResolverConfigReader::ShouldDisableDohForParentalControls() { @@ -84,7 +84,7 @@ diff --git a/chrome/browser/privacy/secure_dns_bridge.cc b/chrome/browser/privac diff --git a/chrome/browser/ui/webui/settings/settings_secure_dns_handler.cc b/chrome/browser/ui/webui/settings/settings_secure_dns_handler.cc --- a/chrome/browser/ui/webui/settings/settings_secure_dns_handler.cc +++ b/chrome/browser/ui/webui/settings/settings_secure_dns_handler.cc -@@ -120,7 +120,7 @@ base::Value::List SecureDnsHandler::GetSecureDnsResolverList() { +@@ -126,7 +126,7 @@ base::Value::List SecureDnsHandler::GetSecureDnsResolverList() { for (const net::DohProviderEntry* entry : providers_) { net::DnsOverHttpsConfig doh_config({entry->doh_server_config}); base::Value::Dict dict; diff --git a/build/cromite_patches/Enable-Certificate-Transparency.patch b/build/cromite_patches/Enable-Certificate-Transparency.patch index 0b1008875cf4109db3873335342e19f156565786..3cfb20af4593c626087312a6e2e4848fa2e3bc08 100644 --- a/build/cromite_patches/Enable-Certificate-Transparency.patch +++ b/build/cromite_patches/Enable-Certificate-Transparency.patch @@ -30,12 +30,12 @@ diff --git a/chrome/browser/browser_features.h b/chrome/browser/browser_features BASE_DECLARE_FEATURE(kBookmarkTriggerForPrerender2); +BASE_DECLARE_FEATURE(kCertificateTransparency); BASE_DECLARE_FEATURE(kCertificateTransparencyAskBeforeEnabling); + BASE_DECLARE_FEATURE(kCertVerificationNetworkTime); BASE_DECLARE_FEATURE(kClosedTabCache); - 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 -@@ -1017,7 +1017,7 @@ bool SystemNetworkContextManager::IsCertificateTransparencyEnabled() { +@@ -1031,7 +1031,7 @@ bool SystemNetworkContextManager::IsCertificateTransparencyEnabled() { // - on an opt-in basis for other builds and embedders, controlled with the // kCertificateTransparencyAskBeforeEnabling flag return base::FeatureList::IsEnabled( diff --git a/build/cromite_patches/Enable-ImprovedBookmarks-by-default.patch b/build/cromite_patches/Enable-ImprovedBookmarks-by-default.patch index 7809b81a1d3581e744a7f9df73a0b3221549564f..2a521cb078634acf265487b8c7591ac102c0fe2c 100644 --- a/build/cromite_patches/Enable-ImprovedBookmarks-by-default.patch +++ b/build/cromite_patches/Enable-ImprovedBookmarks-by-default.patch @@ -82,7 +82,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm 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 -@@ -862,7 +862,7 @@ public abstract class ChromeFeatureList { +@@ -887,7 +887,7 @@ public abstract class ChromeFeatureList { public static final MutableFlagWithSafeDefault sAdaptiveButtonInTopToolbarCustomizationV2 = newMutableFlagWithSafeDefault(ADAPTIVE_BUTTON_IN_TOP_TOOLBAR_CUSTOMIZATION_V2, false); public static final MutableFlagWithSafeDefault sAndroidImprovedBookmarks = diff --git a/build/cromite_patches/Enable-StrictOriginIsolation-and-SitePerProcess.patch b/build/cromite_patches/Enable-StrictOriginIsolation-and-SitePerProcess.patch index 6e5c5718228caf0888247f4eae6d3111ece88517..f00aef851ac7d42880e371fc500cccc358681314 100644 --- a/build/cromite_patches/Enable-StrictOriginIsolation-and-SitePerProcess.patch +++ b/build/cromite_patches/Enable-StrictOriginIsolation-and-SitePerProcess.patch @@ -20,7 +20,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc --- a/chrome/browser/chrome_content_browser_client.cc +++ b/chrome/browser/chrome_content_browser_client.cc -@@ -1585,7 +1585,7 @@ void ChromeContentBrowserClient::RegisterLocalStatePrefs( +@@ -1594,7 +1594,7 @@ void ChromeContentBrowserClient::RegisterLocalStatePrefs( registry->RegisterFilePathPref(prefs::kDiskCacheDir, base::FilePath()); registry->RegisterIntegerPref(prefs::kDiskCacheSize, 0); registry->RegisterStringPref(prefs::kIsolateOrigins, std::string()); @@ -28,8 +28,8 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch + registry->RegisterBooleanPref(prefs::kSitePerProcess, true); registry->RegisterBooleanPref(prefs::kTabFreezingEnabled, true); registry->RegisterIntegerPref(prefs::kSCTAuditingHashdanceReportCount, 0); - #if BUILDFLAG(IS_CHROMEOS) -@@ -1606,7 +1606,7 @@ void ChromeContentBrowserClient::RegisterProfilePrefs( + registry->RegisterBooleanPref(prefs::kDataURLWhitespacePreservationEnabled, +@@ -1617,7 +1617,7 @@ void ChromeContentBrowserClient::RegisterProfilePrefs( // user policy in addition to the same named ones in Local State (which are // used for mapping the command-line flags). registry->RegisterStringPref(prefs::kIsolateOrigins, std::string()); diff --git a/build/cromite_patches/Enable-darken-websites-checkbox-in-themes.patch b/build/cromite_patches/Enable-darken-websites-checkbox-in-themes.patch index ef4076d38f4640b736a888b1511376c6c5671b2e..edf934740247df10599bf7c1271f8b0643a99b65 100644 --- a/build/cromite_patches/Enable-darken-websites-checkbox-in-themes.patch +++ b/build/cromite_patches/Enable-darken-websites-checkbox-in-themes.patch @@ -14,13 +14,13 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json --- a/chrome/browser/flag-metadata.json +++ b/chrome/browser/flag-metadata.json -@@ -1913,9 +1913,9 @@ +@@ -1967,9 +1967,9 @@ "expiry_milestone": -1 }, { - "name": "darken-websites-checkbox-in-themes-setting", - "owners": [ "nemco@google.com", "wenyufu@google.com", "twellington@chromium.org" ], -- "expiry_milestone": 130 +- "expiry_milestone": 140 + "name": "darken-websites-checkbox-in-themes-setting", // this is always enabled in Bromite + "owners": [ "nemco@google.com", "wenyufu@google.com", "twellington@chromium.org" ], // - + "expiry_milestone": -1 diff --git a/build/cromite_patches/Enable-fwrapv-in-Clang-for-non-UBSan-builds.patch b/build/cromite_patches/Enable-fwrapv-in-Clang-for-non-UBSan-builds.patch index deec4a7a197d8400975e808de9db64ec780993ec..d7f93186d93dbab386afd50d4443647fef8355b5 100644 --- a/build/cromite_patches/Enable-fwrapv-in-Clang-for-non-UBSan-builds.patch +++ b/build/cromite_patches/Enable-fwrapv-in-Clang-for-non-UBSan-builds.patch @@ -45,7 +45,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 -@@ -380,6 +380,10 @@ config("compiler") { +@@ -383,6 +383,10 @@ config("compiler") { } } diff --git a/build/cromite_patches/Enable-native-Android-autofill.patch b/build/cromite_patches/Enable-native-Android-autofill.patch index 9e53e43697bb68a06a1ce9e2d982bc007d9898eb..a85731f4a1ad3ea3ea1bffe770a503033f45222f 100644 --- a/build/cromite_patches/Enable-native-Android-autofill.patch +++ b/build/cromite_patches/Enable-native-Android-autofill.patch @@ -15,9 +15,9 @@ See also: https://github.com/bromite/bromite/issues/547 Original License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html --- - .../settings/PasswordSettings.java | 82 ++++++++++++++++++- + .../settings/PasswordSettings.java | 83 ++++++++++++++++++- .../chrome/browser/settings/MainSettings.java | 3 +- - .../chromium/chrome/browser/tab/TabImpl.java | 43 ++++++++-- + .../chromium/chrome/browser/tab/TabImpl.java | 41 +++++++-- chrome/browser/about_flags.cc | 31 ------- chrome/browser/android/tab_android.cc | 3 +- chrome/browser/autofill/android/BUILD.gn | 2 +- @@ -25,7 +25,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html chrome/browser/flag_descriptions.cc | 6 -- chrome/browser/flag_descriptions.h | 3 - .../strings/android_chrome_strings.grd | 6 ++ - .../ui/autofill/autofill_client_provider.cc | 78 +----------------- + .../ui/autofill/autofill_client_provider.cc | 78 +---------------- .../ui/autofill/autofill_client_provider.h | 6 -- chrome/browser/ui/tab_helpers.cc | 4 +- components/android_autofill/browser/BUILD.gn | 1 + @@ -48,33 +48,35 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../autofill/core/common/autofill_features.h | 22 ----- .../autofill/core/common/autofill_prefs.cc | 4 +- .../autofill/core/common/autofill_prefs.h | 5 ++ - 33 files changed, 270 insertions(+), 167 deletions(-) + 33 files changed, 271 insertions(+), 165 deletions(-) create mode 100644 components/android_autofill/browser/java/src/org/chromium/components/autofill/BrowserSelectionActionMenuDelegate.java diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java -@@ -28,6 +28,7 @@ import androidx.preference.PreferenceCategory; +@@ -28,7 +28,9 @@ import androidx.preference.PreferenceCategory; import androidx.preference.PreferenceGroup; import org.chromium.base.BuildInfo; +import org.chromium.base.StrictModeContext; import org.chromium.base.metrics.RecordHistogram; - import org.chromium.chrome.R; - import org.chromium.chrome.browser.password_check.PasswordCheck; -@@ -58,6 +59,11 @@ import java.lang.annotation.Retention; ++import org.chromium.base.supplier.Supplier; + import org.chromium.base.supplier.ObservableSupplier; + import org.chromium.base.supplier.ObservableSupplierImpl; + import org.chromium.base.supplier.OneshotSupplier; +@@ -61,6 +63,11 @@ import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.Locale; +import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager; +import org.chromium.chrome.browser.ui.messages.snackbar.INeedSnackbarManager; +import org.chromium.chrome.browser.ui.messages.snackbar.Snackbar; -+import org.chromium.chrome.browser.ApplicationLifetime; ++import org.chromium.chrome.browser.lifetime.ApplicationLifetime; + /** * The "Passwords" screen in Settings, which allows the user to enable or disable password saving, * to view saved passwords (just the username and URL), and to delete saved passwords. -@@ -65,7 +71,7 @@ import java.util.Locale; +@@ -68,7 +75,7 @@ import java.util.Locale; public class PasswordSettings extends ChromeBaseSettingsFragment implements PasswordListObserver, Preference.OnPreferenceClickListener, @@ -83,29 +85,29 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage @IntDef({ TrustedVaultBannerState.NOT_SHOWN, TrustedVaultBannerState.OFFER_OPT_IN, -@@ -95,6 +101,12 @@ public class PasswordSettings extends ChromeBaseSettingsFragment +@@ -98,6 +105,12 @@ public class PasswordSettings extends ChromeBaseSettingsFragment public static final String PREF_TRUSTED_VAULT_BANNER = "trusted_vault_banner"; public static final String PREF_KEY_MANAGE_ACCOUNT_LINK = "manage_account_link"; + public static final String PREF_ANDROID_AUTOFILL_SWITCH = "android_autofill_switch"; + public static final String PREF_ANDROID_AUTOFILL_INCOGNITO_SWITCH = "android_autofill_incognito_switch"; + -+ private SnackbarManager mSnackbarManager; ++ private Supplier mSnackbarManagerSupplier; + private Snackbar mSnackbar; + private static final String PREF_KEY_CATEGORY_SAVED_PASSWORDS = "saved_passwords"; private static final String PREF_KEY_CATEGORY_EXCEPTIONS = "exceptions"; private static final String PREF_KEY_SAVED_PASSWORDS_NO_TEXT = "saved_passwords_no_text"; -@@ -127,6 +139,8 @@ public class PasswordSettings extends ChromeBaseSettingsFragment +@@ -130,6 +143,8 @@ public class PasswordSettings extends ChromeBaseSettingsFragment private Preference mLinkPref; private Menu mMenu; + private ChromeSwitchPreference mEnableAndroidAutofillSwitch; + private ChromeSwitchPreference mEnableAndroidAutofillIncognitoSwitch; private @ManagePasswordsReferrer int mManagePasswordsReferrer; - private BottomSheetController mBottomSheetController; - -@@ -306,6 +320,7 @@ public class PasswordSettings extends ChromeBaseSettingsFragment + private OneshotSupplier mBottomSheetControllerSupplier; + private final ObservableSupplierImpl mPageTitle = new ObservableSupplierImpl<>(); +@@ -315,6 +330,7 @@ public class PasswordSettings extends ChromeBaseSettingsFragment } createSavePasswordsSwitch(); @@ -113,7 +115,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage if (shouldShowAutoSigninOption()) { createAutoSignInCheckbox(); } -@@ -578,6 +593,71 @@ public class PasswordSettings extends ChromeBaseSettingsFragment +@@ -587,6 +603,71 @@ public class PasswordSettings extends ChromeBaseSettingsFragment getPrefService().getBoolean(Pref.CREDENTIALS_ENABLE_SERVICE)); } @@ -151,8 +153,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage + + mEnableAndroidAutofillSwitch.setOnPreferenceChangeListener((preference, newValue) -> { + getPrefService().setBoolean(Pref.AUTOFILL_ANDROID_ENABLED, (boolean) newValue); -+ if (!mSnackbarManager.isShowing()) -+ mSnackbarManager.showSnackbar(mSnackbar); ++ if (!mSnackbarManagerSupplier.get().isShowing()) ++ mSnackbarManagerSupplier.get().showSnackbar(mSnackbar); + return true; + }); + @@ -172,14 +174,14 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage + + mEnableAndroidAutofillIncognitoSwitch.setOnPreferenceChangeListener((preference, newValue) -> { + getPrefService().setBoolean(Pref.AUTOFILL_ANDROID_INCOGNITO_ENABLED, (boolean) newValue); -+ if (!mSnackbarManager.isShowing()) -+ mSnackbarManager.showSnackbar(mSnackbar); ++ if (!mSnackbarManagerSupplier.get().isShowing()) ++ mSnackbarManagerSupplier.get().showSnackbar(mSnackbar); + return true; + }); + } + -+ public void setSnackbarManager(SnackbarManager manager) { -+ mSnackbarManager = manager; ++ public void setSnackbarManagerSupplier(Supplier manager) { ++ mSnackbarManagerSupplier = manager; + } + private void createAutoSignInCheckbox() { @@ -188,20 +190,20 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java -@@ -462,8 +462,7 @@ public class MainSettings extends ChromeBaseSettingsFragment +@@ -482,8 +482,7 @@ public class MainSettings extends ChromeBaseSettingsFragment private void updateAutofillPreferences() { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O - && ChromeFeatureList.isEnabled( - AutofillFeatures.AUTOFILL_VIRTUAL_VIEW_STRUCTURE_ANDROID)) { + && ((false))) { + addPreferenceIfAbsent(PREF_AUTOFILL_SECTION); addPreferenceIfAbsent(PREF_AUTOFILL_OPTIONS); Preference preference = findPreference(PREF_AUTOFILL_OPTIONS); - preference.setFragment(null); diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.java -@@ -91,6 +91,13 @@ import java.lang.annotation.RetentionPolicy; +@@ -93,6 +93,13 @@ import java.lang.annotation.RetentionPolicy; import java.nio.ByteBuffer; import java.util.Objects; @@ -215,7 +217,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav /** * Implementation of the interface {@link Tab}. Contains and manages a {@link ContentView}. This * class is not intended to be extended. -@@ -1000,6 +1007,11 @@ class TabImpl implements Tab { +@@ -1011,6 +1018,11 @@ class TabImpl implements Tab { for (TabObserver observer : mObservers) observer.onDestroyed(this); mObservers.clear(); @@ -227,17 +229,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav mUserDataHost.destroy(); mTabViewManager.destroy(); hideNativePage(false, null); -@@ -1274,8 +1286,7 @@ class TabImpl implements Tab { +@@ -1284,6 +1296,7 @@ class TabImpl implements Tab { + * @return iff the AutofillProvider should provide a ViewStructure when prompted. */ boolean providesAutofillStructure() { - // TODO(b/326231439): Check pref and AutofillService! -- return ChromeFeatureList.isEnabled( -- AutofillFeatures.AUTOFILL_VIRTUAL_VIEW_STRUCTURE_ANDROID); -+ return true; - } - - // Forwarded from TabWebContentsDelegateAndroid. -@@ -2017,15 +2028,20 @@ class TabImpl implements Tab { ++ if ((true)) return true; + if (!ChromeFeatureList.isEnabled( + AutofillFeatures.AUTOFILL_VIRTUAL_VIEW_STRUCTURE_ANDROID)) { + return false; +@@ -2035,15 +2048,20 @@ class TabImpl implements Tab { * @return true if the the provider is available for the given WebContents. */ private boolean prepareAutofillProvider(WebContents newWebContents) { @@ -264,7 +264,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav mAutofillProvider = new AutofillProvider( getContext(), -@@ -2034,7 +2050,16 @@ class TabImpl implements Tab { +@@ -2052,7 +2070,16 @@ class TabImpl implements Tab { getContext().getString(R.string.app_name)); TabImplJni.get().initializeAutofillIfNecessary(mNativeTabAndroid); } @@ -285,7 +285,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -3858,28 +3858,6 @@ const FeatureEntry::FeatureVariation kAutofillGranularFillingAvailableVariations +@@ -3830,28 +3830,6 @@ const FeatureEntry::FeatureVariation kAutofillGranularFillingAvailableVariations kAutofillGranularFillingAvailableVariationWithExpandControlVisibleOnSelectionOnly), nullptr}}; @@ -311,10 +311,10 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc - -#endif // BUILDFLAG(IS_ANDROID) - - const FeatureEntry::FeatureParam kDefaultBrowserPromptRefreshAggressive[] = { - {"max_prompt_count", "-1"}, - {"reprompt_duration", "7d"}, -@@ -6184,15 +6162,6 @@ const FeatureEntry kFeatureEntries[] = { + const FeatureEntry::FeatureParam + kPrerender2WarmUpCompositorTriggerPointDidCommitLoad[] = { + {"trigger_point", "did_commit_load"}}; +@@ -6188,15 +6166,6 @@ const FeatureEntry kFeatureEntries[] = { #endif // BUILDFLAG(IS_CHROMEOS_ASH) #if BUILDFLAG(IS_ANDROID) @@ -371,7 +371,7 @@ diff --git a/chrome/browser/autofill/android/java/src/org/chromium/chrome/browse diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc --- a/chrome/browser/flag_descriptions.cc +++ b/chrome/browser/flag_descriptions.cc -@@ -728,12 +728,6 @@ const char kAutofillVcnEnrollRequestTimeoutDescription[] = +@@ -754,12 +754,6 @@ const char kAutofillVcnEnrollRequestTimeoutDescription[] = "VCN enrollment request. Upon timeout, the client will terminate the VCN " "enrollment UI, but the request may still succeed server-side."; @@ -387,7 +387,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h --- a/chrome/browser/flag_descriptions.h +++ b/chrome/browser/flag_descriptions.h -@@ -428,9 +428,6 @@ extern const char kAutofillUpstreamUpdatedUiDescription[]; +@@ -441,9 +441,6 @@ extern const char kAutofillUpstreamUpdatedUiDescription[]; extern const char kAutofillVcnEnrollRequestTimeoutName[]; extern const char kAutofillVcnEnrollRequestTimeoutDescription[]; @@ -400,7 +400,7 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd -@@ -681,6 +681,12 @@ For more settings that use data to improve your Chrome experience, go to Save passwords @@ -540,7 +540,7 @@ diff --git a/chrome/browser/ui/autofill/autofill_client_provider.h b/chrome/brow diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc --- a/chrome/browser/ui/tab_helpers.cc +++ b/chrome/browser/ui/tab_helpers.cc -@@ -377,9 +377,7 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) { +@@ -390,9 +390,7 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) { web_contents); chrome::ChainedBackNavigationTracker::CreateForWebContents(web_contents); chrome_browser_net::NetErrorTabHelper::CreateForWebContents(web_contents); @@ -723,7 +723,7 @@ new file mode 100644 diff --git a/components/autofill/content/browser/content_autofill_driver.cc b/components/autofill/content/browser/content_autofill_driver.cc --- a/components/autofill/content/browser/content_autofill_driver.cc +++ b/components/autofill/content/browser/content_autofill_driver.cc -@@ -247,6 +247,13 @@ void RouteToManager(ContentAutofillDriver& source, +@@ -249,6 +249,13 @@ void RouteToManager(ContentAutofillDriver& source, AutofillManager& manager = target.GetAutofillManager(); (manager.* manager_fun)(WithNewVersion(std::forward(args))...); @@ -737,7 +737,7 @@ diff --git a/components/autofill/content/browser/content_autofill_driver.cc b/co }, source, Lift(source, std::forward(args))...); } -@@ -604,6 +611,10 @@ ContentAutofillDriver::GetAutofillAgent() { +@@ -614,6 +621,10 @@ ContentAutofillDriver::GetAutofillAgent() { return autofill_agent_; } @@ -764,7 +764,7 @@ diff --git a/components/autofill/content/browser/content_autofill_driver.h b/com content::RenderFrameHost* render_frame_host() { return &*render_frame_host_; } const content::RenderFrameHost* render_frame_host() const { return &*render_frame_host_; -@@ -294,6 +300,10 @@ class ContentAutofillDriver : public AutofillDriver, +@@ -298,6 +304,10 @@ class ContentAutofillDriver : public AutofillDriver, // The factory that created this driver. Outlives `this`. const raw_ref owner_; @@ -807,7 +807,7 @@ diff --git a/components/autofill/content/browser/content_autofill_driver_factory diff --git a/components/autofill/content/renderer/autofill_agent.cc b/components/autofill/content/renderer/autofill_agent.cc --- a/components/autofill/content/renderer/autofill_agent.cc +++ b/components/autofill/content/renderer/autofill_agent.cc -@@ -1352,12 +1352,16 @@ void AutofillAgent::ShowSuggestions( +@@ -1390,12 +1390,16 @@ void AutofillAgent::ShowSuggestions( password_generation_agent_->ShowPasswordGenerationSuggestions( input_element)) { is_popup_possibly_visible_ = true; @@ -824,7 +824,7 @@ diff --git a/components/autofill/content/renderer/autofill_agent.cc b/components } } -@@ -1366,12 +1370,14 @@ void AutofillAgent::ShowSuggestions( +@@ -1404,12 +1408,14 @@ void AutofillAgent::ShowSuggestions( // `FormControlTypeForAutofill()` because we are interested in whether the // field is *currently* a password field, not whether it has ever been a // password field. @@ -842,7 +842,7 @@ diff --git a/components/autofill/content/renderer/autofill_agent.cc b/components diff --git a/components/autofill/content/renderer/password_autofill_agent.cc b/components/autofill/content/renderer/password_autofill_agent.cc --- a/components/autofill/content/renderer/password_autofill_agent.cc +++ b/components/autofill/content/renderer/password_autofill_agent.cc -@@ -854,7 +854,10 @@ void PasswordAutofillAgent::UpdatePasswordStateForTextChange( +@@ -844,7 +844,10 @@ void PasswordAutofillAgent::UpdatePasswordStateForTextChange( void PasswordAutofillAgent::TrackAutofilledElement( const WebFormControlElement& element) { @@ -883,7 +883,7 @@ diff --git a/components/autofill/core/browser/autofill_driver_factory.cc b/compo diff --git a/components/autofill/core/browser/autofill_manager.h b/components/autofill/core/browser/autofill_manager.h --- a/components/autofill/core/browser/autofill_manager.h +++ b/components/autofill/core/browser/autofill_manager.h -@@ -219,6 +219,8 @@ class AutofillManager +@@ -220,6 +220,8 @@ class AutofillManager LifecycleState new_state, base::PassKey pass_key); @@ -895,7 +895,7 @@ diff --git a/components/autofill/core/browser/autofill_manager.h b/components/au diff --git a/components/autofill/core/browser/browser_autofill_manager.cc b/components/autofill/core/browser/browser_autofill_manager.cc --- a/components/autofill/core/browser/browser_autofill_manager.cc +++ b/components/autofill/core/browser/browser_autofill_manager.cc -@@ -703,6 +703,8 @@ BrowserAutofillManager::~BrowserAutofillManager() { +@@ -719,6 +719,8 @@ BrowserAutofillManager::~BrowserAutofillManager() { single_field_form_fill_router_->CancelPendingQueries(); } @@ -907,7 +907,7 @@ diff --git a/components/autofill/core/browser/browser_autofill_manager.cc b/comp diff --git a/components/autofill/core/browser/browser_autofill_manager.h b/components/autofill/core/browser/browser_autofill_manager.h --- a/components/autofill/core/browser/browser_autofill_manager.h +++ b/components/autofill/core/browser/browser_autofill_manager.h -@@ -112,6 +112,8 @@ class BrowserAutofillManager : public AutofillManager { +@@ -117,6 +117,8 @@ class BrowserAutofillManager : public AutofillManager { ~BrowserAutofillManager() override; @@ -919,7 +919,7 @@ diff --git a/components/autofill/core/browser/browser_autofill_manager.h b/compo 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 -@@ -890,7 +890,7 @@ BASE_FEATURE(kAutofillEnableSecurityTouchEventFilteringAndroid, +@@ -776,7 +776,7 @@ BASE_FEATURE(kAutofillEnableSecurityTouchEventFilteringAndroid, BASE_FEATURE(kAutofillVirtualViewStructureAndroid, "AutofillVirtualViewStructureAndroid", base::FEATURE_DISABLED_BY_DEFAULT); @@ -931,7 +931,7 @@ diff --git a/components/autofill/core/common/autofill_features.cc b/components/a diff --git a/components/autofill/core/common/autofill_features.h b/components/autofill/core/common/autofill_features.h --- a/components/autofill/core/common/autofill_features.h +++ b/components/autofill/core/common/autofill_features.h -@@ -298,28 +298,6 @@ COMPONENT_EXPORT(AUTOFILL) +@@ -262,28 +262,6 @@ COMPONENT_EXPORT(AUTOFILL) BASE_DECLARE_FEATURE(kAutofillEnableSecurityTouchEventFilteringAndroid); COMPONENT_EXPORT(AUTOFILL) BASE_DECLARE_FEATURE(kAutofillVirtualViewStructureAndroid); @@ -984,7 +984,7 @@ diff --git a/components/autofill/core/common/autofill_prefs.cc b/components/auto diff --git a/components/autofill/core/common/autofill_prefs.h b/components/autofill/core/common/autofill_prefs.h --- a/components/autofill/core/common/autofill_prefs.h +++ b/components/autofill/core/common/autofill_prefs.h -@@ -104,6 +104,11 @@ inline constexpr char kAutofillUploadEventsLastResetTimestamp[] = +@@ -114,6 +114,11 @@ inline constexpr char kAutofillUploadEventsLastResetTimestamp[] = // retention policy was run. inline constexpr char kAutocompleteLastVersionRetentionPolicy[] = "autocomplete.retention_policy_last_version"; diff --git a/build/cromite_patches/Enable-network-isolation-features.patch b/build/cromite_patches/Enable-network-isolation-features.patch index 4b9d384ef605dcb934fc2bc2c12fdcc534c769c6..b68ecdbb67038e907288551e9b08bb7536b4c97a 100644 --- a/build/cromite_patches/Enable-network-isolation-features.patch +++ b/build/cromite_patches/Enable-network-isolation-features.patch @@ -5,24 +5,46 @@ Subject: Enable network isolation features Enable SplitCacheByNetworkIsolationKey, kSplitHostCacheByNetworkIsolationKey, kPartitionConnectionsByNetworkIsolationKey, kPartitionHttpServerPropertiesByNetworkIsolationKey, kPartitionSSLSessionsByNetworkIsolationKey, PartitionExpectCTStateByNetworkIsolationKey, -PartitionNelAndReportingByNetworkIsolationKey +PartitionNelAndReportingByNetworkIsolationKey, kSplitCacheByNavigationInitiator License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html --- - .../net/base/features_cc/Enable-network-isolation-features.inc | 3 +++ - .../cpp/features_cc/Enable-network-isolation-features.inc | 1 + - 2 files changed, 4 insertions(+) + .../browser/net/profile_network_context_service.cc | 2 +- + .../Enable-network-isolation-features.inc | 12 ++++++++++++ + .../Enable-network-isolation-features.inc | 1 + + 3 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 cromite_flags/net/base/features_cc/Enable-network-isolation-features.inc create mode 100644 cromite_flags/services/network/public/cpp/features_cc/Enable-network-isolation-features.inc +diff --git a/chrome/browser/net/profile_network_context_service.cc b/chrome/browser/net/profile_network_context_service.cc +--- a/chrome/browser/net/profile_network_context_service.cc ++++ b/chrome/browser/net/profile_network_context_service.cc +@@ -1026,7 +1026,7 @@ bool GetHttpCacheBackendResetParam(PrefService* local_state) { + field_trial = base::FeatureList::GetFieldTrial( + net::features::kSplitCacheByIncludeCredentials); + current_field_trial_status += +- (field_trial ? field_trial->group_name() : "None"); ++ (field_trial ? field_trial->group_name() : "EnableFeatureForTests"); + + // For the HTTP Cache keying experiments, if a flag indicates that the user is + // in an experiment group, modify `current_field_trial_status` to ensure that diff --git a/cromite_flags/net/base/features_cc/Enable-network-isolation-features.inc b/cromite_flags/net/base/features_cc/Enable-network-isolation-features.inc new file mode 100644 --- /dev/null +++ b/cromite_flags/net/base/features_cc/Enable-network-isolation-features.inc -@@ -0,0 +1,3 @@ -+SET_CROMITE_FEATURE_ENABLED(kSplitCacheByNetworkIsolationKey); +@@ -0,0 +1,12 @@ +SET_CROMITE_FEATURE_ENABLED(kSplitCodeCacheByNetworkIsolationKey); +SET_CROMITE_FEATURE_ENABLED(kPartitionConnectionsByNetworkIsolationKey); ++ ++SET_CROMITE_FEATURE_ENABLED(kSplitCacheByIncludeCredentials); ++ ++// enable http cache partition ++SET_CROMITE_FEATURE_ENABLED(kSplitCacheByNetworkIsolationKey); ++ ++// most restricted option (ByNavigationInitiator) used ++// it generates a cache key isolating all requests per initiator. ++// requests with initiators with an opaque origin are not cached ++SET_CROMITE_FEATURE_ENABLED(kSplitCacheByNavigationInitiator); diff --git a/cromite_flags/services/network/public/cpp/features_cc/Enable-network-isolation-features.inc b/cromite_flags/services/network/public/cpp/features_cc/Enable-network-isolation-features.inc new file mode 100644 --- /dev/null diff --git a/build/cromite_patches/Enable-share-intent.patch b/build/cromite_patches/Enable-share-intent.patch index 7c077d4abe4e89409de4ab4bc575a277d6a84b79..8777f720b8c678f3edc7f26b7d763d5570cda768 100644 --- a/build/cromite_patches/Enable-share-intent.patch +++ b/build/cromite_patches/Enable-share-intent.patch @@ -45,7 +45,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 -@@ -1018,6 +1018,7 @@ chrome_java_sources = [ +@@ -1021,6 +1021,7 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/signin/SyncConsentActivity.java", "java/src/org/chromium/chrome/browser/signin/SyncConsentActivityLauncherImpl.java", "java/src/org/chromium/chrome/browser/signin/SyncConsentFragment.java", @@ -201,7 +201,7 @@ new file mode 100644 diff --git a/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java b/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java --- a/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java -@@ -178,6 +178,9 @@ public class IntentHandler { +@@ -180,6 +180,9 @@ public class IntentHandler { private static final String EXTRA_TAB_LAUNCH_TYPE = "org.chromium.chrome.browser.tab_launch_type"; @@ -211,7 +211,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.j /** A hash code for the URL to verify intent data hasn't been modified. */ public static final String EXTRA_DATA_HASH_CODE = "org.chromium.chrome.browser.data_hash"; -@@ -1325,6 +1328,17 @@ public class IntentHandler { +@@ -1364,6 +1367,17 @@ public class IntentHandler { return IntentUtils.safeGetSerializableExtra(intent, EXTRA_TAB_LAUNCH_TYPE); } @@ -229,7 +229,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.j /** * Creates an Intent that will launch a ChromeTabbedActivity on the new tab page. The Intent * will be trusted and therefore able to launch Incognito tabs. -@@ -1454,7 +1468,7 @@ public class IntentHandler { +@@ -1493,7 +1507,7 @@ public class IntentHandler { String headers = getExtraHeadersFromIntent(intent); headers = maybeAddAdditionalContentHeaders(intent, url, headers); @@ -293,7 +293,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessIni import org.chromium.chrome.browser.usb.UsbNotificationManager; import org.chromium.chrome.browser.util.AfterStartupTaskUtils; import org.chromium.chrome.browser.webapps.ChromeWebApkHost; -@@ -683,6 +684,7 @@ public class ProcessInitializationHandler { +@@ -675,6 +676,7 @@ public class ProcessInitializationHandler { ::makeDeferredRecordings); tasks.add(WebApkUninstallTracker::runDeferredTasks); @@ -468,18 +468,18 @@ new file mode 100644 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 -@@ -295,6 +295,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { +@@ -298,6 +298,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { &kSearchReadyOmniboxFeature, &kRelatedSearchesAllLanguage, &kRelatedSearchesSwitch, + &kSharedIntentUI, &kReportParentalControlSitesChild, &kSearchInCCT, - &kSearchResumptionModuleAndroid, + &kSearchInCCTAlternateTapHandling, 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 -@@ -437,6 +437,7 @@ public abstract class ChromeFeatureList { +@@ -441,6 +441,7 @@ public abstract class ChromeFeatureList { public static final String READER_MODE_IN_CCT = "ReaderModeInCCT"; public static final String READING_LIST_ENABLE_SYNC_TRANSPORT_MODE_UPON_SIGNIN = "ReadingListEnableSyncTransportModeUponSignIn"; @@ -490,7 +490,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd -@@ -5761,6 +5761,19 @@ To change this setting, BEGIN_LINKdelete the Chrome d +@@ -5870,6 +5870,19 @@ To change this setting, BEGIN_LINKdelete the Chrome d Make sure a phone app is enabled on this device diff --git a/build/cromite_patches/Experimental-user-scripts-support.patch b/build/cromite_patches/Experimental-user-scripts-support.patch index 97fb6f52c3d8579bd30d66e3cb3b47c97518b174..963efb9eb1cbcb873de88648e2480f267c6a7890 100644 --- a/build/cromite_patches/Experimental-user-scripts-support.patch +++ b/build/cromite_patches/Experimental-user-scripts-support.patch @@ -48,7 +48,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../renderer/chrome_render_thread_observer.cc | 5 + components/components_strings.grd | 1 + components/user_scripts/README.md | 150 ++++ - components/user_scripts/android/BUILD.gn | 84 ++ + components/user_scripts/android/BUILD.gn | 86 ++ .../java/res/layout/accept_script_item.xml | 160 ++++ .../java/res/layout/accept_script_list.xml | 10 + .../java/res/layout/scripts_preference.xml | 40 + @@ -93,7 +93,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html components/user_scripts/common/host_id.cc | 31 + components/user_scripts/common/host_id.h | 35 + .../user_scripts/common/script_constants.h | 33 + - components/user_scripts/common/url_pattern.cc | 808 ++++++++++++++++++ + components/user_scripts/common/url_pattern.cc | 809 ++++++++++++++++++ components/user_scripts/common/url_pattern.h | 302 +++++++ .../user_scripts/common/url_pattern_set.cc | 335 ++++++++ .../user_scripts/common/url_pattern_set.h | 160 ++++ @@ -135,7 +135,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../Experimental-user-scripts-support.inc | 13 + ipc/ipc_message_start.h | 1 + tools/gritsettings/resource_ids.spec | 6 + - 108 files changed, 9480 insertions(+), 2 deletions(-) + 108 files changed, 9483 insertions(+), 2 deletions(-) create mode 100644 components/user_scripts/README.md create mode 100755 components/user_scripts/android/BUILD.gn create mode 100644 components/user_scripts/android/java/res/layout/accept_script_item.xml @@ -239,7 +239,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn ":chrome_base_module_resources", ":ui_locale_string_resources", "//chrome/android/webapk/libs/common:splash_resources", -@@ -674,6 +678,7 @@ if (current_toolchain == default_toolchain) { +@@ -684,6 +688,7 @@ if (current_toolchain == default_toolchain) { "//components/ukm/android:java", "//components/url_formatter/android:url_formatter_java", "//components/user_prefs/android:java", @@ -250,7 +250,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn diff --git a/chrome/android/java/res/xml/main_preferences.xml b/chrome/android/java/res/xml/main_preferences.xml --- a/chrome/android/java/res/xml/main_preferences.xml +++ b/chrome/android/java/res/xml/main_preferences.xml -@@ -137,6 +137,11 @@ found in the LICENSE file. +@@ -151,6 +151,11 @@ for the previous order (main_preferences_legacy). --> android:key="useragent_settings" android:order="20" android:title="@string/prefs_useragent_settings"/> @@ -273,7 +273,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/Downlo import java.io.File; -@@ -409,6 +410,11 @@ public class DownloadUtils { +@@ -411,6 +412,11 @@ public class DownloadUtils { String referrer, @DownloadOpenSource int source, Context context) { @@ -288,7 +288,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/Downlo diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java b/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java --- a/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java -@@ -146,6 +146,8 @@ import java.util.Date; +@@ -144,6 +144,8 @@ import java.util.Date; import java.util.List; import java.util.Locale; @@ -297,7 +297,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessIni /** * Handles the initialization dependences of the browser process. This is meant to handle the * initialization that is not tied to any particular Activity, and the logic that should only be -@@ -620,6 +622,8 @@ public class ProcessInitializationHandler { +@@ -615,6 +617,8 @@ public class ProcessInitializationHandler { DefaultBrowserInfo.initBrowserFetcher(); @@ -326,7 +326,7 @@ diff --git a/chrome/android/java_sources.gni b/chrome/android/java_sources.gni diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -3457,6 +3457,13 @@ static_library("browser") { +@@ -3475,6 +3475,13 @@ static_library("browser") { ] deps += [ "//chrome/android/modules/dev_ui/provider:native" ] } @@ -343,7 +343,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -181,6 +181,7 @@ +@@ -180,6 +180,7 @@ #include "components/ui_devtools/switches.h" #include "components/variations/variations_switches.h" #include "components/version_info/channel.h" @@ -354,15 +354,15 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc --- a/chrome/browser/prefs/browser_prefs.cc +++ b/chrome/browser/prefs/browser_prefs.cc -@@ -271,6 +271,7 @@ +@@ -275,6 +275,7 @@ + #include "components/ntp_tiles/popular_sites_impl.h" #include "components/permissions/contexts/geolocation_permission_context_android.h" - #include "components/query_tiles/tile_service_prefs.h" #include "components/webapps/browser/android/install_prompt_prefs.h" +#include "components/user_scripts/browser/user_script_prefs.h" #else // BUILDFLAG(IS_ANDROID) #include "chrome/browser/cart/cart_service.h" #include "chrome/browser/companion/core/promo_handler.h" -@@ -1893,6 +1894,9 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry, +@@ -1975,6 +1976,9 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry, translate::TranslatePrefs::RegisterProfilePrefs(registry); omnibox::RegisterProfilePrefs(registry); ZeroSuggestProvider::RegisterProfilePrefs(registry); @@ -375,7 +375,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse diff --git a/chrome/browser/profiles/BUILD.gn b/chrome/browser/profiles/BUILD.gn --- a/chrome/browser/profiles/BUILD.gn +++ b/chrome/browser/profiles/BUILD.gn -@@ -77,6 +77,9 @@ source_set("profile") { +@@ -78,6 +78,9 @@ source_set("profile") { "//content/public/browser", "//extensions/buildflags", ] @@ -388,7 +388,7 @@ diff --git a/chrome/browser/profiles/BUILD.gn b/chrome/browser/profiles/BUILD.gn diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc --- a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc +++ b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc -@@ -537,6 +537,10 @@ +@@ -549,6 +549,10 @@ #include "chrome/browser/enterprise/data_controls/reporting_service.h" #endif @@ -399,7 +399,7 @@ diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc namespace chrome { void AddProfilesExtraParts(ChromeBrowserMainParts* main_parts) { -@@ -1328,6 +1332,9 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -1357,6 +1361,9 @@ void ChromeBrowserMainExtraPartsProfiles:: #endif WebDataServiceFactory::GetInstance(); webrtc_event_logging::WebRtcEventLogManagerKeyedServiceFactory::GetInstance(); @@ -412,7 +412,7 @@ diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc 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 -@@ -118,6 +118,10 @@ +@@ -121,6 +121,10 @@ #include "extensions/common/manifest.h" #endif @@ -423,7 +423,7 @@ diff --git a/chrome/browser/profiles/profile_manager.cc b/chrome/browser/profile #if BUILDFLAG(ENABLE_SESSION_SERVICE) #include "chrome/browser/sessions/app_session_service_factory.h" #include "chrome/browser/sessions/session_service_factory.h" -@@ -1517,6 +1521,13 @@ void ProfileManager::DoFinalInitForServices(Profile* profile, +@@ -1528,6 +1532,13 @@ void ProfileManager::DoFinalInitForServices(Profile* profile, ChildAccountServiceFactory::GetForProfile(profile)->Init(); SupervisedUserServiceFactory::GetForProfile(profile)->Init(); ListFamilyMembersServiceFactory::GetForProfile(profile)->Init(); @@ -501,7 +501,7 @@ diff --git a/chrome/browser/profiles/renderer_updater.h b/chrome/browser/profile diff --git a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc b/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc --- a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc +++ b/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc -@@ -92,6 +92,7 @@ +@@ -80,6 +80,7 @@ #include "components/security_interstitials/content/known_interception_disclosure_ui.h" #include "components/security_interstitials/content/urls.h" #include "components/site_engagement/content/site_engagement_service.h" @@ -509,10 +509,10 @@ diff --git a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc b/chrom #include "content/public/browser/web_contents.h" #include "content/public/browser/web_ui.h" #include "content/public/common/content_client.h" -@@ -457,6 +458,10 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui, - return &NewWebUI; - if (url.host_piece() == chrome::kChromeUIVersionHost) - return &NewWebUI; +@@ -413,6 +414,10 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui, + history_clusters_internals::kChromeUIHistoryClustersInternalsHost) { + return &NewWebUI; + } +#if BUILDFLAG(IS_ANDROID) + if (url.host_piece() == user_scripts::kChromeUIUserScriptsHost) + return &NewWebUI; @@ -553,7 +553,7 @@ diff --git a/chrome/common/renderer_configuration.mojom b/chrome/common/renderer diff --git a/chrome/renderer/BUILD.gn b/chrome/renderer/BUILD.gn --- a/chrome/renderer/BUILD.gn +++ b/chrome/renderer/BUILD.gn -@@ -233,6 +233,12 @@ static_library("renderer") { +@@ -242,6 +242,12 @@ static_library("renderer") { "//v8", ] @@ -569,7 +569,7 @@ diff --git a/chrome/renderer/BUILD.gn b/chrome/renderer/BUILD.gn diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer/chrome_content_renderer_client.cc --- a/chrome/renderer/chrome_content_renderer_client.cc +++ b/chrome/renderer/chrome_content_renderer_client.cc -@@ -256,6 +256,11 @@ +@@ -267,6 +267,11 @@ #include "chrome/renderer/media/chrome_key_systems.h" #endif @@ -581,9 +581,9 @@ diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer using autofill::AutofillAgent; using autofill::PasswordAutofillAgent; using autofill::PasswordGenerationAgent; -@@ -450,6 +455,14 @@ void ChromeContentRendererClient::RenderThreadStarted() { +@@ -465,6 +470,14 @@ void ChromeContentRendererClient::RenderThreadStarted() { WebString::FromASCII(extensions::kExtensionScheme)); - #endif + #endif // BUILDFLAG(ENABLE_EXTENSIONS_CORE) +#if BUILDFLAG(IS_ANDROID) + user_scripts::UserScriptsRendererClient* userscript_client = @@ -596,7 +596,7 @@ diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer #if BUILDFLAG(ENABLE_SPELLCHECK) if (!spellcheck_) InitSpellCheck(); -@@ -613,6 +626,15 @@ void ChromeContentRendererClient::RenderFrameCreated( +@@ -625,6 +638,15 @@ void ChromeContentRendererClient::RenderFrameCreated( registry); #endif @@ -612,7 +612,7 @@ diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer #if BUILDFLAG(ENABLE_PPAPI) new PepperHelper(render_frame); #endif -@@ -1667,6 +1689,17 @@ void ChromeContentRendererClient::RunScriptsAtDocumentStart( +@@ -1684,6 +1706,17 @@ void ChromeContentRendererClient::RunScriptsAtDocumentStart( render_frame); // |render_frame| might be dead by now. #endif @@ -630,7 +630,7 @@ diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer } void ChromeContentRendererClient::RunScriptsAtDocumentEnd( -@@ -1676,6 +1709,17 @@ void ChromeContentRendererClient::RunScriptsAtDocumentEnd( +@@ -1693,6 +1726,17 @@ void ChromeContentRendererClient::RunScriptsAtDocumentEnd( render_frame); // |render_frame| might be dead by now. #endif @@ -648,7 +648,7 @@ diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer } void ChromeContentRendererClient::RunScriptsAtDocumentIdle( -@@ -1685,6 +1729,17 @@ void ChromeContentRendererClient::RunScriptsAtDocumentIdle( +@@ -1702,6 +1746,17 @@ void ChromeContentRendererClient::RunScriptsAtDocumentIdle( render_frame); // |render_frame| might be dead by now. #endif @@ -678,7 +678,7 @@ diff --git a/chrome/renderer/chrome_render_thread_observer.cc b/chrome/renderer/ #if BUILDFLAG(IS_CHROMEOS_ASH) #include "chrome/renderer/ash_merge_session_loader_throttle.h" #endif -@@ -224,6 +226,9 @@ void ChromeRenderThreadObserver::SetConfiguration( +@@ -222,6 +224,9 @@ void ChromeRenderThreadObserver::SetConfiguration( chrome::mojom::DynamicParamsPtr params) { base::AutoLock lock(dynamic_params_lock_); dynamic_params_ = std::move(params); @@ -691,7 +691,7 @@ diff --git a/chrome/renderer/chrome_render_thread_observer.cc b/chrome/renderer/ diff --git a/components/components_strings.grd b/components/components_strings.grd --- a/components/components_strings.grd +++ b/components/components_strings.grd -@@ -340,6 +340,7 @@ +@@ -341,6 +341,7 @@ @@ -858,7 +858,7 @@ diff --git a/components/user_scripts/android/BUILD.gn b/components/user_scripts/ new file mode 100755 --- /dev/null +++ b/components/user_scripts/android/BUILD.gn -@@ -0,0 +1,84 @@ +@@ -0,0 +1,86 @@ +# This file is part of Bromite. + +# Bromite is free software: you can redistribute it and/or modify @@ -878,17 +878,18 @@ new file mode 100755 +import("//third_party/jni_zero/jni_zero.gni") + +generate_jni("user_scripts_jni_headers") { -+ sources = [ "java/src/org/chromium/components/user_scripts/UserScriptsBridge.java" ] ++ sources = ++ [ "java/src/org/chromium/components/user_scripts/UserScriptsBridge.java" ] +} + +android_resources("java_resources") { + sources = [ -+ "java/res/xml/userscripts_preferences.xml", + "java/res/layout/accept_script_item.xml", + "java/res/layout/accept_script_list.xml", + "java/res/layout/scripts_preference.xml", -+ "java/res/values/dimens.xml" -+ ] ++ "java/res/values/dimens.xml", ++ "java/res/xml/userscripts_preferences.xml", ++ ] + + deps = [ + "//components/browser_ui/strings/android:browser_ui_strings_grd", @@ -901,29 +902,30 @@ new file mode 100755 +android_library("java") { + sources = [ + "java/src/org/chromium/components/user_scripts/FragmentWindowAndroid.java", -+ "java/src/org/chromium/components/user_scripts/UserScriptsPreferences.java", -+ "java/src/org/chromium/components/user_scripts/UserScriptsBridge.java", + "java/src/org/chromium/components/user_scripts/IUserScriptsUtils.java", ++ "java/src/org/chromium/components/user_scripts/ScriptInfo.java", + "java/src/org/chromium/components/user_scripts/ScriptListBaseAdapter.java", + "java/src/org/chromium/components/user_scripts/ScriptListPreference.java", -+ "java/src/org/chromium/components/user_scripts/ScriptInfo.java", ++ "java/src/org/chromium/components/user_scripts/UserScriptsBridge.java", ++ "java/src/org/chromium/components/user_scripts/UserScriptsPreferences.java", + ] + deps = [ + ":java_resources", + "//base:base_java", -+ "//third_party/jni_zero:jni_zero_java", -+ "//components/embedder_support/android:browser_context_java", ++ "//base:content_uri_utils_java", ++ "//build/android:build_java", + "//components/browser_ui/settings/android:java", + "//components/browser_ui/widget/android:java", -+ "//content/public/android:content_java", ++ "//components/embedder_support/android:browser_context_java", + "//components/prefs/android:java", -+ "//build/android:build_java", -+ "//third_party/androidx:androidx_fragment_fragment_java", -+ "//third_party/androidx:androidx_recyclerview_recyclerview_java", ++ "//content/public/android:content_java", + "//third_party/androidx:androidx_annotation_annotation_java", + "//third_party/androidx:androidx_appcompat_appcompat_resources_java", -+ "//third_party/androidx:androidx_preference_preference_java", + "//third_party/androidx:androidx_core_core_java", ++ "//third_party/androidx:androidx_fragment_fragment_java", ++ "//third_party/androidx:androidx_preference_preference_java", ++ "//third_party/androidx:androidx_recyclerview_recyclerview_java", ++ "//third_party/jni_zero:jni_zero_java", + "//ui/android:ui_java", + ] + srcjar_deps = [ ":user_scripts_jni_headers" ] @@ -938,8 +940,8 @@ new file mode 100755 + deps = [ + ":user_scripts_jni_headers", + "//base", -+ "//components/user_scripts/browser", + "//components/permissions", ++ "//components/user_scripts/browser", + "//content/public/browser", + ] +} @@ -4770,7 +4772,7 @@ diff --git a/components/user_scripts/common/url_pattern.cc b/components/user_scr new file mode 100755 --- /dev/null +++ b/components/user_scripts/common/url_pattern.cc -@@ -0,0 +1,808 @@ +@@ -0,0 +1,809 @@ +// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. @@ -4861,18 +4863,19 @@ new file mode 100755 +} + +bool IsValidPortForScheme(std::string_view scheme, std::string_view port) { -+ if (port == "*") ++ if (port == "*") { + return true; ++ } + + // Only accept non-wildcard ports if the scheme uses ports. -+ if (url::DefaultPortForScheme(scheme.data(), scheme.length()) == -+ url::PORT_UNSPECIFIED) { ++ if (url::DefaultPortForScheme(scheme) == url::PORT_UNSPECIFIED) { + return false; + } + + int parsed_port = url::PORT_UNSPECIFIED; -+ if (!base::StringToInt(port, &parsed_port)) ++ if (!base::StringToInt(port, &parsed_port)) { + return false; ++ } + return (parsed_port >= 0) && (parsed_port < 65536); +} + @@ -10469,7 +10472,7 @@ diff --git a/ipc/ipc_message_start.h b/ipc/ipc_message_start.h diff --git a/tools/gritsettings/resource_ids.spec b/tools/gritsettings/resource_ids.spec --- a/tools/gritsettings/resource_ids.spec +++ b/tools/gritsettings/resource_ids.spec -@@ -1053,6 +1053,12 @@ +@@ -1061,6 +1061,12 @@ "components/search_engine_descriptions_strings.grd": { "messages": [7260], }, diff --git a/build/cromite_patches/Eyeo-Adblock-for-Cromite.patch b/build/cromite_patches/Eyeo-Adblock-for-Cromite.patch index a4cec6105318b0ce457a62d0dd44fae4a112755b..56d2225acb069abaf15d47dfab8fd69b490a95a0 100644 --- a/build/cromite_patches/Eyeo-Adblock-for-Cromite.patch +++ b/build/cromite_patches/Eyeo-Adblock-for-Cromite.patch @@ -33,6 +33,7 @@ deactivation of all pop-ups (default disabled) .../settings/settings_menu/settings_menu.html | 5 + chrome/browser/ui/tab_helpers.cc | 6 +- .../adblock_internals_page_handler_impl.cc | 23 +- + .../adblock_internals/adblock_internals_ui.cc | 3 +- .../common/extensions/api/_api_features.json | 4 +- .../extensions/api/_permission_features.json | 8 - .../common/extensions/api/adblock_private.idl | 8 + @@ -42,7 +43,7 @@ deactivation of all pop-ups (default disabled) .../java/res/layout/adblock_custom_item.xml | 14 +- .../layout/adblock_filter_lists_list_item.xml | 15 + ...ences.xml => eyeo_adblock_preferences.xml} | 39 +- - .../components/adblock/AdblockController.java | 51 +- + .../components/adblock/AdblockController.java | 53 +- .../AdblockAllowedDomainsFragment.java | 7 +- .../AdblockCustomFilterListsFragment.java | 32 +- .../AdblockCustomFiltersFragment.java | 7 +- @@ -55,7 +56,7 @@ deactivation of all pop-ups (default disabled) .../browser/adblock_url_loader_factory.h | 7 +- .../browser/adblock_webcontents_observer.cc | 25 +- .../browser/adblock_webcontents_observer.h | 5 +- - .../content/browser/element_hider_impl.cc | 10 +- + .../content/browser/element_hider_impl.cc | 9 +- .../browser/frame_hierarchy_builder.cc | 3 +- .../browser/resource_classification_runner.h | 9 + .../resource_classification_runner_impl.cc | 83 +- @@ -98,9 +99,9 @@ deactivation of all pop-ups (default disabled) .../adblock/core/subscription/subscription.cc | 18 + .../adblock/core/subscription/subscription.h | 3 + .../subscription_collection_impl.cc | 1 + - .../core/subscription/subscription_config.cc | 24 +- + .../core/subscription/subscription_config.cc | 26 +- .../core/subscription/subscription_config.h | 6 +- - .../subscription_downloader_impl.cc | 21 +- + .../subscription_downloader_impl.cc | 29 +- .../subscription_persistent_metadata.h | 1 + .../subscription_persistent_metadata_impl.cc | 7 + .../subscription_persistent_metadata_impl.h | 1 + @@ -129,7 +130,7 @@ deactivation of all pop-ups (default disabled) .../blink/renderer/core/css/style_engine.h | 1 + .../renderer/core/exported/web_document.cc | 15 +- .../definitions/adblock_private.d.ts | 14 + - 119 files changed, 6723 insertions(+), 1309 deletions(-) + 120 files changed, 6731 insertions(+), 1315 deletions(-) create mode 100644 chrome/browser/resources/settings/adblock_page/adblock_page.html create mode 100644 chrome/browser/resources/settings/adblock_page/adblock_page.ts rename components/adblock/android/java/res/xml/{adblock_preferences.xml => eyeo_adblock_preferences.xml} (56%) @@ -158,10 +159,10 @@ 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. ---> - - -@@ -86,6 +77,11 @@ Use of this source code is governed by the GPLv3 that can be found in the compon + +@@ -125,6 +116,11 @@ for the previous order (main_preferences_legacy). --> android:key="adblock" android:order="13" android:title="@string/prefs_adblock"/> @@ -172,10 +173,10 @@ diff --git a/chrome/android/java/res/xml/main_preferences.xml b/chrome/android/j + android:title="@string/adblock_settings_title" /> + android:key="accessibility" + android:order="24" android:title="@string/prefs_accessibility"/> - + Snippets are pieces of JavaScript code, injected by the Adblock Plus, that execute within the context of a website and combat advanced ads that circumvent ordinary blocking. + The functionality is ONLY allowed for the list -+ abp-filters-anti-cv.txt ++ abp-filters-anti-cv.txt + which is activated by this setting. +
Open ABP anti-circumvention filter list repo +
Open ABP Snippets Overview @@ -1569,7 +1570,7 @@ new file mode 100644 diff --git a/chrome/browser/resources/settings/basic_page/basic_page.html b/chrome/browser/resources/settings/basic_page/basic_page.html --- a/chrome/browser/resources/settings/basic_page/basic_page.html +++ b/chrome/browser/resources/settings/basic_page/basic_page.html -@@ -31,6 +31,13 @@ +@@ -47,6 +47,13 @@ @@ -1608,7 +1609,7 @@ diff --git a/chrome/browser/resources/settings/page_visibility.ts b/chrome/brows diff --git a/chrome/browser/resources/settings/route.ts b/chrome/browser/resources/settings/route.ts --- a/chrome/browser/resources/settings/route.ts +++ b/chrome/browser/resources/settings/route.ts -@@ -213,6 +213,10 @@ function createRoutes(): SettingsRoutes { +@@ -228,6 +228,10 @@ function createRoutes(): SettingsRoutes { r.FONTS = r.APPEARANCE.createChild('/fonts'); } @@ -1633,7 +1634,7 @@ diff --git a/chrome/browser/resources/settings/router.ts b/chrome/browser/resour diff --git a/chrome/browser/resources/settings/settings.ts b/chrome/browser/resources/settings/settings.ts --- a/chrome/browser/resources/settings/settings.ts +++ b/chrome/browser/resources/settings/settings.ts -@@ -50,6 +50,7 @@ export {AppearanceBrowserProxy, AppearanceBrowserProxyImpl} from './appearance_p +@@ -51,6 +51,7 @@ export {AppearanceBrowserProxy, AppearanceBrowserProxyImpl} from './appearance_p export {SettingsAppearancePageElement, SystemTheme} from './appearance_page/appearance_page.js'; export {HomeUrlInputElement} from './appearance_page/home_url_input.js'; export {SettingsAutofillPageElement} from './autofill_page/autofill_page.js'; @@ -1667,7 +1668,7 @@ diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc #include "chrome/browser/bookmarks/bookmark_model_factory.h" #include "chrome/browser/breadcrumbs/breadcrumb_manager_tab_helper.h" #include "chrome/browser/browser_process.h" -@@ -377,6 +378,8 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) { +@@ -378,6 +379,8 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) { } } @@ -1676,7 +1677,7 @@ diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc AdblockWebContentObserver::CreateForWebContents( web_contents, adblock::SubscriptionServiceFactory::GetForBrowserContext( -@@ -385,7 +388,8 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) { +@@ -386,7 +389,8 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) { web_contents->GetBrowserContext()), adblock::SitekeyStorageFactory::GetForBrowserContext( web_contents->GetBrowserContext()), @@ -1747,11 +1748,24 @@ diff --git a/chrome/browser/ui/webui/adblock_internals/adblock_internals_page_ha } void AdblockInternalsPageHandlerImpl::OnTelemetryServiceInfoArrived( +diff --git a/chrome/browser/ui/webui/adblock_internals/adblock_internals_ui.cc b/chrome/browser/ui/webui/adblock_internals/adblock_internals_ui.cc +--- a/chrome/browser/ui/webui/adblock_internals/adblock_internals_ui.cc ++++ b/chrome/browser/ui/webui/adblock_internals/adblock_internals_ui.cc +@@ -30,8 +30,7 @@ AdblockInternalsUI::AdblockInternalsUI(content::WebUI* web_ui) + content::WebUIDataSource* source = content::WebUIDataSource::CreateAndAdd( + profile_, chrome::kChromeUIAdblockInternalsHost); + webui::SetupWebUIDataSource(source, +- base::make_span(kAdblockInternalsResources, +- kAdblockInternalsResourcesSize), ++ base::span(kAdblockInternalsResources), + IDR_ADBLOCK_INTERNALS_ADBLOCK_INTERNALS_HTML); + } + diff --git a/chrome/common/extensions/api/_api_features.json b/chrome/common/extensions/api/_api_features.json --- a/chrome/common/extensions/api/_api_features.json +++ b/chrome/common/extensions/api/_api_features.json -@@ -66,7 +66,7 @@ - }], +@@ -70,7 +70,7 @@ + }, "adblockPrivate": [{ "dependencies": ["permission:adblockPrivate"], - "contexts": ["blessed_extension"] @@ -1759,7 +1773,7 @@ diff --git a/chrome/common/extensions/api/_api_features.json b/chrome/common/ext }, { "channel": "stable", "contexts": ["webui"], -@@ -517,7 +517,7 @@ +@@ -537,7 +537,7 @@ }, "eyeoFilteringPrivate": [{ "dependencies": ["permission:eyeoFilteringPrivate"], @@ -1771,8 +1785,8 @@ diff --git a/chrome/common/extensions/api/_api_features.json b/chrome/common/ext diff --git a/chrome/common/extensions/api/_permission_features.json b/chrome/common/extensions/api/_permission_features.json --- a/chrome/common/extensions/api/_permission_features.json +++ b/chrome/common/extensions/api/_permission_features.json -@@ -60,10 +60,6 @@ - "5107DE9024C329EEA9C9A72D94C16723790C6422" // Apps Developer Tool Dev. +@@ -71,10 +71,6 @@ + "extension" ] }, - "adblockPrivate": { @@ -1782,7 +1796,7 @@ diff --git a/chrome/common/extensions/api/_permission_features.json b/chrome/com "autofillPrivate": { "channel": "trunk", "extension_types": ["extension", "platform_app"], -@@ -375,10 +371,6 @@ +@@ -388,10 +384,6 @@ "extension", "legacy_packaged_app", "hosted_app", "platform_app" ] }, @@ -1964,7 +1978,7 @@ diff --git a/components/adblock/android/adblock_strings.grd b/components/adblock + + Snippets are pieces of JavaScript code, injected by the Adblock Plus, that execute within the context of a website and combat advanced ads that circumvent ordinary blocking. +The functionality is ONLY allowed for the list -+https://easylist-downloads.adblockplus.org/abp-filters-anti-cv.txt ++https://www.cromite.org/filters/abp-filters-anti-cv.txt +which is activated by this setting. + + @@ -2146,6 +2160,15 @@ rename to components/adblock/android/java/res/xml/eyeo_adblock_preferences.xml diff --git a/components/adblock/android/java/src/org/chromium/components/adblock/AdblockController.java b/components/adblock/android/java/src/org/chromium/components/adblock/AdblockController.java --- a/components/adblock/android/java/src/org/chromium/components/adblock/AdblockController.java +++ b/components/adblock/android/java/src/org/chromium/components/adblock/AdblockController.java +@@ -50,7 +50,7 @@ public final class AdblockController extends FilteringConfiguration { + super("adblock"); + try { + mAcceptableAds = +- new URL("https://easylist-downloads.adblockplus.org/exceptionrules.txt"); ++ new URL("about:blank"); + } catch (java.net.MalformedURLException e) { + mAcceptableAds = null; + } @@ -73,6 +73,10 @@ public final class AdblockController extends FilteringConfiguration { private String mTitle; private String mVersion = ""; @@ -2903,7 +2926,7 @@ diff --git a/components/adblock/content/browser/element_hider_impl.cc b/componen return; } auto* info = ElementHiderInfo::GetOrCreateForCurrentDocument(frame_host); -@@ -239,13 +239,9 @@ void InsertUserCSSAndApplyElemHidingEmuJS( +@@ -239,13 +239,10 @@ void InsertUserCSSAndApplyElemHidingEmuJS( } if (!input.snippet_js.empty()) { @@ -2913,9 +2936,9 @@ diff --git a/components/adblock/content/browser/element_hider_impl.cc b/componen - frame_host->ExecuteJavaScriptInIsolatedWorld( + frame_host->ExecuteJavaScriptForTests( base::UTF8ToUTF16(input.snippet_js), -- content::RenderFrameHost::JavaScriptResultCallback(), + content::RenderFrameHost::JavaScriptResultCallback(), - content::ISOLATED_WORLD_ID_ADBLOCK); -+ content::RenderFrameHost::JavaScriptResultCallback()); ++ content::ISOLATED_WORLD_ID_GLOBAL); DVLOG(1) << "[eyeo] Snippet - executed JS in frame" << " '" << frame_host->GetFrameName() << "'"; @@ -4998,6 +5021,15 @@ diff --git a/components/adblock/core/subscription/subscription_collection_impl.c diff --git a/components/adblock/core/subscription/subscription_config.cc b/components/adblock/core/subscription/subscription_config.cc --- a/components/adblock/core/subscription/subscription_config.cc +++ b/components/adblock/core/subscription/subscription_config.cc +@@ -24,7 +24,7 @@ namespace { + int g_port_for_testing = 0; + + std::string GetHost() { +- GURL url("https://easylist-downloads.adblockplus.org"); ++ GURL url("https://www.cromite.org/filters/"); + if (!g_port_for_testing) { + return url.spec(); + } @@ -239,17 +239,23 @@ const std::vector& config::GetKnownSubscriptions() { SubscriptionFirstRunBehavior::SubscribeIfLocaleMatch, SubscriptionPrivilegedFilterStatus::Forbidden}, @@ -5123,7 +5155,25 @@ diff --git a/components/adblock/core/subscription/subscription_downloader_impl.c if (!subscription_url.SchemeIs("https") && !subscription_url.SchemeIs("data")) { return false; -@@ -192,11 +191,11 @@ void SubscriptionDownloaderImpl::OnDownloadFinished( +@@ -156,12 +155,14 @@ void SubscriptionDownloaderImpl::OnHeadersOnlyDownloaded( + scoped_refptr headers) { + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); + DCHECK(ongoing_ping_.has_value()); +- base::Time date; ++ + std::string version(""); + + // Parse date or Date from response headers. +- if (headers && headers->GetDateValue(&date)) { +- version = utils::ConvertBaseTimeToABPFilterVersionFormat(date); ++ if (headers) { ++ if (auto date = headers->GetDateValue()) { ++ version = utils::ConvertBaseTimeToABPFilterVersionFormat(date.value()); ++ } + } + + std::move(std::get(*ongoing_ping_)) +@@ -192,11 +193,11 @@ void SubscriptionDownloaderImpl::OnDownloadFinished( persistent_metadata_->IncrementDownloadErrorCount(subscription_url); if (std::get(download_it->second) == RetryPolicy::RetryUntilSucceeded) { @@ -5137,7 +5187,7 @@ diff --git a/components/adblock/core/subscription/subscription_downloader_impl.c << subscription_url << ", will abort"; std::move(std::get(download_it->second)) .Run(nullptr); -@@ -213,8 +212,10 @@ void SubscriptionDownloaderImpl::OnDownloadFinished( +@@ -213,8 +214,10 @@ void SubscriptionDownloaderImpl::OnDownloadFinished( TRACE_ID_LOCAL(GenerateTraceId(subscription_url)), "url", subscription_url.spec()); @@ -5149,7 +5199,7 @@ diff --git a/components/adblock/core/subscription/subscription_downloader_impl.c base::BindOnce(&SubscriptionDownloaderImpl::OnConversionFinished, weak_ptr_factory_.GetWeakPtr(), subscription_url)); } -@@ -228,14 +229,14 @@ void SubscriptionDownloaderImpl::OnConversionFinished( +@@ -228,14 +231,14 @@ void SubscriptionDownloaderImpl::OnConversionFinished( TRACE_ID_LOCAL(GenerateTraceId(subscription_url))); const auto download_it = ongoing_downloads_.find(subscription_url); if (download_it == ongoing_downloads_.end()) { @@ -5166,7 +5216,7 @@ diff --git a/components/adblock/core/subscription/subscription_downloader_impl.c << " successfully"; std::move(std::get(download_it->second)) .Run(std::move( -@@ -278,7 +279,7 @@ void SubscriptionDownloaderImpl::AbortWithWarning( +@@ -278,7 +281,7 @@ void SubscriptionDownloaderImpl::AbortWithWarning( if (ongoing_download_it == ongoing_downloads_.end()) { return; } @@ -10519,7 +10569,7 @@ diff --git a/content/browser/websockets/websocket_connector_impl.cc b/content/br diff --git a/content/public/browser/content_browser_client.cc b/content/public/browser/content_browser_client.cc --- a/content/public/browser/content_browser_client.cc +++ b/content/public/browser/content_browser_client.cc -@@ -1066,7 +1066,7 @@ void ContentBrowserClient::WillCreateURLLoaderFactory( +@@ -1065,7 +1065,7 @@ void ContentBrowserClient::WillCreateURLLoaderFactory( DCHECK(browser_context); } @@ -10528,7 +10578,7 @@ diff --git a/content/public/browser/content_browser_client.cc b/content/public/b return false; } -@@ -1075,9 +1075,11 @@ uint32_t ContentBrowserClient::GetWebSocketOptions(RenderFrameHost* frame) { +@@ -1074,9 +1074,11 @@ uint32_t ContentBrowserClient::GetWebSocketOptions(RenderFrameHost* frame) { } void ContentBrowserClient::CreateWebSocket( @@ -10543,7 +10593,7 @@ diff --git a/content/public/browser/content_browser_client.cc b/content/public/b diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h --- a/content/public/browser/content_browser_client.h +++ b/content/public/browser/content_browser_client.h -@@ -1994,7 +1994,7 @@ class CONTENT_EXPORT ContentBrowserClient { +@@ -2014,7 +2014,7 @@ class CONTENT_EXPORT ContentBrowserClient { scoped_refptr navigation_response_task_runner); // Returns true when the embedder wants to intercept a websocket connection. @@ -10552,7 +10602,7 @@ diff --git a/content/public/browser/content_browser_client.h b/content/public/br // Returns the WebSocket creation options. virtual uint32_t GetWebSocketOptions(RenderFrameHost* frame); -@@ -2016,9 +2016,11 @@ class CONTENT_EXPORT ContentBrowserClient { +@@ -2036,9 +2036,11 @@ class CONTENT_EXPORT ContentBrowserClient { // Always called on the UI thread and only when the Network Service is // enabled. virtual void CreateWebSocket( diff --git a/build/cromite_patches/Fix-chromium-build-bugs.patch b/build/cromite_patches/Fix-chromium-build-bugs.patch index 48668ddaf0665be69b08ca43392bf2f696db1849..c53d8ceaa4a016c8b01e71bf65a86b8420ea0c69 100644 --- a/build/cromite_patches/Fix-chromium-build-bugs.patch +++ b/build/cromite_patches/Fix-chromium-build-bugs.patch @@ -6,11 +6,13 @@ because of https://bugs.chromium.org/p/chromium/issues/detail?id=1491776#c10 --- BUILD.gn | 1 - + chrome/browser/extensions/api/BUILD.gn | 1 - .../navigation_predictor_metrics_document_data.h | 2 ++ chrome/browser/safe_browsing/BUILD.gn | 1 + chrome/browser/ui/browser_commands.cc | 1 + chrome/browser/ui/lens/lens_overlay_controller.cc | 1 + .../webid/fedcm_account_selection_view_desktop.cc | 1 + + .../ui/webui/searchbox/searchbox_handler.cc | 1 + .../component_updater/installer_policies/BUILD.gn | 1 + .../omnibox/browser/autocomplete_classifier.cc | 4 ++-- components/omnibox/browser/omnibox_field_trial.cc | 4 ++-- @@ -18,12 +20,12 @@ https://bugs.chromium.org/p/chromium/issues/detail?id=1491776#c10 .../phishing_classifier/phishing_image_embedder.cc | 14 +++----------- content/browser/browser_interface_binders.cc | 1 + net/BUILD.gn | 1 + - 13 files changed, 17 insertions(+), 16 deletions(-) + 15 files changed, 18 insertions(+), 17 deletions(-) diff --git a/BUILD.gn b/BUILD.gn --- a/BUILD.gn +++ b/BUILD.gn -@@ -410,7 +410,6 @@ group("gn_all") { +@@ -419,7 +419,6 @@ group("gn_all") { "//android_webview:empty_group", "//android_webview/test", "//android_webview/tools/automated_ui_tests:webview_ui_test_app_test_apk", @@ -31,6 +33,17 @@ diff --git a/BUILD.gn b/BUILD.gn "//android_webview/tools/sdk_sandbox", "//android_webview/tools/system_webview_shell", "//chrome/android:chrome_junit_tests", +diff --git a/chrome/browser/extensions/api/BUILD.gn b/chrome/browser/extensions/api/BUILD.gn +--- a/chrome/browser/extensions/api/BUILD.gn ++++ b/chrome/browser/extensions/api/BUILD.gn +@@ -34,7 +34,6 @@ group("api_implementations") { + "//chrome/browser/extensions/api/downloads_internal", + "//chrome/browser/extensions/api/experimental_ai_data", + "//chrome/browser/extensions/api/font_settings", +- "//chrome/browser/extensions/api/mdns", + "//chrome/browser/extensions/api/module", + "//chrome/browser/extensions/api/networking_private", + "//chrome/browser/extensions/api/omnibox", diff --git a/chrome/browser/navigation_predictor/navigation_predictor_metrics_document_data.h b/chrome/browser/navigation_predictor/navigation_predictor_metrics_document_data.h --- a/chrome/browser/navigation_predictor/navigation_predictor_metrics_document_data.h +++ b/chrome/browser/navigation_predictor/navigation_predictor_metrics_document_data.h @@ -46,8 +59,8 @@ diff --git a/chrome/browser/navigation_predictor/navigation_predictor_metrics_do 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 -@@ -198,6 +198,7 @@ static_library("safe_browsing") { - "//components/version_info", +@@ -200,6 +200,7 @@ static_library("safe_browsing") { + "//components/webdata/common", "//content/public/browser", "//services/preferences/public/mojom:mojom", + "//third_party/flatbuffers:flatbuffers", @@ -68,7 +81,7 @@ diff --git a/chrome/browser/ui/browser_commands.cc b/chrome/browser/ui/browser_c diff --git a/chrome/browser/ui/lens/lens_overlay_controller.cc b/chrome/browser/ui/lens/lens_overlay_controller.cc --- a/chrome/browser/ui/lens/lens_overlay_controller.cc +++ b/chrome/browser/ui/lens/lens_overlay_controller.cc -@@ -11,6 +11,7 @@ +@@ -12,6 +12,7 @@ #include "base/system/sys_info.h" #include "base/task/bind_post_task.h" #include "base/task/sequenced_task_runner.h" @@ -87,6 +100,17 @@ diff --git a/chrome/browser/ui/views/webid/fedcm_account_selection_view_desktop. #include "chrome/browser/accessibility/accessibility_state_utils.h" #include "chrome/browser/net/system_network_context_manager.h" #include "chrome/browser/ui/browser_finder.h" +diff --git a/chrome/browser/ui/webui/searchbox/searchbox_handler.cc b/chrome/browser/ui/webui/searchbox/searchbox_handler.cc +--- a/chrome/browser/ui/webui/searchbox/searchbox_handler.cc ++++ b/chrome/browser/ui/webui/searchbox/searchbox_handler.cc +@@ -6,6 +6,7 @@ + + #include "base/base64.h" + #include "base/base64url.h" ++#include "base/containers/contains.h" + #include "build/branding_buildflags.h" + #include "chrome/browser/bookmarks/bookmark_model_factory.h" + #include "chrome/browser/browser_process.h" diff --git a/components/component_updater/installer_policies/BUILD.gn b/components/component_updater/installer_policies/BUILD.gn --- a/components/component_updater/installer_policies/BUILD.gn +++ b/components/component_updater/installer_policies/BUILD.gn @@ -101,7 +125,7 @@ diff --git a/components/component_updater/installer_policies/BUILD.gn b/componen diff --git a/components/omnibox/browser/autocomplete_classifier.cc b/components/omnibox/browser/autocomplete_classifier.cc --- a/components/omnibox/browser/autocomplete_classifier.cc +++ b/components/omnibox/browser/autocomplete_classifier.cc -@@ -102,8 +102,8 @@ void AutocompleteClassifier::Classify( +@@ -94,8 +94,8 @@ void AutocompleteClassifier::Classify( metrics::OmniboxEventProto::PageClassification page_classification, AutocompleteMatch* match, GURL* alternate_nav_url) { @@ -132,7 +156,7 @@ diff --git a/components/omnibox/browser/omnibox_field_trial.cc b/components/omni diff --git a/components/plus_addresses/BUILD.gn b/components/plus_addresses/BUILD.gn --- a/components/plus_addresses/BUILD.gn +++ b/components/plus_addresses/BUILD.gn -@@ -96,6 +96,7 @@ source_set("plus_addresses") { +@@ -102,6 +102,7 @@ source_set("plus_addresses") { "//services/data_decoder/public/cpp", "//services/network/public/cpp", "//ui/base", @@ -167,7 +191,7 @@ diff --git a/components/safe_browsing/content/renderer/phishing_classifier/phish diff --git a/content/browser/browser_interface_binders.cc b/content/browser/browser_interface_binders.cc --- a/content/browser/browser_interface_binders.cc +++ b/content/browser/browser_interface_binders.cc -@@ -375,6 +375,7 @@ void BindDateTimeChooserForFrame( +@@ -376,6 +376,7 @@ void BindDateTimeChooserForFrame( void BindTextSuggestionHostForFrame( RenderFrameHost* host, mojo::PendingReceiver receiver) { @@ -178,7 +202,7 @@ diff --git a/content/browser/browser_interface_binders.cc b/content/browser/brow diff --git a/net/BUILD.gn b/net/BUILD.gn --- a/net/BUILD.gn +++ b/net/BUILD.gn -@@ -1674,6 +1674,7 @@ component("net") { +@@ -1710,6 +1710,7 @@ component("net") { if (!is_cronet_build) { deps += [ "//mojo/public/cpp/bindings:default_construct_tag" ] } diff --git a/build/cromite_patches/Fix-chromium-vanilla.patch b/build/cromite_patches/Fix-chromium-vanilla.patch index d11aca2b5f65348186914d81b2ee571f45eccdcb..e358e31fd047095c8d2d214f4703168074ac8103 100644 --- a/build/cromite_patches/Fix-chromium-vanilla.patch +++ b/build/cromite_patches/Fix-chromium-vanilla.patch @@ -23,7 +23,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR diff --git a/components/safe_browsing/android/java/src/org/chromium/components/safe_browsing/SafeBrowsingApiBridge.java b/components/safe_browsing/android/java/src/org/chromium/components/safe_browsing/SafeBrowsingApiBridge.java --- a/components/safe_browsing/android/java/src/org/chromium/components/safe_browsing/SafeBrowsingApiBridge.java +++ b/components/safe_browsing/android/java/src/org/chromium/components/safe_browsing/SafeBrowsingApiBridge.java -@@ -305,6 +305,7 @@ public final class SafeBrowsingApiBridge { +@@ -238,6 +238,7 @@ public final class SafeBrowsingApiBridge { @CalledByNative private static void startUriLookupBySafeBrowsingApi( long callbackId, String uri, int[] threatTypes, int protocol) { diff --git a/build/cromite_patches/History-number-of-days-privacy-setting.patch b/build/cromite_patches/History-number-of-days-privacy-setting.patch index ceab5390e57a1c0aa234776c6884866b6380a3a1..57f699380636676b70deb82ff51f86a7798e3c8a 100644 --- a/build/cromite_patches/History-number-of-days-privacy-setting.patch +++ b/build/cromite_patches/History-number-of-days-privacy-setting.patch @@ -26,19 +26,20 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html ...istory-number-of-days-privacy-setting.grdp | 18 ++++++ .../core/browser/expire_history_backend.cc | 13 +++- .../core/browser/expire_history_backend.h | 2 + - .../history/core/browser/history_backend.cc | 15 ++++- - .../history/core/browser/history_backend.h | 2 + + .../history/core/browser/history_backend.cc | 17 +++++ + .../history/core/browser/history_backend.h | 6 +- .../history/core/browser/history_service.cc | 33 ++++++++++ .../history/core/browser/history_service.h | 8 +++ components/history/core/common/pref_names.cc | 4 ++ components/history/core/common/pref_names.h | 1 + - 22 files changed, 254 insertions(+), 8 deletions(-) + .../omnibox/browser/shortcuts_backend.cc | 4 +- + 23 files changed, 259 insertions(+), 13 deletions(-) create mode 100644 components/cromite_components_strings_grd/History-number-of-days-privacy-setting.grdp diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml --- a/chrome/android/java/res/xml/privacy_preferences.xml +++ b/chrome/android/java/res/xml/privacy_preferences.xml -@@ -128,6 +128,12 @@ found in the LICENSE file. +@@ -133,6 +133,12 @@ found in the LICENSE file. android:title="@string/cablev2_paask_title" android:summary="@string/cablev2_paask_body" android:fragment="org.chromium.chrome.browser.webauthn.PrivacySettingsFragment" /> @@ -54,7 +55,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 -@@ -45,6 +45,7 @@ import org.chromium.chrome.browser.sync.settings.ManageSyncSettings; +@@ -47,6 +47,7 @@ import org.chromium.chrome.browser.sync.settings.ManageSyncSettings; import org.chromium.chrome.browser.usage_stats.UsageStatsConsentDialog; import org.chromium.components.browser_ui.settings.ChromeSwitchPreference; import org.chromium.components.browser_ui.settings.SettingsUtils; @@ -62,7 +63,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting import org.chromium.components.browser_ui.site_settings.ContentSettingsResources; import org.chromium.components.browser_ui.site_settings.SingleCategorySettings; import org.chromium.components.browser_ui.util.TraceEventVectorDrawableCompat; -@@ -61,6 +62,9 @@ import org.chromium.chrome.browser.preferences.ChromeSharedPreferences; +@@ -72,6 +73,9 @@ import org.chromium.chrome.browser.preferences.ChromeSharedPreferences; import org.chromium.components.browser_ui.settings.ChromeSwitchPreference; import org.chromium.components.browser_ui.settings.ManagedPreferenceDelegate; @@ -72,7 +73,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting /** Fragment to keep track of the all the privacy related preferences. */ public class PrivacySettings extends ChromeBaseSettingsFragment implements Preference.OnPreferenceChangeListener { -@@ -102,6 +106,8 @@ public class PrivacySettings extends ChromeBaseSettingsFragment +@@ -114,6 +118,8 @@ public class PrivacySettings extends ChromeBaseSettingsFragment private ChromeSwitchPreference allowCustomTabIntentsPref; private ChromeSwitchPreference openExternalLinksPref; @@ -80,8 +81,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting + @Override public void onCreatePreferencesCromite(Bundle savedInstanceState, String rootKey) { - getActivity().setTitle(R.string.prefs_privacy_security); -@@ -232,6 +238,40 @@ public class PrivacySettings extends ChromeBaseSettingsFragment + mPageTitle.set(getString(R.string.prefs_privacy_security)); +@@ -244,6 +250,40 @@ public class PrivacySettings extends ChromeBaseSettingsFragment Preference syncAndServicesLink = findPreference(PREF_SYNC_AND_SERVICES_LINK); syncAndServicesLink.setSummary(buildFooterString()); @@ -122,8 +123,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting Preference thirdPartyCookies = findPreference(PREF_THIRD_PARTY_COOKIES); Preference doNotTrackPref = findPreference(PREF_DO_NOT_TRACK); -@@ -470,6 +510,29 @@ public class PrivacySettings extends ChromeBaseSettingsFragment - && ChromeFeatureList.isEnabled(ChromeFeatureList.FINGERPRINTING_PROTECTION_SETTING); +@@ -504,6 +544,29 @@ public class PrivacySettings extends ChromeBaseSettingsFragment + && ChromeFeatureList.isEnabled(ChromeFeatureList.FINGERPRINTING_PROTECTION_UX); } + class TimeFrequencySpinnerOption { @@ -163,7 +164,7 @@ diff --git a/chrome/browser/extensions/api/settings_private/prefs_util.cc b/chro #include "components/embedder_support/pref_names.h" #include "components/language/core/browser/pref_names.h" #include "components/live_caption/pref_names.h" -@@ -212,6 +213,9 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlistedKeys() { +@@ -219,6 +220,9 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlistedKeys() { (*s_allowlist)[::prefs::kShowForwardButton] = settings_api::PrefType::kBoolean; @@ -188,7 +189,7 @@ diff --git a/chrome/browser/history/history_service_factory.cc b/chrome/browser/ 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 -@@ -376,6 +376,7 @@ std::unique_ptr Profile::CreateProfile(const base::FilePath& path, +@@ -379,6 +379,7 @@ std::unique_ptr Profile::CreateProfile(const base::FilePath& path, void ProfileImpl::RegisterProfilePrefs( user_prefs::PrefRegistrySyncable* registry) { registry->RegisterBooleanPref(prefs::kSavingBrowserHistoryDisabled, false); @@ -218,7 +219,7 @@ diff --git a/chrome/browser/resources/settings/privacy_page/privacy_page.html b/ diff --git a/chrome/browser/resources/settings/privacy_page/privacy_page.ts b/chrome/browser/resources/settings/privacy_page/privacy_page.ts --- a/chrome/browser/resources/settings/privacy_page/privacy_page.ts +++ b/chrome/browser/resources/settings/privacy_page/privacy_page.ts -@@ -82,6 +82,23 @@ export class SettingsPrivacyPageElement extends SettingsPrivacyPageElementBase { +@@ -83,6 +83,23 @@ export class SettingsPrivacyPageElement extends SettingsPrivacyPageElementBase { static get properties() { return { @@ -245,7 +246,7 @@ diff --git a/chrome/browser/resources/settings/privacy_page/privacy_page.ts b/ch 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 -@@ -1329,6 +1329,18 @@ Your Google account may have other forms of browsing history like searches and a +@@ -1383,6 +1383,18 @@ Your Google account may have other forms of browsing history like searches and a Browsing history @@ -267,7 +268,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro diff --git a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc --- a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc +++ b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc -@@ -1849,6 +1849,11 @@ void AddPrivacyStrings(content::WebUIDataSource* html_source, +@@ -1770,6 +1770,11 @@ void AddPrivacyStrings(content::WebUIDataSource* html_source, IDS_SETTINGS_SAFEBROWSING_ENHANCED_THINGS_TO_CONSIDER_BULLET_THREE}, {"safeBrowsingStandard", IDS_SETTINGS_SAFEBROWSING_STANDARD}, {"safeBrowsingStandardDesc", IDS_SETTINGS_SAFEBROWSING_STANDARD_DESC}, @@ -455,16 +456,18 @@ diff --git a/components/history/core/browser/expire_history_backend.h b/componen diff --git a/components/history/core/browser/history_backend.cc b/components/history/core/browser/history_backend.cc --- a/components/history/core/browser/history_backend.cc +++ b/components/history/core/browser/history_backend.cc -@@ -165,7 +165,7 @@ const int kMaxRedirectCount = 32; +@@ -163,6 +163,10 @@ const int kCommitIntervalSeconds = 10; + // deleting some. + const int kMaxRedirectCount = 32; - // The number of days old a history entry can be before it is considered "old" - // and is deleted. --constexpr int kExpireDaysThreshold = 90; ++// The number of days old a history entry can be before it is considered "old" ++// and is deleted. +int kExpireDaysThreshold = 90; - ++ // The maximum number of days for which domain visit metrics are computed // each time HistoryBackend::GetDomainDiversity() is called. -@@ -1312,6 +1312,19 @@ void HistoryBackend::InitImpl( + constexpr int kDomainDiversityMaxBacktrackedDays = 7; +@@ -1320,6 +1324,19 @@ void HistoryBackend::InitImpl( expirer_.StartExpiringOldStuff(base::Days(kExpireDaysThreshold)); } @@ -487,7 +490,18 @@ diff --git a/components/history/core/browser/history_backend.cc b/components/his diff --git a/components/history/core/browser/history_backend.h b/components/history/core/browser/history_backend.h --- a/components/history/core/browser/history_backend.h +++ b/components/history/core/browser/history_backend.h -@@ -233,6 +233,8 @@ class HistoryBackend : public base::RefCountedThreadSafe, +@@ -206,10 +206,6 @@ class HistoryBackend : public base::RefCountedThreadSafe, + // Check if the transition should increment the typed_count of a visit. + static bool IsTypedIncrement(ui::PageTransition transition); + +- // The number of days old a history entry can be before it is considered "old" +- // and is deleted. +- static constexpr int kExpireDaysThreshold = 90; +- + // Init must be called to complete object creation. This object can be + // constructed on any thread, but all other functions including Init() must + // be called on the history thread. +@@ -237,6 +233,8 @@ class HistoryBackend : public base::RefCountedThreadSafe, void Init(bool force_fail, const HistoryDatabaseParams& history_database_params); @@ -509,7 +523,7 @@ diff --git a/components/history/core/browser/history_service.cc b/components/his #include "components/history/core/browser/download_row.h" #include "components/history/core/browser/features.h" #include "components/history/core/browser/history_backend.h" -@@ -568,6 +571,33 @@ base::CancelableTaskTracker::TaskId HistoryService::ScheduleDBTask( +@@ -564,6 +567,33 @@ base::CancelableTaskTracker::TaskId HistoryService::ScheduleDBTask( return task_id; } @@ -543,7 +557,7 @@ diff --git a/components/history/core/browser/history_service.cc b/components/his void HistoryService::ScheduleDBTaskForUI( base::OnceCallback callback) { DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); -@@ -1492,6 +1522,9 @@ void HistoryService::Cleanup() { +@@ -1493,6 +1523,9 @@ void HistoryService::Cleanup() { return; } @@ -610,4 +624,25 @@ diff --git a/components/history/core/common/pref_names.h b/components/history/co extern const char kAllowDeletingBrowserHistory[]; } // namespace prefs +diff --git a/components/omnibox/browser/shortcuts_backend.cc b/components/omnibox/browser/shortcuts_backend.cc +--- a/components/omnibox/browser/shortcuts_backend.cc ++++ b/components/omnibox/browser/shortcuts_backend.cc +@@ -505,7 +505,7 @@ void ShortcutsBackend::ComputeDatabaseMetrics() { + const base::Time now(base::Time::Now()); + for (const auto& shortcut_pair : shortcuts_map_) { + if (now - shortcut_pair.second.last_access_time > +- base::Days(history::HistoryBackend::kExpireDaysThreshold)) { ++ base::Days(90)) { + num_old_shortcuts++; + } + } +@@ -623,7 +623,7 @@ bool ShortcutsBackend::DeleteOldShortcuts() { + const base::Time now(base::Time::Now()); + for (const auto& guid_pair : guid_map_) { + if (now - guid_pair.second->second.last_access_time > +- base::Days(history::HistoryBackend::kExpireDaysThreshold)) { ++ base::Days(90)) { + shortcut_ids.push_back(guid_pair.first); + } + } -- diff --git a/build/cromite_patches/Improve-plain-text-rendering-on-mobile.patch b/build/cromite_patches/Improve-plain-text-rendering-on-mobile.patch index 77f0ac655560ccfbadcd010e6c69d1a6e5ffbd80..c529a1caf9008cdc0ea2da243d4e49ac9207faf3 100644 --- a/build/cromite_patches/Improve-plain-text-rendering-on-mobile.patch +++ b/build/cromite_patches/Improve-plain-text-rendering-on-mobile.patch @@ -10,7 +10,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/third_party/blink/renderer/core/html/parser/text_document_parser.cc b/third_party/blink/renderer/core/html/parser/text_document_parser.cc --- a/third_party/blink/renderer/core/html/parser/text_document_parser.cc +++ b/third_party/blink/renderer/core/html/parser/text_document_parser.cc -@@ -66,10 +66,19 @@ void TextDocumentParser::InsertFakePreElement() { +@@ -67,10 +67,19 @@ void TextDocumentParser::InsertFakePreElement() { TreeBuilder()->ConstructTree(&fake_meta); attributes.clear(); diff --git a/build/cromite_patches/JIT-site-settings.patch b/build/cromite_patches/JIT-site-settings.patch index 4234f7c3f39c82c5c6c54e580157b014e59ec138..7383ce40b9eb80ba9ab687685232a78317282aee 100644 --- a/build/cromite_patches/JIT-site-settings.patch +++ b/build/cromite_patches/JIT-site-settings.patch @@ -22,8 +22,8 @@ Require: Content-settings-infrastructure.patch .../javascript_jit.grdp | 21 ++++ .../javascript_jit.inc | 12 +++ .../core/browser/content_settings_registry.cc | 2 +- - .../renderer_host/render_process_host_impl.cc | 10 +- - 10 files changed, 129 insertions(+), 9 deletions(-) + .../renderer_host/render_process_host_impl.cc | 3 + + 10 files changed, 130 insertions(+), 1 deletion(-) create mode 100644 components/browser_ui/site_settings/android/java/res/drawable-hdpi/permission_javascript_jit.png create mode 100644 components/browser_ui/site_settings/android/java/res/drawable-mdpi/permission_javascript_jit.png create mode 100644 components/browser_ui/site_settings/android/java/res/drawable-xhdpi/permission_javascript_jit.png @@ -275,7 +275,7 @@ new file mode 100644 diff --git a/components/content_settings/core/browser/content_settings_registry.cc b/components/content_settings/core/browser/content_settings_registry.cc --- a/components/content_settings/core/browser/content_settings_registry.cc +++ b/components/content_settings/core/browser/content_settings_registry.cc -@@ -600,7 +600,7 @@ void ContentSettingsRegistry::Init() { +@@ -613,7 +613,7 @@ void ContentSettingsRegistry::Init() { ContentSettingsInfo::EXCEPTIONS_ON_SECURE_ORIGINS_ONLY); Register(ContentSettingsType::JAVASCRIPT_JIT, "javascript-jit", @@ -287,20 +287,13 @@ diff --git a/components/content_settings/core/browser/content_settings_registry. diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc --- a/content/browser/renderer_host/render_process_host_impl.cc +++ b/content/browser/renderer_host/render_process_host_impl.cc -@@ -3195,14 +3195,8 @@ void RenderProcessHostImpl::AppendRendererCommandLine( - } - +@@ -3257,6 +3257,9 @@ void RenderProcessHostImpl::AppendRendererCommandLine( if (IsJitDisabled()) { -- if (IsPdf()) { -- command_line->AppendSwitchASCII(blink::switches::kJavaScriptFlags, -- "--jitless"); -- } else { -- // TODO(https://crbug.com/338434846): put this back to --jitless. -- command_line->AppendSwitchASCII(blink::switches::kJavaScriptFlags, -- "--no-maglev,--no-turbofan"); -- } -+ command_line->AppendSwitchASCII(blink::switches::kJavaScriptFlags, -+ "--jitless"); + command_line->AppendSwitchASCII(blink::switches::kJavaScriptFlags, + "--jitless"); ++ // disable jit but enable webassembly ++ // command_line->AppendSwitchASCII(blink::switches::kJavaScriptFlags, ++ // "--no-maglev,--no-turbofan"); } else if (AreV8OptimizationsDisabled()) { command_line->AppendSwitchASCII(blink::switches::kJavaScriptFlags, "--disable-optimizing-compilers"); diff --git a/build/cromite_patches/Keep-empty-tabs-between-sessions.patch b/build/cromite_patches/Keep-empty-tabs-between-sessions.patch index 5c4233b4625984668480fdf67a052b6b75fab88e..838b2ca03bfc69eee56255060dff1dde475ddb87 100644 --- a/build/cromite_patches/Keep-empty-tabs-between-sessions.patch +++ b/build/cromite_patches/Keep-empty-tabs-between-sessions.patch @@ -11,7 +11,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/tabmodel/TabPersistentStore.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java -@@ -1174,27 +1174,12 @@ public class TabPersistentStore { +@@ -1191,27 +1191,12 @@ public class TabPersistentStore { continue; } diff --git a/build/cromite_patches/Keep-flag-to-allow-screenshots-in-Incognito-mode.patch b/build/cromite_patches/Keep-flag-to-allow-screenshots-in-Incognito-mode.patch index 28b92f4d1e27e4b20f79adb097c2097e5768ddfc..cb9dd2f1a8852488a1d5e7eed2d7548e133dedea 100644 --- a/build/cromite_patches/Keep-flag-to-allow-screenshots-in-Incognito-mode.patch +++ b/build/cromite_patches/Keep-flag-to-allow-screenshots-in-Incognito-mode.patch @@ -15,7 +15,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json --- a/chrome/browser/flag-metadata.json +++ b/chrome/browser/flag-metadata.json -@@ -5322,9 +5322,9 @@ +@@ -5375,9 +5375,9 @@ "expiry_milestone": 120 }, { diff --git a/build/cromite_patches/Logcat-crash-reports-UI.patch b/build/cromite_patches/Logcat-crash-reports-UI.patch index 5858860bfb3a5b42f2c82666afe07e86607c36e9..8050da5196554ca4724e2d3ec173b7e5b9148bed 100644 --- a/build/cromite_patches/Logcat-crash-reports-UI.patch +++ b/build/cromite_patches/Logcat-crash-reports-UI.patch @@ -154,7 +154,7 @@ diff --git a/chrome/browser/net/chrome_network_delegate.cc b/chrome/browser/net/ 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 -@@ -714,6 +714,7 @@ static_library("ui") { +@@ -687,6 +687,7 @@ static_library("ui") { "//third_party/re2", "//third_party/webrtc_overrides:webrtc_component", "//third_party/zlib", diff --git a/build/cromite_patches/Modify-default-preferences.patch b/build/cromite_patches/Modify-default-preferences.patch index f6c96d40b1fc233a2a5753954a2642843eaed744..c3b31c50048aed73c979c2b4016d37353e0ca4bd 100644 --- a/build/cromite_patches/Modify-default-preferences.patch +++ b/build/cromite_patches/Modify-default-preferences.patch @@ -10,19 +10,19 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html chrome/browser/preloading/preloading_prefs.h | 2 +- chrome/browser/profiles/profile.cc | 2 +- .../reset_page/reset_profile_dialog.html | 2 +- - chrome/browser/ui/browser_ui_prefs.cc | 4 ++-- + chrome/browser/ui/browser_ui_prefs.cc | 6 +++--- components/bookmarks/browser/BUILD.gn | 2 ++ components/bookmarks/browser/bookmark_utils.cc | 7 +++++-- components/bookmarks/browser/features.cc | 17 +++++++++++++++++ components/bookmarks/browser/features.h | 18 ++++++++++++++++++ - .../core/browser/content_settings_registry.cc | 4 ++-- + .../core/browser/content_settings_registry.cc | 6 +++--- .../core/browser/cookie_settings.cc | 2 +- components/payments/core/payment_prefs.cc | 2 +- .../core/common/safe_browsing_prefs.cc | 4 ++-- .../primary_account_manager.cc | 2 +- .../Modify-default-preferences.inc | 8 ++++++++ .../features_cc/Modify-default-preferences.inc | 1 + - 18 files changed, 66 insertions(+), 16 deletions(-) + 18 files changed, 68 insertions(+), 18 deletions(-) create mode 100644 components/bookmarks/browser/features.cc create mode 100644 components/bookmarks/browser/features.h create mode 100755 cromite_flags/chrome/browser/about_flags_cc/Modify-default-preferences.inc @@ -54,7 +54,7 @@ diff --git a/chrome/browser/background/background_mode_manager.cc b/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 -@@ -1602,7 +1602,7 @@ void ChromeContentBrowserClient::RegisterLocalStatePrefs( +@@ -1613,7 +1613,7 @@ void ChromeContentBrowserClient::RegisterLocalStatePrefs( void ChromeContentBrowserClient::RegisterProfilePrefs( user_prefs::PrefRegistrySyncable* registry) { registry->RegisterBooleanPref(prefs::kDisable3DAPIs, false); @@ -115,6 +115,15 @@ diff --git a/chrome/browser/ui/browser_ui_prefs.cc b/chrome/browser/ui/browser_u registry->RegisterDictionaryPref(prefs::kBrowserWindowPlacement); registry->RegisterDictionaryPref(prefs::kBrowserWindowPlacementPopup); registry->RegisterDictionaryPref(prefs::kAppWindowPlacement); +@@ -170,7 +170,7 @@ void RegisterBrowserUserPrefs(user_prefs::PrefRegistrySyncable* registry) { + #endif + + registry->RegisterBooleanPref( +- prefs::kHttpsOnlyModeEnabled, false, ++ prefs::kHttpsOnlyModeEnabled, true, + user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); + registry->RegisterBooleanPref( + prefs::kHttpsFirstBalancedMode, false, diff --git a/components/bookmarks/browser/BUILD.gn b/components/bookmarks/browser/BUILD.gn --- a/components/bookmarks/browser/BUILD.gn +++ b/components/bookmarks/browser/BUILD.gn @@ -209,6 +218,15 @@ new file mode 100644 diff --git a/components/content_settings/core/browser/content_settings_registry.cc b/components/content_settings/core/browser/content_settings_registry.cc --- a/components/content_settings/core/browser/content_settings_registry.cc +++ b/components/content_settings/core/browser/content_settings_registry.cc +@@ -150,7 +150,7 @@ void ContentSettingsRegistry::Init() { + ContentSettingsInfo::EXCEPTIONS_ON_SECURE_ORIGINS_ONLY); + + Register(ContentSettingsType::NOTIFICATIONS, "notifications", +- CONTENT_SETTING_ASK, WebsiteSettingsInfo::UNSYNCABLE, ++ CONTENT_SETTING_BLOCK, WebsiteSettingsInfo::UNSYNCABLE, + /*allowlisted_primary_schemes=*/{}, + /*valid_settings=*/ + {CONTENT_SETTING_ALLOW, CONTENT_SETTING_BLOCK, CONTENT_SETTING_ASK}, @@ -238,7 +238,7 @@ void ContentSettingsRegistry::Init() { ContentSettingsInfo::EXCEPTIONS_ON_SECURE_ORIGINS_ONLY); @@ -273,7 +291,7 @@ diff --git a/components/safe_browsing/core/common/safe_browsing_prefs.cc b/compo diff --git a/components/signin/internal/identity_manager/primary_account_manager.cc b/components/signin/internal/identity_manager/primary_account_manager.cc --- a/components/signin/internal/identity_manager/primary_account_manager.cc +++ b/components/signin/internal/identity_manager/primary_account_manager.cc -@@ -241,7 +241,7 @@ void PrimaryAccountManager::RegisterProfilePrefs(PrefRegistrySimple* registry) { +@@ -299,7 +299,7 @@ void PrimaryAccountManager::RegisterProfilePrefs(PrefRegistrySimple* registry) { prefs::kGoogleServicesSyncingGaiaIdMigratedToSignedIn, std::string()); registry->RegisterStringPref( prefs::kGoogleServicesSyncingUsernameMigratedToSignedIn, std::string()); diff --git a/build/cromite_patches/Move-navigation-bar-to-bottom.patch b/build/cromite_patches/Move-navigation-bar-to-bottom.patch index 904dbd84d2a43b29f9253ae61f1b7be1c89d8dc1..a45dab96e2e34c9146f24dc1774f51d8cca80fd7 100644 --- a/build/cromite_patches/Move-navigation-bar-to-bottom.patch +++ b/build/cromite_patches/Move-navigation-bar-to-bottom.patch @@ -18,33 +18,34 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html cc/input/browser_controls_offset_manager.cc | 6 + cc/trees/layer_tree_host_impl.cc | 3 + .../tab_management/TabGroupUiCoordinator.java | 7 +- - .../tab_management/TabGroupUiMediator.java | 56 +++++- - .../tab_management/TabGroupUiProperties.java | 7 +- + .../tab_management/TabGroupUiMediator.java | 50 +++++- + .../tab_management/TabGroupUiProperties.java | 5 + .../tab_management/TabGroupUiToolbarView.java | 17 ++ .../tab_management/TabGroupUiViewBinder.java | 3 + .../tab_management/TabListCoordinator.java | 162 +++++++++++++++++- .../TabListEmptyCoordinator.java | 17 +- + .../browser/feed/FeedSurfaceCoordinator.java | 4 + .../settings/AccessibilitySettings.java | 26 +++ - .../ChromeAccessibilitySettingsDelegate.java | 69 ++++++++ + .../ChromeAccessibilitySettingsDelegate.java | 70 ++++++++ .../chrome/browser/app/ChromeActivity.java | 3 + .../compositor/CompositorViewHolder.java | 7 + .../layouts/LayoutManagerChrome.java | 19 +- .../layouts/LayoutManagerChromeTablet.java | 4 +- .../layouts/ToolbarSwipeLayout.java | 14 +- .../overlays/strip/ScrollDelegate.java | 2 +- - .../strip/StripLayoutHelperManager.java | 37 +++- + .../strip/StripLayoutHelperManager.java | 38 +++- .../scene_layer/StaticTabSceneLayer.java | 7 +- .../scene_layer/TabListSceneLayer.java | 8 + - .../scene_layer/TabStripSceneLayer.java | 19 +- + .../scene_layer/TabStripSceneLayer.java | 20 ++- .../browser/findinpage/FindToolbarTablet.java | 10 +- .../fullscreen/BrowserControlsManager.java | 12 ++ .../messages/MessageContainerCoordinator.java | 16 +- .../modaldialog/ChromeTabModalPresenter.java | 2 +- .../chrome/browser/ntp/NewTabPage.java | 14 +- - .../chrome/browser/ntp/NewTabPageLayout.java | 12 +- + .../chrome/browser/ntp/NewTabPageLayout.java | 10 +- .../chrome/browser/ntp/RecentTabsPage.java | 30 +++- .../browser/searchwidget/SearchActivity.java | 11 ++ - .../browser/settings/SettingsActivity.java | 5 + + .../settings/FragmentDependencyProvider.java | 5 + .../StatusIndicatorCoordinator.java | 9 + .../StatusIndicatorSceneLayer.java | 6 +- .../browser/toolbar/ToolbarManager.java | 37 +++- @@ -90,7 +91,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../AccessibilitySettingsDelegate.java | 7 + .../render_widget_host_view_android.cc | 3 + .../Move-navigation-bar-to-bottom.inc | 17 ++ - 77 files changed, 1009 insertions(+), 81 deletions(-) + 78 files changed, 1009 insertions(+), 78 deletions(-) create mode 100644 chrome/browser/hub/internal/android/java/src/org/chromium/chrome/browser/hub/ReversedLinearLayout.java create mode 100644 cromite_flags/chrome/browser/about_flags_cc/Move-navigation-bar-to-bottom.inc @@ -109,8 +110,8 @@ diff --git a/cc/base/features.cc b/cc/base/features.cc + "DisableToolbarSwipeUp", + base::FEATURE_DISABLED_BY_DEFAULT); + - BASE_FEATURE(kRemoveMobileViewportDoubleTap, - "RemoveMobileViewportDoubleTap", + BASE_FEATURE(kScrollSnapCoveringAvoidNestedSnapAreas, + "ScrollSnapCoveringAvoidNestedSnapAreas", base::FEATURE_ENABLED_BY_DEFAULT); diff --git a/cc/base/features.h b/cc/base/features.h --- a/cc/base/features.h @@ -122,8 +123,8 @@ diff --git a/cc/base/features.h b/cc/base/features.h +CC_BASE_EXPORT BASE_DECLARE_FEATURE(kMoveTopToolbarToBottom); +CC_BASE_EXPORT BASE_DECLARE_FEATURE(kDisableToolbarSwipeUp); - // When enabled, the double tap to zoom will be disabled when the viewport - // meta tag is properly set for mobile using content=width=device-width + // When enabled, scrolling within a covering snap area avoids or snaps to inner + // nested areas, avoiding resting on positions which do not snap the inner area. diff --git a/cc/input/browser_controls_offset_manager.cc b/cc/input/browser_controls_offset_manager.cc --- a/cc/input/browser_controls_offset_manager.cc +++ b/cc/input/browser_controls_offset_manager.cc @@ -135,7 +136,7 @@ diff --git a/cc/input/browser_controls_offset_manager.cc b/cc/input/browser_cont namespace cc { namespace { -@@ -496,6 +497,11 @@ gfx::Vector2dF BrowserControlsOffsetManager::ScrollBy( +@@ -511,6 +512,11 @@ gfx::Vector2dF BrowserControlsOffsetManager::ScrollBy( // content. If the top controls have no height, the content should scroll // immediately. gfx::Vector2dF applied_delta(0.f, old_top_offset - ContentTopOffset()); @@ -150,7 +151,7 @@ diff --git a/cc/input/browser_controls_offset_manager.cc b/cc/input/browser_cont diff --git a/cc/trees/layer_tree_host_impl.cc b/cc/trees/layer_tree_host_impl.cc --- a/cc/trees/layer_tree_host_impl.cc +++ b/cc/trees/layer_tree_host_impl.cc -@@ -4588,6 +4588,9 @@ bool LayerTreeHostImpl::AnimateBrowserControls(base::TimeTicks time) { +@@ -4601,6 +4601,9 @@ bool LayerTreeHostImpl::AnimateBrowserControls(base::TimeTicks time) { if (scroll_delta.IsZero()) return false; @@ -163,7 +164,7 @@ diff --git a/cc/trees/layer_tree_host_impl.cc b/cc/trees/layer_tree_host_impl.cc diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupUiCoordinator.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupUiCoordinator.java --- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupUiCoordinator.java +++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupUiCoordinator.java -@@ -40,6 +40,7 @@ import org.chromium.components.feature_engagement.FeatureConstants; +@@ -47,6 +47,7 @@ import org.chromium.components.feature_engagement.FeatureConstants; import org.chromium.ui.modaldialog.ModalDialogManager; import org.chromium.ui.modelutil.PropertyModel; import org.chromium.ui.modelutil.PropertyModelChangeProcessor; @@ -171,7 +172,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser import java.util.List; -@@ -169,7 +170,8 @@ public class TabGroupUiCoordinator +@@ -171,7 +172,8 @@ public class TabGroupUiCoordinator implements TabGroupUiMediator.ResetHandler, T public void initializeWithNative( Activity activity, BottomControlsCoordinator.BottomControlsVisibilityController visibilityController, @@ -181,12 +182,12 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser var currentTabModelFilterSupplier = mTabModelSelector.getTabModelFilterProvider().getCurrentTabModelFilterSupplier(); try (TraceEvent e = TraceEvent.scoped("TabGroupUiCoordinator.initializeWithNative")) { -@@ -229,7 +231,8 @@ public class TabGroupUiCoordinator - mLayoutStateProviderSupplier, +@@ -249,7 +251,8 @@ public class TabGroupUiCoordinator implements TabGroupUiMediator.ResetHandler, T mIncognitoStateProvider, mTabGridDialogControllerSupplier, -- mOmniboxFocusStateSupplier); -+ mOmniboxFocusStateSupplier, + mOmniboxFocusStateSupplier, +- sharedImageTilesCoordinator); ++ sharedImageTilesCoordinator, + topUiThemeColorProvider, tabSupplier); TabGroupUtils.startObservingForCreationIPH(); @@ -194,7 +195,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser 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 -@@ -52,6 +52,12 @@ import org.chromium.url.GURL; +@@ -57,6 +57,12 @@ import org.chromium.url.GURL; import java.util.List; @@ -206,8 +207,8 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser + /** A mediator for the TabGroupUi. Responsible for managing the internal state of the component. */ public class TabGroupUiMediator implements BackPressHandler { - /** An interface to control the TabGroupUi component. */ -@@ -119,6 +125,11 @@ public class TabGroupUiMediator implements BackPressHandler { + /** Defines an interface for a {@link TabGroupUiMediator} reset event handler. */ +@@ -110,6 +116,11 @@ public class TabGroupUiMediator implements BackPressHandler { private final @ColorInt int mPrimaryBackgroundColor; private final @ColorInt int mIncognitoBackgroundColor; @@ -219,38 +220,18 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser TabGroupUiMediator( Context context, BottomControlsVisibilityController visibilityController, -@@ -133,7 +144,8 @@ public class TabGroupUiMediator implements BackPressHandler { - @Nullable +@@ -125,7 +136,9 @@ public class TabGroupUiMediator implements BackPressHandler { LazyOneshotSupplier dialogControllerSupplier, -- ObservableSupplier omniboxFocusStateSupplier) { -+ ObservableSupplier omniboxFocusStateSupplier, -+ TopUiThemeColorProvider topUiThemeColorProvider, ObservableSupplier tabSupplier) { - this( - context, - visibilityController, -@@ -148,7 +160,8 @@ public class TabGroupUiMediator implements BackPressHandler { - dialogControllerSupplier, - omniboxFocusStateSupplier, - SemanticColorUtils.getDialogBgColor(context), -- context.getColor(org.chromium.chrome.R.color.dialog_bg_color_dark_baseline)); -+ context.getColor(org.chromium.chrome.R.color.dialog_bg_color_dark_baseline), -+ topUiThemeColorProvider, tabSupplier); - } - - @VisibleForTesting -@@ -168,7 +181,9 @@ public class TabGroupUiMediator implements BackPressHandler { - dialogControllerSupplier, ObservableSupplier omniboxFocusStateSupplier, - @ColorInt int primaryBackgroundColor, -- @ColorInt int incognitoBackgroundColor) { -+ @ColorInt int incognitoBackgroundColor, +- SharedImageTilesCoordinator sharedImageTilesCoordinator) { ++ SharedImageTilesCoordinator sharedImageTilesCoordinator, + TopUiThemeColorProvider topUiThemeColorProvider, ObservableSupplier tabSupplier) { + mTopUiThemeColorProvider = topUiThemeColorProvider; mContext = context; mResetHandler = resetHandler; mModel = model; -@@ -188,11 +203,30 @@ public class TabGroupUiMediator implements BackPressHandler { +@@ -153,11 +166,30 @@ public class TabGroupUiMediator implements BackPressHandler { mIsShowingOverViewMode = true; } @@ -281,7 +262,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser if (getTabsToShowForId(lastId).contains(tab)) { return; } -@@ -252,6 +286,7 @@ public class TabGroupUiMediator implements BackPressHandler { +@@ -217,6 +249,7 @@ public class TabGroupUiMediator implements BackPressHandler { return; } resetTabStripWithRelatedTabsForId(currentTab.getId()); @@ -289,7 +270,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser } @Override -@@ -374,6 +409,8 @@ public class TabGroupUiMediator implements BackPressHandler { +@@ -339,6 +372,8 @@ public class TabGroupUiMediator implements BackPressHandler { resetTabStripWithRelatedTabsForId(tab.getId()); } @@ -298,8 +279,8 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser mHandleBackPressChangedSupplier = handleBackPressChangedSupplier; if (mTabGridDialogControllerSupplier != null) { mTabGridDialogControllerSupplier.onAvailable( -@@ -401,6 +438,18 @@ public class TabGroupUiMediator implements BackPressHandler { - mModel.set(TabGroupUiProperties.LEFT_BUTTON_DRAWABLE_ID, drawableId); +@@ -362,6 +397,18 @@ public class TabGroupUiMediator implements BackPressHandler { + mModel.set(TabGroupUiProperties.BACKGROUND_COLOR, backgroundColor); } + /** @@ -314,10 +295,10 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser + } + } + - void setupLeftButtonOnClickListener(View.OnClickListener listener) { - mModel.set(TabGroupUiProperties.LEFT_BUTTON_ON_CLICK_LISTENER, listener); - } -@@ -534,6 +583,7 @@ public class TabGroupUiMediator implements BackPressHandler { + private void setupToolbarButtons() { + View.OnClickListener showGroupDialogOnClickListener = + view -> { +@@ -524,6 +571,7 @@ public class TabGroupUiMediator implements BackPressHandler { } public void destroy() { @@ -336,22 +317,20 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser /** {@link PropertyKey} list for the TabGroupUi. */ class TabGroupUiProperties { -@@ -36,6 +37,9 @@ class TabGroupUiProperties { - public static final PropertyModel.WritableObjectPropertyKey - RIGHT_BUTTON_CONTENT_DESCRIPTION = new PropertyModel.WritableObjectPropertyKey<>(); +@@ -33,6 +34,9 @@ class TabGroupUiProperties { + public static final PropertyModel.WritableObjectPropertyKey INITIAL_SCROLL_INDEX = + new PropertyModel.WritableObjectPropertyKey<>(true); + public static final PropertyModel.WritableIntPropertyKey PRIMARY_COLOR = + new PropertyModel.WritableIntPropertyKey(); + public static final PropertyKey[] ALL_KEYS = new PropertyKey[] { - LEFT_BUTTON_ON_CLICK_LISTENER, -@@ -46,6 +50,7 @@ class TabGroupUiProperties { - BACKGROUND_COLOR, + SHOW_GROUP_DIALOG_ON_CLICK_LISTENER, +@@ -43,5 +47,6 @@ class TabGroupUiProperties { + SHOW_GROUP_DIALOG_BUTTON_VISIBLE, + IMAGE_TILES_CONTAINER_VISIBLE, INITIAL_SCROLL_INDEX, - LEFT_BUTTON_CONTENT_DESCRIPTION, -- RIGHT_BUTTON_CONTENT_DESCRIPTION -+ RIGHT_BUTTON_CONTENT_DESCRIPTION, + PRIMARY_COLOR }; } @@ -368,8 +347,8 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser + /** Toolbar for the bottom tab strip see {@link TabGroupUiCoordinator}. */ public class TabGroupUiToolbarView extends FrameLayout { - private ChromeImageView mRightButton; -@@ -86,6 +90,19 @@ public class TabGroupUiToolbarView extends FrameLayout { + private ChromeImageView mNewTabButton; +@@ -96,6 +100,19 @@ public class TabGroupUiToolbarView extends FrameLayout { mFadingEdgeEnd.setColorFilter(color, PorterDuff.Mode.SRC_IN); } @@ -387,28 +366,28 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser + } + void setTint(ColorStateList tint) { - ImageViewCompat.setImageTintList(mLeftButton, tint); - ImageViewCompat.setImageTintList(mRightButton, tint); + ImageViewCompat.setImageTintList(mShowGroupDialogButton, tint); + ImageViewCompat.setImageTintList(mNewTabButton, tint); diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupUiViewBinder.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupUiViewBinder.java --- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupUiViewBinder.java +++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupUiViewBinder.java -@@ -13,6 +13,7 @@ import static org.chromium.chrome.browser.tasks.tab_management.TabGroupUiPropert - import static org.chromium.chrome.browser.tasks.tab_management.TabGroupUiProperties.LEFT_BUTTON_ON_CLICK_LISTENER; - import static org.chromium.chrome.browser.tasks.tab_management.TabGroupUiProperties.RIGHT_BUTTON_CONTENT_DESCRIPTION; - import static org.chromium.chrome.browser.tasks.tab_management.TabGroupUiProperties.RIGHT_BUTTON_ON_CLICK_LISTENER; +@@ -12,6 +12,7 @@ import static org.chromium.chrome.browser.tasks.tab_management.TabGroupUiPropert + import static org.chromium.chrome.browser.tasks.tab_management.TabGroupUiProperties.NEW_TAB_BUTTON_ON_CLICK_LISTENER; + import static org.chromium.chrome.browser.tasks.tab_management.TabGroupUiProperties.SHOW_GROUP_DIALOG_BUTTON_VISIBLE; + import static org.chromium.chrome.browser.tasks.tab_management.TabGroupUiProperties.SHOW_GROUP_DIALOG_ON_CLICK_LISTENER; +import static org.chromium.chrome.browser.tasks.tab_management.TabGroupUiProperties.PRIMARY_COLOR; import android.view.View; -@@ -71,6 +72,8 @@ class TabGroupUiViewBinder { - } else if (RIGHT_BUTTON_CONTENT_DESCRIPTION == propertyKey) { - viewHolder.toolbarView.setRightButtonContentDescription( - model.get(RIGHT_BUTTON_CONTENT_DESCRIPTION)); +@@ -50,6 +51,8 @@ class TabGroupUiViewBinder { + } else if (NEW_TAB_BUTTON_ON_CLICK_LISTENER == propertyKey) { + viewHolder.toolbarView.setNewTabButtonOnClickListener( + model.get(NEW_TAB_BUTTON_ON_CLICK_LISTENER)); + } else if (PRIMARY_COLOR == propertyKey) { + viewHolder.toolbarView.setPrimaryColorAndApplyTint(model.get(PRIMARY_COLOR)); - } - } - } + } else if (IS_MAIN_CONTENT_VISIBLE == propertyKey) { + viewHolder.toolbarView.setMainContentVisibility(model.get(IS_MAIN_CONTENT_VISIBLE)); + } else if (IS_INCOGNITO == propertyKey) { diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabListCoordinator.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabListCoordinator.java --- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabListCoordinator.java +++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabListCoordinator.java @@ -433,7 +412,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser import android.widget.ImageView; import androidx.annotation.DrawableRes; -@@ -58,6 +63,8 @@ import org.chromium.ui.modelutil.PropertyModelChangeProcessor; +@@ -59,6 +64,8 @@ import org.chromium.ui.modelutil.PropertyModelChangeProcessor; import org.chromium.ui.modelutil.SimpleRecyclerViewAdapter; import org.chromium.ui.widget.ViewLookupCachingFrameLayout; @@ -442,7 +421,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.List; -@@ -115,6 +122,128 @@ public class TabListCoordinator +@@ -116,6 +123,128 @@ public class TabListCoordinator private int mAwaitingTabId = Tab.INVALID_TAB_ID; private @TabActionState int mTabActionState; @@ -571,7 +550,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser /** * Construct a coordinator for UI that shows a list of tabs. * -@@ -311,6 +440,12 @@ public class TabListCoordinator +@@ -312,6 +441,12 @@ public class TabListCoordinator checkAwaitingLayout(); } }; @@ -584,7 +563,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser mRecyclerView.setLayoutManager(gridLayoutManager); mMediator.registerOrientationListener(gridLayoutManager); mMediator.updateSpanCount( -@@ -322,8 +457,7 @@ public class TabListCoordinator +@@ -323,8 +458,7 @@ public class TabListCoordinator .getDecorView() .getWindowVisibleDisplayFrame(frame); updateGridCardLayout(frame.width()); @@ -594,7 +573,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser LinearLayoutManager layoutManager = new LinearLayoutManager( context, -@@ -338,6 +472,25 @@ public class TabListCoordinator +@@ -339,6 +473,25 @@ public class TabListCoordinator } }; mRecyclerView.setLayoutManager(layoutManager); @@ -620,7 +599,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser } mMediator.setRecyclerViewItemAnimationToggle(mRecyclerView::setDisableItemAnimations); } -@@ -358,7 +511,7 @@ public class TabListCoordinator +@@ -359,7 +512,7 @@ public class TabListCoordinator if (hasEmptyView) { mTabListEmptyCoordinator = new TabListEmptyCoordinator( @@ -629,7 +608,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser } configureRecyclerViewTouchHelpers(mMode, mTabActionState); -@@ -644,6 +797,9 @@ public class TabListCoordinator +@@ -645,6 +798,9 @@ public class TabListCoordinator void prepareTabSwitcherPaneView() { registerLayoutChangeListener(); mRecyclerView.setupCustomItemAnimator(); @@ -693,10 +672,31 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser } setEmptyViewVisibility(View.GONE); } +diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/FeedSurfaceCoordinator.java b/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/FeedSurfaceCoordinator.java +--- a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/FeedSurfaceCoordinator.java ++++ b/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/FeedSurfaceCoordinator.java +@@ -13,6 +13,7 @@ import android.os.Handler; + import android.os.Looper; + import android.os.SystemClock; + import android.view.LayoutInflater; ++import android.view.Gravity; + import android.view.MotionEvent; + import android.view.View; + import android.view.ViewGroup; +@@ -537,6 +538,9 @@ public class FeedSurfaceCoordinator + ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT); + layoutParams.setMarginStart(margin); + layoutParams.setMarginEnd(margin); ++ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) { ++ layoutParams.gravity = Gravity.BOTTOM; ++ } + mNtpHeader.setLayoutParams(layoutParams); + } + diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/AccessibilitySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/AccessibilitySettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/AccessibilitySettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/AccessibilitySettings.java -@@ -51,6 +51,11 @@ public class AccessibilitySettings extends ChromeBaseSettingsFragment +@@ -54,6 +54,11 @@ public class AccessibilitySettings extends ChromeBaseSettingsFragment private BooleanPreferenceDelegate mForceTabletUIDelegate; static final String PREF_FORCE_TABLET_UI = "force_tablet_ui"; @@ -708,7 +708,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/s private TextScalePreference mTextScalePref; private PageZoomPreference mPageZoomDefaultZoomPref; private ChromeSwitchPreference mPageZoomIncludeOSAdjustment; -@@ -86,6 +91,10 @@ public class AccessibilitySettings extends ChromeBaseSettingsFragment +@@ -91,6 +96,10 @@ public class AccessibilitySettings extends ChromeBaseSettingsFragment mFontSizePrefs = FontSizePrefs.getInstance(delegate.getBrowserContextHandle()); } @@ -719,7 +719,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/s @Override public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); -@@ -154,6 +163,18 @@ public class AccessibilitySettings extends ChromeBaseSettingsFragment +@@ -161,6 +170,18 @@ public class AccessibilitySettings extends ChromeBaseSettingsFragment forceTabletUiPref.setChecked(mForceTabletUIDelegate.isEnabled()); forceTabletUiPref.setOnPreferenceChangeListener(this); @@ -738,7 +738,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/s Preference captions = findPreference(PREF_CAPTIONS); captions.setOnPreferenceClickListener( preference -> { -@@ -238,6 +259,11 @@ public class AccessibilitySettings extends ChromeBaseSettingsFragment +@@ -245,6 +266,11 @@ public class AccessibilitySettings extends ChromeBaseSettingsFragment mDelegate.getBrowserContextHandle(), (Integer) newValue); } else if (PREF_PAGE_ZOOM_ALWAYS_SHOW.equals(preference.getKey())) { PageZoomUtils.setShouldAlwaysShowZoomMenuItem((Boolean) newValue); @@ -753,34 +753,35 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/s diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/ChromeAccessibilitySettingsDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/ChromeAccessibilitySettingsDelegate.java --- a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/ChromeAccessibilitySettingsDelegate.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/ChromeAccessibilitySettingsDelegate.java -@@ -15,6 +15,13 @@ import org.chromium.chrome.browser.flags.CromiteNativeUtils; +@@ -15,6 +15,14 @@ import org.chromium.chrome.browser.flags.CromiteNativeUtils; import org.chromium.chrome.browser.preferences.ChromePreferenceKeys; import org.chromium.chrome.browser.preferences.ChromeSharedPreferences; +import org.chromium.chrome.R; +import android.app.Activity; ++import org.chromium.base.supplier.Supplier; +import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager; +import org.chromium.chrome.browser.ui.messages.snackbar.INeedSnackbarManager; +import org.chromium.chrome.browser.ui.messages.snackbar.Snackbar; -+import org.chromium.chrome.browser.ApplicationLifetime; ++import org.chromium.chrome.browser.lifetime.ApplicationLifetime; + /** The Chrome implementation of AccessibilitySettingsDelegate. */ public class ChromeAccessibilitySettingsDelegate implements AccessibilitySettingsDelegate { private static class TextSizeContrastAccessibilityDelegate -@@ -57,6 +64,12 @@ public class ChromeAccessibilitySettingsDelegate implements AccessibilitySetting +@@ -57,6 +65,12 @@ public class ChromeAccessibilitySettingsDelegate implements AccessibilitySetting return new ForceTabletUIDelegate(); } -+ private SnackbarManager mSnackbarManager; ++ private Supplier mSnackbarManagerSupplier; + -+ public void setSnackbarManager(SnackbarManager snackbarManager) { -+ mSnackbarManager = snackbarManager; ++ public void setSnackbarManagerSupplier(Supplier snackbarManager) { ++ mSnackbarManagerSupplier = snackbarManager; + } + private final Profile mProfile; /** -@@ -67,6 +80,62 @@ public class ChromeAccessibilitySettingsDelegate implements AccessibilitySetting +@@ -67,6 +81,62 @@ public class ChromeAccessibilitySettingsDelegate implements AccessibilitySetting mProfile = profile; } @@ -836,8 +837,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/s + .setAction(activity.getString(R.string.relaunch), + /*actionData*/null) + .setDuration(/*durationMs*/70000); -+ if (!mSnackbarManager.isShowing()) -+ mSnackbarManager.showSnackbar(mSnackbar); ++ if (!mSnackbarManagerSupplier.get().isShowing()) ++ mSnackbarManagerSupplier.get().showSnackbar(mSnackbar); + } + @Override @@ -846,7 +847,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 -@@ -256,6 +256,9 @@ import org.chromium.webapk.lib.client.WebApkNavigationClient; +@@ -250,6 +250,9 @@ import org.chromium.webapk.lib.client.WebApkNavigationClient; import java.util.ArrayList; import java.util.List; @@ -859,7 +860,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/CompositorViewHolder.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/CompositorViewHolder.java --- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/CompositorViewHolder.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/CompositorViewHolder.java -@@ -250,6 +250,10 @@ public class CompositorViewHolder extends FrameLayout +@@ -252,6 +252,10 @@ public class CompositorViewHolder extends FrameLayout @Override public void setCurrentTouchEventOffsets(float top) { EventForwarder forwarder = getEventForwarder(); @@ -870,7 +871,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/Comp if (forwarder != null) forwarder.setCurrentTouchOffsetY(top); } -@@ -884,6 +888,9 @@ public class CompositorViewHolder extends FrameLayout +@@ -886,6 +890,9 @@ public class CompositorViewHolder extends FrameLayout mApplicationBottomInsetSupplier != null ? mApplicationBottomInsetSupplier.get().webContentsHeightInset : 0; @@ -1008,18 +1009,27 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layo diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/ScrollDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/ScrollDelegate.java --- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/ScrollDelegate.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/ScrollDelegate.java -@@ -193,6 +193,6 @@ public class ScrollDelegate { +@@ -343,7 +343,7 @@ public class ScrollDelegate { boolean useUnadjustedScrollOffset = isRtl != isLeft; float scrollOffset = mScrollOffset; - return -(useUnadjustedScrollOffset ? scrollOffset : (mMinScrollOffset - scrollOffset)); + return -Math.abs(useUnadjustedScrollOffset ? scrollOffset : (mMinScrollOffset - scrollOffset)); } - } + + /** diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelperManager.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelperManager.java --- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelperManager.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelperManager.java -@@ -100,6 +100,8 @@ import org.chromium.ui.interpolators.Interpolators; +@@ -32,6 +32,7 @@ import androidx.appcompat.content.res.AppCompatResources; + + import org.chromium.base.Callback; + import org.chromium.base.metrics.RecordUserAction; ++import org.chromium.base.supplier.Supplier; + import org.chromium.base.supplier.ObservableSupplier; + import org.chromium.base.supplier.ObservableSupplierImpl; + import org.chromium.cc.input.BrowserControlsOffsetTagsInfo; +@@ -101,6 +102,8 @@ import org.chromium.ui.interpolators.Interpolators; import org.chromium.ui.resources.ResourceManager; import org.chromium.ui.util.ColorUtils; import org.chromium.url.GURL; @@ -1028,7 +1038,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; -@@ -268,12 +270,16 @@ public class StripLayoutHelperManager +@@ -267,12 +270,16 @@ public class StripLayoutHelperManager // Drag-Drop @Nullable private TabDragSource mTabDragSource; @@ -1045,7 +1055,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over if (mModelSelectorButton != null && mModelSelectorButton.onDown(x, y, fromMouse, buttons)) { return; -@@ -299,6 +305,7 @@ public class StripLayoutHelperManager +@@ -298,6 +305,7 @@ public class StripLayoutHelperManager if (DragDropGlobalState.hasValue()) { return; } @@ -1053,7 +1063,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over if (mModelSelectorButton != null) { mModelSelectorButton.drag(x, y); } -@@ -310,6 +317,7 @@ public class StripLayoutHelperManager +@@ -309,6 +317,7 @@ public class StripLayoutHelperManager if (DragDropGlobalState.hasValue()) { return; } @@ -1061,7 +1071,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over long time = time(); if (mModelSelectorButton != null && mModelSelectorButton.click(x, y, fromMouse, buttons)) { -@@ -324,6 +332,7 @@ public class StripLayoutHelperManager +@@ -323,6 +332,7 @@ public class StripLayoutHelperManager if (DragDropGlobalState.hasValue()) { return; } @@ -1069,7 +1079,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over getActiveStripLayoutHelper().fling(time(), x, y, velocityX, velocityY); } -@@ -332,6 +341,7 @@ public class StripLayoutHelperManager +@@ -331,6 +341,7 @@ public class StripLayoutHelperManager if (DragDropGlobalState.hasValue()) { return; } @@ -1077,7 +1087,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over getActiveStripLayoutHelper().onLongPress(time(), x, y); } -@@ -438,7 +448,8 @@ public class StripLayoutHelperManager +@@ -437,7 +448,8 @@ public class StripLayoutHelperManager // implement an interface to manage strip transition states. @NonNull ToolbarManager toolbarManager, @Nullable DesktopWindowStateProvider desktopWindowStateProvider, @@ -1087,7 +1097,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over Resources res = context.getResources(); mUpdateHost = updateHost; mLayerTitleCacheSupplier = layerTitleCacheSupplier; -@@ -550,6 +561,8 @@ public class StripLayoutHelperManager +@@ -537,6 +549,8 @@ public class StripLayoutHelperManager !mTabStripObscured && getStripVisibilityState() == StripVisibilityState.VISIBLE); @@ -1096,7 +1106,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over tabHoverCardViewStub.setOnInflateListener( (viewStub, view) -> { -@@ -783,6 +796,10 @@ public class StripLayoutHelperManager +@@ -772,6 +786,10 @@ public class StripLayoutHelperManager // layer should be a negative value. yOffset -= getHeight(); } @@ -1107,7 +1117,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over mTabStripTreeProvider.pushAndUpdateStrip( this, mLayerTitleCacheSupplier.get(), -@@ -796,7 +813,9 @@ public class StripLayoutHelperManager +@@ -785,7 +803,9 @@ public class StripLayoutHelperManager mStripTransitionScrimOpacity, mLeftPadding, mRightPadding, @@ -1118,7 +1128,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over return mTabStripTreeProvider; } -@@ -855,11 +874,21 @@ public class StripLayoutHelperManager +@@ -844,11 +864,21 @@ public class StripLayoutHelperManager mLeftPadding, mRightPadding); @@ -1194,7 +1204,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/scen 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 -@@ -18,6 +18,9 @@ import org.chromium.chrome.browser.compositor.overlays.strip.StripLayoutTab; +@@ -20,6 +20,9 @@ import org.chromium.chrome.browser.flags.ChromeFeatureList; import org.chromium.chrome.browser.layouts.scene_layer.SceneLayer; import org.chromium.chrome.browser.layouts.scene_layer.SceneOverlayLayer; import org.chromium.ui.resources.ResourceManager; @@ -1204,7 +1214,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/scen /** * The Java component of what is basically a CC Layer that manages drawing the Tab Strip (which is -@@ -88,9 +91,21 @@ public class TabStripSceneLayer extends SceneOverlayLayer { +@@ -90,9 +93,22 @@ public class TabStripSceneLayer extends SceneOverlayLayer { float scrimOpacity, float leftPaddingDp, float rightPaddingDp, @@ -1215,6 +1225,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/scen if (mNativePtr == 0) return; - final boolean visible = yOffset > -layoutHelper.getHeight(); + boolean visible = yOffset > -layoutHelper.getHeight(); ++ + if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) { + if (DeviceFormFactor.isNonMultiDisplayContextOnTablet(ContextUtils.getApplicationContext())) { + // the list of open tabs is moved down, above the top @@ -1225,9 +1236,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/scen + visible = yOffset > (-layoutHelper.getHeight() - topControlsHeight); + } + } - // This will hide the tab strips if necessary. - TabStripSceneLayerJni.get() - .beginBuildingFrame(mNativePtr, TabStripSceneLayer.this, visible); + + // When BrowserControlsInViz is enabled, this function will be called sparingly during a + // scroll to reduce/remove browser frames. If the tab strip isn't visible, diff --git a/chrome/android/java/src/org/chromium/chrome/browser/findinpage/FindToolbarTablet.java b/chrome/android/java/src/org/chromium/chrome/browser/findinpage/FindToolbarTablet.java --- a/chrome/android/java/src/org/chromium/chrome/browser/findinpage/FindToolbarTablet.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/findinpage/FindToolbarTablet.java @@ -1354,7 +1365,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPage. import java.util.List; -@@ -661,11 +662,16 @@ public class NewTabPage +@@ -658,11 +659,16 @@ public class NewTabPage final int topControlsDistanceToRest = mBrowserControlsStateProvider.getContentOffset() - mBrowserControlsStateProvider.getTopControlsHeight(); @@ -1373,7 +1384,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPage. if (topMargin != layoutParams.topMargin || bottomMargin != layoutParams.bottomMargin) { layoutParams.topMargin = topMargin; -@@ -681,9 +687,7 @@ public class NewTabPage +@@ -678,9 +684,7 @@ public class NewTabPage * strip. */ private int getToolbarExtraYOffset() { @@ -1397,7 +1408,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageL import android.view.View; import android.view.ViewGroup; import android.widget.LinearLayout; -@@ -174,10 +177,17 @@ public class NewTabPageLayout extends LinearLayout { +@@ -174,7 +177,12 @@ public class NewTabPageLayout extends LinearLayout { mMiddleSpacer = findViewById(R.id.ntp_middle_spacer); mFakeSearchBoxLayout = findViewById(R.id.search_box); insertSiteSectionView(); @@ -1411,11 +1422,6 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageL Log.i(TAG, "NewTabPageLayout.onFinishInflate after insertSiteSectionView"); } -+ /** -+ - /** - * Initializes the NewTabPageLayout. This must be called immediately after inflation, before - * this object is used in any other way. diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsPage.java b/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsPage.java --- a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsPage.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsPage.java @@ -1462,7 +1468,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsP onUpdated(); } -@@ -298,7 +308,7 @@ public class RecentTabsPage +@@ -303,7 +313,7 @@ public class RecentTabsPage private void updateMargins() { final View recentTabsRoot = mView.findViewById(R.id.recent_tabs_root); @@ -1471,7 +1477,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsP final int contentOffset = mBrowserControlsStateProvider.getContentOffset(); ViewGroup.MarginLayoutParams layoutParams = (ViewGroup.MarginLayoutParams) recentTabsRoot.getLayoutParams(); -@@ -314,9 +324,17 @@ public class RecentTabsPage +@@ -319,9 +329,17 @@ public class RecentTabsPage // If the content offset is different from the margin, we use translationY to position the // view in line with the content offset. @@ -1519,21 +1525,21 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/searchwidget/Se // Update the status bar's color based on the toolbar color. Drawable anchorViewBackground = anchorView.getBackground(); -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 -@@ -403,6 +403,11 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity +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 +@@ -240,6 +240,11 @@ public class FragmentDependencyProvider extends FragmentManager.FragmentLifecycl if (fragment instanceof INeedSnackbarManager) { - ((INeedSnackbarManager)fragment).setSnackbarManager(mSnackbarManager); + ((INeedSnackbarManager)fragment).setSnackbarManagerSupplier(mSnackbarManagerSupplier); } + if (fragment instanceof AccessibilitySettings) { + ((ChromeAccessibilitySettingsDelegate) + ((AccessibilitySettings) fragment) -+ .getDelegate()).setSnackbarManager(mSnackbarManager); ++ .getDelegate()).setSnackbarManagerSupplier(mSnackbarManagerSupplier); + } if (fragment instanceof AccountManagementFragment) { - ((AccountManagementFragment) fragment).setSnackbarManager(mSnackbarManager); - } + ((AccountManagementFragment) fragment) + .setSnackbarManagerSupplier(mSnackbarManagerSupplier); diff --git a/chrome/android/java/src/org/chromium/chrome/browser/status_indicator/StatusIndicatorCoordinator.java b/chrome/android/java/src/org/chromium/chrome/browser/status_indicator/StatusIndicatorCoordinator.java --- a/chrome/android/java/src/org/chromium/chrome/browser/status_indicator/StatusIndicatorCoordinator.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/status_indicator/StatusIndicatorCoordinator.java @@ -1586,7 +1592,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/status_indicato 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 -@@ -196,6 +196,9 @@ import org.chromium.url.GURL; +@@ -195,6 +195,9 @@ import org.chromium.url.GURL; import java.util.List; @@ -1596,7 +1602,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/Toolbar /** * Contains logic for managing the toolbar visual component. This class manages the interactions * with the rest of the application to ensure the toolbar is always visually up to date. -@@ -648,6 +651,17 @@ public class ToolbarManager +@@ -644,6 +647,17 @@ public class ToolbarManager }, AlwaysIncognitoLinkInterceptor.isAlwaysIncognito()); mControlContainer = controlContainer; mToolbarHairline = mControlContainer.findViewById(R.id.toolbar_hairline); @@ -1614,7 +1620,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/Toolbar mBookmarkModelSupplier = bookmarkModelSupplier; mBookmarkModelSupplier.addObserver(mBookmarkModelSupplierObserver); -@@ -1137,6 +1151,7 @@ public class ToolbarManager +@@ -1134,6 +1148,7 @@ public class ToolbarManager // the height won't be measured by the background image. if (mControlContainer.getBackground() == null) { setControlContainerTopMargin(getToolbarExtraYOffset()); @@ -1622,7 +1628,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/Toolbar } else if (mLayoutChangeListener == null) { mLayoutChangeListener = (view, -@@ -1150,6 +1165,7 @@ public class ToolbarManager +@@ -1147,6 +1162,7 @@ public class ToolbarManager oldBottom) -> { if (mControlContainer.getBackground() == null) { setControlContainerTopMargin(getToolbarExtraYOffset()); @@ -1630,7 +1636,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/Toolbar mControlContainer.removeOnLayoutChangeListener( mLayoutChangeListener); mLayoutChangeListener = null; -@@ -1539,16 +1555,28 @@ public class ToolbarManager +@@ -1536,16 +1552,28 @@ public class ToolbarManager return ((LocationBarCoordinator) mLocationBar).getUrlBarTextWithoutAutocomplete(); } @@ -1661,8 +1667,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/Toolbar mBrowserControlsVisibilityManager, mIncognitoStateProvider, mScrimCoordinator, -@@ -1574,7 +1602,7 @@ public class ToolbarManager - mBottomControlsStacker, +@@ -1570,7 +1598,7 @@ public class ToolbarManager + mControlsVisibilityDelegate, mFullscreenManager, mEdgeToEdgeControllerSupplier, - (ScrollingBottomViewResourceFrameLayout) root, @@ -1670,7 +1676,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/Toolbar bottomControlsContentDelegateSupplier, mTabObscuringHandler, mOverlayPanelVisibilitySupplier, -@@ -1582,7 +1610,8 @@ public class ToolbarManager +@@ -1578,7 +1606,8 @@ public class ToolbarManager /* readAloudRestoringSupplier= */ () -> { final var readAloud = mReadAloudControllerSupplier.get(); return readAloud != null && readAloud.isRestoringPlayer(); @@ -1802,7 +1808,7 @@ diff --git a/chrome/browser/android/compositor/scene_layer/tab_strip_scene_layer } } } -@@ -147,7 +150,12 @@ void TabStripSceneLayer::UpdateTabStripLayer(JNIEnv* env, +@@ -155,7 +158,12 @@ void TabStripSceneLayer::UpdateTabStripLayer(JNIEnv* env, jfloat right_padding, jfloat top_padding) { gfx::RectF content(0, y_offset, width, height); @@ -1816,7 +1822,7 @@ diff --git a/chrome/browser/android/compositor/scene_layer/tab_strip_scene_layer tab_strip_layer_->SetBounds(gfx::Size(width, height)); tab_strip_layer_->SetBackgroundColor(SkColor4f::FromColor(background_color)); -@@ -159,7 +167,7 @@ void TabStripSceneLayer::UpdateTabStripLayer(JNIEnv* env, +@@ -167,7 +175,7 @@ void TabStripSceneLayer::UpdateTabStripLayer(JNIEnv* env, group_indicator_layer_->SetPosition(gfx::PointF(0, top_padding)); // Content tree should not be affected by tab strip scene layer visibility. @@ -1828,7 +1834,7 @@ diff --git a/chrome/browser/android/compositor/scene_layer/tab_strip_scene_layer diff --git a/chrome/browser/browser_controls/android/java/src/org/chromium/chrome/browser/browser_controls/BottomControlsStacker.java b/chrome/browser/browser_controls/android/java/src/org/chromium/chrome/browser/browser_controls/BottomControlsStacker.java --- a/chrome/browser/browser_controls/android/java/src/org/chromium/chrome/browser/browser_controls/BottomControlsStacker.java +++ b/chrome/browser/browser_controls/android/java/src/org/chromium/chrome/browser/browser_controls/BottomControlsStacker.java -@@ -178,7 +178,7 @@ public class BottomControlsStacker implements BrowserControlsStateProvider.Obser +@@ -186,7 +186,7 @@ public class BottomControlsStacker implements BrowserControlsStateProvider.Obser /** * @return {@link BrowserControlsStateProvider} instance in the current Activity. */ @@ -1909,7 +1915,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse #include "chrome/browser/android/webapk/webapk_features.h" #include "chrome/browser/browser_features.h" #include "chrome/browser/flags/android/chrome_session_state.h" -@@ -267,6 +268,8 @@ const base::Feature* const kFeaturesExposedToJava[] = { +@@ -270,6 +271,8 @@ const base::Feature* const kFeaturesExposedToJava[] = { &kNavBarColorMatchesTabBackground, &kNewTabSearchEngineUrlAndroid, &kNewTabPageAndroidTriggerForPrerender2, @@ -1921,7 +1927,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 -@@ -373,6 +373,10 @@ public abstract class ChromeFeatureList { +@@ -379,6 +379,10 @@ public abstract class ChromeFeatureList { public static final String NEW_TAB_PAGE_ANDROID_TRIGGER_FOR_PRERENDER2 = "NewTabPageAndroidTriggerForPrerender2"; public static final String NOTIFICATION_ONE_TAP_UNSUBSCRIBE = "NotificationOneTapUnsubscribe"; @@ -1932,7 +1938,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f public static final String NOTIFICATION_PERMISSION_VARIANT = "NotificationPermissionVariant"; public static final String NOTIFICATION_PERMISSION_BOTTOM_SHEET = "NotificationPermissionBottomSheet"; -@@ -660,6 +664,10 @@ public abstract class ChromeFeatureList { +@@ -679,6 +683,10 @@ public abstract class ChromeFeatureList { public static final CachedFlag sPriceInsights = newCachedFlag(PRICE_INSIGHTS, false); public static final CachedFlag sPrivacyGuideAndroid3 = newCachedFlag(PRIVACY_GUIDE_ANDROID_3, false); @@ -1943,7 +1949,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f public static final CachedFlag sPrivacyGuidePreloadAndroid = newCachedFlag(PRIVACY_GUIDE_PRELOAD_ANDROID, false); public static final CachedFlag sOptimizationGuidePushNotifications = -@@ -788,6 +796,8 @@ public abstract class ChromeFeatureList { +@@ -814,6 +822,8 @@ public abstract class ChromeFeatureList { sPrivacyGuideAndroid3, sPrivacyGuidePreloadAndroid, sOptimizationGuidePushNotifications, @@ -2140,7 +2146,7 @@ diff --git a/chrome/browser/hub/internal/android/res/layout/hub_toolbar_layout.x diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc --- a/chrome/browser/prefs/browser_prefs.cc +++ b/chrome/browser/prefs/browser_prefs.cc -@@ -2206,7 +2206,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry, +@@ -2290,7 +2290,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry, #if BUILDFLAG(IS_ANDROID) registry->RegisterBooleanPref(prefs::kVirtualKeyboardResizesLayoutByDefault, @@ -2407,7 +2413,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.List; -@@ -1162,7 +1164,9 @@ class AutocompleteMediator +@@ -1171,7 +1173,9 @@ class AutocompleteMediator @Override public void onSuggestionDropdownScroll() { mSuggestionsListScrolled = true; @@ -2501,7 +2507,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 -@@ -1696,6 +1696,12 @@ Your Google account may have other forms of browsing history like searches and a +@@ -1753,6 +1753,12 @@ Your Google account may have other forms of browsing history like searches and a Force Tablet Mode @@ -2517,7 +2523,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro diff --git a/chrome/browser/ui/android/toolbar/BUILD.gn b/chrome/browser/ui/android/toolbar/BUILD.gn --- a/chrome/browser/ui/android/toolbar/BUILD.gn +++ b/chrome/browser/ui/android/toolbar/BUILD.gn -@@ -168,6 +168,7 @@ android_library("java") { +@@ -170,6 +170,7 @@ android_library("java") { "//content/public/android:content_java", "//third_party/android_deps:material_design_java", "//third_party/androidx:androidx_annotation_annotation_experimental_java", @@ -2580,7 +2586,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/bottom/BottomControlsCoordinator.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/bottom/BottomControlsCoordinator.java --- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/bottom/BottomControlsCoordinator.java +++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/bottom/BottomControlsCoordinator.java -@@ -31,6 +31,8 @@ import org.chromium.ui.modelutil.PropertyModelChangeProcessor; +@@ -32,6 +32,8 @@ import org.chromium.ui.modelutil.PropertyModelChangeProcessor; import org.chromium.ui.resources.ResourceManager; import org.chromium.ui.resources.dynamics.ViewResourceAdapter; import org.chromium.ui.widget.Toast; @@ -2589,7 +2595,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow /** * The root coordinator for the bottom controls component. This component is intended for use with -@@ -80,6 +82,8 @@ public class BottomControlsCoordinator implements BackPressHandler { +@@ -81,6 +83,8 @@ public class BottomControlsCoordinator implements BackPressHandler { * @param constraintsSupplier Used to access current constraints of the browser controls. * @param readAloudRestoringSupplier Supplier that returns true if Read Aloud is currently * restoring its player, e.g. after theme change. @@ -2598,7 +2604,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow */ @SuppressLint("CutPasteId") // Not actually cut and paste since it's View vs ViewGroup. public BottomControlsCoordinator( -@@ -95,7 +99,9 @@ public class BottomControlsCoordinator implements BackPressHandler { +@@ -97,7 +101,9 @@ public class BottomControlsCoordinator implements BackPressHandler { TabObscuringHandler tabObscuringHandler, ObservableSupplier overlayPanelVisibilitySupplier, ObservableSupplier constraintsSupplier, @@ -2609,7 +2615,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow mRootFrameLayout = root; root.setConstraintsSupplier(constraintsSupplier); PropertyModel model = new PropertyModel(BottomControlsProperties.ALL_KEYS); -@@ -155,7 +161,8 @@ public class BottomControlsCoordinator implements BackPressHandler { +@@ -158,7 +164,8 @@ public class BottomControlsCoordinator implements BackPressHandler { mMediator.setBottomControlsColor(color); } }, @@ -2622,7 +2628,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/bottom/BottomControlsMediator.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/bottom/BottomControlsMediator.java --- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/bottom/BottomControlsMediator.java +++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/bottom/BottomControlsMediator.java -@@ -27,6 +27,7 @@ import org.chromium.chrome.browser.ui.edge_to_edge.EdgeToEdgeUtils; +@@ -28,6 +28,7 @@ import org.chromium.chrome.browser.ui.edge_to_edge.EdgeToEdgeUtils; import org.chromium.ui.KeyboardVisibilityDelegate; import org.chromium.ui.base.WindowAndroid; import org.chromium.ui.modelutil.PropertyModel; @@ -2630,20 +2636,20 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow /** * This class is responsible for reacting to events from the outside world, interacting with other -@@ -147,6 +148,12 @@ class BottomControlsMediator - } +@@ -152,6 +153,12 @@ class BottomControlsMediator void setBottomControlsVisible(boolean visible) { + boolean visibilityChanged = mIsBottomControlsVisible != visible; + if (visible == true + && mIsBottomControlsVisible == false + && ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) { + // always show the toolbar if the bottom controls are visible, so as not to leave the hole below. -+ mBottomControlsStacker.getBrowserControls().getBrowserVisibilityDelegate().showControlsTransient(); ++ visibilityChanged = true; + } mIsBottomControlsVisible = visible; updateCompositedViewVisibility(); updateAndroidViewVisibility(); -@@ -181,6 +188,7 @@ class BottomControlsMediator +@@ -193,6 +200,7 @@ class BottomControlsMediator int bottomControlsMinHeightOffset, boolean needsAnimate, boolean isVisibilityForced) { @@ -2651,7 +2657,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow // Method call routed to onBrowserControlsOffsetUpdate. if (BottomControlsStacker.isDispatchingYOffset()) return; -@@ -306,11 +314,13 @@ class BottomControlsMediator +@@ -318,11 +326,13 @@ class BottomControlsMediator && !mIsInSwipeLayout && getBrowserControls().getBottomControlOffset() == 0; if (visible) { diff --git a/build/cromite_patches/Move-some-account-settings-back-to-privacy-settings.patch b/build/cromite_patches/Move-some-account-settings-back-to-privacy-settings.patch index 1a65c2eeafe75ecd51eac6bc084c794ac5bba824..3fb614cac5a6ce3ba28d9d60cc271147e8a9bedb 100644 --- a/build/cromite_patches/Move-some-account-settings-back-to-privacy-settings.patch +++ b/build/cromite_patches/Move-some-account-settings-back-to-privacy-settings.patch @@ -37,7 +37,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 -@@ -50,6 +50,14 @@ import org.chromium.components.user_prefs.UserPrefs; +@@ -52,6 +52,14 @@ import org.chromium.components.user_prefs.UserPrefs; import org.chromium.ui.text.NoUnderlineClickableSpan; import org.chromium.ui.text.SpanApplier; @@ -52,7 +52,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting /** Fragment to keep track of the all the privacy related preferences. */ public class PrivacySettings extends ChromeBaseSettingsFragment implements Preference.OnPreferenceChangeListener { -@@ -66,6 +74,16 @@ public class PrivacySettings extends ChromeBaseSettingsFragment +@@ -68,6 +76,16 @@ public class PrivacySettings extends ChromeBaseSettingsFragment private static final String PREF_INCOGNITO_LOCK = "incognito_lock"; private static final String PREF_THIRD_PARTY_COOKIES = "third_party_cookies"; private static final String PREF_TRACKING_PROTECTION = "tracking_protection"; @@ -69,7 +69,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting @VisibleForTesting static final String PREF_FP_PROTECTION = "fp_protection"; @VisibleForTesting static final String PREF_IP_PROTECTION = "ip_protection"; @VisibleForTesting static final String PREF_CLEAR_BROWSING_DATA = "clear_browsing_data"; -@@ -155,6 +173,16 @@ public class PrivacySettings extends ChromeBaseSettingsFragment +@@ -158,6 +176,16 @@ public class PrivacySettings extends ChromeBaseSettingsFragment setHasOptionsMenu(true); @@ -86,7 +86,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting ChromeSwitchPreference canMakePaymentPref = (ChromeSwitchPreference) findPreference(PREF_CAN_MAKE_PAYMENT); canMakePaymentPref.setOnPreferenceChangeListener(this); -@@ -287,6 +315,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment +@@ -295,6 +323,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment } else if (PREF_HTTPS_FIRST_MODE.equals(key)) { UserPrefs.get(getProfile()) .setBoolean(Pref.HTTPS_ONLY_MODE_ENABLED, (boolean) newValue); @@ -96,7 +96,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting } return true; } -@@ -299,6 +330,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment +@@ -307,6 +338,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment /** Updates the preferences. */ public void updatePreferences() { diff --git a/build/cromite_patches/OpenSearch-miscellaneous.patch b/build/cromite_patches/OpenSearch-miscellaneous.patch index 85481fe0edfa709646178ddb927eeb2588c6c832..330884d7ab12f31341e76a46086dda53f1e54438 100644 --- a/build/cromite_patches/OpenSearch-miscellaneous.patch +++ b/build/cromite_patches/OpenSearch-miscellaneous.patch @@ -22,7 +22,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/browser/search_engines/android/java/src/org/chromium/chrome/browser/search_engines/settings/SearchEngineAdapter.java b/chrome/browser/search_engines/android/java/src/org/chromium/chrome/browser/search_engines/settings/SearchEngineAdapter.java --- a/chrome/browser/search_engines/android/java/src/org/chromium/chrome/browser/search_engines/settings/SearchEngineAdapter.java +++ b/chrome/browser/search_engines/android/java/src/org/chromium/chrome/browser/search_engines/settings/SearchEngineAdapter.java -@@ -282,7 +282,9 @@ public class SearchEngineAdapter extends BaseAdapter +@@ -280,7 +280,9 @@ public class SearchEngineAdapter extends BaseAdapter continue; } if (recentEngineNum < MAX_RECENT_ENGINE_NUM @@ -264,7 +264,7 @@ diff --git a/components/search_engines/template_url_service.h b/components/searc // regardless of |url| if the default search provider is managed by policy or // controlled by an extension. bool CanMakeDefault(const TemplateURL* url) const; -@@ -761,9 +764,6 @@ class TemplateURLService final : public WebDataServiceConsumer, +@@ -754,9 +757,6 @@ class TemplateURLService final : public WebDataServiceConsumer, // SetKeywordSearchTermsForURL is invoked. void UpdateKeywordSearchTermsForURL(const URLVisitedDetails& details); diff --git a/build/cromite_patches/Override-Navigator-Language.patch b/build/cromite_patches/Override-Navigator-Language.patch index cace61543c5491d86707e95ec3de6b5c3fefe114..36be94a3d3c88d1758f7466f0d71ee02c3fa28ba 100644 --- a/build/cromite_patches/Override-Navigator-Language.patch +++ b/build/cromite_patches/Override-Navigator-Language.patch @@ -69,7 +69,7 @@ diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content #include "components/metrics/single_sample_metrics.h" #include "components/services/storage/privileged/mojom/indexed_db_control.mojom.h" #include "components/services/storage/public/cpp/buckets/bucket_id.h" -@@ -3179,8 +3180,11 @@ void RenderProcessHostImpl::AppendRendererCommandLine( +@@ -3239,8 +3240,11 @@ void RenderProcessHostImpl::AppendRendererCommandLine( PropagateBrowserCommandLineToRenderer(browser_command_line, command_line); // Pass on the browser locale. diff --git a/build/cromite_patches/Partition-Blink-memory-cache.patch b/build/cromite_patches/Partition-Blink-memory-cache.patch index 0df146e3b216a568789b19570673275666060012..49f2070c72ca5314502f3ec7fb16c76b3b44df4f 100644 --- a/build/cromite_patches/Partition-Blink-memory-cache.patch +++ b/build/cromite_patches/Partition-Blink-memory-cache.patch @@ -16,13 +16,14 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html --- .../core/html/parser/html_srcset_parser.cc | 2 +- .../core/inspector/inspector_network_agent.cc | 2 +- - .../core/inspector/inspector_page_agent.cc | 4 ++-- - .../renderer/core/loader/image_loader.cc | 3 ++- - .../platform/loader/fetch/memory_cache.cc | 8 ++------ - .../platform/loader/fetch/memory_cache.h | 5 ++--- - .../platform/loader/fetch/resource_fetcher.cc | 19 +++++++++++++------ - .../platform/loader/fetch/resource_fetcher.h | 3 ++- - 8 files changed, 25 insertions(+), 21 deletions(-) + .../core/inspector/inspector_page_agent.cc | 4 +- + .../renderer/core/loader/image_loader.cc | 3 +- + .../core/loader/worker_fetch_context.cc | 3 ++ + .../platform/loader/fetch/memory_cache.cc | 8 +--- + .../platform/loader/fetch/memory_cache.h | 5 +-- + .../platform/loader/fetch/resource_fetcher.cc | 41 ++++++++++++++++--- + .../platform/loader/fetch/resource_fetcher.h | 7 +++- + 9 files changed, 54 insertions(+), 21 deletions(-) diff --git a/third_party/blink/renderer/core/html/parser/html_srcset_parser.cc b/third_party/blink/renderer/core/html/parser/html_srcset_parser.cc --- a/third_party/blink/renderer/core/html/parser/html_srcset_parser.cc @@ -39,7 +40,7 @@ diff --git a/third_party/blink/renderer/core/html/parser/html_srcset_parser.cc b diff --git a/third_party/blink/renderer/core/inspector/inspector_network_agent.cc b/third_party/blink/renderer/core/inspector/inspector_network_agent.cc --- a/third_party/blink/renderer/core/inspector/inspector_network_agent.cc +++ b/third_party/blink/renderer/core/inspector/inspector_network_agent.cc -@@ -2440,7 +2440,7 @@ bool InspectorNetworkAgent::FetchResourceContent(Document* document, +@@ -2436,7 +2436,7 @@ bool InspectorNetworkAgent::FetchResourceContent(Document* document, Resource* cached_resource = document->Fetcher()->CachedResource(url); if (!cached_resource) { cached_resource = MemoryCache::Get()->ResourceForURL( @@ -76,10 +77,23 @@ diff --git a/third_party/blink/renderer/core/loader/image_loader.cc b/third_part if (resource && !resource->ErrorOccurred() && CanReuseFromListOfAvailableImages( +diff --git a/third_party/blink/renderer/core/loader/worker_fetch_context.cc b/third_party/blink/renderer/core/loader/worker_fetch_context.cc +--- a/third_party/blink/renderer/core/loader/worker_fetch_context.cc ++++ b/third_party/blink/renderer/core/loader/worker_fetch_context.cc +@@ -268,6 +268,9 @@ void WorkerFetchContext::PopulateResourceRequestBeforeCacheAccess( + DCHECK(RuntimeEnabledFeatures:: + MinimimalResourceRequestPrepBeforeCacheLookupEnabled()); + ++ if (!request.TopFrameOrigin()) ++ request.SetTopFrameOrigin(GetTopFrameOrigin()); ++ + MixedContentChecker::UpgradeInsecureRequest( + request, &GetResourceFetcherProperties().GetFetchClientSettingsObject(), + global_scope_, mojom::RequestContextFrameType::kNone, diff --git a/third_party/blink/renderer/platform/loader/fetch/memory_cache.cc b/third_party/blink/renderer/platform/loader/fetch/memory_cache.cc --- a/third_party/blink/renderer/platform/loader/fetch/memory_cache.cc +++ b/third_party/blink/renderer/platform/loader/fetch/memory_cache.cc -@@ -207,7 +207,7 @@ void MemoryCache::RemoveInternal(ResourceMap* resource_map, +@@ -197,7 +197,7 @@ void MemoryCache::RemoveInternal(ResourceMap* resource_map, } bool MemoryCache::Contains(const Resource* resource) const { @@ -88,7 +102,7 @@ diff --git a/third_party/blink/renderer/platform/loader/fetch/memory_cache.cc b/ return false; const auto resource_maps_it = -@@ -223,13 +223,9 @@ bool MemoryCache::Contains(const Resource* resource) const { +@@ -213,13 +213,9 @@ bool MemoryCache::Contains(const Resource* resource) const { return resource == resources_it->value->GetResource(); } @@ -117,58 +131,80 @@ diff --git a/third_party/blink/renderer/platform/loader/fetch/memory_cache.h b/t void Add(Resource*); void Remove(Resource*); -@@ -177,6 +174,8 @@ class PLATFORM_EXPORT MemoryCache final : public GarbageCollected, +@@ -168,6 +165,8 @@ class PLATFORM_EXPORT MemoryCache final : public GarbageCollected, base::MemoryPressureListener::MemoryPressureLevel) override; private: + HeapVector> ResourcesForURL(const KURL&) const; + - enum PruneStrategy { - // Automatically decide how much to prune. - kAutomaticPrune, + // A URL-based map of all resources that are in the cache (including the + // freshest version of objects that are currently being referenced by a Web + // page). removeFragmentIdentifierIfNeeded() should be called for the url diff --git a/third_party/blink/renderer/platform/loader/fetch/resource_fetcher.cc b/third_party/blink/renderer/platform/loader/fetch/resource_fetcher.cc --- a/third_party/blink/renderer/platform/loader/fetch/resource_fetcher.cc +++ b/third_party/blink/renderer/platform/loader/fetch/resource_fetcher.cc -@@ -980,7 +980,8 @@ Resource* ResourceFetcher::CreateResourceForStaticData( +@@ -992,7 +992,7 @@ Resource* ResourceFetcher::CreateResourceForStaticData( if (!archive_ && factory.GetType() == ResourceType::kRaw) return nullptr; - const String cache_identifier = GetCacheIdentifier(url); -+ const String cache_identifier = GetCacheIdentifier(url, -+ params.GetResourceRequest().TopFrameOrigin()); ++ const String cache_identifier = GetCacheIdentifier(url, params.GetResourceRequest()); // Most off-main-thread resource fetches use Resource::kRaw and don't reach // this point, but off-main-thread module fetches might. if (IsMainThread()) { -@@ -1423,7 +1424,9 @@ Resource* ResourceFetcher::RequestResource(FetchParameters& params, - resource = nullptr; - } else { - resource = MemoryCache::Get()->ResourceForURL( -- params.Url(), GetCacheIdentifier(params.Url())); -+ params.Url(), -+ GetCacheIdentifier(params.Url(), -+ params.GetResourceRequest().TopFrameOrigin())); - } +@@ -1408,7 +1408,8 @@ Resource* ResourceFetcher::RequestResource(FetchParameters& params, + MakePreloadedResourceBlockOnloadIfNeeded(resource, params); + } else if (IsMainThread()) { + resource = MemoryCache::Get()->ResourceForURL( +- params.Url(), GetCacheIdentifier(params.Url())); ++ params.Url(), ++ GetCacheIdentifier(params.Url(), params.GetResourceRequest())); if (resource) { policy = DetermineRevalidationPolicy(resource_type, params, *resource, -@@ -1721,7 +1724,8 @@ Resource* ResourceFetcher::CreateResourceForLoading( + is_static_data); +@@ -1719,7 +1720,8 @@ Resource* ResourceFetcher::CreateResourceForLoading( const FetchParameters& params, const ResourceFactory& factory) { const String cache_identifier = - GetCacheIdentifier(params.GetResourceRequest().Url()); + GetCacheIdentifier(params.GetResourceRequest().Url(), -+ params.GetResourceRequest().TopFrameOrigin()); - if (!base::FeatureList::IsEnabled( - blink::features::kScopeMemoryCachePerContext)) { - DCHECK(!IsMainThread() || params.IsStaleRevalidation() || -@@ -2793,10 +2797,13 @@ void ResourceFetcher::UpdateAllImageResourcePriorities() { ++ params.GetResourceRequest()); + DCHECK(!IsMainThread() || params.IsStaleRevalidation() || + !MemoryCache::Get()->ResourceForURL(params.GetResourceRequest().Url(), + cache_identifier)); +@@ -2788,10 +2790,37 @@ void ResourceFetcher::UpdateAllImageResourcePriorities() { to_be_removed.clear(); } -String ResourceFetcher::GetCacheIdentifier(const KURL& url) const { +String ResourceFetcher::GetCacheIdentifier(const KURL& url, ++ const ResourceRequest& resource_request) const { ++ if (const scoped_refptr top_origin = resource_request.TopFrameOrigin()) { ++ String origin_url = top_origin ? top_origin->ToRawString() : ""; ++ String cache_identifier = ResourceFetcher::GetCacheIdentifier(url, origin_url); ++ // LOG(INFO) << "---t (" << cache_identifier << ") " << url.GetString() << "='" << origin_url << "'"; ++ return cache_identifier; ++ } ++ // service workers cannot use the memory cache ++ // } else if (resource_request.GetRequestContext() == ++ // mojom::blink::RequestContextType::SERVICE_WORKER) { ++ // const scoped_refptr requestor_origin = resource_request.RequestorOrigin(); ++ // String origin_url = requestor_origin ? requestor_origin->ToRawString() : ""; //context_.Url()->ToRawString(); ++ // String cache_identifier = ResourceFetcher::GetCacheIdentifier(url, origin_url); ++ // // LOG(INFO) << "---o (" << cache_identifier << ") " << url.GetString() << "='" << origin_url << "'"; ++ // return cache_identifier; ++ // } ++ return MemoryCache::DefaultCacheIdentifier(); ++} ++ ++String ResourceFetcher::GetCacheIdentifier(const KURL& url, + scoped_refptr origin) const { + String origin_url = origin ? origin->ToRawString() : ""; ++ return ResourceFetcher::GetCacheIdentifier(url, origin_url); ++} + ++String ResourceFetcher::GetCacheIdentifier(const KURL& url, ++ const String origin_url) const { if (properties_->GetControllerServiceWorkerMode() != mojom::ControllerServiceWorkerMode::kNoController) { - return String::Number(properties_->ServiceWorkerId()); @@ -176,7 +212,7 @@ diff --git a/third_party/blink/renderer/platform/loader/fetch/resource_fetcher.c } // Requests that can be satisfied via `archive_` (i.e. MHTML) or -@@ -2809,7 +2816,7 @@ String ResourceFetcher::GetCacheIdentifier(const KURL& url) const { +@@ -2804,7 +2833,7 @@ String ResourceFetcher::GetCacheIdentifier(const KURL& url) const { if (bundle) return bundle->GetCacheIdentifier(); @@ -188,13 +224,17 @@ diff --git a/third_party/blink/renderer/platform/loader/fetch/resource_fetcher.c diff --git a/third_party/blink/renderer/platform/loader/fetch/resource_fetcher.h b/third_party/blink/renderer/platform/loader/fetch/resource_fetcher.h --- a/third_party/blink/renderer/platform/loader/fetch/resource_fetcher.h +++ b/third_party/blink/renderer/platform/loader/fetch/resource_fetcher.h -@@ -278,7 +278,8 @@ class PLATFORM_EXPORT ResourceFetcher +@@ -278,7 +278,12 @@ class PLATFORM_EXPORT ResourceFetcher uint32_t inflight_keepalive_bytes); blink::mojom::ControllerServiceWorkerMode IsControlledByServiceWorker() const; - String GetCacheIdentifier(const KURL& url) const; + String GetCacheIdentifier(const KURL& url, -+ scoped_refptr cache_identifier) const; ++ const ResourceRequest& resource_request) const; ++ String GetCacheIdentifier(const KURL& url, ++ scoped_refptr origin) const; ++ String GetCacheIdentifier(const KURL& url, ++ const String origin_url) const; // If `url` exists as a resource in a subresource bundle in this frame, // returns its UnguessableToken; otherwise, returns std::nullopt. diff --git a/build/cromite_patches/Partition-blobs-by-top-frame-URL.patch b/build/cromite_patches/Partition-blobs-by-top-frame-URL.patch index 5cddad0011597d88ef86b741a26eda8f0141bbc4..c78ec471242cc69123ab3bc36d3a09b30660bba1 100644 --- a/build/cromite_patches/Partition-blobs-by-top-frame-URL.patch +++ b/build/cromite_patches/Partition-blobs-by-top-frame-URL.patch @@ -17,7 +17,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/storage/browser/blob/blob_url_store_impl.cc b/storage/browser/blob/blob_url_store_impl.cc --- a/storage/browser/blob/blob_url_store_impl.cc +++ b/storage/browser/blob/blob_url_store_impl.cc -@@ -82,6 +82,20 @@ BlobURLStoreImpl::~BlobURLStoreImpl() { +@@ -83,6 +83,20 @@ BlobURLStoreImpl::~BlobURLStoreImpl() { } } @@ -38,7 +38,7 @@ diff --git a/storage/browser/blob/blob_url_store_impl.cc b/storage/browser/blob/ void BlobURLStoreImpl::Register( mojo::PendingRemote blob, const GURL& url, -@@ -116,6 +130,8 @@ void BlobURLStoreImpl::Revoke(const GURL& url) { +@@ -117,6 +131,8 @@ void BlobURLStoreImpl::Revoke(const GURL& url) { void BlobURLStoreImpl::ResolveAsURLLoaderFactory( const GURL& url, mojo::PendingReceiver receiver, @@ -47,7 +47,7 @@ diff --git a/storage/browser/blob/blob_url_store_impl.cc b/storage/browser/blob/ ResolveAsURLLoaderFactoryCallback callback) { if (!registry_) { BlobURLLoaderFactory::Create(mojo::NullRemote(), url, std::move(receiver)); -@@ -123,6 +139,12 @@ void BlobURLStoreImpl::ResolveAsURLLoaderFactory( +@@ -132,6 +148,12 @@ void BlobURLStoreImpl::ResolveAsURLLoaderFactory( return; } @@ -59,8 +59,8 @@ diff --git a/storage/browser/blob/blob_url_store_impl.cc b/storage/browser/blob/ + BlobURLLoaderFactory::Create(registry_->GetBlobFromUrl(url), url, std::move(receiver)); - std::move(callback).Run(registry_->GetUnsafeAgentClusterID(url), -@@ -132,11 +154,17 @@ void BlobURLStoreImpl::ResolveAsURLLoaderFactory( + // When a fragment URL is present, registry_->GetUnsafeAgentClusterID(url) and +@@ -145,11 +167,17 @@ void BlobURLStoreImpl::ResolveAsURLLoaderFactory( void BlobURLStoreImpl::ResolveForNavigation( const GURL& url, mojo::PendingReceiver token, diff --git a/build/cromite_patches/Re-introduce-modal-dialog-flag-to-close-all-tabs.patch b/build/cromite_patches/Re-introduce-modal-dialog-flag-to-close-all-tabs.patch index 2d8d60121900e3c53d9d9f394d92590c20198905..5314523e72d5d54586816c6d099d3ba11dac1087 100644 --- a/build/cromite_patches/Re-introduce-modal-dialog-flag-to-close-all-tabs.patch +++ b/build/cromite_patches/Re-introduce-modal-dialog-flag-to-close-all-tabs.patch @@ -56,7 +56,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 -@@ -265,6 +265,7 @@ public abstract class ChromeFeatureList { +@@ -268,6 +268,7 @@ public abstract class ChromeFeatureList { public static final String CCT_PREWARM_TAB = "CCTPrewarmTab"; public static final String CCT_REPORT_PARALLEL_REQUEST_STATUS = "CCTReportParallelRequestStatus"; diff --git a/build/cromite_patches/Re-introduce-override_build_timestamp.patch b/build/cromite_patches/Re-introduce-override_build_timestamp.patch index ab814afb6dd2a9c855af973c6a73da5b0bfa026f..f433f2243e7e00e7c4fe0f302e3f22a6bdba992b 100644 --- a/build/cromite_patches/Re-introduce-override_build_timestamp.patch +++ b/build/cromite_patches/Re-introduce-override_build_timestamp.patch @@ -16,7 +16,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/base/BUILD.gn b/base/BUILD.gn --- a/base/BUILD.gn +++ b/base/BUILD.gn -@@ -4171,8 +4171,13 @@ action("build_date") { +@@ -4139,8 +4139,13 @@ action("build_date") { args = [ rebase_path("$target_gen_dir/generated_build_date.h", root_build_dir), diff --git a/build/cromite_patches/Reduce-HTTP-headers-in-DoH-requests-to-bare-minimum.patch b/build/cromite_patches/Reduce-HTTP-headers-in-DoH-requests-to-bare-minimum.patch index bb306826abefa105eec9d67f0622fd2306153106..2e6cb2c245b5e9bce8b60b54676f42af4bd10a08 100644 --- a/build/cromite_patches/Reduce-HTTP-headers-in-DoH-requests-to-bare-minimum.patch +++ b/build/cromite_patches/Reduce-HTTP-headers-in-DoH-requests-to-bare-minimum.patch @@ -35,7 +35,7 @@ diff --git a/net/dns/dns_transaction.cc b/net/dns/dns_transaction.cc diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_request_http_job.cc --- a/net/url_request/url_request_http_job.cc +++ b/net/url_request/url_request_http_job.cc -@@ -548,6 +548,7 @@ void URLRequestHttpJob::OnGotFirstPartySetMetadata( +@@ -551,6 +551,7 @@ void URLRequestHttpJob::OnGotFirstPartySetMetadata( // fields in the referrer. GURL referrer(request_->referrer()); @@ -43,7 +43,7 @@ diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_reque // Our consumer should have made sure that this is a safe referrer (e.g. via // URLRequestJob::ComputeReferrerForPolicy). if (referrer.is_valid()) { -@@ -555,11 +556,14 @@ void URLRequestHttpJob::OnGotFirstPartySetMetadata( +@@ -558,11 +559,14 @@ void URLRequestHttpJob::OnGotFirstPartySetMetadata( request_info_.extra_headers.SetHeader(HttpRequestHeaders::kReferer, referer_value); } @@ -58,7 +58,7 @@ diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_reque AddExtraHeaders(); -@@ -805,10 +809,10 @@ void URLRequestHttpJob::StartTransactionInternal() { +@@ -808,10 +812,10 @@ void URLRequestHttpJob::StartTransactionInternal() { void URLRequestHttpJob::AddExtraHeaders() { request_info_.extra_headers.SetAcceptEncodingIfMissing( request()->url(), request()->accepted_stream_types(), diff --git a/build/cromite_patches/Remove-HTTP-referrals-in-cross-origin-navigation.patch b/build/cromite_patches/Remove-HTTP-referrals-in-cross-origin-navigation.patch index a90011504420caa2d48dcbbca7a34ab9175ca9ba..790d215a2283f2ff6d72fc382c9a21d7962fd235 100644 --- a/build/cromite_patches/Remove-HTTP-referrals-in-cross-origin-navigation.patch +++ b/build/cromite_patches/Remove-HTTP-referrals-in-cross-origin-navigation.patch @@ -44,7 +44,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_java_resources.gni --- a/chrome/android/chrome_java_resources.gni +++ b/chrome/android/chrome_java_resources.gni -@@ -642,6 +642,8 @@ chrome_java_resources = [ +@@ -643,6 +643,8 @@ chrome_java_resources = [ "java/res/xml/phone_as_a_security_key_accessory_filter.xml", "java/res/xml/incognito_preferences.xml", "java/res/xml/privacy_preferences.xml", @@ -56,7 +56,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 -@@ -960,6 +960,8 @@ chrome_java_sources = [ +@@ -961,6 +961,8 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/privacy_sandbox/ChromeTrackingProtectionDelegate.java", "java/src/org/chromium/chrome/browser/privacy_sandbox/TrackingProtectionSnackbarController.java", "java/src/org/chromium/chrome/browser/privacy_sandbox/TrackingProtectionSnackbarLimiter.java", @@ -120,7 +120,7 @@ new file mode 100644 diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml --- a/chrome/android/java/res/xml/privacy_preferences.xml +++ b/chrome/android/java/res/xml/privacy_preferences.xml -@@ -116,6 +116,10 @@ found in the LICENSE file. +@@ -121,6 +121,10 @@ found in the LICENSE file. android:title="@string/close_tabs_on_exit_title" android:summary="@string/close_tabs_on_exit_summary" android:defaultValue="false" /> @@ -170,7 +170,7 @@ new file mode 100644 diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java -@@ -27,6 +27,7 @@ import org.chromium.chrome.browser.flags.ChromeFeatureList; +@@ -29,6 +29,7 @@ import org.chromium.chrome.browser.flags.ChromeFeatureList; import org.chromium.chrome.browser.incognito.reauth.IncognitoReauthSettingSwitchPreference; import org.chromium.chrome.browser.preferences.Pref; import org.chromium.chrome.browser.prefetch.settings.PreloadPagesSettingsFragment; @@ -178,7 +178,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting import org.chromium.chrome.browser.privacy.secure_dns.SecureDnsSettings; import org.chromium.chrome.browser.privacy_guide.PrivacyGuideInteractions; import org.chromium.chrome.browser.privacy_sandbox.PrivacySandboxBridge; -@@ -76,6 +77,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment +@@ -87,6 +88,7 @@ public class PrivacySettings extends ChromeBaseSettingsFragment private static final String PREF_DO_NOT_TRACK = "do_not_track"; private static final String PREF_SAFE_BROWSING = "safe_browsing"; private static final String PREF_SYNC_AND_SERVICES_LINK = "sync_and_services_link"; @@ -186,7 +186,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting private static final String PREF_PRIVACY_SANDBOX = "privacy_sandbox"; private static final String PREF_PROXY_OPTIONS = "proxy"; private static final String PREF_PRIVACY_GUIDE = "privacy_guide"; -@@ -438,6 +440,10 @@ public class PrivacySettings extends ChromeBaseSettingsFragment +@@ -472,6 +474,10 @@ public class PrivacySettings extends ChromeBaseSettingsFragment : R.string.text_off); } @@ -379,7 +379,7 @@ new file mode 100644 diff --git a/chrome/browser/extensions/api/settings_private/prefs_util.cc b/chrome/browser/extensions/api/settings_private/prefs_util.cc --- a/chrome/browser/extensions/api/settings_private/prefs_util.cc +++ b/chrome/browser/extensions/api/settings_private/prefs_util.cc -@@ -216,6 +216,11 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlistedKeys() { +@@ -223,6 +223,11 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlistedKeys() { (*s_allowlist)[::prefs::kExpireDaysThreshold] = settings_api::PrefType::kNumber; @@ -394,7 +394,7 @@ diff --git a/chrome/browser/extensions/api/settings_private/prefs_util.cc b/chro 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 -@@ -600,6 +600,9 @@ SystemNetworkContextManager::SystemNetworkContextManager( +@@ -601,6 +601,9 @@ SystemNetworkContextManager::SystemNetworkContextManager( base::BindRepeating(&SystemNetworkContextManager::UpdateReferrersEnabled, base::Unretained(this))); @@ -404,7 +404,7 @@ diff --git a/chrome/browser/net/system_network_context_manager.cc b/chrome/brows pref_change_registrar_.Add( prefs::kExplicitlyAllowedNetworkPorts, base::BindRepeating( -@@ -680,6 +683,7 @@ void SystemNetworkContextManager::RegisterPrefs(PrefRegistrySimple* registry) { +@@ -682,6 +685,7 @@ void SystemNetworkContextManager::RegisterPrefs(PrefRegistrySimple* registry) { // the system NetworkContext, and the per-profile pref values are used for // the profile NetworkContexts. registry->RegisterBooleanPref(prefs::kEnableReferrers, true); @@ -446,7 +446,7 @@ diff --git a/chrome/browser/resources/settings/privacy_page/privacy_page.html b/ diff --git a/chrome/browser/resources/settings/privacy_page/privacy_page.ts b/chrome/browser/resources/settings/privacy_page/privacy_page.ts --- a/chrome/browser/resources/settings/privacy_page/privacy_page.ts +++ b/chrome/browser/resources/settings/privacy_page/privacy_page.ts -@@ -99,6 +99,17 @@ export class SettingsPrivacyPageElement extends SettingsPrivacyPageElementBase { +@@ -100,6 +100,17 @@ export class SettingsPrivacyPageElement extends SettingsPrivacyPageElementBase { }, }, @@ -464,7 +464,7 @@ diff --git a/chrome/browser/resources/settings/privacy_page/privacy_page.ts b/ch /** * Preferences state. */ -@@ -483,6 +494,12 @@ export class SettingsPrivacyPageElement extends SettingsPrivacyPageElementBase { +@@ -507,6 +518,12 @@ export class SettingsPrivacyPageElement extends SettingsPrivacyPageElementBase { Router.getInstance().navigateTo(routes.TRACKING_PROTECTION); } @@ -480,7 +480,7 @@ diff --git a/chrome/browser/resources/settings/privacy_page/privacy_page.ts b/ch 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 -@@ -1124,6 +1124,30 @@ For more settings that use data to improve your Chrome experience, go to @@ -526,7 +526,7 @@ diff --git a/chrome/browser/ui/prefs/pref_watcher.cc b/chrome/browser/ui/prefs/p diff --git a/chrome/browser/ui/prefs/prefs_tab_helper.cc b/chrome/browser/ui/prefs/prefs_tab_helper.cc --- a/chrome/browser/ui/prefs/prefs_tab_helper.cc +++ b/chrome/browser/ui/prefs/prefs_tab_helper.cc -@@ -376,6 +376,8 @@ void PrefsTabHelper::RegisterProfilePrefs( +@@ -375,6 +375,8 @@ void PrefsTabHelper::RegisterProfilePrefs( registry->RegisterBooleanPref( prefs::kEnableReferrers, !base::FeatureList::IsEnabled(features::kNoReferrers)); @@ -538,7 +538,7 @@ diff --git a/chrome/browser/ui/prefs/prefs_tab_helper.cc b/chrome/browser/ui/pre diff --git a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc --- a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc +++ b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc -@@ -1854,6 +1854,10 @@ void AddPrivacyStrings(content::WebUIDataSource* html_source, +@@ -1775,6 +1775,10 @@ void AddPrivacyStrings(content::WebUIDataSource* html_source, {"dayHistory", IDS_SETTINGS_DAY_HISTORY_DESCRIPTION}, {"daysHistory", IDS_SETTINGS_DAYS_HISTORY_DESCRIPTION}, {"foreverHistory", IDS_SETTINGS_FOREVER_HISTORY_DESCRIPTION}, @@ -552,7 +552,7 @@ diff --git a/chrome/browser/ui/webui/settings/settings_localized_strings_provide 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 -@@ -1589,6 +1589,9 @@ inline constexpr char kEnableEncryptedMedia[] = +@@ -1605,6 +1605,9 @@ inline constexpr char kEnableEncryptedMedia[] = inline constexpr char kPrefixedVideoFullscreenApiAvailability[] = "media.prefixed_fullscreen_video_api_availability"; @@ -634,7 +634,7 @@ diff --git a/content/browser/renderer_host/navigation_request.cc b/content/brows diff --git a/services/network/public/cpp/resource_request.h b/services/network/public/cpp/resource_request.h --- a/services/network/public/cpp/resource_request.h +++ b/services/network/public/cpp/resource_request.h -@@ -152,7 +152,7 @@ struct COMPONENT_EXPORT(NETWORK_CPP_BASE) ResourceRequest { +@@ -146,7 +146,7 @@ struct COMPONENT_EXPORT(NETWORK_CPP_BASE) ResourceRequest { std::vector navigation_redirect_chain; GURL referrer; diff --git a/build/cromite_patches/Remove-SMS-integration.patch b/build/cromite_patches/Remove-SMS-integration.patch index 6cd5234bb03d307b8c351755d4aca11ea88afafb..6613a73973d158f0f3a3d772a6f5b48d36144827 100644 --- a/build/cromite_patches/Remove-SMS-integration.patch +++ b/build/cromite_patches/Remove-SMS-integration.patch @@ -56,7 +56,7 @@ diff --git a/chrome/browser/language/android/java/src/org/chromium/chrome/browse - // If this is not a bundle build or the default system language is being used the language - // split should not be installed. Instead indicate that the listener completed successfully - // since the language resources will already be present. -- if (!BundleUtils.isBundle() || isFollowSystemLanguage(languageName)) { +- if (!BuildConfig.IS_BUNDLE || isFollowSystemLanguage(languageName)) { - wrappedListener.onComplete(true); - } else { - LanguageSplitInstaller.getInstance().installLanguage(languageName, wrappedListener); diff --git a/build/cromite_patches/Remove-binary-blob-integrations.patch b/build/cromite_patches/Remove-binary-blob-integrations.patch index caed6fd59636bf97b8bc17fdbe2fe27a55d6883a..6fdf733842c77bd91fa5c1b381f279caf69b1a54 100644 --- a/build/cromite_patches/Remove-binary-blob-integrations.patch +++ b/build/cromite_patches/Remove-binary-blob-integrations.patch @@ -27,7 +27,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html ...em_webview_bundle.AndroidManifest.expected | 5 - build/android/gyp/proguard.py | 2 + build/config/android/config.gni | 4 +- - chrome/android/BUILD.gn | 47 +- + chrome/android/BUILD.gn | 46 +- chrome/android/chrome_java_sources.gni | 5 - .../features/cablev2_authenticator/BUILD.gn | 2 - chrome/android/java/AndroidManifest.xml | 50 -- @@ -36,7 +36,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../browser/PlayServicesVersionInfo.java | 11 +- .../ChromeBackgroundTaskFactory.java | 3 - .../gcore/ChromeGoogleApiClientImpl.java | 25 +- - .../browser/gcore/GoogleApiClientHelper.java | 89 +- + .../browser/gcore/GoogleApiClientHelper.java | 89 +-- .../instantapps/InstantAppsHandler.java | 6 +- .../settings/PasswordSettings.java | 9 - .../modules/chrome_feature_modules.gni | 3 - @@ -44,9 +44,10 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../language/AppLanguagePromoDialog.java | 31 - .../language/settings/LanguageSettings.java | 6 - chrome/browser/omaha/android/BUILD.gn | 1 - - .../browser/password_manager/android/BUILD.gn | 4 - + .../browser/password_manager/android/BUILD.gn | 5 - + .../password_manager/GmsUpdateLauncher.java | 27 - .../PasswordManagerAndroidBackendUtil.java | 38 +- - .../PasswordManagerHelper.java | 32 +- + .../PasswordManagerHelper.java | 4 +- ...swordSyncControllerDelegateBridgeImpl.java | 7 - .../push_messaging_service_factory.cc | 8 +- chrome/browser/resources/settings/route.ts | 2 - @@ -57,7 +58,6 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../webui/chrome_web_ui_controller_factory.cc | 3 - chrome/browser/webauthn/android/BUILD.gn | 1 - .../CableAuthenticatorModuleProvider.java | 35 +- - .../authenticator_request_dialog_model.cc | 4 - chrome/browser/webauthn/cablev2_devices.cc | 3 + chrome/test/android/BUILD.gn | 2 - .../ExternalNavigationHandler.java | 8 - @@ -83,7 +83,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../media_router/caf/CastUtils.java | 8 - .../CafExpandedControllerActivity.java | 35 +- .../CafRemotingMediaRouteProvider.java | 4 +- - .../remoting/FlingingControllerAdapter.java | 89 -- + .../remoting/FlingingControllerAdapter.java | 89 --- .../caf/remoting/RemotingMediaSource.java | 8 +- .../remoting/RemotingSessionController.java | 30 - .../test/android/cast_emulator/BUILD.gn | 1 - @@ -105,11 +105,11 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html services/BUILD.gn | 9 - services/device/geolocation/BUILD.gn | 4 - services/shape_detection/BUILD.gn | 2 - - third_party/android_deps/BUILD.gn | 762 +----------------- + third_party/android_deps/BUILD.gn | 720 +----------------- .../preconditions/javatests/BUILD.gn | 1 - .../gms/ChromiumPlayServicesAvailability.java | 10 +- third_party/cardboard/BUILD.gn | 4 - - 85 files changed, 117 insertions(+), 2352 deletions(-) + 85 files changed, 116 insertions(+), 2306 deletions(-) create mode 100644 components/webauthn/android/java/src/org/chromium/components/webauthn/ConditionalUiState.java diff --git a/android_webview/expectations/system_webview_bundle.AndroidManifest.expected b/android_webview/expectations/system_webview_bundle.AndroidManifest.expected @@ -149,7 +149,7 @@ diff --git a/build/android/gyp/proguard.py b/build/android/gyp/proguard.py diff --git a/build/config/android/config.gni b/build/config/android/config.gni --- a/build/config/android/config.gni +++ b/build/config/android/config.gni -@@ -173,9 +173,7 @@ if (is_android || is_chromeos) { +@@ -170,9 +170,7 @@ if (is_android) { # google_play_services_package contains the path where individual client # targets (e.g. google_play_services_base_java) are located. @@ -159,11 +159,11 @@ diff --git a/build/config/android/config.gni b/build/config/android/config.gni + google_play_services_package = "" if (!defined(android_protoc_bin)) { - android_protoc_bin = "//third_party/android_protoc/protoc" + android_protoc_bin = "//third_party/android_build_tools/protoc/cipd/protoc" diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -346,14 +346,6 @@ if (current_toolchain == default_toolchain) { +@@ -347,14 +347,6 @@ if (current_toolchain == default_toolchain) { ":google_api_keys_java", ":java_overlay_resources", ":usage_stats_proto_java", @@ -175,10 +175,10 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn - "$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", + "//base:content_uri_utils_java", + "//base:service_loader_java", "//base/version_info/android:version_constants_java", - "//cc:cc_java", - "//cc/mojom:mojom_java", -@@ -715,13 +707,23 @@ if (current_toolchain == default_toolchain) { +@@ -726,13 +718,23 @@ if (current_toolchain == default_toolchain) { "//services/shape_detection:shape_detection_java", "//services/shape_detection/public/mojom:mojom_java", "//skia/public/mojom:mojom_java", @@ -204,7 +204,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn "//third_party/android_deps:protobuf_lite_runtime_java", "//third_party/android_media:android_media_java", "//third_party/android_swipe_refresh:android_swipe_refresh_java", -@@ -987,12 +989,6 @@ if (current_toolchain == default_toolchain) { +@@ -999,12 +1001,6 @@ if (current_toolchain == default_toolchain) { ":chrome_jni_headers", ":chrome_unit_test_util_java", ":delegate_public_impl_java", @@ -217,7 +217,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn "//base:base_java_test_support", "//base:base_java_test_support_uncommon", "//base:base_junit_test_support", -@@ -1670,13 +1666,6 @@ if (current_toolchain == default_toolchain) { +@@ -1692,13 +1688,6 @@ if (current_toolchain == default_toolchain) { ":chrome_app_java_resources", ":chrome_test_util_java", ":delegate_public_impl_java", @@ -231,7 +231,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn "//base:base_java", "//base:base_java_test_support", "//base:base_java_test_support_uncommon", -@@ -2579,7 +2568,6 @@ if (current_toolchain == default_toolchain) { +@@ -2604,7 +2593,6 @@ if (current_toolchain == default_toolchain) { ] deps = [ ":chrome_java", @@ -239,15 +239,15 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn "//base:base_java", "//base:base_java_test_support", "//build/android:build_java", -@@ -2681,7 +2669,6 @@ if (current_toolchain == default_toolchain) { +@@ -2704,7 +2692,6 @@ if (current_toolchain == default_toolchain) { # is in a DFM. android_library("base_module_java") { sources = [ - "java/src/com/google/ipc/invalidation/ticl/android2/channel/GcmRegistrationTaskService.java", "java/src/org/chromium/chrome/app/TrichromeZygotePreload.java", "java/src/org/chromium/chrome/browser/ChromeBackgroundService.java", - "java/src/org/chromium/chrome/browser/ChromeBackupAgent.java", -@@ -2698,8 +2685,6 @@ if (current_toolchain == default_toolchain) { + "java/src/org/chromium/chrome/browser/DeferredStartupHandler.java", +@@ -2721,8 +2708,6 @@ if (current_toolchain == default_toolchain) { "java/src/org/chromium/chrome/browser/base/SplitCompatBackupAgent.java", "java/src/org/chromium/chrome/browser/base/SplitCompatContentProvider.java", "java/src/org/chromium/chrome/browser/base/SplitCompatCustomTabsService.java", @@ -256,7 +256,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn "java/src/org/chromium/chrome/browser/base/SplitCompatIntentService.java", "java/src/org/chromium/chrome/browser/base/SplitCompatJobService.java", "java/src/org/chromium/chrome/browser/base/SplitCompatMinidumpUploadJobService.java", -@@ -2723,16 +2708,10 @@ if (current_toolchain == default_toolchain) { +@@ -2746,15 +2731,10 @@ if (current_toolchain == default_toolchain) { "java/src/org/chromium/chrome/browser/notifications/NotificationService.java", "java/src/org/chromium/chrome/browser/photo_picker/DecoderService.java", "java/src/org/chromium/chrome/browser/provider/ChromeBrowserProvider.java", @@ -267,13 +267,12 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn ] deps = [ ":chrome_base_module_resources", -- "$google_play_services_package:google_firebase_firebase_iid_java", - "$google_play_services_package:google_firebase_firebase_messaging_java", - "$google_play_services_package:google_play_services_gcm_java", "//base:base_java", "//chrome/browser/download/android:file_provider_java", "//chrome/browser/flags:java", -@@ -2746,7 +2725,6 @@ if (current_toolchain == default_toolchain) { +@@ -2768,7 +2748,6 @@ if (current_toolchain == default_toolchain) { "//components/media_router/browser/android:cast_options_provider_java", "//components/minidump_uploader:minidump_uploader_java", "//components/module_installer/android:module_installer_java", @@ -281,7 +280,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn "//third_party/androidx:androidx_annotation_annotation_java", "//third_party/androidx:androidx_collection_collection_java", "//third_party/jni_zero:jni_zero_java", -@@ -2766,7 +2744,6 @@ if (current_toolchain == default_toolchain) { +@@ -2788,7 +2767,6 @@ if (current_toolchain == default_toolchain) { # Deps to pull services into base module. # TODO(crbug.com/40148088): Consider moving these to the chrome module to # reduce base dex size. @@ -292,15 +291,15 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni --- a/chrome/android/chrome_java_sources.gni +++ b/chrome/android/chrome_java_sources.gni -@@ -14,7 +14,6 @@ chrome_java_sources = [ +@@ -12,7 +12,6 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/ChromeActionModeHandler.java", "java/src/org/chromium/chrome/browser/ChromeActivitySessionTracker.java", "java/src/org/chromium/chrome/browser/ChromeApplicationImpl.java", - "java/src/org/chromium/chrome/browser/ChromeBackgroundServiceImpl.java", - "java/src/org/chromium/chrome/browser/ChromeBackupAgentImpl.java", - "java/src/org/chromium/chrome/browser/ChromeBackupWatcher.java", "java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java", -@@ -986,10 +985,6 @@ chrome_java_sources = [ + "java/src/org/chromium/chrome/browser/ChromeInactivityTracker.java", + "java/src/org/chromium/chrome/browser/ChromeKeyboardVisibilityDelegate.java", +@@ -987,10 +986,6 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/segmentation_platform/ReaderModeActionProvider.java", "java/src/org/chromium/chrome/browser/segmentation_platform/SignalAccumulator.java", "java/src/org/chromium/chrome/browser/selection/ChromeSelectionDropdownMenuDelegate.java", @@ -308,9 +307,9 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java - "java/src/org/chromium/chrome/browser/services/gcm/GCMBackgroundServiceImpl.java", - "java/src/org/chromium/chrome/browser/services/gcm/GCMNativeBackgroundTask.java", - "java/src/org/chromium/chrome/browser/services/gcm/GcmUma.java", + "java/src/org/chromium/chrome/browser/settings/FragmentDependencyProvider.java", "java/src/org/chromium/chrome/browser/settings/MainSettings.java", "java/src/org/chromium/chrome/browser/settings/SettingsActivity.java", - "java/src/org/chromium/chrome/browser/settings/SettingsLauncherImpl.java", diff --git a/chrome/android/features/cablev2_authenticator/BUILD.gn b/chrome/android/features/cablev2_authenticator/BUILD.gn --- a/chrome/android/features/cablev2_authenticator/BUILD.gn +++ b/chrome/android/features/cablev2_authenticator/BUILD.gn @@ -406,7 +405,7 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro -@@ -1286,12 +1242,6 @@ by a child template that "extends" this file. +@@ -1288,12 +1244,6 @@ by a child template that "extends" this file. {% endif %} @@ -721,7 +720,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/gcore/GoogleApi diff --git a/chrome/android/java/src/org/chromium/chrome/browser/instantapps/InstantAppsHandler.java b/chrome/android/java/src/org/chromium/chrome/browser/instantapps/InstantAppsHandler.java --- a/chrome/android/java/src/org/chromium/chrome/browser/instantapps/InstantAppsHandler.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/instantapps/InstantAppsHandler.java -@@ -32,8 +32,8 @@ public class InstantAppsHandler { +@@ -37,8 +37,8 @@ public class InstantAppsHandler { * @return Whether or not the instant app specified by the entry in the page's manifest is * either available, or would be available if the user wasn't in the holdback group. */ @@ -736,15 +735,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/instantapps/Ins diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java -@@ -127,7 +127,6 @@ public class PasswordSettings extends ChromeBaseSettingsFragment +@@ -130,7 +130,6 @@ public class PasswordSettings extends ChromeBaseSettingsFragment private Preference mLinkPref; private Menu mMenu; - private @Nullable PasswordCheck mPasswordCheck; private @ManagePasswordsReferrer int mManagePasswordsReferrer; - private BottomSheetController mBottomSheetController; - -@@ -205,7 +204,6 @@ public class PasswordSettings extends ChromeBaseSettingsFragment + private OneshotSupplier mBottomSheetControllerSupplier; + private final ObservableSupplierImpl mPageTitle = new ObservableSupplierImpl<>(); +@@ -214,7 +213,6 @@ public class PasswordSettings extends ChromeBaseSettingsFragment @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -752,7 +751,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage computeTrustedVaultBannerState(); } -@@ -310,9 +308,6 @@ public class PasswordSettings extends ChromeBaseSettingsFragment +@@ -319,9 +317,6 @@ public class PasswordSettings extends ChromeBaseSettingsFragment if (shouldShowAutoSigninOption()) { createAutoSignInCheckbox(); } @@ -762,7 +761,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage if (mTrustedVaultBannerState == TrustedVaultBannerState.OPTED_IN) { createTrustedVaultBanner( -@@ -513,10 +508,6 @@ public class PasswordSettings extends ChromeBaseSettingsFragment +@@ -522,10 +517,6 @@ public class PasswordSettings extends ChromeBaseSettingsFragment // by the system. if (getActivity().isFinishing()) { PasswordManagerHandlerProvider.getForProfile(getProfile()).removeObserver(this); @@ -796,7 +795,7 @@ diff --git a/chrome/android/modules/chrome_feature_modules.gni b/chrome/android/ diff --git a/chrome/browser/language/android/BUILD.gn b/chrome/browser/language/android/BUILD.gn --- a/chrome/browser/language/android/BUILD.gn +++ b/chrome/browser/language/android/BUILD.gn -@@ -10,15 +10,12 @@ android_library("base_module_java") { +@@ -10,16 +10,13 @@ android_library("base_module_java") { sources = [ "java/src/org/chromium/chrome/browser/language/AppLocaleUtils.java", "java/src/org/chromium/chrome/browser/language/GlobalAppLocaleController.java", @@ -805,6 +804,7 @@ diff --git a/chrome/browser/language/android/BUILD.gn b/chrome/browser/language/ deps = [ - "$google_play_services_package:google_play_services_tasks_java", "//base:base_java", + "//build/android:build_java", "//chrome/browser/preferences:java", "//components/language/android:java", "//components/language/android:ulp_delegate_java", @@ -863,7 +863,7 @@ diff --git a/chrome/browser/language/android/java/src/org/chromium/chrome/browse diff --git a/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/settings/LanguageSettings.java b/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/settings/LanguageSettings.java --- a/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/settings/LanguageSettings.java +++ b/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/settings/LanguageSettings.java -@@ -18,7 +18,6 @@ import org.chromium.base.Log; +@@ -20,7 +20,6 @@ import org.chromium.base.supplier.ObservableSupplierImpl; import org.chromium.chrome.browser.flags.ChromeFeatureList; import org.chromium.chrome.browser.language.AppLocaleUtils; import org.chromium.chrome.browser.language.GlobalAppLocaleController; @@ -871,7 +871,7 @@ diff --git a/chrome/browser/language/android/java/src/org/chromium/chrome/browse import org.chromium.chrome.browser.language.R; import org.chromium.chrome.browser.preferences.Pref; import org.chromium.chrome.browser.preferences.PrefChangeRegistrar; -@@ -129,11 +128,6 @@ public class LanguageSettings extends ChromeBaseSettingsFragment +@@ -138,11 +137,6 @@ public class LanguageSettings extends ChromeBaseSettingsFragment * translate target language, and detailed translate preferences. */ private void createDetailedPreferences(Bundle savedInstanceState, String rootKey) { @@ -897,24 +897,75 @@ diff --git a/chrome/browser/omaha/android/BUILD.gn b/chrome/browser/omaha/androi diff --git a/chrome/browser/password_manager/android/BUILD.gn b/chrome/browser/password_manager/android/BUILD.gn --- a/chrome/browser/password_manager/android/BUILD.gn +++ b/chrome/browser/password_manager/android/BUILD.gn -@@ -119,8 +119,6 @@ android_library("java") { - ":android_backend_java_enums", +@@ -120,8 +120,6 @@ android_library("java") { ":java_resources", ":settings_interface_java", + ":utils_java", - "$google_play_services_package:google_play_services_base_java", - "$google_play_services_package:google_play_services_basement_java", "account_storage_notice:java", "//base:base_java", "//build/android:build_java", -@@ -277,8 +275,6 @@ robolectric_binary("password_manager_junit_tests") { - ":settings_interface_java", +@@ -250,7 +248,6 @@ android_library("utils_java") { + ] + + deps = [ +- "$google_play_services_package:google_play_services_base_java", + "//chrome/browser/settings:factory_java", + "//components/browser_ui/settings/android:java", + ] +@@ -303,8 +300,6 @@ robolectric_binary("password_manager_junit_tests") { ":test_support_java", ":unified_password_manager_proto_java", + ":utils_java", - "$google_play_services_package:google_play_services_base_java", - "$google_play_services_package:google_play_services_basement_java", "access_loss:junit", "account_storage_notice:junit", "add_username_dialog:junit", +diff --git a/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/GmsUpdateLauncher.java b/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/GmsUpdateLauncher.java +--- a/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/GmsUpdateLauncher.java ++++ b/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/GmsUpdateLauncher.java +@@ -9,8 +9,6 @@ import android.content.Context; + import android.content.Intent; + import android.net.Uri; + +-import com.google.android.gms.common.GoogleApiAvailability; +- + /** Launches the UI through which the user can update Google Play Services/ */ + public class GmsUpdateLauncher { + // Referrer string for the Google Play Store when installing GMS Core package +@@ -22,30 +20,5 @@ public class GmsUpdateLauncher { + * @param context to start the new store Activity from. + */ + public static void launch(Context context) { +- Intent intent = new Intent(Intent.ACTION_VIEW); +- String deepLinkUrl = +- "market://details?id=" +- + GoogleApiAvailability.GOOGLE_PLAY_SERVICES_PACKAGE +- + "&referrer=" +- + STORE_REFERER; +- +- intent.setPackage("com.android.vending"); +- intent.setData(Uri.parse(deepLinkUrl)); +- intent.putExtra("callerId", context.getPackageName()); +- +- // Request for overlay flow, Play Store will fallback to the default +- // behaviour if overlay is not available. +- // TODO(crbug.com/40855336): Use AlleyOop v3 overlay UI after fixing Chrome restart +- // during the GMS Core installation. +- // intent.putExtra("overlay", true); +- try { +- context.startActivity(intent); +- } catch (ActivityNotFoundException e) { +- // In case that Google Play Store isn't present on the device, its activity could not +- // have been started. +- // TODO: b/334051261 - Instead of silently failing to open Google Play Store to offer +- // updating GMS Core, either don't offer the option at all or indicate why the update +- // button didn't work. +- } + } + } diff --git a/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/PasswordManagerAndroidBackendUtil.java b/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/PasswordManagerAndroidBackendUtil.java --- a/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/PasswordManagerAndroidBackendUtil.java +++ b/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/PasswordManagerAndroidBackendUtil.java @@ -986,53 +1037,16 @@ diff --git a/chrome/browser/password_manager/android/java/src/org/chromium/chrom diff --git a/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/PasswordManagerHelper.java b/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/PasswordManagerHelper.java --- a/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/PasswordManagerHelper.java +++ b/chrome/browser/password_manager/android/java/src/org/chromium/chrome/browser/password_manager/PasswordManagerHelper.java -@@ -22,9 +22,6 @@ import androidx.annotation.Nullable; +@@ -21,8 +21,6 @@ import androidx.annotation.Nullable; import androidx.annotation.VisibleForTesting; import androidx.fragment.app.FragmentActivity; --import com.google.android.gms.common.GoogleApiAvailability; -import com.google.android.gms.common.api.ApiException; - import org.jni_zero.JniType; import org.jni_zero.NativeMethods; -@@ -436,34 +433,9 @@ public class PasswordManagerHelper { - } - - public static void launchGmsUpdate(Context context) { -- Intent intent = new Intent(Intent.ACTION_VIEW); -- String deepLinkUrl = -- "market://details?id=" -- + GoogleApiAvailability.GOOGLE_PLAY_SERVICES_PACKAGE -- + "&referrer=" -- + STORE_REFERER; -- -- intent.setPackage("com.android.vending"); -- intent.setData(Uri.parse(deepLinkUrl)); -- intent.putExtra("callerId", context.getPackageName()); -- -- // Request for overlay flow, Play Store will fallback to the default -- // behaviour if overlay is not available. -- // TODO(crbug.com/40855336): Use AlleyOop v3 overlay UI after fixing Chrome restart -- // during the GMS Core installation. -- // intent.putExtra("overlay", true); -- -- try { -- context.startActivity(intent); -- } catch (ActivityNotFoundException e) { -- // In case that Google Play Store isn't present on the device, its activity could not -- // have been started. -- // TODO: b/334051261 - Instead of silently failing to open Google Play Store to offer -- // updating GMS Core, either don't offer the option at all or indicate why the update -- // button didn't work. -- } - } - -+ - public void launchExportFlow(Context context) { - FragmentActivity activity = (FragmentActivity) ContextUtils.activityFromContext(context); - assert activity != null : "Context is expected to be a fragment activity"; -@@ -582,7 +554,7 @@ public class PasswordManagerHelper { +@@ -546,7 +544,7 @@ public class PasswordManagerHelper { CredentialManagerError.API_ERROR, CredentialManagerError.COUNT); @@ -1098,7 +1112,7 @@ diff --git a/chrome/browser/resources/settings/route.ts b/chrome/browser/resourc 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 -@@ -308,8 +308,6 @@ static_library("ui") { +@@ -253,8 +253,6 @@ static_library("ui") { "webui/flags/flags_ui.h", "webui/flags/flags_ui_handler.cc", "webui/flags/flags_ui_handler.h", @@ -1107,7 +1121,7 @@ diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn "webui/internals/internals_ui.cc", "webui/internals/internals_ui.h", "webui/interstitials/interstitial_ui.cc", -@@ -545,7 +543,6 @@ static_library("ui") { +@@ -518,7 +516,6 @@ static_library("ui") { "//components/find_in_page", "//components/fingerprinting_protection_filter/browser", "//components/flags_ui", @@ -1118,7 +1132,7 @@ diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn diff --git a/chrome/browser/ui/android/omnibox/BUILD.gn b/chrome/browser/ui/android/omnibox/BUILD.gn --- a/chrome/browser/ui/android/omnibox/BUILD.gn +++ b/chrome/browser/ui/android/omnibox/BUILD.gn -@@ -157,8 +157,6 @@ android_library("java") { +@@ -153,8 +153,6 @@ android_library("java") { deps = [ ":java_resources", @@ -1127,7 +1141,7 @@ diff --git a/chrome/browser/ui/android/omnibox/BUILD.gn b/chrome/browser/ui/andr "//base:base_java", "//build/android:build_java", "//chrome/browser/android/lifecycle:java", -@@ -476,8 +474,6 @@ robolectric_library("junit") { +@@ -467,8 +465,6 @@ robolectric_library("junit") { deps = [ ":java", ":java_resources", @@ -1168,7 +1182,7 @@ diff --git a/chrome/browser/ui/android/signin/java/src/org/chromium/chrome/brows diff --git a/chrome/browser/ui/webauthn/sheet_models.cc b/chrome/browser/ui/webauthn/sheet_models.cc --- a/chrome/browser/ui/webauthn/sheet_models.cc +++ b/chrome/browser/ui/webauthn/sheet_models.cc -@@ -1554,16 +1554,9 @@ AuthenticatorMultiSourcePickerSheetModel:: +@@ -1518,16 +1518,9 @@ AuthenticatorMultiSourcePickerSheetModel:: bool AuthenticatorMultiSourcePickerSheetModel::IsManageDevicesButtonVisible() const { @@ -1197,8 +1211,8 @@ diff --git a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc b/chrom #include "chrome/browser/ui/webui/internals/internals_ui.h" #include "chrome/browser/ui/webui/interstitials/interstitial_ui.h" #include "chrome/browser/ui/webui/intro/intro_ui.h" -@@ -403,8 +402,6 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui, - #endif +@@ -385,8 +384,6 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui, + return &NewWebUI; if (url.host_piece() == chrome::kChromeUIDeviceLogHost) return &NewWebUI; - if (url.host_piece() == chrome::kChromeUIGCMInternalsHost) @@ -1234,10 +1248,10 @@ diff --git a/chrome/browser/webauthn/android/java/src/org/chromium/chrome/browse import org.chromium.chrome.modules.cablev2_authenticator.Cablev2AuthenticatorModule; import org.chromium.components.externalauth.ExternalAuthUtils; -import org.chromium.components.webauthn.Fido2ApiCall; - import org.chromium.device.DeviceFeatureList; - import org.chromium.device.DeviceFeatureMap; -@@ -291,37 +288,7 @@ public class CableAuthenticatorModuleProvider extends Fragment implements OnClic + /** + * Provides a UI that attempts to install the caBLEv2 Authenticator module. If already installed, or +@@ -285,37 +282,7 @@ public class CableAuthenticatorModuleProvider extends Fragment implements OnClic ok = false; } @@ -1276,20 +1290,6 @@ diff --git a/chrome/browser/webauthn/android/java/src/org/chromium/chrome/browse } @NativeMethods -diff --git a/chrome/browser/webauthn/authenticator_request_dialog_model.cc b/chrome/browser/webauthn/authenticator_request_dialog_model.cc ---- a/chrome/browser/webauthn/authenticator_request_dialog_model.cc -+++ b/chrome/browser/webauthn/authenticator_request_dialog_model.cc -@@ -2257,10 +2257,6 @@ void AuthenticatorRequestDialogController::PopulateMechanisms() { - if (model_->cable_ui_type) { - switch (*model_->cable_ui_type) { - case AuthenticatorRequestDialogModel::CableUIType::CABLE_V2_2ND_FACTOR: -- if (base::Contains(transport_availability_.available_transports, -- kCable)) { -- include_add_phone_option = !windows_handles_hybrid; -- } - break; - - case AuthenticatorRequestDialogModel::CableUIType::CABLE_V2_SERVER_LINK: diff --git a/chrome/browser/webauthn/cablev2_devices.cc b/chrome/browser/webauthn/cablev2_devices.cc --- a/chrome/browser/webauthn/cablev2_devices.cc +++ b/chrome/browser/webauthn/cablev2_devices.cc @@ -1306,7 +1306,7 @@ diff --git a/chrome/browser/webauthn/cablev2_devices.cc b/chrome/browser/webauth diff --git a/chrome/test/android/BUILD.gn b/chrome/test/android/BUILD.gn --- a/chrome/test/android/BUILD.gn +++ b/chrome/test/android/BUILD.gn -@@ -338,8 +338,6 @@ android_library("chrome_java_integration_test_support") { +@@ -346,8 +346,6 @@ android_library("chrome_java_integration_test_support") { deps = [ ":chrome_java_test_support_common", @@ -1318,7 +1318,7 @@ diff --git a/chrome/test/android/BUILD.gn b/chrome/test/android/BUILD.gn 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 -@@ -2588,14 +2588,6 @@ public class ExternalNavigationHandler { +@@ -2572,14 +2572,6 @@ public class ExternalNavigationHandler { * @return Whether the given intent is going to open an Instant App. */ private static boolean isIntentToInstantApp(Intent intent) { @@ -3111,7 +3111,7 @@ diff --git a/components/media_router/test/android/cast_emulator/BUILD.gn b/compo diff --git a/components/module_installer/android/BUILD.gn b/components/module_installer/android/BUILD.gn --- a/components/module_installer/android/BUILD.gn +++ b/components/module_installer/android/BUILD.gn -@@ -34,10 +34,8 @@ android_library("module_installer_java") { +@@ -28,10 +28,8 @@ android_library("module_installer_java") { ] deps = [ @@ -3122,7 +3122,7 @@ diff --git a/components/module_installer/android/BUILD.gn b/components/module_in "//third_party/androidx:androidx_annotation_annotation_java", "//third_party/jni_zero:jni_zero_java", ] -@@ -58,11 +56,9 @@ robolectric_binary("module_installer_junit_tests") { +@@ -49,11 +47,9 @@ robolectric_binary("module_installer_junit_tests") { ] deps = [ ":module_installer_java", @@ -3145,8 +3145,8 @@ diff --git a/components/signin/public/android/BUILD.gn b/components/signin/publi - "$google_play_services_package:google_play_services_base_java", "//base:base_cached_flags_java", "//base:base_java", - "//build/android:build_java", -@@ -190,7 +188,6 @@ robolectric_library("junit") { + "//base:service_loader_java", +@@ -191,7 +189,6 @@ robolectric_library("junit") { deps = [ ":java", ":signin_java_test_support", @@ -3321,8 +3321,8 @@ diff --git a/components/webauthn/android/java/src/org/chromium/components/webaut - this::onIsUserVerifyingPlatformAuthenticatorAvailableResponse); } - /** -@@ -263,14 +218,6 @@ public final class AuthenticatorImpl implements Authenticator, AuthenticationCon + @Override +@@ -268,14 +223,6 @@ public final class AuthenticatorImpl implements Authenticator, AuthenticationCon callback.onResponse(new ArrayList()); return; } @@ -3337,7 +3337,7 @@ diff --git a/components/webauthn/android/java/src/org/chromium/components/webaut } @Override -@@ -282,14 +229,6 @@ public final class AuthenticatorImpl implements Authenticator, AuthenticationCon +@@ -287,14 +234,6 @@ public final class AuthenticatorImpl implements Authenticator, AuthenticationCon callback.call(false); return; } @@ -3352,7 +3352,7 @@ diff --git a/components/webauthn/android/java/src/org/chromium/components/webaut } @Override -@@ -301,8 +240,6 @@ public final class AuthenticatorImpl implements Authenticator, AuthenticationCon +@@ -306,8 +245,6 @@ public final class AuthenticatorImpl implements Authenticator, AuthenticationCon if (!mIsOperationPending || mGetAssertionCallback == null) { return; } @@ -3361,7 +3361,7 @@ diff --git a/components/webauthn/android/java/src/org/chromium/components/webaut } /** Callbacks for receiving responses from the internal handlers. */ -@@ -347,7 +284,6 @@ public final class AuthenticatorImpl implements Authenticator, AuthenticationCon +@@ -352,7 +289,6 @@ public final class AuthenticatorImpl implements Authenticator, AuthenticationCon } else if (mGetAssertionCallback != null) { mGetAssertionCallback.call(status, null, null); } @@ -3369,7 +3369,7 @@ diff --git a/components/webauthn/android/java/src/org/chromium/components/webaut cleanupRequest(); } -@@ -355,13 +291,10 @@ public final class AuthenticatorImpl implements Authenticator, AuthenticationCon +@@ -360,13 +296,10 @@ public final class AuthenticatorImpl implements Authenticator, AuthenticationCon mIsOperationPending = false; mMakeCredentialCallback = null; mGetAssertionCallback = null; @@ -3519,7 +3519,7 @@ diff --git a/components/webauthn/android/java/src/org/chromium/components/webaut if (responseSerialized == null) { Log.e( TAG, -@@ -399,8 +395,7 @@ public class CredManHelper { +@@ -401,8 +397,7 @@ public class CredManHelper { data.getString( CRED_MAN_PREFIX + "BUNDLE_KEY_AUTHENTICATION_RESPONSE_JSON"); @@ -3529,7 +3529,7 @@ diff --git a/components/webauthn/android/java/src/org/chromium/components/webaut if (responseSerialized == null) { Log.e( TAG, -@@ -549,8 +544,7 @@ public class CredManHelper { +@@ -553,8 +548,7 @@ public class CredManHelper { boolean requestPasswords, boolean preferImmediatelyAvailable, boolean ignoreGpm) { @@ -3697,7 +3697,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/webid/ diff --git a/content/test/BUILD.gn b/content/test/BUILD.gn --- a/content/test/BUILD.gn +++ b/content/test/BUILD.gn -@@ -3582,10 +3582,6 @@ if (is_android) { +@@ -3632,10 +3632,6 @@ if (is_android) { testonly = true sources = content_java_sources_needing_jni deps = [ @@ -3776,7 +3776,7 @@ diff --git a/services/shape_detection/BUILD.gn b/services/shape_detection/BUILD. diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD.gn --- a/third_party/android_deps/BUILD.gn +++ b/third_party/android_deps/BUILD.gn -@@ -90,22 +90,13 @@ if (!limit_android_deps) { +@@ -89,22 +89,13 @@ if (!limit_android_deps) { android_library("chromium_play_services_availability_java") { sources = [ "util/org/chromium/gms/ChromiumPlayServicesAvailability.java" ] @@ -3799,40 +3799,12 @@ diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD. - } } - # TODO(crbug.com/1366370) Remove this once all depencencies are updated to -@@ -545,28 +536,6 @@ if (!limit_android_deps) { + # The section below is generated by running +@@ -315,253 +306,6 @@ if (!limit_android_deps) { + "//third_party/hamcrest:hamcrest_library_java", ] } - -- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. -- android_aar_prebuilt("com_android_support_support_core_ui_java") { -- aar_path = "cipd/libs/com_android_support_support_core_ui/support-core-ui-28.0.0.aar" -- info_path = "libs/com_android_support_support_core_ui/com_android_support_support_core_ui.info" -- enable_bytecode_checks = false -- deps = [ -- ":com_android_support_asynclayoutinflater_java", -- ":com_android_support_coordinatorlayout_java", -- ":com_android_support_cursoradapter_java", -- ":com_android_support_customview_java", -- ":com_android_support_drawerlayout_java", -- ":com_android_support_interpolator_java", -- ":com_android_support_slidingpanelayout_java", -- ":com_android_support_support_annotations_java", -- ":com_android_support_support_compat_java", -- ":com_android_support_support_core_utils_java", -- ":com_android_support_swiperefreshlayout_java", -- ":com_android_support_viewpager_java", -- ] -- resource_overlay = true -- } - - # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. - android_aar_prebuilt( - "com_google_android_apps_common_testing_accessibility_framework_accessibility_test_framework_java") { -@@ -588,252 +557,6 @@ if (!limit_android_deps) { - ] - } - - # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. - if (google_play_services_package == "//third_party/android_deps") { - android_aar_prebuilt("google_play_services_auth_java") { @@ -4082,7 +4054,7 @@ diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD. # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. if (!defined(material_design_target)) { android_aar_prebuilt("com_google_android_material_material_java") { -@@ -881,74 +604,6 @@ if (!limit_android_deps) { +@@ -609,24 +353,6 @@ if (!limit_android_deps) { } } @@ -4104,6 +4076,13 @@ diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD. - } - } - + # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. + if (!defined(dagger_java_target)) { + java_prebuilt("com_google_dagger_dagger_java") { +@@ -667,56 +393,6 @@ if (!limit_android_deps) { + ] + } + - # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. - if (google_play_services_package == "//third_party/android_deps") { - android_aar_prebuilt("google_firebase_firebase_iid_java") { @@ -4157,7 +4136,7 @@ diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD. # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. if (!defined(guava_android_target)) { java_prebuilt("com_google_guava_guava_android_java") { -@@ -1065,20 +720,6 @@ if (!limit_android_deps) { +@@ -842,20 +518,6 @@ if (!limit_android_deps) { requires_android = true } @@ -4178,33 +4157,12 @@ diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD. # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. java_prebuilt("io_grpc_grpc_context_java") { jar_path = "cipd/libs/io_grpc_grpc_context/grpc-context-1.49.0.jar" -@@ -1709,377 +1350,6 @@ if (!limit_android_deps) { - "androidx/*", +@@ -1124,356 +786,6 @@ if (!limit_android_deps) { ] + is_robolectric = true } - - # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. -- android_aar_prebuilt("com_android_support_viewpager_java") { -- aar_path = "cipd/libs/com_android_support_viewpager/viewpager-28.0.0.aar" -- info_path = -- "libs/com_android_support_viewpager/com_android_support_viewpager.info" -- enable_bytecode_checks = false -- -- # To remove visibility constraint, add this dependency to -- # //third_party/android_deps/build.gradle. -- visibility = [ -- ":*", -- "//third_party/androidx:*", -- ] -- deps = [ -- ":com_android_support_customview_java", -- ":com_android_support_support_annotations_java", -- ":com_android_support_support_compat_java", -- ] -- resource_overlay = true -- } -- -- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. - java_prebuilt("com_google_android_annotations_java") { - jar_path = - "cipd/libs/com_google_android_annotations/annotations-4.1.1.4.jar" @@ -4556,8 +4514,8 @@ diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD. # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. java_prebuilt("com_squareup_javawriter_java") { jar_path = "cipd/libs/com_squareup_javawriter/javawriter-2.1.1.jar" -@@ -2133,33 +1403,6 @@ if (!limit_android_deps) { - deps = [ "//third_party/kotlin_stdlib:kotlin_stdlib_java" ] +@@ -1510,33 +822,6 @@ if (!limit_android_deps) { + ] } - # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. @@ -4590,7 +4548,7 @@ diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD. # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. java_prebuilt("io_perfmark_perfmark_api_java") { jar_path = "cipd/libs/io_perfmark_perfmark_api/perfmark-api-0.25.0.jar" -@@ -2383,7 +1626,6 @@ if (!limit_android_deps) { +@@ -1775,7 +1060,6 @@ if (!limit_android_deps) { ] testonly = true deps = [ @@ -4598,7 +4556,7 @@ diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD. ":org_robolectric_pluginapi_java", ":org_robolectric_utils_java", "//third_party/android_deps:guava_android_java", -@@ -2405,7 +1647,6 @@ if (!limit_android_deps) { +@@ -1797,7 +1081,6 @@ if (!limit_android_deps) { ] testonly = true deps = [ @@ -4606,7 +4564,7 @@ diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD. ":org_robolectric_annotations_java", ":org_robolectric_pluginapi_java", ":org_robolectric_utils_java", -@@ -2475,7 +1716,6 @@ if (!limit_android_deps) { +@@ -1867,7 +1150,6 @@ if (!limit_android_deps) { ] testonly = true deps = [ diff --git a/build/cromite_patches/Remove-help-menu-item.patch b/build/cromite_patches/Remove-help-menu-item.patch index 60e0a05c3afaba1f090b27d281c9da799c431916..a824aaadf5a0839240e0c66debaf9ff4020bf6ac 100644 --- a/build/cromite_patches/Remove-help-menu-item.patch +++ b/build/cromite_patches/Remove-help-menu-item.patch @@ -29,7 +29,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/res/menu/main_menu.xml --- a/chrome/android/java/res/menu/main_menu.xml +++ b/chrome/android/java/res/menu/main_menu.xml -@@ -155,9 +155,6 @@ found in the LICENSE file. +@@ -149,9 +149,6 @@ found in the LICENSE file. @@ -66,7 +66,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcu 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 -@@ -2581,15 +2581,6 @@ public abstract class ChromeActivity +@@ -2510,15 +2510,6 @@ public abstract class ChromeActivity final Tab currentTab = getActivityTab(); @@ -85,7 +85,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/autofill/settings/AutofillPaymentMethodsFragment.java b/chrome/android/java/src/org/chromium/chrome/browser/autofill/settings/AutofillPaymentMethodsFragment.java --- a/chrome/android/java/src/org/chromium/chrome/browser/autofill/settings/AutofillPaymentMethodsFragment.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/autofill/settings/AutofillPaymentMethodsFragment.java -@@ -102,6 +102,7 @@ public class AutofillPaymentMethodsFragment extends ChromeBaseSettingsFragment +@@ -110,6 +110,7 @@ public class AutofillPaymentMethodsFragment extends ChromeBaseSettingsFragment MenuItem help = menu.add(Menu.NONE, R.id.menu_id_targeted_help, Menu.NONE, R.string.menu_help); help.setIcon(R.drawable.ic_help_and_feedback); @@ -96,7 +96,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/autofill/settin diff --git a/chrome/android/java/src/org/chromium/chrome/browser/autofill/settings/AutofillProfilesFragment.java b/chrome/android/java/src/org/chromium/chrome/browser/autofill/settings/AutofillProfilesFragment.java --- a/chrome/android/java/src/org/chromium/chrome/browser/autofill/settings/AutofillProfilesFragment.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/autofill/settings/AutofillProfilesFragment.java -@@ -113,6 +113,7 @@ public class AutofillProfilesFragment extends ChromeBaseSettingsFragment +@@ -121,6 +121,7 @@ public class AutofillProfilesFragment extends ChromeBaseSettingsFragment MenuItem help = menu.add(Menu.NONE, R.id.menu_id_targeted_help, Menu.NONE, R.string.menu_help); help.setIcon(R.drawable.ic_help_and_feedback); @@ -107,7 +107,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/autofill/settin diff --git a/chrome/android/java/src/org/chromium/chrome/browser/browsing_data/ClearBrowsingDataFragment.java b/chrome/android/java/src/org/chromium/chrome/browser/browsing_data/ClearBrowsingDataFragment.java --- a/chrome/android/java/src/org/chromium/chrome/browser/browsing_data/ClearBrowsingDataFragment.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/browsing_data/ClearBrowsingDataFragment.java -@@ -885,6 +885,7 @@ public abstract class ClearBrowsingDataFragment extends PreferenceFragmentCompat +@@ -896,6 +896,7 @@ public abstract class ClearBrowsingDataFragment extends PreferenceFragmentCompat TraceEventVectorDrawableCompat.create( getResources(), R.drawable.ic_help_and_feedback, getActivity().getTheme())); help.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM); @@ -118,7 +118,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/browsing_data/C diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/BaseCustomTabActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/BaseCustomTabActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/BaseCustomTabActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/BaseCustomTabActivity.java -@@ -757,7 +757,6 @@ public abstract class BaseCustomTabActivity extends ChromeActivity kSegmentationSurveyInternalsPage{ + &kSegmentationSurveyPage, "survey_internals_page", /*default_value=*/true}; +SET_CROMITE_FEATURE_DISABLED(kSegmentationPlatformFeature); +SET_CROMITE_FEATURE_DISABLED(kSegmentationPlatformFeedSegmentFeature); diff --git a/build/cromite_patches/Remove-voice-recognition-integration.patch b/build/cromite_patches/Remove-voice-recognition-integration.patch index 3ad66c13bdc51ae96a9cf20b57f170d9df17bba6..8347101afe5d372f6f67ae0871aba9c2a7a8ac20 100644 --- a/build/cromite_patches/Remove-voice-recognition-integration.patch +++ b/build/cromite_patches/Remove-voice-recognition-integration.patch @@ -84,7 +84,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPage. } @Override -@@ -843,12 +821,6 @@ public class NewTabPage +@@ -840,12 +818,6 @@ public class NewTabPage mOmniboxStub.addUrlFocusChangeListener(feedReliabilityLogger); } } @@ -97,7 +97,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPage. } @Override -@@ -859,11 +831,6 @@ public class NewTabPage +@@ -856,11 +828,6 @@ public class NewTabPage } } @@ -109,7 +109,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPage. /** Adds an observer to be notified on most visited tile clicks. */ public void addMostVisitedTileClickObserver(MostVisitedTileClickObserver observer) { mMostVisitedTileClickObservers.addObserver(observer); -@@ -977,9 +944,6 @@ public class NewTabPage +@@ -974,9 +941,6 @@ public class NewTabPage } mFeedSurfaceProvider.destroy(); mTab.getWindowAndroid().removeContextMenuCloseListener(mContextMenuManager); @@ -186,7 +186,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/Toolbar import org.chromium.chrome.browser.page_info.ChromePageInfo; import org.chromium.chrome.browser.partnercustomizations.PartnerBrowserCustomizations; import org.chromium.chrome.browser.preferences.ChromeSharedPreferences; -@@ -2448,10 +2447,6 @@ public class ToolbarManager +@@ -2443,10 +2442,6 @@ public class ToolbarManager return mLocationBar.getOmniboxStub(); } @@ -200,7 +200,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/Toolbar 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 -@@ -99,8 +99,6 @@ import org.chromium.chrome.browser.metrics.UmaSessionStats; +@@ -100,8 +100,6 @@ import org.chromium.chrome.browser.metrics.UmaSessionStats; import org.chromium.chrome.browser.omnibox.OmniboxFocusReason; import org.chromium.chrome.browser.omnibox.geo.GeolocationHeader; import org.chromium.chrome.browser.omnibox.suggestions.action.OmniboxActionDelegateImpl; @@ -209,7 +209,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordi import org.chromium.chrome.browser.paint_preview.DemoPaintPreview; import org.chromium.chrome.browser.password_manager.ManagePasswordsReferrer; import org.chromium.chrome.browser.password_manager.PasswordManagerLauncher; -@@ -142,7 +140,6 @@ import org.chromium.chrome.browser.theme.TopUiThemeColorProvider; +@@ -145,7 +143,6 @@ import org.chromium.chrome.browser.theme.TopUiThemeColorProvider; import org.chromium.chrome.browser.toolbar.ButtonDataProvider; import org.chromium.chrome.browser.toolbar.ToolbarIntentMetadata; import org.chromium.chrome.browser.toolbar.ToolbarManager; @@ -217,7 +217,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordi import org.chromium.chrome.browser.toolbar.adaptive.AdaptiveButtonActionMenuCoordinator; import org.chromium.chrome.browser.toolbar.adaptive.AdaptiveToolbarButtonController; import org.chromium.chrome.browser.toolbar.adaptive.AdaptiveToolbarButtonVariant; -@@ -307,7 +304,6 @@ public class RootUiCoordinator +@@ -310,7 +307,6 @@ public class RootUiCoordinator private LayoutManagerImpl mLayoutManager; protected OneshotSupplier mIntentMetadataOneshotSupplier; protected OneshotSupplierImpl mPromoShownOneshotSupplier = new OneshotSupplierImpl<>(); @@ -225,7 +225,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordi private MediaCaptureOverlayController mCaptureController; private @Nullable ScrollCaptureManager mScrollCaptureManager; protected final ActivityLifecycleDispatcher mActivityLifecycleDispatcher; -@@ -663,9 +659,6 @@ public class RootUiCoordinator +@@ -647,9 +643,6 @@ public class RootUiCoordinator } if (mToolbarManager != null) { @@ -235,7 +235,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordi mToolbarManager.destroy(); mToolbarManager = null; } -@@ -1452,39 +1445,12 @@ public class RootUiCoordinator +@@ -1456,39 +1449,12 @@ public class RootUiCoordinator () -> mToolbarManager.setUrlBarFocus( false, OmniboxFocusReason.UNFOCUS)); @@ -275,7 +275,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordi OptionalNewTabButtonController newTabButtonController = new OptionalNewTabButtonController( mActivity, -@@ -1513,8 +1479,6 @@ public class RootUiCoordinator +@@ -1536,8 +1502,6 @@ public class RootUiCoordinator AdaptiveToolbarButtonVariant.NEW_TAB, newTabButtonController); adaptiveToolbarButtonController.addButtonVariant( AdaptiveToolbarButtonVariant.SHARE, shareButtonController); @@ -284,7 +284,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordi adaptiveToolbarButtonController.addButtonVariant( AdaptiveToolbarButtonVariant.ADD_TO_BOOKMARKS, addToBookmarksToolbarButtonController); -@@ -1633,13 +1597,6 @@ public class RootUiCoordinator +@@ -1657,13 +1621,6 @@ public class RootUiCoordinator if (!mSupportsAppMenuSupplier.getAsBoolean()) { mToolbarManager.getToolbar().disableMenuButton(); } @@ -301,7 +301,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordi diff --git a/chrome/browser/ui/android/omnibox/BUILD.gn b/chrome/browser/ui/android/omnibox/BUILD.gn --- a/chrome/browser/ui/android/omnibox/BUILD.gn +++ b/chrome/browser/ui/android/omnibox/BUILD.gn -@@ -147,7 +147,6 @@ android_library("java") { +@@ -143,7 +143,6 @@ android_library("java") { "java/src/org/chromium/chrome/browser/omnibox/suggestions/tail/TailSuggestionView.java", "java/src/org/chromium/chrome/browser/omnibox/suggestions/tail/TailSuggestionViewBinder.java", "java/src/org/chromium/chrome/browser/omnibox/suggestions/tail/TailSuggestionViewProperties.java", @@ -439,7 +439,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow mLocationBarDataProvider.removeObserver(this); mDeferredNativeRunnables.clear(); mUrlFocusChangeListeners.clear(); -@@ -413,11 +404,6 @@ class LocationBarMediator +@@ -415,11 +406,6 @@ class LocationBarMediator mLocationBarLayout.setUnfocusedWidth(unfocusedWidth); } @@ -451,7 +451,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow /* package */ void setLensControllerForTesting(LensController lensController) { mLensController = lensController; } -@@ -681,10 +667,6 @@ class LocationBarMediator +@@ -683,10 +669,6 @@ class LocationBarMediator // Hide keyboard before launch voice search to avoid keyboard action announcement in // TalkBack to be picked up by voice search. mUrlCoordinator.setKeyboardVisibility(false, false); @@ -462,7 +462,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow } /** package */ -@@ -1158,10 +1140,7 @@ class LocationBarMediator +@@ -1161,10 +1143,7 @@ class LocationBarMediator private boolean shouldShowMicButton() { if (shouldShowDeleteButton()) return false; @@ -474,7 +474,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow return false; } boolean isToolbarMicEnabled = mIsToolbarMicEnabledSupplier.getAsBoolean(); -@@ -1178,6 +1157,7 @@ class LocationBarMediator +@@ -1181,6 +1160,7 @@ class LocationBarMediator } private boolean shouldShowLensButton() { @@ -482,7 +482,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow if (shouldShowDeleteButton()) return false; // When this method is called on UI inflation, return false as the native is not ready. -@@ -1396,11 +1376,6 @@ class LocationBarMediator +@@ -1399,11 +1379,6 @@ class LocationBarMediator } } @@ -494,7 +494,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow @Override public void addUrlFocusChangeListener(UrlFocusChangeListener listener) { mUrlFocusChangeListeners.addObserver(listener); -@@ -1416,31 +1391,13 @@ class LocationBarMediator +@@ -1419,31 +1394,13 @@ class LocationBarMediator return mUrlHasFocus; } @@ -528,7 +528,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow public void setSearchQuery(String query) { if (TextUtils.isEmpty(query)) return; -@@ -1463,20 +1420,6 @@ class LocationBarMediator +@@ -1466,20 +1423,6 @@ class LocationBarMediator mUrlCoordinator.setKeyboardVisibility(true, false); } @@ -586,7 +586,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow import org.chromium.chrome.browser.profiles.Profile; import org.chromium.chrome.browser.tab.Tab; import org.chromium.components.omnibox.AutocompleteMatch; -@@ -335,25 +334,6 @@ public class AutocompleteController { +@@ -343,25 +342,6 @@ public class AutocompleteController { mNativeController, match.getNativeObjectRef(), matchIndex, webContents); } @@ -612,7 +612,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow /** * Updates searchbox stats parameters on the selected match that we will navigate to and * returns the updated URL. -@@ -501,11 +481,6 @@ public class AutocompleteController { +@@ -510,11 +490,6 @@ public class AutocompleteController { Tab getMatchingTabForSuggestion( long nativeAutocompleteControllerAndroid, long nativeAutocompleteMatch); @@ -660,7 +660,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow import org.chromium.chrome.browser.profiles.Profile; import org.chromium.chrome.browser.share.ShareDelegate; import org.chromium.chrome.browser.tab.Tab; -@@ -484,13 +483,6 @@ class AutocompleteMediator +@@ -486,13 +485,6 @@ class AutocompleteMediator mShouldPreventOmniboxAutocomplete = prevent; } diff --git a/build/cromite_patches/Remove-window-name-on-cross-origin-navigation.patch b/build/cromite_patches/Remove-window-name-on-cross-origin-navigation.patch index 0e7f1d12af4574170356dd50926f9c56b28a3ebd..668fed9737d02c4b3d9fbaf155d59fe59660c2e0 100644 --- a/build/cromite_patches/Remove-window-name-on-cross-origin-navigation.patch +++ b/build/cromite_patches/Remove-window-name-on-cross-origin-navigation.patch @@ -21,7 +21,7 @@ new file mode 100644 diff --git a/third_party/blink/renderer/core/loader/document_loader.cc b/third_party/blink/renderer/core/loader/document_loader.cc --- a/third_party/blink/renderer/core/loader/document_loader.cc +++ b/third_party/blink/renderer/core/loader/document_loader.cc -@@ -2858,7 +2858,7 @@ void DocumentLoader::CommitNavigation() { +@@ -2867,7 +2867,7 @@ void DocumentLoader::CommitNavigation() { // that the name would be nulled and if the name is accessed after we will // fire a UseCounter. If we decide to move forward with this change, we'd // actually clean the name here. @@ -30,7 +30,7 @@ diff --git a/third_party/blink/renderer/core/loader/document_loader.cc b/third_p frame_->Tree().ExperimentalSetNulledName(); } -@@ -2869,6 +2869,7 @@ void DocumentLoader::CommitNavigation() { +@@ -2878,6 +2878,7 @@ void DocumentLoader::CommitNavigation() { // TODO(shuuran): CrossSiteCrossBrowsingContextGroupSetNulledName will just // record the fact that the name would be nulled and if the name is accessed // after we will fire a UseCounter. diff --git a/build/cromite_patches/Restore-LastTabStandingTracker.patch b/build/cromite_patches/Restore-LastTabStandingTracker.patch index 93bc1240761be92d9d3078451efe8d80bba504df..f35b209d2c35b2ca057c625e8d98f30edb64073d 100644 --- a/build/cromite_patches/Restore-LastTabStandingTracker.patch +++ b/build/cromite_patches/Restore-LastTabStandingTracker.patch @@ -27,7 +27,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -1785,6 +1785,16 @@ static_library("browser") { +@@ -1749,6 +1749,16 @@ static_library("browser") { "webid/identity_provider_permission_request.h", ] @@ -381,7 +381,7 @@ new file mode 100644 diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc --- a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc +++ b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc -@@ -120,6 +120,7 @@ +@@ -122,6 +122,7 @@ #include "chrome/browser/password_manager/password_reuse_manager_factory.h" #include "chrome/browser/password_manager/profile_password_store_factory.h" #include "chrome/browser/permissions/adaptive_quiet_notification_permission_ui_enabler.h" @@ -389,7 +389,7 @@ diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc #include "chrome/browser/permissions/notifications_engagement_service_factory.h" #include "chrome/browser/permissions/one_time_permissions_tracker_factory.h" #include "chrome/browser/permissions/origin_keyed_permission_action_service_factory.h" -@@ -1025,6 +1026,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -1048,6 +1049,7 @@ void ChromeBrowserMainExtraPartsProfiles:: #if BUILDFLAG(BUILD_WITH_TFLITE_LIB) OnDeviceTailModelServiceFactory::GetInstance(); #endif @@ -400,7 +400,7 @@ diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc --- a/chrome/browser/ui/tab_helpers.cc +++ b/chrome/browser/ui/tab_helpers.cc -@@ -55,6 +55,7 @@ +@@ -54,6 +54,7 @@ #include "chrome/browser/page_info/page_info_features.h" #include "chrome/browser/page_load_metrics/page_load_metrics_initialize.h" #include "chrome/browser/password_manager/chrome_password_manager_client.h" @@ -408,7 +408,7 @@ diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc #include "chrome/browser/permissions/one_time_permissions_tracker_helper.h" #include "chrome/browser/predictors/loading_predictor_factory.h" #include "chrome/browser/predictors/loading_predictor_tab_helper.h" -@@ -425,6 +426,7 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) { +@@ -430,6 +431,7 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) { HistoryEmbeddingsTabHelper::CreateForWebContents(web_contents); HttpsOnlyModeTabHelper::CreateForWebContents(web_contents); webapps::InstallableManager::CreateForWebContents(web_contents); diff --git a/build/cromite_patches/Restore-Search-Ready-Omnibox-flag.patch b/build/cromite_patches/Restore-Search-Ready-Omnibox-flag.patch index ca482779d7760e07614f093c6ad4566dc2b64afe..57b9fce1e77d79c3b8843f082b5468d4545e039d 100644 --- a/build/cromite_patches/Restore-Search-Ready-Omnibox-flag.patch +++ b/build/cromite_patches/Restore-Search-Ready-Omnibox-flag.patch @@ -23,7 +23,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 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 -@@ -287,6 +287,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { +@@ -290,6 +290,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { &kReaderModeInCCT, &kRecordSuppressionMetrics, &kReengagementNotification, @@ -34,7 +34,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 -@@ -359,6 +359,7 @@ public abstract class ChromeFeatureList { +@@ -365,6 +365,7 @@ public abstract class ChromeFeatureList { public static final String MAYLAUNCHURL_USES_SEPARATE_STORAGE_PARTITION = "MayLaunchUrlUsesSeparateStoragePartition"; public static final String MESSAGES_FOR_ANDROID_ADS_BLOCKED = "MessagesForAndroidAdsBlocked"; @@ -53,7 +53,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow import org.chromium.base.supplier.Supplier; import org.chromium.chrome.browser.omnibox.UrlBarEditingTextStateProvider; import org.chromium.chrome.browser.omnibox.styles.OmniboxImageSupplier; -@@ -49,6 +50,7 @@ class DropdownItemViewInfoListBuilder { +@@ -48,6 +49,7 @@ class DropdownItemViewInfoListBuilder { private @Nullable Supplier mShareDelegateSupplier; private @NonNull Optional mImageSupplier; private @NonNull BookmarkState mBookmarkState; @@ -61,7 +61,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow DropdownItemViewInfoListBuilder( @NonNull Supplier tabSupplier, @NonNull BookmarkState bookmarkState) { -@@ -81,9 +83,11 @@ class DropdownItemViewInfoListBuilder { +@@ -80,9 +82,11 @@ class DropdownItemViewInfoListBuilder { mGroupSeparatorProcessor = new GroupSeparatorProcessor(context); mHeaderProcessor = new HeaderProcessor(context); @@ -75,7 +75,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow registerSuggestionProcessor( new AnswerSuggestionProcessor(context, host, textProvider, mImageSupplier)); registerSuggestionProcessor( -@@ -170,6 +174,9 @@ class DropdownItemViewInfoListBuilder { +@@ -168,6 +172,9 @@ class DropdownItemViewInfoListBuilder { mHeaderProcessor.onNativeInitialized(); mImageSupplier.ifPresent(s -> s.onNativeInitialized()); diff --git a/build/cromite_patches/Restore-Simplified-NTP-launch.patch b/build/cromite_patches/Restore-Simplified-NTP-launch.patch index 740bc7d0d90670e5cea4a187920eb7248047cda9..f29b5489a9ac5cbe3a2435118227283e0e809706 100644 --- a/build/cromite_patches/Restore-Simplified-NTP-launch.patch +++ b/build/cromite_patches/Restore-Simplified-NTP-launch.patch @@ -25,12 +25,12 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../tile/MostVisitedTilesMediator.java | 9 +- .../engagement/important_sites_util.cc | 2 +- .../flags/android/chrome_feature_list.cc | 1 + - .../browser/flags/ChromeFeatureList.java | 5 +- + .../browser/flags/ChromeFeatureList.java | 3 +- .../history/core/browser/top_sites_impl.h | 2 +- .../Restore-Simplified-NTP-launch.inc | 12 ++ - .../Restore-Simplified-NTP-launch.inc | 6 + + .../Restore-Simplified-NTP-launch.inc | 5 + .../Restore-Simplified-NTP-launch.inc | 1 + - 24 files changed, 396 insertions(+), 30 deletions(-) + 24 files changed, 394 insertions(+), 29 deletions(-) create mode 100644 chrome/android/java/res/layout/ntp_shortcuts.xml create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/feedback/SimplifiedNtpFeedbackSource.java create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/suggestions/tile/MostVisitedTilesGridLayout.java @@ -41,7 +41,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_java_resources.gni --- a/chrome/android/chrome_java_resources.gni +++ b/chrome/android/chrome_java_resources.gni -@@ -543,6 +543,7 @@ chrome_java_resources = [ +@@ -544,6 +544,7 @@ chrome_java_resources = [ "java/res/layout/new_tab_page_layout.xml", "java/res/layout/new_tab_page_tile_grid_placeholder.xml", "java/res/layout/open_full_chrome_history_header.xml", @@ -60,7 +60,7 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java "java/src/org/chromium/chrome/browser/findinpage/FindToolbar.java", "java/src/org/chromium/chrome/browser/findinpage/FindToolbarManager.java", "java/src/org/chromium/chrome/browser/findinpage/FindToolbarObserver.java", -@@ -1042,6 +1043,7 @@ chrome_java_sources = [ +@@ -1045,6 +1046,7 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/suggestions/mostvisited/MostVisitedSitesMetadataUtils.java", "java/src/org/chromium/chrome/browser/suggestions/tile/MostVisitedTilesCoordinator.java", "java/src/org/chromium/chrome/browser/suggestions/tile/MostVisitedTilesLayout.java", @@ -194,7 +194,7 @@ diff --git a/chrome/android/java/res/values/attrs.xml b/chrome/android/java/res/ diff --git a/chrome/android/java/res/values/dimens.xml b/chrome/android/java/res/values/dimens.xml --- a/chrome/android/java/res/values/dimens.xml +++ b/chrome/android/java/res/values/dimens.xml -@@ -127,6 +127,8 @@ found in the LICENSE file. +@@ -124,6 +124,8 @@ found in the LICENSE file. 62dp @@ -692,7 +692,7 @@ diff --git a/chrome/browser/engagement/important_sites_util.cc b/chrome/browser/ 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 -@@ -254,6 +254,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { +@@ -257,6 +257,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { &kGtsCloseTabAnimation, &kIncognitoReauthenticationForAndroid, &kIncognitoScreenshot, @@ -703,7 +703,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 -@@ -360,6 +360,7 @@ public abstract class ChromeFeatureList { +@@ -366,6 +366,7 @@ public abstract class ChromeFeatureList { public static final String MAYLAUNCHURL_USES_SEPARATE_STORAGE_PARTITION = "MayLaunchUrlUsesSeparateStoragePartition"; public static final String MESSAGES_FOR_ANDROID_ADS_BLOCKED = "MessagesForAndroidAdsBlocked"; @@ -711,24 +711,15 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f public static final String SEARCH_READY_OMNIBOX = "SearchReadyOmnibox"; public static final String MOST_VISITED_TILES_RESELECT = "MostVisitedTilesReselect"; public static final String MUlTI_INSTANCE_APPLICATION_STATUS_CLEANUP = -@@ -640,7 +641,7 @@ public abstract class ChromeFeatureList { +@@ -658,7 +659,7 @@ public abstract class ChromeFeatureList { public static final CachedFlag sLogoPolish = newCachedFlag(LOGO_POLISH, true); public static final CachedFlag sLogoPolishAnimationKillSwitch = newCachedFlag(LOGO_POLISH_ANIMATION_KILL_SWITCH, true); - public static final CachedFlag sMagicStackAndroid = newCachedFlag(MAGIC_STACK_ANDROID, true); + public static final CachedFlag sMagicStackAndroid = newCachedFlag(MAGIC_STACK_ANDROID, false); + public static final CachedFlag sMayLaunchurlUsesSeparateStoragePartition = newCachedFlag(MAYLAUNCHURL_USES_SEPARATE_STORAGE_PARTITION, false); public static final CachedFlag sMostVisitedTilesReselect = newCachedFlag(MOST_VISITED_TILES_RESELECT, false); - public static final CachedFlag sMultiInstanceApplicationStatusCleanup = -@@ -675,7 +676,7 @@ public abstract class ChromeFeatureList { - newCachedFlag(SMALLER_TAB_STRIP_TITLE_LIMIT, true); - public static final CachedFlag sStartSurfaceReturnTime = - newCachedFlag(START_SURFACE_RETURN_TIME, true); -- public static final CachedFlag sSurfacePolish = newCachedFlag(SURFACE_POLISH, true); -+ public static final CachedFlag sSurfacePolish = newCachedFlag(SURFACE_POLISH, false); - public static final CachedFlag sTabDragDropAsWindowAndroid = - newCachedFlag(TAB_DRAG_DROP_ANDROID, false); - public static final CachedFlag sTabGroupCreationDialogAndroid = diff --git a/components/history/core/browser/top_sites_impl.h b/components/history/core/browser/top_sites_impl.h --- a/components/history/core/browser/top_sites_impl.h +++ b/components/history/core/browser/top_sites_impl.h @@ -762,12 +753,11 @@ diff --git a/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/R new file mode 100644 --- /dev/null +++ b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Restore-Simplified-NTP-launch.inc -@@ -0,0 +1,6 @@ +@@ -0,0 +1,5 @@ +CROMITE_FEATURE(kSimplifiedNTP, + "SimplifiedNTP", + base::FEATURE_ENABLED_BY_DEFAULT); + -+SET_CROMITE_FEATURE_DISABLED(kSurfacePolish); +SET_CROMITE_FEATURE_DISABLED(kMagicStackAndroid); diff --git a/cromite_flags/chrome/browser/flags/android/chrome_feature_list_h/Restore-Simplified-NTP-launch.inc b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_h/Restore-Simplified-NTP-launch.inc new file mode 100644 diff --git a/build/cromite_patches/Restore-adaptive-button-in-top-toolbar-customization.patch b/build/cromite_patches/Restore-adaptive-button-in-top-toolbar-customization.patch index df63bcfefe0ea2686823406956e918cbfd856e0d..d7ff49640787fff940797f259091640296a1090d 100644 --- a/build/cromite_patches/Restore-adaptive-button-in-top-toolbar-customization.patch +++ b/build/cromite_patches/Restore-adaptive-button-in-top-toolbar-customization.patch @@ -17,14 +17,14 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../AdaptiveToolbarStatePredictor.java | 9 ++- .../AdaptiveToolbarStatePredictorTest.java | 15 +++++ ...oButtonGroupAdaptiveToolbarPreference.java | 1 + - ...ve-button-in-top-toolbar-customization.inc | 3 + - 11 files changed, 109 insertions(+), 6 deletions(-) + ...ve-button-in-top-toolbar-customization.inc | 1 + + 11 files changed, 107 insertions(+), 6 deletions(-) create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Restore-adaptive-button-in-top-toolbar-customization.inc diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java -@@ -55,6 +55,7 @@ import org.chromium.chrome.browser.sync.settings.SyncPromoPreference; +@@ -57,6 +57,7 @@ import org.chromium.chrome.browser.sync.settings.SyncPromoPreference; import org.chromium.chrome.browser.sync.settings.SyncSettingsUtils; import org.chromium.chrome.browser.tab_group_sync.TabGroupSyncFeatures; import org.chromium.chrome.browser.tasks.tab_management.TabUiFeatureUtilities; @@ -32,7 +32,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe import org.chromium.chrome.browser.toolbar.adaptive.AdaptiveToolbarStatePredictor; import org.chromium.chrome.browser.tracing.settings.DeveloperSettings; import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager; -@@ -271,7 +272,7 @@ public class MainSettings extends ChromeBaseSettingsFragment +@@ -284,7 +285,7 @@ public class MainSettings extends ChromeBaseSettingsFragment uiState -> { // We don't show the toolbar shortcut settings page if disabled from // finch. @@ -55,7 +55,7 @@ diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.js + "expiry_milestone": -1 }, { - "name": "adaptive-button-in-top-toolbar-translate", + "name": "adaptive-button-in-top-toolbar-page-summary", 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 @@ -67,8 +67,8 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse + "AdaptiveButtonInTopToolbar", + base::FEATURE_ENABLED_BY_DEFAULT); + - BASE_FEATURE(kAdaptiveButtonInTopToolbarTranslate, - "AdaptiveButtonInTopToolbarTranslate", + BASE_FEATURE(kAdaptiveButtonInTopToolbarCustomizationV2, + "AdaptiveButtonInTopToolbarCustomizationV2", base::FEATURE_ENABLED_BY_DEFAULT); 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 @@ -78,9 +78,9 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f "AccountReauthenticationRecentTimeWindow"; public static final String ALLOW_USER_CERTIFICATES = "AllowUserCertificates"; + public static final String ADAPTIVE_BUTTON_IN_TOP_TOOLBAR = "AdaptiveButtonInTopToolbar"; - public static final String ADAPTIVE_BUTTON_IN_TOP_TOOLBAR_TRANSLATE = - "AdaptiveButtonInTopToolbarTranslate"; - public static final String ADAPTIVE_BUTTON_IN_TOP_TOOLBAR_ADD_TO_BOOKMARKS = + public static final String ADAPTIVE_BUTTON_IN_TOP_TOOLBAR_PAGE_SUMMARY = + "AdaptiveButtonInTopToolbarPageSummary"; + public static final String ADAPTIVE_BUTTON_IN_TOP_TOOLBAR_CUSTOMIZATION_V2 = diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/adaptive/AdaptiveToolbarButtonController.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/adaptive/AdaptiveToolbarButtonController.java --- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/adaptive/AdaptiveToolbarButtonController.java +++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/adaptive/AdaptiveToolbarButtonController.java @@ -123,7 +123,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow /** Finch default group for new tab variation. */ static final String NEW_TAB = "new-tab"; -@@ -48,6 +58,7 @@ public class AdaptiveToolbarFeatures { +@@ -51,6 +61,7 @@ public class AdaptiveToolbarFeatures { @AdaptiveToolbarButtonVariant private static Integer sButtonVariant; /** For testing only. */ @@ -131,7 +131,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow private static String sDefaultSegmentForTesting; private static HashMap sActionChipOverridesForTesting; -@@ -79,6 +90,21 @@ public class AdaptiveToolbarFeatures { +@@ -83,6 +94,21 @@ public class AdaptiveToolbarFeatures { return false; } @@ -153,7 +153,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow /** * Returns whether the adaptive toolbar is enabled with segmentation and customization. * -@@ -204,6 +230,42 @@ public class AdaptiveToolbarFeatures { +@@ -214,6 +240,42 @@ public class AdaptiveToolbarFeatures { return segmentationResults.get(0); } @@ -196,7 +196,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow /** * Returns the default variant to be shown in segmentation experiment when the backend results * are unavailable or not configured. -@@ -211,6 +273,7 @@ public class AdaptiveToolbarFeatures { +@@ -221,6 +283,7 @@ public class AdaptiveToolbarFeatures { * @param context @{@link Context} to determine form-factor. */ static @AdaptiveToolbarButtonVariant int getSegmentationDefault(Context context) { @@ -277,8 +277,6 @@ diff --git a/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/R new file mode 100644 --- /dev/null +++ b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Restore-adaptive-button-in-top-toolbar-customization.inc -@@ -0,0 +1,3 @@ +@@ -0,0 +1 @@ +SET_CROMITE_FEATURE_ENABLED(kAdaptiveButtonInTopToolbarCustomizationV2); -+ -+SET_CROMITE_FEATURE_DISABLED(kAdaptiveButtonInTopToolbarTranslate); -- diff --git a/build/cromite_patches/Restore-chrome-password-store.patch b/build/cromite_patches/Restore-chrome-password-store.patch index 5f1818f1a142e2ef37f624b1d4c23e20d0b8aefe..8c431276f2637a99e4fc9d3f721cb20108c1c87b 100644 --- a/build/cromite_patches/Restore-chrome-password-store.patch +++ b/build/cromite_patches/Restore-chrome-password-store.patch @@ -32,7 +32,7 @@ diff --git a/chrome/browser/resources/password_manager/user_utils_mixin.ts b/chr 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 -@@ -714,7 +714,7 @@ For more settings that use data to improve your Chrome experience, go to diff --git a/build/cromite_patches/Restore-offline-indicator-v2-flag.patch b/build/cromite_patches/Restore-offline-indicator-v2-flag.patch index 9a41d0424a8aa9f247f281fa59456197b32c8bb6..f67a8c8b02c0235ccd95ff0851d472d07c2f24d2 100644 --- a/build/cromite_patches/Restore-offline-indicator-v2-flag.patch +++ b/build/cromite_patches/Restore-offline-indicator-v2-flag.patch @@ -92,7 +92,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/in 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 -@@ -1062,7 +1062,8 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { +@@ -1075,7 +1075,8 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { private void initStatusIndicatorCoordinator(LayoutManagerImpl layoutManager) { // TODO(crbug.com/40112282): Disable on tablets for now as we need to do one or two extra // things for tablets. @@ -102,7 +102,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab return; } -@@ -1096,6 +1097,11 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { +@@ -1109,6 +1110,11 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { hubManager.setStatusIndicatorHeight(mStatusIndicatorHeight); }); @@ -117,7 +117,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab 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 -@@ -269,6 +269,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { +@@ -272,6 +272,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { &kNewTabPageAndroidTriggerForPrerender2, &kNotificationPermissionVariant, &kNotificationPermissionBottomSheet, @@ -128,7 +128,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 -@@ -376,6 +376,7 @@ public abstract class ChromeFeatureList { +@@ -382,6 +382,7 @@ public abstract class ChromeFeatureList { public static final String NOTIFICATION_PERMISSION_VARIANT = "NotificationPermissionVariant"; public static final String NOTIFICATION_PERMISSION_BOTTOM_SHEET = "NotificationPermissionBottomSheet"; diff --git a/build/cromite_patches/Revert-Delete-block-external-form-redirects.patch b/build/cromite_patches/Revert-Delete-block-external-form-redirects.patch deleted file mode 100644 index 945c22edb96fcf447c89f6630a711f89686806ad..0000000000000000000000000000000000000000 --- a/build/cromite_patches/Revert-Delete-block-external-form-redirects.patch +++ /dev/null @@ -1,128 +0,0 @@ -From: csagan5 <32685696+csagan5@users.noreply.github.com> -Date: Thu, 16 Jun 2022 23:23:43 +0200 -Subject: Revert "Delete block-external-form-redirects" - -This reverts commit b710cefb53b558a8bcd884f6baf0229ba4225721 and -enables IntentBlockExternalFormRedirectsNoGesture. - -License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html ---- - .../android/external_intents_features.cc | 7 ++++++- - .../android/external_intents_features.h | 1 + - .../ExternalIntentsFeatures.java | 6 ++++++ - .../ExternalNavigationHandler.java | 21 +++++++++++++++++++ - ...t-Delete-block-external-form-redirects.inc | 15 +++++++++++++ - 5 files changed, 49 insertions(+), 1 deletion(-) - create mode 100644 cromite_flags/chrome/browser/about_flags_cc/Revert-Delete-block-external-form-redirects.inc - -diff --git a/components/external_intents/android/external_intents_features.cc b/components/external_intents/android/external_intents_features.cc ---- a/components/external_intents/android/external_intents_features.cc -+++ b/components/external_intents/android/external_intents_features.cc -@@ -27,7 +27,6 @@ namespace { - const base::Feature* kFeaturesExposedToJava[] = { - &kExternalNavigationDebugLogs, &kBlockFrameRenavigations, - &kBlockIntentsToSelf, &kTrustedClientGestureBypass}; -- - } // namespace - - // Alphabetical: -@@ -48,7 +47,13 @@ BASE_FEATURE(kTrustedClientGestureBypass, - "TrustedClientGestureBypass", - base::FEATURE_ENABLED_BY_DEFAULT); - -+CROMITE_FEATURE(kIntentBlockExternalFormRedirectsNoGesture, -+ "IntentBlockExternalFormRedirectsNoGesture", -+ base::FEATURE_ENABLED_BY_DEFAULT); -+ - static jlong JNI_ExternalIntentsFeatures_GetFeature(JNIEnv* env, jint ordinal) { -+ if (ordinal == -1) -+ return reinterpret_cast(&kIntentBlockExternalFormRedirectsNoGesture); - return reinterpret_cast(kFeaturesExposedToJava[ordinal]); - } - -diff --git a/components/external_intents/android/external_intents_features.h b/components/external_intents/android/external_intents_features.h ---- a/components/external_intents/android/external_intents_features.h -+++ b/components/external_intents/android/external_intents_features.h -@@ -9,6 +9,7 @@ - - namespace external_intents { - -+BASE_DECLARE_FEATURE(kIntentBlockExternalFormRedirectsNoGesture); - BASE_DECLARE_FEATURE(kExternalNavigationDebugLogs); - BASE_DECLARE_FEATURE(kBlockFrameRenavigations); - BASE_DECLARE_FEATURE(kBlockIntentsToSelf); -diff --git a/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalIntentsFeatures.java b/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalIntentsFeatures.java ---- a/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalIntentsFeatures.java -+++ b/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalIntentsFeatures.java -@@ -18,6 +18,12 @@ import org.chromium.base.Features; - */ - @JNINamespace("external_intents") - public class ExternalIntentsFeatures extends Features { -+ public static final String INTENT_BLOCK_EXTERNAL_FORM_REDIRECT_NO_GESTURE_NAME = -+ "IntentBlockExternalFormRedirectsNoGesture"; -+ -+ public static final ExternalIntentsFeatures INTENT_BLOCK_EXTERNAL_FORM_REDIRECT_NO_GESTURE = -+ new ExternalIntentsFeatures(-1, INTENT_BLOCK_EXTERNAL_FORM_REDIRECT_NO_GESTURE_NAME); -+ - public static final String EXTERNAL_NAVIGATION_DEBUG_LOGS_NAME = "ExternalNavigationDebugLogs"; - public static final String BLOCK_FRAME_RENAVIGATIONS_NAME = "BlockFrameRenavigations3"; - public static final String BLOCK_INTENTS_TO_SELF_NAME = "BlockIntentsToSelf"; -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 -@@ -1560,6 +1560,12 @@ public class ExternalNavigationHandler { - || ignoreBackForwardNav(params); - } - -+ /** Wrapper of check against the feature to support overriding for testing. */ -+ @VisibleForTesting -+ boolean blockExternalFormRedirectsWithoutGesture() { -+ return ExternalIntentsFeatures.INTENT_BLOCK_EXTERNAL_FORM_REDIRECT_NO_GESTURE.isEnabled(); -+ } -+ - private OverrideUrlLoadingResult shouldOverrideUrlLoadingInternal( - ExternalNavigationParams params, - Intent targetIntent, -@@ -1623,6 +1629,21 @@ public class ExternalNavigationHandler { - return OverrideUrlLoadingResult.forNoOverride(); - } - -+ // http://crbug.com/839751: Require user gestures for form submits to external -+ // protocols. -+ // TODO(tedchoc): Turn this on by default once we verify this change does -+ // not break the world. -+ int pageTransitionCore = params.getPageTransition() & PageTransition.CORE_MASK; -+ boolean isFormSubmit = pageTransitionCore == PageTransition.FORM_SUBMIT; -+ boolean isRedirectFromFormSubmit = isFormSubmit && params.isRedirect(); -+ if (isRedirectFromFormSubmit && !incomingIntentRedirect && !params.hasUserGesture() -+ && blockExternalFormRedirectsWithoutGesture()) { -+ if (debug()) { -+ Log.i(TAG, "Incoming form intent attempting to redirect without user gesture"); -+ } -+ return OverrideUrlLoadingResult.forNoOverride(); -+ } -+ - if (hasInternalScheme(params.getUrl(), targetIntent) - || hasContentScheme(params.getUrl(), targetIntent) - || hasFileSchemeInIntentURI(params.getUrl(), targetIntent)) { -diff --git a/cromite_flags/chrome/browser/about_flags_cc/Revert-Delete-block-external-form-redirects.inc b/cromite_flags/chrome/browser/about_flags_cc/Revert-Delete-block-external-form-redirects.inc -new file mode 100644 ---- /dev/null -+++ b/cromite_flags/chrome/browser/about_flags_cc/Revert-Delete-block-external-form-redirects.inc -@@ -0,0 +1,15 @@ -+#if BUILDFLAG(IS_ANDROID) -+ -+#ifdef FLAG_SECTION -+ -+ {"block-external-form-redirects-no-gesture", -+ "Block intents from form submissions without user gesture", -+ "Require a user gesture that triggered a form submission in order to " -+ "allow for redirecting to an external intent.", -+ kOsAndroid, -+ FEATURE_VALUE_TYPE( -+ external_intents::kIntentBlockExternalFormRedirectsNoGesture)}, -+ -+#endif -+ -+#endif --- diff --git a/build/cromite_patches/Revert-Permit-blocking-of-view-source.patch b/build/cromite_patches/Revert-Permit-blocking-of-view-source.patch index 10cfc59a0cbec8a2f83accd267da337ec39b66f9..ab8df6b8c86634f08c2e7e77c36baa58df96ce93 100644 --- a/build/cromite_patches/Revert-Permit-blocking-of-view-source.patch +++ b/build/cromite_patches/Revert-Permit-blocking-of-view-source.patch @@ -12,7 +12,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/components/policy/content/policy_blocklist_navigation_throttle.cc b/components/policy/content/policy_blocklist_navigation_throttle.cc --- a/components/policy/content/policy_blocklist_navigation_throttle.cc +++ b/components/policy/content/policy_blocklist_navigation_throttle.cc -@@ -50,6 +50,7 @@ PolicyBlocklistNavigationThrottle::~PolicyBlocklistNavigationThrottle() { +@@ -63,6 +63,7 @@ PolicyBlocklistNavigationThrottle::~PolicyBlocklistNavigationThrottle() { } bool PolicyBlocklistNavigationThrottle::IsBlockedViewSourceNavigation() { diff --git a/build/cromite_patches/Revert-flags-remove-disable-pull-to-refresh-effect.patch b/build/cromite_patches/Revert-flags-remove-disable-pull-to-refresh-effect.patch index 6963e458138eafa206167c09676f6cfe52f85ad2..ef04ec043fc91af93847b3cb10ee03c87217c911 100644 --- a/build/cromite_patches/Revert-flags-remove-disable-pull-to-refresh-effect.patch +++ b/build/cromite_patches/Revert-flags-remove-disable-pull-to-refresh-effect.patch @@ -15,7 +15,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json --- a/chrome/browser/flag-metadata.json +++ b/chrome/browser/flag-metadata.json -@@ -2157,6 +2157,10 @@ +@@ -2206,6 +2206,10 @@ "yangsharon@google.com", "alexmos@google.com", "creis@google.com" ], "expiry_milestone": 140 }, diff --git a/build/cromite_patches/Revert-removal-of-execution-context-address-space.patch b/build/cromite_patches/Revert-removal-of-execution-context-address-space.patch index f903167914e24f21bd4785e86fdeaf80b8fb4606..42f1203645771aabd72bf5f3d8dab5d3390e357b 100644 --- a/build/cromite_patches/Revert-removal-of-execution-context-address-space.patch +++ b/build/cromite_patches/Revert-removal-of-execution-context-address-space.patch @@ -100,7 +100,7 @@ diff --git a/third_party/blink/renderer/core/execution_context/execution_context + network::mojom::IPAddressSpace AddressSpace() const; + void SetAddressSpace(network::mojom::blink::IPAddressSpace ip_address_space); + - HeapObserverSet& ContextLifecycleObserverSet(); + HeapObserverList& ContextLifecycleObserverSet(); unsigned ContextLifecycleStateObserverCountForTesting() const; diff --git a/third_party/blink/renderer/core/exported/web_shared_worker_impl.cc b/third_party/blink/renderer/core/exported/web_shared_worker_impl.cc @@ -171,7 +171,7 @@ diff --git a/third_party/blink/renderer/core/frame/policy_container.h b/third_pa diff --git a/third_party/blink/renderer/core/frame/web_frame_test.cc b/third_party/blink/renderer/core/frame/web_frame_test.cc --- a/third_party/blink/renderer/core/frame/web_frame_test.cc +++ b/third_party/blink/renderer/core/frame/web_frame_test.cc -@@ -8094,6 +8094,40 @@ TEST_F(WebFrameTest, PushStateStartsAndStops) { +@@ -8093,6 +8093,40 @@ TEST_F(WebFrameTest, PushStateStartsAndStops) { EXPECT_EQ(client.StopLoadingCount(), 2); } @@ -625,7 +625,7 @@ diff --git a/third_party/blink/renderer/core/workers/threaded_worklet_messaging_ /*parent_devtools_token=*/ client_provided_global_scope_creation_params->devtools_token, /*worker_settings=*/nullptr, -@@ -143,6 +145,7 @@ void ThreadedWorkletMessagingProxy::Initialize( +@@ -144,6 +146,7 @@ void ThreadedWorkletMessagingProxy::Initialize( window->GetReferrerPolicy(), window->GetSecurityOrigin(), window->IsSecureContext(), window->GetHttpsState(), worker_clients, frame_client->CreateWorkerContentSettingsClient(), @@ -805,7 +805,7 @@ diff --git a/third_party/blink/renderer/modules/exported/web_embedded_worker_imp diff --git a/third_party/blink/renderer/modules/service_worker/service_worker_global_scope.cc b/third_party/blink/renderer/modules/service_worker/service_worker_global_scope.cc --- a/third_party/blink/renderer/modules/service_worker/service_worker_global_scope.cc +++ b/third_party/blink/renderer/modules/service_worker/service_worker_global_scope.cc -@@ -476,6 +476,7 @@ void ServiceWorkerGlobalScope::DidFetchClassicScript( +@@ -481,6 +481,7 @@ void ServiceWorkerGlobalScope::DidFetchClassicScript( // is set, and with the following callback steps given evaluationStatus:" RunClassicScript( classic_script_loader->ResponseURL(), referrer_policy, @@ -813,7 +813,7 @@ diff --git a/third_party/blink/renderer/modules/service_worker/service_worker_gl classic_script_loader->GetContentSecurityPolicy() ? mojo::Clone(classic_script_loader->GetContentSecurityPolicy() ->GetParsedPolicies()) -@@ -489,6 +490,7 @@ void ServiceWorkerGlobalScope::DidFetchClassicScript( +@@ -494,6 +495,7 @@ void ServiceWorkerGlobalScope::DidFetchClassicScript( void ServiceWorkerGlobalScope::Initialize( const KURL& response_url, network::mojom::ReferrerPolicy response_referrer_policy, @@ -821,7 +821,7 @@ diff --git a/third_party/blink/renderer/modules/service_worker/service_worker_gl Vector response_csp, const Vector* response_origin_trial_tokens) { // Step 4.5. "Set workerGlobalScope's url to serviceWorker's script url." -@@ -502,6 +504,9 @@ void ServiceWorkerGlobalScope::Initialize( +@@ -507,6 +509,9 @@ void ServiceWorkerGlobalScope::Initialize( // script resource's referrer policy." SetReferrerPolicy(response_referrer_policy); @@ -831,7 +831,7 @@ diff --git a/third_party/blink/renderer/modules/service_worker/service_worker_gl // This is quoted from the "Content Security Policy" algorithm in the service // workers spec: // "Whenever a user agent invokes Run Service Worker algorithm with a service -@@ -512,6 +517,9 @@ void ServiceWorkerGlobalScope::Initialize( +@@ -517,6 +522,9 @@ void ServiceWorkerGlobalScope::Initialize( // - If serviceWorker's script resource was delivered with a // Content-Security-Policy-Report-Only HTTP header containing the value // policy, the user agent must monitor policy for serviceWorker." @@ -841,7 +841,7 @@ diff --git a/third_party/blink/renderer/modules/service_worker/service_worker_gl InitContentSecurityPolicyFromVector(std::move(response_csp)); BindContentSecurityPolicyToExecutionContext(); -@@ -552,26 +560,27 @@ void ServiceWorkerGlobalScope::LoadAndRunInstalledClassicScript( +@@ -557,26 +565,27 @@ void ServiceWorkerGlobalScope::LoadAndRunInstalledClassicScript( kDoNotSupportReferrerPolicyLegacyKeywords, &referrer_policy); } @@ -888,7 +888,7 @@ diff --git a/third_party/blink/renderer/modules/service_worker/service_worker_gl Vector response_csp, const Vector* response_origin_trial_tokens) override; // Fetches and runs the top-level classic worker script. -@@ -399,6 +400,7 @@ class MODULES_EXPORT ServiceWorkerGlobalScope final +@@ -402,6 +403,7 @@ class MODULES_EXPORT ServiceWorkerGlobalScope final void RunClassicScript( const KURL& response_url, network::mojom::ReferrerPolicy response_referrer_policy, diff --git a/build/cromite_patches/Revert-remove-allowscript-content-setting-secondary-url.patch b/build/cromite_patches/Revert-remove-allowscript-content-setting-secondary-url.patch index ca9ca077ec0d16d52012e4707ed2b331a3ed0746..23d1d8b3e9c0a124f027c8fd00318bac914a567c 100644 --- a/build/cromite_patches/Revert-remove-allowscript-content-setting-secondary-url.patch +++ b/build/cromite_patches/Revert-remove-allowscript-content-setting-secondary-url.patch @@ -81,7 +81,7 @@ diff --git a/chrome/renderer/worker_content_settings_client.h b/chrome/renderer/ diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc b/components/content_settings/renderer/content_settings_agent_impl.cc --- a/components/content_settings/renderer/content_settings_agent_impl.cc +++ b/components/content_settings/renderer/content_settings_agent_impl.cc -@@ -168,7 +168,7 @@ void ContentSettingsAgentImpl::DidCommitProvisionalLoad( +@@ -166,7 +166,7 @@ void ContentSettingsAgentImpl::DidCommitProvisionalLoad( // `allowPlugins()` is called for the new page so that these functions can // correctly detect that a piece of content flipped from "not blocked" to // "blocked". @@ -90,7 +90,7 @@ diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc blink::WebLocalFrame* frame = render_frame()->GetWebFrame(); if (frame->Parent()) -@@ -351,6 +351,41 @@ bool ContentSettingsAgentImpl::AllowImage(bool enabled_per_settings, +@@ -374,6 +374,41 @@ bool ContentSettingsAgentImpl::AllowImage(bool enabled_per_settings, return allow; } @@ -108,8 +108,8 @@ diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc + // allowing all scripts, it's quicker this way. + bool allow = AllowContentSetting( + ContentSettingsType::JAVASCRIPT, enabled_per_settings); -+ allow = allow || IsAllowlistedForContentSettingsCromite(); + ++ allow = allow || IsAllowlistedForContentSettings(); + cached_script_permissions_[frame] = allow; + return allow; +} @@ -125,25 +125,25 @@ diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc + allow = AllowContentSetting( + ContentSettingsType::JAVASCRIPT, script_url, enabled_per_settings); + } -+ allow = allow || IsAllowlistedForContentSettingsCromite(); ++ allow = allow || IsAllowlistedForContentSettings(); + return allow; +} + bool ContentSettingsAgentImpl::AllowReadFromClipboard() { return delegate_->AllowReadFromClipboard(); } -@@ -409,6 +444,7 @@ void ContentSettingsAgentImpl::DidNotAllowImage() { +@@ -432,6 +467,7 @@ void ContentSettingsAgentImpl::DidNotAllowImage() { void ContentSettingsAgentImpl::ClearBlockedContentSettings() { content_blocked_.clear(); cached_storage_permissions_.clear(); + cached_script_permissions_.clear(); } - bool ContentSettingsAgentImpl::IsAllowlistedForContentSettingsCromite() const { + } // namespace content_settings diff --git a/components/content_settings/renderer/content_settings_agent_impl.h b/components/content_settings/renderer/content_settings_agent_impl.h --- a/components/content_settings/renderer/content_settings_agent_impl.h +++ b/components/content_settings/renderer/content_settings_agent_impl.h -@@ -93,6 +93,9 @@ class ContentSettingsAgentImpl +@@ -90,6 +90,9 @@ class ContentSettingsAgentImpl bool AllowStorageAccessSync(StorageType type) override; bool AllowImage(bool enabled_per_settings, const blink::WebURL& image_url) override; @@ -153,16 +153,16 @@ diff --git a/components/content_settings/renderer/content_settings_agent_impl.h bool AllowReadFromClipboard() override; bool AllowWriteToClipboard() override; bool AllowMutationEvents(bool default_value) override; -@@ -163,6 +166,9 @@ class ContentSettingsAgentImpl +@@ -157,6 +160,9 @@ class ContentSettingsAgentImpl using StoragePermissionsKey = std::pair; base::flat_map cached_storage_permissions_; + // Caches the result of AllowScript. + base::flat_map cached_script_permissions_; + - // If true, IsAllowlistedForContentSettings will always return true. - const bool should_allowlist_; + std::unique_ptr delegate_; + mojo::AssociatedReceiverSet receivers_; diff --git a/third_party/blink/public/platform/web_content_settings_client.h b/third_party/blink/public/platform/web_content_settings_client.h --- a/third_party/blink/public/platform/web_content_settings_client.h +++ b/third_party/blink/public/platform/web_content_settings_client.h @@ -196,7 +196,7 @@ diff --git a/third_party/blink/renderer/core/frame/local_dom_window.cc b/third_p #include "third_party/blink/renderer/bindings/core/v8/binding_security.h" #include "third_party/blink/renderer/bindings/core/v8/capture_source_location.h" #include "third_party/blink/renderer/bindings/core/v8/isolated_world_csp.h" -@@ -485,7 +486,10 @@ bool LocalDOMWindow::CanExecuteScripts( +@@ -487,7 +488,10 @@ bool LocalDOMWindow::CanExecuteScripts( } return false; } @@ -211,7 +211,7 @@ diff --git a/third_party/blink/renderer/core/frame/local_dom_window.cc b/third_p diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc --- a/third_party/blink/renderer/core/frame/local_frame.cc +++ b/third_party/blink/renderer/core/frame/local_frame.cc -@@ -4040,19 +4040,6 @@ bool LocalFrame::IsSameOrigin() { +@@ -4055,19 +4055,6 @@ bool LocalFrame::IsSameOrigin() { return security_origin->IsSameOriginWith(top_security_origin); } @@ -250,7 +250,7 @@ diff --git a/third_party/blink/renderer/core/frame/local_frame.h b/third_party/b diff --git a/third_party/blink/renderer/core/html/html_meta_element.cc b/third_party/blink/renderer/core/html/html_meta_element.cc --- a/third_party/blink/renderer/core/html/html_meta_element.cc +++ b/third_party/blink/renderer/core/html/html_meta_element.cc -@@ -790,7 +790,9 @@ void HTMLMetaElement::ProcessMetaCH(Document& document, +@@ -787,7 +787,9 @@ void HTMLMetaElement::ProcessMetaCH(Document& document, return; } @@ -288,7 +288,7 @@ diff --git a/third_party/blink/renderer/core/loader/base_fetch_context.h b/third diff --git a/third_party/blink/renderer/core/loader/frame_fetch_context.cc b/third_party/blink/renderer/core/loader/frame_fetch_context.cc --- a/third_party/blink/renderer/core/loader/frame_fetch_context.cc +++ b/third_party/blink/renderer/core/loader/frame_fetch_context.cc -@@ -508,7 +508,8 @@ void FrameFetchContext::AddClientHintsIfNecessary( +@@ -518,7 +518,8 @@ void FrameFetchContext::AddClientHintsIfNecessary( // Check if |url| is allowed to run JavaScript. If not, client hints are not // attached to the requests that initiate on the render side. @@ -298,7 +298,7 @@ diff --git a/third_party/blink/renderer/core/loader/frame_fetch_context.cc b/thi return; } -@@ -851,15 +852,26 @@ void FrameFetchContext::SetFirstPartyCookie(ResourceRequest& request) { +@@ -911,15 +912,26 @@ void FrameFetchContext::SetFirstPartyCookie(ResourceRequest& request) { request.SetSiteForCookies(GetSiteForCookies()); } @@ -354,7 +354,7 @@ diff --git a/third_party/blink/renderer/core/loader/frame_fetch_context.h b/thir static ResourceFetcher* CreateFetcherForCommittedDocument(DocumentLoader&, Document&); FrameFetchContext(DocumentLoader& document_loader, -@@ -158,7 +169,7 @@ class CORE_EXPORT FrameFetchContext final : public BaseFetchContext, +@@ -165,7 +176,7 @@ class CORE_EXPORT FrameFetchContext final : public BaseFetchContext, // BaseFetchContext overrides: net::SiteForCookies GetSiteForCookies() const override; SubresourceFilter* GetSubresourceFilter() const override; diff --git a/build/cromite_patches/Show-site-settings-for-cookies-javascript-and-ads.patch b/build/cromite_patches/Show-site-settings-for-cookies-javascript-and-ads.patch index 01b6d54776eb97aabb78016c6d70fe91d548eb8c..9e5bd18c323fadf1621cc5aa8174921a0c7b5143 100644 --- a/build/cromite_patches/Show-site-settings-for-cookies-javascript-and-ads.patch +++ b/build/cromite_patches/Show-site-settings-for-cookies-javascript-and-ads.patch @@ -15,7 +15,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 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 -@@ -560,6 +560,8 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment +@@ -573,6 +573,8 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment setUpSoundPreference(preference); } else if (type == ContentSettingsType.JAVASCRIPT) { setUpJavascriptPreference(preference); @@ -24,7 +24,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c } else if (type == ContentSettingsType.GEOLOCATION) { setUpLocationPreference(preference); } else if (type == ContentSettingsType.NOTIFICATIONS) { -@@ -1011,17 +1013,8 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment +@@ -1024,17 +1026,8 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment private void setUpAdsInformationalBanner() { // Add the informational banner which shows at the top of the UI if ad blocking is // activated on this site. @@ -42,7 +42,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c } private SiteSettingsCategory getWarningCategory() { -@@ -1220,12 +1213,13 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment +@@ -1236,12 +1229,13 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment @Nullable Integer currentValue = mSite.getContentSetting(browserContextHandle, ContentSettingsType.JAVASCRIPT); @@ -62,7 +62,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c } // Not possible to embargo JAVASCRIPT. setupContentSettingsPreference( -@@ -1235,6 +1229,29 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment +@@ -1251,6 +1245,29 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment isOneTime(ContentSettingsType.JAVASCRIPT)); } @@ -92,7 +92,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c /** * Updates the ads list preference based on whether the site is a candidate for blocking. This * has some custom behavior. -@@ -1253,9 +1270,7 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment +@@ -1269,9 +1286,7 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment } // If the ad blocker is activated, then this site will have ads blocked unless there is an // explicit permission disallowing the blocking. diff --git a/build/cromite_patches/Site-setting-for-images.patch b/build/cromite_patches/Site-setting-for-images.patch index 028902b47f58e199be891a34284e749aa3222cb5..13448374e2dea7adea76fd3bb83a7811e3c5f393 100644 --- a/build/cromite_patches/Site-setting-for-images.patch +++ b/build/cromite_patches/Site-setting-for-images.patch @@ -271,7 +271,7 @@ diff --git a/components/content_settings/core/browser/content_settings_registry. diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc b/components/content_settings/renderer/content_settings_agent_impl.cc --- a/components/content_settings/renderer/content_settings_agent_impl.cc +++ b/components/content_settings/renderer/content_settings_agent_impl.cc -@@ -336,6 +336,21 @@ bool ContentSettingsAgentImpl::AllowStorageAccessSync( +@@ -359,6 +359,21 @@ bool ContentSettingsAgentImpl::AllowStorageAccessSync( return result; } @@ -279,7 +279,7 @@ diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc + const WebURL& image_url) { + bool allow = enabled_per_settings; + if (enabled_per_settings) { -+ allow = allow || IsAllowlistedForContentSettingsCromite(); ++ allow = allow || IsAllowlistedForContentSettings(); + if (content_setting_rules_) { + allow = AllowContentSetting(ContentSettingsType::IMAGES, + image_url, enabled_per_settings); @@ -296,7 +296,7 @@ diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc diff --git a/components/content_settings/renderer/content_settings_agent_impl.h b/components/content_settings/renderer/content_settings_agent_impl.h --- a/components/content_settings/renderer/content_settings_agent_impl.h +++ b/components/content_settings/renderer/content_settings_agent_impl.h -@@ -91,6 +91,8 @@ class ContentSettingsAgentImpl +@@ -88,6 +88,8 @@ class ContentSettingsAgentImpl void AllowStorageAccess(StorageType storage_type, base::OnceCallback callback) override; bool AllowStorageAccessSync(StorageType type) override; @@ -323,7 +323,7 @@ diff --git a/third_party/blink/public/platform/web_content_settings_client.h b/t diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc --- a/third_party/blink/renderer/core/frame/local_frame.cc +++ b/third_party/blink/renderer/core/frame/local_frame.cc -@@ -4027,19 +4027,6 @@ bool LocalFrame::IsSameOrigin() { +@@ -4042,19 +4042,6 @@ bool LocalFrame::IsSameOrigin() { return security_origin->IsSameOriginWith(top_security_origin); } @@ -381,7 +381,7 @@ diff --git a/third_party/blink/renderer/core/html/image_document.cc b/third_part diff --git a/third_party/blink/renderer/core/loader/frame_fetch_context.cc b/third_party/blink/renderer/core/loader/frame_fetch_context.cc --- a/third_party/blink/renderer/core/loader/frame_fetch_context.cc +++ b/third_party/blink/renderer/core/loader/frame_fetch_context.cc -@@ -303,6 +303,7 @@ ResourceFetcher* FrameFetchContext::CreateFetcherForCommittedDocument( +@@ -304,6 +304,7 @@ ResourceFetcher* FrameFetchContext::CreateFetcherForCommittedDocument( fetcher->SetResourceLoadObserver( MakeGarbageCollected( loader, document, fetcher->GetProperties())); @@ -389,7 +389,7 @@ diff --git a/third_party/blink/renderer/core/loader/frame_fetch_context.cc b/thi fetcher->SetAutoLoadImages( frame->GetSettings()->GetLoadsImagesAutomatically()); fetcher->SetEarlyHintsPreloadedResources( -@@ -475,16 +476,11 @@ void FrameFetchContext::AddResourceTiming( +@@ -485,16 +486,11 @@ void FrameFetchContext::AddResourceTiming( ->AddResourceTiming(std::move(info), initiator_type); } @@ -419,12 +419,12 @@ diff --git a/third_party/blink/renderer/core/loader/frame_fetch_context.h b/thir - bool AllowImage() const override; + bool AllowImage(bool images_enabled, const KURL&) const override; - void PopulateResourceRequest(ResourceType, - const std::optional resource_width, + void PopulateResourceRequestBeforeCacheAccess( + const ResourceLoaderOptions& options, diff --git a/third_party/blink/renderer/core/page/page.cc b/third_party/blink/renderer/core/page/page.cc --- a/third_party/blink/renderer/core/page/page.cc +++ b/third_party/blink/renderer/core/page/page.cc -@@ -988,9 +988,8 @@ void Page::SettingsChanged(ChangeType change_type) { +@@ -1030,9 +1030,8 @@ void Page::SettingsChanged(ChangeType change_type) { for (Frame* frame = MainFrame(); frame; frame = frame->Tree().TraverseNext()) { if (auto* local_frame = DynamicTo(frame)) { @@ -451,7 +451,7 @@ diff --git a/third_party/blink/renderer/platform/loader/fetch/fetch_context.h b/ diff --git a/third_party/blink/renderer/platform/loader/fetch/resource_fetcher.cc b/third_party/blink/renderer/platform/loader/fetch/resource_fetcher.cc --- a/third_party/blink/renderer/platform/loader/fetch/resource_fetcher.cc +++ b/third_party/blink/renderer/platform/loader/fetch/resource_fetcher.cc -@@ -777,6 +777,7 @@ ResourceFetcher::ResourceFetcher(const ResourceFetcherInit& init) +@@ -790,6 +790,7 @@ ResourceFetcher::ResourceFetcher(const ResourceFetcherInit& init) blob_registry_remote_(init.context_lifecycle_notifier), context_lifecycle_notifier_(init.context_lifecycle_notifier), auto_load_images_(true), @@ -459,7 +459,7 @@ diff --git a/third_party/blink/renderer/platform/loader/fetch/resource_fetcher.c allow_stale_resources_(false), image_fetched_(false), transparent_image_optimization_enabled_(base::FeatureList::IsEnabled( -@@ -1925,7 +1926,7 @@ bool ResourceFetcher::IsImageResourceDisallowedToBeReused( +@@ -1918,7 +1919,7 @@ bool ResourceFetcher::IsImageResourceDisallowedToBeReused( if (existing_resource.GetType() != ResourceType::kImage) return false; @@ -468,7 +468,7 @@ diff --git a/third_party/blink/renderer/platform/loader/fetch/resource_fetcher.c } ResourceFetcher::RevalidationPolicy -@@ -2168,8 +2169,20 @@ void ResourceFetcher::SetAutoLoadImages(bool enable) { +@@ -2161,8 +2162,20 @@ void ResourceFetcher::SetAutoLoadImages(bool enable) { ReloadImagesIfNotDeferred(); } @@ -501,7 +501,7 @@ diff --git a/third_party/blink/renderer/platform/loader/fetch/resource_fetcher.h FetchContext& Context() const; void ClearContext(); -@@ -692,6 +693,7 @@ class PLATFORM_EXPORT ResourceFetcher +@@ -690,6 +691,7 @@ class PLATFORM_EXPORT ResourceFetcher // 27 bits left bool auto_load_images_ : 1; diff --git a/build/cromite_patches/Switch-to-fstack-protector-strong.patch b/build/cromite_patches/Switch-to-fstack-protector-strong.patch index a5bf6e480231e16a49f728261bd5dc1c2d9a802e..1c006ffff320d9162fd346ad7cc1f7dced4d2281 100644 --- a/build/cromite_patches/Switch-to-fstack-protector-strong.patch +++ b/build/cromite_patches/Switch-to-fstack-protector-strong.patch @@ -19,7 +19,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 -@@ -368,7 +368,7 @@ config("compiler") { +@@ -371,7 +371,7 @@ config("compiler") { } else if ((is_posix && !is_chromeos && !is_nacl) || is_fuchsia) { if (current_os != "aix") { # Not available on aix. diff --git a/build/cromite_patches/Timezone-customization.patch b/build/cromite_patches/Timezone-customization.patch index d925140b7f01c542d9c9935380217ef1b3011813..6b7221f3e76c4dd0de2f3e6d06f884e678f1e3b9 100644 --- a/build/cromite_patches/Timezone-customization.patch +++ b/build/cromite_patches/Timezone-customization.patch @@ -559,7 +559,7 @@ new file mode 100644 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 -@@ -1121,3 +1121,19 @@ JNI_WebsitePreferenceBridge_ToHostOnlyPattern( +@@ -1122,3 +1122,19 @@ JNI_WebsitePreferenceBridge_ToHostOnlyPattern( ContentSettingsPattern::FromString(pattern_string)); return ConvertUTF8ToJavaString(env, host_only_pattern.ToString()); } @@ -655,7 +655,7 @@ new file mode 100644 diff --git a/components/content_settings/core/browser/content_settings_pref_provider.cc b/components/content_settings/core/browser/content_settings_pref_provider.cc --- a/components/content_settings/core/browser/content_settings_pref_provider.cc +++ b/components/content_settings/core/browser/content_settings_pref_provider.cc -@@ -81,6 +81,8 @@ void PrefProvider::RegisterProfilePrefs( +@@ -93,6 +93,8 @@ void PrefProvider::RegisterProfilePrefs( info->GetPrefRegistrationFlags()); } @@ -664,7 +664,7 @@ diff --git a/components/content_settings/core/browser/content_settings_pref_prov // Obsolete prefs ---------------------------------------------------------- // These prefs have been removed, but need to be registered so they can -@@ -153,6 +155,10 @@ PrefProvider::PrefProvider(PrefService* prefs, +@@ -169,6 +171,10 @@ PrefProvider::PrefProvider(PrefService* prefs, event_args->set_number_of_exceptions( num_exceptions); // PrefProvider::PrefProvider. }); @@ -675,7 +675,7 @@ diff --git a/components/content_settings/core/browser/content_settings_pref_prov } PrefProvider::~PrefProvider() { -@@ -440,4 +446,14 @@ void PrefProvider::SetClockForTesting(base::Clock* clock) { +@@ -464,4 +470,14 @@ void PrefProvider::SetClockForTesting(const base::Clock* clock) { } } @@ -706,7 +706,7 @@ diff --git a/components/content_settings/core/browser/content_settings_pref_prov @@ -140,6 +143,7 @@ class PrefProvider : public UserModifiableProvider { base::ThreadChecker thread_checker_; - raw_ptr clock_; + raw_ptr clock_; + std::string custom_timezone_; }; @@ -729,7 +729,7 @@ diff --git a/components/content_settings/core/browser/content_settings_utils.cc 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 -@@ -667,6 +667,14 @@ void HostContentSettingsMap::SetClockForTesting(base::Clock* clock) { +@@ -665,6 +665,14 @@ void HostContentSettingsMap::SetClockForTesting(const base::Clock* clock) { } } @@ -815,7 +815,7 @@ diff --git a/components/content_settings/core/common/content_settings_mojom_trai diff --git a/components/content_settings/core/common/pref_names.h b/components/content_settings/core/common/pref_names.h --- a/components/content_settings/core/common/pref_names.h +++ b/components/content_settings/core/common/pref_names.h -@@ -238,6 +238,9 @@ inline constexpr char kDesktopSiteWindowSettingEnabled[] = +@@ -233,6 +233,9 @@ inline constexpr char kDesktopSiteWindowSettingEnabled[] = "desktop_site.window_setting"; #endif @@ -839,7 +839,7 @@ diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc #include "components/content_settings/core/common/content_settings.h" #include "components/content_settings/core/common/content_settings.mojom.h" #include "components/content_settings/core/common/content_settings_pattern.h" -@@ -169,6 +171,7 @@ void ContentSettingsAgentImpl::DidCommitProvisionalLoad( +@@ -167,6 +169,7 @@ void ContentSettingsAgentImpl::DidCommitProvisionalLoad( // correctly detect that a piece of content flipped from "not blocked" to // "blocked". ClearBlockedContentSettings(); // do not remove @@ -847,8 +847,8 @@ diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc blink::WebLocalFrame* frame = render_frame()->GetWebFrame(); if (frame->Parent()) -@@ -480,4 +483,78 @@ bool ContentSettingsAgentImpl::IsAllowlistedForContentSettingsCromite() const { - return false; +@@ -470,4 +473,78 @@ void ContentSettingsAgentImpl::ClearBlockedContentSettings() { + cached_script_permissions_.clear(); } +bool ContentSettingsAgentImpl::UpdateOverrides() { @@ -941,7 +941,7 @@ diff --git a/components/content_settings/renderer/content_settings_agent_impl.h namespace blink { class WebFrame; class WebURL; -@@ -175,6 +180,12 @@ class ContentSettingsAgentImpl +@@ -166,6 +171,12 @@ class ContentSettingsAgentImpl std::unique_ptr delegate_; mojo::AssociatedReceiverSet receivers_; diff --git a/build/cromite_patches/Use-browser-navigation-handler.patch b/build/cromite_patches/Use-browser-navigation-handler.patch new file mode 100644 index 0000000000000000000000000000000000000000..0b68ac9c7099c9a9440035778ed3374d8bfeaf6e --- /dev/null +++ b/build/cromite_patches/Use-browser-navigation-handler.patch @@ -0,0 +1,345 @@ +From: uazo +Date: Sat, 21 Sep 2024 15:32:02 +0000 +Subject: Use browser navigation handler + +Added a flag in the settings to restore the pre-A12 navigation mode. +Pulling the edge to the right will go backwards, pulling it further forwards. + +License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html +--- + .../compositor/CompositorViewHolder.java | 9 ++++- + .../GestureNavigationProperties.java | 4 +-- + .../GestureNavigationViewBinder.java | 6 ++-- + .../HistoryNavigationCoordinator.java | 4 +++ + .../gesturenav/HistoryNavigationLayout.java | 6 ++-- + .../browser/gesturenav/NavigationHandler.java | 12 +++++-- + .../browser/gesturenav/SideSlideLayout.java | 25 +++++++++++--- + .../cromite/sUseBrowserNavigationHandler.java | 33 +++++++++++++++++++ + .../Use-browser-navigation-handler.grdp | 12 +++++++ + .../res/xml/accessibility_preferences.xml | 9 +++++ + .../Use-browser-navigation-handler.inc | 12 +++++++ + .../Use-browser-navigation-handler.inc | 3 ++ + .../Use-browser-navigation-handler.inc | 1 + + 13 files changed, 119 insertions(+), 17 deletions(-) + create mode 100644 chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/cromite/sUseBrowserNavigationHandler.java + create mode 100644 chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Use-browser-navigation-handler.grdp + create mode 100644 cromite_flags/chrome/browser/about_flags_cc/Use-browser-navigation-handler.inc + create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Use-browser-navigation-handler.inc + create mode 100644 cromite_flags/chrome/browser/flags/android/chrome_feature_list_h/Use-browser-navigation-handler.inc + +diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/CompositorViewHolder.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/CompositorViewHolder.java +--- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/CompositorViewHolder.java ++++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/CompositorViewHolder.java +@@ -51,6 +51,7 @@ import org.chromium.chrome.browser.compositor.layouts.LayoutManagerHost; + import org.chromium.chrome.browser.compositor.layouts.LayoutManagerImpl; + import org.chromium.chrome.browser.compositor.layouts.LayoutRenderHost; + import org.chromium.chrome.browser.flags.ChromeFeatureList; ++import org.chromium.chrome.browser.flags.cromite.sUseBrowserNavigationHandler; + import org.chromium.chrome.browser.fullscreen.BrowserControlsManager; + import org.chromium.chrome.browser.fullscreen.FullscreenManager; + import org.chromium.chrome.browser.layouts.EventFilter.EventType; +@@ -98,6 +99,7 @@ import org.chromium.ui.resources.dynamics.DynamicResourceLoader; + import org.chromium.url.GURL; + + import java.util.ArrayList; ++import java.util.Collections; + import java.util.HashSet; + import java.util.List; + import java.util.Set; +@@ -1325,7 +1327,12 @@ public class CompositorViewHolder extends FrameLayout + protected void onLayout(boolean changed, int l, int t, int r, int b) { + if (changed) onViewportChanged(); + super.onLayout(changed, l, t, r, b); +- ++ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q && ++ sUseBrowserNavigationHandler.getInstance().isEnabled()) { ++ setSystemGestureExclusionRects( ++ Collections.singletonList( ++ new Rect(0, 0, Math.abs(r - l), Math.abs(t - b)))); ++ } + invalidateAccessibilityProvider(); + } + +diff --git a/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/GestureNavigationProperties.java b/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/GestureNavigationProperties.java +--- a/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/GestureNavigationProperties.java ++++ b/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/GestureNavigationProperties.java +@@ -17,7 +17,7 @@ class GestureNavigationProperties { + /** + * Gesture navigation direction. {@code true} for forward navigation, {@code false} for back. + */ +- static final WritableBooleanPropertyKey DIRECTION = new WritableBooleanPropertyKey(); ++ static final WritableBooleanPropertyKey CANFORWARD = new WritableBooleanPropertyKey(); + + /** Gesture navigation edge as defined in {@link BackGestureEventSwipeEdge}. */ + static final WritableIntPropertyKey EDGE = new WritableIntPropertyKey(); +@@ -39,6 +39,6 @@ class GestureNavigationProperties { + static final WritableIntPropertyKey CLOSE_INDICATOR = new WritableIntPropertyKey(); + + static final PropertyKey[] ALL_KEYS = { +- ACTION, DIRECTION, EDGE, ALLOW_NAV, BUBBLE_OFFSET, CLOSE_INDICATOR ++ ACTION, CANFORWARD, EDGE, ALLOW_NAV, BUBBLE_OFFSET, CLOSE_INDICATOR + }; + } +diff --git a/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/GestureNavigationViewBinder.java b/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/GestureNavigationViewBinder.java +--- a/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/GestureNavigationViewBinder.java ++++ b/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/GestureNavigationViewBinder.java +@@ -8,7 +8,7 @@ import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties + import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties.ALLOW_NAV; + import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties.BUBBLE_OFFSET; + import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties.CLOSE_INDICATOR; +-import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties.DIRECTION; ++import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties.CANFORWARD; + import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties.EDGE; + + import android.view.View; +@@ -32,8 +32,8 @@ class GestureNavigationViewBinder { + } else if (ACTION == key) { + switch (model.get(ACTION)) { + case GestureAction.SHOW_ARROW: +- topView.showBubble( +- model.get(DIRECTION), model.get(EDGE), model.get(CLOSE_INDICATOR)); ++ topView.showBubble2( ++ model.get(CANFORWARD), model.get(EDGE), model.get(CLOSE_INDICATOR)); + break; + case GestureAction.RELEASE_BUBBLE: + topView.releaseBubble(model.get(ALLOW_NAV)); +diff --git a/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/HistoryNavigationCoordinator.java b/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/HistoryNavigationCoordinator.java +--- a/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/HistoryNavigationCoordinator.java ++++ b/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/HistoryNavigationCoordinator.java +@@ -12,6 +12,7 @@ import androidx.annotation.Nullable; + + import org.chromium.base.supplier.ObservableSupplier; + import org.chromium.base.supplier.Supplier; ++import org.chromium.chrome.browser.flags.cromite.sUseBrowserNavigationHandler; + import org.chromium.chrome.browser.lifecycle.ActivityLifecycleDispatcher; + import org.chromium.chrome.browser.lifecycle.PauseResumeWithNativeObserver; + import org.chromium.chrome.browser.tab.CurrentTabObserver; +@@ -159,6 +160,9 @@ public class HistoryNavigationCoordinator + * @return {@code} true if the feature is enabled. + */ + private boolean isFeatureEnabled() { ++ if (sUseBrowserNavigationHandler.getInstance().isEnabled()) { ++ return true; ++ } + if (mForceFeatureEnabledForTesting) { + return true; + } +diff --git a/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/HistoryNavigationLayout.java b/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/HistoryNavigationLayout.java +--- a/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/HistoryNavigationLayout.java ++++ b/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/HistoryNavigationLayout.java +@@ -68,8 +68,8 @@ class HistoryNavigationLayout extends FrameLayout implements ViewGroup.OnHierarc + * @param initiatingEdge Which edge of the screen the gesture is navigating from. + * @param closeIndicator + */ +- void showBubble( +- boolean forward, ++ void showBubble2( ++ boolean canForward, + @BackGestureEventSwipeEdge int initiatingEdge, + @CloseTarget int closeIndicator) { + if (mSideSlideLayout == null) { +@@ -87,7 +87,7 @@ class HistoryNavigationLayout extends FrameLayout implements ViewGroup.OnHierarc + }); + } + mSideSlideLayout.setEnabled(true); +- mSideSlideLayout.setDirection(forward); ++ mSideSlideLayout.setDirection2(canForward); + mSideSlideLayout.setInitiatingEdge(initiatingEdge); + mSideSlideLayout.setCloseIndicator(closeIndicator); + attachLayoutIfNecessary(); +diff --git a/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/NavigationHandler.java b/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/NavigationHandler.java +--- a/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/NavigationHandler.java ++++ b/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/NavigationHandler.java +@@ -8,7 +8,7 @@ import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties + import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties.ALLOW_NAV; + import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties.BUBBLE_OFFSET; + import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties.CLOSE_INDICATOR; +-import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties.DIRECTION; ++import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties.CANFORWARD; + import static org.chromium.chrome.browser.gesturenav.GestureNavigationProperties.EDGE; + + import android.app.Activity; +@@ -233,15 +233,21 @@ class NavigationHandler implements TouchEventObserver { + + mInitiatingEdge = initiatingEdge; + +- boolean forward = mInitiatingEdge == BackGestureEventSwipeEdge.RIGHT; ++ boolean forward = false; ++ @BackGestureEventSwipeEdge int edge = BackGestureEventSwipeEdge.RIGHT; + + // If the UI uses an RTL layout, it may be necessary to flip the meaning of each edge so + // that the left edge goes forward and the right goes back. + if (LocalizationUtils.shouldMirrorBackForwardGestures()) { + forward = !forward; ++ edge = BackGestureEventSwipeEdge.LEFT; + } + +- mModel.set(DIRECTION, forward); ++ if (mInitiatingEdge == edge && canNavigate(true)) { ++ mModel.set(CANFORWARD, true); ++ } else { ++ mModel.set(CANFORWARD, false); ++ } + mModel.set(EDGE, mInitiatingEdge); + if (canNavigate(forward)) { + if (mState != GestureState.STARTED) mModel.set(ACTION, GestureAction.RESET_BUBBLE); +diff --git a/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/SideSlideLayout.java b/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/SideSlideLayout.java +--- a/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/SideSlideLayout.java ++++ b/chrome/android/java/src/org/chromium/chrome/browser/gesturenav/SideSlideLayout.java +@@ -106,6 +106,7 @@ public class SideSlideLayout extends ViewGroup { + private int mAnimationViewWidth; + + private boolean mIsForward; ++ private boolean mCanForward; + private @CloseTarget int mCloseIndicator; + + private @BackGestureEventSwipeEdge int mInitiatingEdge; +@@ -223,10 +224,10 @@ public class SideSlideLayout extends ViewGroup { + * Set the direction used for sliding gesture. + * @param forward {@code true} if direction is forward. + */ +- public void setDirection(boolean forward) { +- mIsForward = forward; +- mArrowView.setIcon( +- forward ? R.drawable.ic_arrow_forward_blue_24dp : R.drawable.ic_arrow_back_24dp); ++ public void setDirection2(boolean canForward) { ++ mIsForward = false; ++ mCanForward = canForward; ++ mArrowView.setIcon(R.drawable.ic_arrow_back_24dp); + } + + public void setInitiatingEdge(@BackGestureEventSwipeEdge int edge) { +@@ -332,7 +333,7 @@ public class SideSlideLayout extends ViewGroup { + mWillNavigate = navigating; + + if (mCloseIndicator != CloseTarget.NONE) { +- if (mWillNavigate) { ++ if (mCanForward && !mIsForward && mWillNavigate) { + mArrowView.showCaption(mCloseIndicator); + mArrowViewWidth = mArrowView.getMeasuredWidth(); + } else { +@@ -348,6 +349,20 @@ public class SideSlideLayout extends ViewGroup { + ? -targetDiff + : targetDiff); + setTargetOffsetLeftAndRight(targetX - mCurrentTargetOffset); ++ ++ boolean lastForward = mIsForward; ++ if (mCanForward && originalDragPercent > (THRESHOLD_MULTIPLIER * 2)) { ++ mIsForward = true; ++ } else { ++ mIsForward = false; ++ } ++ if (lastForward != mIsForward) { ++ mArrowView.setIcon( ++ mIsForward ? R.drawable.ic_arrow_forward_blue_24dp : R.drawable.ic_arrow_back_24dp); ++ mArrowView.setImageTint(true); ++ if (navigating) performHapticFeedback(HapticFeedbackConstants.KEYBOARD_TAP); ++ hideCloseIndicator(); ++ } + } + + /** +diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/cromite/sUseBrowserNavigationHandler.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/cromite/sUseBrowserNavigationHandler.java +new file mode 100644 +--- /dev/null ++++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/cromite/sUseBrowserNavigationHandler.java +@@ -0,0 +1,33 @@ ++/* ++ This file is part of Cromite. ++ ++ Cromite is free software: you can redistribute it and/or modify ++ it under the terms of the GNU General Public License as published by ++ the Free Software Foundation, either version 3 of the License, or ++ (at your option) any later version. ++ ++ Cromite is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ GNU General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License ++ along with Cromite. If not, see . ++*/ ++ ++package org.chromium.chrome.browser.flags.cromite; ++ ++import org.chromium.base.cached_flags.CachedFlag; ++import org.chromium.chrome.browser.flags.ChromeFeatureMap; ++ ++public class sUseBrowserNavigationHandler { ++ private static final CachedFlag sInstance = ++ new CachedFlag(ChromeFeatureMap.getInstance(), ++ "UseBrowserNavigationHandler", false); ++ ++ private sUseBrowserNavigationHandler() {} ++ ++ public static CachedFlag getInstance() { ++ return sInstance; ++ } ++} +diff --git a/chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Use-browser-navigation-handler.grdp b/chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Use-browser-navigation-handler.grdp +new file mode 100644 +--- /dev/null ++++ b/chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Use-browser-navigation-handler.grdp +@@ -0,0 +1,12 @@ ++ ++ ++ ++ Customising the navigation manager ++ ++ ++ Disable system gestures for web browsing ++ ++ ++ Forces activation of the old page navigation mode ++ ++ +diff --git a/components/browser_ui/accessibility/android/java/res/xml/accessibility_preferences.xml b/components/browser_ui/accessibility/android/java/res/xml/accessibility_preferences.xml +--- a/components/browser_ui/accessibility/android/java/res/xml/accessibility_preferences.xml ++++ b/components/browser_ui/accessibility/android/java/res/xml/accessibility_preferences.xml +@@ -103,4 +103,13 @@ found in the LICENSE file. + android:summary="@string/selection_popup_smart_text_summary" + android:title="@string/selection_popup_smart_text_title" /> + ++ ++ ++ +
+diff --git a/cromite_flags/chrome/browser/about_flags_cc/Use-browser-navigation-handler.inc b/cromite_flags/chrome/browser/about_flags_cc/Use-browser-navigation-handler.inc +new file mode 100644 +--- /dev/null ++++ b/cromite_flags/chrome/browser/about_flags_cc/Use-browser-navigation-handler.inc +@@ -0,0 +1,12 @@ ++#if BUILDFLAG(IS_ANDROID) ++ ++#ifdef FLAG_SECTION ++ ++ {"UseBrowserNavigationHandler", ++ "Disable system gestures for web browsing", ++ "Forces activation of the old page navigation mode", kOsAndroid, ++ FEATURE_VALUE_TYPE(chrome::android::kUseBrowserNavigationHandler)}, ++ ++#endif ++ ++#endif +diff --git a/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Use-browser-navigation-handler.inc b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Use-browser-navigation-handler.inc +new file mode 100644 +--- /dev/null ++++ b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_cc/Use-browser-navigation-handler.inc +@@ -0,0 +1,3 @@ ++CROMITE_FEATURE(kUseBrowserNavigationHandler, ++ "UseBrowserNavigationHandler", ++ base::FEATURE_DISABLED_BY_DEFAULT); +diff --git a/cromite_flags/chrome/browser/flags/android/chrome_feature_list_h/Use-browser-navigation-handler.inc b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_h/Use-browser-navigation-handler.inc +new file mode 100644 +--- /dev/null ++++ b/cromite_flags/chrome/browser/flags/android/chrome_feature_list_h/Use-browser-navigation-handler.inc +@@ -0,0 +1 @@ ++BASE_DECLARE_FEATURE(kUseBrowserNavigationHandler); +-- diff --git a/build/cromite_patches/Use-dummy-DFM-installer.patch b/build/cromite_patches/Use-dummy-DFM-installer.patch index f14d7c2f7fb28076ab755dc961d5705279c6860c..6c47f122fbf0f78e3fa4ee8db037e6878022f053 100644 --- a/build/cromite_patches/Use-dummy-DFM-installer.patch +++ b/build/cromite_patches/Use-dummy-DFM-installer.patch @@ -4,42 +4,31 @@ Subject: Use dummy DFM installer License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html --- - components/module_installer/android/BUILD.gn | 2 - - .../engine/SplitCompatEngine.java | 77 +------------------ - .../engine/SplitCompatEngineFacade.java | 29 ++----- - .../module_installer/logger/Logger.java | 16 +--- - .../logger/PlayCoreLogger.java | 50 ++---------- - .../logger/SplitAvailabilityLogger.java | 40 ---------- - .../logger/SplitInstallStatusLogger.java | 30 +------- - .../module_installer/util/ModuleUtil.java | 5 -- + components/module_installer/android/BUILD.gn | 1 - + .../engine/SplitCompatEngine.java | 64 +------------------ + .../engine/SplitCompatEngineFacade.java | 25 -------- + .../module_installer/util/ModuleUtil.java | 3 - .../util/SplitCompatInitializer.java | 6 -- - 9 files changed, 19 insertions(+), 236 deletions(-) + 5 files changed, 1 insertion(+), 98 deletions(-) diff --git a/components/module_installer/android/BUILD.gn b/components/module_installer/android/BUILD.gn --- a/components/module_installer/android/BUILD.gn +++ b/components/module_installer/android/BUILD.gn -@@ -21,13 +21,11 @@ android_library("module_installer_java") { - "java/src/org/chromium/components/module_installer/logger/Logger.java", - "java/src/org/chromium/components/module_installer/logger/PlayCoreLogger.java", - "java/src/org/chromium/components/module_installer/logger/SplitAvailabilityLogger.java", -- "java/src/org/chromium/components/module_installer/logger/SplitInstallFailureLogger.java", - "java/src/org/chromium/components/module_installer/logger/SplitInstallStatusLogger.java", - "java/src/org/chromium/components/module_installer/observer/ActivityObserver.java", +@@ -22,7 +22,6 @@ android_library("module_installer_java") { "java/src/org/chromium/components/module_installer/observer/ActivityObserverFacade.java", "java/src/org/chromium/components/module_installer/observer/InstallerObserver.java", "java/src/org/chromium/components/module_installer/util/ActivityObserverUtil.java", - "java/src/org/chromium/components/module_installer/util/CrashKeyRecorder.java", "java/src/org/chromium/components/module_installer/util/ModuleUtil.java", "java/src/org/chromium/components/module_installer/util/SplitCompatInitializer.java", - "java/src/org/chromium/components/module_installer/util/Timer.java", + ] diff --git a/components/module_installer/android/java/src/org/chromium/components/module_installer/engine/SplitCompatEngine.java b/components/module_installer/android/java/src/org/chromium/components/module_installer/engine/SplitCompatEngine.java --- a/components/module_installer/android/java/src/org/chromium/components/module_installer/engine/SplitCompatEngine.java +++ b/components/module_installer/android/java/src/org/chromium/components/module_installer/engine/SplitCompatEngine.java -@@ -8,11 +8,6 @@ import android.app.Activity; +@@ -8,10 +8,6 @@ import android.app.Activity; import androidx.annotation.VisibleForTesting; --import com.google.android.play.core.splitinstall.SplitInstallException; -import com.google.android.play.core.splitinstall.SplitInstallRequest; -import com.google.android.play.core.splitinstall.SplitInstallStateUpdatedListener; -import com.google.android.play.core.splitinstall.model.SplitInstallSessionStatus; @@ -47,7 +36,7 @@ diff --git a/components/module_installer/android/java/src/org/chromium/component import org.chromium.base.ThreadUtils; import java.util.ArrayList; -@@ -25,7 +20,6 @@ import java.util.Set; +@@ -24,7 +20,6 @@ import java.util.Set; /** Install engine that uses Play Core and SplitCompat to install modules. */ class SplitCompatEngine implements InstallEngine { private final SplitCompatEngineFacade mFacade; @@ -55,7 +44,7 @@ diff --git a/components/module_installer/android/java/src/org/chromium/component private static final Map> sSessions = new HashMap<>(); public SplitCompatEngine() { -@@ -43,83 +37,20 @@ class SplitCompatEngine implements InstallEngine { +@@ -42,70 +37,19 @@ class SplitCompatEngine implements InstallEngine { @Override public boolean isInstalled(String moduleName) { @@ -67,7 +56,6 @@ diff --git a/components/module_installer/android/java/src/org/chromium/component @Override public void installDeferred(String moduleName) { - mFacade.getSplitManager().deferredInstall(Collections.singletonList(moduleName)); - mFacade.getLogger().logRequestDeferredStart(moduleName); } @Override @@ -92,18 +80,8 @@ diff --git a/components/module_installer/android/java/src/org/chromium/component - .startInstall(request) - .addOnFailureListener( - ex -> { -- int errorCode = -- ex instanceof SplitInstallException -- ? ((SplitInstallException) ex).getErrorCode() -- : mFacade.getLogger().getUnknownRequestErrorCode(); -- -- // TODO(fredmello): look into potential issues with mixing split error -- // code with our logger codes - fix accordingly. -- mFacade.getLogger().logRequestFailure(moduleName, errorCode); - notifyListeners(moduleName, false); - }); -- -- mFacade.getLogger().logRequestStart(moduleName); - } - - private SplitInstallStateUpdatedListener getStatusUpdateListener() { @@ -124,10 +102,8 @@ diff --git a/components/module_installer/android/java/src/org/chromium/component - break; - case SplitInstallSessionStatus.FAILED: - notifyListeners(moduleName, false); -- mFacade.getLogger().logStatusFailure(moduleName, state.errorCode()); - break; - } -- mFacade.getLogger().logStatus(moduleName, status); - } - }; } @@ -140,7 +116,7 @@ diff --git a/components/module_installer/android/java/src/org/chromium/component sSessions.remove(moduleName); unregisterUpdateListener(); -@@ -134,15 +65,9 @@ class SplitCompatEngine implements InstallEngine { +@@ -120,15 +64,9 @@ class SplitCompatEngine implements InstallEngine { } private void registerUpdateListener() { @@ -159,52 +135,37 @@ diff --git a/components/module_installer/android/java/src/org/chromium/component diff --git a/components/module_installer/android/java/src/org/chromium/components/module_installer/engine/SplitCompatEngineFacade.java b/components/module_installer/android/java/src/org/chromium/components/module_installer/engine/SplitCompatEngineFacade.java --- a/components/module_installer/android/java/src/org/chromium/components/module_installer/engine/SplitCompatEngineFacade.java +++ b/components/module_installer/android/java/src/org/chromium/components/module_installer/engine/SplitCompatEngineFacade.java -@@ -6,32 +6,28 @@ package org.chromium.components.module_installer.engine; +@@ -6,48 +6,23 @@ package org.chromium.components.module_installer.engine; import android.app.Activity; -import com.google.android.play.core.splitcompat.SplitCompat; -+/*import com.google.android.play.core.splitcompat.SplitCompat; - import com.google.android.play.core.splitinstall.SplitInstallManager; - import com.google.android.play.core.splitinstall.SplitInstallManagerFactory; +-import com.google.android.play.core.splitinstall.SplitInstallManager; +-import com.google.android.play.core.splitinstall.SplitInstallManagerFactory; -import com.google.android.play.core.splitinstall.SplitInstallRequest; -+import com.google.android.play.core.splitinstall.SplitInstallRequest;*/ - +- import org.chromium.base.ContextUtils; - import org.chromium.components.module_installer.logger.Logger; - import org.chromium.components.module_installer.logger.PlayCoreLogger; -import org.chromium.components.module_installer.util.ModuleUtil; -+//import org.chromium.components.module_installer.util.ModuleUtil; /** - * PlayCore SplitCompatEngine Context. Class used to segregate external dependencies that - * cannot be easily mocked and simplify the engine's design. + * PlayCore SplitCompatEngine Context. Class used to segregate external dependencies that cannot be + * easily mocked and simplify the engine's design. */ class SplitCompatEngineFacade { - private final SplitInstallManager mSplitManager; - private final Logger mLogger; - +- public SplitCompatEngineFacade() { -- this( -- SplitInstallManagerFactory.create(ContextUtils.getApplicationContext()), -- new PlayCoreLogger()); -+ this(new PlayCoreLogger()); +- this(SplitInstallManagerFactory.create(ContextUtils.getApplicationContext())); } -- public SplitCompatEngineFacade(SplitInstallManager manager, Logger umaLogger) { +- public SplitCompatEngineFacade(SplitInstallManager manager) { - mSplitManager = manager; -+ public SplitCompatEngineFacade(Logger umaLogger) { - mLogger = umaLogger; - } - -@@ -39,25 +35,14 @@ class SplitCompatEngineFacade { - return mLogger; - } - +- } +- - public SplitInstallManager getSplitManager() { - return mSplitManager; - } -- + public void installActivity(Activity activity) { - // Note that SplitCompat (install) needs to be called on the Application Context prior - // to calling this method - this is guaranteed by the behavior of SplitCompatEngine. @@ -217,281 +178,22 @@ diff --git a/components/module_installer/android/java/src/org/chromium/component - - public SplitInstallRequest createSplitInstallRequest(String moduleName) { - return SplitInstallRequest.newBuilder().addModule(moduleName).build(); -+ //ModuleUtil.notifyModuleInstalled(); } public void updateCrashKeys() { - ModuleUtil.updateCrashKeys(); -+ //ModuleUtil.updateCrashKeys(); - } - } -diff --git a/components/module_installer/android/java/src/org/chromium/components/module_installer/logger/Logger.java b/components/module_installer/android/java/src/org/chromium/components/module_installer/logger/Logger.java ---- a/components/module_installer/android/java/src/org/chromium/components/module_installer/logger/Logger.java -+++ b/components/module_installer/android/java/src/org/chromium/components/module_installer/logger/Logger.java -@@ -4,9 +4,6 @@ - - package org.chromium.components.module_installer.logger; - --import com.google.android.play.core.splitinstall.model.SplitInstallErrorCode; --import com.google.android.play.core.splitinstall.model.SplitInstallSessionStatus; -- - /** Logger for SplitCompat Engine. */ - public interface Logger { - /** -@@ -15,7 +12,7 @@ public interface Logger { - * @param moduleName The module name. - * @param errorCode The error code. - */ -- void logRequestFailure(String moduleName, @SplitInstallErrorCode int errorCode); -+ void logRequestFailure(String moduleName, int errorCode); - - /** - * Logs exceptions that happen during the installation process. -@@ -23,7 +20,7 @@ public interface Logger { - * @param moduleName The module name. - * @param errorCode The error code. - */ -- void logStatusFailure(String moduleName, @SplitInstallErrorCode int errorCode); -+ void logStatusFailure(String moduleName, int errorCode); - - /** - * Logs the status count and duration during a module installation process. -@@ -31,7 +28,7 @@ public interface Logger { - * @param moduleName The module name - * @param status The status code - */ -- void logStatus(String moduleName, @SplitInstallSessionStatus int status); -+ void logStatus(String moduleName, int status); - - /** - * Logs the request start time. -@@ -46,11 +43,4 @@ public interface Logger { - * @param moduleName The module name. - */ - void logRequestDeferredStart(String moduleName); -- -- /** -- * Gets the error code for an unknown error thrown at module request time. -- * -- * @return The error code. -- */ -- int getUnknownRequestErrorCode(); - } -diff --git a/components/module_installer/android/java/src/org/chromium/components/module_installer/logger/PlayCoreLogger.java b/components/module_installer/android/java/src/org/chromium/components/module_installer/logger/PlayCoreLogger.java ---- a/components/module_installer/android/java/src/org/chromium/components/module_installer/logger/PlayCoreLogger.java -+++ b/components/module_installer/android/java/src/org/chromium/components/module_installer/logger/PlayCoreLogger.java -@@ -4,74 +4,38 @@ - - package org.chromium.components.module_installer.logger; - --import com.google.android.play.core.splitinstall.model.SplitInstallErrorCode; --import com.google.android.play.core.splitinstall.model.SplitInstallSessionStatus; -- - /** Concrete Logger for SplitCompat Installers (proxy to specific loggers). */ - public class PlayCoreLogger implements Logger { -- private final SplitInstallFailureLogger mFailureLogger; -- private final SplitInstallStatusLogger mStatusLogger; -- private final SplitAvailabilityLogger mAvailabilityLogger; -- - public PlayCoreLogger() { - this( -- new SplitInstallFailureLogger(), -- new SplitInstallStatusLogger(), -- new SplitAvailabilityLogger()); -+ null, -+ null, -+ null); - } - - public PlayCoreLogger( -- SplitInstallFailureLogger failureLogger, -+ Object failureLogger, - SplitInstallStatusLogger statusLogger, - SplitAvailabilityLogger availabilityLogger) { -- mFailureLogger = failureLogger; -- mStatusLogger = statusLogger; -- mAvailabilityLogger = availabilityLogger; - } - - @Override -- public void logRequestFailure(String moduleName, @SplitInstallErrorCode int errorCode) { -- mFailureLogger.logRequestFailure(moduleName, errorCode); -+ public void logRequestFailure(String moduleName, int errorCode) { - } - - @Override -- public void logStatusFailure(String moduleName, @SplitInstallErrorCode int errorCode) { -- mFailureLogger.logStatusFailure(moduleName, errorCode); -+ public void logStatusFailure(String moduleName, int errorCode) { - } - - @Override -- public void logStatus(String moduleName, @SplitInstallSessionStatus int status) { -- mStatusLogger.logStatusChange(moduleName, status); -- -- if (status == SplitInstallSessionStatus.INSTALLED) { -- mAvailabilityLogger.storeModuleInstalled(moduleName, status); -- mAvailabilityLogger.logInstallTimes(moduleName); -- -- // Keep old behavior where we log a 'success' bit with all other failures. -- mFailureLogger.logStatusSuccess(moduleName); -- } else if (status == SplitInstallSessionStatus.CANCELED) { -- // Keep old behavior where we log a 'canceled' bit with all other failures. -- mFailureLogger.logStatusCanceled(moduleName); -- } else if (status == SplitInstallSessionStatus.DOWNLOADED) { -- // Keep old behavior where we log a 'no split compat' bit with all other failures. -- mFailureLogger.logStatusNoSplitCompat(moduleName); -- } -+ public void logStatus(String moduleName, int status) { - } - - @Override - public void logRequestStart(String moduleName) { -- mStatusLogger.logRequestStart(moduleName); -- mAvailabilityLogger.storeRequestStart(moduleName); - } - - @Override - public void logRequestDeferredStart(String moduleName) { -- mStatusLogger.logRequestDeferredStart(moduleName); -- mAvailabilityLogger.storeRequestDeferredStart(moduleName); -- } -- -- @Override -- public int getUnknownRequestErrorCode() { -- return SplitInstallFailureLogger.UNKNOWN_REQUEST_ERROR; } } -diff --git a/components/module_installer/android/java/src/org/chromium/components/module_installer/logger/SplitAvailabilityLogger.java b/components/module_installer/android/java/src/org/chromium/components/module_installer/logger/SplitAvailabilityLogger.java ---- a/components/module_installer/android/java/src/org/chromium/components/module_installer/logger/SplitAvailabilityLogger.java -+++ b/components/module_installer/android/java/src/org/chromium/components/module_installer/logger/SplitAvailabilityLogger.java -@@ -9,10 +9,6 @@ import android.content.SharedPreferences; - import android.os.SystemClock; - import android.util.SparseLongArray; - --import com.google.android.play.core.splitinstall.SplitInstallManager; --import com.google.android.play.core.splitinstall.SplitInstallManagerFactory; --import com.google.android.play.core.splitinstall.model.SplitInstallSessionStatus; -- - import org.chromium.base.ContextUtils; - import org.chromium.base.metrics.RecordHistogram; - -@@ -50,21 +46,6 @@ public class SplitAvailabilityLogger { - Set requestedModules = new HashSet<>(); - requestedModules.addAll(prefs.getStringSet(ONDEMAND_REQ_PREV, new HashSet<>())); - requestedModules.addAll(prefs.getStringSet(DEFERRED_REQ_PREV, new HashSet<>())); -- -- Context context = ContextUtils.getApplicationContext(); -- SplitInstallManager manager = SplitInstallManagerFactory.create(context); -- Set installedModules = manager.getInstalledModules(); -- -- for (String name : requestedModules) { -- recordAvailabilityStatus( -- name, installedModules.contains(name) ? INSTALLED_REQUESTED : REQUESTED); -- } -- -- for (String name : installedModules) { -- if (!requestedModules.contains(name)) { -- recordAvailabilityStatus(name, INSTALLED_UNREQUESTED); -- } -- } - } - - private static void recordAvailabilityStatus(String moduleName, int status) { -@@ -78,26 +59,6 @@ public class SplitAvailabilityLogger { - * @param moduleName The module name. - */ - public void logInstallTimes(String moduleName) { -- recordInstallTime( -- moduleName, -- "", -- SplitInstallSessionStatus.UNKNOWN, -- SplitInstallSessionStatus.INSTALLED); -- recordInstallTime( -- moduleName, -- ".PendingDownload", -- SplitInstallSessionStatus.UNKNOWN, -- SplitInstallSessionStatus.DOWNLOADING); -- recordInstallTime( -- moduleName, -- ".Download", -- SplitInstallSessionStatus.DOWNLOADING, -- SplitInstallSessionStatus.INSTALLING); -- recordInstallTime( -- moduleName, -- ".Installing", -- SplitInstallSessionStatus.INSTALLING, -- SplitInstallSessionStatus.INSTALLED); - } - - /** -@@ -184,7 +145,6 @@ public class SplitAvailabilityLogger { - - public InstallTimes(boolean isCached) { - mIsCached = isCached; -- mInstallTimes.put(SplitInstallSessionStatus.UNKNOWN, SystemClock.uptimeMillis()); - } - } - } -diff --git a/components/module_installer/android/java/src/org/chromium/components/module_installer/logger/SplitInstallStatusLogger.java b/components/module_installer/android/java/src/org/chromium/components/module_installer/logger/SplitInstallStatusLogger.java ---- a/components/module_installer/android/java/src/org/chromium/components/module_installer/logger/SplitInstallStatusLogger.java -+++ b/components/module_installer/android/java/src/org/chromium/components/module_installer/logger/SplitInstallStatusLogger.java -@@ -4,8 +4,6 @@ - - package org.chromium.components.module_installer.logger; - --import com.google.android.play.core.splitinstall.model.SplitInstallSessionStatus; -- - import org.chromium.base.metrics.RecordHistogram; - - class SplitInstallStatusLogger { -@@ -28,33 +26,7 @@ class SplitInstallStatusLogger { - // Keep this one at the end and increment appropriately when adding new status. - private static final int COUNT = 12; - -- private int getHistogramCode(@SplitInstallSessionStatus int code) { -- switch (code) { -- case SplitInstallSessionStatus.PENDING: -- return PENDING; -- case SplitInstallSessionStatus.DOWNLOADING: -- return DOWNLOADING; -- case SplitInstallSessionStatus.DOWNLOADED: -- return DOWNLOADED; -- case SplitInstallSessionStatus.INSTALLING: -- return INSTALLING; -- case SplitInstallSessionStatus.INSTALLED: -- return INSTALLED; -- case SplitInstallSessionStatus.FAILED: -- return FAILED; -- case SplitInstallSessionStatus.CANCELING: -- return CANCELING; -- case SplitInstallSessionStatus.CANCELED: -- return CANCELED; -- case SplitInstallSessionStatus.REQUIRES_USER_CONFIRMATION: -- return REQUIRES_USER_CONFIRMATION; -- } -- -- return UNKNOWN_CODE; -- } -- -- public void logStatusChange(String moduleName, @SplitInstallSessionStatus int status) { -- recordInstallStatus(moduleName, getHistogramCode(status)); -+ public void logStatusChange(String moduleName, int status) { - } - - public void logRequestStart(String moduleName) { diff --git a/components/module_installer/android/java/src/org/chromium/components/module_installer/util/ModuleUtil.java b/components/module_installer/android/java/src/org/chromium/components/module_installer/util/ModuleUtil.java --- a/components/module_installer/android/java/src/org/chromium/components/module_installer/util/ModuleUtil.java +++ b/components/module_installer/android/java/src/org/chromium/components/module_installer/util/ModuleUtil.java -@@ -23,11 +23,6 @@ public class ModuleUtil { - +@@ -10,9 +10,6 @@ import org.chromium.build.BuildConfig; + public class ModuleUtil { /** Updates the CrashKey report containing modules currently present. */ public static void updateCrashKeys() { -- if (!BundleUtils.isBundle()) return; +- if (!BuildConfig.IS_BUNDLE) return; - -- try (Timer timer = new Timer()) { -- CrashKeyRecorder.updateCrashKeys(); -- } +- CrashKeyRecorder.updateCrashKeys(); } /** Initializes the PlayCore SplitCompat framework. */ diff --git a/build/cromite_patches/User-agent-customization.patch b/build/cromite_patches/User-agent-customization.patch index 0adfa00143538b10355defb6c7b697b539ba2a2d..c1d2961e13125757c31796864f66912fed8001bc 100644 --- a/build/cromite_patches/User-agent-customization.patch +++ b/build/cromite_patches/User-agent-customization.patch @@ -80,7 +80,7 @@ diff --git a/base/base_switches.h b/base/base_switches.h 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 -@@ -643,4 +643,6 @@ chrome_java_resources = [ +@@ -644,4 +644,6 @@ chrome_java_resources = [ "java/res/xml/search_widget_info.xml", "java/res/xml/tracing_preferences.xml", "java/res/xml/unified_account_settings_preferences.xml", @@ -90,7 +90,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 -@@ -931,6 +931,7 @@ chrome_java_sources = [ +@@ -932,6 +932,7 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/payments/ui/DimmingDialog.java", "java/src/org/chromium/chrome/browser/payments/ui/LineItem.java", "java/src/org/chromium/chrome/browser/payments/ui/PaymentAppComparator.java", @@ -212,9 +212,9 @@ new file mode 100644 diff --git a/chrome/android/java/res/xml/main_preferences.xml b/chrome/android/java/res/xml/main_preferences.xml --- a/chrome/android/java/res/xml/main_preferences.xml +++ b/chrome/android/java/res/xml/main_preferences.xml -@@ -132,6 +132,11 @@ found in the LICENSE file. +@@ -146,6 +146,11 @@ for the previous order (main_preferences_legacy). --> android:key="content_settings" - android:order="23" + android:order="25" android:title="@string/prefs_site_settings"/> + +@@ -2659,6 +2659,7 @@ public abstract class ChromeActivity TabUtils.switchUserAgent( currentTab, usingDesktopUserAgent, @@ -268,7 +268,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/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 -@@ -21,6 +21,7 @@ import org.chromium.chrome.browser.profiles.ProfileManager; +@@ -22,6 +22,7 @@ import org.chromium.chrome.browser.profiles.ProfileManager; import org.chromium.chrome.browser.signin.SigninCheckerProvider; import org.chromium.components.background_task_scheduler.BackgroundTaskSchedulerFactory; import org.chromium.content_public.browser.BrowserStartupController; @@ -276,7 +276,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrow import java.util.ArrayList; import java.util.List; -@@ -229,11 +230,13 @@ public class ChromeBrowserInitializer { +@@ -231,11 +232,13 @@ public class ChromeBrowserInitializer { @Override public void onSuccess() { @@ -560,7 +560,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav import org.chromium.components.dom_distiller.core.DomDistillerUrlUtils; import org.chromium.components.embedder_support.contextmenu.ContextMenuPopulatorFactory; import org.chromium.components.embedder_support.util.UrlConstants; -@@ -98,6 +101,9 @@ import org.chromium.chrome.browser.preferences.Pref; +@@ -100,6 +103,9 @@ import org.chromium.chrome.browser.preferences.Pref; import org.chromium.chrome.browser.profiles.ProfileManager; import org.chromium.components.user_prefs.UserPrefs; @@ -570,7 +570,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav /** * Implementation of the interface {@link Tab}. Contains and manages a {@link ContentView}. This * class is not intended to be extended. -@@ -1968,9 +1974,6 @@ class TabImpl implements Tab { +@@ -1988,9 +1994,6 @@ class TabImpl implements Tab { } if (mWebContents != null) { @@ -580,7 +580,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav mWebContents.getNavigationController().loadIfNecessary(); } mIsBeingRestored = true; -@@ -2289,6 +2292,11 @@ class TabImpl implements Tab { +@@ -2309,6 +2312,11 @@ class TabImpl implements Tab { url = webContents.getVisibleUrl(); } @@ -592,7 +592,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav // Do not override UA if there is a tab level setting. if (tabUserAgent != TabUserAgent.DEFAULT) { recordHistogramUseDesktopUserAgent(currentRequestDesktopSite); -@@ -2334,7 +2342,7 @@ class TabImpl implements Tab { +@@ -2354,7 +2362,7 @@ class TabImpl implements Tab { } boolean usingDesktopUserAgent = getWebContents().getNavigationController().getUseDesktopUserAgent(); @@ -601,7 +601,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav } /** Sets the TabLaunchType for tabs launched with an unset launch type. */ -@@ -2371,6 +2379,54 @@ class TabImpl implements Tab { +@@ -2391,6 +2399,54 @@ class TabImpl implements Tab { return mWebContentsDelegate.isTrustedWebActivity(getWebContents()); } @@ -956,7 +956,7 @@ diff --git a/chrome/browser/content_settings/request_desktop_site_web_contents_o 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 -@@ -1040,8 +1040,6 @@ public final class ChromePreferenceKeys { +@@ -1043,8 +1043,6 @@ public final class ChromePreferenceKeys { SIGNIN_PROMO_NTP_LAST_SHOWN_TIME, SYNC_PROMO_TOTAL_SHOW_COUNT, SEARCH_RESUMPTION_MODULE_COLLAPSE_ON_NTP, @@ -998,7 +998,7 @@ diff --git a/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/Tab.jav diff --git a/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browser/tabmodel/TabWindowManager.java b/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browser/tabmodel/TabWindowManager.java --- a/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browser/tabmodel/TabWindowManager.java +++ b/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browser/tabmodel/TabWindowManager.java -@@ -112,6 +112,8 @@ public interface TabWindowManager { +@@ -115,6 +115,8 @@ public interface TabWindowManager { */ Tab getTabById(int tabId); @@ -1074,7 +1074,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd 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 -@@ -1928,6 +1928,14 @@ inline constexpr char kNaviOnboardGroup[] = "browser.navi_onboard_group"; +@@ -1944,6 +1944,14 @@ inline constexpr char kNaviOnboardGroup[] = "browser.navi_onboard_group"; inline constexpr char kHadThreeConsecutiveNotificationPermissionDenies[] = "profile.content_settings.had_three_consecutive_denies.notifications"; @@ -1262,7 +1262,7 @@ diff --git a/content/browser/renderer_host/navigation_controller_android.h b/con diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc --- a/content/browser/renderer_host/render_process_host_impl.cc +++ b/content/browser/renderer_host/render_process_host_impl.cc -@@ -3445,6 +3445,7 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer( +@@ -3499,6 +3499,7 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer( switches::kLacrosUseChromeosProtectedMedia, switches::kLacrosUseChromeosProtectedAv1, #endif @@ -1281,7 +1281,7 @@ diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser #include "base/base_switches.h" #include "base/check_op.h" #include "base/command_line.h" -@@ -2211,8 +2212,6 @@ void WebContentsImpl::SetUserAgentOverride( +@@ -2239,8 +2240,6 @@ void WebContentsImpl::SetUserAgentOverride( OPTIONAL_TRACE_EVENT2("content", "WebContentsImpl::SetUserAgentOverride", "ua_override", ua_override.ua_string_override, "override_in_new_tabs", override_in_new_tabs); @@ -1290,7 +1290,7 @@ diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser if (GetUserAgentOverride() == ua_override) { return; -@@ -3247,6 +3246,9 @@ const blink::web_pref::WebPreferences WebContentsImpl::ComputeWebPreferences() { +@@ -3286,6 +3285,9 @@ const blink::web_pref::WebPreferences WebContentsImpl::ComputeWebPreferences() { #else prefs.viewport_meta_enabled = false; #endif diff --git a/build/cromite_patches/Welcome-screen.patch b/build/cromite_patches/Welcome-screen.patch index 7a187ca70b1e47f213029a359b9cded288535a4f..be6ad971dd36db779fc1a0a21109ba997639e070 100644 --- a/build/cromite_patches/Welcome-screen.patch +++ b/build/cromite_patches/Welcome-screen.patch @@ -13,23 +13,24 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html chrome/android/java/res/values/styles.xml | 24 ++ .../firstrun/ChildAccountStatusSupplier.java | 13 - .../DefaultSearchEngineFirstRunFragment.java | 3 - - .../browser/firstrun/FirstRunActivity.java | 31 +- + .../browser/firstrun/FirstRunActivity.java | 32 +- .../firstrun/FirstRunActivityBase.java | 6 +- .../firstrun/FirstRunFlowSequencer.java | 70 +--- .../browser/firstrun/FirstRunUtils.java | 1 + .../firstrun/ToSAndUMAFirstRunFragment.java | 335 +++++++++++++++++ .../firstrun/TosAndUmaFragmentView.java | 336 ++++++++++++++++++ .../browser/locale/LocaleManagerDelegate.java | 5 +- - .../strings/android_chrome_strings.grd | 24 +- - 15 files changed, 911 insertions(+), 110 deletions(-) + .../Welcome-screen.grdp | 27 ++ + 15 files changed, 915 insertions(+), 110 deletions(-) create mode 100644 chrome/android/java/res/layout/fre_tosanduma.xml create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAndUMAFirstRunFragment.java create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/firstrun/TosAndUmaFragmentView.java + create mode 100644 chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Welcome-screen.grdp 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 -@@ -507,6 +507,7 @@ chrome_java_resources = [ +@@ -508,6 +508,7 @@ chrome_java_resources = [ "java/res/layout/find_in_page.xml", "java/res/layout/find_toolbar.xml", "java/res/layout/fre_tos_privacy_disclaimer.xml", @@ -177,7 +178,7 @@ new file mode 100644 + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_gravity="center" -+ android:text="@string/fre_accept_continue" ++ android:text="@string/fre_continue" + android:animateLayoutChanges="true" + style="@style/FreAcceptTosButton" /> + @@ -217,7 +218,7 @@ new file mode 100644 diff --git a/chrome/android/java/res/values/dimens.xml b/chrome/android/java/res/values/dimens.xml --- a/chrome/android/java/res/values/dimens.xml +++ b/chrome/android/java/res/values/dimens.xml -@@ -107,6 +107,16 @@ found in the LICENSE file. +@@ -104,6 +104,16 @@ found in the LICENSE file. 48dp 18dp 8dp @@ -261,7 +262,7 @@ diff --git a/chrome/android/java/res/values/styles.xml b/chrome/android/java/res + -+ + @@ -320,16 +321,16 @@ 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 -@@ -31,8 +31,7 @@ import org.chromium.chrome.browser.fonts.FontPreloader; +@@ -30,8 +30,7 @@ import org.chromium.chrome.browser.fonts.FontPreloader; import org.chromium.chrome.browser.metrics.UmaUtils; import org.chromium.chrome.browser.profiles.Profile; import org.chromium.chrome.browser.search_engines.TemplateUrlServiceFactory; -import org.chromium.chrome.browser.signin.SigninCheckerProvider; -import org.chromium.chrome.browser.signin.SigninFirstRunFragment; +import org.chromium.chrome.browser.firstrun.ToSAndUMAFirstRunFragment; + import org.chromium.chrome.browser.ui.signin.DialogWhenLargeContentLayout; import org.chromium.chrome.browser.ui.signin.SigninUtils; import org.chromium.chrome.browser.ui.signin.history_sync.HistorySyncHelper; - import org.chromium.chrome.browser.ui.system.StatusBarColorController; @@ -126,7 +125,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() { @@ -347,12 +348,12 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR mFirstRunFlowSequencer.updateFirstRunProperties(mFreProperties); -@@ -163,26 +161,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa +@@ -163,27 +161,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa mFreProgressStates.add(MobileFreProgress.DEFAULT_SEARCH_ENGINE_SHOWN); } -- // An optional sync consent page, the visibility of this page will be decided on the fly -- // according to the situation. +- // An optional history sync opt-in page, the visibility of this page will be decided on the +- // fly according to the situation. - if (ChromeFeatureList.isEnabled( - ChromeFeatureList.REPLACE_SYNC_PROMOS_WITH_SIGN_IN_PROMOS)) { - BooleanSupplier showHistorySync = @@ -364,17 +365,18 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR - historySyncHelper.recordHistorySyncNotShown(SigninAccessPoint.START_PAGE); - } - mPages.add(new FirstRunPage<>(HistorySyncFirstRunFragment.class, showHistorySync)); +- mFreProgressStates.add(MobileFreProgress.HISTORY_SYNC_OPT_IN_SHOWN); - } else { - BooleanSupplier showSyncConsent = - () -> mFreProperties.getBoolean(SHOW_SYNC_CONSENT_PAGE); - mPages.add(new FirstRunPage<>(SyncConsentFirstRunFragment.class, showSyncConsent)); +- mFreProgressStates.add(MobileFreProgress.SYNC_CONSENT_SHOWN); - } -- mFreProgressStates.add(MobileFreProgress.SYNC_CONSENT_SHOWN); - if (mPagerAdapter != null) { mPagerAdapter.notifyDataSetChanged(); } -@@ -559,11 +537,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa +@@ -558,11 +535,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa public void acceptTermsOfService(boolean allowMetricsAndCrashUploading) { assert mNativeInitializationPromise.isFulfilled(); @@ -759,13 +761,13 @@ new file mode 100644 + private void updateTosText() { + List spans = new LinkedList(); + -+ spans.add(buildPrivacyPolicyLink("1", R.string.adblock_wiki_url)); ++ spans.add(buildPrivacyPolicyLink("1", R.string.privacy_link1)); + -+ spans.add(buildPrivacyPolicyLink("2", R.string.adblock_updater_privacy_policy_url)); ++ spans.add(buildPrivacyPolicyLink("2", R.string.privacy_link2)); + -+ spans.add(buildPrivacyPolicyLink("3", R.string.auto_updates_wiki_url)); ++ spans.add(buildPrivacyPolicyLink("3", R.string.privacy_link3)); + -+ spans.add(buildPrivacyPolicyLink("4", R.string.bromite_updater_privacy_policy_url)); ++ spans.add(buildPrivacyPolicyLink("4", R.string.privacy_link4)); + + String tosString = getString(R.string.bromite_fre_footer_privacy_policy); + @@ -1239,7 +1241,7 @@ new file mode 100644 diff --git a/chrome/browser/locale/java/src/org/chromium/chrome/browser/locale/LocaleManagerDelegate.java b/chrome/browser/locale/java/src/org/chromium/chrome/browser/locale/LocaleManagerDelegate.java --- a/chrome/browser/locale/java/src/org/chromium/chrome/browser/locale/LocaleManagerDelegate.java +++ b/chrome/browser/locale/java/src/org/chromium/chrome/browser/locale/LocaleManagerDelegate.java -@@ -324,8 +324,9 @@ public class LocaleManagerDelegate { +@@ -311,8 +311,9 @@ public class LocaleManagerDelegate { /** @see LocaleManager#getSearchEnginesForPromoDialog */ public List getSearchEnginesForPromoDialog(@SearchEnginePromoType int promoType) { @@ -1251,38 +1253,36 @@ diff --git a/chrome/browser/locale/java/src/org/chromium/chrome/browser/locale/L } /** @see LocaleManager#onUserSearchEngineChoice */ -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 -@@ -3634,7 +3634,29 @@ To change this setting, BEGIN_LINKdelete the Chrome d - %1$sGoogle Maps will open in Chrome. By continuing, you agree to the <LINK1>Google Terms of Service</LINK1>, and the <LINK2>Google Chrome and ChromeOS Additional Terms of Service</LINK2>. The <LINK3>Privacy Policy</LINK3> also applies. - - -- Accept & continue +diff --git a/chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Welcome-screen.grdp b/chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Welcome-screen.grdp +new file mode 100644 +--- /dev/null ++++ b/chrome/browser/ui/android/strings/cromite_android_chrome_strings_grd/Welcome-screen.grdp +@@ -0,0 +1,27 @@ ++ ++ ++ + Continue -+ -+ -+ https://docs.github.com/en/github/site-policy/github-privacy-statement#github-pages -+ -+ -+ https://docs.github.com/en/github/site-policy/github-privacy-statement#github-pages -+ -+ -+ <PRIVACY_LINK1>Automatic ad block filters updates</PRIVACY_LINK1> are subject to the <PRIVACY_LINK2>GitHub Privacy statement</PRIVACY_LINK2>; they cannot be disabled. -+ The following checkbox controls instead <PRIVACY_LINK3>automatic app updates</PRIVACY_LINK3> which are also subject to the <PRIVACY_LINK4>GitHub Privacy statement</PRIVACY_LINK4>. -+ -+ ++ ++ + Automatic checks for Bromite app updates -+ -+ ++ ++ ++ ++ <PRIVACY_LINK1>Automatic ad block filters updates</PRIVACY_LINK1> are subject to the <PRIVACY_LINK2>Cromite Privacy statement</PRIVACY_LINK2>. ++The following checkbox controls instead <PRIVACY_LINK3>automatic app updates</PRIVACY_LINK3> which are subject to the <PRIVACY_LINK4>GitHub Privacy statement</PRIVACY_LINK4>. ++ ++ ++ ++ https://github.com/uazo/cromite/blob/master/docs/ADBLOCKING.md ++ ++ ++ https://github.com/uazo/cromite/blob/master/docs/PRIVACY_POLICY.md ++ ++ ++ https://github.com/uazo/cromite/blob/master/docs/AUTOMATIC_UPDATES.md ++ ++ + https://docs.github.com/en/github/site-policy/github-privacy-statement#github-pages -+ -+ -+ https://github.com/uazo/cromite/wiki/AdBlocking -+ -+ -+ https://github.com/uazo/cromite/wiki/AutomaticUpdates - - - Welcome to Chrome ++ ++ -- diff --git a/build/cromite_patches/autofill-miscellaneous.patch b/build/cromite_patches/autofill-miscellaneous.patch index b99e51092eb817c006d892f3c480e7d2cfb50eb4..ed527d45104ee7e720d8f860f59758d94174c466 100644 --- a/build/cromite_patches/autofill-miscellaneous.patch +++ b/build/cromite_patches/autofill-miscellaneous.patch @@ -22,7 +22,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc --- a/chrome/browser/prefs/browser_prefs.cc +++ b/chrome/browser/prefs/browser_prefs.cc -@@ -1216,7 +1216,7 @@ void RegisterProfilePrefsForMigration( +@@ -1272,7 +1272,7 @@ void RegisterProfilePrefsForMigration( #endif // Deprecated 12/2023. @@ -34,7 +34,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse 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 -@@ -212,12 +212,7 @@ ChromeAutofillClient::GetURLLoaderFactory() { +@@ -215,12 +215,7 @@ ChromeAutofillClient::GetURLLoaderFactory() { } AutofillCrowdsourcingManager* ChromeAutofillClient::GetCrowdsourcingManager() { @@ -102,7 +102,7 @@ diff --git a/components/autofill/core/browser/crowdsourcing/autofill_crowdsourci } std::optional>& GetActiveExperiments() { -@@ -800,34 +765,13 @@ size_t AutofillCrowdsourcingManager::GetPayloadLength( +@@ -865,34 +830,13 @@ size_t AutofillCrowdsourcingManager::GetPayloadLength( std::tuple AutofillCrowdsourcingManager::GetRequestURLAndMethod( const FormRequestData& request_data) const { @@ -156,7 +156,7 @@ diff --git a/components/autofill/core/browser/crowdsourcing/autofill_crowdsourci 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 -@@ -1007,6 +1007,8 @@ BASE_FEATURE(kAutofillUploadThrottling, +@@ -893,6 +893,8 @@ BASE_FEATURE(kAutofillUploadThrottling, "AutofillUploadThrottling", base::FEATURE_ENABLED_BY_DEFAULT); @@ -205,7 +205,7 @@ diff --git a/components/autofill/core/common/autofill_prefs.cc b/components/auto diff --git a/components/password_manager/core/browser/password_generation_frame_helper.cc b/components/password_manager/core/browser/password_generation_frame_helper.cc --- a/components/password_manager/core/browser/password_generation_frame_helper.cc +++ b/components/password_manager/core/browser/password_generation_frame_helper.cc -@@ -100,7 +100,6 @@ void PasswordGenerationFrameHelper::ProcessPasswordRequirements( +@@ -101,7 +101,6 @@ void PasswordGenerationFrameHelper::ProcessPasswordRequirements( // In order for password generation to be enabled, we need to make sure: // (1) Password sync is enabled, and // (2) Password saving is enabled @@ -213,7 +213,7 @@ diff --git a/components/password_manager/core/browser/password_generation_frame_ bool PasswordGenerationFrameHelper::IsGenerationEnabled( bool log_debug_data) const { std::unique_ptr logger; -@@ -110,10 +109,6 @@ bool PasswordGenerationFrameHelper::IsGenerationEnabled( +@@ -111,10 +110,6 @@ bool PasswordGenerationFrameHelper::IsGenerationEnabled( } GURL url = driver_->GetLastCommittedURL(); diff --git a/build/cromite_patches/bromite-build-utils.patch b/build/cromite_patches/bromite-build-utils.patch index 323cf2e10f6ac276ecffd83d4868ec83571b70d0..bf2d46b60cf95464d8d9c588eaf7abc8edf5e6de 100644 --- a/build/cromite_patches/bromite-build-utils.patch +++ b/build/cromite_patches/bromite-build-utils.patch @@ -130,7 +130,7 @@ diff --git a/build/android/gyp/java_cpp_enum.py b/build/android/gyp/java_cpp_enu diff --git a/build/android/gyp/util/build_utils.py b/build/android/gyp/util/build_utils.py --- a/build/android/gyp/util/build_utils.py +++ b/build/android/gyp/util/build_utils.py -@@ -499,4 +499,27 @@ def ReadSourcesList(sources_list_file_name): +@@ -502,4 +502,27 @@ def ReadSourcesList(sources_list_file_name): Note that this function should not be used to parse response files. """ with open(sources_list_file_name) as f: @@ -426,7 +426,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 -@@ -727,6 +727,7 @@ set_defaults("component") { +@@ -728,6 +728,7 @@ set_defaults("component") { configs = default_component_configs } diff --git a/build/cromite_patches/disable-AdsBlockedInfoBar.patch b/build/cromite_patches/disable-AdsBlockedInfoBar.patch index 282088f54ea4241d205bfe19546380a0b777b431..d67ea8dd96461778047b880e58e320169fe46972 100644 --- a/build/cromite_patches/disable-AdsBlockedInfoBar.patch +++ b/build/cromite_patches/disable-AdsBlockedInfoBar.patch @@ -71,5 +71,5 @@ diff --git a/components/subresource_filter/content/browser/profile_interaction_m - } } - content::WebContents* ProfileInteractionManager::GetWebContents() { + content_settings::CookieSettings* -- diff --git a/build/cromite_patches/disable-WebView-variations-support.patch b/build/cromite_patches/disable-WebView-variations-support.patch index c1488a42167e4a1f53ba38d4e8108271cc9efee5..6b1bec351bc8e866f355cbe43521d4063dae0a67 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 -@@ -248,12 +248,6 @@ public class WebViewChromiumAwInit { +@@ -244,12 +244,6 @@ public class WebViewChromiumAwInit { AwBrowserProcess.configureChildProcessLauncher(); @@ -28,7 +28,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 -@@ -528,10 +528,6 @@ public class WebViewChromiumFactoryProvider implements WebViewFactoryProvider { +@@ -521,10 +521,6 @@ public class WebViewChromiumFactoryProvider implements WebViewFactoryProvider { } } 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 91e246f0a97ab7a21629d774e7e720fea4c245f3..292ae19c8dc835174a1df5348781dea8d81df71f 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 -@@ -384,6 +384,10 @@ config("compiler") { +@@ -387,6 +387,10 @@ config("compiler") { cflags += [ "-fwrapv" ] } diff --git a/build/cromite_patches/eyeo-beta-118.0.5993.48-android_api.patch b/build/cromite_patches/eyeo-beta-118.0.5993.48-android_api.patch index c054903e39ca824cbaf8c17f0036752a1c34fa44..d7369e8346b049d907c404f3006b235e5cfc959f 100644 --- a/build/cromite_patches/eyeo-beta-118.0.5993.48-android_api.patch +++ b/build/cromite_patches/eyeo-beta-118.0.5993.48-android_api.patch @@ -97,7 +97,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn import("//build/android/resource_sizes.gni") import("//build/config/android/config.gni") -@@ -541,6 +545,7 @@ if (current_toolchain == default_toolchain) { +@@ -552,6 +556,7 @@ if (current_toolchain == default_toolchain) { "//chrome/browser/xsurface_provider:java", "//components/android_autofill/browser:java", "//components/autofill/android:autofill_features_java", @@ -105,7 +105,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn "//components/autofill/android:autofill_java", "//components/background_task_scheduler:background_task_scheduler_java", "//components/background_task_scheduler:background_task_scheduler_task_ids_java", -@@ -1684,6 +1689,7 @@ if (current_toolchain == default_toolchain) { +@@ -1708,6 +1713,7 @@ if (current_toolchain == default_toolchain) { "//chrome/android/webapk/libs/client:client_java", "//chrome/android/webapk/libs/common:common_java", "//chrome/android/webapk/libs/runtime_library:webapk_service_aidl_java", @@ -113,7 +113,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn "//chrome/browser/android/browserservices/intents:java", "//chrome/browser/android/browserservices/verification:java", "//chrome/browser/android/browserservices/verification:javatests", -@@ -2050,6 +2056,7 @@ if (current_toolchain == default_toolchain) { +@@ -2075,6 +2081,7 @@ if (current_toolchain == default_toolchain) { srcjar_deps = [ "//chrome/browser:tos_dialog_behavior_generated_enum" ] data = [ @@ -121,7 +121,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn "//chrome/test/data/android/", "//chrome/test/data/autofill/", "//chrome/test/data/background_sync/", -@@ -3914,6 +3921,7 @@ group("jni_headers") { +@@ -3938,6 +3945,7 @@ group("jni_headers") { "//chrome/browser/util:jni_headers", "//chrome/browser/webauthn/android:jni_headers", "//components/browser_ui/device_lock/android:device_lock_bridge_jni_headers", @@ -132,7 +132,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -2545,6 +2545,18 @@ static_library("browser") { +@@ -2555,6 +2555,18 @@ static_library("browser") { } if (is_android) { @@ -643,7 +643,7 @@ new file mode 100644 diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc --- a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc +++ b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc -@@ -294,6 +294,11 @@ +@@ -297,6 +297,11 @@ #include "components/commerce/core/commerce_feature_list.h" #include "components/commerce/core/proto/merchant_signal_db_content.pb.h" @@ -655,7 +655,7 @@ diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc #else #include "chrome/browser/accessibility/live_caption/live_caption_controller_factory.h" -@@ -883,6 +888,11 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -908,6 +913,11 @@ void ChromeBrowserMainExtraPartsProfiles:: #if BUILDFLAG(IS_ANDROID) FastCheckoutCapabilitiesFetcherFactory::GetInstance(); diff --git a/build/cromite_patches/eyeo-beta-118.0.5993.48-android_settings.patch b/build/cromite_patches/eyeo-beta-118.0.5993.48-android_settings.patch index 6b13c8a7b147efb9c80d1a17c5812e4bdfb7bee6..bc8e496e7b8ec1ae03ff7fa668426f7ee6abb2b2 100644 --- a/build/cromite_patches/eyeo-beta-118.0.5993.48-android_settings.patch +++ b/build/cromite_patches/eyeo-beta-118.0.5993.48-android_settings.patch @@ -243,7 +243,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 -@@ -284,6 +284,10 @@ if (current_toolchain == default_toolchain) { +@@ -285,6 +285,10 @@ if (current_toolchain == default_toolchain) { "//third_party/androidx:androidx_preference_preference_java", ] @@ -254,7 +254,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn if (plus_addresses_use_internal_android_resources) { deps += [ "//clank/components/plus_addresses:java_resources" ] } else { -@@ -772,6 +776,10 @@ if (current_toolchain == default_toolchain) { +@@ -783,6 +787,10 @@ if (current_toolchain == default_toolchain) { "//url/mojom:url_mojom_gurl_java", ] @@ -277,10 +277,10 @@ 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. --> - android:key="accessibility" - android:order="22" + android:order="24" android:title="@string/prefs_accessibility"/> + -@@ -1116,7 +1120,7 @@ void NavigationURLLoaderImpl::OnReceiveRedirect( +@@ -1124,7 +1128,7 @@ void NavigationURLLoaderImpl::OnReceiveRedirect( LogQueueTimeHistogram("Navigation.QueueTime.OnReceiveRedirect", resource_request_->is_outermost_main_frame); net::Error error = net::OK; @@ -52318,7 +52318,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" -@@ -2992,6 +2996,12 @@ void RenderFrameHostImpl::ExecuteJavaScriptMethod( +@@ -3114,6 +3118,12 @@ void RenderFrameHostImpl::ExecuteJavaScriptMethod( std::move(callback)); } @@ -52345,7 +52345,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_ -@@ -467,6 +471,10 @@ class CONTENT_EXPORT RenderFrameHostImpl +@@ -464,6 +468,10 @@ class CONTENT_EXPORT RenderFrameHostImpl const std::u16string& method_name, base::Value::List arguments, JavaScriptResultCallback callback) override; @@ -52370,7 +52370,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_ -@@ -563,6 +567,9 @@ class CONTENT_EXPORT RenderFrameHost : public IPC::Listener, +@@ -540,6 +544,9 @@ class CONTENT_EXPORT RenderFrameHost : public IPC::Listener, virtual void AddMessageToConsole(blink::mojom::ConsoleMessageLevel level, const std::string& message) = 0; @@ -52394,7 +52394,7 @@ diff --git a/content/public/common/isolated_world_ids.h b/content/public/common/ #ifndef CONTENT_PUBLIC_COMMON_ISOLATED_WORLD_IDS_H_ #define CONTENT_PUBLIC_COMMON_ISOLATED_WORLD_IDS_H_ -@@ -13,6 +17,10 @@ enum IsolatedWorldIDs : int32_t { +@@ -15,6 +19,10 @@ enum IsolatedWorldIDs : int32_t { // The main world. Chrome cannot use ID 0 for an isolated world because 0 // represents the main world. ISOLATED_WORLD_ID_GLOBAL = 0, @@ -52419,7 +52419,7 @@ diff --git a/extensions/browser/api/web_request/web_request_proxying_url_loader_ #include "extensions/browser/api/web_request/web_request_proxying_url_loader_factory.h" #include -@@ -464,6 +468,7 @@ void WebRequestProxyingURLLoaderFactory::InProgressRequest::OnReceiveRedirect( +@@ -470,6 +474,7 @@ void WebRequestProxyingURLLoaderFactory::InProgressRequest::OnReceiveRedirect( TRACE_EVENT_FLAG_FLOW_IN | TRACE_EVENT_FLAG_FLOW_OUT); if (redirect_url_ != redirect_info.new_url && @@ -52488,7 +52488,7 @@ diff --git a/third_party/blink/public/mojom/frame/frame.mojom b/third_party/blin module blink.mojom; -@@ -962,6 +966,10 @@ interface LocalFrame { +@@ -964,6 +968,10 @@ interface LocalFrame { // the given point in the view coordinate space. PluginActionAt(gfx.mojom.Point location, blink.mojom.PluginActionType action); @@ -53109,7 +53109,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 -@@ -1353,6 +1357,11 @@ +@@ -1361,6 +1365,11 @@ "includes": [8460], }, diff --git a/build/cromite_patches/eyeo-beta-118.0.5993.48-chrome_integration.patch b/build/cromite_patches/eyeo-beta-118.0.5993.48-chrome_integration.patch index 6f8e43d89075de3eec414b456efab20eb04da56c..30a30121318988bc82fcb490e65a8f37fa607144 100644 --- a/build/cromite_patches/eyeo-beta-118.0.5993.48-chrome_integration.patch +++ b/build/cromite_patches/eyeo-beta-118.0.5993.48-chrome_integration.patch @@ -110,7 +110,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" -@@ -1932,7 +1937,7 @@ content::ContentClient* ChromeMainDelegate::CreateContentClient() { +@@ -1920,7 +1925,7 @@ content::ContentClient* ChromeMainDelegate::CreateContentClient() { content::ContentBrowserClient* ChromeMainDelegate::CreateContentBrowserClient() { chrome_content_browser_client_ = @@ -132,7 +132,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn import("//base/allocator/allocator.gni") import("//build/buildflag_header.gni") -@@ -152,6 +155,26 @@ static_library("browser") { +@@ -157,6 +160,26 @@ static_library("browser") { "accessibility/prefers_default_scrollbar_styles_prefs.h", "affiliations/affiliation_service_factory.cc", "affiliations/affiliation_service_factory.h", @@ -159,9 +159,9 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn "after_startup_task_utils.cc", "after_startup_task_utils.h", "app_mode/app_mode_utils.cc", -@@ -1993,6 +2016,9 @@ static_library("browser") { +@@ -1999,6 +2022,9 @@ static_library("browser") { + "//chrome/common/notifications", "//chrome/installer/util:with_no_strings", - "//chrome/services/on_device_translation:on_device_translation_service", "//chrome/services/speech/buildflags", + "//chrome/browser/ui/webui/adblock_internals:mojo_bindings", + "//components/adblock/content:browser", @@ -2023,7 +2023,7 @@ diff --git a/chrome/browser/chrome_browser_interface_binders.cc b/chrome/browser #include "chrome/browser/ui/webui/browsing_topics/browsing_topics_internals_ui.h" #include "chrome/browser/ui/webui/data_sharing_internals/data_sharing_internals_ui.h" #include "chrome/browser/ui/webui/engagement/site_engagement_ui.h" -@@ -1128,6 +1133,10 @@ void PopulateChromeWebUIFrameBinders( +@@ -1148,6 +1153,10 @@ void PopulateChromeWebUIFrameBinders( media::mojom::MediaEngagementScoreDetailsProvider, MediaEngagementUI>( map); @@ -2121,7 +2121,7 @@ diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc #include "chrome/browser/autocomplete/autocomplete_classifier_factory.h" #include "chrome/browser/autocomplete/document_suggestions_service_factory.h" #include "chrome/browser/autocomplete/in_memory_url_index_factory.h" -@@ -280,6 +293,8 @@ +@@ -283,6 +296,8 @@ #include "chrome/browser/signin/signin_manager_android_factory.h" #include "components/commerce/core/commerce_feature_list.h" #include "components/commerce/core/proto/merchant_signal_db_content.pb.h" @@ -2130,7 +2130,7 @@ diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc #else #include "chrome/browser/accessibility/live_caption/live_caption_controller_factory.h" #include "chrome/browser/accessibility/live_translate_controller_factory.h" -@@ -856,8 +871,19 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -881,8 +896,19 @@ void ChromeBrowserMainExtraPartsProfiles:: // Makes manual testing possible. FakeSmartCardDeviceServiceFactory::GetInstance(); #endif @@ -2163,7 +2163,7 @@ diff --git a/chrome/browser/resources/BUILD.gn b/chrome/browser/resources/BUILD. import("//build/config/chromeos/ui_mode.gni") import("//chrome/browser/buildflags.gni") -@@ -255,6 +258,7 @@ if (!is_android) { +@@ -258,6 +261,7 @@ if (!is_android) { group("dev_ui_resources") { public_deps = [ "accessibility:resources", @@ -2171,7 +2171,7 @@ diff --git a/chrome/browser/resources/BUILD.gn b/chrome/browser/resources/BUILD. "bluetooth_internals:resources", "browsing_topics:resources", "components:resources", -@@ -317,6 +321,7 @@ repack("dev_ui_paks") { +@@ -320,6 +324,7 @@ repack("dev_ui_paks") { sources = [ "$root_gen_dir/chrome/accessibility_resources.pak", @@ -2318,7 +2318,7 @@ diff --git a/chrome/browser/safe_browsing/safe_browsing_blocking_page_test.cc b/ #include "components/safe_browsing/content/browser/safe_browsing_blocking_page.h" -@@ -685,6 +689,8 @@ class SafeBrowsingBlockingPageBrowserTest +@@ -688,6 +692,8 @@ class SafeBrowsingBlockingPageBrowserTest {tag_and_attribute, add_warning_shown_timestamp_csbrrs, create_warning_shown_csbrrs, abusive_notification_revocation}, {}); @@ -2349,7 +2349,7 @@ diff --git a/chrome/browser/subresource_filter/subresource_filter_browser_test_h #include "components/blocked_content/safe_browsing_triggered_popup_blocker.h" #include "components/content_settings/browser/page_specific_content_settings.h" #include "components/safe_browsing/core/browser/db/v4_protocol_manager_util.h" -@@ -70,7 +75,8 @@ MockSubresourceFilterObserver::~MockSubresourceFilterObserver() = default; +@@ -152,7 +157,8 @@ void SubresourceFilterSharedBrowserTest::NavigateFrame(const char* frame_name, SubresourceFilterBrowserTest::SubresourceFilterBrowserTest() { scoped_feature_list_.InitWithFeatures( /*enabled_features=*/{kAdTagging}, @@ -2373,7 +2373,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/chromeos/ui_mode.gni") -@@ -268,6 +272,10 @@ static_library("ui") { +@@ -215,6 +219,10 @@ static_library("ui") { "webui/about/about_ui.h", "webui/accessibility/accessibility_ui.cc", "webui/accessibility/accessibility_ui.h", @@ -2384,15 +2384,15 @@ diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn "webui/autofill_and_password_manager_internals/autofill_internals_ui.cc", "webui/autofill_and_password_manager_internals/autofill_internals_ui.h", "webui/autofill_and_password_manager_internals/internals_ui_handler.cc", -@@ -468,6 +476,7 @@ static_library("ui") { - "//chrome/browser/search_engines", - "//chrome/browser/share", +@@ -428,6 +436,7 @@ static_library("ui") { + "//chrome/browser/signin", "//chrome/browser/signin:identity_manager_provider", + "//chrome/browser/signin:impl", + "//chrome/browser/ui/webui/adblock_internals:mojo_bindings", "//chrome/browser/storage_access_api", "//chrome/browser/sync", - "//chrome/browser/ui/cookie_controls", -@@ -487,6 +496,7 @@ static_library("ui") { + "//chrome/browser/ui/autofill", +@@ -460,6 +469,7 @@ static_library("ui") { "//components/access_code_cast/common:metrics", "//components/account_id", "//components/affiliations/core/browser:affiliations", @@ -2449,7 +2449,7 @@ diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc #include "chrome/browser/bookmarks/bookmark_model_factory.h" #include "chrome/browser/breadcrumbs/breadcrumb_manager_tab_helper.h" #include "chrome/browser/browser_process.h" -@@ -116,6 +123,7 @@ +@@ -115,6 +122,7 @@ #include "chrome/common/chrome_features.h" #include "chrome/common/chrome_isolated_world_ids.h" #include "chrome/common/chrome_switches.h" @@ -2457,7 +2457,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/browser_autofill_manager.h" -@@ -368,6 +376,16 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) { +@@ -369,6 +377,16 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) { optimization_guide_decider); } } @@ -2830,16 +2830,16 @@ diff --git a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc b/chrom #include "chrome/browser/ui/webui/components/components_ui.h" #include "chrome/browser/ui/webui/constrained_web_dialog_ui.h" #include "chrome/browser/ui/webui/crashes_ui.h" -@@ -458,6 +463,9 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui, - return &NewWebUI; - if (url.host_piece() == chrome::kChromeUIUserActionsHost) - return &NewWebUI; +@@ -519,6 +524,9 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui, + if (url.host_piece() == chrome::kChromeUIWebUIJsErrorHost) + return &NewWebUI; + #endif + if (url.host_piece() == chrome::kChromeUIAdblockInternalsHost) { + return &NewWebUI; + } - if (url.host_piece() == chrome::kChromeUIVersionHost) - return &NewWebUI; #if BUILDFLAG(IS_ANDROID) + if (url.host_piece() == chrome::kChromeUIOfflineInternalsHost) + return &NewWebUI; diff --git a/chrome/common/BUILD.gn b/chrome/common/BUILD.gn --- a/chrome/common/BUILD.gn +++ b/chrome/common/BUILD.gn @@ -2881,7 +2881,7 @@ diff --git a/chrome/common/webui_url_constants.h b/chrome/common/webui_url_const // Contains constants for WebUI UI/Host/SubPage constants. Anything else go in // chrome/common/url_constants.h. -@@ -42,6 +46,7 @@ inline constexpr char kChromeUIActivateSafetyCheckSettingsURL[] = +@@ -43,6 +47,7 @@ inline constexpr char kChromeUIActivateSafetyCheckSettingsURL[] = inline constexpr char kChromeUIAllSitesPath[] = "/content/all"; inline constexpr char kChromeUIAppIconHost[] = "app-icon"; inline constexpr char kChromeUIAppIconURL[] = "chrome://app-icon/"; diff --git a/build/cromite_patches/eyeo-beta-118.0.5993.48-extension_api.patch b/build/cromite_patches/eyeo-beta-118.0.5993.48-extension_api.patch index d15db50b1138393bf4a73e82f5f8ae8a068b98eb..4bfcc47241e3575856a99c56c58e1b8e48d530b5 100644 --- a/build/cromite_patches/eyeo-beta-118.0.5993.48-extension_api.patch +++ b/build/cromite_patches/eyeo-beta-118.0.5993.48-extension_api.patch @@ -58,23 +58,23 @@ diff --git a/chrome/browser/extensions/BUILD.gn b/chrome/browser/extensions/BUIL import("//build/config/chromeos/ui_mode.gni") @@ -52,6 +56,8 @@ source_set("extensions") { # here. - "api/activity_log_private/activity_log_private_api.cc", - "api/activity_log_private/activity_log_private_api.h", + "api/automation_internal/chrome_automation_internal_api_delegate.cc", + "api/automation_internal/chrome_automation_internal_api_delegate.h", + "api/adblock_private/adblock_private_api.cc", + "api/adblock_private/adblock_private_api.h", - "api/api_browser_context_keyed_service_factories.cc", - "api/api_browser_context_keyed_service_factories.h", - "api/autofill_private/autofill_private_api.cc", -@@ -131,6 +137,8 @@ source_set("extensions") { + "api/bookmark_manager_private/bookmark_manager_private_api.cc", + "api/bookmark_manager_private/bookmark_manager_private_api.h", + "api/bookmarks/bookmark_api_helpers.cc", +@@ -117,6 +123,8 @@ source_set("extensions") { "api/extension_action/extension_action_api.h", "api/extension_action/extension_page_actions_api_constants.cc", "api/extension_action/extension_page_actions_api_constants.h", + "api/eyeo_filtering_private/eyeo_filtering_private_api.cc", + "api/eyeo_filtering_private/eyeo_filtering_private_api.h", - "api/favicon/favicon_util.cc", - "api/favicon/favicon_util.h", "api/feedback_private/chrome_feedback_private_delegate.cc", -@@ -843,6 +851,7 @@ source_set("extensions") { + "api/feedback_private/chrome_feedback_private_delegate.h", + "api/file_system/chrome_file_system_delegate.cc", +@@ -807,6 +815,7 @@ source_set("extensions") { "//chrome/browser/safe_browsing:metrics_collector", "//chrome/browser/ui/tabs:tab_enums", "//chrome/browser/web_applications", @@ -96,7 +96,7 @@ diff --git a/chrome/browser/extensions/api/BUILD.gn b/chrome/browser/extensions/ import("//chrome/common/extensions/api/api_sources.gni") import("//chrome/common/features.gni") -@@ -85,6 +89,7 @@ function_registration("api_registration") { +@@ -106,6 +110,7 @@ function_registration("api_registration") { # include generated headers from these targets. # TODO(brettw) this should be made unnecessary if possible. "//chrome/common/extensions/api", @@ -2132,7 +2132,7 @@ diff --git a/chrome/browser/extensions/api/api_browser_context_keyed_service_fac #include "chrome/browser/extensions/api/font_settings/font_settings_api.h" #include "chrome/browser/extensions/api/history/history_api.h" #include "chrome/browser/extensions/api/identity/identity_api.h" -@@ -74,6 +80,7 @@ namespace chrome_extensions { +@@ -72,6 +78,7 @@ namespace chrome_extensions { void EnsureApiBrowserContextKeyedServiceFactoriesBuilt() { extensions::ActivityLogAPI::GetFactoryInstance(); @@ -2140,7 +2140,7 @@ diff --git a/chrome/browser/extensions/api/api_browser_context_keyed_service_fac extensions::AutofillPrivateEventRouterFactory::GetInstance(); extensions::BluetoothLowEnergyAPI::GetFactoryInstance(); extensions::BookmarksAPI::GetFactoryInstance(); -@@ -86,6 +93,7 @@ void EnsureApiBrowserContextKeyedServiceFactoriesBuilt() { +@@ -84,6 +91,7 @@ void EnsureApiBrowserContextKeyedServiceFactoriesBuilt() { extensions::DocumentScanAPIHandler::GetFactoryInstance(); #endif extensions::ExtensionActionAPI::GetFactoryInstance(); @@ -3478,7 +3478,7 @@ diff --git a/chrome/browser/extensions/api/settings_private/prefs_util.cc b/chro #include "components/autofill/core/common/autofill_prefs.h" #include "components/bookmarks/common/bookmark_pref_names.h" #include "components/browsing_data/core/pref_names.h" -@@ -177,6 +182,20 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlistedKeys() { +@@ -178,6 +183,20 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlistedKeys() { } s_allowlist = new PrefsUtil::TypedPrefMap(); @@ -3554,10 +3554,10 @@ 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 -@@ -60,6 +64,16 @@ - "chrome://extensions/*" - ] - }], +@@ -64,6 +68,16 @@ + "contexts": ["privileged_extension"], + "channel": "dev" + }, + "adblockPrivate": [{ + "dependencies": ["permission:adblockPrivate"], + "contexts": ["blessed_extension"] @@ -3571,7 +3571,7 @@ diff --git a/chrome/common/extensions/api/_api_features.json b/chrome/common/ext "app": { "blocklist": [ "2FC374607C2DF285634B67C64A2E356C607091C3", // Quickoffice -@@ -501,6 +515,14 @@ +@@ -521,6 +535,14 @@ "channel": "stable", "contexts": [] }, @@ -3600,8 +3600,8 @@ diff --git a/chrome/common/extensions/api/_permission_features.json b/chrome/com // This features file defines permissions for extension APIs implemented // under src/chrome. -@@ -56,6 +60,10 @@ - "5107DE9024C329EEA9C9A72D94C16723790C6422" // Apps Developer Tool Dev. +@@ -67,6 +71,10 @@ + "extension" ] }, + "adblockPrivate": { @@ -3611,7 +3611,7 @@ diff --git a/chrome/common/extensions/api/_permission_features.json b/chrome/com "autofillPrivate": { "channel": "trunk", "extension_types": ["extension", "platform_app"], -@@ -367,6 +375,10 @@ +@@ -380,6 +388,10 @@ "extension", "legacy_packaged_app", "hosted_app", "platform_app" ] }, @@ -3815,22 +3815,22 @@ diff --git a/chrome/common/extensions/api/api_sources.gni b/chrome/common/extens import("//build/config/chromeos/ui_mode.gni") import("//build/config/features.gni") -@@ -12,6 +16,7 @@ assert(enable_extensions) - schema_sources_ = [ - "accessibility_features.json", - "activity_log_private.json", -+ "adblock_private.idl", - "autofill_private.idl", - "autotest_private.idl", - "bookmark_manager_private.json", -@@ -30,6 +35,7 @@ schema_sources_ = [ - "downloads_internal.idl", - "enterprise_hardware_platform.idl", - "enterprise_reporting_private.idl", -+ "eyeo_filtering_private.idl", - "font_settings.json", - "gcm.json", - "history.json", +@@ -23,6 +27,7 @@ if (enable_extensions) { + schema_sources_ += [ + "accessibility_features.json", + "activity_log_private.json", ++ "adblock_private.idl", + "experimental_ai_data.idl", + "autofill_private.idl", + "autotest_private.idl", +@@ -42,6 +47,7 @@ if (enable_extensions) { + "downloads_internal.idl", + "enterprise_hardware_platform.idl", + "enterprise_reporting_private.idl", ++ "eyeo_filtering_private.idl", + "font_settings.json", + "gcm.json", + "history.json", diff --git a/chrome/common/extensions/api/eyeo_filtering_private.idl b/chrome/common/extensions/api/eyeo_filtering_private.idl new file mode 100644 --- /dev/null @@ -4060,7 +4060,7 @@ diff --git a/chrome/common/extensions/permissions/chrome_api_permissions.cc b/ch {APIPermissionID::kBackground, "background", APIPermissionInfo::kFlagDoesNotRequireManagedSessionFullLoginWarning}, {APIPermissionID::kDeclarativeContent, "declarativeContent"}, -@@ -84,6 +90,8 @@ constexpr APIPermissionInfo::InitInfo permissions_to_register[] = { +@@ -85,6 +91,8 @@ constexpr APIPermissionInfo::InitInfo permissions_to_register[] = { {APIPermissionID::kEnterpriseNetworkingAttributes, "enterprise.networkingAttributes", APIPermissionInfo::kFlagDoesNotRequireManagedSessionFullLoginWarning}, @@ -4072,7 +4072,7 @@ diff --git a/chrome/common/extensions/permissions/chrome_api_permissions.cc b/ch diff --git a/chrome/common/extensions/permissions/permission_set_unittest.cc b/chrome/common/extensions/permissions/permission_set_unittest.cc --- a/chrome/common/extensions/permissions/permission_set_unittest.cc +++ b/chrome/common/extensions/permissions/permission_set_unittest.cc -@@ -869,6 +869,10 @@ TEST(PermissionsTest, PermissionMessages) { +@@ -873,6 +873,10 @@ TEST(PermissionsTest, PermissionMessages) { skip.insert(APIPermissionID::kSystemLog); skip.insert(APIPermissionID::kOdfsConfigPrivate); @@ -4121,10 +4121,10 @@ diff --git a/extensions/common/mojom/api_permission_id.mojom b/extensions/common module extensions.mojom; -@@ -283,6 +287,8 @@ enum APIPermissionID { - kOdfsConfigPrivate = 256, +@@ -284,6 +288,8 @@ enum APIPermissionID { kChromeOSManagementAudio = 257, kChromeOSDiagnosticsNetworkInfoForMlab = 258, + kAIAssistantOriginTrial = 259, + kAdblockPrivate = 999, + kEyeoFilteringPrivate = 1000, @@ -4133,18 +4133,18 @@ diff --git a/extensions/common/mojom/api_permission_id.mojom b/extensions/common diff --git a/tools/metrics/histograms/metadata/extensions/enums.xml b/tools/metrics/histograms/metadata/extensions/enums.xml --- a/tools/metrics/histograms/metadata/extensions/enums.xml +++ b/tools/metrics/histograms/metadata/extensions/enums.xml -@@ -757,6 +757,7 @@ Called by update_extension_histograms.py.--> - +@@ -758,6 +758,7 @@ Called by update_extension_histograms.py.--> -+ + ++ -@@ -3138,6 +3139,8 @@ Called by update_extension_permission.py.--> - +@@ -3148,6 +3149,8 @@ Called by update_extension_permission.py.--> + + + diff --git a/build/cromite_patches/kill-Auth.patch b/build/cromite_patches/kill-Auth.patch index 9a8eb0a8af0cbbf517890a63860db019af039549..082acbe288697aa36a0d4f47903bc4d0bc489e8c 100644 --- a/build/cromite_patches/kill-Auth.patch +++ b/build/cromite_patches/kill-Auth.patch @@ -10,7 +10,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 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 -@@ -25,9 +25,6 @@ import android.os.SystemClock; +@@ -24,9 +24,6 @@ import android.os.SystemClock; import androidx.annotation.Nullable; @@ -20,7 +20,7 @@ diff --git a/components/signin/public/android/java/src/org/chromium/components/s import org.chromium.base.ApiCompatibilityUtils; import org.chromium.base.Callback; import org.chromium.base.ContextUtils; -@@ -88,18 +85,6 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { +@@ -87,18 +84,6 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { @Override public Account[] getAccountsSynchronous() throws AccountManagerDelegateException { @@ -39,7 +39,7 @@ diff --git a/components/signin/public/android/java/src/org/chromium/components/s // 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[] {}; -@@ -110,31 +95,12 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { +@@ -109,31 +94,12 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { throws AuthException { ThreadUtils.assertOnBackgroundThread(); assert AccountUtils.GOOGLE_ACCOUNT_TYPE.equals(account.type); @@ -72,8 +72,8 @@ diff --git a/components/signin/public/android/java/src/org/chromium/components/s - } } - @Override -@@ -171,24 +137,6 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { + protected boolean hasFeatures(Account account, String[] features) { +@@ -165,24 +131,6 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { @SuppressLint("MissingPermission") @Override public void createAddAccountIntent(Callback callback) { @@ -98,7 +98,7 @@ diff --git a/components/signin/public/android/java/src/org/chromium/components/s } // No permission is needed on 23+ and Chrome always has MANAGE_ACCOUNTS permission on lower APIs -@@ -223,12 +171,7 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { +@@ -217,12 +165,7 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { @Nullable @Override public String getAccountGaiaId(String accountEmail) { diff --git a/build/cromite_patches/kill-Vision.patch b/build/cromite_patches/kill-Vision.patch index f48b462a15a08452f94945017a79d89b52f883db..c368c9d30c67eca5961a4b7b771d3fe581acc8e1 100644 --- a/build/cromite_patches/kill-Vision.patch +++ b/build/cromite_patches/kill-Vision.patch @@ -15,15 +15,15 @@ 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 -@@ -354,8 +354,6 @@ if (current_toolchain == default_toolchain) { +@@ -355,8 +355,6 @@ if (current_toolchain == 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", - "$google_play_services_package:google_play_services_vision_common_java", - "$google_play_services_package:google_play_services_vision_java", + "//base:content_uri_utils_java", + "//base:service_loader_java", "//base/version_info/android:version_constants_java", - "//cc:cc_java", - "//cc/mojom:mojom_java", 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 diff --git a/build/cromite_patches/mime_util-force-text-x-suse-ymp-to-be-downloaded.patch b/build/cromite_patches/mime_util-force-text-x-suse-ymp-to-be-downloaded.patch index 864f1ecc83125d294e42bc185cd67e4e6f6095bd..4052fc753171a0fac516b80ca4302a3d50af66dd 100644 --- a/build/cromite_patches/mime_util-force-text-x-suse-ymp-to-be-downloaded.patch +++ b/build/cromite_patches/mime_util-force-text-x-suse-ymp-to-be-downloaded.patch @@ -13,12 +13,12 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/third_party/blink/common/mime_util/mime_util.cc b/third_party/blink/common/mime_util/mime_util.cc --- a/third_party/blink/common/mime_util/mime_util.cc +++ b/third_party/blink/common/mime_util/mime_util.cc -@@ -83,6 +83,7 @@ static const char* const kUnsupportedTextTypes[] = { - "text/x-csv", - "text/x-vcf", - "text/rtf", -+ "text/x-suse-ymp", - "text/comma-separated-values", - "text/csv", - "text/tab-separated-values", +@@ -86,6 +86,7 @@ constexpr auto kUnsupportedTextTypes = + "text/x-csv", + "text/x-vcf", + "text/rtf", ++ "text/x-suse-ymp", + "text/comma-separated-values", + "text/csv", + "text/tab-separated-values", -- diff --git a/build/cromite_patches/prefs-always-prompt-for-download-directory.patch b/build/cromite_patches/prefs-always-prompt-for-download-directory.patch index 8612a3617eeac60cbafe1ce3a4f9bae675e2e48a..79384c6a575011c8fc3133eda8509ed0942ee8e4 100644 --- a/build/cromite_patches/prefs-always-prompt-for-download-directory.patch +++ b/build/cromite_patches/prefs-always-prompt-for-download-directory.patch @@ -31,7 +31,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/chrome/browser/download/download_prefs.cc b/chrome/browser/download/download_prefs.cc --- a/chrome/browser/download/download_prefs.cc +++ b/chrome/browser/download/download_prefs.cc -@@ -279,7 +279,7 @@ void DownloadPrefs::RegisterProfilePrefs( +@@ -275,7 +275,7 @@ void DownloadPrefs::RegisterProfilePrefs( user_prefs::PrefRegistrySyncable* registry) { registry->RegisterBooleanPref( prefs::kPromptForDownload, diff --git a/build/cromite_patches/ungoogled-chromium-Disable-Network-Time-Tracker.patch b/build/cromite_patches/ungoogled-chromium-Disable-Network-Time-Tracker.patch index d1b4ac7303e2c3f786b4d0cd3e3c08e303a89d36..01b33d2c39eb4ffd955e767d09b53d828c0afc2c 100644 --- a/build/cromite_patches/ungoogled-chromium-Disable-Network-Time-Tracker.patch +++ b/build/cromite_patches/ungoogled-chromium-Disable-Network-Time-Tracker.patch @@ -15,7 +15,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html diff --git a/components/network_time/network_time_tracker.cc b/components/network_time/network_time_tracker.cc --- a/components/network_time/network_time_tracker.cc +++ b/components/network_time/network_time_tracker.cc -@@ -279,7 +279,7 @@ void NetworkTimeTracker::UpdateNetworkTime(base::Time network_time, +@@ -282,7 +282,7 @@ void NetworkTimeTracker::UpdateNetworkTime(base::Time network_time, } bool NetworkTimeTracker::AreTimeFetchesEnabled() const { diff --git a/build/cromite_patches/ungoogled-chromium-Disable-profile-avatar.patch b/build/cromite_patches/ungoogled-chromium-Disable-profile-avatar.patch index 7a76cbe39e3a1cecfe3a53dbf562cd850d8248dc..adc6d6a2e30b95dad5b13502fb7166926a57fad2 100644 --- a/build/cromite_patches/ungoogled-chromium-Disable-profile-avatar.patch +++ b/build/cromite_patches/ungoogled-chromium-Disable-profile-avatar.patch @@ -14,15 +14,15 @@ 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 -@@ -1350,8 +1350,6 @@ static_library("browser") { - "profiles/profile_attributes_storage.cc", - "profiles/profile_attributes_storage.h", - "profiles/profile_attributes_storage_observer.h", +@@ -1327,8 +1327,6 @@ static_library("browser") { + "profiles/keep_alive/scoped_profile_keep_alive.h", + "profiles/off_the_record_profile_impl.cc", + "profiles/off_the_record_profile_impl.h", - "profiles/profile_avatar_downloader.cc", - "profiles/profile_avatar_downloader.h", - "profiles/profile_avatar_icon_util.cc", - "profiles/profile_avatar_icon_util.h", "profiles/profile_destroyer.cc", + "profiles/profile_destroyer.h", + "profiles/profile_downloader.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 diff --git a/build/cromite_patches/ungoogled-chromium-Disable-translate-integration.patch b/build/cromite_patches/ungoogled-chromium-Disable-translate-integration.patch index 797a86441e5613da1379f6ffef6fbb5e3c804b79..8caa9a63ede4d2f1e22226e4ac0c2b33630303fb 100644 --- a/build/cromite_patches/ungoogled-chromium-Disable-translate-integration.patch +++ b/build/cromite_patches/ungoogled-chromium-Disable-translate-integration.patch @@ -81,7 +81,7 @@ diff --git a/chrome/browser/language/android/java/res/xml/languages_preferences. diff --git a/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/settings/LanguageSettings.java b/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/settings/LanguageSettings.java --- a/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/settings/LanguageSettings.java +++ b/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/settings/LanguageSettings.java -@@ -46,12 +46,6 @@ public class LanguageSettings extends ChromeBaseSettingsFragment +@@ -48,12 +48,6 @@ public class LanguageSettings extends ChromeBaseSettingsFragment static final String APP_LANGUAGE_PREFERENCE_KEY = "app_language_preference"; static final String PREFERRED_LANGUAGES_KEY = "preferred_languages"; static final String CONTENT_LANGUAGES_KEY = "content_languages_preference"; @@ -94,7 +94,7 @@ diff --git a/chrome/browser/language/android/java/src/org/chromium/chrome/browse private static final String TAG = "LanguageSettings"; -@@ -92,35 +86,6 @@ public class LanguageSettings extends ChromeBaseSettingsFragment +@@ -101,35 +95,6 @@ public class LanguageSettings extends ChromeBaseSettingsFragment ContentLanguagesPreference mLanguageListPref = (ContentLanguagesPreference) findPreference(PREFERRED_LANGUAGES_KEY); mLanguageListPref.initialize(this, getProfile(), getPrefService()); @@ -130,7 +130,7 @@ diff --git a/chrome/browser/language/android/java/src/org/chromium/chrome/browse } /** -@@ -135,8 +100,6 @@ public class LanguageSettings extends ChromeBaseSettingsFragment +@@ -144,8 +109,6 @@ public class LanguageSettings extends ChromeBaseSettingsFragment ContentLanguagesPreference mLanguageListPref = (ContentLanguagesPreference) findPreference(CONTENT_LANGUAGES_KEY); mLanguageListPref.initialize(this, getProfile(), getPrefService()); @@ -139,7 +139,7 @@ diff --git a/chrome/browser/language/android/java/src/org/chromium/chrome/browse } /** Setup the App Language section with a title and preference to choose the app language. */ -@@ -167,7 +130,7 @@ public class LanguageSettings extends ChromeBaseSettingsFragment +@@ -176,7 +139,7 @@ public class LanguageSettings extends ChromeBaseSettingsFragment * @param contentLanguagesPreference ContentLanguagesPreference reference to update about state * changes. */ @@ -148,7 +148,7 @@ diff --git a/chrome/browser/language/android/java/src/org/chromium/chrome/browse // Setup expandable advanced settings section. PreferenceCategory translationAdvancedSection = (PreferenceCategory) findPreference(TRANSLATION_ADVANCED_SECTION); -@@ -245,7 +208,7 @@ public class LanguageSettings extends ChromeBaseSettingsFragment +@@ -254,7 +217,7 @@ public class LanguageSettings extends ChromeBaseSettingsFragment return getPrefService().isManagedPreference(Pref.OFFER_TRANSLATE_ENABLED); } }); @@ -157,7 +157,7 @@ diff --git a/chrome/browser/language/android/java/src/org/chromium/chrome/browse @Override public void onStart() { -@@ -284,12 +247,6 @@ public class LanguageSettings extends ChromeBaseSettingsFragment +@@ -293,12 +256,6 @@ public class LanguageSettings extends ChromeBaseSettingsFragment // Set the default target language to match the new app language. TranslateBridge.setDefaultTargetLanguage(getProfile(), code); } else if (requestCode == REQUEST_CODE_CHANGE_TARGET_LANGUAGE) { @@ -173,7 +173,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 -@@ -2019,9 +2019,6 @@ Your Google account may have other forms of browsing history like searches and a +@@ -2076,9 +2076,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. 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 330b1e1ae6a4ca271e41c445345c9d4786da0f4f..9ca2cb9240ed48b7ecefcc1244368ad069b507dd 100644 --- a/build/cromite_patches/ungoogled-chromium-no-special-hosts-domains.patch +++ b/build/cromite_patches/ungoogled-chromium-no-special-hosts-domains.patch @@ -29,6 +29,8 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../new_tab_page/promos/promo_service.cc | 6 +- .../from_gws_page_load_metrics_observer.cc | 6 +- .../page_load_metrics_initialize.cc | 5 - + chrome/browser/profile_resetter/BUILD.gn | 1 - + .../profile_resetter/profile_resetter.cc | 3 +- chrome/browser/safe_browsing/BUILD.gn | 1 - chrome/browser/search_engines/BUILD.gn | 1 - .../ui_thread_search_terms_data.cc | 4 - @@ -37,7 +39,6 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html .../omnibox/LocationBarCoordinator.java | 2 - .../browser/omnibox/LocationBarMediator.java | 25 -- .../ui/webui/new_tab_page/new_tab_page_ui.cc | 5 - - .../webui/settings/reset_settings_handler.cc | 1 - .../upgrade_detector/upgrade_detector_impl.cc | 6 - chrome/common/BUILD.gn | 2 - .../google_accounts_private_api_util.cc | 3 + @@ -64,13 +65,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 +- - 57 files changed, 57 insertions(+), 854 deletions(-) + 58 files changed, 58 insertions(+), 856 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 -@@ -97,7 +97,6 @@ import org.chromium.chrome.browser.messages.MessageContainerObserver; +@@ -98,7 +98,6 @@ import org.chromium.chrome.browser.messages.MessageContainerObserver; import org.chromium.chrome.browser.messages.MessagesResourceMapperInitializer; import org.chromium.chrome.browser.metrics.UmaSessionStats; import org.chromium.chrome.browser.omnibox.OmniboxFocusReason; @@ -78,7 +79,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; -@@ -1194,10 +1193,8 @@ public class RootUiCoordinator +@@ -1197,10 +1196,8 @@ public class RootUiCoordinator String url = TemplateUrlServiceFactory.getForProfile(tab.getProfile()) .getUrlForSearchQuery(query); @@ -92,7 +93,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 -@@ -939,8 +939,6 @@ static_library("browser") { +@@ -929,8 +929,6 @@ static_library("browser") { "page_info/page_info_features.h", "page_load_metrics/observers/bookmark_bar_page_load_metrics_observer.cc", "page_load_metrics/observers/bookmark_bar_page_load_metrics_observer.h", @@ -101,7 +102,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", -@@ -951,12 +949,6 @@ static_library("browser") { +@@ -941,12 +939,6 @@ static_library("browser") { "page_load_metrics/observers/foreground_duration_ukm_observer.h", "page_load_metrics/observers/formfill_page_load_metrics_observer.cc", "page_load_metrics/observers/formfill_page_load_metrics_observer.h", @@ -114,7 +115,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", -@@ -1624,8 +1616,6 @@ static_library("browser") { +@@ -1592,8 +1584,6 @@ static_library("browser") { "supervised_user/classify_url_navigation_throttle.h", "supervised_user/supervised_user_browser_utils.cc", "supervised_user/supervised_user_browser_utils.h", @@ -123,17 +124,17 @@ 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", -@@ -1815,9 +1805,6 @@ static_library("browser") { - "//chrome/browser/autofill", +@@ -1784,9 +1774,6 @@ static_library("browser") { + "//chrome/browser/commerce:impl", "//chrome/browser/devtools", "//chrome/browser/favicon", - "//chrome/browser/feedback", - "//chrome/browser/feedback:feedback_impl", - "//chrome/browser/google", "//chrome/browser/media/webrtc", + "//chrome/browser/file_system_access:impl", "//chrome/browser/search", - -@@ -1871,7 +1858,6 @@ static_library("browser") { +@@ -1851,7 +1838,6 @@ static_library("browser") { # New dependencies inside of //chrome/browser that generate header files # should be added to browser_generated_files. ":browser_public_dependencies", @@ -164,7 +165,7 @@ diff --git a/chrome/browser/android/metrics/uma_session_stats.cc b/chrome/browse diff --git a/chrome/browser/android/signin/signin_manager_android.cc b/chrome/browser/android/signin/signin_manager_android.cc --- a/chrome/browser/android/signin/signin_manager_android.cc +++ b/chrome/browser/android/signin/signin_manager_android.cc -@@ -71,41 +71,10 @@ class ProfileDataRemover : public content::BrowsingDataRemover::Observer { +@@ -70,41 +70,10 @@ class ProfileDataRemover : public content::BrowsingDataRemover::Observer { origin_runner_(base::SingleThreadTaskRunner::GetCurrentDefault()), remover_(profile->GetBrowsingDataRemover()) { remover_->AddObserver(this); @@ -213,7 +214,7 @@ diff --git a/chrome/browser/android/signin/signin_manager_android.cc b/chrome/br 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 -@@ -1188,7 +1188,6 @@ BrowserProcessImpl::component_updater() { +@@ -1218,7 +1218,6 @@ BrowserProcessImpl::component_updater() { std::make_unique(); std::string brand; @@ -224,7 +225,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 -@@ -559,11 +559,6 @@ void ProcessSingletonNotificationCallbackImpl( +@@ -561,11 +561,6 @@ void ProcessSingletonNotificationCallbackImpl( StartupBrowserCreator::ProcessCommandLineAlreadyRunning( command_line, current_directory, startup_profile_path_info); @@ -236,7 +237,7 @@ diff --git a/chrome/browser/chrome_browser_main.cc b/chrome/browser/chrome_brows } #endif // BUILDFLAG(ENABLE_PROCESS_SINGLETON) -@@ -1815,11 +1810,6 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() { +@@ -1837,11 +1832,6 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() { upgrade_util::SaveLastModifiedTimeOfExe(); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) @@ -251,7 +252,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 -@@ -3014,7 +3014,6 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches( +@@ -3023,7 +3023,6 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches( switches::kForcePNaClSubzero, #endif switches::kForceUIDirection, @@ -259,7 +260,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch switches::kJavaScriptHarmony, switches::kEnableExperimentalWebAssemblyFeatures, embedder_support::kOriginTrialDisabledFeatures, -@@ -5453,9 +5452,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation( +@@ -5459,9 +5458,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation( } #endif @@ -269,7 +270,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch if (base::FeatureList::IsEnabled( supervised_user::kClassifyUrlOnProcessResponseEvent)) { -@@ -6044,7 +6040,8 @@ GetClientDataHeader(int frame_tree_node_id) { +@@ -6056,7 +6052,8 @@ GetClientDataHeader(content::FrameTreeNodeId frame_tree_node_id) { } #endif @@ -279,7 +280,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 -@@ -6084,7 +6081,7 @@ std::unique_ptr CreateGoogleURLLoaderThrottle( +@@ -6096,7 +6093,7 @@ std::unique_ptr CreateGoogleURLLoaderThrottle( std::move(bound_session_request_throttled_handler), #endif std::move(dynamic_params)); @@ -288,7 +289,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch std::vector> ChromeContentBrowserClient::CreateURLLoaderThrottles( -@@ -6141,15 +6138,6 @@ ChromeContentBrowserClient::CreateURLLoaderThrottles( +@@ -6153,15 +6150,6 @@ ChromeContentBrowserClient::CreateURLLoaderThrottles( GetClientDataHeader(frame_tree_node_id); #endif @@ -304,7 +305,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch { auto* factory = ProtocolHandlerRegistryFactory::GetForBrowserContext(browser_context); -@@ -6204,20 +6192,6 @@ ChromeContentBrowserClient::CreateURLLoaderThrottlesForKeepAlive( +@@ -6216,20 +6204,6 @@ ChromeContentBrowserClient::CreateURLLoaderThrottlesForKeepAlive( } #endif @@ -374,7 +375,7 @@ diff --git a/chrome/browser/domain_reliability/service_factory.cc b/chrome/brows 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 -@@ -832,7 +832,6 @@ source_set("extensions") { +@@ -796,7 +796,6 @@ source_set("extensions") { "//chrome/browser/devtools", "//chrome/browser/extensions:cws_item_service_proto", "//chrome/browser/favicon", @@ -631,7 +632,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 -@@ -842,7 +842,6 @@ void SystemNetworkContextManager::AddSSLConfigToNetworkContextParams( +@@ -856,7 +856,6 @@ void SystemNetworkContextManager::AddSSLConfigToNetworkContextParams( void SystemNetworkContextManager::ConfigureDefaultNetworkContextParams( network::mojom::NetworkContextParams* network_context_params) { variations::UpdateCorsExemptHeaderForVariations(network_context_params); @@ -710,6 +711,30 @@ diff --git a/chrome/browser/page_load_metrics/page_load_metrics_initialize.cc b/ tracker->AddObserver(std::make_unique()); tracker->AddObserver( std::make_unique()); +diff --git a/chrome/browser/profile_resetter/BUILD.gn b/chrome/browser/profile_resetter/BUILD.gn +--- a/chrome/browser/profile_resetter/BUILD.gn ++++ b/chrome/browser/profile_resetter/BUILD.gn +@@ -18,7 +18,6 @@ if (!is_android) { + deps = [ + "//chrome/browser:browser", + "//chrome/browser/browsing_data:constants", +- "//chrome/browser/google:google", + "//chrome/browser/search/background:background", + "//chrome/browser/search_engines:search_engines", + "//chrome/test:test_support", +diff --git a/chrome/browser/profile_resetter/profile_resetter.cc b/chrome/browser/profile_resetter/profile_resetter.cc +--- a/chrome/browser/profile_resetter/profile_resetter.cc ++++ b/chrome/browser/profile_resetter/profile_resetter.cc +@@ -100,8 +100,7 @@ ProfileResetter::ProfileResetter(Profile* profile) + DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); + DCHECK(profile_); + +- google_brand::GetBrand(&brandcode_); +- if (brandcode_.empty()) { ++ if ((true)) { + return; + } + config_fetcher_ = std::make_unique( 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 @@ -749,9 +774,9 @@ diff --git a/chrome/browser/search_engines/ui_thread_search_terms_data.cc b/chro 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 -@@ -451,7 +451,6 @@ static_library("ui") { - "//chrome/browser/favicon", +@@ -399,7 +399,6 @@ static_library("ui") { "//chrome/browser/feedback:feedback_impl", + "//chrome/browser/file_system_access", "//chrome/browser/fingerprinting_protection", - "//chrome/browser/google", "//chrome/browser/image_decoder", @@ -799,7 +824,7 @@ 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; -@@ -307,24 +306,6 @@ class LocationBarMediator +@@ -309,24 +308,6 @@ class LocationBarMediator if (!mUrlFocusedWithoutAnimations) handleUrlFocusAnimation(hasFocus); @@ -824,7 +849,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow if (!hasFocus && mLocationBarDataProvider.hasTab()) { setUrl( mLocationBarDataProvider.getCurrentGurl(), -@@ -340,8 +321,6 @@ class LocationBarMediator +@@ -342,8 +323,6 @@ class LocationBarMediator templateUrlService.addObserver(this); if (OmniboxFeatures.sUseFusedLocationProvider.isEnabled() && templateUrlService.isDefaultSearchEngineGoogle()) { @@ -833,7 +858,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow } }); -@@ -574,7 +553,6 @@ class LocationBarMediator +@@ -576,7 +555,6 @@ class LocationBarMediator LoadUrlParams loadUrlParams = new LoadUrlParams(url); try (TimingMetric record = TimingMetric.shortUptime("Android.Omnibox.SetGeolocationHeadersTime")) { @@ -841,7 +866,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow } loadUrlParams.setTransitionType( omniboxLoadUrlParams.transitionType | PageTransition.FROM_ADDRESS_BAR); -@@ -1550,15 +1528,12 @@ class LocationBarMediator +@@ -1553,15 +1531,12 @@ class LocationBarMediator if (OmniboxFeatures.sUseFusedLocationProvider.isEnabled() && mProfileSupplier.hasValue() && mTemplateUrlServiceSupplier.hasValue()) { @@ -872,17 +897,6 @@ 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/ui/webui/settings/reset_settings_handler.cc b/chrome/browser/ui/webui/settings/reset_settings_handler.cc ---- a/chrome/browser/ui/webui/settings/reset_settings_handler.cc -+++ b/chrome/browser/ui/webui/settings/reset_settings_handler.cc -@@ -98,7 +98,6 @@ bool ResetSettingsHandler::ShouldShowResetProfileBanner(Profile* profile) { - - ResetSettingsHandler::ResetSettingsHandler(Profile* profile) - : profile_(profile) { -- google_brand::GetBrand(&brandcode_); - } - - ResetSettingsHandler::~ResetSettingsHandler() {} 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 @@ -902,7 +916,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 -@@ -146,8 +146,6 @@ static_library("common_lib") { +@@ -145,8 +145,6 @@ static_library("common_lib") { "content_restriction.h", "crash_keys.cc", "crash_keys.h", @@ -948,8 +962,8 @@ 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 -@@ -6534,7 +6534,6 @@ test("unit_tests") { - "//chrome/browser/feedback:feedback_impl", +@@ -6635,7 +6635,6 @@ test("unit_tests") { + "//chrome/browser/file_system_access:unit_tests", "//chrome/browser/fingerprinting_protection", "//chrome/browser/first_party_sets", - "//chrome/browser/google:unit_tests", @@ -968,7 +982,7 @@ diff --git a/components/domain_reliability/BUILD.gn b/components/domain_reliabil visibility = [ ":*" ] script = "bake_in_configs.py" -@@ -73,12 +73,9 @@ component("domain_reliability") { +@@ -71,12 +71,9 @@ component("domain_reliability") { "util.cc", "util.h", ] @@ -1090,7 +1104,7 @@ diff --git a/components/domain_reliability/google_configs.h b/components/domain_ diff --git a/components/domain_reliability/monitor.cc b/components/domain_reliability/monitor.cc --- a/components/domain_reliability/monitor.cc +++ b/components/domain_reliability/monitor.cc -@@ -101,14 +101,6 @@ void DomainReliabilityMonitor::Shutdown() { +@@ -100,14 +100,6 @@ void DomainReliabilityMonitor::Shutdown() { } void DomainReliabilityMonitor::AddBakedInConfigs() { @@ -1616,7 +1630,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 -@@ -589,11 +589,7 @@ std::u16string TemplateURLRef::SearchTermToString16( +@@ -590,11 +590,7 @@ std::u16string TemplateURLRef::SearchTermToString16( bool TemplateURLRef::HasGoogleBaseURLs( const SearchTermsData& search_terms_data) const { ParseIfNecessary(search_terms_data); @@ -1811,7 +1825,7 @@ new file mode 100644 diff --git a/net/base/url_util.cc b/net/base/url_util.cc --- a/net/base/url_util.cc +++ b/net/base/url_util.cc -@@ -495,34 +495,11 @@ bool HasGoogleHost(const GURL& url) { +@@ -493,34 +493,11 @@ bool HasGoogleHost(const GURL& url) { } bool IsGoogleHost(std::string_view host) { 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 6a2f5637f62a0cfac102a53a8febb343aa3fc3b0..1c70321d9a374cad00e169c5bbaa2aa6f9216752 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 @@ -40,7 +40,7 @@ diff --git a/third_party/blink/renderer/modules/peerconnection/peer_connection_d } bool IsValidPortRange(uint16_t min_port, uint16_t max_port) { -@@ -907,7 +909,7 @@ PeerConnectionDependencyFactory::CreatePortAllocator( +@@ -905,7 +907,7 @@ PeerConnectionDependencyFactory::CreatePortAllocator( break; } diff --git a/build/cromite_patches/webview-Hard-no-to-persistent-histograms.patch b/build/cromite_patches/webview-Hard-no-to-persistent-histograms.patch index 0f364fa14752aa9e45a984dca5b7f34c495a2794..7817dc26ba2a11d27e2aebdb59babc38ceff6514 100644 --- a/build/cromite_patches/webview-Hard-no-to-persistent-histograms.patch +++ b/build/cromite_patches/webview-Hard-no-to-persistent-histograms.patch @@ -27,7 +27,7 @@ diff --git a/android_webview/browser/aw_field_trials.cc b/android_webview/browse - if (base::PathService::Get(base::DIR_ANDROID_APP_DATA, &metrics_dir)) { - InstantiatePersistentHistogramsWithFeaturesAndCleanup(metrics_dir); - } else { -- NOTREACHED_IN_MIGRATION(); +- NOTREACHED(); - } } diff --git a/build/cromite_patches_list.txt b/build/cromite_patches_list.txt index 69e0e83ab6f8bdc491c47d6fceaeba780fba5341..654b873cde9a7727be4c1bb21f06176a21dc821c 100644 --- a/build/cromite_patches_list.txt +++ b/build/cromite_patches_list.txt @@ -42,7 +42,6 @@ ungoogled-chromium-Disable-Network-Time-Tracker.patch Disable-all-promo-dialogs.patch Disable-update-scheduler.patch Add-search-engine.patch -Inject-scripts-for-AMP-tracking-ads-and-video.patch Allow-playing-audio-in-background.patch Add-flag-to-control-video-playback-resume-feature.patch Add-exit-menu-item.patch @@ -114,7 +113,6 @@ User-agent-customization.patch Add-AllowUserCertificates-flag.patch Add-IsCleartextPermitted-flag.patch Add-flag-for-omnibox-autocomplete-filtering.patch -Revert-Delete-block-external-form-redirects.patch Add-flag-to-disable-external-intent-requests.patch Enable-share-intent.patch Logcat-crash-reports-UI.patch @@ -183,6 +181,7 @@ Disable-Feeback-Collector.patch Fix-chromium-build-bugs.patch Disable-privacy-issues-in-password-manager.patch Restore-chrome-password-store.patch +Use-browser-navigation-handler.patch eyeo-beta-118.0.5993.48-base.patch eyeo-beta-118.0.5993.48-chrome_integration.patch diff --git a/build/e_patches/0044-Disable-AGSA-by-default.patch b/build/e_patches/0044-Disable-AGSA-by-default.patch deleted file mode 100644 index e5db250f3638c03315ff1a0df3903155c8cd5f48..0000000000000000000000000000000000000000 --- a/build/e_patches/0044-Disable-AGSA-by-default.patch +++ /dev/null @@ -1,460 +0,0 @@ -From be8740175172974fcdbfe6ca98eef4c856389bd1 Mon Sep 17 00:00:00 2001 -From: csagan5 <32685696+csagan5@users.noreply.github.com> -Date: Sun, 26 Sep 2021 11:17:53 +0200 -Subject: [PATCH 44/55] Disable AGSA by default - -License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html ---- - chrome/android/BUILD.gn | 3 - - .../org/chromium/chrome/browser/AppHooks.java | 9 --- - .../chrome/browser/IntentHandler.java | 7 --- - .../chrome/browser/app/ChromeActivity.java | 61 ------------------- - .../ChromeContextMenuPopulator.java | 8 --- - ...stomTabActivityClientConnectionKeeper.java | 13 ---- - .../init/ProcessInitializationHandler.java | 3 - - .../SafeBrowsingReferringAppBridge.java | 2 - - .../chrome/browser/share/LensUtils.java | 17 +----- - .../chrome/browser/ui/RootUiCoordinator.java | 22 ------- - .../flags/android/chrome_feature_list.cc | 4 +- - .../browser/flags/ChromeFeatureList.java | 2 +- - chrome/browser/ui/android/omnibox/BUILD.gn | 2 - - 13 files changed, 5 insertions(+), 148 deletions(-) - -diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn -index 50d48551a8b64..ead7f59b30646 100644 ---- a/chrome/android/BUILD.gn -+++ b/chrome/android/BUILD.gn -@@ -426,7 +426,6 @@ if (current_toolchain == default_toolchain) { - "//chrome/browser/flags:java", - "//chrome/browser/fullscreen/android:java", - "//chrome/browser/gesturenav/android:java", -- "//chrome/browser/gsa:java", - "//chrome/browser/history:java", - "//chrome/browser/history_clusters:java", - "//chrome/browser/hub:factory_java", -@@ -1078,7 +1077,6 @@ if (current_toolchain == default_toolchain) { - "//chrome/browser/flags:flags_junit_tests", - "//chrome/browser/flags:java", - "//chrome/browser/fullscreen/android:java", -- "//chrome/browser/gsa:java", - "//chrome/browser/history:java", - "//chrome/browser/history_clusters:java", - "//chrome/browser/hub:factory_java", -@@ -1741,7 +1739,6 @@ if (current_toolchain == default_toolchain) { - "//chrome/browser/first_run/android:java", - "//chrome/browser/flags:java", - "//chrome/browser/fullscreen/android:java", -- "//chrome/browser/gsa:java", - "//chrome/browser/history_clusters:java", - "//chrome/browser/hub:factory_java", - "//chrome/browser/hub:java", -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/AppHooks.java b/chrome/android/java/src/org/chromium/chrome/browser/AppHooks.java -index 35267b8519866..b5361a4f1f8cb 100644 ---- a/chrome/android/java/src/org/chromium/chrome/browser/AppHooks.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/AppHooks.java -@@ -11,7 +11,6 @@ import androidx.annotation.Nullable; - import org.chromium.base.ContextUtils; - import org.chromium.base.ResettersForTesting; - import org.chromium.chrome.browser.customtabs.CustomTabsConnection; --import org.chromium.chrome.browser.gsa.GSAHelper; - import org.chromium.chrome.browser.init.ProcessInitializationHandler; - import org.chromium.chrome.browser.instantapps.InstantAppsHandler; - import org.chromium.chrome.browser.metrics.VariationsSession; -@@ -87,14 +86,6 @@ public abstract class AppHooks { - return new GoogleActivityController(); - } - -- /** -- * @return An instance of {@link GSAHelper} that handles the start point of chrome's integration -- * with GSA. -- */ -- public GSAHelper createGsaHelper() { -- return new GSAHelper(); -- } -- - public InstantAppsHandler createInstantAppsHandler() { - return new InstantAppsHandler(); - } -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java b/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java -index 848a6bef8b87e..d4502829a81b5 100644 ---- a/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java -@@ -39,7 +39,6 @@ import org.chromium.chrome.browser.document.ChromeLauncherActivity; - import org.chromium.chrome.browser.externalnav.IntentWithRequestMetadataHandler; - import org.chromium.chrome.browser.externalnav.IntentWithRequestMetadataHandler.RequestMetadata; - import org.chromium.chrome.browser.flags.ChromeFeatureList; --import org.chromium.chrome.browser.gsa.GSAState; - import org.chromium.chrome.browser.omnibox.suggestions.AutocompleteCoordinator; - import org.chromium.chrome.browser.profiles.Profile; - import org.chromium.chrome.browser.profiles.ProfileManager; -@@ -258,8 +257,6 @@ public class IntentHandler { - private static int sReferrerId; - private static String sPendingIncognitoUrl; - -- public static final String PACKAGE_GSA = GSAState.PACKAGE_NAME; -- - private static final String PACKAGE_GMAIL = "com.google.android.gm"; - private static final String PACKAGE_PLUS = "com.google.android.apps.plus"; - private static final String PACKAGE_HANGOUTS = "com.google.android.talk"; -@@ -298,7 +295,6 @@ public class IntentHandler { - ExternalAppId.NEWS, - ExternalAppId.LINE, - ExternalAppId.WHATSAPP, -- ExternalAppId.GSA, - ExternalAppId.WEBAPK, - ExternalAppId.YAHOO_MAIL, - ExternalAppId.VIBER, -@@ -318,7 +314,6 @@ public class IntentHandler { - int NEWS = 8; - int LINE = 9; - int WHATSAPP = 10; -- int GSA = 11; - int WEBAPK = 12; - int YAHOO_MAIL = 13; - int VIBER = 14; -@@ -485,8 +480,6 @@ public class IntentHandler { - return ExternalAppId.LINE; - } else if (packageName.equals(PACKAGE_WHATSAPP)) { - return ExternalAppId.WHATSAPP; -- } else if (packageName.equals(PACKAGE_GSA)) { -- return ExternalAppId.GSA; - } else if (packageName.equals(ContextUtils.getApplicationContext().getPackageName())) { - return ExternalAppId.CHROME; - } else if (packageName.startsWith(WEBAPK_PACKAGE_PREFIX)) { -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 0ac78ba39ff61..aa7a17e89b256 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 -@@ -113,9 +113,6 @@ import org.chromium.chrome.browser.fullscreen.BrowserControlsManager; - import org.chromium.chrome.browser.fullscreen.BrowserControlsManagerSupplier; - import org.chromium.chrome.browser.fullscreen.FullscreenBackPressHandler; - import org.chromium.chrome.browser.fullscreen.FullscreenManager; --import org.chromium.chrome.browser.gsa.ContextReporter; --import org.chromium.chrome.browser.gsa.GSAAccountChangeListener; --import org.chromium.chrome.browser.gsa.GSAState; - import org.chromium.chrome.browser.history.HistoryManagerUtils; - import org.chromium.chrome.browser.init.AsyncInitializationActivity; - import org.chromium.chrome.browser.init.ProcessInitializationHandler; -@@ -326,7 +323,6 @@ public abstract class ChromeActivity - private TabContentManager mTabContentManager; - - private final UmaActivityObserver mUmaActivityObserver; -- private ContextReporter mContextReporter; - - private boolean mPartnerBrowserRefreshNeeded; - -@@ -393,8 +389,6 @@ public abstract class ChromeActivity - - private LaunchCauseMetrics mLaunchCauseMetrics; - -- private GSAAccountChangeListener mGSAAccountChangeListener; -- - // TODO(crbug.com/40631552): Pull MenuOrKeyboardActionController out of ChromeActivity. - private List mMenuActionHandlers = - new ArrayList<>(); -@@ -1155,35 +1149,6 @@ public abstract class ChromeActivity - return StatusBarColorController.UNDEFINED_STATUS_BAR_COLOR; - } - -- private void createContextReporterIfNeeded() { -- if (!mStarted) return; // Sync state reporting should work only in started state. -- if (mContextReporter != null || getActivityTab() == null) return; -- -- final SyncService syncService = getSyncServiceForOriginalProfile(); -- -- if (syncService != null && syncService.isSyncingUnencryptedUrls()) { -- mContextReporter = -- AppHooks.get() -- .createGsaHelper() -- .getContextReporter( -- getActivityTabProvider(), -- mTabModelSelectorSupplier, -- mRootUiCoordinator.getContextReporter()); -- -- if (mSyncStateChangedListener != null) { -- syncService.removeSyncStateChangedListener(mSyncStateChangedListener); -- mSyncStateChangedListener = null; -- } -- -- return; -- } -- -- if (mSyncStateChangedListener == null && syncService != null) { -- mSyncStateChangedListener = () -> createContextReporterIfNeeded(); -- syncService.addSyncStateChangedListener(mSyncStateChangedListener); -- } -- } -- - @Override - public void onResumeWithNative() { - startUmaSession(); -@@ -1364,9 +1329,6 @@ public abstract class ChromeActivity - - @Override - public void onStopWithNative() { -- if (GSAState.getInstance().isGsaAvailable() && !SysUtils.isLowEndDevice()) { -- if (mGSAAccountChangeListener != null) mGSAAccountChangeListener.disconnect(); -- } - if (mSyncStateChangedListener != null) { - SyncService syncService = getSyncServiceForOriginalProfile(); - if (syncService != null) { -@@ -1374,9 +1336,6 @@ public abstract class ChromeActivity - } - mSyncStateChangedListener = null; - } -- if (mContextReporter != null) { -- mContextReporter.disable(); -- } - if (mFullscreenVideoPictureInPictureController != null) { - mFullscreenVideoPictureInPictureController.onStop(); - mFullscreenVideoPictureInPictureController = null; -@@ -1491,26 +1450,6 @@ public abstract class ChromeActivity - getProfileProviderSupplier().get().getOriginalProfile()); - }); - -- // GSA connection is not needed on low-end devices because Icing is disabled. -- if (!SysUtils.isLowEndDevice()) { -- DeferredStartupHandler.getInstance() -- .addDeferredTask( -- () -> { -- if (isActivityFinishingOrDestroyed() -- || !GSAState.getInstance().isGsaAvailable()) { -- return; -- } -- -- if (mGSAAccountChangeListener == null) { -- mGSAAccountChangeListener = -- GSAAccountChangeListener.create( -- AppHooks.get().createGsaHelper()); -- } -- mGSAAccountChangeListener.connect(); -- createContextReporterIfNeeded(); -- }); -- } -- - DeferredStartupHandler.getInstance() - .addDeferredTask( - () -> { -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 -index e7df4aaf5344e..ad4a1d33e282f 100644 ---- a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java -@@ -36,7 +36,6 @@ import org.chromium.chrome.browser.contextmenu.ContextMenuCoordinator.ListItemTy - import org.chromium.chrome.browser.feature_engagement.TrackerFactory; - import org.chromium.chrome.browser.firstrun.FirstRunStatus; - import org.chromium.chrome.browser.flags.ChromeFeatureList; --import org.chromium.chrome.browser.gsa.GSAState; - import org.chromium.chrome.browser.lens.LensController; - import org.chromium.chrome.browser.lens.LensEntryPoint; - import org.chromium.chrome.browser.lens.LensIntentParams; -@@ -878,13 +877,6 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator { - LensMetrics.LensSupportStatus.ACTIVITY_NOT_ACCESSIBLE); - return false; - } -- if (GSAState.getInstance() -- .isAgsaVersionBelowMinimum( -- versionName, LensUtils.getMinimumAgsaVersionForLensSupport())) { -- LensMetrics.recordLensSupportStatus( -- LENS_SUPPORT_STATUS_HISTOGRAM_NAME, LensMetrics.LensSupportStatus.OUT_OF_DATE); -- return false; -- } - - if (LensUtils.isDeviceOsBelowMinimum()) { - LensMetrics.recordLensSupportStatus( -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityClientConnectionKeeper.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityClientConnectionKeeper.java -index 72f0702465c22..19e1e4ffc455d 100644 ---- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityClientConnectionKeeper.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityClientConnectionKeeper.java -@@ -11,7 +11,6 @@ import org.chromium.base.metrics.RecordHistogram; - import org.chromium.chrome.browser.browserservices.intents.BrowserServicesIntentDataProvider; - import org.chromium.chrome.browser.customtabs.content.CustomTabActivityTabProvider; - import org.chromium.chrome.browser.dependency_injection.ActivityScope; --import org.chromium.chrome.browser.gsa.GSAState; - import org.chromium.chrome.browser.lifecycle.ActivityLifecycleDispatcher; - import org.chromium.chrome.browser.lifecycle.StartStopWithNativeObserver; - import org.chromium.chrome.browser.tab.Tab; -@@ -100,17 +99,5 @@ public class CustomTabActivityClientConnectionKeeper implements StartStopWithNat - } - } - assert status >= 0; -- -- if (GSAState.isGsaPackageName(packageName)) { -- RecordHistogram.recordEnumeratedHistogram( -- "CustomTabs.ConnectionStatusOnReturn.GSA", -- status, -- ConnectionStatus.NUM_ENTRIES); -- } else { -- RecordHistogram.recordEnumeratedHistogram( -- "CustomTabs.ConnectionStatusOnReturn.NonGSA", -- status, -- ConnectionStatus.NUM_ENTRIES); -- } - } - } -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java b/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java -index 56e3b7c66b051..2f68d7541c201 100644 ---- a/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java -@@ -664,9 +664,6 @@ public class ProcessInitializationHandler { - - tasks.add(() -> HomepageManager.getInstance().recordHomepageLocationTypeIfEnabled()); - -- // Starts syncing with GSA. -- tasks.add(() -> AppHooks.get().createGsaHelper().startSync()); -- - // Record the saved restore state in a histogram - tasks.add(ChromeBackupAgentImpl::recordRestoreHistogram); - -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/safe_browsing/SafeBrowsingReferringAppBridge.java b/chrome/android/java/src/org/chromium/chrome/browser/safe_browsing/SafeBrowsingReferringAppBridge.java -index 886639fa753de..43e567f639e17 100644 ---- a/chrome/android/java/src/org/chromium/chrome/browser/safe_browsing/SafeBrowsingReferringAppBridge.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/safe_browsing/SafeBrowsingReferringAppBridge.java -@@ -151,8 +151,6 @@ public class SafeBrowsingReferringAppBridge { - return "line"; - case ExternalAppId.WHATSAPP: - return "whatsapp"; -- case ExternalAppId.GSA: -- return "google.search.app"; - case ExternalAppId.WEBAPK: - return "webapk"; - case ExternalAppId.YAHOO_MAIL: -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils.java -index d8c1d27800e50..8ac011c04c1b2 100644 ---- a/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils.java -@@ -10,7 +10,6 @@ import android.os.Build; - import org.chromium.base.ResettersForTesting; - import org.chromium.chrome.browser.IntentHandler; - import org.chromium.chrome.browser.flags.ChromeFeatureList; --import org.chromium.chrome.browser.gsa.GSAState; - import org.chromium.components.externalauth.ExternalAuthUtils; - - /** This class provides utilities for intenting into Google Lens. */ -@@ -51,15 +50,7 @@ public class LensUtils { - if (sFakePassableLensEnvironmentForTesting) { - return MIN_AGSA_VERSION_NAME_FOR_LENS_POSTCAPTURE; - } else { -- if (context == null) { -- return ""; -- } -- String agsaVersion = GSAState.getInstance().getAgsaVersionName(); -- if (agsaVersion == null) { -- return ""; -- } else { -- return agsaVersion; -- } -+ return ""; - } - } - -@@ -98,11 +89,7 @@ public class LensUtils { - * @return Whether the package is valid. - */ - public static boolean isValidAgsaPackage(final ExternalAuthUtils externalAuthUtils) { -- if (sFakePassableLensEnvironmentForTesting) { -- return true; -- } -- -- return externalAuthUtils.isGoogleSigned(IntentHandler.PACKAGE_GSA); -+ return false; - } - - public static boolean isGoogleLensFeatureEnabled(boolean isIncognito) { -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 -index 1ef4c09bbd3f3..d70f3e4dbed08 100644 ---- a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java -@@ -73,7 +73,6 @@ import org.chromium.chrome.browser.flags.ActivityType; - import org.chromium.chrome.browser.flags.ChromeFeatureList; - import org.chromium.chrome.browser.fullscreen.BrowserControlsManager; - import org.chromium.chrome.browser.fullscreen.FullscreenManager; --import org.chromium.chrome.browser.gsa.ContextReporter; - import org.chromium.chrome.browser.identity_disc.IdentityDiscController; - import org.chromium.chrome.browser.image_descriptions.ImageDescriptionsController; - import org.chromium.chrome.browser.incognito.reauth.IncognitoReauthController; -@@ -935,23 +934,6 @@ public class RootUiCoordinator - mWindowAndroid, - mActivityLifecycleDispatcher); - mReadAloudControllerSupplier.set(controller); -- mReadAloudContextualSearchObserver = -- new ContextualSearchObserver() { -- @Override -- public void onShowContextualSearch() { -- controller.maybeHidePlayer(); -- } -- -- @Override -- public void onHideContextualSearch() { -- controller.maybeShowPlayer(); -- } -- }; -- ContextualSearchManager contextualSearchManager = -- mContextualSearchManagerSupplier.get(); -- if (contextualSearchManager != null) { -- contextualSearchManager.addObserver(mReadAloudContextualSearchObserver); -- } - } - } - -@@ -1016,10 +998,6 @@ public class RootUiCoordinator - } - } - -- public ContextReporter.SelectionReporter getContextReporter() { -- return null; -- } -- - /** - * @return The resource id that contains how large the browser controls are. - */ -diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc -index 6de2462940f8a..8db1a7516282e 100644 ---- a/chrome/browser/flags/android/chrome_feature_list.cc -+++ b/chrome/browser/flags/android/chrome_feature_list.cc -@@ -730,8 +730,8 @@ BASE_FEATURE(kEducationalTipModule, - base::FEATURE_DISABLED_BY_DEFAULT); - - BASE_FEATURE(kExperimentsForAgsa, -- "ExperimentsForAgsa", -- base::FEATURE_ENABLED_BY_DEFAULT); -+ "ExperimentsForAgsa", // disabled by default -+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite - - BASE_FEATURE(kFullscreenInsetsApiMigration, - "FullscreenInsetsApiMigration", -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 -index 4c36168ca5361..123e6caac6c90 100644 ---- 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 -@@ -637,7 +637,7 @@ public abstract class ChromeFeatureList { - newCachedFlag(EDGE_TO_EDGE_BOTTOM_CHIN, false); - public static final CachedFlag sEducationalTipModule = - newCachedFlag(EDUCATIONAL_TIP_MODULE, false); -- public static final CachedFlag sExperimentsForAgsa = newCachedFlag(EXPERIMENTS_FOR_AGSA, true); -+ public static final CachedFlag sExperimentsForAgsa = newCachedFlag(EXPERIMENTS_FOR_AGSA, false); - public static final CachedFlag sFeedLoadingPlaceholder = - newCachedFlag(FEED_LOADING_PLACEHOLDER, false); - public static final CachedFlag sForceListTabSwitcher = -diff --git a/chrome/browser/ui/android/omnibox/BUILD.gn b/chrome/browser/ui/android/omnibox/BUILD.gn -index f656028b2b87c..164c942113ce7 100644 ---- a/chrome/browser/ui/android/omnibox/BUILD.gn -+++ b/chrome/browser/ui/android/omnibox/BUILD.gn -@@ -163,7 +163,6 @@ android_library("java") { - "//chrome/browser/device:java", - "//chrome/browser/feature_engagement:java", - "//chrome/browser/flags:java", -- "//chrome/browser/gsa:java", - "//chrome/browser/history_clusters:java", - "//chrome/browser/language/android:java", - "//chrome/browser/lens:java", -@@ -482,7 +481,6 @@ robolectric_library("junit") { - "//chrome/browser/device:java", - "//chrome/browser/feature_engagement:java", - "//chrome/browser/flags:java", -- "//chrome/browser/gsa:java", - "//chrome/browser/lens:java", - "//chrome/browser/locale:java", - "//chrome/browser/preferences:java", --- -2.34.1 - diff --git a/build/e_patches/0014-Add-Mojeek-Search-engine.patch b/build/e_patches/Add-Mojeek-Search-engine.patch similarity index 88% rename from build/e_patches/0014-Add-Mojeek-Search-engine.patch rename to build/e_patches/Add-Mojeek-Search-engine.patch index ef6d18d3a3f4a66e91960495281fcc50bccfe58e..fae21b57a456b640120da3da1db101d756f08b6b 100644 --- a/build/e_patches/0014-Add-Mojeek-Search-engine.patch +++ b/build/e_patches/Add-Mojeek-Search-engine.patch @@ -1,7 +1,7 @@ -From 26055e9ddc99ad0b472eb87c5f805aeda9acf946 Mon Sep 17 00:00:00 2001 +From abaa31c9ecfce49d7021638c57cfe683cc9c9b5d Mon Sep 17 00:00:00 2001 From: TheScarastic Date: Wed, 16 Nov 2022 11:14:01 +0000 -Subject: [PATCH 14/55] Add Mojeek Search engine +Subject: Add Mojeek Search engine --- components/search_engines/search_engine_countries-inc.cc | 1 + diff --git a/build/e_patches/0010-Browser-Add-provider-to-share-default-search-engine.patch b/build/e_patches/Browser-Add-provider-to-share-default-search-engine.patch similarity index 95% rename from build/e_patches/0010-Browser-Add-provider-to-share-default-search-engine.patch rename to build/e_patches/Browser-Add-provider-to-share-default-search-engine.patch index 25d971adb749ed69dabbe157554b531639088e0e..850d70b9f158dc9b3c1f6e1157643e8b7d6541b8 100644 --- a/build/e_patches/0010-Browser-Add-provider-to-share-default-search-engine.patch +++ b/build/e_patches/Browser-Add-provider-to-share-default-search-engine.patch @@ -1,7 +1,7 @@ -From 2b6f8f0eaa00b591fb576a29c030438b1c7573d3 Mon Sep 17 00:00:00 2001 +From 35bdc9fcf99aba8e2a2cabeb2294fb428863dbbf Mon Sep 17 00:00:00 2001 From: Aayush Gupta Date: Fri, 26 Nov 2021 08:03:13 +0000 -Subject: [PATCH 10/55] Browser: Add provider to share default search engine +Subject: Browser: Add provider to share default search engine Signed-off-by: Aayush Gupta --- @@ -12,10 +12,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 df345ef6d1156..cc198cf2795f8 100644 +index 56722435b85b6..c54925669a2cb 100644 --- a/chrome/android/java/AndroidManifest.xml +++ b/chrome/android/java/AndroidManifest.xml -@@ -1309,6 +1309,12 @@ by a child template that "extends" this file. +@@ -1307,6 +1307,12 @@ by a child template that "extends" this file. android:readPermission="android.permission.GLOBAL_SEARCH" /> diff --git a/build/e_patches/0054-Browser-Change-adblock-url-to-ours.patch b/build/e_patches/Browser-Change-adblock-url-to-ours.patch similarity index 75% rename from build/e_patches/0054-Browser-Change-adblock-url-to-ours.patch rename to build/e_patches/Browser-Change-adblock-url-to-ours.patch index eaf808e2c3f0fa0161c77700fe979cf0dc2ce5ae..af515cddcbd25940b0b88795010de592950b0aef 100644 --- a/build/e_patches/0054-Browser-Change-adblock-url-to-ours.patch +++ b/build/e_patches/Browser-Change-adblock-url-to-ours.patch @@ -1,24 +1,24 @@ -From bfa898c4b2d66ce04c34b7044fe2b85a9885038e Mon Sep 17 00:00:00 2001 +From 150b423fdfd46f56e6d343398699388519ee71ff Mon Sep 17 00:00:00 2001 From: althafvly Date: Tue, 10 Sep 2024 12:17:23 +0530 -Subject: [PATCH 54/55] Browser: Change adblock url to ours +Subject: Browser: Change adblock url to ours --- - chrome/android/java/res/values/values.xml | 2 +- - .../chromium/chrome/browser/settings/AdBlockEditor.java | 8 ++++++++ - chrome/browser/browser_process_impl.cc | 9 ++++++++- - chrome/browser/net/system_network_context_manager.cc | 2 +- - 4 files changed, 18 insertions(+), 3 deletions(-) + chrome/android/java/res/values/values.xml | 2 +- + .../chrome/browser/settings/AdBlockEditor.java | 8 ++++++++ + chrome/browser/browser_process_impl.cc | 12 ++++++------ + chrome/browser/net/system_network_context_manager.cc | 2 +- + 4 files changed, 16 insertions(+), 8 deletions(-) diff --git a/chrome/android/java/res/values/values.xml b/chrome/android/java/res/values/values.xml -index ef8c5d368b080..90f579283c827 100644 +index e49a145f7bf9e..90f579283c827 100644 --- a/chrome/android/java/res/values/values.xml +++ b/chrome/android/java/res/values/values.xml @@ -24,7 +24,7 @@ found in the LICENSE file. Autoupdate enabled Autoupdate disabled -- https://www.bromite.org/custom-filters +- https://github.com/uazo/cromite/blob/master/docs/BROMITE_LEGACY_ADBLOCK.md + https://doc.e.foundation/browser-custom-filters Proxy configuration @@ -43,22 +43,27 @@ 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 6fccc52fa40f4..0e701a470bf5d 100644 +index 00940048a3211..d2c8dca7e2da9 100644 --- a/chrome/browser/browser_process_impl.cc +++ b/chrome/browser/browser_process_impl.cc -@@ -1208,12 +1208,19 @@ BrowserProcessImpl::adblock_updater() { +@@ -1238,11 +1238,11 @@ BrowserProcessImpl::adblock_updater() { std::unique_ptr scheduler = std::make_unique(); +- auto adblock_updater_url = +- local_state()->GetString(prefs::kAdBlockFiltersURL); +- if (base::StartsWith(adblock_updater_url, +- "https://www.bromite.org", base::CompareCase::INSENSITIVE_ASCII)) { +- local_state()->SetString(prefs::kAdBlockFiltersURL, "about:blank"); + std::string filters_url = local_state()->GetString(prefs::kAdBlockFiltersURL); + + // Check if the current URL is Bromite filters URL. If so, use the new URL + if (!filters_url.empty() && filters_url == "https://www.bromite.org/filters/filters.dat") { + filters_url = "https://images.ecloud.global/apps/browser/filters.dat"; -+ } -+ + } + adblock_updater_ = std::make_unique( - g_browser_process->system_network_context_manager()->GetSharedURLLoaderFactory(), +@@ -1250,7 +1250,7 @@ BrowserProcessImpl::adblock_updater() { std::move(scheduler), g_browser_process->subresource_filter_ruleset_service(), local_state()->GetBoolean(prefs::kAdBlockEnabled), @@ -68,14 +73,14 @@ index 6fccc52fa40f4..0e701a470bf5d 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 d447a5b9820b6..24f8ceccc4df9 100644 +index 92c95c2797f83..97e2f577818f3 100644 --- a/chrome/browser/net/system_network_context_manager.cc +++ b/chrome/browser/net/system_network_context_manager.cc -@@ -640,7 +640,7 @@ void SystemNetworkContextManager::RegisterPrefs(PrefRegistrySimple* registry) { +@@ -642,7 +642,7 @@ void SystemNetworkContextManager::RegisterPrefs(PrefRegistrySimple* registry) { registry->RegisterBooleanPref(prefs::kAdBlockEnabled, false); registry->RegisterStringPref(prefs::kAdBlockFiltersURL, -- "https://www.bromite.org/filters/filters.dat"); +- "about:blank"); + "https://images.ecloud.global/apps/browser/filters.dat"); // Static auth params diff --git a/build/e_patches/0007-Browser-Change-app-and-package-name-to-browser.patch b/build/e_patches/Browser-Change-app-and-package-name-to-browser.patch similarity index 92% rename from build/e_patches/0007-Browser-Change-app-and-package-name-to-browser.patch rename to build/e_patches/Browser-Change-app-and-package-name-to-browser.patch index 52247a9d2278a488d38ce5a73121e6b805c21938..f8b19c2126d280cfb7e84ee3be3f213ba4e4e48f 100644 --- a/build/e_patches/0007-Browser-Change-app-and-package-name-to-browser.patch +++ b/build/e_patches/Browser-Change-app-and-package-name-to-browser.patch @@ -1,7 +1,7 @@ -From 0315a4980012892de720e22d652460344e7944b3 Mon Sep 17 00:00:00 2001 +From b48001e6f04d453f3bd5764e9032e802a33ca8b5 Mon Sep 17 00:00:00 2001 From: Aayush Gupta Date: Fri, 26 Nov 2021 05:39:25 +0000 -Subject: [PATCH 07/55] Browser: Change app and package name to browser +Subject: Browser: Change app and package name to browser Signed-off-by: Aayush Gupta Signed-off-by: althafvly diff --git a/build/e_patches/0020-Browser-Change-info-bar-icon.patch b/build/e_patches/Browser-Change-info-bar-icon.patch similarity index 99% rename from build/e_patches/0020-Browser-Change-info-bar-icon.patch rename to build/e_patches/Browser-Change-info-bar-icon.patch index da7b85910ee177291bc88eedef9c399a0bbb3486..078160631b1c8f8be8b72d0e806c872e3380f61e 100644 --- a/build/e_patches/0020-Browser-Change-info-bar-icon.patch +++ b/build/e_patches/Browser-Change-info-bar-icon.patch @@ -1,7 +1,7 @@ -From d245d3eda8709b3b0f045866e1af5da364805237 Mon Sep 17 00:00:00 2001 +From 0ba75217686c820795a08e180ccee8ffb505d1e1 Mon Sep 17 00:00:00 2001 From: althafvly Date: Wed, 14 Dec 2022 16:17:58 +0530 -Subject: [PATCH 20/55] Browser: Change info bar icon +Subject: Browser: Change info bar icon --- .../java/res/drawable-hdpi/infobar_chrome.png | Bin 1039 -> 1450 bytes diff --git a/build/e_patches/0031-Browser-Disable-Android-native-autofill-by-default.patch b/build/e_patches/Browser-Disable-Android-native-autofill-by-default.patch similarity index 84% rename from build/e_patches/0031-Browser-Disable-Android-native-autofill-by-default.patch rename to build/e_patches/Browser-Disable-Android-native-autofill-by-default.patch index 35cba844b7150a177943d652a512386d291daff8..833e416630174b6ff8f95162204552875a1c74b8 100644 --- a/build/e_patches/0031-Browser-Disable-Android-native-autofill-by-default.patch +++ b/build/e_patches/Browser-Disable-Android-native-autofill-by-default.patch @@ -1,14 +1,14 @@ -From 6f85e8a815fc35ff33fa3feacb5a537f49abba23 Mon Sep 17 00:00:00 2001 +From 9a82f14ee00677acb38a9abc4e973c862e32e334 Mon Sep 17 00:00:00 2001 From: althafvly Date: Tue, 22 Aug 2023 06:16:40 +0000 -Subject: [PATCH 31/55] Browser: Disable Android native autofill by default +Subject: Browser: Disable Android native autofill by default --- 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 2cfa693f3343e..31ab465929c38 100644 +index 11c7c808c46c7..21edddfc6bdd8 100644 --- a/components/autofill/core/common/autofill_prefs.cc +++ b/components/autofill/core/common/autofill_prefs.cc @@ -67,7 +67,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) { diff --git a/build/e_patches/0011-Browser-Enable-custom-tabs-by-default.patch b/build/e_patches/Browser-Enable-custom-tabs-by-default.patch similarity index 85% rename from build/e_patches/0011-Browser-Enable-custom-tabs-by-default.patch rename to build/e_patches/Browser-Enable-custom-tabs-by-default.patch index 58c3e8294139da87cc5b0c510de36fa92ec0982e..507b8d91e210902a623f6e9f6e6f2b98681e7703 100644 --- a/build/e_patches/0011-Browser-Enable-custom-tabs-by-default.patch +++ b/build/e_patches/Browser-Enable-custom-tabs-by-default.patch @@ -1,7 +1,7 @@ -From 1987fe5f7455de0a884dfc8dbd6eab1e4dbc4399 Mon Sep 17 00:00:00 2001 +From 7811e2694e7b2af68ca2200e6275a14d3109dfb7 Mon Sep 17 00:00:00 2001 From: Aayush Gupta Date: Mon, 29 Nov 2021 03:37:37 +0000 -Subject: [PATCH 11/55] Browser: Enable custom tabs by default +Subject: Browser: Enable custom tabs by default Signed-off-by: Aayush Gupta Signed-off-by: althafvly @@ -11,7 +11,7 @@ Signed-off-by: althafvly 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml -index 271187633c7f6..f0c280636144b 100644 +index 778020bb87f4c..91183f69c335e 100644 --- a/chrome/android/java/res/xml/privacy_preferences.xml +++ b/chrome/android/java/res/xml/privacy_preferences.xml @@ -68,7 +68,7 @@ found in the LICENSE file. @@ -21,8 +21,8 @@ index 271187633c7f6..f0c280636144b 100644 - android:defaultValue="false" /> + android:defaultValue="true" /> Date: Fri, 26 Nov 2021 07:34:57 +0000 -Subject: [PATCH 09/55] Browser: Enable do not track by default +Subject: Browser: Enable do not track by default --- components/privacy_sandbox/tracking_protection_prefs.cc | 2 +- diff --git a/build/e_patches/0012-Browser-Enable-search-suggestion-by-default.patch b/build/e_patches/Browser-Enable-search-suggestion-by-default.patch similarity index 81% rename from build/e_patches/0012-Browser-Enable-search-suggestion-by-default.patch rename to build/e_patches/Browser-Enable-search-suggestion-by-default.patch index 4cc9a2b528a857ea23e18d1bf7d46d7c72b7bf2d..90a6daad92637f3ef488083eea90aa9e205fbeb8 100644 --- a/build/e_patches/0012-Browser-Enable-search-suggestion-by-default.patch +++ b/build/e_patches/Browser-Enable-search-suggestion-by-default.patch @@ -1,7 +1,7 @@ -From 85eb0cd1c902afb23c2aa4facd0900007ac14057 Mon Sep 17 00:00:00 2001 +From 42a1a344892239693d85a8b579f9b9bd39e9dfe0 Mon Sep 17 00:00:00 2001 From: Aayush Gupta Date: Mon, 29 Nov 2021 03:39:21 +0000 -Subject: [PATCH 12/55] Browser: Enable search suggestion by default +Subject: Browser: Enable search suggestion by default Signed-off-by: Aayush Gupta --- @@ -9,7 +9,7 @@ Signed-off-by: Aayush Gupta 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chrome/browser/profiles/profile.cc b/chrome/browser/profiles/profile.cc -index e0209fcebd1d5..e2db3688e3e0b 100644 +index fb6b849cc4996..76e435416e7ca 100644 --- a/chrome/browser/profiles/profile.cc +++ b/chrome/browser/profiles/profile.cc @@ -318,7 +318,7 @@ const char Profile::kProfileKey[] = "__PROFILE__"; diff --git a/build/e_patches/0032-Browser-Enable-unified-autoplay-by-default.patch b/build/e_patches/Browser-Enable-unified-autoplay-by-default.patch similarity index 91% rename from build/e_patches/0032-Browser-Enable-unified-autoplay-by-default.patch rename to build/e_patches/Browser-Enable-unified-autoplay-by-default.patch index 27c2d059d7ec060bc88843f507c36124cc490b11..efa79ffaa5aa8eddca32f8daed306479e1b90737 100644 --- a/build/e_patches/0032-Browser-Enable-unified-autoplay-by-default.patch +++ b/build/e_patches/Browser-Enable-unified-autoplay-by-default.patch @@ -1,7 +1,7 @@ -From 7845f035342a8e22126141e633f43868a5351381 Mon Sep 17 00:00:00 2001 +From bc0b0c1114584537be6bb8a08266b081bc01072b Mon Sep 17 00:00:00 2001 From: althafvly Date: Fri, 29 Sep 2023 16:30:17 +0530 -Subject: [PATCH 32/55] Browser: Enable unified autoplay by default +Subject: Browser: Enable unified autoplay by default --- .../content_settings/core/browser/content_settings_registry.cc | 2 +- @@ -9,7 +9,7 @@ Subject: [PATCH 32/55] Browser: Enable unified autoplay by default 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 125daa70a8b89..6c7a848a35db0 100644 +index 569a294201d64..e6097a8316998 100644 --- a/components/content_settings/core/browser/content_settings_registry.cc +++ b/components/content_settings/core/browser/content_settings_registry.cc @@ -248,7 +248,7 @@ void ContentSettingsRegistry::Init() { diff --git a/build/e_patches/0036-Browser-Enable-webRTC-by-default.patch b/build/e_patches/Browser-Enable-webRTC-by-default.patch similarity index 90% rename from build/e_patches/0036-Browser-Enable-webRTC-by-default.patch rename to build/e_patches/Browser-Enable-webRTC-by-default.patch index a2fc240fd80754829c53bdf7c8b9a27921959295..679821f84815bb0d7bcf8c4ab29df63ee116b103 100644 --- a/build/e_patches/0036-Browser-Enable-webRTC-by-default.patch +++ b/build/e_patches/Browser-Enable-webRTC-by-default.patch @@ -1,7 +1,7 @@ -From 1228c5b66361bf15d98484ebabdf1574d1186d09 Mon Sep 17 00:00:00 2001 +From e95149623d91f79da91fee02b4184671d773dffa Mon Sep 17 00:00:00 2001 From: althafvly Date: Fri, 20 Oct 2023 18:49:36 +0530 -Subject: [PATCH 36/55] Browser: Enable webRTC by default +Subject: Browser: Enable webRTC by default --- .../core/browser/bromite_content_settings/webrtc.inc | 2 +- @@ -21,10 +21,10 @@ index 69b2de0ff52fa..c4ce181e6c88c 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 f919adeef1cb8..4ff3204cbcdfc 100644 +index 38e41858cb95c..c612f4e833ed8 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 -@@ -891,7 +891,7 @@ PeerConnectionDependencyFactory::CreatePortAllocator( +@@ -889,7 +889,7 @@ PeerConnectionDependencyFactory::CreatePortAllocator( WebRTCIPHandlingPolicy policy = GetWebRTCIPHandlingPolicy(webrtc_ip_handling_policy); blink::WebContentSettingsClient* settings = web_frame->GetContentSettingsClient(); @@ -34,7 +34,7 @@ index f919adeef1cb8..4ff3204cbcdfc 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 7476f0f618392..6f55afab7f0b1 100644 +index 2de296f5f575b..1939cddabb50a 100644 --- a/third_party/blink/renderer/modules/peerconnection/rtc_rtp_receiver.cc +++ b/third_party/blink/renderer/modules/peerconnection/rtc_rtp_receiver.cc @@ -288,7 +288,7 @@ RTCRtpCapabilities* RTCRtpReceiver::getCapabilities(ScriptState* state, @@ -47,10 +47,10 @@ index 7476f0f618392..6f55afab7f0b1 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 492474848a57d..8ed2e87ad3cd4 100644 +index 527fe23328f33..88c5f065b6e28 100644 --- a/third_party/blink/renderer/modules/peerconnection/rtc_rtp_sender.cc +++ b/third_party/blink/renderer/modules/peerconnection/rtc_rtp_sender.cc -@@ -1019,7 +1019,7 @@ RTCRtpCapabilities* RTCRtpSender::getCapabilities(ScriptState* state, +@@ -1033,7 +1033,7 @@ RTCRtpCapabilities* RTCRtpSender::getCapabilities(ScriptState* state, auto* web_frame = static_cast(WebFrame::FromCoreFrame(window->GetFrame())); blink::WebContentSettingsClient* settings = web_frame->GetContentSettingsClient(); diff --git a/build/e_patches/0037-Browser-Enable-webgl-by-default.patch b/build/e_patches/Browser-Enable-webgl-by-default.patch similarity index 91% rename from build/e_patches/0037-Browser-Enable-webgl-by-default.patch rename to build/e_patches/Browser-Enable-webgl-by-default.patch index d07971ce00c8da0e70d21164a3a00ff823e9e396..93c43903df2e8904991b53ff879541a43801c657 100644 --- a/build/e_patches/0037-Browser-Enable-webgl-by-default.patch +++ b/build/e_patches/Browser-Enable-webgl-by-default.patch @@ -1,7 +1,7 @@ -From 0ead3a76384e392578566a4f3933f95a286ef095 Mon Sep 17 00:00:00 2001 +From 380dd8e2eda16f012163de2d9c7005351d0ab6e2 Mon Sep 17 00:00:00 2001 From: althafvly Date: Tue, 24 Oct 2023 14:39:06 +0530 -Subject: [PATCH 37/55] Browser: Enable webgl by default +Subject: Browser: Enable webgl by default --- .../core/browser/bromite_content_settings/webgl.inc | 2 +- @@ -19,7 +19,7 @@ index 3ff01832baef4..dd88ffeab7bbb 100644 /*allowlisted_schemes=*/{}, /*valid_settings=*/{CONTENT_SETTING_ALLOW, diff --git a/third_party/blink/renderer/core/execution_context/execution_context.cc b/third_party/blink/renderer/core/execution_context/execution_context.cc -index b5aa05f0eb600..e086365daeabc 100644 +index 1a7909cd62f6f..95810a19c8a3f 100644 --- a/third_party/blink/renderer/core/execution_context/execution_context.cc +++ b/third_party/blink/renderer/core/execution_context/execution_context.cc @@ -88,8 +88,8 @@ blink::WebContentSettingsClient* GetContentSettingsClientFor( diff --git a/build/e_patches/0060-Browser-Fix-open-in-browser-text.patch b/build/e_patches/Browser-Fix-open-in-browser-text.patch similarity index 91% rename from build/e_patches/0060-Browser-Fix-open-in-browser-text.patch rename to build/e_patches/Browser-Fix-open-in-browser-text.patch index 8633c541e667ad09cf0a3854b2fd4f0bcf91bbe3..6f038a8c4596a54ba4167a641a6ff1bf46b1f034 100644 --- a/build/e_patches/0060-Browser-Fix-open-in-browser-text.patch +++ b/build/e_patches/Browser-Fix-open-in-browser-text.patch @@ -1,7 +1,7 @@ -From 11c0088f744aa35b17e61b6931a2c50832b44cad Mon Sep 17 00:00:00 2001 +From 467764dad4813e395823cd1bde95bc756f72bef5 Mon Sep 17 00:00:00 2001 From: althafvly Date: Wed, 2 Oct 2024 11:41:48 +0530 -Subject: [PATCH 60/60] Browser: Fix open in browser text +Subject: Browser: Fix open in browser text --- .../chromium/chrome/browser/DefaultBrowserInfo.java | 10 +++++++--- diff --git a/build/e_patches/0052-Browser-Hide-settings-when-parental-control-is-activ.patch b/build/e_patches/Browser-Hide-settings-when-parental-control-is-active.patch similarity index 90% rename from build/e_patches/0052-Browser-Hide-settings-when-parental-control-is-activ.patch rename to build/e_patches/Browser-Hide-settings-when-parental-control-is-active.patch index 47925e3d29bf942d94b196bd08dc9c82d0a7609e..4332ab26a1f1e266f1333be6f82bc60f514e8a1a 100644 --- a/build/e_patches/0052-Browser-Hide-settings-when-parental-control-is-activ.patch +++ b/build/e_patches/Browser-Hide-settings-when-parental-control-is-active.patch @@ -1,7 +1,7 @@ -From d40e71931beec199712dbc0876fd2b51c5d38deb Mon Sep 17 00:00:00 2001 +From c49d1d43cb4179053e362893cc6f9f9485e10f4b Mon Sep 17 00:00:00 2001 From: althafvly Date: Thu, 11 Jul 2024 11:11:15 +0530 -Subject: [PATCH 52/55] Browser: Hide settings when parental control is active +Subject: Browser: Hide settings when parental control is active --- .../chrome/browser/app/ChromeActivity.java | 2 +- @@ -11,7 +11,7 @@ Subject: [PATCH 52/55] Browser: Hide settings when parental control is active 4 files changed, 39 insertions(+), 1 deletion(-) 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 57ea3826e03ec..00f4f9b840608 100644 +index d6f839c4ebd18..5a760d9676853 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 @@ -2497,7 +2497,7 @@ public abstract class ChromeActivity @@ -24,7 +24,7 @@ index 57ea3826e03ec..00f4f9b840608 100644 settingsLauncher.launchSettingsActivity(this); RecordUserAction.record("MobileMenuSettings"); 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 4baf8454f5361..c8e0f8b839335 100644 +index bd7e512683475..771b228a9247e 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 @@ -37,6 +37,7 @@ import org.chromium.base.supplier.OneshotSupplier; @@ -47,10 +47,10 @@ index 4baf8454f5361..c8e0f8b839335 100644 item.setEnabled(false); } 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 05f115e66579d..71d0986e8dc9f 100644 +index 2b6f01e286169..fe19e021f34c0 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 -@@ -50,6 +50,7 @@ import org.chromium.chrome.browser.webapps.WebappLauncherActivity; +@@ -51,6 +51,7 @@ import org.chromium.chrome.browser.webapps.WebappLauncherActivity; import org.chromium.components.omnibox.OmniboxFeatures; import org.chromium.components.signin.SigninFeatureMap; @@ -58,7 +58,7 @@ index 05f115e66579d..71d0986e8dc9f 100644 import java.util.ArrayList; import java.util.List; -@@ -232,4 +233,32 @@ public class ChromeCachedFlags { +@@ -233,4 +234,32 @@ public class ChromeCachedFlags { return cachedFlag.isEnabled(); } @@ -92,10 +92,10 @@ index 05f115e66579d..71d0986e8dc9f 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 bbc8444e0d2ef..bb4427af318d6 100644 +index 77aac47fe7602..a1997f18d8a63 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 -@@ -24,6 +24,7 @@ import org.chromium.base.supplier.ObservableSupplier; +@@ -25,6 +25,7 @@ import org.chromium.base.supplier.ObservableSupplierImpl; import org.chromium.base.task.PostTask; import org.chromium.base.task.TaskTraits; import org.chromium.chrome.R; @@ -103,7 +103,7 @@ index bbc8444e0d2ef..bb4427af318d6 100644 import org.chromium.chrome.browser.autofill.options.AutofillOptionsFragment; import org.chromium.chrome.browser.autofill.options.AutofillOptionsFragment.AutofillOptionsReferrer; import org.chromium.chrome.browser.autofill.settings.SettingsLauncherHelper; -@@ -166,6 +167,9 @@ public class MainSettings extends ChromeBaseSettingsFragment +@@ -177,6 +178,9 @@ public class MainSettings extends ChromeBaseSettingsFragment @Override public void onStart() { diff --git a/build/e_patches/0013-Browser-Modify-default-search-engines.patch b/build/e_patches/Browser-Modify-default-search-engines.patch similarity index 95% rename from build/e_patches/0013-Browser-Modify-default-search-engines.patch rename to build/e_patches/Browser-Modify-default-search-engines.patch index ed3852c38da9d138de95461eb7ac0cfc8969281c..025f32cdc7dc698cca954c9c566bb74ceb598509 100644 --- a/build/e_patches/0013-Browser-Modify-default-search-engines.patch +++ b/build/e_patches/Browser-Modify-default-search-engines.patch @@ -1,7 +1,7 @@ -From 5db0953b8304d70041f1794f141c09aba010402e Mon Sep 17 00:00:00 2001 +From e49ef24df0d2677c930c935743024763256d2171 Mon Sep 17 00:00:00 2001 From: Aayush Gupta Date: Thu, 18 Mar 2021 13:42:44 +0100 -Subject: [PATCH 13/55] Browser: Modify default search engines +Subject: Browser: Modify default search engines Signed-off-by: althafvly --- @@ -102,10 +102,10 @@ index c63dc8bd3eab2..b9c9db2d6d08d 100644 LocaleTemplateUrlLoader(const LocaleTemplateUrlLoader&) = delete; LocaleTemplateUrlLoader& operator=(const LocaleTemplateUrlLoader&) = delete; diff --git a/chrome/browser/locale/java/src/org/chromium/chrome/browser/locale/LocaleManagerDelegate.java b/chrome/browser/locale/java/src/org/chromium/chrome/browser/locale/LocaleManagerDelegate.java -index c0db639ca8805..eac0542981085 100644 +index 4ef1f73cb30ed..326fb8ddae2f2 100644 --- a/chrome/browser/locale/java/src/org/chromium/chrome/browser/locale/LocaleManagerDelegate.java +++ b/chrome/browser/locale/java/src/org/chromium/chrome/browser/locale/LocaleManagerDelegate.java -@@ -142,7 +142,6 @@ public class LocaleManagerDelegate { +@@ -140,7 +140,6 @@ public class LocaleManagerDelegate { */ private void revertDefaultSearchEngineOverride() { if (!isSearchEngineAutoSwitchEnabled() || isSpecialLocaleEnabled()) return; @@ -139,10 +139,10 @@ index 62cc958ac7857..ed1b48622109c 100644 } } diff --git a/components/search_engines/prepopulated_engines.json b/components/search_engines/prepopulated_engines.json -index 7e952d7bf5b4c..a9b0d9caa492c 100644 +index 760b3ec475533..8a3b7e6eff002 100644 --- a/components/search_engines/prepopulated_engines.json +++ b/components/search_engines/prepopulated_engines.json -@@ -125,6 +125,16 @@ +@@ -143,6 +143,16 @@ "id": 12 }, @@ -179,7 +179,7 @@ index 40e5dca728495..8ecad995b90d0 100644 // Note, the below entries are sorted by country code, not the name in comment. diff --git a/components/search_engines/search_engine_type.h b/components/search_engines/search_engine_type.h -index 1c067e454fc49..6764f40d4ed1b 100644 +index 18413c59ccdfd..2a53f07d642d8 100644 --- a/components/search_engines/search_engine_type.h +++ b/components/search_engines/search_engine_type.h @@ -93,11 +93,12 @@ enum SearchEngineType { @@ -220,10 +220,10 @@ index eaa4068131f1f..321cb90c9037a 100644 // First check the main search URL. if (SameDomain( diff --git a/components/search_engines/template_url_prepopulate_data.cc b/components/search_engines/template_url_prepopulate_data.cc -index 0babb9cdccbd7..d77205c7e2389 100644 +index ae4a5cef2d044..4336447d40a57 100644 --- a/components/search_engines/template_url_prepopulate_data.cc +++ b/components/search_engines/template_url_prepopulate_data.cc -@@ -91,6 +91,11 @@ GetPrepopulatedEnginesForEeaRegionCountries(int country_id, +@@ -89,6 +89,11 @@ GetPrepopulatedEnginesForEeaRegionCountries(int country_id, std::vector> GetPrepopulatedTemplateURLData( int country_id, PrefService* prefs) { @@ -235,7 +235,7 @@ index 0babb9cdccbd7..d77205c7e2389 100644 std::vector> t_urls; if (!prefs) { -@@ -327,7 +332,7 @@ std::unique_ptr GetPrepopulatedFallbackSearch( +@@ -323,7 +328,7 @@ std::unique_ptr GetPrepopulatedFallbackSearch( PrefService* prefs, search_engines::SearchEngineChoiceService* search_engine_choice_service) { return FindPrepopulatedEngineInternal(prefs, search_engine_choice_service, diff --git a/build/e_patches/0008-Browser-Point-to-our-default-popular-sites.patch b/build/e_patches/Browser-Point-to-our-default-popular-sites.patch similarity index 94% rename from build/e_patches/0008-Browser-Point-to-our-default-popular-sites.patch rename to build/e_patches/Browser-Point-to-our-default-popular-sites.patch index e2c2a9e2c07d192d12576be359a8298b0b1f6a13..140f23f3cd5c5640ed1df95db340c56d2f878b7a 100644 --- a/build/e_patches/0008-Browser-Point-to-our-default-popular-sites.patch +++ b/build/e_patches/Browser-Point-to-our-default-popular-sites.patch @@ -1,7 +1,7 @@ -From 636e76e4b89ba56b6050d7f7b2c987a676e409fc Mon Sep 17 00:00:00 2001 +From 1594116c752735080376203abf7f80e33787f260 Mon Sep 17 00:00:00 2001 From: Aayush Gupta Date: Fri, 26 Nov 2021 07:29:59 +0000 -Subject: [PATCH 08/55] Browser: Point to our default popular sites +Subject: Browser: Point to our default popular sites Signed-off-by: Aayush Gupta --- diff --git a/build/e_patches/0015-Browser-Redirect-users-to-e-foundation-docs.patch b/build/e_patches/Browser-Redirect-users-to-e-foundation-docs.patch similarity index 94% rename from build/e_patches/0015-Browser-Redirect-users-to-e-foundation-docs.patch rename to build/e_patches/Browser-Redirect-users-to-e-foundation-docs.patch index c079f2edaa48100207be97bf7d00581cb93ef892..545613b50a4921b06ec517bb5365b6cceaa9d8cf 100644 --- a/build/e_patches/0015-Browser-Redirect-users-to-e-foundation-docs.patch +++ b/build/e_patches/Browser-Redirect-users-to-e-foundation-docs.patch @@ -1,7 +1,7 @@ -From 058d6205f340b0865053dd8da408b691fb6e5008 Mon Sep 17 00:00:00 2001 +From 42ee98f756b6d40363dde7201cb810e0ac48c4d7 Mon Sep 17 00:00:00 2001 From: Aayush Gupta Date: Tue, 11 May 2021 14:22:00 +0200 -Subject: [PATCH 15/55] Browser: Redirect users to e foundation docs +Subject: Browser: Redirect users to e foundation docs Signed-off-by: Aayush Gupta --- diff --git a/build/e_patches/0030-Browser-Remove-broken-link-about-entries.patch b/build/e_patches/Browser-Remove-broken-link-about-entries.patch similarity index 91% rename from build/e_patches/0030-Browser-Remove-broken-link-about-entries.patch rename to build/e_patches/Browser-Remove-broken-link-about-entries.patch index ad40e4bdd0137c5416a4e86d87d329547e59edbb..7fcdad1d85061b10228bb59e8fc7d92794f583fb 100644 --- a/build/e_patches/0030-Browser-Remove-broken-link-about-entries.patch +++ b/build/e_patches/Browser-Remove-broken-link-about-entries.patch @@ -1,7 +1,7 @@ -From b0d5d9f8a28baf876fe493707563abbae6645ad3 Mon Sep 17 00:00:00 2001 +From cb2205cd8ff575a8f3a8303cfed3dd3ccf3a7b66 Mon Sep 17 00:00:00 2001 From: althafvly Date: Mon, 20 Feb 2023 07:39:35 +0000 -Subject: [PATCH 30/55] Browser: Remove broken link about entries +Subject: Browser: Remove broken link about entries --- .../java/res/xml/legal_information_preferences.xml | 12 ------------ diff --git a/build/e_patches/0021-Browser-Remove-logo-from-chrome-version.patch b/build/e_patches/Browser-Remove-logo-from-chromeversion.patch similarity index 90% rename from build/e_patches/0021-Browser-Remove-logo-from-chrome-version.patch rename to build/e_patches/Browser-Remove-logo-from-chromeversion.patch index 4444ba39be260f93997dbf617ac592aedf2baac6..3dda16dfee81e5a80829b6841dcfc5d80e2c89dc 100644 --- a/build/e_patches/0021-Browser-Remove-logo-from-chrome-version.patch +++ b/build/e_patches/Browser-Remove-logo-from-chromeversion.patch @@ -1,7 +1,7 @@ -From f89a34e2680393175a26b3368982a0a4081a7fda Mon Sep 17 00:00:00 2001 +From 3ecb9db33205dfa24c9ec3f54bc44c887debdf9a Mon Sep 17 00:00:00 2001 From: A Mak Date: Sat, 25 Jul 2020 17:56:47 -0700 -Subject: [PATCH 21/55] Browser: Remove logo from chrome://version +Subject: Browser: Remove logo from chrome://version --- components/version_ui/resources/about_version.html | 7 ------- diff --git a/build/e_patches/0035-Browser-Remove-send-to-devices-option.patch b/build/e_patches/Browser-Remove-send-to-devices-option.patch similarity index 93% rename from build/e_patches/0035-Browser-Remove-send-to-devices-option.patch rename to build/e_patches/Browser-Remove-send-to-devices-option.patch index 8a2c18fd64d665cecd6843366bbd32e73f1b1299..06e902a4c13d8e85f3c82df9ff799c06b7a9f6b2 100644 --- a/build/e_patches/0035-Browser-Remove-send-to-devices-option.patch +++ b/build/e_patches/Browser-Remove-send-to-devices-option.patch @@ -1,14 +1,14 @@ -From cdfbe62463780d78ff0a4ab472689afc4ca0ed94 Mon Sep 17 00:00:00 2001 +From d5581f1dfd686d85c53bf33a1b4c20f64b446483 Mon Sep 17 00:00:00 2001 From: althafvly Date: Fri, 20 Oct 2023 18:23:09 +0530 -Subject: [PATCH 35/55] Browser: Remove send to devices option +Subject: Browser: Remove send to devices option --- ...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 e7a43ac7860ae..6dca7a9035501 100644 +index d28f469d49760..99621a3ce2e5d 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 @@ -270,7 +270,6 @@ public abstract class ChromeProvidedSharingOptionsProviderBase { @@ -34,7 +34,7 @@ index e7a43ac7860ae..6dca7a9035501 100644 private void maybeAddQrCodeFirstPartyOption() { } -@@ -385,31 +376,6 @@ public abstract class ChromeProvidedSharingOptionsProviderBase { +@@ -395,31 +386,6 @@ public abstract class ChromeProvidedSharingOptionsProviderBase { .build(); } diff --git a/build/e_patches/0018-Browser-Rename-strings-to-browser.patch b/build/e_patches/Browser-Rename-strings-to-browser.patch similarity index 92% rename from build/e_patches/0018-Browser-Rename-strings-to-browser.patch rename to build/e_patches/Browser-Rename-strings-to-browser.patch index bfa3fa37244ccc51699932fa916797b35b008d10..1ca9c229ba8e368d1325b27ac3e93ef0a708fe97 100644 --- a/build/e_patches/0018-Browser-Rename-strings-to-browser.patch +++ b/build/e_patches/Browser-Rename-strings-to-browser.patch @@ -1,7 +1,7 @@ -From b4f2629058deaaf37b55b81945b87002c6e251c0 Mon Sep 17 00:00:00 2001 +From f45e6547eb191e474664494c22cd8f7675a7f832 Mon Sep 17 00:00:00 2001 From: Aayush Gupta Date: Fri, 26 Nov 2021 07:12:30 +0000 -Subject: [PATCH 18/55] Browser: Rename strings to browser +Subject: Browser: Rename strings to browser Signed-off-by: Aayush Gupta --- @@ -27,10 +27,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 fe807929ef2ab..4abeadc40ba5b 100644 +index 5d33049d737f2..b9ba03528d973 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 -@@ -28,7 +28,7 @@ public class AboutChromeSettings extends PreferenceFragmentCompat +@@ -31,7 +31,7 @@ public class AboutChromeSettings extends PreferenceFragmentCompat private static final String PREF_APPLICATION_VERSION = "application_version"; private static final String PREF_OS_VERSION = "os_version"; @@ -39,7 +39,7 @@ index fe807929ef2ab..4abeadc40ba5b 100644 // Non-translated strings: private static final String MSG_DEVELOPER_ENABLE_COUNTDOWN = -@@ -54,9 +54,9 @@ public class AboutChromeSettings extends PreferenceFragmentCompat +@@ -58,9 +58,9 @@ public class AboutChromeSettings extends PreferenceFragmentCompat p.setOnPreferenceClickListener(this); p = findPreference(PREF_OS_VERSION); p.setSummary(AboutSettingsBridge.getOSVersion()); @@ -51,9 +51,9 @@ index fe807929ef2ab..4abeadc40ba5b 100644 + p.setSummary(getString(R.string.e_browser_information)); } - /** + @Override diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd -index 48a783d6f7c35..1e5da5a50102d 100644 +index 5c5d011e4d8bf..9b1def64a5349 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: diff --git a/build/e_patches/0028-Browser-Replace-default-tab-favicon.patch b/build/e_patches/Browser-Replace-default-tab-favicon.patch similarity index 99% rename from build/e_patches/0028-Browser-Replace-default-tab-favicon.patch rename to build/e_patches/Browser-Replace-default-tab-favicon.patch index 9dcc6b0bb09d1141c4bc9921ee25c56a944bb996..bec6d4d581c4faaca0b3729190f6503f196fcf2e 100644 --- a/build/e_patches/0028-Browser-Replace-default-tab-favicon.patch +++ b/build/e_patches/Browser-Replace-default-tab-favicon.patch @@ -1,7 +1,7 @@ -From 8fc876f9995c798c45d99a99f03ecce9188a7e1b Mon Sep 17 00:00:00 2001 +From 5ae159ad86f7d0e9c10767e15f41f47f4b778a44 Mon Sep 17 00:00:00 2001 From: althafvly Date: Mon, 2 Jan 2023 15:12:41 +0530 -Subject: [PATCH 28/55] Browser: Replace default tab favicon +Subject: Browser: Replace default tab favicon --- .../java/res/drawable-hdpi/chromelogo16.png | Bin 425 -> 1016 bytes diff --git a/build/e_patches/0029-Browser-Spoof-as-Pixel-4a-by-default.patch b/build/e_patches/Browser-Spoof-as-Pixel-4a-by-default.patch similarity index 95% rename from build/e_patches/0029-Browser-Spoof-as-Pixel-4a-by-default.patch rename to build/e_patches/Browser-Spoof-as-Pixel-4a-by-default.patch index 3c0dd473635487f126611273e8d2c5396e4842ee..1ca5d30a8a6299ee772195b246994067653b040c 100644 --- a/build/e_patches/0029-Browser-Spoof-as-Pixel-4a-by-default.patch +++ b/build/e_patches/Browser-Spoof-as-Pixel-4a-by-default.patch @@ -1,7 +1,7 @@ -From ae4a55dd5d31273bc81c6b1d1108ca1553e76519 Mon Sep 17 00:00:00 2001 +From 2424ac0af931c2d4d09b0cf0d95834e84503ff6e Mon Sep 17 00:00:00 2001 From: althafvly Date: Thu, 19 Jan 2023 05:41:58 +0000 -Subject: [PATCH 29/55] Browser: Spoof as Pixel 4a by default +Subject: Browser: Spoof as Pixel 4a by default - Android 10 Pixel 4a QD4A.200805.003 --- diff --git a/build/e_patches/0019-Browser-Use-adaptive-icon-for-recents-UI.patch b/build/e_patches/Browser-Use-adaptive-icon-for-recents-UI.patch similarity index 87% rename from build/e_patches/0019-Browser-Use-adaptive-icon-for-recents-UI.patch rename to build/e_patches/Browser-Use-adaptive-icon-for-recents-UI.patch index 309b31a92fe2d36c82d5255a815d834a2e531ee7..5a2592d025561747c5f022b3a5dd6cbf3dd484a3 100644 --- a/build/e_patches/0019-Browser-Use-adaptive-icon-for-recents-UI.patch +++ b/build/e_patches/Browser-Use-adaptive-icon-for-recents-UI.patch @@ -1,14 +1,14 @@ -From b278b452ff8fcfc7d42486fae681957d779dded8 Mon Sep 17 00:00:00 2001 +From 2cbe3eb4936e51bf322aa4dd566ca88225114375 Mon Sep 17 00:00:00 2001 From: althafvly Date: Wed, 14 Dec 2022 12:18:50 +0530 -Subject: [PATCH 19/55] Browser: Use adaptive icon for recents UI +Subject: Browser: Use adaptive icon for recents UI --- .../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 daa9533d4d350..9628ed3939bd2 100644 +index ae8df4a2566f5..a054e7b0e3a5b 100644 --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java @@ -12,6 +12,8 @@ import android.app.ActivityManager.TaskDescription; @@ -20,7 +20,7 @@ index daa9533d4d350..9628ed3939bd2 100644 import android.os.Build; import android.os.Build.VERSION_CODES; import android.os.Bundle; -@@ -367,11 +369,15 @@ public class ChromeBaseAppCompatActivity extends AppCompatActivity +@@ -370,11 +372,15 @@ public class ChromeBaseAppCompatActivity extends AppCompatActivity /** Sets the default task description that will appear in the recents UI. */ protected void setDefaultTaskDescription() { diff --git a/build/e_patches/0053-Browser-Use-correct-switch-scale.patch b/build/e_patches/Browser-Use-correct-switch-scale.patch similarity index 86% rename from build/e_patches/0053-Browser-Use-correct-switch-scale.patch rename to build/e_patches/Browser-Use-correct-switch-scale.patch index 3a3e7aa5928f45dc041899fdffafb942137e5652..e9d454a5d68f81dcb5eacfa9535fc6062e958d0b 100644 --- a/build/e_patches/0053-Browser-Use-correct-switch-scale.patch +++ b/build/e_patches/Browser-Use-correct-switch-scale.patch @@ -1,14 +1,14 @@ -From ac26059269c9560c4d90d63e5f35b50c3bbf28f1 Mon Sep 17 00:00:00 2001 +From 23785cfa01b8d98d17a6f1c019b0f45fc7073f98 Mon Sep 17 00:00:00 2001 From: althafvly Date: Wed, 7 Aug 2024 14:05:16 +0530 -Subject: [PATCH 53/55] Browser: Use correct switch scale +Subject: Browser: Use correct switch scale --- 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 c288588c99f19..c702992f5315b 100644 +index e88cba8613aec..13333cf64ab36 100644 --- a/components/browser_ui/widget/android/java/res/values/dimens.xml +++ b/components/browser_ui/widget/android/java/res/values/dimens.xml @@ -216,7 +216,7 @@ found in the LICENSE file. diff --git a/build/e_patches/0017-Browser-Use-our-custom-icon-for-browser.patch b/build/e_patches/Browser-Use-our-custom-icon-for-browser.patch similarity index 99% rename from build/e_patches/0017-Browser-Use-our-custom-icon-for-browser.patch rename to build/e_patches/Browser-Use-our-custom-icon-for-browser.patch index 1e9b4d9b2415d2e2a646b1ebb9d6d070d7777e2c..bd9313958d7cd37b2a56119d7a883a5f520ff80e 100644 --- a/build/e_patches/0017-Browser-Use-our-custom-icon-for-browser.patch +++ b/build/e_patches/Browser-Use-our-custom-icon-for-browser.patch @@ -1,7 +1,7 @@ -From 8c4ba7c84021b831e8f50752701a1c493d614566 Mon Sep 17 00:00:00 2001 +From bc774cef9c7f3b6b3b81dc7662987c045668371f Mon Sep 17 00:00:00 2001 From: althafvly Date: Fri, 18 Nov 2022 10:07:39 +0000 -Subject: [PATCH 17/55] Browser: Use our custom icon for browser +Subject: Browser: Use our custom icon for browser --- chrome/android/BUILD.gn | 44 ++++++++++-------- @@ -64,7 +64,7 @@ Subject: [PATCH 17/55] 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 786ab5e1fa2ad..50d48551a8b64 100644 +index 44414c2c448ec..c73157c52193d 100644 --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn @@ -179,22 +179,24 @@ if (current_toolchain == default_toolchain) { @@ -102,7 +102,7 @@ index 786ab5e1fa2ad..50d48551a8b64 100644 "java/res_chromium_base/values/channel_constants.xml", ] } -@@ -2267,22 +2269,24 @@ if (current_toolchain == default_toolchain) { +@@ -2292,22 +2294,24 @@ if (current_toolchain == default_toolchain) { android_resources("chrome_public_apk_base_module_resources") { resource_overlay = true sources = [ diff --git a/build/e_patches/0023-Browser-disable-first-run-welcome-page.patch b/build/e_patches/Browser-disable-first-run-welcome-page.patch similarity index 94% rename from build/e_patches/0023-Browser-disable-first-run-welcome-page.patch rename to build/e_patches/Browser-disable-first-run-welcome-page.patch index 157e27c620f0a314ac8273f1d696f652d6e8128b..1fd11a96233b9346f9574dee7cfc2622b02296b9 100644 --- a/build/e_patches/0023-Browser-disable-first-run-welcome-page.patch +++ b/build/e_patches/Browser-disable-first-run-welcome-page.patch @@ -1,7 +1,7 @@ -From 0f9efdb1c171de683f253bf8df058cdab5fa9824 Mon Sep 17 00:00:00 2001 +From e508c1ce6f9643b55caadb49ce477feaff74a04f 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: [PATCH 23/55] Browser: disable first run welcome page +Subject: Browser: disable first run welcome page --- .../org/chromium/chrome/browser/firstrun/FirstRunUtils.java | 3 --- diff --git a/build/e_patches/0005-Browser-disable-price-shopping-commerce-integration.patch b/build/e_patches/Browser-disable-price-shopping-commerce-integration.patch similarity index 85% rename from build/e_patches/0005-Browser-disable-price-shopping-commerce-integration.patch rename to build/e_patches/Browser-disable-price-shopping-commerce-integration.patch index eb688e31649629ac667854c39c6058c9f6babf49..a0d9efc2bc95dff98520cd5fb26d4a115bdee38e 100644 --- a/build/e_patches/0005-Browser-disable-price-shopping-commerce-integration.patch +++ b/build/e_patches/Browser-disable-price-shopping-commerce-integration.patch @@ -1,7 +1,7 @@ -From 55c0eb9c36c4765a881d030343fb674f905274c6 Mon Sep 17 00:00:00 2001 +From f1a9a99dc79ca549273fb855801412c8e713e5af Mon Sep 17 00:00:00 2001 From: althafvly Date: Wed, 4 Oct 2023 19:36:24 +0530 -Subject: [PATCH 05/55] Browser: disable price shopping commerce integration +Subject: Browser: disable price shopping commerce integration --- .../browser/app/appmenu/AppMenuPropertiesDelegateImpl.java | 6 ++++-- @@ -9,10 +9,10 @@ Subject: [PATCH 05/55] Browser: disable price shopping commerce integration 2 files changed, 6 insertions(+), 4 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 e17fb73e1e073..4baf8454f5361 100644 +index 93ef87237b28c..bd7e512683475 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 -@@ -1246,7 +1246,7 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate +@@ -1224,7 +1224,7 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate } Profile profile = currentTab.getProfile(); @@ -21,7 +21,7 @@ index e17fb73e1e073..4baf8454f5361 100644 ShoppingService.ProductInfo info = null; if (service != null) { info = service.getAvailableProductInfoForUrl(currentTab.getUrl()); -@@ -1279,7 +1279,9 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate +@@ -1257,7 +1257,9 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate } else { startPriceTrackingMenuItem.setVisible(true); stopPriceTrackingMenuItem.setVisible(false); @@ -33,7 +33,7 @@ index e17fb73e1e073..4baf8454f5361 100644 /** diff --git a/components/commerce/core/commerce_feature_list.cc b/components/commerce/core/commerce_feature_list.cc -index 84b93cceb263e..276766d411fe3 100644 +index 0f4d0b76cec64..a3c5b15f4b578 100644 --- a/components/commerce/core/commerce_feature_list.cc +++ b/components/commerce/core/commerce_feature_list.cc @@ -123,7 +123,7 @@ BASE_FEATURE(kCommerceAllowLocalImages, @@ -45,7 +45,7 @@ index 84b93cceb263e..276766d411fe3 100644 BASE_FEATURE(kCommerceAllowOnDemandBookmarkBatchUpdates, "CommerceAllowOnDemandBookmarkBatchUpdates", -@@ -316,7 +316,7 @@ BASE_FEATURE(kShoppingPageTypesRegionLaunched, +@@ -325,7 +325,7 @@ BASE_FEATURE(kShoppingPageTypesRegionLaunched, "ShoppingPageTypesRegionLaunched", base::FEATURE_ENABLED_BY_DEFAULT); diff --git a/build/e_patches/0022-Browser-disable-search-provider-logo.patch b/build/e_patches/Browser-disable-search-provider-logo.patch similarity index 91% rename from build/e_patches/0022-Browser-disable-search-provider-logo.patch rename to build/e_patches/Browser-disable-search-provider-logo.patch index 852a555e092dfcd7871f9f8a47714f01104f6a6f..c5f41712e03e5705c2284252cb14f6056a71253b 100644 --- a/build/e_patches/0022-Browser-disable-search-provider-logo.patch +++ b/build/e_patches/Browser-disable-search-provider-logo.patch @@ -1,14 +1,14 @@ -From 515cedcdf7aa846de09cdf67506ff4ed898e81b7 Mon Sep 17 00:00:00 2001 +From 51d5ff50a3ec74cda988a404491d55372d850a67 Mon Sep 17 00:00:00 2001 From: Daniel Micay Date: Mon, 17 Jun 2019 12:03:52 -0400 -Subject: [PATCH 22/55] Browser: disable search provider logo +Subject: Browser: disable search provider logo --- .../android/template_url_service_android.cc | 23 +------------------ 1 file changed, 1 insertion(+), 22 deletions(-) diff --git a/components/search_engines/android/template_url_service_android.cc b/components/search_engines/android/template_url_service_android.cc -index 8933eb4307a88..3b7c3fc96e1c3 100644 +index 3602bfc20e4d0..437b868e4ed9a 100644 --- a/components/search_engines/android/template_url_service_android.cc +++ b/components/search_engines/android/template_url_service_android.cc @@ -184,28 +184,7 @@ jboolean TemplateUrlServiceAndroid::IsSearchByImageAvailable( diff --git a/build/e_patches/0049-Change-accent-and-switch-to-match-our-palette.patch b/build/e_patches/Change-accent-and-switch-to-match-our-palette.patch similarity index 98% rename from build/e_patches/0049-Change-accent-and-switch-to-match-our-palette.patch rename to build/e_patches/Change-accent-and-switch-to-match-our-palette.patch index 8857b8fe29e4f00675560c1d8c1c1f869c4cc4c6..777a593c6d81eeda9ee99170006fb4c88c38a768 100644 --- a/build/e_patches/0049-Change-accent-and-switch-to-match-our-palette.patch +++ b/build/e_patches/Change-accent-and-switch-to-match-our-palette.patch @@ -1,7 +1,7 @@ -From 73f7621470dcecfa36035d17a88c7b85edc180d3 Mon Sep 17 00:00:00 2001 +From 6885729b8d0cffde364fdc8fc77975f6b6799e99 Mon Sep 17 00:00:00 2001 From: Nishith Khanna Date: Tue, 20 Feb 2024 20:35:25 +0530 -Subject: [PATCH 49/55] Change accent and switch to match our palette +Subject: Change accent and switch to match our palette --- ...board_accessory_sheet_tab_option_toggle.xml | 2 +- @@ -199,10 +199,10 @@ index ecc6bc6b9b150..175082479e551 100644 - app:drawableTint="?attr/colorPrimary" /> + 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 53365852a125a..b5e5b51f3d3a2 100644 +index 524a1a240a12a..2d9d39996feed 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 -@@ -138,7 +138,7 @@ class UrlBarViewBinder { +@@ -140,7 +140,7 @@ class UrlBarViewBinder { final int color = useIncognitoColors ? view.getContext().getColor(R.color.default_control_color_active_dark) @@ -235,7 +235,7 @@ index 56a1aac203baa..40a9798da1323 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 67ed3172d43c5..39a8ee7ba053e 100644 +index b2ff67554b5d4..5305da2e15a3f 100644 --- a/components/browser_ui/styles/android/BUILD.gn +++ b/components/browser_ui/styles/android/BUILD.gn @@ -53,6 +53,8 @@ android_resources("java_resources") { @@ -247,7 +247,7 @@ index 67ed3172d43c5..39a8ee7ba053e 100644 "java/res/drawable-hdpi/btn_star_filled.png", "java/res/drawable-hdpi/ic_chrome.png", "java/res/drawable-hdpi/ic_delete_white_24dp.png", -@@ -231,6 +233,8 @@ android_resources("java_resources") { +@@ -236,6 +238,8 @@ android_resources("java_resources") { "java/res/drawable/smartphone_black_24dp.xml", "java/res/drawable/star_outline_24dp.xml", "java/res/drawable/toolbar_hairline.xml", @@ -347,7 +347,7 @@ index bc6c50211415c..6cbf076d32ae9 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 e9bd5235ff8e2..0f2eec4ad60e9 100644 +index 02585125cdd61..ef97cec350f25 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. @@ -453,10 +453,10 @@ index 209d2a1568df5..c615ca94ceffa 100644 android:layout_width="wrap_content" android:layout_height="wrap_content" /> diff --git a/ui/android/java/res/values/color_palette.xml b/ui/android/java/res/values/color_palette.xml -index 6554ec02ee69a..6d4283cff3f2a 100644 +index 0c8f670b76201..200125cc29189 100644 --- a/ui/android/java/res/values/color_palette.xml +++ b/ui/android/java/res/values/color_palette.xml -@@ -11,12 +11,12 @@ found in the LICENSE file. +@@ -11,13 +11,13 @@ found in the LICENSE file. @android:color/white #ECF3FE #D3E3FD @@ -466,6 +466,7 @@ index 6554ec02ee69a..6d4283cff3f2a 100644 #33A8C7FA #80A8C7FA #4C8DF6 + #1B6EF3 - #0B57D0 + #0086FF #0F0B57D0 diff --git a/build/e_patches/Disable-AGSA-by-default.patch b/build/e_patches/Disable-AGSA-by-default.patch new file mode 100644 index 0000000000000000000000000000000000000000..1177754e69e719899bd3ba6e26b5f30eade208f7 --- /dev/null +++ b/build/e_patches/Disable-AGSA-by-default.patch @@ -0,0 +1,257 @@ +From 41c8d23d0009e9135699940de95d6527a0820615 Mon Sep 17 00:00:00 2001 +From: csagan5 <32685696+csagan5@users.noreply.github.com> +Date: Sun, 26 Sep 2021 11:17:53 +0200 +Subject: Disable AGSA by default + +License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html +--- + chrome/android/BUILD.gn | 2 -- + .../chromium/chrome/browser/IntentHandler.java | 8 -------- + .../contextmenu/ChromeContextMenuPopulator.java | 7 ------- + ...CustomTabActivityClientConnectionKeeper.java | 16 ++++------------ + .../SafeBrowsingReferringAppBridge.java | 2 -- + .../chrome/browser/share/LensUtils.java | 17 ++--------------- + .../chrome/browser/ui/RootUiCoordinator.java | 17 ----------------- + .../flags/android/chrome_feature_list.cc | 4 ++-- + .../chrome/browser/flags/ChromeFeatureList.java | 2 +- + 9 files changed, 9 insertions(+), 66 deletions(-) + +diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn +index c73157c52193d..c26d9a9da2b8e 100644 +--- a/chrome/android/BUILD.gn ++++ b/chrome/android/BUILD.gn +@@ -433,7 +433,6 @@ if (current_toolchain == default_toolchain) { + "//chrome/browser/flags:java", + "//chrome/browser/fullscreen/android:java", + "//chrome/browser/gesturenav/android:java", +- "//chrome/browser/gsa:java", + "//chrome/browser/history:java", + "//chrome/browser/history_clusters:java", + "//chrome/browser/hub:factory_java", +@@ -1095,7 +1094,6 @@ if (current_toolchain == default_toolchain) { + "//chrome/browser/flags:flags_junit_tests", + "//chrome/browser/flags:java", + "//chrome/browser/fullscreen/android:java", +- "//chrome/browser/gsa:java", + "//chrome/browser/history:java", + "//chrome/browser/history_clusters:java", + "//chrome/browser/hub:factory_java", +diff --git a/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java b/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java +index 45ffbba3b3c5c..0b93ab9157fd9 100644 +--- a/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java ++++ b/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java +@@ -41,7 +41,6 @@ import org.chromium.chrome.browser.document.ChromeLauncherActivity; + import org.chromium.chrome.browser.externalnav.IntentWithRequestMetadataHandler; + import org.chromium.chrome.browser.externalnav.IntentWithRequestMetadataHandler.RequestMetadata; + import org.chromium.chrome.browser.flags.ChromeFeatureList; +-import org.chromium.chrome.browser.gsa.GSAUtils; + import org.chromium.chrome.browser.omnibox.suggestions.AutocompleteCoordinator; + import org.chromium.chrome.browser.profiles.Profile; + import org.chromium.chrome.browser.profiles.ProfileManager; +@@ -256,9 +255,6 @@ public class IntentHandler { + public static final String EXTRA_APP_SPECIFIC_HISTORY = + "org.chromium.chrome.browser.app_specific_history"; + +- /** The package name for the Google Search App. */ +- public static final String PACKAGE_GSA = GSAUtils.GSA_PACKAGE_NAME; +- + private static Pair sPendingReferrer; + private static int sReferrerId; + private static String sPendingIncognitoUrl; +@@ -301,7 +297,6 @@ public class IntentHandler { + ExternalAppId.NEWS, + ExternalAppId.LINE, + ExternalAppId.WHATSAPP, +- ExternalAppId.GSA, + ExternalAppId.WEBAPK, + ExternalAppId.YAHOO_MAIL, + ExternalAppId.VIBER, +@@ -322,7 +317,6 @@ public class IntentHandler { + int NEWS = 8; + int LINE = 9; + int WHATSAPP = 10; +- int GSA = 11; + int WEBAPK = 12; + int YAHOO_MAIL = 13; + int VIBER = 14; +@@ -524,8 +518,6 @@ public class IntentHandler { + return ExternalAppId.LINE; + } else if (packageName.equals(PACKAGE_WHATSAPP)) { + return ExternalAppId.WHATSAPP; +- } else if (packageName.equals(PACKAGE_GSA)) { +- return ExternalAppId.GSA; + } else if (packageName.equals(ContextUtils.getApplicationContext().getPackageName())) { + return ExternalAppId.CHROME; + } else if (packageName.startsWith(WEBAPK_PACKAGE_PREFIX)) { +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 +index 8903c21e61447..9979ae6e0928b 100644 +--- a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java ++++ b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java +@@ -38,7 +38,6 @@ import org.chromium.chrome.browser.ephemeraltab.EphemeralTabCoordinator; + import org.chromium.chrome.browser.feature_engagement.TrackerFactory; + import org.chromium.chrome.browser.firstrun.FirstRunStatus; + import org.chromium.chrome.browser.flags.ChromeFeatureList; +-import org.chromium.chrome.browser.gsa.GSAUtils; + import org.chromium.chrome.browser.lens.LensController; + import org.chromium.chrome.browser.lens.LensEntryPoint; + import org.chromium.chrome.browser.lens.LensIntentParams; +@@ -892,12 +891,6 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator { + LensMetrics.LensSupportStatus.ACTIVITY_NOT_ACCESSIBLE); + return false; + } +- if (GSAUtils.isAgsaVersionBelowMinimum( +- versionName, LensUtils.getMinimumAgsaVersionForLensSupport())) { +- LensMetrics.recordLensSupportStatus( +- LENS_SUPPORT_STATUS_HISTOGRAM_NAME, LensMetrics.LensSupportStatus.OUT_OF_DATE); +- return false; +- } + + if (LensUtils.isDeviceOsBelowMinimum()) { + LensMetrics.recordLensSupportStatus( +diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityClientConnectionKeeper.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityClientConnectionKeeper.java +index 2fb7883c1b505..a606f4d157b08 100644 +--- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityClientConnectionKeeper.java ++++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityClientConnectionKeeper.java +@@ -11,7 +11,6 @@ import org.chromium.base.metrics.RecordHistogram; + import org.chromium.chrome.browser.browserservices.intents.BrowserServicesIntentDataProvider; + import org.chromium.chrome.browser.customtabs.content.CustomTabActivityTabProvider; + import org.chromium.chrome.browser.dependency_injection.ActivityScope; +-import org.chromium.chrome.browser.gsa.GSAUtils; + import org.chromium.chrome.browser.lifecycle.ActivityLifecycleDispatcher; + import org.chromium.chrome.browser.lifecycle.StartStopWithNativeObserver; + import org.chromium.chrome.browser.tab.Tab; +@@ -101,16 +100,9 @@ public class CustomTabActivityClientConnectionKeeper implements StartStopWithNat + } + assert status >= 0; + +- if (GSAUtils.isGsaPackageName(packageName)) { +- RecordHistogram.recordEnumeratedHistogram( +- "CustomTabs.ConnectionStatusOnReturn.GSA", +- status, +- ConnectionStatus.NUM_ENTRIES); +- } else { +- RecordHistogram.recordEnumeratedHistogram( +- "CustomTabs.ConnectionStatusOnReturn.NonGSA", +- status, +- ConnectionStatus.NUM_ENTRIES); +- } ++ RecordHistogram.recordEnumeratedHistogram( ++ "CustomTabs.ConnectionStatusOnReturn.NonGSA", ++ status, ++ ConnectionStatus.NUM_ENTRIES); + } + } +diff --git a/chrome/android/java/src/org/chromium/chrome/browser/safe_browsing/SafeBrowsingReferringAppBridge.java b/chrome/android/java/src/org/chromium/chrome/browser/safe_browsing/SafeBrowsingReferringAppBridge.java +index f4dba3e61fe61..d7bd7d6b2c21f 100644 +--- a/chrome/android/java/src/org/chromium/chrome/browser/safe_browsing/SafeBrowsingReferringAppBridge.java ++++ b/chrome/android/java/src/org/chromium/chrome/browser/safe_browsing/SafeBrowsingReferringAppBridge.java +@@ -138,8 +138,6 @@ public class SafeBrowsingReferringAppBridge { + return "line"; + case ExternalAppId.WHATSAPP: + return "whatsapp"; +- case ExternalAppId.GSA: +- return "google.search.app"; + case ExternalAppId.WEBAPK: + return "webapk"; + case ExternalAppId.YAHOO_MAIL: +diff --git a/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils.java +index 7aff1a132f8d3..8ac011c04c1b2 100644 +--- a/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils.java ++++ b/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils.java +@@ -10,7 +10,6 @@ import android.os.Build; + import org.chromium.base.ResettersForTesting; + import org.chromium.chrome.browser.IntentHandler; + import org.chromium.chrome.browser.flags.ChromeFeatureList; +-import org.chromium.chrome.browser.gsa.GSAUtils; + import org.chromium.components.externalauth.ExternalAuthUtils; + + /** This class provides utilities for intenting into Google Lens. */ +@@ -51,15 +50,7 @@ public class LensUtils { + if (sFakePassableLensEnvironmentForTesting) { + return MIN_AGSA_VERSION_NAME_FOR_LENS_POSTCAPTURE; + } else { +- if (context == null) { +- return ""; +- } +- String agsaVersion = GSAUtils.getAgsaVersionName(); +- if (agsaVersion == null) { +- return ""; +- } else { +- return agsaVersion; +- } ++ return ""; + } + } + +@@ -98,11 +89,7 @@ public class LensUtils { + * @return Whether the package is valid. + */ + public static boolean isValidAgsaPackage(final ExternalAuthUtils externalAuthUtils) { +- if (sFakePassableLensEnvironmentForTesting) { +- return true; +- } +- +- return externalAuthUtils.isGoogleSigned(IntentHandler.PACKAGE_GSA); ++ return false; + } + + public static boolean isGoogleLensFeatureEnabled(boolean isIncognito) { +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 +index 3acb471df3ea9..a2a7723bd3a40 100644 +--- a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java ++++ b/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java +@@ -937,23 +937,6 @@ public class RootUiCoordinator + mActivityLifecycleDispatcher, + mLayoutStateProviderOneShotSupplier); + mReadAloudControllerSupplier.set(controller); +- mReadAloudContextualSearchObserver = +- new ContextualSearchObserver() { +- @Override +- public void onShowContextualSearch() { +- controller.maybeHidePlayer(); +- } +- +- @Override +- public void onHideContextualSearch() { +- controller.maybeShowPlayer(); +- } +- }; +- ContextualSearchManager contextualSearchManager = +- mContextualSearchManagerSupplier.get(); +- if (contextualSearchManager != null) { +- contextualSearchManager.addObserver(mReadAloudContextualSearchObserver); +- } + } + } + +diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc +index af932ba0cf80b..25848fddda965 100644 +--- a/chrome/browser/flags/android/chrome_feature_list.cc ++++ b/chrome/browser/flags/android/chrome_feature_list.cc +@@ -736,8 +736,8 @@ BASE_FEATURE(kEducationalTipModule, + base::FEATURE_DISABLED_BY_DEFAULT); + + BASE_FEATURE(kExperimentsForAgsa, +- "ExperimentsForAgsa", +- base::FEATURE_ENABLED_BY_DEFAULT); ++ "ExperimentsForAgsa", // disabled by default ++ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite + + BASE_FEATURE(kForceBrowserControlsUponExitingFullscreen, + "ForceBrowserControlsUponExitingFullscreen", +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 +index 006cac2a0a87e..a277029b46d07 100644 +--- 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 +@@ -655,7 +655,7 @@ public abstract class ChromeFeatureList { + newCachedFlag(EDUCATIONAL_TIP_MODULE, false); + public static final CachedFlag sEnableDiscountInfoApi = + newCachedFlag(ENABLE_DISCOUNT_INFO_API, false); +- public static final CachedFlag sExperimentsForAgsa = newCachedFlag(EXPERIMENTS_FOR_AGSA, true); ++ public static final CachedFlag sExperimentsForAgsa = newCachedFlag(EXPERIMENTS_FOR_AGSA, false); + public static final CachedFlag sFeedLoadingPlaceholder = + newCachedFlag(FEED_LOADING_PLACEHOLDER, false); + public static final CachedFlag sForceListTabSwitcher = +-- +2.34.1 + diff --git a/build/e_patches/0040-Disable-adding-a-signed-out-avatar-on-new-tab-pages-.patch b/build/e_patches/Disable-adding-a-signed-out-avatar-on-new-tab-pages-by-default.patch similarity index 92% rename from build/e_patches/0040-Disable-adding-a-signed-out-avatar-on-new-tab-pages-.patch rename to build/e_patches/Disable-adding-a-signed-out-avatar-on-new-tab-pages-by-default.patch index 144690ac1bef47af40ba884bf30f8193a9fb343b..b1ec287d16bddb7c3369200e0ab11e516f822db7 100644 --- a/build/e_patches/0040-Disable-adding-a-signed-out-avatar-on-new-tab-pages-.patch +++ b/build/e_patches/Disable-adding-a-signed-out-avatar-on-new-tab-pages-by-default.patch @@ -1,8 +1,7 @@ -From 3ea2bb37872c42aebf6b2326c8718e4c4d340ccc Mon Sep 17 00:00:00 2001 +From 01acc8788c8ba6965fd111d6be3ff63fad167cdc Mon Sep 17 00:00:00 2001 From: fgei Date: Tue, 8 Aug 2023 09:10:36 +0000 -Subject: [PATCH 40/55] Disable adding a signed out avatar on new tab pages by - default +Subject: Disable adding a signed out avatar on new tab pages by default --- .../identity_disc/IdentityDiscController.java | 12 ++++++++++++ diff --git a/build/e_patches/0059-Disable-support-for-RAR-files-inspection.patch b/build/e_patches/Disable-support-for-RAR-files-inspection.patch similarity index 96% rename from build/e_patches/0059-Disable-support-for-RAR-files-inspection.patch rename to build/e_patches/Disable-support-for-RAR-files-inspection.patch index 485ad3cb59f8527a1d1e64fcc430784aa903b0aa..f8c57a84ddc6ced04dcc12df1ad32b9026089ff9 100644 --- a/build/e_patches/0059-Disable-support-for-RAR-files-inspection.patch +++ b/build/e_patches/Disable-support-for-RAR-files-inspection.patch @@ -1,7 +1,7 @@ -From 10f9b336db8a3a7e433e084bb0f2d86d49d35928 Mon Sep 17 00:00:00 2001 +From 1008e3ae5c153fd699893f7f22b2450287a918eb Mon Sep 17 00:00:00 2001 From: Michael Gilbert Date: Wed, 21 Nov 2018 02:37:35 +0000 -Subject: [PATCH 59/59] Disable support for RAR files inspection +Subject: Disable support for RAR files inspection - Already disabled with flag safe_browsing_use_unrar=false diff --git a/build/e_patches/0048-Enable-SPPI-for-devices-with-enough-memory.patch b/build/e_patches/Enable-SPPI-for-devices-with-enough-memory.patch similarity index 89% rename from build/e_patches/0048-Enable-SPPI-for-devices-with-enough-memory.patch rename to build/e_patches/Enable-SPPI-for-devices-with-enough-memory.patch index 7f34e74353439f356c7c6d271af8ae23b9466d2d..7084c4525ca8644c7b9700f766a06d9a4fd92af3 100644 --- a/build/e_patches/0048-Enable-SPPI-for-devices-with-enough-memory.patch +++ b/build/e_patches/Enable-SPPI-for-devices-with-enough-memory.patch @@ -1,7 +1,7 @@ -From 87a5857d0cefea0b48e1b42d654d4a42252a593d Mon Sep 17 00:00:00 2001 +From 62a19f5c543f0cad7570cbfffe89ed97c6a90866 Mon Sep 17 00:00:00 2001 From: csagan5 <32685696+csagan5@users.noreply.github.com> Date: Sun, 17 Mar 2019 19:09:00 +0100 -Subject: [PATCH 48/55] Enable SPPI for devices with enough memory +Subject: Enable SPPI for devices with enough memory License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html --- diff --git a/build/e_patches/0038-Enable-sensors-by-default.patch b/build/e_patches/Enable-sensors-by-default.patch similarity index 87% rename from build/e_patches/0038-Enable-sensors-by-default.patch rename to build/e_patches/Enable-sensors-by-default.patch index 7bec914116318664ee1a7a09647583b1e65182b2..b9c047b77aa578cf7bfacba2db39fa540b775475 100644 --- a/build/e_patches/0038-Enable-sensors-by-default.patch +++ b/build/e_patches/Enable-sensors-by-default.patch @@ -1,14 +1,14 @@ -From 63058a90c99f536973e6e4ede885526b4646d554 Mon Sep 17 00:00:00 2001 +From 9cefa90cf5e4691215e74af31ad49d2d17106b33 Mon Sep 17 00:00:00 2001 From: althafvly Date: Mon, 12 Feb 2024 15:07:39 +0530 -Subject: [PATCH 38/55] Enable sensors by default +Subject: Enable sensors by default --- .../content_settings/core/browser/content_settings_registry.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/content_settings/core/browser/content_settings_registry.cc b/components/content_settings/core/browser/content_settings_registry.cc -index 6c7a848a35db0..e69e9b30483ec 100644 +index e6097a8316998..59743281e74ce 100644 --- a/components/content_settings/core/browser/content_settings_registry.cc +++ b/components/content_settings/core/browser/content_settings_registry.cc @@ -386,7 +386,7 @@ void ContentSettingsRegistry::Init() { diff --git a/build/e_patches/0027-Handle-web-search-action-in-browser.patch b/build/e_patches/Handle-web-search-action-in-browser.patch similarity index 94% rename from build/e_patches/0027-Handle-web-search-action-in-browser.patch rename to build/e_patches/Handle-web-search-action-in-browser.patch index f495fdaec78e69480686b6377b1710348fcd1814..fe9de488c8c4f172810324b409f0d7c85473d070 100644 --- a/build/e_patches/0027-Handle-web-search-action-in-browser.patch +++ b/build/e_patches/Handle-web-search-action-in-browser.patch @@ -1,7 +1,7 @@ -From 79bca5a5f091d02a28e6bb2f3b06a8c0ae77f4e2 Mon Sep 17 00:00:00 2001 +From 7e547f3fbe794ae8ada4adc4de7919016a185bef Mon Sep 17 00:00:00 2001 From: fgei Date: Wed, 28 Sep 2022 05:37:00 +0200 -Subject: [PATCH 27/55] Handle web search action in browser +Subject: Handle web search action in browser --- .../src/org/chromium/base/PackageManagerUtils.java | 10 ++++++++++ @@ -31,7 +31,7 @@ index a467d72ad54c7..ee8af3392bf15 100644 public static boolean hasSystemFeature(String feature) { PackageManager pm = ContextUtils.getApplicationContext().getPackageManager(); diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/AndroidManifest.xml -index cc198cf2795f8..a52e5610ac3af 100644 +index c54925669a2cb..654d723ea30ef 100644 --- a/chrome/android/java/AndroidManifest.xml +++ b/chrome/android/java/AndroidManifest.xml @@ -339,6 +339,10 @@ by a child template that "extends" this file. diff --git a/build/e_patches/0041-Hide-Sign-In-preference-when-disallowed.patch b/build/e_patches/Hide-Sign-In-preference-when-disallowed.patch similarity index 87% rename from build/e_patches/0041-Hide-Sign-In-preference-when-disallowed.patch rename to build/e_patches/Hide-Sign-In-preference-when-disallowed.patch index 2f8849d6cc43f5fc7c70adb37724198fcd027a01..e0c07a414f9b470fd18e79fd28f1fcbe12ad1824 100644 --- a/build/e_patches/0041-Hide-Sign-In-preference-when-disallowed.patch +++ b/build/e_patches/Hide-Sign-In-preference-when-disallowed.patch @@ -1,7 +1,7 @@ -From 19bc882e1d5c0a748f2bf4d3b3f381c1de518372 Mon Sep 17 00:00:00 2001 +From 38cd79fccf995b82c3c95ab0d1f3e64fde1929a1 Mon Sep 17 00:00:00 2001 From: fgei Date: Sun, 29 Aug 2021 19:31:00 +0000 -Subject: [PATCH 41/55] Hide Sign In preference when disallowed +Subject: Hide Sign In preference when disallowed --- .../chromium/chrome/browser/sync/settings/SignInPreference.java | 1 + diff --git a/build/cromite_patches/Inject-scripts-for-AMP-tracking-ads-and-video.patch b/build/e_patches/Inject-scripts-for-AMP-tracking-ads-and-video.patch similarity index 97% rename from build/cromite_patches/Inject-scripts-for-AMP-tracking-ads-and-video.patch rename to build/e_patches/Inject-scripts-for-AMP-tracking-ads-and-video.patch index 27d10d7f789af7f95b632cf0eb8cda23acac7d21..3231b07aa0b336f2102cb949c6ac3f0eaf6e3925 100644 --- a/build/cromite_patches/Inject-scripts-for-AMP-tracking-ads-and-video.patch +++ b/build/e_patches/Inject-scripts-for-AMP-tracking-ads-and-video.patch @@ -1,3 +1,4 @@ +From 99175d87252ed35e0f2196065e9e2a7ad0e1cb5e Mon Sep 17 00:00:00 2001 From: csagan5 <32685696+csagan5@users.noreply.github.com> Date: Sat, 28 Oct 2017 10:09:41 +0200 Subject: Inject scripts for AMP, tracking, ads and video @@ -23,6 +24,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html create mode 100644 third_party/blink/renderer/core/dom/extensions/video_bg_play.h diff --git a/third_party/blink/renderer/core/dom/build.gni b/third_party/blink/renderer/core/dom/build.gni +index 30f38fd8cf480..7bebf94185d5e 100644 --- a/third_party/blink/renderer/core/dom/build.gni +++ b/third_party/blink/renderer/core/dom/build.gni @@ -157,6 +157,8 @@ blink_core_sources_dom = [ @@ -35,6 +37,7 @@ diff --git a/third_party/blink/renderer/core/dom/build.gni b/third_party/blink/r "id_target_observer.h", "id_target_observer_registry.cc", diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink/renderer/core/dom/document.cc +index 0b35410008c09..a2576266cdc97 100644 --- a/third_party/blink/renderer/core/dom/document.cc +++ b/third_party/blink/renderer/core/dom/document.cc @@ -311,6 +311,7 @@ @@ -54,7 +57,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink #ifndef NDEBUG using WeakDocumentSet = blink::HeapHashSet>; static WeakDocumentSet& LiveDocumentSet(); -@@ -7412,6 +7415,64 @@ void Document::OnPrepareToStopParsing() { +@@ -7354,6 +7357,64 @@ void Document::OnPrepareToStopParsing() { MilestoneForDelayedAsyncScript::kFinishedParsing); } @@ -119,7 +122,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink void Document::FinishedParsing() { TRACE_EVENT_WITH_FLOW0("blink", "Document::FinishedParsing", TRACE_ID_LOCAL(this), -@@ -7497,6 +7558,9 @@ void Document::FinishedParsing() { +@@ -7439,6 +7500,9 @@ void Document::FinishedParsing() { } frame->Loader().FinishedParsing(); @@ -130,9 +133,10 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink // Schedule dropping of the ElementDataCache. We keep it alive for a while diff --git a/third_party/blink/renderer/core/dom/document.h b/third_party/blink/renderer/core/dom/document.h +index 20ddbb51c4b26..c3baee2d56e8e 100644 --- a/third_party/blink/renderer/core/dom/document.h +++ b/third_party/blink/renderer/core/dom/document.h -@@ -2198,6 +2198,9 @@ class CORE_EXPORT Document : public ContainerNode, +@@ -2191,6 +2191,9 @@ class CORE_EXPORT Document : public ContainerNode, void AXContextModeChanged(); void ClearAXObjectCache(); @@ -144,6 +148,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.h b/third_party/blink/ bool IsDocumentNode() const = diff --git a/third_party/blink/renderer/core/dom/extensions/anti_amp_cure.h b/third_party/blink/renderer/core/dom/extensions/anti_amp_cure.h new file mode 100644 +index 0000000000000..883ed76d59c05 --- /dev/null +++ b/third_party/blink/renderer/core/dom/extensions/anti_amp_cure.h @@ -0,0 +1,6 @@ @@ -155,6 +160,7 @@ new file mode 100644 +#endif // anti_amp_cure_h diff --git a/third_party/blink/renderer/core/dom/extensions/video_bg_play.h b/third_party/blink/renderer/core/dom/extensions/video_bg_play.h new file mode 100644 +index 0000000000000..e730bd799a98d --- /dev/null +++ b/third_party/blink/renderer/core/dom/extensions/video_bg_play.h @@ -0,0 +1,6 @@ @@ -165,6 +171,7 @@ new file mode 100644 + +#endif // video_bg_play_h diff --git a/third_party/blink/renderer/core/html/html_script_element.cc b/third_party/blink/renderer/core/html/html_script_element.cc +index 43f7036dab318..c1155f292117e 100644 --- a/third_party/blink/renderer/core/html/html_script_element.cc +++ b/third_party/blink/renderer/core/html/html_script_element.cc @@ -191,6 +191,11 @@ void HTMLScriptElement::setTextContent(const String& string) { @@ -180,6 +187,7 @@ diff --git a/third_party/blink/renderer/core/html/html_script_element.cc b/third // https://html.spec.whatwg.org/multipage/scripting.html#dom-script-async SetBooleanAttribute(html_names::kAsyncAttr, async); diff --git a/third_party/blink/renderer/core/html/html_script_element.h b/third_party/blink/renderer/core/html/html_script_element.h +index 8f6fedc622cb4..dd6804ddf9d5f 100644 --- a/third_party/blink/renderer/core/html/html_script_element.h +++ b/third_party/blink/renderer/core/html/html_script_element.h @@ -59,6 +59,7 @@ class CORE_EXPORT HTMLScriptElement final : public HTMLElement, @@ -190,4 +198,6 @@ diff --git a/third_party/blink/renderer/core/html/html_script_element.h b/third_ void setAsync(bool); bool async() const; --- +-- +2.34.1 + diff --git a/build/e_patches/0055-Multiple-fingerprinting-mitigations.patch b/build/e_patches/Multiple-fingerprinting-mitigations.patch similarity index 95% rename from build/e_patches/0055-Multiple-fingerprinting-mitigations.patch rename to build/e_patches/Multiple-fingerprinting-mitigations.patch index a64ee156008b975a7922e67aacb7b4c8da9b4fe3..7ec7163a4ff00911251fcfaaab435b2ca727d962 100644 --- a/build/e_patches/0055-Multiple-fingerprinting-mitigations.patch +++ b/build/e_patches/Multiple-fingerprinting-mitigations.patch @@ -1,7 +1,7 @@ -From a10663fcd1798a66d79d9af3917038992555649b Mon Sep 17 00:00:00 2001 +From c8c16ed1a019910dcf3ac6bed7b920a9c656b9f2 Mon Sep 17 00:00:00 2001 From: csagan5 <32685696+csagan5@users.noreply.github.com> Date: Fri, 30 Mar 2018 10:09:03 +0200 -Subject: [PATCH 55/59] Multiple fingerprinting mitigations +Subject: Multiple fingerprinting mitigations 1. getClientRects, getBoundingClientRect, measureText: add fingerprinting mitigation @@ -61,10 +61,10 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html create mode 100644 third_party/ungoogled/ungoogled_switches.h diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn -index 3ab6d3149b27a..103fd0be65788 100644 +index 3f3ce6f934c51..e1c43aa1684fc 100644 --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -2437,6 +2437,7 @@ static_library("browser") { +@@ -2447,6 +2447,7 @@ static_library("browser") { "//services/device/public/cpp:device_features", "//services/device/public/cpp/geolocation", "//services/device/public/cpp/usb", @@ -73,10 +73,10 @@ index 3ab6d3149b27a..103fd0be65788 100644 "//services/device/public/mojom:usb", "//services/image_annotation:service", diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc -index a8a06034015e7..146eec4ec7ef0 100644 +index 27704ae80c71c..0ead1366e6379 100644 --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -248,6 +248,8 @@ +@@ -247,6 +247,8 @@ #include "ui/ui_features.h" #include "url/url_features.h" @@ -86,22 +86,22 @@ index a8a06034015e7..146eec4ec7ef0 100644 #include "base/allocator/buildflags.h" #endif diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn -index a0f17bb4ff8ee..ce1c99686ee6b 100644 +index 4e163a30b7f98..b2a8c49616521 100644 --- a/content/browser/BUILD.gn +++ b/content/browser/BUILD.gn @@ -275,6 +275,7 @@ source_set("browser") { - "//third_party/libyuv", "//third_party/re2", + "//third_party/snappy", "//third_party/sqlite", + "//third_party/ungoogled:switches", "//third_party/webrtc_overrides:webrtc_component", "//third_party/zlib", "//tools/v8_context_snapshot:buildflags", diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc -index bcc1bd9937584..b1004b1f1f7be 100644 +index c9485cedc8111..3ea185846561a 100644 --- a/content/browser/renderer_host/render_process_host_impl.cc +++ b/content/browser/renderer_host/render_process_host_impl.cc -@@ -212,6 +212,7 @@ +@@ -213,6 +213,7 @@ #include "url/gurl.h" #include "url/origin.h" @@ -109,7 +109,7 @@ index bcc1bd9937584..b1004b1f1f7be 100644 #if BUILDFLAG(IS_ANDROID) #include "base/android/child_process_binding_types.h" #include "content/browser/font_unique_name_lookup/font_unique_name_lookup_service.h" -@@ -3271,6 +3272,9 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer( +@@ -3334,6 +3335,9 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer( switches::kDisableBreakpad, switches::kDisableDatabases, switches::kDisableFileSystem, @@ -132,7 +132,7 @@ index e40717e1ed42d..a109cd094f740 100644 "//ui/base", "//ui/events/blink", diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.cc -index 0fc634ddc0a43..8a5d6be4c2d0f 100644 +index 6feae3ec39673..811b2ab73b049 100644 --- a/content/child/runtime_features.cc +++ b/content/child/runtime_features.cc @@ -47,6 +47,8 @@ @@ -194,7 +194,7 @@ index d7d110b9f8f30..136b67c51f120 100644 static void EnableFluentOverlayScrollbars(bool); static void EnableVibration(bool); diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink/renderer/core/dom/document.cc -index 432d07c47f0f0..0b0381e3aaa44 100644 +index f315d66e004a6..0b35410008c09 100644 --- a/third_party/blink/renderer/core/dom/document.cc +++ b/third_party/blink/renderer/core/dom/document.cc @@ -44,6 +44,7 @@ @@ -205,7 +205,7 @@ index 432d07c47f0f0..0b0381e3aaa44 100644 #include "base/notreached.h" #include "base/ranges/algorithm.h" #include "base/task/single_thread_task_runner.h" -@@ -908,6 +909,17 @@ Document::Document(const DocumentInit& initializer, +@@ -861,6 +862,17 @@ Document::Document(const DocumentInit& initializer, TRACE_EVENT_WITH_FLOW0("blink", "Document::Document", TRACE_ID_LOCAL(this), TRACE_EVENT_FLAG_FLOW_OUT); DCHECK(agent_); @@ -223,7 +223,7 @@ index 432d07c47f0f0..0b0381e3aaa44 100644 if (base::FeatureList::IsEnabled(features::kDelayAsyncScriptExecution) && features::kDelayAsyncScriptExecutionDelayByDefaultParam.Get()) { script_runner_delayer_->Activate(); -@@ -2497,6 +2509,14 @@ void Document::UpdateStyleAndLayoutTreeForThisDocument() { +@@ -2451,6 +2463,14 @@ void Document::UpdateStyleAndLayoutTreeForThisDocument() { #endif } @@ -239,10 +239,10 @@ index 432d07c47f0f0..0b0381e3aaa44 100644 DCHECK(IsActive()); DCHECK(IsMainThread()); diff --git a/third_party/blink/renderer/core/dom/document.h b/third_party/blink/renderer/core/dom/document.h -index 142590dd06d4d..319e2fddd0ee3 100644 +index 642049e815f8b..20ddbb51c4b26 100644 --- a/third_party/blink/renderer/core/dom/document.h +++ b/third_party/blink/renderer/core/dom/document.h -@@ -549,6 +549,10 @@ class CORE_EXPORT Document : public ContainerNode, +@@ -548,6 +548,10 @@ class CORE_EXPORT Document : public ContainerNode, has_xml_declaration_ = has_xml_declaration ? 1 : 0; } @@ -253,7 +253,7 @@ index 142590dd06d4d..319e2fddd0ee3 100644 AtomicString visibilityState() const; bool IsPageVisible() const; bool hidden() const; -@@ -2570,6 +2574,9 @@ class CORE_EXPORT Document : public ContainerNode, +@@ -2556,6 +2560,9 @@ class CORE_EXPORT Document : public ContainerNode, base::ElapsedTimer start_time_; @@ -264,10 +264,10 @@ index 142590dd06d4d..319e2fddd0ee3 100644 Member script_runner_delayer_; diff --git a/third_party/blink/renderer/core/dom/element.cc b/third_party/blink/renderer/core/dom/element.cc -index 3caf7c4f35aec..8f97ef25d2844 100644 +index b577939336009..77848983d6975 100644 --- a/third_party/blink/renderer/core/dom/element.cc +++ b/third_party/blink/renderer/core/dom/element.cc -@@ -2487,6 +2487,7 @@ void Element::ClientQuads(Vector& quads) const { +@@ -2482,6 +2482,7 @@ void Element::ClientQuads(Vector& quads) const { quads.push_back(element_layout_object->LocalToAbsoluteQuad( gfx::QuadF(element_layout_object->ObjectBoundingBox()))); } @@ -275,7 +275,7 @@ index 3caf7c4f35aec..8f97ef25d2844 100644 return; } -@@ -2495,6 +2496,10 @@ void Element::ClientQuads(Vector& quads) const { +@@ -2490,6 +2491,10 @@ void Element::ClientQuads(Vector& quads) const { element_layout_object->IsBR()) { element_layout_object->AbsoluteQuads(quads); } @@ -286,7 +286,7 @@ index 3caf7c4f35aec..8f97ef25d2844 100644 } DOMRectList* Element::getClientRects() { -@@ -2540,6 +2545,9 @@ gfx::RectF Element::GetBoundingClientRectNoLifecycleUpdate() const { +@@ -2535,6 +2540,9 @@ gfx::RectF Element::GetBoundingClientRectNoLifecycleUpdate() const { DCHECK(element_layout_object); GetDocument().AdjustRectForScrollAndAbsoluteZoom(result, *element_layout_object); @@ -349,12 +349,12 @@ index 9b8e14d12ba98..e3804ed2ff45a 100644 } diff --git a/third_party/blink/renderer/core/html/canvas/text_metrics.cc b/third_party/blink/renderer/core/html/canvas/text_metrics.cc -index 88bea62c4cb94..32decd446fd81 100644 +index 4225f6bb8e7b7..6c5300428990a 100644 --- a/third_party/blink/renderer/core/html/canvas/text_metrics.cc +++ b/third_party/blink/renderer/core/html/canvas/text_metrics.cc -@@ -79,6 +79,24 @@ TextMetrics::TextMetrics(const Font& font, - Update(font, direction, baseline, align, text); +@@ -93,6 +93,24 @@ const ShapeResult* ShapeWord(const TextRun& word_run, const Font& font) { } + } // namespace +void TextMetrics::Shuffle(const double factor) { + // x-direction @@ -404,7 +404,7 @@ index 03ca2aa7527a4..9281a8cae0d4f 100644 UseCounter::Count(GetDocument(), WebFeature::kGetBBoxForText); } diff --git a/third_party/blink/renderer/core/svg/svg_text_content_element.cc b/third_party/blink/renderer/core/svg/svg_text_content_element.cc -index 26b7828b0597d..a970efc7e9f80 100644 +index 1050027f6ba59..405a27d978fc5 100644 --- a/third_party/blink/renderer/core/svg/svg_text_content_element.cc +++ b/third_party/blink/renderer/core/svg/svg_text_content_element.cc @@ -111,11 +111,16 @@ float SVGTextContentElement::getComputedTextLength() { @@ -484,7 +484,7 @@ index 26b7828b0597d..a970efc7e9f80 100644 return -1; } diff --git a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc b/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc -index c39b333c1652a..9bf46bae24b26 100644 +index 08cc3b5719df2..94f4bcb58f738 100644 --- a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc +++ b/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc @@ -191,6 +191,11 @@ @@ -499,7 +499,7 @@ index c39b333c1652a..9bf46bae24b26 100644 #include "ui/gfx/geometry/vector2d.h" #include "ui/gfx/geometry/vector2d_f.h" #include "v8/include/v8-local-handle.h" -@@ -2858,6 +2863,10 @@ ImageData* BaseRenderingContext2D::getImageDataInternal( +@@ -2912,6 +2917,10 @@ ImageData* BaseRenderingContext2D::getImageDataInternal( snapshot->PaintImageForCurrentFrame().GetSkImageInfo().bounds(); DCHECK(!bounds.intersect(SkIRect::MakeXYWH(sx, sy, sw, sh))); } @@ -510,7 +510,7 @@ index c39b333c1652a..9bf46bae24b26 100644 } return image_data; -@@ -3538,8 +3547,22 @@ TextMetrics* BaseRenderingContext2D::measureText(const String& text) { +@@ -3592,8 +3601,22 @@ TextMetrics* BaseRenderingContext2D::measureText(const String& text) { const CanvasRenderingContext2DState& state = GetState(); TextDirection direction = ToTextDirection(state.GetDirection(), canvas); @@ -535,10 +535,10 @@ index c39b333c1652a..9bf46bae24b26 100644 void BaseRenderingContext2D::SnapshotStateForFilter() { diff --git a/third_party/blink/renderer/platform/BUILD.gn b/third_party/blink/renderer/platform/BUILD.gn -index 712aa3be12f3a..112319b182e9c 100644 +index 5b8e391fd8998..791311e7ee23a 100644 --- a/third_party/blink/renderer/platform/BUILD.gn +++ b/third_party/blink/renderer/platform/BUILD.gn -@@ -1701,7 +1701,9 @@ component("platform") { +@@ -1707,7 +1707,9 @@ component("platform") { "//third_party/blink/renderer:non_test_config", ] @@ -549,7 +549,7 @@ index 712aa3be12f3a..112319b182e9c 100644 allow_circular_includes_from = [ "//third_party/blink/renderer/platform/blob", -@@ -1780,6 +1782,7 @@ component("platform") { +@@ -1787,6 +1789,7 @@ component("platform") { "//third_party/blink/public/strings", "//third_party/blink/renderer/platform/wtf", "//third_party/ced", @@ -785,10 +785,10 @@ index 0a575fd624b4b..9d39aca95278e 100644 + } // namespace blink diff --git a/third_party/blink/renderer/platform/graphics/static_bitmap_image.h b/third_party/blink/renderer/platform/graphics/static_bitmap_image.h -index 8ba3965316147..a0c4aeb39cdb9 100644 +index 2fcafc6db167f..53bbb88dfca14 100644 --- a/third_party/blink/renderer/platform/graphics/static_bitmap_image.h +++ b/third_party/blink/renderer/platform/graphics/static_bitmap_image.h -@@ -38,6 +38,8 @@ class PLATFORM_EXPORT StaticBitmapImage : public Image { +@@ -39,6 +39,8 @@ class PLATFORM_EXPORT StaticBitmapImage : public Image { StaticBitmapImage(ImageOrientation orientation) : orientation_(orientation) {} @@ -798,10 +798,10 @@ index 8ba3965316147..a0c4aeb39cdb9 100644 // Methods overridden by all sub-classes diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 -index 70c6567bc5415..3e67a626e69e5 100644 +index 1a48bc99f5350..9c45c90b7e57e 100644 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 -@@ -2948,6 +2948,15 @@ +@@ -2929,6 +2929,15 @@ status: {"Mac": "test", "default": "stable"}, base_feature: "none", }, diff --git a/build/e_patches/0047-Re-introduce-kWebAuthCable.patch b/build/e_patches/Reintroduce-kWebAuthCable.patch similarity index 61% rename from build/e_patches/0047-Re-introduce-kWebAuthCable.patch rename to build/e_patches/Reintroduce-kWebAuthCable.patch index 7bfab600d20318842c3187ac7cb744c7ea5665d6..be145e8128c334416e75c0cf89122c488c65ddc4 100644 --- a/build/e_patches/0047-Re-introduce-kWebAuthCable.patch +++ b/build/e_patches/Reintroduce-kWebAuthCable.patch @@ -1,7 +1,7 @@ -From 5e096be9d8827d6ab39d308f3b7de4123ac0693a Mon Sep 17 00:00:00 2001 +From b57c0103ca627ab2eefb3e3a86da797c85a89575 Mon Sep 17 00:00:00 2001 From: csagan5 <32685696+csagan5@users.noreply.github.com> Date: Sun, 4 Sep 2022 18:47:58 +0200 -Subject: [PATCH 47/55] Re-introduce kWebAuthCable +Subject: Re-introduce kWebAuthCable This reverts commit ebfd987a57bf4a58588760e8a4342b4fffef36f2. @@ -9,48 +9,19 @@ Feature is disabled by default. License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html --- - .../chromium/chrome/browser/app/ChromeActivity.java | 10 ---------- - .../webauthn/authenticator_dialog_view_browsertest.cc | 7 +++++++ - .../ui/webauthn/authenticator_dialog_browsertest.cc | 7 +++++++ - chrome/browser/webauthn/chrome_webauthn_browsertest.cc | 2 ++ - content/browser/webauth/authenticator_impl_unittest.cc | 7 ++++++- - content/public/common/content_features.cc | 7 +++++++ - content/public/common/content_features.h | 1 + - 7 files changed, 30 insertions(+), 11 deletions(-) + .../webauthn/authenticator_dialog_view_browsertest.cc | 7 +++++++ + .../ui/webauthn/authenticator_dialog_browsertest.cc | 7 +++++++ + chrome/browser/webauthn/chrome_webauthn_browsertest.cc | 2 ++ + content/browser/webauth/authenticator_impl_unittest.cc | 7 ++++++- + content/public/common/content_features.cc | 7 +++++++ + content/public/common/content_features.h | 1 + + 6 files changed, 30 insertions(+), 1 deletion(-) -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 aa7a17e89b256..57ea3826e03ec 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 -@@ -335,9 +335,6 @@ public abstract class ChromeActivity - private boolean mNativeInitialized; - private boolean mRemoveWindowBackgroundDone; - -- // Observes when sync becomes ready to create the mContextReporter. -- private SyncService.SyncStateChangedListener mSyncStateChangedListener; -- - // The FullscreenVideoPictureInPictureController is initialized lazily https://crbug.com/729738. - private FullscreenVideoPictureInPictureController mFullscreenVideoPictureInPictureController; - -@@ -1329,13 +1326,6 @@ public abstract class ChromeActivity - - @Override - public void onStopWithNative() { -- if (mSyncStateChangedListener != null) { -- SyncService syncService = getSyncServiceForOriginalProfile(); -- if (syncService != null) { -- syncService.removeSyncStateChangedListener(mSyncStateChangedListener); -- } -- mSyncStateChangedListener = null; -- } - if (mFullscreenVideoPictureInPictureController != null) { - mFullscreenVideoPictureInPictureController.onStop(); - mFullscreenVideoPictureInPictureController = null; diff --git a/chrome/browser/ui/views/webauthn/authenticator_dialog_view_browsertest.cc b/chrome/browser/ui/views/webauthn/authenticator_dialog_view_browsertest.cc -index 159a754450c27..5c7313791050d 100644 +index 5a9201d66664c..dad05a3f9cbd5 100644 --- a/chrome/browser/ui/views/webauthn/authenticator_dialog_view_browsertest.cc +++ b/chrome/browser/ui/views/webauthn/authenticator_dialog_view_browsertest.cc -@@ -100,6 +100,12 @@ class TestSheetView : public AuthenticatorRequestSheetView { +@@ -109,6 +109,12 @@ class StepTransitionObserver class AuthenticatorDialogViewTest : public DialogBrowserTest { public: @@ -63,8 +34,8 @@ index 159a754450c27..5c7313791050d 100644 // DialogBrowserTest: void ShowUi(const std::string& name) override { dialog_model_ = -@@ -132,6 +138,7 @@ class AuthenticatorDialogViewTest : public DialogBrowserTest { - } +@@ -147,6 +153,7 @@ class AuthenticatorDialogViewTest : public DialogBrowserTest { + dialog_model_->RemoveObserver(&step_transition_observer); } + base::test::ScopedFeatureList scoped_feature_list_; @@ -72,10 +43,10 @@ index 159a754450c27..5c7313791050d 100644 }; diff --git a/chrome/browser/ui/webauthn/authenticator_dialog_browsertest.cc b/chrome/browser/ui/webauthn/authenticator_dialog_browsertest.cc -index fa1eba33b53d7..3d919d3338f0b 100644 +index cf9b802798d96..39af5794cde33 100644 --- a/chrome/browser/ui/webauthn/authenticator_dialog_browsertest.cc +++ b/chrome/browser/ui/webauthn/authenticator_dialog_browsertest.cc -@@ -70,6 +70,12 @@ class AuthenticatorDialogTest : public DialogBrowserTest { +@@ -71,6 +71,12 @@ class AuthenticatorDialogTest : public DialogBrowserTest { "user@example.com", signin::ConsentLevel::kSync); } @@ -88,7 +59,7 @@ index fa1eba33b53d7..3d919d3338f0b 100644 // DialogBrowserTest: void ShowUi(const std::string& name) override { // Web modal dialogs' bounds may exceed the display's work area. -@@ -389,6 +395,7 @@ class AuthenticatorDialogTest : public DialogBrowserTest { +@@ -388,6 +394,7 @@ class AuthenticatorDialogTest : public DialogBrowserTest { std::unique_ptr controller_; base::RepeatingTimer timer_; int bio_samples_remaining_ = 5; @@ -97,10 +68,10 @@ index fa1eba33b53d7..3d919d3338f0b 100644 IN_PROC_BROWSER_TEST_F(AuthenticatorDialogTest, InvokeUi_default) { diff --git a/chrome/browser/webauthn/chrome_webauthn_browsertest.cc b/chrome/browser/webauthn/chrome_webauthn_browsertest.cc -index 6ab75ecc6a1b0..6c4ccebf587f0 100644 +index 5e067c7f454a0..5fa295e1c782a 100644 --- a/chrome/browser/webauthn/chrome_webauthn_browsertest.cc +++ b/chrome/browser/webauthn/chrome_webauthn_browsertest.cc -@@ -1134,6 +1134,7 @@ IN_PROC_BROWSER_TEST_F(WebAuthnCableExtension, ServerLink) { +@@ -1145,6 +1145,7 @@ IN_PROC_BROWSER_TEST_F(WebAuthnCableExtension, ServerLink) { class WebAuthnCableSecondFactor : public WebAuthnBrowserTest { public: WebAuthnCableSecondFactor() { @@ -108,7 +79,7 @@ index 6ab75ecc6a1b0..6c4ccebf587f0 100644 // This makes it a little easier to compare against. trace_ << std::endl; } -@@ -1382,6 +1383,7 @@ class WebAuthnCableSecondFactor : public WebAuthnBrowserTest { +@@ -1393,6 +1394,7 @@ class WebAuthnCableSecondFactor : public WebAuthnBrowserTest { }; protected: @@ -117,10 +88,10 @@ index 6ab75ecc6a1b0..6c4ccebf587f0 100644 raw_ptr controller_ = nullptr; diff --git a/content/browser/webauth/authenticator_impl_unittest.cc b/content/browser/webauth/authenticator_impl_unittest.cc -index 03fd869ff18a9..a4feb3c5f0b65 100644 +index 91deb874537d3..98632cf249bb4 100644 --- a/content/browser/webauth/authenticator_impl_unittest.cc +++ b/content/browser/webauth/authenticator_impl_unittest.cc -@@ -1416,7 +1416,12 @@ TEST_F(AuthenticatorImplTest, OversizedCredentialId) { +@@ -1493,7 +1493,12 @@ TEST_F(AuthenticatorImplTest, OversizedCredentialId) { } } @@ -135,10 +106,10 @@ index 03fd869ff18a9..a4feb3c5f0b65 100644 NavigateAndCommit(GURL(kTestOrigin1)); diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc -index ff3ccd0b773a8..91c5ac189fe6c 100644 +index 3eb73a31e477d..e865746c890a6 100644 --- a/content/public/common/content_features.cc +++ b/content/public/common/content_features.cc -@@ -1184,6 +1184,13 @@ BASE_FEATURE(kWebAssemblyTrapHandler, +@@ -1216,6 +1216,13 @@ BASE_FEATURE(kWebAssemblyTrapHandler, #endif ); @@ -153,10 +124,10 @@ index ff3ccd0b773a8..91c5ac189fe6c 100644 // https://webbluetoothcg.github.io/web-bluetooth/ BASE_FEATURE(kWebBluetooth, "WebBluetooth", base::FEATURE_DISABLED_BY_DEFAULT); diff --git a/content/public/common/content_features.h b/content/public/common/content_features.h -index 795f04b08c4bf..2ac7d439b2c0a 100644 +index 4b76490279fbc..7258f4d1b8fc6 100644 --- a/content/public/common/content_features.h +++ b/content/public/common/content_features.h -@@ -265,6 +265,7 @@ CONTENT_EXPORT BASE_DECLARE_FEATURE(kWebBluetoothNewPermissionsBackend); +@@ -270,6 +270,7 @@ CONTENT_EXPORT BASE_DECLARE_FEATURE(kWebBluetoothNewPermissionsBackend); CONTENT_EXPORT BASE_DECLARE_FEATURE(kWebOtpBackendAuto); CONTENT_EXPORT BASE_DECLARE_FEATURE(kWebPayments); CONTENT_EXPORT BASE_DECLARE_FEATURE(kWebUICodeCache); diff --git a/build/e_patches/0006-Remove-bromite-auto-updater-option.patch b/build/e_patches/Remove-bromite-auto-updater-option.patch similarity index 97% rename from build/e_patches/0006-Remove-bromite-auto-updater-option.patch rename to build/e_patches/Remove-bromite-auto-updater-option.patch index b0decd5a084cb9fe40014bd793cd9a21b9943bf9..a76f9278322e560d745e7df5e12874d9a80540c4 100644 --- a/build/e_patches/0006-Remove-bromite-auto-updater-option.patch +++ b/build/e_patches/Remove-bromite-auto-updater-option.patch @@ -1,7 +1,7 @@ -From 31fbfb19ec92bd4f94cd2dec766c0beeaa642802 Mon Sep 17 00:00:00 2001 +From b08aae34af6a5b85c9e5e9ef902de71d417799cc Mon Sep 17 00:00:00 2001 From: althafvly Date: Wed, 20 Sep 2023 09:59:55 +0530 -Subject: [PATCH 06/55] Remove bromite auto updater option +Subject: Remove bromite auto updater option --- .../firstrun/ToSAndUMAFirstRunFragment.java | 25 ------------------- @@ -9,7 +9,7 @@ Subject: [PATCH 06/55] Remove bromite auto updater option 2 files changed, 1 insertion(+), 30 deletions(-) diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAndUMAFirstRunFragment.java b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAndUMAFirstRunFragment.java -index 0d1b17e4da45a..fe2a152b7a873 100644 +index 4d350f9a25221..e48620ac6f5cf 100644 --- a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAndUMAFirstRunFragment.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAndUMAFirstRunFragment.java @@ -63,8 +63,6 @@ public class ToSAndUMAFirstRunFragment diff --git a/build/e_patches/0042-Remove-google-pref-from-main-menu.patch b/build/e_patches/Remove-google-pref-from-main-menu.patch similarity index 81% rename from build/e_patches/0042-Remove-google-pref-from-main-menu.patch rename to build/e_patches/Remove-google-pref-from-main-menu.patch index e3c7c5f8f4e2f9fae9b72119c434801130043985..5cb5ddb4755039044c7f29015669e9784d55c1fe 100644 --- a/build/e_patches/0042-Remove-google-pref-from-main-menu.patch +++ b/build/e_patches/Remove-google-pref-from-main-menu.patch @@ -1,17 +1,17 @@ -From efb0805d00eec16e2439fdeecb88d18c3f715063 Mon Sep 17 00:00:00 2001 +From 0e8e8277df10e2279295e28aebaec5cf6fc80d3b Mon Sep 17 00:00:00 2001 From: althafvly Date: Mon, 12 Feb 2024 13:41:11 +0530 -Subject: [PATCH 42/55] Remove google pref from main menu +Subject: Remove google pref from main menu --- .../src/org/chromium/chrome/browser/settings/MainSettings.java | 3 +++ 1 file changed, 3 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 2597ca07c6fc8..bbc8444e0d2ef 100644 +index aba10ac9b956e..77aac47fe7602 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 -@@ -262,6 +262,9 @@ public class MainSettings extends ChromeBaseSettingsFragment +@@ -275,6 +275,9 @@ public class MainSettings extends ChromeBaseSettingsFragment TemplateUrlService templateUrlService = TemplateUrlServiceFactory.getForProfile(getProfile()); diff --git a/build/e_patches/0046-Remove-mremap-from-seccomp-baseline-policy.patch b/build/e_patches/Remove-mremap-from-seccomp-baseline-policy.patch similarity index 89% rename from build/e_patches/0046-Remove-mremap-from-seccomp-baseline-policy.patch rename to build/e_patches/Remove-mremap-from-seccomp-baseline-policy.patch index e94a61c80a835d11b6a7817b2bb312cf0b27de0b..adbe0c1daac9ef2c58f06fa03941266e6a0117c1 100644 --- a/build/e_patches/0046-Remove-mremap-from-seccomp-baseline-policy.patch +++ b/build/e_patches/Remove-mremap-from-seccomp-baseline-policy.patch @@ -1,7 +1,7 @@ -From 09e6df43d2f692906142b47db66ca7f6cab0924b Mon Sep 17 00:00:00 2001 +From b08e52795fc238c124f40152b69052dfeda29068 Mon Sep 17 00:00:00 2001 From: csagan5 <32685696+csagan5@users.noreply.github.com> Date: Sat, 16 Apr 2022 10:14:28 +0200 -Subject: [PATCH 46/55] Remove mremap from seccomp baseline policy +Subject: Remove mremap from seccomp baseline policy See also: * https://bugs.chromium.org/p/chromium/issues/detail?id=1288042 diff --git a/build/e_patches/0034-Remove-some-privacy-UI-pref.patch b/build/e_patches/Remove-some-privacy-UI-pref.patch similarity index 84% rename from build/e_patches/0034-Remove-some-privacy-UI-pref.patch rename to build/e_patches/Remove-some-privacy-UI-pref.patch index c7a0c4f8c691e39f53c2e2b628303b3fcafaf8b5..6f2c637838b5076b1b55821c125cc35fead1cfbc 100644 --- a/build/e_patches/0034-Remove-some-privacy-UI-pref.patch +++ b/build/e_patches/Remove-some-privacy-UI-pref.patch @@ -1,17 +1,17 @@ -From 4736d426b09a53c101db7258b47aacea7b5c47e8 Mon Sep 17 00:00:00 2001 +From 10e915f735cfcd608622416d1207126c0c354820 Mon Sep 17 00:00:00 2001 From: althafvly Date: Mon, 12 Feb 2024 14:21:50 +0530 -Subject: [PATCH 34/55] Remove some privacy UI pref +Subject: Remove some privacy UI pref --- .../chrome/browser/privacy/settings/PrivacySettings.java | 5 +++++ 1 file changed, 5 insertions(+) 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 4e7a08bab9440..6e2ad0c576ae1 100644 +index 95e48293b255c..caf093d5f4b70 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 -@@ -200,6 +200,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment +@@ -212,6 +212,9 @@ public class PrivacySettings extends ChromeBaseSettingsFragment mContextualSearch.setSummary( isContextualSearchEnabled ? R.string.text_on : R.string.text_off); @@ -21,7 +21,7 @@ index 4e7a08bab9440..6e2ad0c576ae1 100644 ChromeSwitchPreference canMakePaymentPref = (ChromeSwitchPreference) findPreference(PREF_CAN_MAKE_PAYMENT); canMakePaymentPref.setOnPreferenceChangeListener(this); -@@ -240,6 +243,8 @@ public class PrivacySettings extends ChromeBaseSettingsFragment +@@ -252,6 +255,8 @@ public class PrivacySettings extends ChromeBaseSettingsFragment Preference syncAndServicesLink = findPreference(PREF_SYNC_AND_SERVICES_LINK); syncAndServicesLink.setSummary(buildFooterString()); diff --git a/build/e_patches/0016-Revert-TM-Add-themed-app-icons.patch b/build/e_patches/Revert-TM-Add-themed-app-icons.patch similarity index 95% rename from build/e_patches/0016-Revert-TM-Add-themed-app-icons.patch rename to build/e_patches/Revert-TM-Add-themed-app-icons.patch index a62852c6ba2110e9943baf9a097117c73b7a9cd4..5f7745abdc39da75d7de681ba10c042cbd788a41 100644 --- a/build/e_patches/0016-Revert-TM-Add-themed-app-icons.patch +++ b/build/e_patches/Revert-TM-Add-themed-app-icons.patch @@ -1,7 +1,7 @@ -From b3bdec5649e3e58223cbc522fd6725837b916070 Mon Sep 17 00:00:00 2001 +From c3edcff2512d7baca20ff6c44bfdd28ec713bbf9 Mon Sep 17 00:00:00 2001 From: althafvly Date: Fri, 18 Nov 2022 09:48:02 +0000 -Subject: [PATCH 16/55] Revert "[TM] Add themed app icons" +Subject: Revert "[TM] Add themed app icons" This reverts commit 9faa242a0c09838268d7c969acdf493f29ef3db5. --- @@ -13,7 +13,7 @@ This reverts commit 9faa242a0c09838268d7c969acdf493f29ef3db5. delete mode 100644 chrome/android/java/res_chromium_base/drawable/themed_app_icon.xml diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn -index 3a883fbdb75e6..786ab5e1fa2ad 100644 +index 975728b016040..44414c2c448ec 100644 --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn @@ -179,7 +179,6 @@ if (current_toolchain == default_toolchain) { @@ -24,7 +24,7 @@ index 3a883fbdb75e6..786ab5e1fa2ad 100644 "java/res_chromium_base/mipmap-hdpi/app_icon.png", "java/res_chromium_base/mipmap-hdpi/layered_app_icon.png", "java/res_chromium_base/mipmap-hdpi/layered_app_icon_background.png", -@@ -2268,7 +2267,6 @@ if (current_toolchain == default_toolchain) { +@@ -2293,7 +2292,6 @@ if (current_toolchain == default_toolchain) { android_resources("chrome_public_apk_base_module_resources") { resource_overlay = true sources = [ diff --git a/build/e_patches/0050-Update-app-icon.patch b/build/e_patches/Update-app-icon.patch similarity index 99% rename from build/e_patches/0050-Update-app-icon.patch rename to build/e_patches/Update-app-icon.patch index 64bca13e32b580b117a5ee4f6167538ef3d77dc7..7bf6ef71f667f74d205c3ccfe59c207f6b2ff037 100644 --- a/build/e_patches/0050-Update-app-icon.patch +++ b/build/e_patches/Update-app-icon.patch @@ -1,7 +1,7 @@ -From e30b19c86cb1b31e141e276b27414f77e47408fe Mon Sep 17 00:00:00 2001 +From 2be8f620eaf1dec0d90030459eea691e1919fa46 Mon Sep 17 00:00:00 2001 From: Nishith Khanna Date: Wed, 14 Feb 2024 15:09:43 +0530 -Subject: [PATCH 50/55] Update app icon +Subject: Update app icon --- .../drawable/ic_launcher_background.xml | 89 +++++++++++--- diff --git a/build/e_patches/0051-Update-default-sites.patch b/build/e_patches/Update-default-sites.patch similarity index 93% rename from build/e_patches/0051-Update-default-sites.patch rename to build/e_patches/Update-default-sites.patch index b45f305554b281c7651dff5ee6595b99d72a20c0..b97a4a9e1a8c81a54ed7309269f34b836b21ce4d 100644 --- a/build/e_patches/0051-Update-default-sites.patch +++ b/build/e_patches/Update-default-sites.patch @@ -1,7 +1,7 @@ -From f081fd8f7f5f7cbcda7acbf7046160bb0ca24619 Mon Sep 17 00:00:00 2001 +From f2ff76160624cf8181b560d6095e53975d2378e1 Mon Sep 17 00:00:00 2001 From: Nishith Khanna Date: Thu, 11 Apr 2024 20:54:43 +0530 -Subject: [PATCH 51/55] Update default sites +Subject: Update default sites --- components/ntp_tiles/resources/foundation_e.json | 16 +++++++++++++--- diff --git a/build/e_patches/0045-Update-i18n-zh_CN-support.patch b/build/e_patches/Update-i18n-zhCN-support.patch similarity index 97% rename from build/e_patches/0045-Update-i18n-zh_CN-support.patch rename to build/e_patches/Update-i18n-zhCN-support.patch index ef37b47e1d8291af7a75074e8084905c9d0d695f..5236b991fb1ce539ded3e5f035e13816ba5338dd 100644 --- a/build/e_patches/0045-Update-i18n-zh_CN-support.patch +++ b/build/e_patches/Update-i18n-zhCN-support.patch @@ -1,7 +1,7 @@ -From 05024c959c8b7f7489430fc2c0504de0d6985642 Mon Sep 17 00:00:00 2001 +From 5fd9c9c9c64cc408ef7a888f8c196eb7680090d0 Mon Sep 17 00:00:00 2001 From: mars Date: Sun, 2 Aug 2020 00:37:49 +0800 -Subject: [PATCH 45/55] Update i18n zh_CN support +Subject: Update i18n zh_CN support License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html --- @@ -14,10 +14,10 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 6 files changed, 133 insertions(+), 6 deletions(-) diff --git a/chrome/app/resources/generated_resources_zh-CN.xtb b/chrome/app/resources/generated_resources_zh-CN.xtb -index 1cdadbd35d58c..67edd566ff16b 100644 +index ee06461ba6bd7..60e71d743b375 100644 --- a/chrome/app/resources/generated_resources_zh-CN.xtb +++ b/chrome/app/resources/generated_resources_zh-CN.xtb -@@ -11475,4 +11475,6 @@ +@@ -11467,4 +11467,6 @@ 网站会在您访问时自动采用此设置。网站通常会发送通知,以便您知悉重大新闻或聊天消息。 您需要开启 Chrome 同步才能使用 Wi-Fi 同步功能。了解详情 检查(&N) @@ -27,10 +27,10 @@ index 1cdadbd35d58c..67edd566ff16b 100644 +配置广告拦截和过滤规则地址 + diff --git a/chrome/app/resources/google_chrome_strings_zh-CN.xtb b/chrome/app/resources/google_chrome_strings_zh-CN.xtb -index 491e0070200f4..0ad15f7130712 100644 +index 3a1adf2c8207f..771351a637641 100644 --- a/chrome/app/resources/google_chrome_strings_zh-CN.xtb +++ b/chrome/app/resources/google_chrome_strings_zh-CN.xtb -@@ -597,4 +597,5 @@ +@@ -603,4 +603,5 @@ 更新服务器没有应用的任何哈希数据,因此安装失败。 Google Chrome 是您的默认浏览器 可用于切换 Chrome 个人资料 @@ -39,10 +39,10 @@ index 491e0070200f4..0ad15f7130712 100644 +关于 Bromite + diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-CN.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-CN.xtb -index eb309d2976be2..f2819805c207c 100644 +index b752af953ad83..4ffb2d8d997a6 100644 --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-CN.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-CN.xtb -@@ -1790,4 +1790,74 @@ +@@ -1822,4 +1822,74 @@ 若要删除您设备中的无痕浏览记录,请关闭所有无痕式标签页。 个标签页 动态卡片上的菜单已关闭 @@ -120,10 +120,10 @@ index eb309d2976be2..f2819805c207c 100644 +全选 + diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_zh-CN.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_zh-CN.xtb -index 290a8ef25bb57..5a6235a4546e2 100644 +index fbf2565de7d98..908b13cf6c26d 100644 --- a/components/browser_ui/strings/android/translations/browser_ui_strings_zh-CN.xtb +++ b/components/browser_ui/strings/android/translations/browser_ui_strings_zh-CN.xtb -@@ -522,4 +522,28 @@ +@@ -539,4 +539,28 @@ 您访问的网站可以验证您是真人而非机器人 让各项内容井井有条 已存储的数据 @@ -155,10 +155,10 @@ index 290a8ef25bb57..5a6235a4546e2 100644 +WebRTC + diff --git a/components/strings/components_strings_zh-CN.xtb b/components/strings/components_strings_zh-CN.xtb -index df0cc4bdf8698..47d171fa12d10 100644 +index 95763ac249888..a9a58ea4e5537 100644 --- a/components/strings/components_strings_zh-CN.xtb +++ b/components/strings/components_strings_zh-CN.xtb -@@ -4477,4 +4477,33 @@ +@@ -4528,4 +4528,33 @@ 添加 IBAN YouTube 来自 Google Pay diff --git a/build/e_patches/0033-Use-thirdparty-autofill-by-default.patch b/build/e_patches/Use-thirdparty-autofill-by-default.patch similarity index 95% rename from build/e_patches/0033-Use-thirdparty-autofill-by-default.patch rename to build/e_patches/Use-thirdparty-autofill-by-default.patch index f8525225e10742a1148f19eaf221c579178dbfc0..7bb1f20d002f311494157eef7a932ef2458bb66d 100644 --- a/build/e_patches/0033-Use-thirdparty-autofill-by-default.patch +++ b/build/e_patches/Use-thirdparty-autofill-by-default.patch @@ -1,7 +1,7 @@ -From 29840fb61e8ad62835ce1f8ae3ec0dabfe46c3c6 Mon Sep 17 00:00:00 2001 +From 5a7d4be7bbd96b6297cbb734abf6aa29a3f15de3 Mon Sep 17 00:00:00 2001 From: althafvly Date: Mon, 12 Feb 2024 13:54:08 +0530 -Subject: [PATCH 33/55] Use thirdparty autofill by default +Subject: Use thirdparty autofill by default --- .../res/layout/radio_button_group_third_party_preference.xml | 2 +- diff --git a/build/e_patches/0004-add-trichrome-browser-apk-targets.patch b/build/e_patches/add-trichrome-browser-apk-targets.patch similarity index 88% rename from build/e_patches/0004-add-trichrome-browser-apk-targets.patch rename to build/e_patches/add-trichrome-browser-apk-targets.patch index 1e555411c95e0dc97c2a939ee23daf3c33c141ef..6e1f54b6ce5954f386cbf0dee287f90cf67d1cc2 100644 --- a/build/e_patches/0004-add-trichrome-browser-apk-targets.patch +++ b/build/e_patches/add-trichrome-browser-apk-targets.patch @@ -1,7 +1,7 @@ -From 6d5df5f4b2b3b7f5b20b4df76f5072f4060ba108 Mon Sep 17 00:00:00 2001 +From 82a9361f9a7e57f277be72d380eac6361321909c Mon Sep 17 00:00:00 2001 From: Daniel Micay Date: Thu, 27 May 2021 07:30:02 -0400 -Subject: [PATCH 04/55] add trichrome browser apk targets +Subject: add trichrome browser apk targets --- chrome/android/BUILD.gn | 35 +++++++++++++++++++++++ @@ -9,10 +9,10 @@ Subject: [PATCH 04/55] add trichrome browser apk targets 2 files changed, 37 insertions(+) diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn -index da9474e2c77b5..3a883fbdb75e6 100644 +index d097254f7cd40..975728b016040 100644 --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -2526,6 +2526,10 @@ if (current_toolchain == default_toolchain) { +@@ -2551,6 +2551,10 @@ if (current_toolchain == default_toolchain) { is_trichrome = true is_bundle_module = true } @@ -23,7 +23,7 @@ index da9474e2c77b5..3a883fbdb75e6 100644 # Exists separately from chrome_public_base_module_java_for_test to allow # downstream to depend on test support packages without needing to depend on -@@ -2890,6 +2894,37 @@ if (current_toolchain == default_toolchain) { +@@ -2913,6 +2917,37 @@ if (current_toolchain == default_toolchain) { } } } @@ -62,7 +62,7 @@ index da9474e2c77b5..3a883fbdb75e6 100644 # As compared to chrome_public_test_apk, this target contains only unit tests # that require on device capabilities. These tests are smaller, more tightly diff --git a/chrome/android/chrome_public_apk_tmpl.gni b/chrome/android/chrome_public_apk_tmpl.gni -index 8bf53218c55fe..ab41e291ac8d3 100644 +index 072e0948ca888..d160c0383ae47 100644 --- a/chrome/android/chrome_public_apk_tmpl.gni +++ b/chrome/android/chrome_public_apk_tmpl.gni @@ -475,6 +475,8 @@ template("chrome_common_apk_or_module_tmpl") { diff --git a/build/e_patches/0039-disable-browser-sign-in-feature-by-default.patch b/build/e_patches/disable-browser-sign-in-feature-by-default.patch similarity index 87% rename from build/e_patches/0039-disable-browser-sign-in-feature-by-default.patch rename to build/e_patches/disable-browser-sign-in-feature-by-default.patch index 0026aa8d9447dcf3fdda4a211104897c33a4ab96..d970eaacc4ce35d714a1bd469af538ad267b3a19 100644 --- a/build/e_patches/0039-disable-browser-sign-in-feature-by-default.patch +++ b/build/e_patches/disable-browser-sign-in-feature-by-default.patch @@ -1,7 +1,7 @@ -From 8af8adb1253e073198863f2ae123533636a35ed6 Mon Sep 17 00:00:00 2001 +From e42f75f37fae666b445d768c4948d9b755c8efa9 Mon Sep 17 00:00:00 2001 From: althafvly Date: Mon, 12 Feb 2024 13:26:25 +0530 -Subject: [PATCH 39/55] disable browser sign in feature by default +Subject: disable browser sign in feature by default --- chrome/browser/signin/account_consistency_mode_manager.cc | 2 +- diff --git a/build/e_patches/0043-disable-contextual-search-by-default.patch b/build/e_patches/disable-contextual-search-by-default.patch similarity index 90% rename from build/e_patches/0043-disable-contextual-search-by-default.patch rename to build/e_patches/disable-contextual-search-by-default.patch index 4fbdc3d32efffe1fcedf4ce600a4dcdb7047a73c..99b4485fe01d8bc8f93bc69a1783acaa6f2fc43b 100644 --- a/build/e_patches/0043-disable-contextual-search-by-default.patch +++ b/build/e_patches/disable-contextual-search-by-default.patch @@ -1,7 +1,7 @@ -From 827975deea9ef406e4b110db245104b88ef32ffa Mon Sep 17 00:00:00 2001 +From 53ad641f64b9022f84a06c1f3fc433deadc97fac Mon Sep 17 00:00:00 2001 From: Daniel Micay Date: Wed, 23 Nov 2016 09:26:51 -0500 -Subject: [PATCH 43/55] disable contextual search by default +Subject: disable contextual search by default --- .../browser/contextualsearch/ContextualSearchFieldTrial.java | 2 +- @@ -22,7 +22,7 @@ index 46146a968f9df..3eea0b291ed27 100644 /** diff --git a/chrome/browser/profiles/profile.cc b/chrome/browser/profiles/profile.cc -index e2db3688e3e0b..67f648d2a3a38 100644 +index 76e435416e7ca..6bda0c94c86ec 100644 --- a/chrome/browser/profiles/profile.cc +++ b/chrome/browser/profiles/profile.cc @@ -323,7 +323,7 @@ void Profile::RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) { diff --git a/build/e_patches/0025-disable-fetching-variations.patch b/build/e_patches/disable-fetching-variations.patch similarity index 88% rename from build/e_patches/0025-disable-fetching-variations.patch rename to build/e_patches/disable-fetching-variations.patch index 2e6b13961d547b9b8e2b83ee1142feb839b05aa9..e8b055b87ce6f3a55173fae815b04033621260de 100644 --- a/build/e_patches/0025-disable-fetching-variations.patch +++ b/build/e_patches/disable-fetching-variations.patch @@ -1,7 +1,7 @@ -From 8e7dfeb3e0d87c1790d2b57d63496dca066b73ef Mon Sep 17 00:00:00 2001 +From 6c8c59ad243f5a45396d871576cfa65108bde860 Mon Sep 17 00:00:00 2001 From: Daniel Micay Date: Wed, 18 Nov 2020 19:08:58 -0500 -Subject: [PATCH 25/55] disable fetching variations +Subject: disable fetching variations --- .../org/chromium/chrome/browser/init/AsyncInitTaskRunner.java | 2 +- diff --git a/build/e_patches/0026-disable-navigation-error-correction-by-default.patch b/build/e_patches/disable-navigation-error-correction-by-default.patch similarity index 79% rename from build/e_patches/0026-disable-navigation-error-correction-by-default.patch rename to build/e_patches/disable-navigation-error-correction-by-default.patch index ac52a78ac559aa1ea0f8868759e34b03bca23f10..b4531ef656fdfa482896f6f88be008b0a08ec0e4 100644 --- a/build/e_patches/0026-disable-navigation-error-correction-by-default.patch +++ b/build/e_patches/disable-navigation-error-correction-by-default.patch @@ -1,17 +1,17 @@ -From e354dd9b94bed18d1c9bdfc826e7aaa9ae859eba Mon Sep 17 00:00:00 2001 +From bf70f316ea8bb013d2402421c886df31479f00ca Mon Sep 17 00:00:00 2001 From: Daniel Micay Date: Wed, 23 Nov 2016 08:29:58 -0500 -Subject: [PATCH 26/55] disable navigation error correction by default +Subject: disable navigation error correction by default --- chrome/browser/net/profile_network_context_service.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chrome/browser/net/profile_network_context_service.cc b/chrome/browser/net/profile_network_context_service.cc -index 46a04e805fe78..de852e0fbaa25 100644 +index bce36fc934e01..af11febe43ea6 100644 --- a/chrome/browser/net/profile_network_context_service.cc +++ b/chrome/browser/net/profile_network_context_service.cc -@@ -389,7 +389,7 @@ void ProfileNetworkContextService::ConfigureNetworkContextParams( +@@ -400,7 +400,7 @@ void ProfileNetworkContextService::ConfigureNetworkContextParams( void ProfileNetworkContextService::RegisterProfilePrefs( user_prefs::PrefRegistrySyncable* registry) { registry->RegisterBooleanPref(embedder_support::kAlternateErrorPagesEnabled, diff --git a/build/e_patches/0024-disable-seed-based-field-trials.patch b/build/e_patches/disable-seedbased-field-trials.patch similarity index 89% rename from build/e_patches/0024-disable-seed-based-field-trials.patch rename to build/e_patches/disable-seedbased-field-trials.patch index bb2367a6fbe8e1d2b4e42e741dc99f26659758a7..b98c53a9205c7a2bdfe9ad42fac9f1afae08b77d 100644 --- a/build/e_patches/0024-disable-seed-based-field-trials.patch +++ b/build/e_patches/disable-seedbased-field-trials.patch @@ -1,7 +1,7 @@ -From fb9efe9df7b9380be9fe9b2e926e4f57307f6a52 Mon Sep 17 00:00:00 2001 +From 3c2635c597b38ea4137a0e624f7199fb74a5fb21 Mon Sep 17 00:00:00 2001 From: Daniel Micay Date: Tue, 25 Dec 2018 16:19:51 -0500 -Subject: [PATCH 24/55] disable seed-based field trials +Subject: disable seed-based field trials --- .../variations/service/variations_field_trial_creator_base.cc | 2 ++ diff --git a/build/e_patches/0002-fixup-Bromite-subresource-adblocker.patch b/build/e_patches/fixup-Bromite-subresource-adblocker.patch similarity index 75% rename from build/e_patches/0002-fixup-Bromite-subresource-adblocker.patch rename to build/e_patches/fixup-Bromite-subresource-adblocker.patch index 8755314a1ccd7dff28e36fd41d1eddc3479841f1..3fa71567ff8e3a76908e46dc0292a8757204de0b 100644 --- a/build/e_patches/0002-fixup-Bromite-subresource-adblocker.patch +++ b/build/e_patches/fixup-Bromite-subresource-adblocker.patch @@ -1,17 +1,17 @@ -From a552dabdffd28db3a076161f1e28143d475de9d5 Mon Sep 17 00:00:00 2001 +From 5117a740a04e565593cbfca54a7a46c1683df6b9 Mon Sep 17 00:00:00 2001 From: althafvly Date: Thu, 11 Apr 2024 19:45:52 +0530 -Subject: [PATCH 02/55] fixup Bromite subresource adblocker +Subject: fixup Bromite subresource adblocker --- chrome/android/BUILD.gn | 1 - 1 file changed, 1 deletion(-) diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn -index c3b3f32c46b08..da9474e2c77b5 100644 +index 03194e97bdf00..d097254f7cd40 100644 --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -369,7 +369,6 @@ if (current_toolchain == default_toolchain) { +@@ -372,7 +372,6 @@ if (current_toolchain == default_toolchain) { "//chrome/android/modules/cablev2_authenticator/public:java", "//chrome/android/modules/stack_unwinder/provider:java", "//chrome/android/webapk/libs/client:client_java", diff --git a/build/e_patches/0003-fixup-Disable-fetching-of-all-field-trials.patch b/build/e_patches/fixup-Disable-fetching-of-all-field-trials.patch similarity index 93% rename from build/e_patches/0003-fixup-Disable-fetching-of-all-field-trials.patch rename to build/e_patches/fixup-Disable-fetching-of-all-field-trials.patch index 05e4bc7362e89b0f9796f9cd189ed92b799cc727..d8d7ebac0d7d1eb59b98d0a4aa61361878854a05 100644 --- a/build/e_patches/0003-fixup-Disable-fetching-of-all-field-trials.patch +++ b/build/e_patches/fixup-Disable-fetching-of-all-field-trials.patch @@ -1,7 +1,7 @@ -From 1c0882850e1451a8e0d29997eda84be6420271bd Mon Sep 17 00:00:00 2001 +From 334806a6a369db6cf2e43aa7f76e0443150f0e15 Mon Sep 17 00:00:00 2001 From: althafvly Date: Wed, 20 Sep 2023 09:48:52 +0530 -Subject: [PATCH 03/55] fixup Disable fetching of all field trials +Subject: fixup Disable fetching of all field trials --- .../services/SafeModeVariationsSeedContentProvider.java | 8 +------- @@ -29,7 +29,7 @@ index ad626ddfe4ef8..d6b55d4be62e4 100644 @Override diff --git a/build/android/gyp/proguard.py b/build/android/gyp/proguard.py -index 2c674041ff17a..83ce4e582b4fb 100755 +index 31054601f2f6e..a7892474a3bad 100755 --- a/build/android/gyp/proguard.py +++ b/build/android/gyp/proguard.py @@ -54,6 +54,8 @@ _IGNORE_WARNINGS = ( diff --git a/build/e_patches/0001-fixup-Revert-removal-of-execution-context-address-sp.patch b/build/e_patches/fixup-Revert-removal-of-execution-context-address-space.patch similarity index 89% rename from build/e_patches/0001-fixup-Revert-removal-of-execution-context-address-sp.patch rename to build/e_patches/fixup-Revert-removal-of-execution-context-address-space.patch index 56e802da63aa087583af69b615eca7ad0e4fd53e..0b98cf8e18a0c5975343ea3dce0f60b316d89783 100644 --- a/build/e_patches/0001-fixup-Revert-removal-of-execution-context-address-sp.patch +++ b/build/e_patches/fixup-Revert-removal-of-execution-context-address-space.patch @@ -1,7 +1,7 @@ -From 2402e70b4a6a3f52145b3db16b827bcb618d85cd Mon Sep 17 00:00:00 2001 +From 806656715cf4fb9e865e6088b2a4292d3b3fd92a Mon Sep 17 00:00:00 2001 From: althafvly Date: Wed, 4 Oct 2023 13:51:29 +0530 -Subject: [PATCH 01/55] fixup Revert removal of execution context address space +Subject: fixup Revert removal of execution context address space --- .../blink/renderer/core/workers/installed_scripts_manager.cc | 4 ++-- diff --git a/build/e_patches/0056-net-cert-increase-default-key-length.patch b/build/e_patches/netcert-increase-default-key-length.patch similarity index 87% rename from build/e_patches/0056-net-cert-increase-default-key-length.patch rename to build/e_patches/netcert-increase-default-key-length.patch index 9cde4e63fcbe0305e3d850d88bc8728a6d2b4e7d..d6d71fe34c2ab4be5518462ee01554735c4e366d 100644 --- a/build/e_patches/0056-net-cert-increase-default-key-length.patch +++ b/build/e_patches/netcert-increase-default-key-length.patch @@ -1,7 +1,7 @@ -From ff7ae15112e4d34c0842d8a01c37323e889bc894 Mon Sep 17 00:00:00 2001 +From dbce211aca2915e213f52c336c01e12e88187352 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Mon, 15 Sep 2014 10:52:32 +0200 -Subject: [PATCH 56/59] net/cert: increase default key length +Subject: net/cert: increase default key length Should we add something for chrome://settings, or just leave it as hidden as it was before? diff --git a/build/e_patches/0057-openH264-enable-ARM-ARM64-optimizations.patch b/build/e_patches/openH264-enable-ARMARM64-optimizations.patch similarity index 88% rename from build/e_patches/0057-openH264-enable-ARM-ARM64-optimizations.patch rename to build/e_patches/openH264-enable-ARMARM64-optimizations.patch index 42cc5b0510e47bd85c958baba8ab761fca3769fb..becdf46e88f9396f19a504dc4c3ddce45c1d65c2 100644 --- a/build/e_patches/0057-openH264-enable-ARM-ARM64-optimizations.patch +++ b/build/e_patches/openH264-enable-ARMARM64-optimizations.patch @@ -1,7 +1,7 @@ -From 2ad6416f3fbab5fb3b25a687a2426d57fa0ddc0b Mon Sep 17 00:00:00 2001 +From b424b689791ac96ba78161e7053e332ed53d7db9 Mon Sep 17 00:00:00 2001 From: csagan5 <32685696+csagan5@users.noreply.github.com> Date: Sat, 20 Jan 2018 21:17:27 +0100 -Subject: [PATCH 57/59] openH264: enable ARM/ARM64 optimizations +Subject: openH264: enable ARM/ARM64 optimizations Enable the optimizations not only for ChromeOS but for all compatbile ARM/ARM64 architectures Limit threads auto-detect only for iOS @@ -13,7 +13,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html 2 files changed, 21 insertions(+), 9 deletions(-) diff --git a/third_party/blink/renderer/modules/mediarecorder/h264_encoder.cc b/third_party/blink/renderer/modules/mediarecorder/h264_encoder.cc -index 9e008c89ce485..c752b39d51e41 100644 +index 2c0e38745c306..7bc8f31db79d5 100644 --- a/third_party/blink/renderer/modules/mediarecorder/h264_encoder.cc +++ b/third_party/blink/renderer/modules/mediarecorder/h264_encoder.cc @@ -233,11 +233,11 @@ bool H264Encoder::ConfigureEncoder(const gfx::Size& size) { @@ -32,10 +32,10 @@ index 9e008c89ce485..c752b39d51e41 100644 // TODO(mcasas): consider reducing complexity if there are few CPUs available. diff --git a/third_party/openh264/BUILD.gn b/third_party/openh264/BUILD.gn -index ee1ecd5623b50..df3ab10bdc698 100644 +index 99340a7369dd7..7666a1cfc8fb2 100644 --- a/third_party/openh264/BUILD.gn +++ b/third_party/openh264/BUILD.gn -@@ -131,8 +131,12 @@ if (use_assembler) { +@@ -134,8 +134,12 @@ if (use_assembler) { source_set("common") { sources = openh264_common_sources @@ -50,7 +50,7 @@ index ee1ecd5623b50..df3ab10bdc698 100644 } include_dirs = openh264_common_include_dirs -@@ -157,8 +161,12 @@ source_set("common") { +@@ -160,8 +164,12 @@ source_set("common") { source_set("processing") { sources = openh264_processing_sources @@ -65,7 +65,7 @@ index ee1ecd5623b50..df3ab10bdc698 100644 } include_dirs = openh264_processing_include_dirs -@@ -174,8 +182,12 @@ source_set("processing") { +@@ -177,8 +185,12 @@ source_set("processing") { source_set("encoder") { sources = openh264_encoder_sources diff --git a/build/e_patches/0058-ungoogled-chromium-Disable-Gaia.patch b/build/e_patches/ungoogledchromium-Disable-Gaia.patch similarity index 92% rename from build/e_patches/0058-ungoogled-chromium-Disable-Gaia.patch rename to build/e_patches/ungoogledchromium-Disable-Gaia.patch index ebb4f47bfe1c97d528f114f528ac6ffc2dec3374..e75c96fe30fcd3b144ac59f26b5fab76d39b289c 100644 --- a/build/e_patches/0058-ungoogled-chromium-Disable-Gaia.patch +++ b/build/e_patches/ungoogledchromium-Disable-Gaia.patch @@ -1,7 +1,7 @@ -From 875b050d11fa1afa9b9fe967a2a38c9a436ee987 Mon Sep 17 00:00:00 2001 +From 074a46b462b205bc22f4673c51bfa32edf667b12 Mon Sep 17 00:00:00 2001 From: csagan5 <32685696+csagan5@users.noreply.github.com> Date: Mon, 12 Feb 2018 21:37:52 +0100 -Subject: [PATCH 58/59] ungoogled-chromium: Disable Gaia +Subject: ungoogled-chromium: Disable Gaia Disables Gaia code. Somehow it is still being activated even without being signed-in. diff --git a/build/e_patches_list.txt b/build/e_patches_list.txt index 514e6882370c7c7bad9350ef22baee9c040fd207..11a99440d22c5462a40bde20a6c2a5e05cd4ab86 100644 --- a/build/e_patches_list.txt +++ b/build/e_patches_list.txt @@ -1,60 +1,61 @@ -0001-fixup-Revert-removal-of-execution-context-address-sp.patch -0002-fixup-Bromite-subresource-adblocker.patch -0003-fixup-Disable-fetching-of-all-field-trials.patch -0004-add-trichrome-browser-apk-targets.patch -0005-Browser-disable-price-shopping-commerce-integration.patch -0006-Remove-bromite-auto-updater-option.patch -0007-Browser-Change-app-and-package-name-to-browser.patch -0008-Browser-Point-to-our-default-popular-sites.patch -0009-Browser-Enable-do-not-track-by-default.patch -0010-Browser-Add-provider-to-share-default-search-engine.patch -0011-Browser-Enable-custom-tabs-by-default.patch -0012-Browser-Enable-search-suggestion-by-default.patch -0013-Browser-Modify-default-search-engines.patch -0014-Add-Mojeek-Search-engine.patch -0015-Browser-Redirect-users-to-e-foundation-docs.patch -0016-Revert-TM-Add-themed-app-icons.patch -0017-Browser-Use-our-custom-icon-for-browser.patch -0018-Browser-Rename-strings-to-browser.patch -0019-Browser-Use-adaptive-icon-for-recents-UI.patch -0020-Browser-Change-info-bar-icon.patch -0021-Browser-Remove-logo-from-chrome-version.patch -0022-Browser-disable-search-provider-logo.patch -0023-Browser-disable-first-run-welcome-page.patch -0024-disable-seed-based-field-trials.patch -0025-disable-fetching-variations.patch -0026-disable-navigation-error-correction-by-default.patch -0027-Handle-web-search-action-in-browser.patch -0028-Browser-Replace-default-tab-favicon.patch -0029-Browser-Spoof-as-Pixel-4a-by-default.patch -0030-Browser-Remove-broken-link-about-entries.patch -0031-Browser-Disable-Android-native-autofill-by-default.patch -0032-Browser-Enable-unified-autoplay-by-default.patch -0033-Use-thirdparty-autofill-by-default.patch -0034-Remove-some-privacy-UI-pref.patch -0035-Browser-Remove-send-to-devices-option.patch -0036-Browser-Enable-webRTC-by-default.patch -0037-Browser-Enable-webgl-by-default.patch -0038-Enable-sensors-by-default.patch -0039-disable-browser-sign-in-feature-by-default.patch -0040-Disable-adding-a-signed-out-avatar-on-new-tab-pages-.patch -0041-Hide-Sign-In-preference-when-disallowed.patch -0042-Remove-google-pref-from-main-menu.patch -0043-disable-contextual-search-by-default.patch -0044-Disable-AGSA-by-default.patch -0045-Update-i18n-zh_CN-support.patch -0046-Remove-mremap-from-seccomp-baseline-policy.patch -0047-Re-introduce-kWebAuthCable.patch -0048-Enable-SPPI-for-devices-with-enough-memory.patch -0049-Change-accent-and-switch-to-match-our-palette.patch -0050-Update-app-icon.patch -0051-Update-default-sites.patch -0052-Browser-Hide-settings-when-parental-control-is-activ.patch -0053-Browser-Use-correct-switch-scale.patch -0054-Browser-Change-adblock-url-to-ours.patch -0055-Multiple-fingerprinting-mitigations.patch -0056-net-cert-increase-default-key-length.patch -0057-openH264-enable-ARM-ARM64-optimizations.patch -0058-ungoogled-chromium-Disable-Gaia.patch -0059-Disable-support-for-RAR-files-inspection.patch -0060-Browser-Fix-open-in-browser-text.patch +fixup-Revert-removal-of-execution-context-address-space.patch +fixup-Bromite-subresource-adblocker.patch +fixup-Disable-fetching-of-all-field-trials.patch +add-trichrome-browser-apk-targets.patch +Browser-disable-price-shopping-commerce-integration.patch +Remove-bromite-auto-updater-option.patch +Browser-Change-app-and-package-name-to-browser.patch +Browser-Point-to-our-default-popular-sites.patch +Browser-Enable-do-not-track-by-default.patch +Browser-Add-provider-to-share-default-search-engine.patch +Browser-Enable-custom-tabs-by-default.patch +Browser-Enable-search-suggestion-by-default.patch +Browser-Modify-default-search-engines.patch +Add-Mojeek-Search-engine.patch +Browser-Redirect-users-to-e-foundation-docs.patch +Revert-TM-Add-themed-app-icons.patch +Browser-Use-our-custom-icon-for-browser.patch +Browser-Rename-strings-to-browser.patch +Browser-Use-adaptive-icon-for-recents-UI.patch +Browser-Change-info-bar-icon.patch +Browser-Remove-logo-from-chromeversion.patch +Browser-disable-search-provider-logo.patch +Browser-disable-first-run-welcome-page.patch +disable-seedbased-field-trials.patch +disable-fetching-variations.patch +disable-navigation-error-correction-by-default.patch +Handle-web-search-action-in-browser.patch +Browser-Replace-default-tab-favicon.patch +Browser-Spoof-as-Pixel-4a-by-default.patch +Browser-Remove-broken-link-about-entries.patch +Browser-Disable-Android-native-autofill-by-default.patch +Browser-Enable-unified-autoplay-by-default.patch +Use-thirdparty-autofill-by-default.patch +Remove-some-privacy-UI-pref.patch +Browser-Remove-send-to-devices-option.patch +Browser-Enable-webRTC-by-default.patch +Browser-Enable-webgl-by-default.patch +Enable-sensors-by-default.patch +disable-browser-sign-in-feature-by-default.patch +Disable-adding-a-signed-out-avatar-on-new-tab-pages-by-default.patch +Hide-Sign-In-preference-when-disallowed.patch +Remove-google-pref-from-main-menu.patch +disable-contextual-search-by-default.patch +Disable-AGSA-by-default.patch +Update-i18n-zhCN-support.patch +Remove-mremap-from-seccomp-baseline-policy.patch +Reintroduce-kWebAuthCable.patch +Enable-SPPI-for-devices-with-enough-memory.patch +Change-accent-and-switch-to-match-our-palette.patch +Update-app-icon.patch +Update-default-sites.patch +Browser-Hide-settings-when-parental-control-is-active.patch +Browser-Use-correct-switch-scale.patch +Browser-Change-adblock-url-to-ours.patch +Multiple-fingerprinting-mitigations.patch +netcert-increase-default-key-length.patch +openH264-enable-ARMARM64-optimizations.patch +ungoogledchromium-Disable-Gaia.patch +Disable-support-for-RAR-files-inspection.patch +Browser-Fix-open-in-browser-text.patch +Inject-scripts-for-AMP-tracking-ads-and-video.patch diff --git a/domain_substitution/.gitignore b/domain_substitution/.gitignore index 60baceb4d8cf42eb43e0c76786497672320bf7ad..10b950483d8aed11701e63aa117e07dd3648f102 100644 --- a/domain_substitution/.gitignore +++ b/domain_substitution/.gitignore @@ -1,3 +1,2 @@ __pycache__/ ungoogled-chromium/ - diff --git a/domain_substitution/_extraction.py b/domain_substitution/_extraction.py index 63c7567e407c7aafa8c4017f64dcda63fadcd2f3..93a735facaa5e38b799f21e908185073e1372102 100644 --- a/domain_substitution/_extraction.py +++ b/domain_substitution/_extraction.py @@ -88,7 +88,7 @@ def _process_relative_to(unpack_root, relative_to): relative_root.rmdir() -def _extract_tar_with_7z(binary, archive_path, output_dir, relative_to, skip_unused): +def _extract_tar_with_7z(binary, archive_path, output_dir, relative_to, skip_unused, sysroot): get_logger().debug('Using 7-zip extractor') if not relative_to is None and (output_dir / relative_to).exists(): get_logger().error('Temporary unpacking directory already exists: %s', @@ -98,6 +98,8 @@ def _extract_tar_with_7z(binary, archive_path, output_dir, relative_to, skip_unu cmd2 = (binary, 'x', '-si', '-aoa', '-ttar', '-o{}'.format(str(output_dir))) if skip_unused: for cpath in CONTINGENT_PATHS: + if sysroot and f'{sysroot}-sysroot' in cpath: + continue cmd2 += ('-x!%s/%s' % (str(relative_to), cpath[:-1]), ) get_logger().debug('7z command line: %s | %s', ' '.join(cmd1), ' '.join(cmd2)) @@ -114,12 +116,14 @@ def _extract_tar_with_7z(binary, archive_path, output_dir, relative_to, skip_unu _process_relative_to(output_dir, relative_to) -def _extract_tar_with_tar(binary, archive_path, output_dir, relative_to, skip_unused): +def _extract_tar_with_tar(binary, archive_path, output_dir, relative_to, skip_unused, sysroot): get_logger().debug('Using BSD or GNU tar extractor') output_dir.mkdir(exist_ok=True) cmd = (binary, '-xf', str(archive_path), '-C', str(output_dir)) if skip_unused: for cpath in CONTINGENT_PATHS: + if sysroot and f'{sysroot}-sysroot' in cpath: + continue cmd += ('--exclude=%s/%s' % (str(relative_to), cpath[:-1]), ) get_logger().debug('tar command line: %s', ' '.join(cmd)) result = subprocess.run(cmd, check=False) @@ -132,12 +136,14 @@ def _extract_tar_with_tar(binary, archive_path, output_dir, relative_to, skip_un _process_relative_to(output_dir, relative_to) -def _extract_tar_with_winrar(binary, archive_path, output_dir, relative_to, skip_unused): +def _extract_tar_with_winrar(binary, archive_path, output_dir, relative_to, skip_unused, sysroot): get_logger().debug('Using WinRAR extractor') output_dir.mkdir(exist_ok=True) cmd = (binary, 'x', '-o+', str(archive_path), str(output_dir)) if skip_unused: for cpath in CONTINGENT_PATHS: + if sysroot and f'{sysroot}-sysroot' in cpath: + continue cmd += ('-x%s%s%s' % (str(relative_to), os.sep, cpath[:-1].replace('/')), ) get_logger().debug('WinRAR command line: %s', ' '.join(cmd)) result = subprocess.run(cmd, check=False) @@ -148,7 +154,7 @@ def _extract_tar_with_winrar(binary, archive_path, output_dir, relative_to, skip _process_relative_to(output_dir, relative_to) -def _extract_tar_with_python(archive_path, output_dir, relative_to, skip_unused): +def _extract_tar_with_python(archive_path, output_dir, relative_to, skip_unused, sysroot): get_logger().debug('Using pure Python tar extractor') class NoAppendList(list): @@ -178,6 +184,7 @@ def _extract_tar_with_python(archive_path, output_dir, relative_to, skip_unused) if skip_unused and [ cpath for cpath in CONTINGENT_PATHS if tarinfo.name.startswith(str(relative_to) + '/' + cpath) + and not (sysroot and f'{sysroot}-sysroot' in cpath) ]: continue if relative_to is None: @@ -203,7 +210,7 @@ def _extract_tar_with_python(archive_path, output_dir, relative_to, skip_unused) raise -def extract_tar_file(archive_path, output_dir, relative_to, skip_unused, extractors=None): +def extract_tar_file(archive_path, output_dir, relative_to, skip_unused, sysroot, extractors=None): """ Extract regular or compressed tar archive into the output directory. @@ -226,7 +233,8 @@ def extract_tar_file(archive_path, output_dir, relative_to, skip_unused, extract sevenzip_cmd = str(_find_7z_by_registry()) sevenzip_bin = _find_extractor_by_cmd(sevenzip_cmd) if sevenzip_bin is not None: - _extract_tar_with_7z(sevenzip_bin, archive_path, output_dir, relative_to, skip_unused) + _extract_tar_with_7z(sevenzip_bin, archive_path, output_dir, relative_to, skip_unused, + sysroot) return # Use WinRAR if 7-zip is not found @@ -235,7 +243,8 @@ def extract_tar_file(archive_path, output_dir, relative_to, skip_unused, extract winrar_cmd = str(_find_winrar_by_registry()) winrar_bin = _find_extractor_by_cmd(winrar_cmd) if winrar_bin is not None: - _extract_tar_with_winrar(winrar_bin, archive_path, output_dir, relative_to, skip_unused) + _extract_tar_with_winrar(winrar_bin, archive_path, output_dir, relative_to, skip_unused, + sysroot) return get_logger().warning( 'Neither 7-zip nor WinRAR were found. Falling back to Python extractor...') @@ -243,21 +252,17 @@ def extract_tar_file(archive_path, output_dir, relative_to, skip_unused, extract # NOTE: 7-zip isn't an option because it doesn't preserve file permissions tar_bin = _find_extractor_by_cmd(extractors.get(ExtractorEnum.TAR)) if not tar_bin is None: - _extract_tar_with_tar(tar_bin, archive_path, output_dir, relative_to, skip_unused) + _extract_tar_with_tar(tar_bin, archive_path, output_dir, relative_to, skip_unused, + sysroot) return else: # This is not a normal code path, so make it clear. raise NotImplementedError(current_platform) # Fallback to Python-based extractor on all platforms - _extract_tar_with_python(archive_path, output_dir, relative_to, skip_unused) + _extract_tar_with_python(archive_path, output_dir, relative_to, skip_unused, sysroot) -def extract_with_7z( - archive_path, - output_dir, - relative_to, #pylint: disable=too-many-arguments - skip_unused, - extractors=None): +def extract_with_7z(archive_path, output_dir, relative_to, skip_unused, sysroot, extractors=None): """ Extract archives with 7-zip into the output directory. Only supports archives with one layer of unpacking, so compressed tar archives don't work. @@ -289,6 +294,8 @@ def extract_with_7z( cmd = (sevenzip_bin, 'x', str(archive_path), '-aoa', '-o{}'.format(str(output_dir))) if skip_unused: for cpath in CONTINGENT_PATHS: + if sysroot and f'{sysroot}-sysroot' in cpath: + continue cmd += ('-x!%s/%s' % (str(relative_to), cpath[:-1]), ) get_logger().debug('7z command line: %s', ' '.join(cmd)) @@ -300,12 +307,12 @@ def extract_with_7z( _process_relative_to(output_dir, relative_to) -def extract_with_winrar( - archive_path, - output_dir, - relative_to, #pylint: disable=too-many-arguments - skip_unused, - extractors=None): +def extract_with_winrar(archive_path, + output_dir, + relative_to, + skip_unused, + sysroot, + extractors=None): """ Extract archives with WinRAR into the output directory. Only supports archives with one layer of unpacking, so compressed tar archives don't work. @@ -335,6 +342,8 @@ def extract_with_winrar( cmd = (winrar_bin, 'x', '-o+', str(archive_path), str(output_dir)) if skip_unused: for cpath in CONTINGENT_PATHS: + if sysroot and f'{sysroot}-sysroot' in cpath: + continue cmd += ('-x%s%s%s' % (str(relative_to), os.sep, cpath[:-1].replace('/', os.sep)), ) get_logger().debug('WinRAR command line: %s', ' '.join(cmd)) diff --git a/domain_substitution/domain_substitution.list b/domain_substitution/domain_substitution.list index a7613ab7f2af528cac1a081c3d9d7045604378b0..2e579051b1f6dbaaf64388adea45dd4b119aac89 100644 --- a/domain_substitution/domain_substitution.list +++ b/domain_substitution/domain_substitution.list @@ -1,6 +1,7 @@ BUILD.gn PRESUBMIT.py PRESUBMIT_test.py +android_webview/browser/aw_asset_domain_list_include_handler.h android_webview/browser/aw_browser_context.cc android_webview/browser/aw_content_browser_client.h android_webview/browser/aw_field_trials.cc @@ -50,6 +51,7 @@ ash/assistant/ui/main_stage/suggestion_chip_view_unittest.cc ash/assistant/util/deep_link_util.cc ash/assistant/util/deep_link_util_unittest.cc ash/auth/views/auth_header_view_pixeltest.cc +ash/birch/birch_coral_provider.cc ash/birch/birch_item.cc ash/birch/birch_item_unittest.cc ash/birch/birch_model_unittest.cc @@ -142,9 +144,9 @@ ash/system/input_device_settings/device_image_downloader_unittest.cc ash/system/input_device_settings/input_device_settings_metrics_manager_unittest.cc ash/system/input_device_settings/input_device_settings_notification_controller.cc ash/system/input_device_settings/input_device_settings_notification_controller_unittest.cc -ash/system/mahi/mahi_constants.h ash/system/mahi/mahi_content_source_button_unittest.cc ash/system/mahi/mahi_panel_view_unittest.cc +ash/system/nearby_share/nearby_share_detailed_view_impl.cc ash/system/notification_center/message_center_test_util.cc ash/system/notification_center/notification_grouping_controller_unittest.cc ash/system/notification_center/views/ash_notification_view_unittest.cc @@ -174,12 +176,12 @@ ash/system/video_conference/fake_video_conference_tray_controller.cc ash/system/video_conference/video_conference_tray_unittest.cc ash/wallpaper/test_wallpaper_controller_client.cc ash/wallpaper/wallpaper_image_downloader.cc +ash/webui/boca_ui/boca_app_page_handler_unittest.cc ash/webui/boca_ui/provider/classroom_page_handler_impl.cc ash/webui/camera_app_ui/camera_app_untrusted_ui.cc ash/webui/camera_app_ui/resources/js/externs/types.d.ts ash/webui/camera_app_ui/resources/js/geometry.ts ash/webui/camera_app_ui/resources/js/i18n_string.ts -ash/webui/camera_app_ui/resources/js/lib/analytics.js ash/webui/camera_app_ui/resources/js/metrics.ts ash/webui/camera_app_ui/resources/js/untrusted_ga_helper.ts ash/webui/camera_app_ui/resources/js/views/camera_intent.ts @@ -188,6 +190,7 @@ ash/webui/camera_app_ui/resources/js/views/document_fix_mode.ts ash/webui/camera_app_ui/resources/js/views/settings/primary.ts ash/webui/camera_app_ui/resources/strings/camera_strings.grd ash/webui/camera_app_ui/resources/utils/cca/commands/check_color_tokens.py +ash/webui/camera_app_ui/resources/utils/cca/commands/upload.py ash/webui/common/resources/PRESUBMIT.py ash/webui/common/resources/cr_picture/png.js ash/webui/common/resources/keyboard_layouts.js @@ -204,6 +207,8 @@ ash/webui/diagnostics_ui/resources/touchpad_tester.ts ash/webui/eche_app_ui/eche_alert_generator.cc ash/webui/eche_app_ui/eche_tray_stream_status_observer_unittest.cc ash/webui/firmware_update_ui/resources/PRESUBMIT.py +ash/webui/graduation/resources/js/graduation_ui.ts +ash/webui/graduation/url_constants.cc ash/webui/help_app_ui/help_app_kids_magazine_untrusted_ui.cc ash/webui/help_app_ui/resources/js/help_app.d.ts ash/webui/media_app_ui/media_app_guest_ui.cc @@ -234,9 +239,11 @@ ash/webui/recorder_app_ui/resources/components/onboarding-dialog.ts ash/webui/recorder_app_ui/resources/core/externs.d.ts ash/webui/recorder_app_ui/resources/core/platform_handler.ts ash/webui/recorder_app_ui/resources/core/recording_session.ts +ash/webui/recorder_app_ui/resources/core/url_constants.ts ash/webui/recorder_app_ui/resources/pages/record-page.ts ash/webui/recorder_app_ui/resources/platforms/dev/handler.ts ash/webui/recorder_app_ui/resources/static/audio_worklet.js +ash/webui/recorder_app_ui/resources/static/style.css ash/webui/scanning/resources/PRESUBMIT.py ash/webui/scanning/resources/scanning_app.html ash/webui/scanning/resources/scanning_app.ts @@ -308,11 +315,6 @@ base/files/file_util_posix.cc base/files/file_util_unittest.cc base/files/file_util_win.cc base/files/file_win.cc -base/fuchsia/filtered_service_directory_unittest.cc -base/fuchsia/scoped_natural_service_binding_unittest.cc -base/fuchsia/scoped_natural_service_publisher_unittest.cc -base/fuchsia/scoped_service_binding_unittest.cc -base/fuchsia/scoped_service_publisher_unittest.cc base/functional/bind_internal.h base/functional/callback.h base/hash/hash.cc @@ -395,6 +397,7 @@ base/trace_event/trace_logging_minimal_win.h base/tracing/stdlib/chrome/page_loads.sql base/tracing/test/test_data.py base/values_unittest.cc +base/win/elevation_util.cc base/win/event_trace_consumer.h base/win/object_watcher.cc base/win/pe_image.h @@ -472,6 +475,7 @@ build/config/nacl/BUILD.gn build/config/nacl/rules.gni build/config/ozone.gni build/config/sanitizers/sanitizers.gni +build/config/unsafe_buffers_paths.txt build/config/win/BUILD.gn build/config/win/control_flow_guard.gni build/fuchsia/PRESUBMIT.py @@ -512,7 +516,6 @@ cc/PRESUBMIT.py cc/input/browser_controls_offset_manager.cc cc/input/scroll_state.h cc/input/scrollbar_controller.h -cc/layers/heads_up_display_layer_impl.cc cc/metrics/average_lag_tracker.h cc/metrics/ukm_smoothness_data.h cc/paint/paint_image.h @@ -560,10 +563,12 @@ chrome/app/settings_strings.grdp chrome/app/shared_settings_strings.grdp chrome/app/theme/PRESUBMIT.py chrome/app/welcome_strings.grdp +chrome/browser/PRESUBMIT.py chrome/browser/about_flags.cc chrome/browser/accessibility/live_caption/live_caption_speech_recognition_host_browsertest.cc -chrome/browser/ai/ai_rewriter_unittest.cc -chrome/browser/ai/ai_writer_unittest.cc +chrome/browser/ai/ai_test_utils.cc +chrome/browser/ai/ai_text_session.cc +chrome/browser/ai/ai_text_session_unittest.cc chrome/browser/android/compositor/scene_layer/contextual_search_scene_layer.cc chrome/browser/android/cookies/cookies_fetcher_restore_util_browsertest.cc chrome/browser/android/customtabs/custom_tabs_browsertest.cc @@ -698,15 +703,13 @@ chrome/browser/ash/calendar/calendar_client_impl_unittest.cc chrome/browser/ash/calendar/calendar_keyed_service.cc chrome/browser/ash/calendar/calendar_keyed_service_unittest.cc chrome/browser/ash/cert_provisioning/cert_provisioning_test_helpers.cc +chrome/browser/ash/certs/system_token_cert_db_initializer.h chrome/browser/ash/child_accounts/child_user_service.cc chrome/browser/ash/child_accounts/family_user_device_metrics_browsertest.cc chrome/browser/ash/child_accounts/parent_access_code/parent_access_service_browsertest.cc chrome/browser/ash/child_accounts/time_limits/app_time_limit_utils_unittest.cc chrome/browser/ash/child_accounts/website_approval_notifier_unittest.cc -chrome/browser/ash/crosapi/browser_data_back_migrator_browsertest.cc -chrome/browser/ash/crosapi/browser_data_back_migrator_unittest.cc chrome/browser/ash/crosapi/browser_data_migrator_browsertest.cc -chrome/browser/ash/crosapi/browser_data_migrator_unittest.cc chrome/browser/ash/crosapi/browser_manager_unittest.cc chrome/browser/ash/crosapi/browser_util_unittest.cc chrome/browser/ash/crosapi/local_printer_ash_unittest.cc @@ -744,7 +747,6 @@ chrome/browser/ash/growth/campaigns_manager_interactive_uitest.cc chrome/browser/ash/growth/install_web_app_action_unittest.cc chrome/browser/ash/growth/open_url_action_performer_unittest.cc chrome/browser/ash/hats/hats_dialog.cc -chrome/browser/ash/http_auth_dialog.h chrome/browser/ash/input_device_settings/peripherals_app_delegate_impl.cc chrome/browser/ash/input_method/assistive_input_denylist.cc chrome/browser/ash/input_method/assistive_input_denylist_unittest.cc @@ -752,9 +754,9 @@ chrome/browser/ash/input_method/assistive_suggester_client_filter.cc chrome/browser/ash/input_method/assistive_suggester_client_filter_unittest.cc chrome/browser/ash/input_method/editor_feedback_unittest.cc chrome/browser/ash/input_method/editor_switch_unittest.cc -chrome/browser/ash/input_method/ui/candidate_window_view.cc chrome/browser/ash/integration_tests/featured_integration_test.cc chrome/browser/ash/kerberos/kerberos_credentials_manager_unittest.cc +chrome/browser/ash/lobster/lobster_feedback_unittest.cc chrome/browser/ash/login/app_mode/kiosk_launch_controller_unittest.cc chrome/browser/ash/login/app_mode/test/kiosk_enterprise_browsertest.cc chrome/browser/ash/login/ash_hud_login_browsertest.cc @@ -797,7 +799,6 @@ chrome/browser/ash/login/test/logged_in_user_mixin.cc chrome/browser/ash/login/test/logged_in_user_mixin.h chrome/browser/ash/login/test/login_manager_mixin.cc chrome/browser/ash/login/test/login_manager_mixin.h -chrome/browser/ash/login/ui/captive_portal_view.cc chrome/browser/ash/login/users/default_user_image/default_user_images.cc chrome/browser/ash/login/users/multi_user_sign_in_policy_controller_unittest.cc chrome/browser/ash/login/wizard_controller_browsertest.cc @@ -845,6 +846,7 @@ chrome/browser/ash/policy/remote_commands/crd/crd_oauth_token_fetcher.cc chrome/browser/ash/policy/remote_commands/device_command_fetch_support_packet_job_browsertest.cc chrome/browser/ash/policy/reporting/metrics_reporting/network/https_latency_events_unittest.cc chrome/browser/ash/policy/skyvault/drive_skyvault_uploader_browsertest.cc +chrome/browser/ash/policy/skyvault/migration_coordinator_browsertest.cc chrome/browser/ash/policy/status_collector/child_status_collector_browsertest.cc chrome/browser/ash/policy/status_collector/device_status_collector_browsertest.cc chrome/browser/ash/policy/status_collector/status_collector.h @@ -866,17 +868,14 @@ chrome/browser/ash/settings/cros_settings_unittest.cc chrome/browser/ash/settings/device_settings_provider_unittest.cc chrome/browser/ash/smb_client/smb_service_helper.h chrome/browser/ash/sync/synced_session_client_ash_unittest.cc -chrome/browser/ash/system_token_cert_db_initializer.h chrome/browser/ash/system_web_apps/apps/camera_app/camera_app_integration_browsertest.cc chrome/browser/ash/system_web_apps/apps/files_internals_ui_delegate.cc chrome/browser/ash/system_web_apps/apps/help_app/help_app_notification_controller_unittest.cc chrome/browser/ash/system_web_apps/apps/personalization_app/personalization_app_sea_pen_provider_impl_unittest.cc chrome/browser/ash/system_web_apps/apps/personalization_app/personalization_app_utils_unittest.cc -chrome/browser/ash/tpm_firmware_update.h +chrome/browser/ash/tpm/tpm_firmware_update.h chrome/browser/ash/trusted_vault/trusted_vault_backend_ash_unittest.cc chrome/browser/ash/u2f/u2f_notification.cc -chrome/browser/ash/url_handler/os_url_handler_browsertest.cc -chrome/browser/ash/url_handler/url_handler_browsertest.cc chrome/browser/ash/wallpaper_handlers/sea_pen_fetcher.cc chrome/browser/ash/wallpaper_handlers/wallpaper_handlers.cc chrome/browser/ash/wallpaper_handlers/wallpaper_handlers_unittest.cc @@ -965,6 +964,7 @@ chrome/browser/companion/core/utils_unittest.cc chrome/browser/companion/visual_query/visual_query_suggestions_service.cc chrome/browser/complex_tasks/task_tab_helper_unittest.cc chrome/browser/component_updater/recovery_component_installer.cc +chrome/browser/component_updater/translate_kit_component_installer.cc chrome/browser/compose/chrome_compose_client_unittest.cc chrome/browser/compose/compose_enabling_unittest.cc chrome/browser/compose/compose_session.cc @@ -976,6 +976,7 @@ chrome/browser/content_settings/host_content_settings_map_unittest.cc chrome/browser/content_settings/sound_content_setting_observer_unittest.cc chrome/browser/custom_handlers/protocol_handler_registry_browsertest.cc chrome/browser/data_sharing/desktop/data_sharing_conversion_utils_unittest.cc +chrome/browser/data_sharing/desktop/data_sharing_service_browsertest.cc chrome/browser/device_identity/device_oauth2_token_service_unittest.cc chrome/browser/device_notifications/device_connection_tracker_unittest.cc chrome/browser/devtools/aida_client.cc @@ -1108,13 +1109,13 @@ chrome/browser/extensions/api/web_request/web_request_permissions_unittest.cc chrome/browser/extensions/api/webrtc_audio_private/webrtc_audio_private_browsertest.cc chrome/browser/extensions/api/webstore_private/extension_install_status_unittest.cc chrome/browser/extensions/background_xhr_browsertest.cc -chrome/browser/extensions/chrome_extension_browser_constants.cc chrome/browser/extensions/chrome_extension_function_details.cc chrome/browser/extensions/component_extensions_allowlist/allowlist.h chrome/browser/extensions/content_script_apitest.cc chrome/browser/extensions/convert_user_script_unittest.cc chrome/browser/extensions/crx_installer_browsertest.cc chrome/browser/extensions/cws_info_service.cc +chrome/browser/extensions/desktop_android/desktop_android_extensions_browsertest.cc chrome/browser/extensions/extension_action_runner_unittest.cc chrome/browser/extensions/extension_browser_window_helper.cc chrome/browser/extensions/extension_browsertest.cc @@ -1152,6 +1153,7 @@ chrome/browser/extensions/permissions/permissions_updater.cc chrome/browser/extensions/permissions/permissions_updater_unittest.cc chrome/browser/extensions/permissions/scripting_permissions_modifier.h chrome/browser/extensions/permissions/scripting_permissions_modifier_unittest.cc +chrome/browser/extensions/permissions_url_constants.cc chrome/browser/extensions/policy_handlers_unittest.cc chrome/browser/extensions/process_management_browsertest.cc chrome/browser/extensions/script_injection_tracker_browsertest.cc @@ -1161,6 +1163,7 @@ chrome/browser/extensions/updater/extension_updater_unittest.cc chrome/browser/extensions/user_script_listener_unittest.cc chrome/browser/extensions/webstore_domain_browsertest.cc chrome/browser/extensions/webstore_installer_browsertest.cc +chrome/browser/extensions/webstore_reinstaller_browsertest.cc chrome/browser/external_protocol/external_protocol_handler.cc chrome/browser/external_protocol/external_protocol_handler_browsertest.cc chrome/browser/fast_checkout/fast_checkout_capabilities_fetcher_impl.cc @@ -1220,6 +1223,7 @@ chrome/browser/long_screenshots/long_screenshots_tab_service_unittest.cc chrome/browser/lookalikes/lookalike_url_navigation_throttle.cc chrome/browser/lookalikes/lookalike_url_navigation_throttle_browsertest.cc chrome/browser/lookalikes/safety_tip_message_delegate_android_unittest.cc +chrome/browser/mac/code_sign_clone_manager_unittest.mm chrome/browser/media/media_engagement_contents_observer_unittest.cc chrome/browser/media/media_engagement_preloaded_list_unittest.cc chrome/browser/media/media_engagement_score_unittest.cc @@ -1292,16 +1296,12 @@ chrome/browser/net/stub_resolver_config_reader_browsertest.cc chrome/browser/net/system_network_context_manager_browsertest.cc chrome/browser/new_tab_page/modules/file_suggestion/drive_service.cc chrome/browser/new_tab_page/modules/file_suggestion/drive_service_unittest.cc -chrome/browser/new_tab_page/modules/history_clusters/history_clusters_module_util.cc -chrome/browser/new_tab_page/modules/history_clusters/ranking/history_clusters_module_ranking_model_handler.cc -chrome/browser/new_tab_page/modules/history_clusters/ranking/history_clusters_module_ranking_model_handler_unittest.cc chrome/browser/new_tab_page/modules/new_tab_page_modules_interactive_uitest.cc chrome/browser/new_tab_page/modules/new_tab_page_modules_unittest.cc chrome/browser/new_tab_page/modules/v2/calendar/google_calendar_page_handler.cc chrome/browser/new_tab_page/modules/v2/calendar/google_calendar_page_handler_unittest.cc chrome/browser/new_tab_page/modules/v2/most_relevant_tab_resumption/most_relevant_tab_resumption_page_handler.cc chrome/browser/new_tab_page/modules/v2/most_relevant_tab_resumption/most_relevant_tab_resumption_page_handler_unittest.cc -chrome/browser/new_tab_page/modules/v2/tab_resumption/tab_resumption_util.h chrome/browser/new_tab_page/one_google_bar/one_google_bar_loader_impl.cc chrome/browser/new_tab_page/promos/promo_service_unittest.cc chrome/browser/no_best_effort_tasks_browsertest.cc @@ -1437,6 +1437,7 @@ chrome/browser/private_network_access/private_network_device_chooser_controller_ chrome/browser/process_singleton_posix.cc chrome/browser/process_singleton_posix_unittest.cc chrome/browser/process_singleton_win.cc +chrome/browser/profile_resetter/profile_resetter.cc chrome/browser/profile_resetter/profile_resetter_unittest.cc chrome/browser/profile_resetter/reset_report_uploader.cc chrome/browser/profiles/gaia_info_update_service_unittest.cc @@ -1556,7 +1557,10 @@ chrome/browser/resources/chromeos/login/screens/login/encryption_migration.ts chrome/browser/resources/chromeos/login/screens/login/offline_login.html chrome/browser/resources/chromeos/login/screens/login/offline_login.ts chrome/browser/resources/chromeos/multidevice_internals/browser_tabs_metadata_form.js +chrome/browser/resources/chromeos/nearby_share/shared/nearby_shared_icons.html +chrome/browser/resources/chromeos/nearby_share/shared/nearby_shared_share_type_icons.html chrome/browser/resources/chromeos/parent_access/parent_access_ui.ts +chrome/browser/resources/data_sharing/dummy_data_sharing_sdk.ts chrome/browser/resources/default_apps/external_extensions.json chrome/browser/resources/downloads/icons.html chrome/browser/resources/extensions/detail_view.ts @@ -1572,14 +1576,10 @@ chrome/browser/resources/hangout_services/manifest_v2.json chrome/browser/resources/hangout_services/manifest_v3.json chrome/browser/resources/hats/hats.ts chrome/browser/resources/inspect/inspect.html -chrome/browser/resources/internals/query_tiles/query_tiles_internals.html -chrome/browser/resources/internals/query_tiles/query_tiles_internals.ts chrome/browser/resources/key_value_pair_viewer_shared/key_value_pair_entry.ts chrome/browser/resources/media/mei_preload/manifest.json chrome/browser/resources/media/webrtc_logs.ts chrome/browser/resources/media_router/cast_feedback/cast_feedback_ui.ts -chrome/browser/resources/nearby_share/shared/nearby_shared_icons.html -chrome/browser/resources/nearby_share/shared/nearby_shared_share_type_icons.html chrome/browser/resources/net_internals/domain_security_policy_view.js chrome/browser/resources/net_internals/index.html chrome/browser/resources/network_speech_synthesis/manifest.json @@ -1602,7 +1602,7 @@ chrome/browser/resources/pdf/ink/drawing_canvas.d.ts chrome/browser/resources/print_preview/data/destination_store.ts chrome/browser/resources/print_preview/ui/icons.html chrome/browser/resources/privacy_sandbox/internals/private_state_tokens/list_container.html.ts -chrome/browser/resources/privacy_sandbox/internals/related_website_sets/related_website_sets_list_container.html.ts +chrome/browser/resources/privacy_sandbox/internals/related_website_sets/list_container.html.ts chrome/browser/resources/reading_mode_gdocs_helper/manifest.json chrome/browser/resources/segmentation_internals/segmentation_survey.ts chrome/browser/resources/settings/a11y_page/a11y_page.ts @@ -1617,7 +1617,7 @@ chrome/browser/resources/settings/languages_page/edit_dictionary_page.ts chrome/browser/resources/settings/settings_shared.css chrome/browser/resources/side_panel/read_anything/read_anything_toolbar.ts chrome/browser/resources/side_panel/read_anything/voice_language_util.ts -chrome/browser/resources/tab_search/declutter/declutter_page.ts +chrome/browser/resources/suggest_internals/request.ts chrome/browser/resources/usb_internals/descriptor_panel.ts chrome/browser/resources/webstore_app/manifest.json chrome/browser/resources/webui_gallery/demos/card/card_demo.ts @@ -1689,7 +1689,8 @@ chrome/browser/signin/bound_session_credentials/bound_session_cookie_refresh_ser chrome/browser/signin/bound_session_credentials/bound_session_cookie_refresh_service_impl_unittest.cc chrome/browser/signin/bound_session_credentials/bound_session_params_storage_unittest.cc chrome/browser/signin/bound_session_credentials/bound_session_params_util_unittest.cc -chrome/browser/signin/bound_session_credentials/bound_session_refresh_cookie_fetcher_impl.cc +chrome/browser/signin/bound_session_credentials/bound_session_refresh_cookie_debug_report_fetcher_unittest.cc +chrome/browser/signin/bound_session_credentials/bound_session_refresh_cookie_fetcher.cc chrome/browser/signin/bound_session_credentials/bound_session_refresh_cookie_fetcher_impl_unittest.cc chrome/browser/signin/bound_session_credentials/bound_session_registration_fetcher_impl.cc chrome/browser/signin/bound_session_credentials/bound_session_registration_fetcher_impl_unittest.cc @@ -1734,6 +1735,7 @@ chrome/browser/startup_data.h chrome/browser/storage/durable_storage_permission_context_unittest.cc chrome/browser/storage/shared_storage_browsertest.cc chrome/browser/storage_access_api/api_browsertest.cc +chrome/browser/storage_access_api/storage_access_header_service_browsertest.cc chrome/browser/subresource_filter/subresource_filter_browsertest.cc chrome/browser/subresource_filter/subresource_filter_fenced_frame_browsertest.cc chrome/browser/supervised_user/android/java/res/drawable/ic_family_link.xml @@ -1772,6 +1774,7 @@ chrome/browser/sync/test/integration/two_client_custom_passphrase_sync_test.cc chrome/browser/sync/test/integration/two_client_history_sync_test.cc chrome/browser/sync/test/integration/two_client_power_bookmarks_sync_test.cc chrome/browser/sync/test/integration/two_client_preferences_sync_test.cc +chrome/browser/sync/test/integration/two_client_shared_tab_group_data_sync_test.cc chrome/browser/sync/test/integration/two_client_user_events_sync_test.cc chrome/browser/sync/test/integration/two_client_web_apps_bmo_sync_test.cc chrome/browser/sync/test/integration/two_client_web_apps_sync_test.cc @@ -1785,48 +1788,55 @@ chrome/browser/tpcd/heuristics/opener_heuristic_browsertest.cc chrome/browser/tpcd/heuristics/opener_heuristic_utils.cc chrome/browser/tpcd/heuristics/opener_heuristic_utils_unittest.cc chrome/browser/translate/translate_manager_browsertest.cc -chrome/browser/translate/translate_manager_render_view_host_android_unittest.cc chrome/browser/translate/translate_manager_render_view_host_unittest.cc chrome/browser/trusted_vault/trusted_vault_encryption_keys_tab_helper_browsertest.cc chrome/browser/ui/android/plus_addresses/all_plus_addresses_bottom_sheet_view_browsertest.cc chrome/browser/ui/android/strings/android_chrome_strings.grd chrome/browser/ui/ash/app_list/app_list_interactive_uitest.cc -chrome/browser/ui/ash/arc_open_url_delegate_impl_browsertest.cc -chrome/browser/ui/ash/ash_web_view_impl_browsertest.cc +chrome/browser/ui/ash/arc/arc_open_url_delegate_impl_browsertest.cc chrome/browser/ui/ash/assistant/assistant_state_client_unittest.cc chrome/browser/ui/ash/assistant/assistant_test_mixin.cc chrome/browser/ui/ash/birch/birch_browsertest.cc chrome/browser/ui/ash/birch/birch_calendar_fetcher.cc chrome/browser/ui/ash/birch/birch_calendar_fetcher_unittest.cc +chrome/browser/ui/ash/birch/birch_coral_provider_browsertest.cc chrome/browser/ui/ash/birch/birch_keyed_service_unittest.cc chrome/browser/ui/ash/birch/birch_lost_media_provider.cc chrome/browser/ui/ash/birch/refresh_token_waiter_unittest.cc chrome/browser/ui/ash/capture_mode/sunfish_browsertest.cc -chrome/browser/ui/ash/chrome_shell_delegate.cc chrome/browser/ui/ash/desks/desks_client_browsertest.cc +chrome/browser/ui/ash/focus_mode/certificate_manager.cc +chrome/browser/ui/ash/focus_mode/certificate_manager_unittest.cc +chrome/browser/ui/ash/focus_mode/signature_builder.h chrome/browser/ui/ash/glanceables/glanceables_browsertest.cc chrome/browser/ui/ash/glanceables/glanceables_classroom_client_impl.cc chrome/browser/ui/ash/glanceables/glanceables_classroom_client_impl_unittest.cc chrome/browser/ui/ash/glanceables/glanceables_keyed_service.cc -chrome/browser/ui/ash/google_one_offer_iph_tab_helper.cc -chrome/browser/ui/ash/google_one_offer_iph_tab_helper_browsertest.cc -chrome/browser/ui/ash/google_one_offer_iph_tab_helper_constants.h +chrome/browser/ui/ash/google_one/google_one_offer_iph_tab_helper.cc +chrome/browser/ui/ash/google_one/google_one_offer_iph_tab_helper_browsertest.cc +chrome/browser/ui/ash/google_one/google_one_offer_iph_tab_helper_constants.h chrome/browser/ui/ash/holding_space/holding_space_keyed_service_unittest.cc -chrome/browser/ui/ash/in_session_auth_dialog_client.cc +chrome/browser/ui/ash/in_session_auth/in_session_auth_dialog_client.cc +chrome/browser/ui/ash/input_method/candidate_window_view.cc +chrome/browser/ui/ash/login/captive_portal_view.cc chrome/browser/ui/ash/network/network_portal_signin_controller_browsertest.cc chrome/browser/ui/ash/network/network_portal_signin_controller_unittest.cc +chrome/browser/ui/ash/picker/picker_client_impl_unittest.cc +chrome/browser/ui/ash/picker/picker_link_suggester.cc chrome/browser/ui/ash/projector/pending_screencast_manager.cc chrome/browser/ui/ash/projector/pending_screencast_manager_browsertest.cc chrome/browser/ui/ash/projector/projector_navigation_throttle_browsertest.cc -chrome/browser/ui/ash/session_controller_client_impl_unittest.cc +chrome/browser/ui/ash/session/session_controller_client_impl_unittest.cc chrome/browser/ui/ash/shelf/app_shortcut_shelf_item_controller.cc chrome/browser/ui/ash/shelf/browser_app_shelf_item_controller.cc chrome/browser/ui/ash/shelf/browser_shortcut_shelf_item_controller.cc chrome/browser/ui/ash/shelf/chrome_shelf_controller_unittest.cc chrome/browser/ui/ash/shelf/chrome_shelf_prefs_unittest.cc -chrome/browser/ui/ash/system_tray_client_impl.cc -chrome/browser/ui/ash/system_tray_client_impl_browsertest.cc -chrome/browser/ui/ash/wallpaper_controller_client_impl.cc +chrome/browser/ui/ash/shell_delegate/chrome_shell_delegate.cc +chrome/browser/ui/ash/system/system_tray_client_impl.cc +chrome/browser/ui/ash/system/system_tray_client_impl_browsertest.cc +chrome/browser/ui/ash/wallpaper/wallpaper_controller_client_impl.cc +chrome/browser/ui/ash/web_view/ash_web_view_impl_browsertest.cc chrome/browser/ui/autofill/address_editor_controller_unittest.cc chrome/browser/ui/autofill/autofill_bubble_signin_promo_controller_unittest.cc chrome/browser/ui/autofill/autofill_signin_promo_tab_helper_browsertest.cc @@ -1860,6 +1870,7 @@ chrome/browser/ui/cocoa/history_menu_cocoa_controller_unittest.mm chrome/browser/ui/cocoa/share_menu_controller.mm chrome/browser/ui/cocoa/share_menu_controller_browsertest.mm chrome/browser/ui/commerce/price_tracking_page_action_controller.cc +chrome/browser/ui/commerce/product_specifications_entry_point_controller.cc chrome/browser/ui/content_settings/content_setting_bubble_model_unittest.cc chrome/browser/ui/content_settings/content_setting_image_model_unittest.cc chrome/browser/ui/crypto_module_password_dialog_nss.cc @@ -1873,12 +1884,14 @@ chrome/browser/ui/global_media_controls/presentation_request_notification_produc chrome/browser/ui/hid/hid_chooser_controller_unittest.cc chrome/browser/ui/intent_picker_tab_helper_unittest.cc chrome/browser/ui/lens/lens_overlay_controller_browsertest.cc +chrome/browser/ui/lens/lens_overlay_gen204_controller.cc chrome/browser/ui/lens/lens_overlay_query_controller.cc chrome/browser/ui/lens/lens_overlay_query_controller_unittest.cc chrome/browser/ui/lens/lens_overlay_side_panel_coordinator.cc chrome/browser/ui/lens/lens_overlay_side_panel_navigation_throttle_unittest.cc +chrome/browser/ui/lens/lens_overlay_untrusted_ui.cc chrome/browser/ui/lens/lens_overlay_url_builder_unittest.cc -chrome/browser/ui/lens/lens_untrusted_ui.cc +chrome/browser/ui/lens/lens_side_panel_untrusted_ui.cc chrome/browser/ui/login/http_auth_coordinator.h chrome/browser/ui/managed_ui.cc chrome/browser/ui/managed_ui_browsertest.cc @@ -1897,7 +1910,6 @@ chrome/browser/ui/passwords/password_manager_navigation_throttle_unittest.cc chrome/browser/ui/passwords/well_known_change_password_navigation_throttle.cc chrome/browser/ui/passwords/well_known_change_password_navigation_throttle_browsertest.cc chrome/browser/ui/passwords/well_known_change_password_navigation_throttle_unittest.cc -chrome/browser/ui/pdf/adobe_reader_info_win.cc chrome/browser/ui/profiles/profile_picker_unittest.cc chrome/browser/ui/quick_answers/quick_answers_state_ash_unittest.cc chrome/browser/ui/quick_answers/ui/quick_answers_util.cc @@ -1950,6 +1962,7 @@ chrome/browser/ui/views/bookmarks/bookmark_bubble_view_browsertest.cc chrome/browser/ui/views/bookmarks/bookmark_bubble_view_unittest.cc chrome/browser/ui/views/bookmarks/bookmark_context_menu_unittest.cc chrome/browser/ui/views/bookmarks/bookmark_menu_delegate_unittest.cc +chrome/browser/ui/views/bookmarks/move_bookmark_to_account_dialog_browsertest.cc chrome/browser/ui/views/borealis/borealis_disallowed_dialog.cc chrome/browser/ui/views/commerce/price_tracking_bubble_dialog_view_unittest.cc chrome/browser/ui/views/commerce/price_tracking_email_dialog_view.cc @@ -1999,7 +2012,7 @@ chrome/browser/ui/views/profiles/profile_picker_view_browsertest.cc chrome/browser/ui/views/profiles/profiles_pixel_test_utils.cc chrome/browser/ui/views/profiles/sync_confirmation_ui_browsertest.cc chrome/browser/ui/views/qrcode_generator/qrcode_generator_bubble_unittest.cc -chrome/browser/ui/views/select_file_dialog_extension_browsertest.cc +chrome/browser/ui/views/select_file_dialog_extension/select_file_dialog_extension_browsertest.cc chrome/browser/ui/views/session_crashed_bubble_view.cc chrome/browser/ui/views/sharing/click_to_call_browsertest.cc chrome/browser/ui/views/sharing/sharing_dialog_view_unittest.cc @@ -2041,7 +2054,6 @@ chrome/browser/ui/webui/ash/cloud_upload/cloud_upload_dialog.cc chrome/browser/ui/webui/ash/cloud_upload/cloud_upload_dialog_browsertest.cc chrome/browser/ui/webui/ash/cloud_upload/drive_upload_handler.cc chrome/browser/ui/webui/ash/cloud_upload/drive_upload_handler_browsertest.cc -chrome/browser/ui/webui/ash/edu_account_login_handler_unittest.cc chrome/browser/ui/webui/ash/edu_coexistence/edu_coexistence_login_handler.cc chrome/browser/ui/webui/ash/emoji/gif_tenor_api_fetcher.cc chrome/browser/ui/webui/ash/login/consolidated_consent_screen_handler.h @@ -2070,7 +2082,6 @@ chrome/browser/ui/webui/extensions/extensions_internals_unittest.cc chrome/browser/ui/webui/favicon_source_unittest.cc chrome/browser/ui/webui/hats/hats_ui.cc chrome/browser/ui/webui/history/browsing_history_handler_unittest.cc -chrome/browser/ui/webui/history_clusters/history_clusters_handler_unittest.cc chrome/browser/ui/webui/interstitials/interstitial_ui.cc chrome/browser/ui/webui/log_web_ui_url_unittest.cc chrome/browser/ui/webui/management/management_ui_handler_unittest.cc @@ -2087,6 +2098,7 @@ chrome/browser/ui/webui/password_manager/promo_cards/access_on_any_device_promo. chrome/browser/ui/webui/password_manager/sync_handler_unittest.cc chrome/browser/ui/webui/policy/policy_ui_browsertest.cc chrome/browser/ui/webui/print_preview/pdf_printer_handler_unittest.cc +chrome/browser/ui/webui/privacy_sandbox/privacy_sandbox_dialog_untrusted_ui.cc chrome/browser/ui/webui/privacy_sandbox/privacy_sandbox_internals_handler_browsertest.cc chrome/browser/ui/webui/privacy_sandbox/private_state_tokens/private_state_tokens_handler.cc chrome/browser/ui/webui/profile_info_watcher.h @@ -2096,7 +2108,6 @@ chrome/browser/ui/webui/settings/about_handler_unittest.cc chrome/browser/ui/webui/settings/on_startup_handler_unittest.cc chrome/browser/ui/webui/settings/people_handler_unittest.cc chrome/browser/ui/webui/settings/profile_info_handler_unittest.cc -chrome/browser/ui/webui/settings/reset_settings_handler.cc chrome/browser/ui/webui/settings/safety_check_handler_unittest.cc chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc chrome/browser/ui/webui/settings/settings_manage_profile_handler_unittest.cc @@ -2112,6 +2123,7 @@ chrome/browser/ui/webui/side_panel/customize_chrome/wallpaper_search/wallpaper_s chrome/browser/ui/webui/side_panel/customize_chrome/wallpaper_search/wallpaper_search_interactive_uitest.cc chrome/browser/ui/webui/side_panel/read_anything/read_anything_untrusted_ui.cc chrome/browser/ui/webui/side_panel/reading_list/reading_list_page_handler_unittest.cc +chrome/browser/ui/webui/signin/ash/edu_account_login_handler_unittest.cc chrome/browser/ui/webui/signin/ash/inline_login_handler_impl_browsertest.cc chrome/browser/ui/webui/signin/ash/signin_helper_browsertest.cc chrome/browser/ui/webui/signin/ash/user_cloud_signin_restriction_policy_fetcher.cc @@ -2179,7 +2191,7 @@ chrome/browser/web_applications/web_app_install_utils_unittest.cc chrome/browser/web_applications/web_app_provider.cc chrome/browser/web_applications/web_contents/web_app_icon_downloader_unittest.cc chrome/browser/webapps/installable/installable_manager_browsertest.cc -chrome/browser/webauthn/authenticator_request_dialog_model.cc +chrome/browser/webauthn/authenticator_request_dialog_controller.cc chrome/browser/webauthn/cablev2_devices.h chrome/browser/webauthn/chrome_authenticator_request_delegate.cc chrome/browser/webauthn/chrome_authenticator_request_delegate_unittest.cc @@ -2393,6 +2405,7 @@ chrome/services/sharing/nearby/platform/wifi_direct_socket.cc chrome/services/sharing/nearby/quick_start_decoder/quick_start_decoder_unittest.cc chrome/services/util_win/av_products.cc chrome/test/base/android/android_browser_test.h +chrome/test/base/ash/interactive/interactive_ash_test.cc chrome/test/base/ash/js2gtest.js chrome/test/base/chromeos/crosier/chromeos_integration_login_mixin.cc chrome/test/base/chromeos/crosier/chromeos_integration_login_mixin.h @@ -2401,6 +2414,7 @@ chrome/test/base/chromeos/crosier/helper/reset_dut.py chrome/test/base/fake_gaia_mixin.cc chrome/test/base/fake_gaia_mixin.h chrome/test/base/in_process_browser_test_browsertest.cc +chrome/test/base/platform_browser_test.h chrome/test/chromedriver/capabilities_unittest.cc chrome/test/chromedriver/chrome/chrome_desktop_impl.cc chrome/test/chromedriver/chrome/chrome_finder.cc @@ -2415,7 +2429,6 @@ chrome/test/chromedriver/net/pipe_builder.cc chrome/test/chromedriver/net/websocket.cc chrome/test/chromedriver/server/chromedriver_server.cc chrome/test/chromedriver/session_commands.cc -chrome/test/chromedriver/test/run_java_tests.py chrome/test/chromedriver/test/run_py_tests.py chrome/test/chromedriver/window_commands.cc chrome/test/chromedriver/window_commands_unittest.cc @@ -2538,8 +2551,10 @@ chromeos/BUILD.gn chromeos/ash/components/attestation/attestation_flow_adaptive_unittest.cc chromeos/ash/components/attestation/attestation_flow_integrated_unittest.cc chromeos/ash/components/boca/babelorca/tachyon_constants.h +chromeos/ash/components/boca/boca_session_manager_unittest.cc chromeos/ash/components/boca/session_api/constants.h chromeos/ash/components/boca/session_api/create_session_request_unittest.cc +chromeos/ash/components/boca/session_api/get_session_request_unittest.cc chromeos/ash/components/carrier_lock/fcm_topic_subscriber_unittest.cc chromeos/ash/components/carrier_lock/provisioning_config_fetcher_impl.cc chromeos/ash/components/carrier_lock/provisioning_config_fetcher_unittest.cc @@ -2564,9 +2579,10 @@ chromeos/ash/components/file_manager/indexing/file_index_service_registry_unitte chromeos/ash/components/fwupd/firmware_update_manager.cc chromeos/ash/components/fwupd/firmware_update_manager_unittest.cc chromeos/ash/components/geolocation/simple_geolocation_provider.h -chromeos/ash/components/growth/campaigns_constants.cc chromeos/ash/components/growth/campaigns_manager_unittest.cc chromeos/ash/components/growth/campaigns_model.h +chromeos/ash/components/growth/campaigns_utils.cc +chromeos/ash/components/http_auth_dialog/http_auth_dialog.h chromeos/ash/components/local_search_service/content_extraction_utils_unittest.cc chromeos/ash/components/login/auth/recovery/service_constants.cc chromeos/ash/components/multidevice/remote_device_test_util.cc @@ -2687,12 +2703,12 @@ components/autofill/core/browser/metrics/autofill_metrics_test_base.cc components/autofill/core/browser/metrics/autofill_metrics_unittest.cc components/autofill/core/browser/metrics/profile_deduplication_metrics_unittest.cc components/autofill/core/browser/metrics/quality_metrics_unittest.cc -components/autofill/core/browser/metrics/shadow_prediction_metrics_unittest.cc components/autofill/core/browser/ml_model/autofill_ml_prediction_model_handler.cc components/autofill/core/browser/ml_model/autofill_ml_prediction_model_handler_unittest.cc components/autofill/core/browser/payments/autofill_offer_manager_unittest.cc components/autofill/core/browser/payments/constants.h -components/autofill/core/browser/payments/credit_card_access_manager_unittest.cc +components/autofill/core/browser/payments/credit_card_access_manager_test_base.cc +components/autofill/core/browser/payments/credit_card_access_manager_test_base.h components/autofill/core/browser/payments/credit_card_fido_authenticator.cc components/autofill/core/browser/payments/credit_card_fido_authenticator_unittest.cc components/autofill/core/browser/payments/credit_card_otp_authenticator_unittest.cc @@ -2734,6 +2750,7 @@ components/breadcrumbs/core/breadcrumb_manager_tab_helper.cc components/breadcrumbs/core/breadcrumb_manager_tab_helper.h components/browser_sync/PRESUBMIT.py components/browser_sync/sync_client_utils_unittest.cc +components/browser_sync/sync_internals_message_handler_unittest.cc components/browser_ui/strings/android/browser_ui_strings.grd components/browser_ui/strings/android/site_settings.grdp components/browsing_data/content/browsing_data_helper_unittest.cc @@ -2785,6 +2802,7 @@ components/contextual_search/core/browser/contextual_search_delegate_impl_unitte components/continuous_search/browser/search_result_extractor_client_unittest.cc components/country_codes/country_codes.cc components/crash/core/app/crash_export_thunks.h +components/crash/core/app/crash_reporter_client.cc components/crash/core/browser/resources/crashes.ts components/crash/core/common/crash_key.h components/cronet/PRESUBMIT.py @@ -2792,6 +2810,7 @@ components/cronet/android/test/javaperftests/AndroidManifest.xml components/cronet/android/test/javatests/AndroidManifest.xml components/cronet/gn2bp/gen_android_bp.py components/cronet/gn2bp/gn_utils.py +components/cronet/license/license_utils.py components/cronet/native/cronet.idl components/cronet/native/perftest/perf_test.cc components/cronet/tools/cr_cronet.py @@ -2799,6 +2818,7 @@ components/cronet/tools/utils.py components/custom_handlers/protocol_handler_registry_unittest.cc components/data_sharing/internal/data_sharing_service_impl_unittest.cc components/data_sharing/internal/group_data_proto_utils_unittest.cc +components/data_sharing/internal/preview_server_proxy.cc components/data_sharing/public/data_sharing_network_utils.h components/data_sharing/public/features.cc components/desks_storage/core/admin_template_service_unittests.cc @@ -2828,13 +2848,15 @@ components/drive/service/drive_api_service.cc components/drive/service/fake_drive_service.cc components/embedder_support/android/BUILD.gn components/endpoint_fetcher/endpoint_fetcher_unittest.cc +components/enterprise/connectors/core/connectors_manager_base_unittest.cc +components/enterprise/connectors/core/connectors_service_base_unittest.cc components/enterprise/connectors/core/reporting_service_settings_unittest.cc components/enterprise/connectors/core/service_provider_config.cc components/enterprise/connectors/core/service_provider_config_unittest.cc components/enterprise/data_controls/core/browser/conditions/attributes_condition_unittest.cc components/enterprise/data_controls/core/browser/data_controls_policy_handler_unittest.cc components/enterprise/data_controls/core/browser/rule_unittest.cc -components/enterprise/obfuscation/core/utils.cc +components/enterprise/obfuscation/core/utils.h components/error_page/common/localized_error.cc components/error_page_strings.grdp components/exo/data_offer_unittest.cc @@ -2935,7 +2957,8 @@ components/invalidation/impl/fcm_invalidation_service_unittest.cc components/invalidation/impl/per_user_topic_subscription_manager.cc components/invalidation/impl/per_user_topic_subscription_manager_unittest.cc components/ip_protection/common/ip_protection_config_http.cc -components/ip_protection/common/ip_protection_proxy_config_retriever.cc +components/ip_protection/common/ip_protection_proxy_config_direct_fetcher.cc +components/ip_protection/common/masked_domain_list_manager_unittest.cc components/javascript_dialogs/tab_modal_dialog_manager.cc components/javascript_dialogs_strings.grdp components/keyed_service/core/keyed_service_base_factory.cc @@ -2950,8 +2973,10 @@ components/lookalikes/core/lookalike_url_util.cc components/lookalikes/core/lookalike_url_util.h components/lookalikes/core/lookalike_url_util_unittest.cc components/management_strings.grdp +components/manta/anchovy/anchovy_proto_helper.cc components/manta/base_provider.cc components/manta/base_provider_test_helper.cc +components/manta/mahi_provider.cc components/manta/manta_service_callbacks.cc components/manta/orca_provider.cc components/manta/orca_provider_unittest.cc @@ -2967,6 +2992,7 @@ components/media_router/common/providers/cast/cast_media_source_unittest.cc components/media_router/common/providers/cast/certificate/net_trust_store.cc components/media_router/common/providers/cast/channel/BUILD.gn components/media_router/common/providers/cast/channel/enum_table.h +components/metrics/debug/app.ts components/metrics/metrics_state_manager.h components/metrics/metrics_state_manager_unittest.cc components/metrics/net/net_metrics_log_uploader.cc @@ -3005,12 +3031,14 @@ components/omnibox/browser/autocomplete_controller.h components/omnibox/browser/autocomplete_controller_metrics_unittest.cc components/omnibox/browser/autocomplete_controller_unittest.cc components/omnibox/browser/autocomplete_input.cc +components/omnibox/browser/autocomplete_match.cc components/omnibox/browser/autocomplete_match.h components/omnibox/browser/autocomplete_match_type_unittest.cc components/omnibox/browser/autocomplete_match_unittest.cc components/omnibox/browser/autocomplete_result.cc components/omnibox/browser/autocomplete_result_unittest.cc components/omnibox/browser/autocomplete_scoring_model_handler_unittest.cc +components/omnibox/browser/autocomplete_scoring_model_service.cc components/omnibox/browser/base_search_provider_unittest.cc components/omnibox/browser/builtin_provider_unittest.cc components/omnibox/browser/document_provider.cc @@ -3040,7 +3068,6 @@ components/omnibox/browser/omnibox_field_trial.h components/omnibox/browser/omnibox_view_unittest.cc components/omnibox/browser/on_device_head_provider_unittest.cc components/omnibox/browser/on_device_tail_model_service_unittest.cc -components/omnibox/browser/query_tile_provider_unittest.cc components/omnibox/browser/remote_suggestions_service_unittest.cc components/omnibox/browser/scored_history_match.cc components/omnibox/browser/scored_history_match_unittest.cc @@ -3122,6 +3149,7 @@ components/paint_preview/renderer/paint_preview_recorder_utils_unittest.cc components/password_manager/content/browser/content_password_manager_driver_unittest.cc components/password_manager/core/browser/credential_manager_impl_unittest.cc components/password_manager/core/browser/credential_manager_logger_unittest.cc +components/password_manager/core/browser/credential_manager_pending_request_task.cc components/password_manager/core/browser/credential_manager_pending_request_task_unittest.cc components/password_manager/core/browser/credentials_cleaner_unittest.cc components/password_manager/core/browser/export/password_manager_exporter_unittest.cc @@ -3147,6 +3175,7 @@ components/password_manager/core/browser/leak_detection_dialog_utils.cc components/password_manager/core/browser/old_google_credentials_cleaner.cc components/password_manager/core/browser/old_google_credentials_cleaner.h components/password_manager/core/browser/old_google_credentials_cleaner_unittest.cc +components/password_manager/core/browser/os_crypt_async_migrator.h components/password_manager/core/browser/password_feature_manager_impl_unittest.cc components/password_manager/core/browser/password_form_filling_unittest.cc components/password_manager/core/browser/password_form_manager_unittest.cc @@ -3160,6 +3189,7 @@ components/password_manager/core/browser/password_manager.h components/password_manager/core/browser/password_manager_client_helper_unittest.cc components/password_manager/core/browser/password_manager_constants.cc components/password_manager/core/browser/password_manager_metrics_recorder.h +components/password_manager/core/browser/password_manager_metrics_util_unittest.cc components/password_manager/core/browser/password_manager_test_utils.cc components/password_manager/core/browser/password_manager_unittest.cc components/password_manager/core/browser/password_manager_util.h @@ -3246,7 +3276,7 @@ components/permissions_strings.grdp components/plus_addresses/metrics/plus_address_submission_logger_unittest.cc components/plus_addresses/plus_address_http_client_impl.cc components/plus_addresses/plus_address_http_client_impl_unittest.cc -components/plus_addresses/plus_address_parsing_utils_unittest.cc +components/plus_addresses/plus_address_suggestion_generator_unittest.cc components/plus_addresses_strings.grdp components/policy/PRESUBMIT.py components/policy/core/browser/browser_policy_connector.cc @@ -3409,7 +3439,6 @@ components/privacy_sandbox_strings.grd components/protocol_handler_strings.grdp components/proxy_config/pref_proxy_config_tracker_impl_unittest.cc components/proxy_config/proxy_policy_handler_unittest.cc -components/query_tiles/test/fake_tile_service.cc components/quirks/quirks_client.cc components/reading_list/core/offline_url_utils_unittest.cc components/reporting/PRESUBMIT.py @@ -3507,6 +3536,7 @@ components/safe_search_api/stub_url_checker.cc components/safety_check/update_check_helper.h components/safety_check/url_constants.cc components/saved_tab_groups/android/tab_group_sync_service_android_unittest.cc +components/saved_tab_groups/fake_tab_group_sync_service.cc components/saved_tab_groups/saved_tab_group_sync_bridge_unittest.cc components/saved_tab_groups/saved_tab_group_test_utils.cc components/saved_tab_groups/saved_tab_group_unittest.cc @@ -3516,7 +3546,7 @@ components/saved_tab_groups/tab_group_sync_service_unittest.cc components/search_engines/PRESUBMIT.py components/search_engines/android/template_url_service_android_unittest.cc components/search_engines/choice_made_location.h -components/search_engines/default_search_policy_handler_unittest.cc +components/search_engines/enterprise/default_search_policy_handler_unittest.cc components/search_engines/keyword_table_unittest.cc components/search_engines/template_url.cc components/search_engines/template_url_data_unittest.cc @@ -3569,6 +3599,7 @@ components/services/app_service/public/cpp/preferred_apps_list_unittest.cc components/services/font/pdf_fontconfig_matching.cc components/services/heap_profiling/connection_manager.cc components/services/paint_preview_compositor/paint_preview_compositor_impl_unittest.cc +components/services/print_compositor/print_compositor_impl.cc components/services/quarantine/quarantine_mac.mm components/services/quarantine/quarantine_win.cc components/services/storage/partition_impl_unittest.cc @@ -3647,7 +3678,8 @@ components/supervised_user/core/browser/fetcher_config.cc components/supervised_user/core/browser/fetcher_config.h components/supervised_user/core/browser/kids_chrome_management_url_checker_client_unittest.cc components/supervised_user/core/browser/list_family_members_service_unittest.cc -components/supervised_user/core/browser/proto_fetcher.h +components/supervised_user/core/browser/parallel_fetch_manager_unittest.cc +components/supervised_user/core/browser/proto_fetcher_status.h components/supervised_user/core/browser/proto_fetcher_unittest.cc components/supervised_user/core/browser/supervised_user_capabilities_unittest.cc components/supervised_user/core/browser/supervised_user_service_unittest.cc @@ -3659,7 +3691,6 @@ components/supervised_user/core/common/supervised_user_constants.cc components/supervised_user/core/common/supervised_user_constants.h components/supervised_user/test_support/kids_chrome_management_test_utils.cc components/supervised_user/test_support/kids_management_api_server_mock.cc -components/sync/PRESUBMIT.py components/sync/base/data_type.cc components/sync/base/sync_util.h components/sync/engine/bookmark_update_preprocessing.cc @@ -3746,6 +3777,7 @@ components/variations/variations_url_constants.cc components/visited_url_ranking/internal/history_url_visit_data_fetcher_unittest.cc components/visited_url_ranking/internal/session_url_visit_data_fetcher_unittest.cc components/visited_url_ranking/internal/transformer/default_app_url_visit_aggregates_transformer_unittest.cc +components/visited_url_ranking/internal/visited_url_ranking_service_impl_unittest.cc components/visited_url_ranking/public/features.h components/visited_url_ranking/public/test_support.h components/visited_url_ranking/public/url_visit_util.h @@ -3768,6 +3800,7 @@ components/webapps/browser/android/webapk/webapk_icons_hasher_unittest.cc components/webapps/browser/android/webapk/webapk_single_icon_hasher_unittest.cc components/webapps/browser/banners/app_banner_settings_helper_unittest.cc components/webapps/browser/installable/installable_evaluator_unittest.cc +components/webauthn/core/browser/passkey_change_quota_tracker_unittest.cc components/webxr/android/arcore_install_helper.cc components/webxr/android/arcore_install_helper.h components/wifi/wifi_service_win.cc @@ -3779,13 +3812,7 @@ content/app/content_main_runner_impl.cc content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm content/browser/accessibility/accessibility_action_browsertest.cc content/browser/accessibility/accessibility_auralinux_browsertest.cc -content/browser/accessibility/browser_accessibility.h -content/browser/accessibility/browser_accessibility_fuchsia.h -content/browser/accessibility/browser_accessibility_manager.cc -content/browser/accessibility/browser_accessibility_manager.h content/browser/accessibility/browser_accessibility_manager_android.cc -content/browser/accessibility/browser_accessibility_manager_mac.mm -content/browser/accessibility/browser_accessibility_manager_win.cc content/browser/accessibility/hit_testing_browsertest.cc content/browser/aggregation_service/aggregation_service_features.cc content/browser/android/nfc_host_unittest.cc @@ -3829,15 +3856,16 @@ content/browser/file_system_access/file_path_watcher/file_path_watcher_win.cc content/browser/file_system_access/file_system_access_observer_observation.h content/browser/font_access/font_enumeration_cache.cc content/browser/font_access/font_enumeration_data_source_win.cc +content/browser/framebusting_browsertest.cc content/browser/geolocation/geolocation_service_impl_unittest.cc content/browser/gpu/gpu_data_manager_impl_private.cc content/browser/hid/hid_service_unittest.cc content/browser/idle/idle_manager_unittest.cc -content/browser/indexed_db/indexed_db_backing_store.cc -content/browser/indexed_db/indexed_db_backing_store_unittest.cc content/browser/indexed_db/indexed_db_context_impl.h content/browser/indexed_db/indexed_db_context_unittest.cc content/browser/indexed_db/indexed_db_reporting.cc +content/browser/indexed_db/instance/backing_store.cc +content/browser/indexed_db/instance/backing_store_unittest.cc content/browser/installedapp/fetch_related_win_apps_task.cc content/browser/installedapp/native_win_app_fetcher_impl.cc content/browser/interest_group/ad_auction_headers_util_unittest.cc @@ -3858,7 +3886,6 @@ content/browser/media/capture/frame_test_util.cc content/browser/media/media_devices_permission_checker_unittest.cc content/browser/media/session/media_session_impl_service_routing_unittest.cc content/browser/mojo_binder_policy_applier.h -content/browser/navigation_browsertest.cc content/browser/navigation_transitions/back_forward_transition_animation_manager_android_browsertest.cc content/browser/navigation_transitions/back_forward_transition_animator.cc content/browser/network/accept_header_browsertest.cc @@ -3874,6 +3901,7 @@ content/browser/plugin_service_impl_browsertest.cc content/browser/preloading/prefetch/prefetch_container.cc content/browser/preloading/prefetch/prefetch_container.h content/browser/preloading/prefetch/prefetch_container_unittest.cc +content/browser/preloading/prefetch/prefetch_match_resolver.cc content/browser/preloading/prefetch/prefetch_status.h content/browser/preloading/prefetch/prefetch_url_loader_interceptor.cc content/browser/preloading/preloading_decider_unittest.cc @@ -3899,6 +3927,7 @@ content/browser/renderer_host/navigation_request.cc content/browser/renderer_host/navigation_request_unittest.cc content/browser/renderer_host/navigator.cc content/browser/renderer_host/navigator_unittest.cc +content/browser/renderer_host/policy_container_host_browsertest.cc content/browser/renderer_host/recently_destroyed_hosts_unittest.cc content/browser/renderer_host/render_frame_host_impl.cc content/browser/renderer_host/render_frame_host_manager_browsertest.cc @@ -3994,6 +4023,7 @@ content/renderer/PRESUBMIT.py content/renderer/accessibility/annotations/ax_image_annotator.cc content/renderer/accessibility/annotations/ax_image_stopwords.h content/renderer/content_security_policy_util_fuzzer.cc +content/renderer/media/gpu/gpu_video_accelerator_factories_impl.cc content/renderer/media/media_factory.cc content/renderer/pepper/message_channel.cc content/renderer/pepper/pepper_media_device_manager.cc @@ -4018,6 +4048,9 @@ content/shell/browser/shell_browser_main_parts.cc content/shell/browser/shell_platform_delegate_ios.mm content/test/PRESUBMIT.py content/test/gpu/PRESUBMIT.py +content/test/gpu/bad_machine_finder/buildbucket.py +content/test/gpu/bad_machine_finder/buildbucket_unittest.py +content/test/gpu/bad_machine_finder/swarming.py content/test/gpu/find_unknown_typ_tags.py content/test/gpu/flake_suppressor/gpu_results_unittest.py content/test/gpu/gather_power_measurement_results.py @@ -4037,18 +4070,6 @@ content/web_test/browser/fake_bluetooth_chooser_factory.h content/zygote/zygote_linux.cc content/zygote/zygote_linux.h content/zygote/zygote_main_linux.cc -courgette/disassembler_win32.cc -courgette/ensemble_unittest.cc -courgette/third_party/bsdiff/bsdiff.h -courgette/third_party/bsdiff/bsdiff_apply.cc -courgette/third_party/bsdiff/bsdiff_create.cc -courgette/third_party/bsdiff/bsdiff_search.h -courgette/third_party/divsufsort/divsufsort.cc -courgette/third_party/divsufsort/divsufsort.h -courgette/third_party/divsufsort/divsufsort_private.h -courgette/third_party/divsufsort/sssort.cc -courgette/third_party/divsufsort/trsort.cc -courgette/types_win_pe.h crypto/chaps_support.cc crypto/hmac_unittest.cc crypto/nss_util.cc @@ -4321,6 +4342,7 @@ ios/PRESUBMIT.py ios/build/bots/scripts/PRESUBMIT.py ios/build/bots/scripts/plugin/PRESUBMIT.py ios/build/bots/scripts/result_sink_util.py +ios/build/bots/scripts/result_sink_util_test.py ios/build/bots/scripts/test_result_util.py ios/build/bots/scripts/test_runner.py ios/build/bots/scripts/xcode_util.py @@ -4347,7 +4369,6 @@ ios/chrome/browser/bookmarks/ui_bundled/bookmark_mediator_unittest.mm ios/chrome/browser/bookmarks/ui_bundled/bookmarks_egtest.mm ios/chrome/browser/bookmarks/ui_bundled/folder_chooser/bookmarks_folder_chooser_egtest.mm ios/chrome/browser/bring_android_tabs/ui_bundled/tab_list_from_android_mediator_unittest.mm -ios/chrome/browser/browser_state/model/chrome_browser_state_impl.h ios/chrome/browser/commerce/model/shopping_persisted_data_tab_helper_unittest.mm ios/chrome/browser/context_menu/ui_bundled/context_menu_configuration_provider_unittest.mm ios/chrome/browser/crash_report/model/breadcrumbs/breadcrumb_manager_tab_helper_unittest.mm @@ -4358,14 +4379,14 @@ ios/chrome/browser/dialogs/ui_bundled/nsurl_protection_space_util_unittest.mm ios/chrome/browser/download/model/ar_quick_look_tab_helper_unittest.mm ios/chrome/browser/drive/model/drive_list.h ios/chrome/browser/drive/model/manage_storage_url_util.mm -ios/chrome/browser/drive_file_picker/ui/drive_file_picker_table_view_controller.mm -ios/chrome/browser/drive_file_picker/ui/root_drive_file_picker_table_view_controller.mm +ios/chrome/browser/drive_file_picker/coordinator/drive_file_picker_mediator.mm ios/chrome/browser/first_run/ui_bundled/first_run_search_engine_choice_egtest.mm ios/chrome/browser/flags/about_flags.mm ios/chrome/browser/history/model/history_tab_helper_unittest.mm ios/chrome/browser/home_customization/utils/home_customization_constants.mm ios/chrome/browser/intents/user_activity_browser_agent_unittest.mm ios/chrome/browser/lens_overlay/coordinator/lens_omnibox_client_unittest.mm +ios/chrome/browser/lens_overlay/coordinator/lens_overlay_mediator_unittest.mm ios/chrome/browser/lens_overlay/coordinator/lens_result_page_mediator.mm ios/chrome/browser/lens_overlay/coordinator/lens_result_page_mediator_unittest.mm ios/chrome/browser/link_to_text/model/link_to_text_java_script_feature_unittest.mm @@ -4375,6 +4396,11 @@ ios/chrome/browser/metrics/model/ios_family_link_user_metrics_provider_unittest. ios/chrome/browser/metrics/model/tab_usage_recorder_browser_agent_unittest.mm ios/chrome/browser/net/model/retryable_url_fetcher_unittest.mm ios/chrome/browser/ntp/model/browser_policy_new_tab_page_rewriter_unittest.mm +ios/chrome/browser/ntp/ui_bundled/discover_feed_constants.mm +ios/chrome/browser/ntp/ui_bundled/incognito/incognito_view_util.mm +ios/chrome/browser/ntp/ui_bundled/new_tab_page_coordinator_unittest.mm +ios/chrome/browser/ntp/ui_bundled/new_tab_page_mediator.mm +ios/chrome/browser/ntp/ui_bundled/new_tab_page_mediator_unittest.mm ios/chrome/browser/omaha/model/omaha_service.mm ios/chrome/browser/optimization_guide/model/optimization_guide_validation_tab_helper_unittest.mm ios/chrome/browser/overlays/ui_bundled/infobar_banner/passwords/password_infobar_banner_overlay_mediator_unittest.mm @@ -4388,6 +4414,7 @@ ios/chrome/browser/policy/model/new_tab_page_location_policy_handler_unittest.cc ios/chrome/browser/policy/model/restrict_accounts_policy_handler_unittest.cc ios/chrome/browser/prerender/model/preload_controller_unittest.mm ios/chrome/browser/prerender/model/prerender_service_impl_unittest.mm +ios/chrome/browser/profile/model/profile_ios_impl.h ios/chrome/browser/reading_list/model/reading_list_browser_agent_unittest.mm ios/chrome/browser/safe_browsing/model/safe_browsing_client_impl_unittest.mm ios/chrome/browser/safe_browsing/model/tailored_security/tailored_security_tab_helper_unittest.mm @@ -4419,7 +4446,10 @@ ios/chrome/browser/signin/model/test_account_info.mm ios/chrome/browser/ssl/model/ios_ssl_error_handler_unittest.mm ios/chrome/browser/start_surface/ui_bundled/start_surface_scene_agent_unittest.mm ios/chrome/browser/supervised_user/model/supervised_user_url_filter_tab_helper_unittest.mm -ios/chrome/browser/ui/authentication/account_menu/account_menu_view_controller_presentation_delegate.h +ios/chrome/browser/ui/authentication/account_menu/account_menu_egtest.mm +ios/chrome/browser/ui/authentication/account_menu/account_menu_mediator_delegate.h +ios/chrome/browser/ui/authentication/account_menu/account_menu_mutator.h +ios/chrome/browser/ui/authentication/authentication_flow_unittest.mm ios/chrome/browser/ui/authentication/history_sync/history_sync_capabilities_fetcher_unittest.mm ios/chrome/browser/ui/authentication/signin/add_account_signin/add_account_signin_manager_unittest.mm ios/chrome/browser/ui/authentication/signin_earl_grey_ui_test_util.mm @@ -4429,11 +4459,6 @@ ios/chrome/browser/ui/content_suggestions/parcel_tracking/parcel_tracking_mediat ios/chrome/browser/ui/content_suggestions/tab_resumption/tab_resumption_mediator.mm ios/chrome/browser/ui/infobars/modals/autofill_address_profile/infobar_save_address_profile_table_view_controller_unittest.mm ios/chrome/browser/ui/infobars/test/test_infobar_password_delegate.mm -ios/chrome/browser/ui/ntp/discover_feed_constants.mm -ios/chrome/browser/ui/ntp/incognito/incognito_view_util.mm -ios/chrome/browser/ui/ntp/new_tab_page_coordinator_unittest.mm -ios/chrome/browser/ui/ntp/new_tab_page_mediator.mm -ios/chrome/browser/ui/ntp/new_tab_page_mediator_unittest.mm ios/chrome/browser/ui/omnibox/omnibox_egtest.mm ios/chrome/browser/ui/omnibox/zero_suggest_prefetch_helper_unittest.mm ios/chrome/browser/ui/page_info/page_info_egtest.mm @@ -4517,6 +4542,7 @@ ios/net/nsurlrequest_util_unittest.mm ios/testing/PRESUBMIT.py ios/testing/data/http_server_files/opensearch.xml ios/testing/data/http_server_files/window_open.html +ios/testing/earl_grey/base_earl_grey_test_case.mm ios/web/browsing_data/browsing_data_removing_util_unittest.mm ios/web/browsing_data/system_cookie_store_util_unittest.mm ios/web/favicon/favicon_util_unittest.mm @@ -5150,7 +5176,6 @@ remoting/host/xmpp_register_support_host_request_unittest.cc remoting/ios/app/help_view_controller.mm remoting/ios/app/host_setup_view_controller.mm remoting/ios/app/remoting_menu_view_controller.mm -remoting/ios/facade/remoting_oauth_authentication.mm remoting/protocol/authenticator_test_base.h remoting/protocol/fake_session.cc remoting/protocol/jingle_messages_unittest.cc @@ -5292,6 +5317,7 @@ services/webnn/webnn_graph_impl_backend_test.cc skia/config/SkUserConfig.h skia/ext/SkMemory_new_handler.cpp skia/ext/skia_utils_ios_unittest.mm +skia/rusty_png_feature.h sql/database.cc sql/database.h storage/browser/blob/blob_reader.h @@ -5401,32 +5427,7 @@ third_party/afl/src/qemu_mode/patches/afl-qemu-cpu-inl.h third_party/afl/src/test-instr.c third_party/afl/src/types.h third_party/android_build_tools/aapt2/3pp/fetch.py -third_party/android_deps/libs/android_arch_core_common/3pp/fetch.py -third_party/android_deps/libs/android_arch_core_runtime/3pp/fetch.py -third_party/android_deps/libs/android_arch_lifecycle_common/3pp/fetch.py -third_party/android_deps/libs/android_arch_lifecycle_livedata/3pp/fetch.py -third_party/android_deps/libs/android_arch_lifecycle_livedata_core/3pp/fetch.py -third_party/android_deps/libs/android_arch_lifecycle_runtime/3pp/fetch.py -third_party/android_deps/libs/android_arch_lifecycle_viewmodel/3pp/fetch.py -third_party/android_deps/libs/com_android_support_asynclayoutinflater/3pp/fetch.py -third_party/android_deps/libs/com_android_support_collections/3pp/fetch.py -third_party/android_deps/libs/com_android_support_coordinatorlayout/3pp/fetch.py -third_party/android_deps/libs/com_android_support_cursoradapter/3pp/fetch.py -third_party/android_deps/libs/com_android_support_customview/3pp/fetch.py -third_party/android_deps/libs/com_android_support_documentfile/3pp/fetch.py -third_party/android_deps/libs/com_android_support_drawerlayout/3pp/fetch.py -third_party/android_deps/libs/com_android_support_interpolator/3pp/fetch.py -third_party/android_deps/libs/com_android_support_loader/3pp/fetch.py -third_party/android_deps/libs/com_android_support_localbroadcastmanager/3pp/fetch.py -third_party/android_deps/libs/com_android_support_print/3pp/fetch.py -third_party/android_deps/libs/com_android_support_slidingpanelayout/3pp/fetch.py third_party/android_deps/libs/com_android_support_support_annotations/3pp/fetch.py -third_party/android_deps/libs/com_android_support_support_compat/3pp/fetch.py -third_party/android_deps/libs/com_android_support_support_core_ui/3pp/fetch.py -third_party/android_deps/libs/com_android_support_support_core_utils/3pp/fetch.py -third_party/android_deps/libs/com_android_support_swiperefreshlayout/3pp/fetch.py -third_party/android_deps/libs/com_android_support_versionedparcelable/3pp/fetch.py -third_party/android_deps/libs/com_android_support_viewpager/3pp/fetch.py third_party/android_deps/libs/com_android_tools_common/3pp/fetch.py third_party/android_deps/libs/com_android_tools_layoutlib_layoutlib_api/3pp/fetch.py third_party/android_deps/libs/com_android_tools_sdk_common/3pp/fetch.py @@ -5470,7 +5471,6 @@ third_party/android_deps/licenses/Android_SDK_License-December_9_2016.txt third_party/android_platform/development/scripts/PRESUBMIT.py third_party/android_platform/development/scripts/stack.py third_party/android_toolchain/3pp/fetch.py -third_party/android_toolchain_canary/3pp/fetch.py third_party/androidx/fetch_all_androidx.py third_party/angle/BUILD.gn third_party/angle/PRESUBMIT.py @@ -5575,6 +5575,7 @@ third_party/angle/src/compiler/translator/hlsl/OutputHLSL.cpp third_party/angle/src/compiler/translator/hlsl/TextureFunctionHLSL.cpp third_party/angle/src/compiler/translator/hlsl/blocklayoutHLSL.h third_party/angle/src/compiler/translator/spirv/OutputSPIRV.cpp +third_party/angle/src/compiler/translator/wgsl/RewritePipelineVariables.cpp third_party/angle/src/libANGLE/Display.cpp third_party/angle/src/libANGLE/GLES1Renderer.cpp third_party/angle/src/libANGLE/Observer.cpp @@ -6217,7 +6218,6 @@ third_party/blink/renderer/modules/gamepad/gamepad_axis_event.idl third_party/blink/renderer/modules/gamepad/gamepad_axis_event_init.idl third_party/blink/renderer/modules/gamepad/gamepad_button_event.idl third_party/blink/renderer/modules/gamepad/gamepad_button_event_init.idl -third_party/blink/renderer/modules/gamepad/gamepad_effect_parameters.idl third_party/blink/renderer/modules/geolocation/geolocation.cc third_party/blink/renderer/modules/geolocation/geolocation.h third_party/blink/renderer/modules/hid/hid.cc @@ -6245,6 +6245,14 @@ third_party/blink/renderer/modules/storage/storage_area.cc third_party/blink/renderer/modules/vibration/navigator_vibration.idl third_party/blink/renderer/modules/vibration/vibration_controller.cc third_party/blink/renderer/modules/webaudio/audio_context.cc +third_party/blink/renderer/modules/webaudio/audio_context.h +third_party/blink/renderer/modules/webaudio/audio_handler.h +third_party/blink/renderer/modules/webaudio/audio_node.h +third_party/blink/renderer/modules/webaudio/media_stream_audio_destination_handler.h +third_party/blink/renderer/modules/webaudio/media_stream_audio_destination_node.h +third_party/blink/renderer/modules/webaudio/media_stream_audio_source_handler.h +third_party/blink/renderer/modules/webaudio/media_stream_audio_source_node.h +third_party/blink/renderer/modules/webaudio/realtime_audio_destination_handler.h third_party/blink/renderer/modules/webgl/webgl_unowned_texture.h third_party/blink/renderer/modules/webgpu/external_texture_helper.cc third_party/blink/renderer/modules/webgpu/gpu_render_pipeline.cc @@ -6257,6 +6265,7 @@ third_party/blink/renderer/modules/xr/xr_session.h third_party/blink/renderer/modules/xr/xr_system.cc third_party/blink/renderer/platform/PRESUBMIT.py third_party/blink/renderer/platform/animation/timing_function.h +third_party/blink/renderer/platform/audio/audio_destination.h third_party/blink/renderer/platform/bindings/script_regexp.cc third_party/blink/renderer/platform/exported/web_crypto_algorithm.cc third_party/blink/renderer/platform/fonts/bitmap_glyphs_block_list.cc @@ -6375,14 +6384,13 @@ third_party/blink/renderer/platform/wtf/stack_util.cc third_party/blink/renderer/platform/wtf/text/string_impl.h third_party/blink/renderer/platform/wtf/thread_specific.h third_party/blink/renderer/platform/wtf/vector_test.cc -third_party/boringssl/roll_boringssl.py +third_party/boringssl/src/.bcr/metadata.template.json third_party/boringssl/src/CMakeLists.txt third_party/boringssl/src/crypto/cpu_aarch64_openbsd.c third_party/boringssl/src/crypto/dilithium/dilithium.c third_party/boringssl/src/crypto/fipsmodule/aes/internal.h -third_party/boringssl/src/crypto/fipsmodule/bn/mul.c -third_party/boringssl/src/crypto/fipsmodule/rsa/rsa_impl.c third_party/boringssl/src/crypto/internal.h +third_party/boringssl/src/crypto/mldsa/mldsa.c third_party/boringssl/src/crypto/pkcs7/pkcs7_test.cc third_party/boringssl/src/crypto/pkcs8/pkcs8_x509.c third_party/boringssl/src/crypto/rand_extra/windows.c @@ -7429,7 +7437,6 @@ third_party/catapult/third_party/python_gflags/Makefile third_party/catapult/third_party/python_gflags/gflags.py third_party/catapult/third_party/python_gflags/gflags_validators.py third_party/catapult/third_party/python_gflags/setup.py -third_party/catapult/third_party/requests_toolbelt/requests_toolbelt/threaded/__init__.py third_party/catapult/third_party/snap-it/tests/tests.js third_party/catapult/third_party/typ/setup.py third_party/catapult/third_party/typ/typ/artifacts.py @@ -7714,17 +7721,18 @@ third_party/crossbench/crossbench/benchmarks/experimental/power/power_benchmark. third_party/crossbench/crossbench/benchmarks/loading/action.py third_party/crossbench/crossbench/benchmarks/loading/loading_benchmark.py third_party/crossbench/crossbench/benchmarks/loading/page.py -third_party/crossbench/crossbench/benchmarks/loading/page_config.py third_party/crossbench/crossbench/browsers/chrome/downloader.py third_party/crossbench/crossbench/browsers/chromium/applescript.py third_party/crossbench/crossbench/browsers/chromium/webdriver.py third_party/crossbench/crossbench/browsers/firefox/downloader.py third_party/crossbench/crossbench/browsers/firefox/webdriver.py +third_party/crossbench/crossbench/browsers/secrets.py third_party/crossbench/crossbench/plt/android_adb.py third_party/crossbench/crossbench/probes/performance_entries.py third_party/crossbench/crossbench/probes/profiling/browser_profiling.py third_party/crossbench/crossbench/probes/profiling/system_profiling.py third_party/crossbench/crossbench/probes/web_page_replay/recorder.py +third_party/crossbench/tests/crossbench/benchmarks/loading/config/test_pages.py third_party/crossbench/tests/crossbench/benchmarks/loading/test_loading.py third_party/crossbench/tests/crossbench/probes/test_js.py third_party/crossbench/tests/crossbench/probes/test_v8_rcs.py @@ -7762,6 +7770,7 @@ third_party/dawn/src/dawn/native/d3d12/ResourceAllocatorManagerD3D12.h third_party/dawn/src/dawn/native/d3d12/SamplerD3D12.cpp third_party/dawn/src/dawn/native/d3d12/SharedTextureMemoryD3D12.cpp third_party/dawn/src/dawn/native/d3d12/TextureD3D12.cpp +third_party/dawn/src/dawn/native/metal/MultiDrawEncoder.mm third_party/dawn/src/dawn/native/metal/QueueMTL.h third_party/dawn/src/dawn/native/metal/SharedTextureMemoryMTL.mm third_party/dawn/src/dawn/native/opengl/CommandBufferGL.cpp @@ -8007,6 +8016,8 @@ third_party/depot_tools/git_common.py third_party/depot_tools/git_number.py third_party/depot_tools/git_retry.py third_party/depot_tools/gsutil.py +third_party/depot_tools/infra_lib/telemetry/proto/clientanalytics_pb2.py +third_party/depot_tools/infra_lib/telemetry/proto/trace_span_pb2.py third_party/depot_tools/man/html/depot_tools.html third_party/depot_tools/man/html/depot_tools_tutorial.html third_party/depot_tools/man/html/git-cl.html @@ -8139,7 +8150,6 @@ third_party/depot_tools/siso.py third_party/depot_tools/split_cl.py third_party/depot_tools/subprocess2.py third_party/depot_tools/testing_support/fake_repos.py -third_party/depot_tools/tests/autoninja_test.py third_party/depot_tools/tests/bot_update_coverage_test.py third_party/depot_tools/tests/build_telemetry_test.py third_party/depot_tools/tests/fetch_test.py @@ -8264,6 +8274,7 @@ third_party/devtools-frontend/src/front_end/entrypoint_template.html third_party/devtools-frontend/src/front_end/entrypoints/inspector_main/RenderingOptions.ts third_party/devtools-frontend/src/front_end/entrypoints/inspector_main/inspector_main-meta.ts third_party/devtools-frontend/src/front_end/entrypoints/main/MainImpl.ts +third_party/devtools-frontend/src/front_end/entrypoints/main/main-meta.ts third_party/devtools-frontend/src/front_end/generated/Deprecation.ts third_party/devtools-frontend/src/front_end/generated/InspectorBackendCommands.js third_party/devtools-frontend/src/front_end/generated/protocol-mapping.d.ts @@ -8295,8 +8306,11 @@ third_party/devtools-frontend/src/front_end/models/trace/handlers/UserInteractio third_party/devtools-frontend/src/front_end/models/trace/handlers/UserTimingsHandler.ts third_party/devtools-frontend/src/front_end/models/trace/helpers/Trace.test.ts third_party/devtools-frontend/src/front_end/models/trace/insights/CumulativeLayoutShift.ts +third_party/devtools-frontend/src/front_end/models/trace/insights/DocumentLatency.ts third_party/devtools-frontend/src/front_end/models/trace/insights/InteractionToNextPaint.ts third_party/devtools-frontend/src/front_end/models/trace/insights/RenderBlocking.test.ts +third_party/devtools-frontend/src/front_end/models/trace/insights/ThirdPartyWeb.test.ts +third_party/devtools-frontend/src/front_end/models/trace/insights/ThirdPartyWeb.ts third_party/devtools-frontend/src/front_end/models/trace/lantern/core/NetworkAnalyzer.test.ts third_party/devtools-frontend/src/front_end/models/trace/lantern/graph/NetworkNode.ts third_party/devtools-frontend/src/front_end/models/trace/lantern/graph/PageDependencyGraph.ts @@ -8343,12 +8357,14 @@ third_party/devtools-frontend/src/front_end/panels/lighthouse/LighthouseControll third_party/devtools-frontend/src/front_end/panels/network/NetworkConfigView.ts third_party/devtools-frontend/src/front_end/panels/network/NetworkDataGridNode.ts third_party/devtools-frontend/src/front_end/panels/network/NetworkLogView.ts +third_party/devtools-frontend/src/front_end/panels/network/NetworkPanel.ts third_party/devtools-frontend/src/front_end/panels/network/RequestCookiesView.ts third_party/devtools-frontend/src/front_end/panels/network/RequestTimingView.ts third_party/devtools-frontend/src/front_end/panels/network/ResourceWebSocketFrameView.ts third_party/devtools-frontend/src/front_end/panels/network/components/RequestHeaderSection.ts third_party/devtools-frontend/src/front_end/panels/network/components/RequestHeadersView.test.ts third_party/devtools-frontend/src/front_end/panels/network/components/RequestHeadersView.ts +third_party/devtools-frontend/src/front_end/panels/network/network-meta.ts third_party/devtools-frontend/src/front_end/panels/profiler/HeapSnapshotGridNodes.ts third_party/devtools-frontend/src/front_end/panels/recorder/RecorderController.ts third_party/devtools-frontend/src/front_end/panels/recorder/components/CreateRecordingView.ts @@ -8366,7 +8382,6 @@ third_party/devtools-frontend/src/front_end/panels/sources/components/Breakpoint third_party/devtools-frontend/src/front_end/panels/sources/components/BreakpointsViewUtils.ts third_party/devtools-frontend/src/front_end/panels/sources/components/HeadersView.test.ts third_party/devtools-frontend/src/front_end/panels/sources/components/HeadersView.ts -third_party/devtools-frontend/src/front_end/panels/timeline/EventUICategory.ts third_party/devtools-frontend/src/front_end/panels/timeline/Initiators.test.ts third_party/devtools-frontend/src/front_end/panels/timeline/ThreadAppender.ts third_party/devtools-frontend/src/front_end/panels/timeline/TimelineLandingPage.ts @@ -8374,9 +8389,13 @@ third_party/devtools-frontend/src/front_end/panels/timeline/TimelineTreeView.tes third_party/devtools-frontend/src/front_end/panels/timeline/TimelineUIUtils.test.ts third_party/devtools-frontend/src/front_end/panels/timeline/TimingsTrackAppender.ts third_party/devtools-frontend/src/front_end/panels/timeline/components/DetailsView.ts +third_party/devtools-frontend/src/front_end/panels/timeline/components/EntryStyles.ts third_party/devtools-frontend/src/front_end/panels/timeline/components/FieldSettingsDialog.test.ts third_party/devtools-frontend/src/front_end/panels/timeline/components/FieldSettingsDialog.ts third_party/devtools-frontend/src/front_end/panels/timeline/components/LiveMetricsView.ts +third_party/devtools-frontend/src/front_end/panels/timeline/components/insights/ThirdParties.ts +third_party/devtools-frontend/src/front_end/panels/timeline/components/insights/Viewport.ts +third_party/devtools-frontend/src/front_end/panels/timeline/overlays/components/EntriesLinkOverlay.ts third_party/devtools-frontend/src/front_end/panels/timeline/track_appenders/ThreadAppender.test.ts third_party/devtools-frontend/src/front_end/panels/webauthn/WebauthnPane.ts third_party/devtools-frontend/src/front_end/services/tracing/PerformanceTracing.ts @@ -8575,6 +8594,13 @@ third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/src/co third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/src/node/FirefoxLauncher.ts third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/src/node/LaunchOptions.ts third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/src/node/PuppeteerNode.ts +third_party/devtools-frontend/src/front_end/third_party/third-party-web/lib/nostats-subset.js +third_party/devtools-frontend/src/front_end/third_party/third-party-web/package/dist/entities-httparchive-nostats.json +third_party/devtools-frontend/src/front_end/third_party/third-party-web/package/dist/entities-httparchive.json +third_party/devtools-frontend/src/front_end/third_party/third-party-web/package/dist/entities-nostats.json +third_party/devtools-frontend/src/front_end/third_party/third-party-web/package/dist/entities.json +third_party/devtools-frontend/src/front_end/third_party/third-party-web/package/lib/index.test.js +third_party/devtools-frontend/src/front_end/third_party/third-party-web/package/package.json third_party/devtools-frontend/src/front_end/third_party/vscode.web-custom-data/package/data/browsers.css-data.json third_party/devtools-frontend/src/front_end/third_party/vscode.web-custom-data/package/data/browsers.html-data.json third_party/devtools-frontend/src/front_end/third_party/wasmparser/package/package.json @@ -8600,7 +8626,6 @@ third_party/devtools-frontend/src/front_end/ui/legacy/SearchableView.ts third_party/devtools-frontend/src/front_end/ui/legacy/UIUtils.test.ts third_party/devtools-frontend/src/front_end/ui/legacy/UIUtils.ts third_party/devtools-frontend/src/front_end/ui/legacy/components/object_ui/CustomPreviewComponent.ts -third_party/devtools-frontend/src/front_end/ui/legacy/components/object_ui/ObjectPropertiesSection.test.ts third_party/devtools-frontend/src/front_end/ui/legacy/components/utils/JSPresentationUtils.test.ts third_party/devtools-frontend/src/front_end/ui/legacy/components/utils/Linkifier.test.ts third_party/devtools-frontend/src/front_end/ui/legacy/themeColors.css @@ -8718,6 +8743,8 @@ third_party/devtools-frontend/src/node_modules/axobject-query/package.json third_party/devtools-frontend/src/node_modules/base64-js/package.json third_party/devtools-frontend/src/node_modules/basic-ftp/package.json third_party/devtools-frontend/src/node_modules/binary-extensions/package.json +third_party/devtools-frontend/src/node_modules/body-parser/node_modules/debug/package.json +third_party/devtools-frontend/src/node_modules/body-parser/node_modules/debug/src/browser.js third_party/devtools-frontend/src/node_modules/buffer-crc32/package.json third_party/devtools-frontend/src/node_modules/buffer/index.js third_party/devtools-frontend/src/node_modules/builtin-modules/package.json @@ -8738,6 +8765,7 @@ third_party/devtools-frontend/src/node_modules/chromium-bidi/lib/cjs/bidiMapper/ third_party/devtools-frontend/src/node_modules/chromium-bidi/lib/cjs/bidiMapper/modules/input/ActionDispatcher.js third_party/devtools-frontend/src/node_modules/chromium-bidi/lib/cjs/bidiMapper/modules/input/InputSource.js third_party/devtools-frontend/src/node_modules/chromium-bidi/lib/cjs/bidiMapper/modules/network/NetworkProcessor.js +third_party/devtools-frontend/src/node_modules/chromium-bidi/lib/cjs/bidiMapper/modules/network/NetworkRequest.js third_party/devtools-frontend/src/node_modules/chromium-bidi/lib/cjs/bidiMapper/modules/storage/StorageProcessor.js third_party/devtools-frontend/src/node_modules/chromium-bidi/lib/cjs/utils/uuid.js third_party/devtools-frontend/src/node_modules/chromium-bidi/lib/iife/mapperTab.js @@ -8754,6 +8782,8 @@ third_party/devtools-frontend/src/node_modules/colors/lib/colors.js third_party/devtools-frontend/src/node_modules/colors/lib/styles.js third_party/devtools-frontend/src/node_modules/colors/lib/system/has-flag.js third_party/devtools-frontend/src/node_modules/colors/lib/system/supports-colors.js +third_party/devtools-frontend/src/node_modules/connect/node_modules/debug/package.json +third_party/devtools-frontend/src/node_modules/connect/node_modules/debug/src/browser.js third_party/devtools-frontend/src/node_modules/cookie/package.json third_party/devtools-frontend/src/node_modules/core-js-pure/modules/es.array.reduce-right.js third_party/devtools-frontend/src/node_modules/core-js-pure/modules/es.array.reduce.js @@ -8829,12 +8859,18 @@ third_party/devtools-frontend/src/node_modules/escodegen/node_modules/estraverse third_party/devtools-frontend/src/node_modules/escodegen/node_modules/estraverse/gulpfile.js third_party/devtools-frontend/src/node_modules/escodegen/node_modules/estraverse/package.json third_party/devtools-frontend/src/node_modules/escodegen/package.json +third_party/devtools-frontend/src/node_modules/eslint-import-resolver-node/node_modules/debug/package.json +third_party/devtools-frontend/src/node_modules/eslint-import-resolver-node/node_modules/debug/src/browser.js +third_party/devtools-frontend/src/node_modules/eslint-module-utils/node_modules/debug/package.json +third_party/devtools-frontend/src/node_modules/eslint-module-utils/node_modules/debug/src/browser.js third_party/devtools-frontend/src/node_modules/eslint-module-utils/node_modules/find-up/package.json third_party/devtools-frontend/src/node_modules/eslint-module-utils/node_modules/locate-path/package.json third_party/devtools-frontend/src/node_modules/eslint-module-utils/node_modules/p-limit/package.json third_party/devtools-frontend/src/node_modules/eslint-module-utils/node_modules/p-locate/package.json third_party/devtools-frontend/src/node_modules/eslint-module-utils/node_modules/p-try/package.json third_party/devtools-frontend/src/node_modules/eslint-module-utils/readPkgUp.js +third_party/devtools-frontend/src/node_modules/eslint-plugin-import/node_modules/debug/package.json +third_party/devtools-frontend/src/node_modules/eslint-plugin-import/node_modules/debug/src/browser.js third_party/devtools-frontend/src/node_modules/eslint-plugin-import/node_modules/doctrine/lib/doctrine.js third_party/devtools-frontend/src/node_modules/eslint-plugin-import/node_modules/doctrine/lib/typed.js third_party/devtools-frontend/src/node_modules/eslint-plugin-import/node_modules/doctrine/lib/utility.js @@ -8904,6 +8940,8 @@ third_party/devtools-frontend/src/node_modules/execall/package.json third_party/devtools-frontend/src/node_modules/fast-uri/package.json third_party/devtools-frontend/src/node_modules/fast-uri/test/uri-js.test.js third_party/devtools-frontend/src/node_modules/fd-slicer/package.json +third_party/devtools-frontend/src/node_modules/finalhandler/node_modules/debug/package.json +third_party/devtools-frontend/src/node_modules/finalhandler/node_modules/debug/src/browser.js third_party/devtools-frontend/src/node_modules/find-up/node_modules/path-exists/package.json third_party/devtools-frontend/src/node_modules/find-up/package.json third_party/devtools-frontend/src/node_modules/flat/package.json @@ -8978,6 +9016,8 @@ third_party/devtools-frontend/src/node_modules/karma-sourcemap-loader/package.js third_party/devtools-frontend/src/node_modules/karma/package.json third_party/devtools-frontend/src/node_modules/karma/static/context.js third_party/devtools-frontend/src/node_modules/karma/static/karma.js +third_party/devtools-frontend/src/node_modules/license-checker/node_modules/debug/package.json +third_party/devtools-frontend/src/node_modules/license-checker/node_modules/debug/src/browser.js third_party/devtools-frontend/src/node_modules/license-checker/package.json third_party/devtools-frontend/src/node_modules/locate-path/package.json third_party/devtools-frontend/src/node_modules/lodash.get/package.json @@ -9023,6 +9063,8 @@ third_party/devtools-frontend/src/node_modules/mocha/lib/runnable.js third_party/devtools-frontend/src/node_modules/mocha/lib/utils.js third_party/devtools-frontend/src/node_modules/mocha/mocha-es2018.js third_party/devtools-frontend/src/node_modules/mocha/mocha.js +third_party/devtools-frontend/src/node_modules/mocha/node_modules/debug/package.json +third_party/devtools-frontend/src/node_modules/mocha/node_modules/debug/src/browser.js third_party/devtools-frontend/src/node_modules/mocha/node_modules/escape-string-regexp/package.json third_party/devtools-frontend/src/node_modules/mocha/node_modules/find-up/package.json third_party/devtools-frontend/src/node_modules/mocha/node_modules/has-flag/package.json @@ -11319,6 +11361,7 @@ third_party/libc++/src/src/print.cpp third_party/libc++/src/test/libcxx/containers/sequences/deque/asan_turning_off.pass.cpp third_party/libc++/src/test/libcxx/containers/sequences/vector/asan_turning_off.pass.cpp third_party/libc++/src/test/libcxx/containers/strings/basic.string/asan_turning_off.pass.cpp +third_party/libc++/src/test/std/input.output/filesystems/class.rec.dir.itr/cache_refresh_iter.pass.cpp third_party/libc++/src/test/std/time/time.zone/time.zone.db/time.zone.db.access/current_zone.pass.cpp third_party/libc++/src/test/std/time/time.zone/time.zone.db/time.zone.db.tzdb/current_zone.pass.cpp third_party/libc++/src/utils/ci/BOT_OWNERS.txt @@ -11417,6 +11460,7 @@ third_party/libvpx/source/libvpx/tools/intersect-diffs.py third_party/libvpx/source/libvpx/tools/wrap-commit-msg.py third_party/libvpx/source/libvpx/tools_common.h third_party/libvpx/source/libvpx/vp9/encoder/vp9_block.h +third_party/libvpx/source/libvpx/vp9/encoder/vp9_temporal_filter.c third_party/libvpx/source/libvpx/vpx_dsp/x86/convolve.h third_party/libvpx/source/libvpx/vpx_ports/aarch64_cpudetect.c third_party/libvpx/source/libvpx/vpx_util/vpx_thread.c @@ -11586,6 +11630,7 @@ third_party/libyuv/tools_libyuv/autoroller/roll_deps.py third_party/libyuv/tools_libyuv/autoroller/unittests/roll_deps_test.py third_party/libzip/src/lib/zip_crypto_win.c third_party/libzip/src/lib/zip_extra_field.c +third_party/lit/v3_0/BUILD.gn third_party/lottie/lottie_worker.js third_party/mako/mako/test/templates/internationalization.html third_party/material_web_components/components-chromium/node_modules/@lit/reactive-element/decorators/event-options.d.ts @@ -11628,6 +11673,7 @@ third_party/mediapipe/src/mediapipe/calculators/util/detection_label_id_to_text_ third_party/mediapipe/src/mediapipe/calculators/util/face_to_rect_calculator.cc third_party/mediapipe/src/mediapipe/calculators/video/flow_to_image_calculator.cc third_party/mediapipe/src/mediapipe/calculators/video/opencv_video_encoder_calculator.cc +third_party/mediapipe/src/mediapipe/framework/formats/unique_fd.h third_party/mediapipe/src/mediapipe/framework/tool/proto_util_lite.cc third_party/mediapipe/src/mediapipe/framework/tool/template_parser.cc third_party/mediapipe/src/mediapipe/gpu/egl_surface_holder.h @@ -11711,12 +11757,13 @@ third_party/nearby/src/sharing/contacts/nearby_share_contacts_sorter_test.cc third_party/nearby/src/sharing/local_device_data/nearby_share_local_device_data_manager_impl_test.cc third_party/nearby/src/sharing/nearby_share_profile_info_provider_impl_test.cc third_party/nearby/src/sharing/nearby_sharing_service.h -third_party/nearby/src/sharing/nearby_sharing_service_extension_test.cc third_party/nearby/src/sharing/text_attachment_test.cc third_party/node/node_modules/@aashutoshrathi/word-wrap/package.json third_party/node/node_modules/@eslint/eslintrc/node_modules/globals/package.json third_party/node/node_modules/@lit/reactive-element/reactive-element.d.ts third_party/node/node_modules/@mediapipe/tasks-vision/vision.d.ts +third_party/node/node_modules/@rollup/wasm-node/dist/shared/index.js +third_party/node/node_modules/@rollup/wasm-node/dist/shared/rollup.js third_party/node/node_modules/@types/dom-speech-recognition/index.d.ts third_party/node/node_modules/@types/dom-webcodecs/index.d.ts third_party/node/node_modules/@types/google.analytics/index.d.ts @@ -11838,10 +11885,6 @@ third_party/node/node_modules/path-is-absolute/package.json third_party/node/node_modules/path-key/package.json third_party/node/node_modules/path-type/package.json third_party/node/node_modules/resolve-from/package.json -third_party/node/node_modules/rollup/dist/es/shared/node-entry.js -third_party/node/node_modules/rollup/dist/es/shared/watch.js -third_party/node/node_modules/rollup/dist/shared/index.js -third_party/node/node_modules/rollup/dist/shared/rollup.js third_party/node/node_modules/shebang-command/package.json third_party/node/node_modules/shebang-regex/package.json third_party/node/node_modules/slash/package.json @@ -11933,21 +11976,37 @@ third_party/openscreen/src/cast/standalone_sender/ffmpeg_glue.h third_party/openscreen/src/cast/standalone_sender/receiver_chooser.cc third_party/openscreen/src/cast/standalone_sender/remoting_sender.h third_party/openscreen/src/cast/standalone_sender/streaming_video_encoder.h +third_party/openscreen/src/cast/streaming/answer_messages.h third_party/openscreen/src/cast/streaming/capture_configs.h -third_party/openscreen/src/cast/streaming/clock_offset_estimator.h -third_party/openscreen/src/cast/streaming/compound_rtcp_parser.cc +third_party/openscreen/src/cast/streaming/capture_recommendations.h third_party/openscreen/src/cast/streaming/constants.h third_party/openscreen/src/cast/streaming/encoded_frame.h +third_party/openscreen/src/cast/streaming/environment.h +third_party/openscreen/src/cast/streaming/frame_id.h +third_party/openscreen/src/cast/streaming/impl/clock_offset_estimator.h +third_party/openscreen/src/cast/streaming/impl/compound_rtcp_parser.cc +third_party/openscreen/src/cast/streaming/impl/rtcp_common.cc +third_party/openscreen/src/cast/streaming/impl/rtp_defines.h +third_party/openscreen/src/cast/streaming/impl/sender_session_unittest.cc +third_party/openscreen/src/cast/streaming/impl/session_messenger_unittest.cc +third_party/openscreen/src/cast/streaming/impl/statistics_analyzer_unittest.cc +third_party/openscreen/src/cast/streaming/impl/statistics_collector.cc +third_party/openscreen/src/cast/streaming/offer_messages.h +third_party/openscreen/src/cast/streaming/public/constants.h +third_party/openscreen/src/cast/streaming/public/encoded_frame.h +third_party/openscreen/src/cast/streaming/public/receiver_constraints.h +third_party/openscreen/src/cast/streaming/public/receiver_session.h +third_party/openscreen/src/cast/streaming/public/sender.cc +third_party/openscreen/src/cast/streaming/receiver.h third_party/openscreen/src/cast/streaming/receiver_constraints.h +third_party/openscreen/src/cast/streaming/receiver_message.h third_party/openscreen/src/cast/streaming/receiver_session.h third_party/openscreen/src/cast/streaming/remoting_capabilities.h -third_party/openscreen/src/cast/streaming/rtcp_common.cc -third_party/openscreen/src/cast/streaming/rtp_defines.h -third_party/openscreen/src/cast/streaming/sender.cc -third_party/openscreen/src/cast/streaming/sender_session_unittest.cc -third_party/openscreen/src/cast/streaming/session_messenger_unittest.cc -third_party/openscreen/src/cast/streaming/statistics_analyzer_unittest.cc -third_party/openscreen/src/cast/streaming/statistics_collector.cc +third_party/openscreen/src/cast/streaming/rpc_messenger.h +third_party/openscreen/src/cast/streaming/sender.h +third_party/openscreen/src/cast/streaming/sender_session.h +third_party/openscreen/src/cast/streaming/session_messenger.h +third_party/openscreen/src/cast/streaming/statistics.h third_party/openscreen/src/cast/test/cast_socket_e2e_test.cc third_party/openscreen/src/discovery/common/reporting_client.h third_party/openscreen/src/discovery/dnssd/impl/dns_data_graph.h @@ -12541,6 +12600,7 @@ third_party/perfetto/src/android_internal/health_hal.cc third_party/perfetto/src/base/flat_hash_map_benchmark.cc third_party/perfetto/src/base/time.cc third_party/perfetto/src/base/utils.cc +third_party/perfetto/src/bigtrace/worker/repository_policies/gcs_trace_processor_loader.cc third_party/perfetto/src/profiling/common/proc_utils.cc third_party/perfetto/src/profiling/memory/client.cc third_party/perfetto/src/profiling/memory/sampler.h @@ -12569,6 +12629,7 @@ third_party/perfetto/src/traced/probes/android_log/android_log_data_source.cc third_party/perfetto/src/tracing/service/tracing_service_impl_unittest.cc third_party/perfetto/test/cts/AndroidTest.xml third_party/perfetto/test/cts/reporter/AndroidTest.xml +third_party/perfetto/test/trace_processor/diff_tests/parser/chrome/tests_v8.py third_party/perfetto/test/trace_processor/diff_tests/parser/simpleperf/tests.py third_party/perfetto/test/vts/AndroidTest.xml third_party/perfetto/tools/download_changed_screenshots.py @@ -12609,6 +12670,7 @@ third_party/perfetto/ui/src/open_perfetto_trace/index.html third_party/perfetto/ui/src/test/diff_viewer/script.js third_party/perfetto/ui/src/trace_processor/engine.ts third_party/perfetto/ui/src/widgets/hotkey_context.ts +third_party/polymer/v3_0/BUILD.gn third_party/polymer/v3_0/components-chromium/iron-a11y-keys-behavior/iron-a11y-keys-behavior.js third_party/polymer/v3_0/components-chromium/iron-overlay-behavior/iron-focusables-helper.js third_party/polymer/v3_0/components-chromium/iron-overlay-behavior/iron-overlay-manager.js @@ -13388,10 +13450,12 @@ third_party/re2/src/re2/testing/re2_test.cc third_party/re2/src/util/pcre.h third_party/rust/PRESUBMIT.py third_party/rust/adler/v1/BUILD.gn +third_party/rust/adler2/v2/BUILD.gn third_party/rust/aho_corasick/v1/BUILD.gn third_party/rust/anyhow/v1/BUILD.gn third_party/rust/bytemuck/v1/BUILD.gn third_party/rust/bytemuck_derive/v1/BUILD.gn +third_party/rust/byteorder/v1/BUILD.gn third_party/rust/cxx/v1/BUILD.gn third_party/rust/cxxbridge_cmd/v1/BUILD.gn third_party/rust/cxxbridge_flags/v1/BUILD.gn @@ -13401,6 +13465,7 @@ third_party/rust/itoa/v1/BUILD.gn third_party/rust/lazy_static/v1/BUILD.gn third_party/rust/memchr/v2/BUILD.gn third_party/rust/miniz_oxide/v0_7/BUILD.gn +third_party/rust/miniz_oxide/v0_8/BUILD.gn third_party/rust/proc_macro2/v1/BUILD.gn third_party/rust/prost/v0_12/BUILD.gn third_party/rust/prost_derive/v0_12/BUILD.gn @@ -13413,7 +13478,6 @@ third_party/rust/rstest/v0_17/BUILD.gn third_party/rust/rstest_macros/v0_17/BUILD.gn third_party/rust/rstest_reuse/v0_5/BUILD.gn third_party/rust/rustc_demangle_capi/v0_1/BUILD.gn -third_party/rust/rustc_version/v0_4/BUILD.gn third_party/rust/rustversion/v1/BUILD.gn third_party/rust/ryu/v1/BUILD.gn third_party/rust/semver/v1/BUILD.gn @@ -13431,6 +13495,8 @@ third_party/rust/unicode_ident/v1/BUILD.gn third_party/rust/unicode_linebreak/v0_1/BUILD.gn third_party/rust/unicode_width/v0_1/BUILD.gn third_party/rust/winapi_util/v0_1/BUILD.gn +third_party/rust/zerocopy/v0_7/BUILD.gn +third_party/rust/zerocopy_derive/v0_7/BUILD.gn third_party/s2cellid/src/s2/_fpcontractoff.h third_party/s2cellid/src/s2/r1interval.h third_party/s2cellid/src/s2/r2.h @@ -13454,12 +13520,14 @@ third_party/skia/PRESUBMIT.py third_party/skia/bench/DashBench.cpp third_party/skia/bench/DecodeBench.cpp third_party/skia/demos.skia.org/demos/image_decode_web_worker/index.html +third_party/skia/demos.skia.org/demos/mesh2d/index.html third_party/skia/demos.skia.org/demos/path_performance/index.html third_party/skia/demos.skia.org/demos/spreadsheet/index.html third_party/skia/demos.skia.org/demos/web_worker/index.html third_party/skia/demos.skia.org/demos/web_worker/main.js third_party/skia/demos.skia.org/demos/web_worker/worker.js third_party/skia/demos.skia.org/demos/webgpu/index.html +third_party/skia/example/external_client/src/ganesh_gl.cpp third_party/skia/example/external_client/src/gl_context_helper.mm third_party/skia/experimental/tools/pdf-comparison.py third_party/skia/fuzz/FuzzPathop.cpp @@ -13640,6 +13708,7 @@ third_party/skia/tests/RegionTest.cpp third_party/skia/tests/SkXmpTest.cpp third_party/skia/tests/StringTest.cpp third_party/skia/tests/TypefaceTest.cpp +third_party/skia/tests/graphite/precompile/ChromePrecompileTest.cpp third_party/skia/third_party/etc1/etc1.cpp third_party/skia/third_party/etc1/etc1.h third_party/skia/third_party/freetype2/include/freetype-android/freetype/config/ftoption.h @@ -13652,6 +13721,7 @@ third_party/skia/tools/flags/CommandLineFlags.h third_party/skia/tools/gpu/vk/VkTestMemoryAllocator.h third_party/skia/tools/perf-canvaskit-puppeteer/canvas_perf.js third_party/skia/tools/run-wasm-gm-tests/run-wasm-gm-tests.html +third_party/skia/tools/skia-client-search.html third_party/skia/tools/skp/generate_page_set.py third_party/skia/tools/skp/page_sets/other/OLD-skia_desktop_set.json third_party/skia/tools/skp/page_sets/other/OLD-skia_nexus10_set.json @@ -13897,6 +13967,131 @@ third_party/tflite/src/tensorflow/lite/delegates/nnapi/nnapi_delegate.h third_party/tflite/src/tensorflow/lite/delegates/nnapi/nnapi_delegate_c_api.h third_party/tflite/src/tensorflow/lite/experimental/acceleration/mini_benchmark/libjpeg_decoder.cc third_party/tflite/src/tensorflow/lite/experimental/acceleration/mini_benchmark/runner.cc +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/c/group/tflite.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/classes.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/DataType.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/Delegate.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/Interpreter.Options.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/Interpreter.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/InterpreterApi.Options.TfLiteRuntime.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/InterpreterApi.Options.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/InterpreterApi.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/InterpreterFactory.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/RuntimeFlavor.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/Tensor.QuantizationParams.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/Tensor.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/TensorFlowLite.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/gpu/CompatibilityList.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/gpu/GpuDelegate.Options.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/gpu/GpuDelegate.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options.GpuBackend.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/gpu/GpuDelegateFactory.Options.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/gpu/GpuDelegateFactory.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/audio/TensorAudio.TensorAudioFormat.Builder.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/audio/TensorAudio.TensorAudioFormat.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/audio/TensorAudio.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/common/FileUtil.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/common/SequentialProcessor.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/common/TensorProcessor.Builder.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/common/TensorProcessor.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/common/ops/CastOp.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/common/ops/DequantizeOp.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/common/ops/NormalizeOp.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/common/ops/QuantizeOp.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/image/BoundingBoxUtil.CoordinateType.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/image/BoundingBoxUtil.Type.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/image/BoundingBoxUtil.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/image/ColorSpaceType.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/image/ImageProcessor.Builder.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/image/ImageProcessor.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/image/ImageProperties.Builder.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/image/ImageProperties.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/image/MlImageAdapter.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/image/TensorImage.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/image/ops/ResizeOp.ResizeMethod.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/image/ops/ResizeOp.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/image/ops/ResizeWithCropOrPadOp.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/image/ops/Rot90Op.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/image/ops/TensorOperatorWrapper.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/image/ops/TransformToGrayscaleOp.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/label/Category.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/label/LabelUtil.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/label/TensorLabel.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/label/ops/LabelAxisOp.Builder.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/label/ops/LabelAxisOp.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/metadata/MetadataExtractor.QuantizationParams.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/metadata/MetadataExtractor.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/metadata/MetadataParser.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/model/Model.Builder.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/model/Model.Device.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/model/Model.Options.Builder.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/model/Model.Options.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/model/Model.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/tensorbuffer/TensorBuffer.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/tensorbuffer/TensorBufferFloat.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/support/tensorbuffer/TensorBufferUint8.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/audio/classifier/AudioClassifier.AudioClassifierOptions.Builder.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/audio/classifier/AudioClassifier.AudioClassifierOptions.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/audio/classifier/AudioClassifier.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/audio/classifier/Classifications.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/core/BaseOptions.Builder.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/core/BaseOptions.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/core/BaseTaskApi.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/core/ComputeSettings.Builder.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/core/ComputeSettings.Delegate.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/core/ComputeSettings.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/core/TaskJniUtils.MultipleBuffersHandleProvider.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/core/TaskJniUtils.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/core/package-summary.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/core/vision/ImageProcessingOptions.Builder.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/core/vision/ImageProcessingOptions.Orientation.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/core/vision/ImageProcessingOptions.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/gms/audio/TfLiteAudio.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/gms/text/TfLiteText.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/processor/NearestNeighbor.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/processor/SearcherOptions.Builder.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/processor/SearcherOptions.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/text/bertclu/BertCluAnnotator.BertCluAnnotatorOptions.Builder.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/text/bertclu/BertCluAnnotator.BertCluAnnotatorOptions.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/text/bertclu/BertCluAnnotator.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/text/bertclu/CluRequest.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/text/bertclu/CluResponse.CategoricalSlot.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/text/bertclu/CluResponse.Mention.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/text/bertclu/CluResponse.MentionedSlot.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/text/bertclu/CluResponse.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/text/nlclassifier/BertNLClassifier.BertNLClassifierOptions.Builder.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/text/nlclassifier/BertNLClassifier.BertNLClassifierOptions.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/text/nlclassifier/BertNLClassifier.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/text/nlclassifier/NLClassifier.NLClassifierOptions.Builder.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/text/nlclassifier/NLClassifier.NLClassifierOptions.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/text/nlclassifier/NLClassifier.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/text/qa/BertQuestionAnswerer.BertQuestionAnswererOptions.Builder.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/text/qa/BertQuestionAnswerer.BertQuestionAnswererOptions.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/text/qa/BertQuestionAnswerer.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/text/qa/QaAnswer.Pos.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/text/qa/QaAnswer.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/text/qa/QuestionAnswerer.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/text/searcher/TextSearcher.TextSearcherOptions.Builder.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/text/searcher/TextSearcher.TextSearcherOptions.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/text/searcher/TextSearcher.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/vision/classifier/Classifications.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/vision/classifier/ImageClassifier.ImageClassifierOptions.Builder.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/vision/classifier/ImageClassifier.ImageClassifierOptions.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/vision/classifier/ImageClassifier.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/vision/core/BaseVisionTaskApi.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/vision/detector/Detection.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/vision/detector/ObjectDetector.ObjectDetectorOptions.Builder.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/vision/detector/ObjectDetector.ObjectDetectorOptions.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/vision/detector/ObjectDetector.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/vision/searcher/ImageSearcher.ImageSearcherOptions.Builder.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/vision/searcher/ImageSearcher.ImageSearcherOptions.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/vision/searcher/ImageSearcher.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/vision/segmenter/ColoredLabel.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/vision/segmenter/ImageSegmenter.ImageSegmenterOptions.Builder.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/vision/segmenter/ImageSegmenter.ImageSegmenterOptions.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/vision/segmenter/ImageSegmenter.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/vision/segmenter/OutputType.html +third_party/tflite/src/tensorflow/lite/g3doc/api_docs/java/org/tensorflow/lite/task/vision/segmenter/Segmentation.html third_party/tflite/src/tensorflow/lite/g3doc/tools/build_java_api_docs.py third_party/tflite/src/tensorflow/lite/java/src/main/native/op_resolver_lazy_delegate_proxy.cc third_party/tflite/src/tensorflow/lite/kernels/ctc/ctc_beam_search.h @@ -13952,7 +14147,7 @@ third_party/tflite/src/third_party/xla/third_party/tsl/tsl/platform/windows/stac third_party/tflite/src/third_party/xla/third_party/tsl/tsl/platform/windows/stacktrace_handler.cc third_party/tflite/src/third_party/xla/xla/pjrt/c/pjrt_c_api.h third_party/tflite/src/third_party/xla/xla/pjrt/pjrt_api.cc -third_party/tflite/src/third_party/xla/xla/service/gpu/fusions/transpose.h +third_party/tflite/src/third_party/xla/xla/service/gpu/fusions/legacy/transpose.h third_party/tflite/src/third_party/xla/xla/service/gpu/fusions/transpose_mlir.h third_party/tflite/src/third_party/xla/xla/service/hlo_graph_dumper.cc third_party/tflite/src/third_party/xla/xla/service/hlo_verifier.cc @@ -14475,7 +14670,6 @@ third_party/webrtc/sdk/android/src/jni/jvm.cc third_party/webrtc/sdk/media_constraints.h third_party/webrtc/sdk/objc/api/peerconnection/RTCConfiguration.h third_party/webrtc/sdk/objc/components/renderer/metal/RTCMTLI420Renderer.mm -third_party/webrtc/test/fuzzers/BUILD.gn third_party/webrtc/test/test_flags.cc third_party/webrtc/test/test_main_lib.cc third_party/webrtc/test/testsupport/perf_test.h @@ -14621,6 +14815,7 @@ tools/accessibility/codereview/download_issue.py tools/accessibility/codereview/mph.py tools/accessibility/inspect/ax_utils.cc tools/accessibility/nvda/README.txt +tools/accessibility/rebase_dump_accessibility_tree_tests.py tools/android/android_studio/ChromiumInspections.xml tools/android/avd/3pp/fetch.py tools/android/checkstyle/chromium-style-5.0.xml @@ -14670,7 +14865,6 @@ tools/bisect_repackage/bisect_repackage.py tools/bisect_repackage/bisect_repackage_utils.py tools/bisect_test.py tools/boilerplate.py -tools/browserbench-webdriver/browserbench.py tools/captured_sites/refresh.py tools/check_git_config.py tools/checkbins/checkbins.py @@ -14702,20 +14896,22 @@ tools/clang/scripts/dashboard.py tools/clang/scripts/include-analysis.html tools/clang/scripts/package.py tools/clang/scripts/update.py +tools/clang/spanify/evaluate_patches.py tools/clang/spanify/extract_edits.py tools/clang/translation_unit/test_translation_unit.py tools/code_coverage/coverage.py tools/code_coverage/js_source_maps/create_js_source_maps/PRESUBMIT.py tools/cr/cr/base/android.py tools/cr/main.py +tools/crates/create_draft_comments.py tools/crates/create_update_cl.py tools/crates/gnrt/lib/test_metadata.json tools/crbug/crbug.js tools/crbug/pinpoint.js tools/crbug/user-activity.js tools/cygprofile/PRESUBMIT.py +tools/cygprofile/android_profile_tool.py tools/cygprofile/orderfile_generator_backend.py -tools/cygprofile/profile_android_startup.py tools/determinism/compare_build_artifacts.py tools/disable_tests/PRESUBMIT.py tools/disable_tests/disable.py @@ -14893,6 +15089,8 @@ tools/metrics/histograms/metadata/cryptohome/histograms.xml tools/metrics/histograms/metadata/custom_tabs/enums.xml tools/metrics/histograms/metadata/custom_tabs/histograms.xml tools/metrics/histograms/metadata/data/histograms.xml +tools/metrics/histograms/metadata/data_sharing/enums.xml +tools/metrics/histograms/metadata/data_sharing/histograms.xml tools/metrics/histograms/metadata/dev/enums.xml tools/metrics/histograms/metadata/dev/histograms.xml tools/metrics/histograms/metadata/disk/histograms.xml @@ -14948,6 +15146,8 @@ tools/metrics/histograms/metadata/language/histograms.xml tools/metrics/histograms/metadata/lens/enums.xml tools/metrics/histograms/metadata/lens/histograms.xml tools/metrics/histograms/metadata/leveldb_proto/histograms.xml +tools/metrics/histograms/metadata/linux/enums.xml +tools/metrics/histograms/metadata/linux/histograms.xml tools/metrics/histograms/metadata/local/histograms.xml tools/metrics/histograms/metadata/login/histograms.xml tools/metrics/histograms/metadata/mac/enums.xml @@ -14987,6 +15187,7 @@ tools/metrics/histograms/metadata/page/enums.xml tools/metrics/histograms/metadata/page/histograms.xml tools/metrics/histograms/metadata/password/enums.xml tools/metrics/histograms/metadata/password/histograms.xml +tools/metrics/histograms/metadata/payment/enums.xml tools/metrics/histograms/metadata/payment/histograms.xml tools/metrics/histograms/metadata/pdf/enums.xml tools/metrics/histograms/metadata/pdf/histograms.xml @@ -15034,6 +15235,8 @@ tools/metrics/histograms/metadata/search/histograms.xml tools/metrics/histograms/metadata/security/enums.xml tools/metrics/histograms/metadata/security/histograms.xml tools/metrics/histograms/metadata/segmentation_platform/histograms.xml +tools/metrics/histograms/metadata/sensitive_content/enums.xml +tools/metrics/histograms/metadata/sensitive_content/histograms.xml tools/metrics/histograms/metadata/service/enums.xml tools/metrics/histograms/metadata/service/histograms.xml tools/metrics/histograms/metadata/session/enums.xml @@ -15062,6 +15265,8 @@ tools/metrics/histograms/metadata/sync/histograms.xml tools/metrics/histograms/metadata/system/histograms.xml tools/metrics/histograms/metadata/tab/enums.xml tools/metrics/histograms/metadata/tab/histograms.xml +tools/metrics/histograms/metadata/toasts/enums.xml +tools/metrics/histograms/metadata/toasts/histograms.xml tools/metrics/histograms/metadata/translate/enums.xml tools/metrics/histograms/metadata/translate/histograms.xml tools/metrics/histograms/metadata/trusted_vault/enums.xml @@ -15071,6 +15276,8 @@ tools/metrics/histograms/metadata/ukm/histograms.xml tools/metrics/histograms/metadata/uma/enums.xml tools/metrics/histograms/metadata/uma/histograms.xml tools/metrics/histograms/metadata/update_engine/histograms.xml +tools/metrics/histograms/metadata/user_annotations/enums.xml +tools/metrics/histograms/metadata/user_annotations/histograms.xml tools/metrics/histograms/metadata/user_education/histograms.xml tools/metrics/histograms/metadata/v8/enums.xml tools/metrics/histograms/metadata/v8/histograms.xml @@ -15408,6 +15615,7 @@ tools/typescript/definitions/pending.d.ts tools/typescript/definitions/system_display.d.ts tools/usb_gadget/gadget.py tools/usb_gadget/msos20_descriptors.py +tools/utr/builders.py tools/utr/cipd.py tools/utr/output_adapter_test.py tools/utr/recipe.py @@ -15442,6 +15650,12 @@ ui/accessibility/platform/ax_platform_node_delegate_utils_win.cc ui/accessibility/platform/ax_platform_node_textrangeprovider_win.cc ui/accessibility/platform/ax_platform_node_textrangeprovider_win_unittest.cc ui/accessibility/platform/ax_platform_node_win.cc +ui/accessibility/platform/browser_accessibility.h +ui/accessibility/platform/browser_accessibility_manager.cc +ui/accessibility/platform/browser_accessibility_manager.h +ui/accessibility/platform/browser_accessibility_manager_mac.mm +ui/accessibility/platform/browser_accessibility_manager_win.cc +ui/accessibility/platform/fuchsia/browser_accessibility_fuchsia.h ui/android/color_utils_android_unittest.cc ui/android/java/res/values/strings.xml ui/aura/native_window_occlusion_tracker_win.cc @@ -15483,6 +15697,7 @@ ui/color/color_provider_key.h ui/display/display_switches.cc ui/display/display_transform.cc ui/display/mac/cv_display_link_mac.mm +ui/display/manager/tools/index.html ui/display/win/test/virtual_display_util_win.cc ui/events/android/motion_event_android_unittest.cc ui/events/ash/keyboard_capability_unittest.cc @@ -15498,7 +15713,6 @@ ui/events/keycodes/keyboard_codes_posix.h ui/events/keycodes/platform_key_map_win.cc ui/events/ozone/evdev/touch_filter/palm_detection_filter_factory.h ui/events/test/keyboard_layout_win.cc -ui/events/velocity_tracker/motion_event_buffer.h ui/events/win/events_win.cc ui/events/win/events_win_utils.cc ui/events/win/modifier_keyboard_hook_win.cc @@ -15523,6 +15737,7 @@ ui/file_manager/integration_tests/file_manager/office.ts ui/file_manager/integration_tests/remote_call.ts ui/file_manager/integration_tests/test_util.ts ui/gfx/PRESUBMIT.py +ui/gfx/codec/vector_wstream.cc ui/gfx/color_analysis.h ui/gfx/color_transform.cc ui/gfx/font.h diff --git a/domain_substitution/domain_substitution.py b/domain_substitution/domain_substitution.py index 84c0adda33c8dd1059a026e1143d48f62598661b..91d3034f62bde5e7084c3d5f95c94b3325ad183f 100644 --- a/domain_substitution/domain_substitution.py +++ b/domain_substitution/domain_substitution.py @@ -284,7 +284,7 @@ def revert_substitution(domainsub_cache, source_tree): dir=str(resolved_tree)) as tmp_extract_name: extract_path = Path(tmp_extract_name) get_logger().debug('Extracting domain substitution cache...') - extract_tar_file(domainsub_cache, extract_path, None, False) + extract_tar_file(domainsub_cache, extract_path, None, False, None) # Validate source tree file hashes match get_logger().debug('Validating substituted files in source tree...') diff --git a/domain_substitution/prune_binaries.py b/domain_substitution/prune_binaries.py index 934454b07e3673ba8fc572854dba2940699fe4ef..0ebfcdc521a1aef8525f14c21b439627eae49878 100644 --- a/domain_substitution/prune_binaries.py +++ b/domain_substitution/prune_binaries.py @@ -17,23 +17,16 @@ from _common import ENCODING, get_logger, add_common_params # List of paths to prune if they exist, excluded from domain_substitution and pruning lists # These allow the lists to be compatible between cloned and tarball sources CONTINGENT_PATHS = ( - # Sources + # Overridable git sources 'third_party/angle/third_party/VK-GL-CTS/src/', - 'third_party/llvm/', - 'third_party/rust-src/', - # Binaries + 'third_party/instrumented_libs/', + # CIPD sources 'buildtools/linux64/', 'buildtools/reclient/', - 'third_party/android_rust_toolchain/', 'third_party/apache-linux/', 'third_party/checkstyle/', - 'third_party/dawn/third_party/ninja/', - 'third_party/dawn/tools/golang/', - 'third_party/depot_tools/external_bin/', - 'third_party/devtools-frontend/src/third_party/esbuild/', 'third_party/google-java-format/', 'third_party/libei/', - 'third_party/llvm-build-tools/', 'third_party/ninja/', 'third_party/screen-ai/', 'third_party/siso/', @@ -42,6 +35,21 @@ CONTINGENT_PATHS = ( 'tools/luci-go/', 'tools/resultdb/', 'tools/skia_goldctl/linux/', + # GCS sources + 'base/tracing/test/data', + 'build/linux/debian_bullseye_amd64-sysroot/', + 'build/linux/debian_bullseye_i386-sysroot/', + 'buildtools/linux64-format/', + 'third_party/blink/renderer/core/css/perftest_data/', + 'third_party/js_code_coverage/', + 'third_party/llvm-build/Release+Asserts/', + 'third_party/node/linux/', + 'third_party/opus/tests/resources/', + 'third_party/rust-toolchain/', + 'third_party/subresource-filter-ruleset/data', + 'third_party/test_fonts/test_fonts', + 'third_party/tfhub_models/testdata/', + 'tools/perf/page_sets/maps_perf_test/dataset/', ) @@ -88,18 +96,26 @@ def _prune_path(path): node.rmdir() -def prune_dirs(unpack_root): +def prune_dirs(unpack_root, keep_contingent_paths, sysroot): """ Delete all files and directories in pycache and CONTINGENT_PATHS directories. unpack_root is a pathlib.Path to the source tree + keep_contingent_paths is a boolean that determines if the contingent paths should be pruned + sysroot is a string that optionally defines a sysroot to exempt from pruning """ for pycache in unpack_root.rglob('__pycache__'): _prune_path(pycache) - get_logger().info('Removing Contingent Paths') - for cpath in CONTINGENT_PATHS: - get_logger().info('%s: %s', 'Exists' if Path(cpath).exists() else 'Absent', cpath) - _prune_path(unpack_root / cpath) + if keep_contingent_paths: + get_logger().info('Keeping Contingent Paths') + else: + get_logger().info('Removing Contingent Paths') + for cpath in CONTINGENT_PATHS: + if sysroot and f'{sysroot}-sysroot' in cpath: + get_logger().info('%s: %s', 'Exempt', cpath) + continue + get_logger().info('%s: %s', 'Exists' if Path(cpath).exists() else 'Absent', cpath) + _prune_path(unpack_root / cpath) def _callback(args): @@ -108,7 +124,7 @@ def _callback(args): sys.exit(1) if not args.pruning_list.exists(): get_logger().error('Could not find the pruning list: %s', args.pruning_list) - prune_dirs(args.directory) + prune_dirs(args.directory, args.keep_contingent_paths, args.sysroot) prune_list = tuple(filter(len, args.pruning_list.read_text(encoding=ENCODING).splitlines())) unremovable_files = prune_files(args.directory, prune_list) if unremovable_files: @@ -123,6 +139,14 @@ def main(): parser = argparse.ArgumentParser() parser.add_argument('directory', type=Path, help='The directory to apply binary pruning.') parser.add_argument('pruning_list', type=Path, help='Path to pruning.list') + parser.add_argument('--keep-contingent-paths', + action='store_true', + help=('Skip pruning the contingent paths. ' + 'Useful when building with the Google tooling is desired.')) + parser.add_argument('--sysroot', + choices=('amd64', 'i386'), + help=('Skip pruning the sysroot for the specified architecture. ' + 'Not needed when --keep-contingent-paths is used.')) add_common_params(parser) parser.set_defaults(callback=_callback) diff --git a/build/copy_cromite_patches.sh b/update_cromite_patches.sh similarity index 72% rename from build/copy_cromite_patches.sh rename to update_cromite_patches.sh index c47de496c2cbf78ea7f29d27d7b3c503aac3625a..db4306e0ab471c14cb9b415c7ee632b97c319a19 100755 --- a/build/copy_cromite_patches.sh +++ b/update_cromite_patches.sh @@ -1,6 +1,10 @@ #!/bin/bash -branch="v129.0.6668.71-385912cca32ce2d15a3e295f79d5c4dc3a6f7785" +root_dir=$(dirname "$(readlink -f "$0")") + +cd $root_dir/build + +branch="v130.0.6723.67-4ea5bf603a6c721f35dce9edcab04ff4f03ecbaa" if [ -d cromite ]; then cd cromite git fetch origin $branch @@ -10,6 +14,8 @@ else git clone https://gitlab.e.foundation/e/os/cromite.git -b $branch cromite --depth=1 fi +rm -rf cromite_patches/* + cromite_patches_list=$(cat "cromite_patches_list.txt") for file in $cromite_patches_list; do cp cromite/build/patches/$file "cromite_patches/$file" diff --git a/domain_substitution/copy_domain_substitution.sh b/update_domain_substitution.sh similarity index 68% rename from domain_substitution/copy_domain_substitution.sh rename to update_domain_substitution.sh index 124967827103f94922dd2e619c8b42043bbc60a9..12358e759a24d174e22b5c87cd350c4f5802f2b3 100755 --- a/domain_substitution/copy_domain_substitution.sh +++ b/update_domain_substitution.sh @@ -1,7 +1,10 @@ #!/bin/bash +root_dir=$(dirname "$(readlink -f "$0")") -branch="129.0.6668.70-1" +cd $root_dir/domain_substitution + +branch="130.0.6723.69-1" if [ -d ungoogled-chromium ]; then cd ungoogled-chromium git fetch origin $branch @@ -13,6 +16,8 @@ fi grep -vFf domain_blacklist.list ungoogled-chromium/domain_substitution.list > domain_substitution.list cp -r ungoogled-chromium/domain_regex.list domain_regex.list +cd ungoogled-chromium/utils +cp _common.py domain_substitution.py _extraction.py prune_binaries.py ../../ echo "Copy done" diff --git a/update_e_patches.sh b/update_e_patches.sh new file mode 100755 index 0000000000000000000000000000000000000000..7526ea8939e16fb5ded2173a3fed9d66c070525c --- /dev/null +++ b/update_e_patches.sh @@ -0,0 +1,56 @@ +#!/bin/bash + +root_dir=$(dirname "$(readlink -f "$0")") + +patch_list_file="${root_dir}/build/cromite_patches_list.txt" +output_patch_file="${root_dir}/build/e_patches_list.txt" +output_patch_dir="${root_dir}/build/e_patches" + +if [ ! -f "$patch_list_file" ]; then + echo "Error: $patch_list_file does not exist." + exit 1 +fi + +if [ -f "$output_patch_file" ]; then + rm "$output_patch_file" +fi + +if [ -d "$output_patch_dir" ]; then + rm -rf "$output_patch_dir" +fi + +last_patch=$(tail -n 1 "$patch_list_file") +subject=${last_patch%.patch} +formatted_subject=${subject//-/" "} + +cd ${root_dir}/src || exit 1 + +chromium_commit_hash=$(git log --pretty=format:"%H %s" | grep -F "$formatted_subject" | head -n 1 | awk '{print $1}') + +if [ -z "$chromium_commit_hash" ]; then + echo "Error: Could not retrieve commit hash for the last patch subject: $formatted_subject" + exit 1 +fi + +> "$output_patch_file" +mkdir -p ${root_dir}/build/e_patches + +# Patches to ignore +ignore_patches=("Browser-Replace-Chrome-with-Browser.patch" "Browser-Automated-domain-substitution.patch") + +for commit in $(git rev-list --reverse "$chromium_commit_hash"..HEAD); do + subject=$(git log -n 1 --pretty=format:%s "$commit" | tr -d '[:punct:]') + formatted_subject=${subject// /-} + patch_filename="${formatted_subject}.patch" + + # Check if the patch filename is in the ignore list + if [[ " ${ignore_patches[@]} " =~ " ${patch_filename} " ]]; then + echo "Ignoring patch: $patch_filename" + continue + fi + + echo "Creating patch: $patch_filename" + git format-patch -1 --stdout "$commit" --subject-prefix="" > "$patch_filename" + echo "$patch_filename" >> "$output_patch_file" + mv "$patch_filename" "${root_dir}/build/e_patches/" +done