瀏覽代碼

Update to Chromium 99.0.4844.45

Blaise 2 年之前
父節點
當前提交
2efea72ade
共有 63 個文件被更改,包括 750 次插入739 次删除
  1. 1 1
      chromium_version.txt
  2. 133 150
      domain_substitution.list
  3. 3 3
      patches/core/debian/disable/unrar.patch
  4. 48 44
      patches/core/inox-patchset/0001-fix-building-without-safebrowsing.patch
  5. 1 1
      patches/core/inox-patchset/0003-disable-autofill-download-manager.patch
  6. 2 2
      patches/core/inox-patchset/0005-disable-default-extensions.patch
  7. 1 1
      patches/core/inox-patchset/0009-disable-google-ipv6-probes.patch
  8. 1 1
      patches/core/inox-patchset/0015-disable-update-pings.patch
  9. 1 1
      patches/core/inox-patchset/0021-disable-rlz.patch
  10. 6 17
      patches/core/iridium-browser/all-add-trk-prefixes-to-possibly-evil-connections.patch
  11. 1 1
      patches/core/iridium-browser/safe_browsing-disable-incident-reporting.patch
  12. 2 2
      patches/core/iridium-browser/safe_browsing-disable-reporting-of-safebrowsing-over.patch
  13. 15 13
      patches/core/ungoogled-chromium/block-trk-and-subdomains.patch
  14. 1 1
      patches/core/ungoogled-chromium/disable-crash-reporter.patch
  15. 13 22
      patches/core/ungoogled-chromium/disable-floc.patch
  16. 5 5
      patches/core/ungoogled-chromium/disable-google-host-detection.patch
  17. 2 2
      patches/core/ungoogled-chromium/disable-mei-preload.patch
  18. 17 21
      patches/core/ungoogled-chromium/disable-privacy-sandbox.patch
  19. 1 1
      patches/core/ungoogled-chromium/disable-signin.patch
  20. 1 1
      patches/core/ungoogled-chromium/disable-untraceable-urls.patch
  21. 2 2
      patches/core/ungoogled-chromium/disable-webstore-urls.patch
  22. 6 6
      patches/core/ungoogled-chromium/doh-changes.patch
  23. 1 1
      patches/core/ungoogled-chromium/fix-building-with-prunned-binaries.patch
  24. 3 3
      patches/core/ungoogled-chromium/fix-building-without-enabling-reporting.patch
  25. 4 4
      patches/core/ungoogled-chromium/fix-building-without-one-click-signin.patch
  26. 144 131
      patches/core/ungoogled-chromium/fix-building-without-safebrowsing.patch
  27. 138 128
      patches/core/ungoogled-chromium/remove-unused-preferences-fields.patch
  28. 3 3
      patches/core/ungoogled-chromium/toggle-translation-via-switch.patch
  29. 26 26
      patches/extra/bromite/fingerprinting-flags-client-rects-and-measuretext.patch
  30. 8 8
      patches/extra/bromite/flag-fingerprinting-canvas-image-data-noise.patch
  31. 7 7
      patches/extra/bromite/flag-max-connections-per-host.patch
  32. 2 2
      patches/extra/debian/disable/welcome-page.patch
  33. 4 15
      patches/extra/inox-patchset/0006-modify-default-prefs.patch
  34. 1 1
      patches/extra/inox-patchset/0008-restore-classic-ntp.patch
  35. 1 1
      patches/extra/inox-patchset/0018-disable-first-run-behaviour.patch
  36. 5 17
      patches/extra/iridium-browser/Remove-EV-certificates.patch
  37. 3 7
      patches/extra/iridium-browser/browser-disable-profile-auto-import-on-first-run.patch
  38. 6 6
      patches/extra/ungoogled-chromium/add-flag-for-close-confirmation.patch
  39. 1 1
      patches/extra/ungoogled-chromium/add-flag-for-custom-ntp.patch
  40. 1 1
      patches/extra/ungoogled-chromium/add-flag-for-omnibox-autocomplete-filtering.patch
  41. 5 5
      patches/extra/ungoogled-chromium/add-flag-for-pdf-plugin-name.patch
  42. 1 1
      patches/extra/ungoogled-chromium/add-flag-for-qr-generator.patch
  43. 6 6
      patches/extra/ungoogled-chromium/add-flag-for-search-engine-collection.patch
  44. 1 1
      patches/extra/ungoogled-chromium/add-flag-for-tab-hover-cards.patch
  45. 1 1
      patches/extra/ungoogled-chromium/add-flag-for-tabsearch-button.patch
  46. 3 3
      patches/extra/ungoogled-chromium/add-flag-to-clear-data-on-exit.patch
  47. 1 1
      patches/extra/ungoogled-chromium/add-flag-to-close-window-with-last-tab.patch
  48. 1 1
      patches/extra/ungoogled-chromium/add-flag-to-configure-extension-downloading.patch
  49. 1 1
      patches/extra/ungoogled-chromium/add-flag-to-convert-popups-to-tabs.patch
  50. 1 1
      patches/extra/ungoogled-chromium/add-flag-to-force-punycode-hostnames.patch
  51. 1 1
      patches/extra/ungoogled-chromium/add-flag-to-scroll-tabs.patch
  52. 1 1
      patches/extra/ungoogled-chromium/add-flag-to-show-avatar-button.patch
  53. 8 8
      patches/extra/ungoogled-chromium/add-ipv6-probing-option.patch
  54. 10 10
      patches/extra/ungoogled-chromium/add-suggestions-url-field.patch
  55. 1 1
      patches/extra/ungoogled-chromium/add-ungoogled-flag-headers.patch
  56. 7 7
      patches/extra/ungoogled-chromium/disable-dial-repeating-discovery.patch
  57. 9 9
      patches/extra/ungoogled-chromium/disable-download-quarantine.patch
  58. 1 1
      patches/extra/ungoogled-chromium/disable-formatting-in-omnibox.patch
  59. 1 1
      patches/extra/ungoogled-chromium/enable-page-saving-on-more-pages.patch
  60. 3 3
      patches/extra/ungoogled-chromium/enable-paste-and-go-new-tab-button.patch
  61. 2 2
      patches/extra/ungoogled-chromium/remove-disable-setuid-sandbox-as-bad-flag.patch
  62. 11 11
      patches/extra/ungoogled-chromium/remove-uneeded-ui.patch
  63. 53 3
      pruning.list

+ 1 - 1
chromium_version.txt

@@ -1 +1 @@
-98.0.4758.102
+99.0.4844.45

文件差異過大導致無法顯示
+ 133 - 150
domain_substitution.list


+ 3 - 3
patches/core/debian/disable/unrar.patch

@@ -4,13 +4,13 @@ bug: http://bugs.debian.org/914487
 
 --- a/chrome/browser/safe_browsing/download_protection/file_analyzer.cc
 +++ b/chrome/browser/safe_browsing/download_protection/file_analyzer.cc
-@@ -95,7 +95,7 @@ void FileAnalyzer::Start(const base::Fil
+@@ -96,7 +96,7 @@ void FileAnalyzer::Start(const base::Fil
    if (inspection_type == DownloadFileType::ZIP) {
      StartExtractZipFeatures();
    } else if (inspection_type == DownloadFileType::RAR) {
 -    StartExtractRarFeatures();
 +    LOG(WARNING) << "Safebrowser inspection of rar files is disabled in this build";
- #if defined(OS_MAC)
+ #if BUILDFLAG(IS_MAC)
    } else if (inspection_type == DownloadFileType::DMG) {
      StartExtractDmgFeatures();
 --- a/chrome/common/safe_browsing/BUILD.gn
@@ -72,7 +72,7 @@ bug: http://bugs.debian.org/914487
 -#include "chrome/common/safe_browsing/rar_analyzer.h"
  #include "chrome/common/safe_browsing/zip_analyzer.h"
  
- #if defined(OS_MAC)
+ #if BUILDFLAG(IS_MAC)
 @@ -46,8 +45,7 @@ void SafeArchiveAnalyzer::AnalyzeRarFile
                                           AnalyzeRarFileCallback callback) {
    DCHECK(rar_file.IsValid());

+ 48 - 44
patches/core/inox-patchset/0001-fix-building-without-safebrowsing.patch

@@ -1,6 +1,6 @@
 --- a/chrome/browser/BUILD.gn
 +++ b/chrome/browser/BUILD.gn
-@@ -2204,7 +2204,6 @@ static_library("browser") {
+@@ -2199,7 +2199,6 @@ static_library("browser") {
      "//components/reputation/core:proto",
      "//components/resources",
      "//components/safe_browsing/content/browser",
@@ -8,7 +8,7 @@
      "//components/safe_browsing/content/browser:safe_browsing_service",
      "//components/safe_browsing/content/browser/password_protection",
      "//components/safe_browsing/content/browser/web_ui",
-@@ -3758,8 +3757,6 @@ static_library("browser") {
+@@ -3737,8 +3736,6 @@ static_library("browser") {
        "download/download_commands.h",
        "download/download_crx_util.cc",
        "download/download_crx_util.h",
@@ -42,7 +42,7 @@
    virtual subresource_filter::RulesetService*
 --- a/chrome/browser/browser_process_impl.cc
 +++ b/chrome/browser/browser_process_impl.cc
-@@ -69,7 +69,6 @@
+@@ -70,7 +70,6 @@
  #include "chrome/browser/printing/print_preview_dialog_controller.h"
  #include "chrome/browser/profiles/profile_manager.h"
  #include "chrome/browser/resource_coordinator/resource_coordinator_parts.h"
@@ -50,7 +50,7 @@
  #include "chrome/browser/shell_integration.h"
  #include "chrome/browser/site_isolation/prefs_observer.h"
  #include "chrome/browser/ssl/secure_origin_prefs_observer.h"
-@@ -395,8 +394,6 @@ void BrowserProcessImpl::StartTearDown()
+@@ -394,8 +393,6 @@ void BrowserProcessImpl::StartTearDown()
  
    metrics_services_manager_.reset();
    intranet_redirect_detector_.reset();
@@ -59,7 +59,7 @@
    network_time_tracker_.reset();
  #if BUILDFLAG(ENABLE_PLUGINS)
    plugins_resource_service_.reset();
-@@ -1021,14 +1018,6 @@ StatusTray* BrowserProcessImpl::status_t
+@@ -1020,14 +1017,6 @@ StatusTray* BrowserProcessImpl::status_t
    return status_tray_.get();
  }
  
@@ -74,7 +74,7 @@
  subresource_filter::RulesetService*
  BrowserProcessImpl::subresource_filter_ruleset_service() {
    DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
-@@ -1282,26 +1271,6 @@ void BrowserProcessImpl::CreateBackgroun
+@@ -1280,26 +1269,6 @@ void BrowserProcessImpl::CreateBackgroun
  #endif
  }
  
@@ -123,15 +123,15 @@
        subresource_filter_ruleset_service_;
 --- a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.cc
 +++ b/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.cc
-@@ -66,7 +66,6 @@
+@@ -65,7 +65,6 @@
+ #include "chrome/browser/profiles/keep_alive/profile_keep_alive_types.h"
+ #include "chrome/browser/profiles/keep_alive/scoped_profile_keep_alive.h"
  #include "chrome/browser/profiles/profile.h"
- #include "chrome/browser/profiles/profile_keep_alive_types.h"
- #include "chrome/browser/profiles/scoped_profile_keep_alive.h"
 -#include "chrome/browser/safe_browsing/safe_browsing_service.h"
  #include "chrome/browser/search_engines/template_url_service_factory.h"
  #include "chrome/browser/share/share_history.h"
  #include "chrome/browser/share/share_ranking.h"
-@@ -633,10 +632,6 @@ void ChromeBrowsingDataRemoverDelegate::
+@@ -632,10 +631,6 @@ void ChromeBrowsingDataRemoverDelegate::
      base::RecordAction(UserMetricsAction("ClearBrowsingData_Cookies"));
  
      network::mojom::NetworkContext* safe_browsing_context = nullptr;
@@ -140,11 +140,11 @@
 -    if (sb_service)
 -      safe_browsing_context = sb_service->GetNetworkContext(profile_);
  
-     browsing_data::RemoveEmbedderCookieData(
-         delete_begin, delete_end, filter_builder, host_content_settings_map_,
+     if (!filter_builder->IsCrossSiteClearSiteData()) {
+       browsing_data::RemoveEmbedderCookieData(
 --- a/chrome/browser/chrome_content_browser_client.cc
 +++ b/chrome/browser/chrome_content_browser_client.cc
-@@ -936,34 +936,6 @@ void SetApplicationLocaleOnIOThread(cons
+@@ -940,34 +940,6 @@ void SetApplicationLocaleOnIOThread(cons
    GetIOThreadApplicationLocale() = locale;
  }
  
@@ -179,7 +179,7 @@
  #if BUILDFLAG(ENABLE_EXTENSIONS)
  
  AppLoadedInTabSource ClassifyAppLoadedInTabSource(
-@@ -1450,7 +1422,6 @@ void ChromeContentBrowserClient::PostAft
+@@ -1459,7 +1431,6 @@ void ChromeContentBrowserClient::PostAft
    InitNetworkContextsParentDirectory();
  
    DCHECK_CURRENTLY_ON(BrowserThread::UI);
@@ -187,7 +187,7 @@
  }
  
  bool ChromeContentBrowserClient::IsBrowserStartupComplete() {
-@@ -4252,7 +4223,7 @@ ChromeContentBrowserClient::CreateThrott
+@@ -4244,7 +4215,7 @@ ChromeContentBrowserClient::CreateThrott
    content::WebContents* web_contents = handle->GetWebContents();
    throttles.push_back(std::make_unique<SSLErrorNavigationThrottle>(
        handle,
@@ -196,7 +196,7 @@
        base::BindOnce(&HandleSSLErrorWrapper), base::BindOnce(&IsInHostedApp),
        base::BindOnce(
            &ShouldIgnoreSslInterstitialBecauseNavigationDefaultedToHttps)));
-@@ -4281,16 +4252,6 @@ ChromeContentBrowserClient::CreateThrott
+@@ -4273,16 +4244,6 @@ ChromeContentBrowserClient::CreateThrott
                     &throttles);
  #endif
  
@@ -251,7 +251,7 @@
 -  }
  }
  
- #if defined(OS_ANDROID)
+ #if BUILDFLAG(IS_ANDROID)
 @@ -790,16 +783,6 @@ void ChromeDownloadManagerDelegate::Choo
  
  void ChromeDownloadManagerDelegate::SanitizeSavePackageResourceName(
@@ -271,7 +271,7 @@
  void ChromeDownloadManagerDelegate::SanitizeDownloadParameters(
 --- a/chrome/browser/download/download_item_model.cc
 +++ b/chrome/browser/download/download_item_model.cc
-@@ -86,7 +86,7 @@ class DownloadItemModelData : public bas
+@@ -87,7 +87,7 @@ class DownloadItemModelData : public bas
  
    // Danger level of the file determined based on the file type and whether
    // there was a user action associated with the download.
@@ -280,7 +280,7 @@
  
    // Whether the download is currently being revived.
    bool is_being_revived_;
-@@ -123,7 +123,7 @@ DownloadItemModelData::DownloadItemModel
+@@ -124,7 +124,7 @@ DownloadItemModelData::DownloadItemModel
      : should_show_in_shelf_(true),
        was_ui_notified_(false),
        should_prefer_opening_in_browser_(false),
@@ -289,7 +289,7 @@
        is_being_revived_(false) {}
  
  }  // namespace
-@@ -381,13 +381,13 @@ void DownloadItemModel::SetShouldPreferO
+@@ -382,13 +382,13 @@ void DownloadItemModel::SetShouldPreferO
    data->should_prefer_opening_in_browser_ = preference;
  }
  
@@ -306,7 +306,7 @@
    DownloadItemModelData* data = DownloadItemModelData::GetOrCreate(download_);
    data->danger_level_ = danger_level;
  }
-@@ -599,9 +599,6 @@ bool DownloadItemModel::IsCommandEnabled
+@@ -600,9 +600,6 @@ bool DownloadItemModel::IsCommandEnabled
        // filename. Don't base an "Always open" decision based on it. Also
        // exclude extensions.
        return download_->CanOpenDownload() &&
@@ -347,7 +347,7 @@
    extension.erase(0, 1);
 --- a/chrome/browser/download/download_target_determiner.cc
 +++ b/chrome/browser/download/download_target_determiner.cc
-@@ -297,13 +297,6 @@ base::FilePath DownloadTargetDeterminer:
+@@ -298,13 +298,6 @@ base::FilePath DownloadTargetDeterminer:
        download_->GetURL(), download_->GetContentDisposition(), referrer_charset,
        suggested_filename, sniffed_mime_type, default_filename);
  
@@ -361,7 +361,7 @@
    // If no mime type or explicitly specified a name, don't replace file
    // extension.
    if (sniffed_mime_type.empty() || !suggested_filename.empty())
-@@ -1113,29 +1106,7 @@ DownloadFileType::DangerLevel DownloadTa
+@@ -1114,29 +1107,7 @@ DownloadFileType::DangerLevel DownloadTa
        download_->HasUserGesture())
      return DownloadFileType::NOT_DANGEROUS;
  
@@ -682,14 +682,14 @@
    // SimpleURLLoader -> (owned loader, extension id).
 --- a/chrome/browser/metrics/chrome_metrics_service_client.cc
 +++ b/chrome/browser/metrics/chrome_metrics_service_client.cc
-@@ -825,9 +825,6 @@ void ChromeMetricsServiceClient::Registe
+@@ -835,9 +835,6 @@ void ChromeMetricsServiceClient::Registe
    metrics_service_->RegisterMetricsProvider(
        std::make_unique<HttpsEngagementMetricsProvider>());
  
 -  metrics_service_->RegisterMetricsProvider(
 -      std::make_unique<CertificateReportingMetricsProvider>());
 -
- #if !defined(OS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH)
+ #if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH)
    metrics_service_->RegisterMetricsProvider(
        std::make_unique<UpgradeMetricsProvider>());
 --- a/chrome/browser/net/trial_comparison_cert_verifier_controller.cc
@@ -706,17 +706,17 @@
  // static
 --- a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
 +++ b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
-@@ -307,7 +307,6 @@ void ChromeBrowserMainExtraPartsProfiles
+@@ -311,7 +311,6 @@ void ChromeBrowserMainExtraPartsProfiles
  #if BUILDFLAG(IS_CHROMEOS_LACROS)
    CertDbInitializerFactory::GetInstance();
  #endif
 -  CertificateReportingServiceFactory::GetInstance();
- #if !defined(OS_ANDROID)
+ #if !BUILDFLAG(IS_ANDROID)
    ChromeBrowsingDataLifetimeManagerFactory::GetInstance();
  #endif
 --- a/chrome/browser/profiles/profile_impl.cc
 +++ b/chrome/browser/profiles/profile_impl.cc
-@@ -93,7 +93,6 @@
+@@ -95,7 +95,6 @@
  #include "chrome/browser/profiles/profile_metrics.h"
  #include "chrome/browser/push_messaging/push_messaging_service_factory.h"
  #include "chrome/browser/push_messaging/push_messaging_service_impl.h"
@@ -772,7 +772,7 @@
  
    if (safe_browsing_mode != 0) {
      # "Safe Browsing Basic" files used for safe browsing in full mode
-@@ -440,6 +442,7 @@ static_library("advanced_protection") {
+@@ -442,6 +444,7 @@ static_library("advanced_protection") {
  }
  
  source_set("metrics_collector") {
@@ -780,7 +780,7 @@
    sources = [
      "safe_browsing_metrics_collector_factory.cc",
      "safe_browsing_metrics_collector_factory.h",
-@@ -457,6 +460,7 @@ source_set("metrics_collector") {
+@@ -459,6 +462,7 @@ source_set("metrics_collector") {
      "//components/safe_browsing/core/common:safe_browsing_prefs",
      "//content/public/browser",
    ]
@@ -830,7 +830,7 @@
 -              MALICIOUS_CONTENT_STATUS_SIGNED_IN_SYNC_PASSWORD_REUSE;
 -        }
 -#endif
--        FALLTHROUGH;
+-        [[fallthrough]];
 -      case safe_browsing::SB_THREAT_TYPE_SIGNED_IN_NON_SYNC_PASSWORD_REUSE:
 -#if BUILDFLAG(FULL_SAFE_BROWSING)
 -        if (safe_browsing::ChromePasswordProtectionService::
@@ -840,7 +840,7 @@
 -              MALICIOUS_CONTENT_STATUS_SIGNED_IN_NON_SYNC_PASSWORD_REUSE;
 -        }
 -#endif
--        FALLTHROUGH;
+-        [[fallthrough]];
 -      case safe_browsing::SB_THREAT_TYPE_ENTERPRISE_PASSWORD_REUSE:
 -#if BUILDFLAG(FULL_SAFE_BROWSING)
 -        if (safe_browsing::ChromePasswordProtectionService::
@@ -882,17 +882,17 @@
  
 --- a/chrome/browser/ui/BUILD.gn
 +++ b/chrome/browser/ui/BUILD.gn
-@@ -4061,7 +4061,6 @@ static_library("ui") {
-       "views/device_chooser_content_view.h",
-       "views/devtools_process_observer.cc",
+@@ -4083,7 +4083,6 @@ static_library("ui") {
        "views/devtools_process_observer.h",
+       "views/download/bubble/download_toolbar_button_view.cc",
+       "views/download/bubble/download_toolbar_button_view.h",
 -      "views/download/download_danger_prompt_views.cc",
        "views/download/download_in_progress_dialog_view.cc",
        "views/download/download_in_progress_dialog_view.h",
        "views/download/download_item_view.cc",
 --- a/chrome/browser/ui/tab_helpers.cc
 +++ b/chrome/browser/ui/tab_helpers.cc
-@@ -353,22 +353,6 @@ void TabHelpers::AttachTabHelpers(WebCon
+@@ -360,22 +360,6 @@ void TabHelpers::AttachTabHelpers(WebCon
    //     See https://crbug.com/910288.
    resource_coordinator::ResourceCoordinatorTabHelper::CreateForWebContents(
        web_contents);
@@ -1024,7 +1024,7 @@
    bool IsDeletingHistoryAllowed();
 --- a/chrome/browser/ui/webui/interstitials/interstitial_ui.cc
 +++ b/chrome/browser/ui/webui/interstitials/interstitial_ui.cc
-@@ -268,116 +268,6 @@ CreateHttpsOnlyModePage(content::WebCont
+@@ -273,120 +273,6 @@ CreateHttpsOnlyModePage(content::WebCont
                                                        request_url));
  }
  
@@ -1034,7 +1034,8 @@
 -      safe_browsing::SB_THREAT_TYPE_URL_MALWARE;
 -  GURL request_url("http://example.com");
 -  std::string url_param;
--  if (net::GetValueForKeyInQuery(web_contents->GetURL(), "url", &url_param)) {
+-  if (net::GetValueForKeyInQuery(web_contents->GetVisibleURL(), "url",
+-                                 &url_param)) {
 -    if (GURL(url_param).is_valid()) {
 -      request_url = GURL(url_param);
 -    }
@@ -1043,7 +1044,8 @@
 -  // TODO(mattm): add flag to change main_frame_url or add dedicated flag to
 -  // test subresource interstitials.
 -  std::string type_param;
--  if (net::GetValueForKeyInQuery(web_contents->GetURL(), "type", &type_param)) {
+-  if (net::GetValueForKeyInQuery(web_contents->GetVisibleURL(), "type",
+-                                 &type_param)) {
 -    if (type_param == "malware") {
 -      threat_type = safe_browsing::SB_THREAT_TYPE_URL_MALWARE;
 -    } else if (type_param == "phishing") {
@@ -1091,14 +1093,16 @@
 -      safe_browsing::SB_THREAT_TYPE_URL_MALWARE;
 -  GURL request_url("http://example.com");
 -  std::string url_param;
--  if (net::GetValueForKeyInQuery(web_contents->GetURL(), "url", &url_param)) {
+-  if (net::GetValueForKeyInQuery(web_contents->GetVisibleURL(), "url",
+-                                 &url_param)) {
 -    if (GURL(url_param).is_valid())
 -      request_url = GURL(url_param);
 -  }
 -  GURL main_frame_url(request_url);
 -  std::string type_param;
 -  bool is_giant_webview = false;
--  if (net::GetValueForKeyInQuery(web_contents->GetURL(), "type", &type_param)) {
+-  if (net::GetValueForKeyInQuery(web_contents->GetVisibleURL(), "type",
+-                                 &type_param)) {
 -    if (type_param == "malware") {
 -      threat_type = safe_browsing::SB_THREAT_TYPE_URL_MALWARE;
 -    } else if (type_param == "phishing") {
@@ -1141,7 +1145,7 @@
  #if BUILDFLAG(ENABLE_CAPTIVE_PORTAL_DETECTION)
  std::unique_ptr<CaptivePortalBlockingPage> CreateCaptivePortalBlockingPage(
      content::WebContents* web_contents) {
-@@ -492,8 +382,6 @@ void InterstitialHTMLSource::StartDataRe
+@@ -501,8 +387,6 @@ void InterstitialHTMLSource::StartDataRe
      interstitial_delegate = CreateMITMSoftwareBlockingPage(web_contents);
    } else if (path_without_query == "/blocked-interception") {
      interstitial_delegate = CreateBlockedInterceptionBlockingPage(web_contents);
@@ -1150,7 +1154,7 @@
    } else if (path_without_query == "/clock") {
      interstitial_delegate = CreateBadClockBlockingPage(web_contents);
    } else if (path_without_query == "/lookalike") {
-@@ -510,16 +398,12 @@ void InterstitialHTMLSource::StartDataRe
+@@ -519,16 +403,12 @@ void InterstitialHTMLSource::StartDataRe
      interstitial_delegate = CreateHttpsOnlyModePage(web_contents);
    }
  
@@ -1172,7 +1176,7 @@
      html = ui::ResourceBundle::GetSharedInstance().LoadDataResourceString(
 --- a/chrome/renderer/chrome_content_renderer_client.cc
 +++ b/chrome/renderer/chrome_content_renderer_client.cc
-@@ -94,7 +94,6 @@
+@@ -92,7 +92,6 @@
  #include "components/page_load_metrics/renderer/metrics_render_frame_observer.h"
  #include "components/paint_preview/buildflags/buildflags.h"
  #include "components/safe_browsing/buildflags.h"

+ 1 - 1
patches/core/inox-patchset/0003-disable-autofill-download-manager.patch

@@ -29,7 +29,7 @@
 -  // On iOS we have a single, shared URLLoaderFactory provided by BrowserState.
 -  // As it is shared, it is not trusted and we cannot assign trusted_params
 -  // to the network request.
--#if !defined(OS_IOS)
+-#if !BUILDFLAG(IS_IOS)
 -  // Do not call IsolationInfo() for REQUEST_UPLOADs because Password Manager
 -  // uploads when RenderFrameHostImpl::DidCommitNavigation() is called, in which
 -  // case IsolationInfo() may crash because there is no committing

+ 2 - 2
patches/core/inox-patchset/0005-disable-default-extensions.patch

@@ -6,7 +6,7 @@
    const char* const kAllowed[] = {
 -    extension_misc::kInAppPaymentsSupportAppId,
      extension_misc::kPdfExtensionId,
- #if defined(OS_CHROMEOS)
+ #if BUILDFLAG(IS_CHROMEOS)
      extension_misc::kAssessmentAssistantExtensionId,
 --- a/chrome/browser/extensions/component_loader.cc
 +++ b/chrome/browser/extensions/component_loader.cc
@@ -51,7 +51,7 @@
 -  AddExternalExtension(extension_misc::kInAppPaymentsSupportAppId, prefs.get());
 -#endif  // BUILDFLAG(GOOGLE_CHROME_BRANDING)
  
- #if defined(OS_CHROMEOS)
+ #if BUILDFLAG(IS_CHROMEOS)
    {
 --- a/chrome/browser/extensions/webstore_installer.cc
 +++ b/chrome/browser/extensions/webstore_installer.cc

+ 1 - 1
patches/core/inox-patchset/0009-disable-google-ipv6-probes.patch

@@ -1,6 +1,6 @@
 --- a/net/dns/host_resolver_manager.cc
 +++ b/net/dns/host_resolver_manager.cc
-@@ -144,10 +144,10 @@ const unsigned kMinimumTTLSeconds = kCac
+@@ -147,10 +147,10 @@ const unsigned kMinimumTTLSeconds = kCac
  // cached.
  const int kIPv6ProbePeriodMs = 1000;
  

+ 1 - 1
patches/core/inox-patchset/0015-disable-update-pings.patch

@@ -1,6 +1,6 @@
 --- a/chrome/updater/configurator.cc
 +++ b/chrome/updater/configurator.cc
-@@ -82,7 +82,7 @@ int Configurator::UpdateDelay() const {
+@@ -89,7 +89,7 @@ int Configurator::UpdateDelay() const {
  }
  
  std::vector<GURL> Configurator::UpdateUrl() const {

+ 1 - 1
patches/core/inox-patchset/0021-disable-rlz.patch

@@ -2,7 +2,7 @@
 
 --- a/BUILD.gn
 +++ b/BUILD.gn
-@@ -485,14 +485,6 @@ group("gn_all") {
+@@ -486,14 +486,6 @@ group("gn_all") {
      deps += [ "//chromeos:chromeos_unittests" ]
    }
  

+ 6 - 17
patches/core/iridium-browser/all-add-trk-prefixes-to-possibly-evil-connections.patch

@@ -101,7 +101,7 @@ by default.
  // creates and uses to publish OEM default apps to the extensions system.
 --- a/chrome/browser/chromeos/extensions/file_manager/private_api_misc.cc
 +++ b/chrome/browser/chromeos/extensions/file_manager/private_api_misc.cc
-@@ -88,7 +88,7 @@ namespace {
+@@ -89,7 +89,7 @@ namespace {
  
  using api::file_manager_private::ProfileInfo;
  
@@ -225,7 +225,7 @@ by default.
                base::ToLowerASCII(bdict_file));
 --- a/chrome/browser/supervised_user/supervised_user_service.cc
 +++ b/chrome/browser/supervised_user/supervised_user_service.cc
-@@ -87,7 +87,7 @@ namespace {
+@@ -86,7 +86,7 @@ namespace {
  
  // The URL from which to download a host denylist if no local one exists yet.
  const char kDenylistURL[] =
@@ -247,7 +247,7 @@ by default.
  bool g_upgrade_bubble_is_showing = false;
 --- a/chrome/browser/ui/webui/ntp/ntp_resource_cache.cc
 +++ b/chrome/browser/ui/webui/ntp/ntp_resource_cache.cc
-@@ -67,17 +67,17 @@ namespace {
+@@ -70,17 +70,17 @@ namespace {
  // The URL for the the Learn More page shown on incognito new tab.
  const char kLearnMoreIncognitoUrl[] =
  #if BUILDFLAG(IS_CHROMEOS_ASH)
@@ -362,7 +362,7 @@ by default.
  // Mime type to create a directory.
 --- a/components/feedback/feedback_uploader.cc
 +++ b/components/feedback/feedback_uploader.cc
-@@ -27,7 +27,7 @@ constexpr base::FilePath::CharType kFeed
+@@ -39,7 +39,7 @@ constexpr base::FilePath::CharType kFeed
      FILE_PATH_LITERAL("Feedback Reports");
  
  constexpr char kFeedbackPostUrl[] =
@@ -490,7 +490,7 @@ by default.
  
 --- a/content/browser/webauth/authenticator_common.cc
 +++ b/content/browser/webauth/authenticator_common.cc
-@@ -89,9 +89,9 @@ enum class RequestExtension {
+@@ -91,9 +91,9 @@ enum class RequestExtension {
  namespace {
  
  constexpr char kGstaticAppId[] =
@@ -511,7 +511,7 @@ by default.
 -    return GURL("https://www.google.com/");
 +    return GURL("trk:183:https://www.google.com/");
  
- #if defined(OS_WIN)
+ #if BUILDFLAG(IS_WIN)
    GURL url(base::WideToUTF16(args[0]));
 --- a/extensions/common/extension_urls.cc
 +++ b/extensions/common/extension_urls.cc
@@ -753,17 +753,6 @@ by default.
  const int kMaxSecurePort = 65535;
  
  std::string MakeMCSEndpoint(const std::string& mcs_hostname, int port) {
---- a/jingle/notifier/base/gaia_token_pre_xmpp_auth.cc
-+++ b/jingle/notifier/base/gaia_token_pre_xmpp_auth.cc
-@@ -35,7 +35,7 @@ class GaiaCookieMechanism : public jingl
-     // These attributes are necessary for working with non-gmail gaia
-     // accounts.
-     const std::string NS_GOOGLE_AUTH_PROTOCOL(
--        "http://www.google.com/talk/protocol/auth");
-+        "trk:179:http://www.google.com/talk/protocol/auth");
-     const jingle_xmpp::QName QN_GOOGLE_ALLOW_GENERATED_JID_XMPP_LOGIN(
-         NS_GOOGLE_AUTH_PROTOCOL, "allow-generated-jid");
-     const jingle_xmpp::QName QN_GOOGLE_AUTH_CLIENT_USES_FULL_BIND_RESULT(
 --- a/remoting/base/breakpad_mac.mm
 +++ b/remoting/base/breakpad_mac.mm
 @@ -50,7 +50,7 @@ void InitializeCrashReporting() {

+ 1 - 1
patches/core/iridium-browser/safe_browsing-disable-incident-reporting.patch

@@ -16,7 +16,7 @@ the URL so we get notified if this happens again in the future).
 
 --- a/chrome/browser/safe_browsing/chrome_safe_browsing_blocking_page_factory.cc
 +++ b/chrome/browser/safe_browsing/chrome_safe_browsing_blocking_page_factory.cc
-@@ -35,8 +35,7 @@ ChromeSafeBrowsingBlockingPageFactory::C
+@@ -36,8 +36,7 @@ ChromeSafeBrowsingBlockingPageFactory::C
        Profile::FromBrowserContext(web_contents->GetBrowserContext());
    // Create appropriate display options for this blocking page.
    PrefService* prefs = profile->GetPrefs();

+ 2 - 2
patches/core/iridium-browser/safe_browsing-disable-reporting-of-safebrowsing-over.patch

@@ -13,7 +13,7 @@ This prevents trk:148 (phishing) and trk:149 (malware).
 
 --- a/components/safe_browsing/content/browser/client_side_detection_service.cc
 +++ b/components/safe_browsing/content/browser/client_side_detection_service.cc
-@@ -215,6 +215,10 @@ void ClientSideDetectionService::StartCl
+@@ -217,6 +217,10 @@ void ClientSideDetectionService::StartCl
      return;
    }
  
@@ -24,7 +24,7 @@ This prevents trk:148 (phishing) and trk:149 (malware).
    // Fill in metadata about which model we used.
    *request->mutable_population() = delegate_->GetUserPopulation();
  
-@@ -294,6 +298,7 @@ void ClientSideDetectionService::StartCl
+@@ -296,6 +300,7 @@ void ClientSideDetectionService::StartCl
        base::BindOnce(&WebUIInfoSingleton::AddToClientPhishingRequestsSent,
                       base::Unretained(WebUIInfoSingleton::GetInstance()),
                       std::move(request), access_token));

+ 15 - 13
patches/core/ungoogled-chromium/block-trk-and-subdomains.patch

@@ -35,7 +35,7 @@
  
 --- a/components/omnibox/browser/autocomplete_input.cc
 +++ b/components/omnibox/browser/autocomplete_input.cc
-@@ -562,7 +562,8 @@ void AutocompleteInput::ParseForEmphasiz
+@@ -561,7 +561,8 @@ void AutocompleteInput::ParseForEmphasiz
    // For the view-source and blob schemes, we should emphasize the host of the
    // URL qualified by the view-source or blob prefix.
    if ((base::LowerCaseEqualsASCII(scheme_str, kViewSourceScheme) ||
@@ -70,7 +70,7 @@
    // other origins, so we should not treat them as web safe. Remove callers of
 --- a/net/BUILD.gn
 +++ b/net/BUILD.gn
-@@ -1010,6 +1010,8 @@ component("net") {
+@@ -1011,6 +1011,8 @@ component("net") {
      "url_request/report_sender.h",
      "url_request/static_http_user_agent_settings.cc",
      "url_request/static_http_user_agent_settings.h",
@@ -158,7 +158,7 @@
  
  using base::Time;
  using std::string;
-@@ -611,6 +613,12 @@ URLRequest::URLRequest(const GURL& url,
+@@ -610,6 +612,12 @@ URLRequest::URLRequest(const GURL& url,
    // Sanity check out environment.
    DCHECK(base::ThreadTaskRunnerHandle::IsSet());
  
@@ -173,7 +173,7 @@
      return NetLogURLRequestConstructorParams(url, priority_,
 --- a/net/url_request/url_request_context_builder.cc
 +++ b/net/url_request/url_request_context_builder.cc
-@@ -45,6 +45,7 @@
+@@ -46,6 +46,7 @@
  #include "net/quic/quic_stream_factory.h"
  #include "net/ssl/ssl_config_service_defaults.h"
  #include "net/url_request/static_http_user_agent_settings.h"
@@ -181,7 +181,7 @@
  #include "net/url_request/url_request_context.h"
  #include "net/url_request/url_request_context_storage.h"
  #include "net/url_request/url_request_job_factory.h"
-@@ -545,6 +546,9 @@ std::unique_ptr<URLRequestContext> URLRe
+@@ -554,6 +555,9 @@ std::unique_ptr<URLRequestContext> URLRe
    }
    protocol_handlers_.clear();
  
@@ -193,24 +193,26 @@
    return std::move(context);
 --- a/url/url_constants.cc
 +++ b/url/url_constants.cc
-@@ -28,6 +28,7 @@ const char kMailToScheme[] = "mailto";
- // See also: https://www.iana.org/assignments/uri-schemes/prov/quic-transport
- const char kQuicTransportScheme[] = "quic-transport";
+@@ -46,6 +46,8 @@ const char kQuicTransportScheme[] = "qui
+ const char16_t kQuicTransportScheme16[] = u"quic-transport";
  const char kTelScheme[] = "tel";
+ const char16_t kTelScheme16[] = u"tel";
 +const char kTraceScheme[] = "trk";
++const char16_t kTraceScheme16[] = u"trk";
  const char kUrnScheme[] = "urn";
+ const char16_t kUrnScheme16[] = u"urn";
  const char kUuidInPackageScheme[] = "uuid-in-package";
- const char kWsScheme[] = "ws";
 --- a/url/url_constants.h
 +++ b/url/url_constants.h
-@@ -32,6 +32,7 @@ COMPONENT_EXPORT(URL) extern const char
- COMPONENT_EXPORT(URL) extern const char kMailToScheme[];
- COMPONENT_EXPORT(URL) extern const char kQuicTransportScheme[];
+@@ -50,6 +50,8 @@ COMPONENT_EXPORT(URL) extern const char
+ COMPONENT_EXPORT(URL) extern const char16_t kQuicTransportScheme16[];
  COMPONENT_EXPORT(URL) extern const char kTelScheme[];
+ COMPONENT_EXPORT(URL) extern const char16_t kTelScheme16[];
 +COMPONENT_EXPORT(URL) extern const char kTraceScheme[];
++COMPONENT_EXPORT(URL) extern const char16_t kTraceScheme16[];
  COMPONENT_EXPORT(URL) extern const char kUrnScheme[];
+ COMPONENT_EXPORT(URL) extern const char16_t kUrnScheme16[];
  COMPONENT_EXPORT(URL) extern const char kUuidInPackageScheme[];
- COMPONENT_EXPORT(URL) extern const char kWsScheme[];
 --- a/url/url_util.cc
 +++ b/url/url_util.cc
 @@ -63,7 +63,7 @@ struct SchemeRegistry {

+ 1 - 1
patches/core/ungoogled-chromium/disable-crash-reporter.patch

@@ -2,7 +2,7 @@
 
 --- a/components/crash/core/app/crashpad_linux.cc
 +++ b/components/crash/core/app/crashpad_linux.cc
-@@ -59,8 +59,7 @@ void SetFirstChanceExceptionHandler(bool
+@@ -60,8 +60,7 @@ void SetFirstChanceExceptionHandler(bool
  }
  
  bool IsCrashpadEnabled() {

+ 13 - 22
patches/core/ungoogled-chromium/disable-floc.patch

@@ -44,35 +44,26 @@
  }
  
  }  // namespace federated_learning
---- a/chrome/browser/privacy_sandbox/privacy_sandbox_settings.cc
-+++ b/chrome/browser/privacy_sandbox/privacy_sandbox_settings.cc
-@@ -132,8 +132,7 @@ bool ShouldDisablePrivacySandbox(
- 
- // Returns whether FLoC is allowable by the current state of |pref_service|.
- bool IsFlocAllowedByPrefs(PrefService* pref_service) {
--  return pref_service->GetBoolean(prefs::kPrivacySandboxFlocEnabled) &&
--         pref_service->GetBoolean(prefs::kPrivacySandboxApisEnabled);
-+  return false;
- }
- 
- // Returns the number of days in |time|, rounded to the closest day by hour if
-@@ -207,7 +206,7 @@ PrivacySandboxSettings::PrivacySandboxSe
- PrivacySandboxSettings::~PrivacySandboxSettings() = default;
- 
- bool PrivacySandboxSettings::IsFlocAllowed() const {
--  return IsFlocAllowedByPrefs(pref_service_);
-+  return false;
- }
- 
- bool PrivacySandboxSettings::IsFlocAllowedForContext(
 --- a/components/privacy_sandbox/privacy_sandbox_prefs.cc
 +++ b/components/privacy_sandbox/privacy_sandbox_prefs.cc
-@@ -42,7 +42,7 @@ void RegisterProfilePrefs(PrefRegistrySi
+@@ -45,7 +45,7 @@ void RegisterProfilePrefs(PrefRegistrySi
    registry->RegisterTimePref(prefs::kPrivacySandboxFlocDataAccessibleSince,
                               base::Time());
    registry->RegisterBooleanPref(
 -      prefs::kPrivacySandboxFlocEnabled, true,
 +      prefs::kPrivacySandboxFlocEnabled, false,
        user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
+   registry->RegisterDictionaryPref(prefs::kPrivacySandboxFledgeJoinBlocked);
+ }
+--- a/components/privacy_sandbox/privacy_sandbox_settings.cc
++++ b/components/privacy_sandbox/privacy_sandbox_settings.cc
+@@ -91,8 +91,7 @@ PrivacySandboxSettings::PrivacySandboxSe
+ PrivacySandboxSettings::~PrivacySandboxSettings() = default;
+ 
+ bool PrivacySandboxSettings::IsFlocAllowed() const {
+-  return pref_service_->GetBoolean(prefs::kPrivacySandboxFlocEnabled) &&
+-         pref_service_->GetBoolean(prefs::kPrivacySandboxApisEnabled);
++  return false;
  }
  
+ bool PrivacySandboxSettings::IsFlocAllowedForContext(

+ 5 - 5
patches/core/ungoogled-chromium/disable-google-host-detection.patch

@@ -12,7 +12,7 @@
 -
  namespace {
  
- #if defined(OS_ANDROID)
+ #if BUILDFLAG(IS_ANDROID)
 @@ -65,52 +61,6 @@ void GoogleURLLoaderThrottle::DetachFrom
  void GoogleURLLoaderThrottle::WillStartRequest(
      network::ResourceRequest* request,
@@ -43,7 +43,7 @@
 -        dynamic_params_.allowed_domains_for_apps);
 -  }
 -
--#if defined(OS_ANDROID)
+-#if BUILDFLAG(IS_ANDROID)
 -  if (!client_data_header_.empty() &&
 -      google_util::IsGoogleAssociatedDomainUrl(request->url)) {
 -    request->cors_exempt_headers.SetHeader(kCCTClientDataHeader,
@@ -95,7 +95,7 @@
 -        dynamic_params_.allowed_domains_for_apps);
 -  }
 -
--#if defined(OS_ANDROID)
+-#if BUILDFLAG(IS_ANDROID)
 -  if (!client_data_header_.empty() &&
 -      !google_util::IsGoogleAssociatedDomainUrl(redirect_info->new_url)) {
 -    to_be_removed_headers->push_back(kCCTClientDataHeader);
@@ -485,7 +485,7 @@
  bool IsGoogleHostname(const GURL& url) {
 --- a/components/search_engines/template_url.cc
 +++ b/components/search_engines/template_url.cc
-@@ -527,11 +527,7 @@ std::u16string TemplateURLRef::SearchTer
+@@ -530,11 +530,7 @@ std::u16string TemplateURLRef::SearchTer
  bool TemplateURLRef::HasGoogleBaseURLs(
      const SearchTermsData& search_terms_data) const {
    ParseIfNecessary(search_terms_data);
@@ -578,7 +578,7 @@
  }  // namespace variations
 --- a/net/base/url_util.cc
 +++ b/net/base/url_util.cc
-@@ -442,27 +442,6 @@ bool HasGoogleHost(const GURL& url) {
+@@ -455,27 +455,6 @@ bool HasGoogleHost(const GURL& url) {
  }
  
  bool IsGoogleHost(base::StringPiece host) {

+ 2 - 2
patches/core/ungoogled-chromium/disable-mei-preload.patch

@@ -15,8 +15,8 @@
        "//third_party/widevine/cdm",
      ]
    }
-@@ -1150,7 +1149,6 @@ if (is_win) {
-       ":keystone_registration_framework",
+@@ -1169,7 +1168,6 @@ if (is_win) {
+       ":optimization_guide_library",
        ":swiftshader_library",
        ":widevine_cdm_library",
 -      "//chrome/browser/resources/media/mei_preload:component_bundle",

+ 17 - 21
patches/core/ungoogled-chromium/disable-privacy-sandbox.patch

@@ -1,23 +1,3 @@
---- a/chrome/browser/privacy_sandbox/privacy_sandbox_settings.cc
-+++ b/chrome/browser/privacy_sandbox/privacy_sandbox_settings.cc
-@@ -369,7 +369,7 @@ std::vector<GURL> PrivacySandboxSettings
- }
- 
- bool PrivacySandboxSettings::IsPrivacySandboxAllowed() {
--  return pref_service_->GetBoolean(prefs::kPrivacySandboxApisEnabled);
-+  return false;
- }
- 
- bool PrivacySandboxSettings::IsPrivacySandboxEnabled() {
-@@ -381,8 +381,6 @@ bool PrivacySandboxSettings::IsPrivacySa
- }
- 
- void PrivacySandboxSettings::SetPrivacySandboxEnabled(bool enabled) {
--  pref_service_->SetBoolean(prefs::kPrivacySandboxManuallyControlled, true);
--  pref_service_->SetBoolean(prefs::kPrivacySandboxApisEnabled, enabled);
- }
- 
- void PrivacySandboxSettings::OnCookiesCleared() {
 --- a/chrome/browser/resources/settings/privacy_page/privacy_page.html
 +++ b/chrome/browser/resources/settings/privacy_page/privacy_page.html
 @@ -80,19 +80,6 @@
@@ -42,7 +22,7 @@
  <if expr="use_nss_certs">
 --- a/components/privacy_sandbox/privacy_sandbox_prefs.cc
 +++ b/components/privacy_sandbox/privacy_sandbox_prefs.cc
-@@ -31,7 +31,7 @@ namespace privacy_sandbox {
+@@ -34,7 +34,7 @@ namespace privacy_sandbox {
  
  void RegisterProfilePrefs(PrefRegistrySimple* registry) {
    registry->RegisterBooleanPref(
@@ -51,3 +31,19 @@
        user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
    registry->RegisterBooleanPref(
        prefs::kPrivacySandboxManuallyControlled, false,
+--- a/components/privacy_sandbox/privacy_sandbox_settings.cc
++++ b/components/privacy_sandbox/privacy_sandbox_settings.cc
+@@ -261,12 +261,10 @@ std::vector<GURL> PrivacySandboxSettings
+ }
+ 
+ bool PrivacySandboxSettings::IsPrivacySandboxAllowed() {
+-  return pref_service_->GetBoolean(prefs::kPrivacySandboxApisEnabled);
++  return false;
+ }
+ 
+ void PrivacySandboxSettings::SetPrivacySandboxEnabled(bool enabled) {
+-  pref_service_->SetBoolean(prefs::kPrivacySandboxManuallyControlled, true);
+-  pref_service_->SetBoolean(prefs::kPrivacySandboxApisEnabled, enabled);
+ }
+ 
+ void PrivacySandboxSettings::OnCookiesCleared() {

+ 1 - 1
patches/core/ungoogled-chromium/disable-signin.patch

@@ -2,7 +2,7 @@
 
 --- a/chrome/browser/ui/chrome_pages.cc
 +++ b/chrome/browser/ui/chrome_pages.cc
-@@ -486,32 +486,6 @@ GURL GetOSSettingsUrl(const std::string&
+@@ -498,32 +498,6 @@ GURL GetOSSettingsUrl(const std::string&
  void ShowBrowserSignin(Browser* browser,
                         signin_metrics::AccessPoint access_point,
                         signin::ConsentLevel consent_level) {

+ 1 - 1
patches/core/ungoogled-chromium/disable-untraceable-urls.patch

@@ -11,7 +11,7 @@
 -
  GURL GetPluginsServerURL() {
    std::string filename;
- #if defined(OS_WIN)
+ #if BUILDFLAG(IS_WIN)
 @@ -70,7 +67,7 @@ GURL GetPluginsServerURL() {
  #error Unknown platform
  #endif

+ 2 - 2
patches/core/ungoogled-chromium/disable-webstore-urls.patch

@@ -2,7 +2,7 @@
 
 --- a/chrome/browser/extensions/chrome_content_browser_client_extensions_part.cc
 +++ b/chrome/browser/extensions/chrome_content_browser_client_extensions_part.cc
-@@ -641,10 +641,6 @@ std::vector<url::Origin> ChromeContentBr
+@@ -556,10 +556,6 @@ std::vector<url::Origin> ChromeContentBr
      GetOriginsRequiringDedicatedProcess() {
    std::vector<url::Origin> list;
  
@@ -15,7 +15,7 @@
  
 --- a/chrome/browser/extensions/chrome_content_verifier_delegate.cc
 +++ b/chrome/browser/extensions/chrome_content_verifier_delegate.cc
-@@ -290,17 +290,7 @@ bool ChromeContentVerifierDelegate::IsFr
+@@ -289,17 +289,7 @@ bool ChromeContentVerifierDelegate::IsFr
    // between which extensions are considered in-store.
    // See https://crbug.com/766806 for details.
    if (!InstallVerifier::IsFromStore(extension, context_)) {

+ 6 - 6
patches/core/ungoogled-chromium/doh-changes.patch

@@ -1,11 +1,11 @@
 --- a/chrome/common/chrome_features.cc
 +++ b/chrome/common/chrome_features.cc
-@@ -336,12 +336,7 @@ const base::FeatureParam<int> kDisableHt
+@@ -338,12 +338,7 @@ const base::FeatureParam<int> kDisableHt
  // Enable DNS over HTTPS (DoH).
  const base::Feature kDnsOverHttps {
    "DnsOverHttps",
--#if defined(OS_WIN) || defined(OS_CHROMEOS) || defined(OS_MAC) || \
--    defined(OS_ANDROID) || defined(OS_LINUX)
+-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \
+-    BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX)
 -      base::FEATURE_ENABLED_BY_DEFAULT
 -#else
        base::FEATURE_DISABLED_BY_DEFAULT
@@ -15,7 +15,7 @@
  // Provides a mechanism to remove providers from the dropdown list in the
 --- a/net/dns/public/doh_provider_entry.cc
 +++ b/net/dns/public/doh_provider_entry.cc
-@@ -117,24 +117,6 @@ const DohProviderEntry::List& DohProvide
+@@ -118,24 +118,6 @@ const DohProviderEntry::List& DohProvide
            /*privacy_policy=*/"https://dns.sb/privacy/",
            /*display_globally=*/false, /*display_countries=*/{"EE", "DE"},
            LoggingLevel::kNormal),
@@ -46,8 +46,8 @@
  // Enable usage of hardcoded DoH upgrade mapping for use in automatic mode.
  const base::Feature kDnsOverHttpsUpgrade {
    "DnsOverHttpsUpgrade",
--#if BUILDFLAG(IS_CHROMEOS_ASH) || defined(OS_MAC) || defined(OS_ANDROID) || \
--    defined(OS_WIN)
+-#if BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_MAC) || \
+-    BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_WIN)
 -      base::FEATURE_ENABLED_BY_DEFAULT
 -#else
        base::FEATURE_DISABLED_BY_DEFAULT

+ 1 - 1
patches/core/ungoogled-chromium/fix-building-with-prunned-binaries.patch

@@ -34,7 +34,7 @@
    deps = [
 --- a/third_party/devtools-frontend/src/BUILD.gn
 +++ b/third_party/devtools-frontend/src/BUILD.gn
-@@ -14,7 +14,6 @@ import("./third_party/blink/public/publi
+@@ -13,7 +13,6 @@ import("./third_party/blink/public/publi
  
  devtools_frontend_resources_deps = [
    "front_end",

+ 3 - 3
patches/core/ungoogled-chromium/fix-building-without-enabling-reporting.patch

@@ -1,14 +1,14 @@
 --- a/third_party/blink/renderer/core/frame/local_frame.cc
 +++ b/third_party/blink/renderer/core/frame/local_frame.cc
-@@ -39,6 +39,7 @@
- #include "base/values.h"
+@@ -40,6 +40,7 @@
+ #include "build/build_config.h"
  #include "mojo/public/cpp/bindings/self_owned_receiver.h"
  #include "mojo/public/cpp/system/message_pipe.h"
 +#include "net/net_buildflags.h"
  #include "services/data_decoder/public/mojom/resource_snapshot_for_web_bundle.mojom-blink.h"
  #include "services/network/public/cpp/features.h"
  #include "services/network/public/mojom/content_security_policy.mojom-blink.h"
-@@ -2289,9 +2290,11 @@ const base::UnguessableToken& LocalFrame
+@@ -2283,9 +2284,11 @@ const base::UnguessableToken& LocalFrame
    return base::UnguessableToken::Null();
  }
  

+ 4 - 4
patches/core/ungoogled-chromium/fix-building-without-one-click-signin.patch

@@ -14,15 +14,15 @@
  }
 --- a/chrome/browser/ui/webui/signin/inline_login_handler_impl.cc
 +++ b/chrome/browser/ui/webui/signin/inline_login_handler_impl.cc
-@@ -359,6 +359,7 @@ void InlineSigninHelper::OnClientOAuthSu
+@@ -356,6 +356,7 @@ void InlineSigninHelper::OnClientOAuthSu
+ void InlineSigninHelper::OnClientOAuthSuccessAndBrowserOpened(
      const ClientOAuthResult& result,
-     Profile* /*profile*/,
-     Profile::CreateStatus /*status*/) {
+     Profile* /*profile*/) {
 +#if BUILDFLAG(ENABLE_ONE_CLICK_SIGNIN)
    HandlerSigninReason reason = GetHandlerSigninReason(current_url_);
    if (reason == HandlerSigninReason::kFetchLstOnly) {
      // Constants are only available on Windows for the Google Credential
-@@ -435,6 +436,7 @@ void InlineSigninHelper::OnClientOAuthSu
+@@ -432,6 +433,7 @@ void InlineSigninHelper::OnClientOAuthSu
    }
  
    base::ThreadTaskRunnerHandle::Get()->DeleteSoon(FROM_HERE, this);

+ 144 - 131
patches/core/ungoogled-chromium/fix-building-without-safebrowsing.patch

@@ -2,7 +2,7 @@
 
 --- a/chrome/browser/BUILD.gn
 +++ b/chrome/browser/BUILD.gn
-@@ -1957,7 +1957,6 @@ static_library("browser") {
+@@ -1949,7 +1949,6 @@ static_library("browser") {
      "//chrome/browser/net:probe_message_proto",
      "//chrome/browser/new_tab_page/modules/drive:mojo_bindings",
      "//chrome/browser/new_tab_page/modules/photos:mojo_bindings",
@@ -10,7 +10,7 @@
      "//chrome/browser/new_tab_page/modules/task_module:mojo_bindings",
      "//chrome/browser/notifications",
      "//chrome/browser/notifications/scheduler:factory",
-@@ -3778,9 +3777,6 @@ static_library("browser") {
+@@ -3757,9 +3756,6 @@ static_library("browser") {
        "download/offline_item_model_manager_factory.h",
        "enterprise/connectors/analysis/analysis_service_settings.cc",
        "enterprise/connectors/analysis/analysis_service_settings.h",
@@ -20,7 +20,7 @@
        "enterprise/connectors/analysis/content_analysis_dialog.cc",
        "enterprise/connectors/analysis/content_analysis_dialog.h",
        "enterprise/connectors/analysis/content_analysis_downloads_delegate.cc",
-@@ -4023,10 +4019,6 @@ static_library("browser") {
+@@ -4004,10 +4000,6 @@ static_library("browser") {
        "new_tab_page/modules/photos/photos_service.h",
        "new_tab_page/modules/photos/photos_service_factory.cc",
        "new_tab_page/modules/photos/photos_service_factory.h",
@@ -31,7 +31,7 @@
        "new_tab_page/modules/task_module/task_module_handler.cc",
        "new_tab_page/modules/task_module/task_module_handler.h",
        "new_tab_page/modules/task_module/task_module_service.cc",
-@@ -7201,9 +7193,14 @@ static_library("browser") {
+@@ -7238,9 +7230,14 @@ static_library("browser") {
        "//components/safe_browsing/content/browser:safe_browsing_blocking_page",
        "//components/safe_browsing/content/browser/download:download_stats",
        "//components/safe_browsing/content/common:file_type_policies",
@@ -63,7 +63,7 @@
    auto delegate = std::make_unique<AccuracyServiceDelegate>(profile);
 --- a/chrome/browser/chrome_content_browser_client.cc
 +++ b/chrome/browser/chrome_content_browser_client.cc
-@@ -4252,11 +4252,13 @@ ChromeContentBrowserClient::CreateThrott
+@@ -4244,11 +4244,13 @@ ChromeContentBrowserClient::CreateThrott
                     &throttles);
  #endif
  
@@ -77,7 +77,7 @@
  
  // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch
  // of lacros-chrome is complete.
-@@ -5657,26 +5659,7 @@ ChromeContentBrowserClient::GetSafeBrows
+@@ -5680,26 +5682,7 @@ ChromeContentBrowserClient::GetSafeBrows
      const std::vector<std::string>& allowlist_domains) {
    DCHECK_CURRENTLY_ON(BrowserThread::IO);
  
@@ -105,7 +105,7 @@
  }
  
  safe_browsing::RealTimeUrlLookupServiceBase*
-@@ -5697,11 +5680,6 @@ ChromeContentBrowserClient::GetUrlLookup
+@@ -5720,11 +5703,6 @@ ChromeContentBrowserClient::GetUrlLookup
          GetForProfile(profile);
    }
  #endif
@@ -119,7 +119,7 @@
  
 --- a/chrome/browser/chrome_content_browser_client_receiver_bindings.cc
 +++ b/chrome/browser/chrome_content_browser_client_receiver_bindings.cc
-@@ -143,45 +143,6 @@ void MaybeCreateSafeBrowsingForRenderer(
+@@ -144,45 +144,6 @@ void MaybeCreateSafeBrowsingForRenderer(
          const std::vector<std::string>& allowlist_domains)>
          get_checker_delegate,
      mojo::PendingReceiver<safe_browsing::mojom::SafeBrowsing> receiver) {
@@ -266,15 +266,15 @@
  }
 --- a/chrome/browser/download/download_stats.cc
 +++ b/chrome/browser/download/download_stats.cc
-@@ -8,6 +8,7 @@
- #include "base/metrics/user_metrics.h"
+@@ -9,6 +9,7 @@
  #include "base/notreached.h"
+ #include "build/build_config.h"
  #include "components/profile_metrics/browser_profile_type.h"
 +#include "components/safe_browsing/buildflags.h"
  #include "components/safe_browsing/content/browser/download/download_stats.h"
  
  void RecordDownloadCount(ChromeDownloadCountTypes type) {
-@@ -27,8 +28,10 @@ void RecordDangerousDownloadWarningShown
+@@ -28,8 +29,10 @@ void RecordDangerousDownloadWarningShown
      bool has_user_gesture) {
    base::UmaHistogramEnumeration("Download.ShowedDownloadWarning", danger_type,
                                  download::DOWNLOAD_DANGER_TYPE_MAX);
@@ -287,7 +287,7 @@
  void RecordOpenedDangerousConfirmDialog(
 --- a/chrome/browser/download/download_target_determiner.cc
 +++ b/chrome/browser/download/download_target_determiner.cc
-@@ -872,11 +872,13 @@ void DownloadTargetDeterminer::CheckVisi
+@@ -873,11 +873,13 @@ void DownloadTargetDeterminer::CheckVisi
      bool visited_referrer_before) {
    DCHECK_CURRENTLY_ON(BrowserThread::UI);
    DCHECK_EQ(STATE_DETERMINE_INTERMEDIATE_PATH, next_state_);
@@ -301,7 +301,7 @@
    danger_level_ = GetDangerLevel(
        visited_referrer_before ? VISITED_REFERRER : NO_VISITS_TO_REFERRER);
    if (danger_level_ != DownloadFileType::NOT_DANGEROUS &&
-@@ -1111,6 +1113,7 @@ DownloadFileType::DangerLevel DownloadTa
+@@ -1112,6 +1114,7 @@ DownloadFileType::DangerLevel DownloadTa
  
  absl::optional<base::Time>
  DownloadTargetDeterminer::GetLastDownloadBypassTimestamp() const {
@@ -309,7 +309,7 @@
    safe_browsing::SafeBrowsingMetricsCollector* metrics_collector =
        safe_browsing::SafeBrowsingMetricsCollectorFactory::GetForProfile(
            GetProfile());
-@@ -1119,6 +1122,9 @@ DownloadTargetDeterminer::GetLastDownloa
+@@ -1120,6 +1123,9 @@ DownloadTargetDeterminer::GetLastDownloa
                                   safe_browsing::SafeBrowsingMetricsCollector::
                                       EventType::DANGEROUS_DOWNLOAD_BYPASS)
                             : absl::nullopt;
@@ -321,17 +321,17 @@
  void DownloadTargetDeterminer::OnDownloadDestroyed(
 --- a/chrome/browser/enterprise/connectors/analysis/content_analysis_delegate.cc
 +++ b/chrome/browser/enterprise/connectors/analysis/content_analysis_delegate.cc
-@@ -32,7 +32,6 @@
+@@ -33,7 +33,6 @@
  #include "chrome/browser/safe_browsing/cloud_content_scanning/binary_upload_service_factory.h"
  #include "chrome/browser/safe_browsing/cloud_content_scanning/deep_scanning_utils.h"
  #include "chrome/browser/safe_browsing/cloud_content_scanning/file_analysis_request.h"
 -#include "chrome/browser/safe_browsing/download_protection/check_client_download_request.h"
  #include "chrome/grit/generated_resources.h"
  #include "components/enterprise/common/proto/connectors.pb.h"
- #include "components/policy/core/browser/url_util.h"
+ #include "components/policy/core/common/chrome_schema.h"
 --- a/chrome/browser/enterprise/connectors/connectors_service.cc
 +++ b/chrome/browser/enterprise/connectors/connectors_service.cc
-@@ -459,19 +459,6 @@ absl::optional<std::string> ConnectorsSe
+@@ -460,19 +460,6 @@ absl::optional<std::string> ConnectorsSe
    return absl::nullopt;
  }
  
@@ -353,7 +353,7 @@
  }
 --- a/chrome/browser/enterprise/connectors/connectors_service.h
 +++ b/chrome/browser/enterprise/connectors/connectors_service.h
-@@ -79,12 +79,6 @@ class ConnectorsService : public KeyedSe
+@@ -80,12 +80,6 @@ class ConnectorsService : public KeyedSe
    // is no token to use.
    absl::optional<std::string> GetDMTokenForRealTimeUrlCheck() const;
  
@@ -396,7 +396,7 @@
      LogSignalsCollectionLatency(kLatencyHistogramWithCacheVariant, start_time);
 --- a/chrome/browser/enterprise/signals/context_info_fetcher.cc
 +++ b/chrome/browser/enterprise/signals/context_info_fetcher.cc
-@@ -199,7 +199,6 @@ void ContextInfoFetcher::Fetch(ContextIn
+@@ -204,7 +204,6 @@ void ContextInfoFetcher::Fetch(ContextIn
        GetAnalysisConnectorProviders(enterprise_connectors::FILE_DOWNLOADED);
    info.on_bulk_data_entry_providers =
        GetAnalysisConnectorProviders(enterprise_connectors::BULK_DATA_ENTRY);
@@ -404,7 +404,7 @@
    info.on_security_event_providers = GetOnSecurityEventProviders();
    info.browser_version = version_info::GetVersionNumber();
    info.site_isolation_enabled =
-@@ -257,11 +256,6 @@ std::vector<std::string> ContextInfoFetc
+@@ -262,11 +261,6 @@ std::vector<std::string> ContextInfoFetc
    return connectors_service_->GetAnalysisServiceProviderNames(connector);
  }
  
@@ -468,7 +468,7 @@
 -
  absl::optional<bool> GetThirdPartyBlockingEnabled(PrefService* local_state) {
    DCHECK(local_state);
- #if defined(OS_WIN) && BUILDFLAG(GOOGLE_CHROME_BRANDING)
+ #if BUILDFLAG(IS_WIN) && BUILDFLAG(GOOGLE_CHROME_BRANDING)
 @@ -65,15 +47,6 @@ bool GetBuiltInDnsClientEnabled(PrefServ
    return local_state->GetBoolean(prefs::kBuiltInDnsClientEnabled);
  }
@@ -484,7 +484,7 @@
 -
  absl::optional<bool> GetChromeCleanupEnabled(PrefService* local_state) {
    DCHECK(local_state);
- #if defined(OS_WIN)
+ #if BUILDFLAG(IS_WIN)
 --- a/chrome/browser/enterprise/signals/signals_utils.h
 +++ b/chrome/browser/enterprise/signals/signals_utils.h
 @@ -21,12 +21,6 @@ bool GetBuiltInDnsClientEnabled(PrefServ
@@ -502,7 +502,7 @@
  }  // namespace utils
 --- a/chrome/browser/extensions/BUILD.gn
 +++ b/chrome/browser/extensions/BUILD.gn
-@@ -642,8 +642,6 @@ static_library("extensions") {
+@@ -633,8 +633,6 @@ static_library("extensions") {
      "menu_manager_factory.h",
      "navigation_observer.cc",
      "navigation_observer.h",
@@ -533,7 +533,7 @@
  
 --- a/chrome/browser/extensions/api/safe_browsing_private/safe_browsing_private_event_router.cc
 +++ b/chrome/browser/extensions/api/safe_browsing_private/safe_browsing_private_event_router.cc
-@@ -340,6 +340,7 @@ void SafeBrowsingPrivateEventRouter::OnD
+@@ -342,6 +342,7 @@ void SafeBrowsingPrivateEventRouter::OnD
      event_router_->BroadcastEvent(std::move(extension_event));
    }
  
@@ -541,7 +541,7 @@
    absl::optional<enterprise_connectors::ReportingSettings> settings =
        GetReportingSettings();
    if (!settings.has_value() ||
-@@ -370,6 +371,7 @@ void SafeBrowsingPrivateEventRouter::OnD
+@@ -372,6 +373,7 @@ void SafeBrowsingPrivateEventRouter::OnD
  
    ReportRealtimeEvent(kKeyDangerousDownloadEvent, std::move(settings.value()),
                        std::move(event));
@@ -549,7 +549,7 @@
  }
  
  void SafeBrowsingPrivateEventRouter::OnSecurityInterstitialShown(
-@@ -397,6 +399,7 @@ void SafeBrowsingPrivateEventRouter::OnS
+@@ -399,6 +401,7 @@ void SafeBrowsingPrivateEventRouter::OnS
      event_router_->BroadcastEvent(std::move(extension_event));
    }
  
@@ -557,7 +557,7 @@
    absl::optional<enterprise_connectors::ReportingSettings> settings =
        GetReportingSettings();
    if (!settings.has_value() ||
-@@ -420,6 +423,7 @@ void SafeBrowsingPrivateEventRouter::OnS
+@@ -422,6 +425,7 @@ void SafeBrowsingPrivateEventRouter::OnS
  
    ReportRealtimeEvent(kKeyInterstitialEvent, std::move(settings.value()),
                        std::move(event));
@@ -565,7 +565,7 @@
  }
  
  void SafeBrowsingPrivateEventRouter::OnSecurityInterstitialProceeded(
-@@ -447,6 +451,7 @@ void SafeBrowsingPrivateEventRouter::OnS
+@@ -449,6 +453,7 @@ void SafeBrowsingPrivateEventRouter::OnS
      event_router_->BroadcastEvent(std::move(extension_event));
    }
  
@@ -573,7 +573,7 @@
    absl::optional<enterprise_connectors::ReportingSettings> settings =
        GetReportingSettings();
    if (!settings.has_value() ||
-@@ -466,6 +471,7 @@ void SafeBrowsingPrivateEventRouter::OnS
+@@ -468,6 +473,7 @@ void SafeBrowsingPrivateEventRouter::OnS
  
    ReportRealtimeEvent(kKeyInterstitialEvent, std::move(settings.value()),
                        std::move(event));
@@ -581,7 +581,7 @@
  }
  
  void SafeBrowsingPrivateEventRouter::OnAnalysisConnectorResult(
-@@ -479,6 +485,7 @@ void SafeBrowsingPrivateEventRouter::OnA
+@@ -481,6 +487,7 @@ void SafeBrowsingPrivateEventRouter::OnA
      const enterprise_connectors::ContentAnalysisResponse::Result& result,
      const int64_t content_size,
      safe_browsing::EventResult event_result) {
@@ -589,7 +589,7 @@
    if (result.tag() == "malware") {
      DCHECK_EQ(1, result.triggered_rules().size());
      OnDangerousDeepScanningResult(
-@@ -490,6 +497,7 @@ void SafeBrowsingPrivateEventRouter::OnA
+@@ -492,6 +499,7 @@ void SafeBrowsingPrivateEventRouter::OnA
      OnSensitiveDataEvent(url, file_name, download_digest_sha256, mime_type,
                           trigger, scan_id, result, content_size, event_result);
    }
@@ -597,7 +597,7 @@
  }
  
  void SafeBrowsingPrivateEventRouter::OnDangerousDeepScanningResult(
-@@ -505,6 +513,7 @@ void SafeBrowsingPrivateEventRouter::OnD
+@@ -507,6 +515,7 @@ void SafeBrowsingPrivateEventRouter::OnD
      const std::string& malware_category,
      const std::string& evidence_locker_filepath,
      const std::string& scan_id) {
@@ -605,7 +605,7 @@
    absl::optional<enterprise_connectors::ReportingSettings> settings =
        GetReportingSettings();
    if (!settings.has_value() ||
-@@ -542,6 +551,7 @@ void SafeBrowsingPrivateEventRouter::OnD
+@@ -544,6 +553,7 @@ void SafeBrowsingPrivateEventRouter::OnD
  
    ReportRealtimeEvent(kKeyDangerousDownloadEvent, std::move(settings.value()),
                        std::move(event));
@@ -613,7 +613,7 @@
  }
  
  void SafeBrowsingPrivateEventRouter::OnSensitiveDataEvent(
-@@ -554,6 +564,7 @@ void SafeBrowsingPrivateEventRouter::OnS
+@@ -556,6 +566,7 @@ void SafeBrowsingPrivateEventRouter::OnS
      const enterprise_connectors::ContentAnalysisResponse::Result& result,
      const int64_t content_size,
      safe_browsing::EventResult event_result) {
@@ -621,7 +621,7 @@
    absl::optional<enterprise_connectors::ReportingSettings> settings =
        GetReportingSettings();
    if (!settings.has_value() ||
-@@ -586,6 +597,7 @@ void SafeBrowsingPrivateEventRouter::OnS
+@@ -588,6 +599,7 @@ void SafeBrowsingPrivateEventRouter::OnS
  
    ReportRealtimeEvent(kKeySensitiveDataEvent, std::move(settings.value()),
                        std::move(event));
@@ -629,15 +629,15 @@
  }
  
  void SafeBrowsingPrivateEventRouter::OnAnalysisConnectorWarningBypassed(
-@@ -598,6 +610,7 @@ void SafeBrowsingPrivateEventRouter::OnA
-     safe_browsing::DeepScanAccessPoint access_point,
+@@ -601,6 +613,7 @@ void SafeBrowsingPrivateEventRouter::OnA
      const enterprise_connectors::ContentAnalysisResponse::Result& result,
-     const int64_t content_size) {
+     const int64_t content_size,
+     absl::optional<std::u16string> user_justification) {
 +#if defined(FULL_SAFE_BROWSING)
    absl::optional<enterprise_connectors::ReportingSettings> settings =
        GetReportingSettings();
    if (!settings.has_value() ||
-@@ -630,6 +643,7 @@ void SafeBrowsingPrivateEventRouter::OnA
+@@ -636,6 +649,7 @@ void SafeBrowsingPrivateEventRouter::OnA
  
    ReportRealtimeEvent(kKeySensitiveDataEvent, std::move(settings.value()),
                        std::move(event));
@@ -645,7 +645,7 @@
  }
  
  void SafeBrowsingPrivateEventRouter::OnUnscannedFileEvent(
-@@ -642,6 +656,7 @@ void SafeBrowsingPrivateEventRouter::OnU
+@@ -648,6 +662,7 @@ void SafeBrowsingPrivateEventRouter::OnU
      const std::string& reason,
      const int64_t content_size,
      safe_browsing::EventResult event_result) {
@@ -653,7 +653,7 @@
    absl::optional<enterprise_connectors::ReportingSettings> settings =
        GetReportingSettings();
    if (!settings.has_value() ||
-@@ -668,6 +683,7 @@ void SafeBrowsingPrivateEventRouter::OnU
+@@ -674,6 +689,7 @@ void SafeBrowsingPrivateEventRouter::OnU
  
    ReportRealtimeEvent(kKeyUnscannedFileEvent, std::move(settings.value()),
                        std::move(event));
@@ -661,7 +661,7 @@
  }
  
  void SafeBrowsingPrivateEventRouter::OnDangerousDownloadEvent(
-@@ -693,6 +709,7 @@ void SafeBrowsingPrivateEventRouter::OnD
+@@ -699,6 +715,7 @@ void SafeBrowsingPrivateEventRouter::OnD
      const std::string& scan_id,
      const int64_t content_size,
      safe_browsing::EventResult event_result) {
@@ -669,7 +669,7 @@
    absl::optional<enterprise_connectors::ReportingSettings> settings =
        GetReportingSettings();
    if (!settings.has_value() ||
-@@ -723,6 +740,7 @@ void SafeBrowsingPrivateEventRouter::OnD
+@@ -729,6 +746,7 @@ void SafeBrowsingPrivateEventRouter::OnD
  
    ReportRealtimeEvent(kKeyDangerousDownloadEvent, std::move(settings.value()),
                        std::move(event));
@@ -677,7 +677,7 @@
  }
  
  void SafeBrowsingPrivateEventRouter::OnDangerousDownloadWarningBypassed(
-@@ -746,6 +764,7 @@ void SafeBrowsingPrivateEventRouter::OnD
+@@ -752,6 +770,7 @@ void SafeBrowsingPrivateEventRouter::OnD
      const std::string& mime_type,
      const std::string& scan_id,
      const int64_t content_size) {
@@ -685,7 +685,7 @@
    absl::optional<enterprise_connectors::ReportingSettings> settings =
        GetReportingSettings();
    if (!settings.has_value() ||
-@@ -776,6 +795,7 @@ void SafeBrowsingPrivateEventRouter::OnD
+@@ -782,6 +801,7 @@ void SafeBrowsingPrivateEventRouter::OnD
  
    ReportRealtimeEvent(kKeyDangerousDownloadEvent, std::move(settings.value()),
                        std::move(event));
@@ -693,7 +693,7 @@
  }
  
  void SafeBrowsingPrivateEventRouter::OnLoginEvent(
-@@ -1101,7 +1121,11 @@ void SafeBrowsingPrivateEventRouter::Rep
+@@ -1107,7 +1127,11 @@ void SafeBrowsingPrivateEventRouter::Rep
  }
  
  std::string SafeBrowsingPrivateEventRouter::GetProfileUserName() const {
@@ -707,7 +707,7 @@
  #if BUILDFLAG(IS_CHROMEOS_ASH)
 --- a/chrome/browser/extensions/chrome_extensions_browser_client.cc
 +++ b/chrome/browser/extensions/chrome_extensions_browser_client.cc
-@@ -600,15 +600,6 @@ void ChromeExtensionsBrowserClient::Noti
+@@ -606,15 +606,6 @@ void ChromeExtensionsBrowserClient::Noti
      content::BrowserContext* context,
      const ExtensionId& extension_id,
      const std::string& code) const {
@@ -725,7 +725,7 @@
  // static
 --- a/chrome/browser/extensions/extension_service.cc
 +++ b/chrome/browser/extensions/extension_service.cc
-@@ -52,7 +52,6 @@
+@@ -51,7 +51,6 @@
  #include "chrome/browser/extensions/forced_extensions/install_stage_tracker.h"
  #include "chrome/browser/extensions/install_verifier.h"
  #include "chrome/browser/extensions/installed_loader.h"
@@ -733,7 +733,7 @@
  #include "chrome/browser/extensions/pending_extension_manager.h"
  #include "chrome/browser/extensions/permissions_updater.h"
  #include "chrome/browser/extensions/shared_module_service.h"
-@@ -206,7 +205,6 @@ void ExtensionService::BlocklistExtensio
+@@ -202,7 +201,6 @@ void ExtensionService::BlocklistExtensio
    blocklist_prefs::SetSafeBrowsingExtensionBlocklistState(
        extension_id, BitMapBlocklistState::BLOCKLISTED_MALWARE,
        extension_prefs_);
@@ -741,7 +741,7 @@
  }
  
  bool ExtensionService::OnExternalExtensionUpdateUrlFound(
-@@ -369,7 +367,6 @@ ExtensionService::ExtensionService(Profi
+@@ -365,7 +363,6 @@ ExtensionService::ExtensionService(Profi
        safe_browsing_verdict_handler_(extension_prefs,
                                       ExtensionRegistry::Get(profile),
                                       this),
@@ -749,7 +749,7 @@
        registry_(ExtensionRegistry::Get(profile)),
        pending_extension_manager_(profile),
        install_directory_(install_directory),
-@@ -857,100 +854,6 @@ bool ExtensionService::IsExtensionEnable
+@@ -861,100 +858,6 @@ bool ExtensionService::IsExtensionEnable
    return extension_registrar_.IsExtensionEnabled(extension_id);
  }
  
@@ -860,7 +860,7 @@
  #include "chrome/browser/extensions/pending_extension_manager.h"
  #include "chrome/browser/extensions/safe_browsing_verdict_handler.h"
  #include "chrome/browser/profiles/profile_manager.h"
-@@ -271,40 +270,11 @@ class ExtensionService : public Extensio
+@@ -275,40 +274,11 @@ class ExtensionService : public Extensio
    // nothing.
    void EnableExtension(const std::string& extension_id);
  
@@ -901,7 +901,7 @@
    // Disables the extension. If the extension is already disabled, just adds
    // the |disable_reasons| (a bitmask of disable_reason::DisableReason - there
    // can be multiple DisableReasons e.g. when an extension comes in disabled
-@@ -640,8 +610,6 @@ class ExtensionService : public Extensio
+@@ -648,8 +618,6 @@ class ExtensionService : public Extensio
  
    SafeBrowsingVerdictHandler safe_browsing_verdict_handler_;
  
@@ -912,7 +912,7 @@
  
 --- a/chrome/browser/extensions/extension_system_impl.cc
 +++ b/chrome/browser/extensions/extension_system_impl.cc
-@@ -465,8 +465,6 @@ void ExtensionSystemImpl::InstallUpdate(
+@@ -464,8 +464,6 @@ void ExtensionSystemImpl::InstallUpdate(
  void ExtensionSystemImpl::PerformActionBasedOnOmahaAttributes(
      const std::string& extension_id,
      const base::Value& attributes) {
@@ -966,7 +966,7 @@
  #include "chrome/browser/ui/file_system_access_dialogs.h"
  #include "chrome/common/chrome_paths.h"
  #include "components/content_settings/core/browser/host_content_settings_map.h"
-@@ -304,83 +302,6 @@ BindResultCallbackToCurrentSequence(
+@@ -305,83 +303,6 @@ BindResultCallbackToCurrentSequence(
        base::SequencedTaskRunnerHandle::Get(), std::move(callback));
  }
  
@@ -1050,7 +1050,7 @@
  std::string GenerateLastPickedDirectoryKey(const std::string& id) {
    return id.empty() ? kDefaultLastPickedDirectoryKey
                      : base::StrCat({kCustomLastPickedDirectoryKey, "-", id});
-@@ -1133,28 +1054,6 @@ void ChromeFileSystemAccessPermissionCon
+@@ -1134,28 +1055,6 @@ void ChromeFileSystemAccessPermissionCon
                       std::move(callback)));
  }
  
@@ -1094,7 +1094,7 @@
  
 --- a/chrome/browser/media/webrtc/display_media_access_handler.cc
 +++ b/chrome/browser/media/webrtc/display_media_access_handler.cc
-@@ -24,6 +24,7 @@
+@@ -23,6 +23,7 @@
  #include "chrome/browser/safe_browsing/user_interaction_observer.h"
  #include "chrome/common/pref_names.h"
  #include "components/prefs/pref_service.h"
@@ -1110,13 +1110,13 @@
    // SafeBrowsing Delayed Warnings experiment can delay some SafeBrowsing
    // warnings until user interaction. If the current page has a delayed warning,
    // it'll have a user interaction observer attached. Show the warning
-@@ -120,6 +122,7 @@ void DisplayMediaAccessHandler::HandleRe
+@@ -121,6 +123,7 @@ void DisplayMediaAccessHandler::HandleRe
      observer->OnDesktopCaptureRequest();
      return;
    }
 +  #endif // BUILDFLAG(FULL_SAFE_BROWSING)
  
- #if defined(OS_MAC)
+ #if BUILDFLAG(IS_MAC)
    // Do not allow picker UI to be shown on a page that isn't in the foreground
 --- a/chrome/browser/notifications/notification_display_service_impl.cc
 +++ b/chrome/browser/notifications/notification_display_service_impl.cc
@@ -1124,8 +1124,8 @@
              profile_));
  #endif
  
--#if defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_MAC) || \
--    defined(OS_WIN)
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \
+-    BUILDFLAG(IS_WIN)
 -    AddNotificationHandler(
 -        NotificationHandler::Type::TAILORED_SECURITY,
 -        std::make_unique<safe_browsing::TailoredSecurityNotificationHandler>());
@@ -1144,7 +1144,7 @@
  #include "chrome/browser/safe_browsing/user_interaction_observer.h"
  #include "chrome/browser/signin/identity_manager_factory.h"
  #include "chrome/browser/sync/sync_service_factory.h"
-@@ -112,11 +111,11 @@
+@@ -114,11 +113,11 @@
  #if BUILDFLAG(FULL_SAFE_BROWSING)
  #include "chrome/browser/safe_browsing/advanced_protection_status_manager.h"
  #include "chrome/browser/safe_browsing/advanced_protection_status_manager_factory.h"
@@ -1155,9 +1155,9 @@
  #include "ui/events/keycodes/keyboard_codes.h"
 -#endif
  
- #if defined(OS_ANDROID)
+ #if BUILDFLAG(IS_ANDROID)
  #include "chrome/browser/android/tab_android.h"
-@@ -830,6 +829,7 @@ autofill::LanguageCode ChromePasswordMan
+@@ -837,6 +836,7 @@ autofill::LanguageCode ChromePasswordMan
    return autofill::LanguageCode();
  }
  
@@ -1165,32 +1165,9 @@
  safe_browsing::PasswordProtectionService*
  ChromePasswordManagerClient::GetPasswordProtectionService() const {
    return safe_browsing::ChromePasswordProtectionService::
-@@ -840,13 +840,6 @@ ChromePasswordManagerClient::GetPassword
- void ChromePasswordManagerClient::CheckSafeBrowsingReputation(
-     const GURL& form_action,
-     const GURL& frame_url) {
--  safe_browsing::PasswordProtectionService* pps =
--      GetPasswordProtectionService();
--  if (pps) {
--    pps->MaybeStartPasswordFieldOnFocusRequest(
--        web_contents(), web_contents()->GetLastCommittedURL(), form_action,
--        frame_url, pps->GetAccountInfo().hosted_domain);
--  }
- }
- #endif  // defined(ON_FOCUS_PING_ENABLED)
- 
-@@ -856,22 +849,10 @@ void ChromePasswordManagerClient::CheckP
-     const std::vector<password_manager::MatchingReusedCredential>&
-         matching_reused_credentials,
-     bool password_field_exists) {
--  safe_browsing::PasswordProtectionService* pps =
--      GetPasswordProtectionService();
--  if (!pps)
--    return;
--
--  pps->MaybeStartProtectedPasswordEntryRequest(
--      web_contents(), web_contents()->GetLastCommittedURL(), username,
--      password_type, matching_reused_credentials, password_field_exists);
+@@ -872,13 +872,9 @@ void ChromePasswordManagerClient::CheckP
+       web_contents(), web_contents()->GetLastCommittedURL(), username,
+       password_type, matching_reused_credentials, password_field_exists);
  }
 +#endif // BUILDFLAG(FULL_SAFE_BROWSING)
  
@@ -1202,8 +1179,8 @@
 -  }
  }
  
- #if !defined(OS_ANDROID)
-@@ -1390,9 +1371,11 @@ void ChromePasswordManagerClient::OnPast
+ #if !BUILDFLAG(IS_ANDROID)
+@@ -1387,9 +1383,11 @@ void ChromePasswordManagerClient::OnPast
    }
  
    was_on_paste_called_ = true;
@@ -1212,11 +1189,11 @@
 +#endif // defined(SYNC_PASSWORD_REUSE_WARNING_ENABLED)
  }
 -#endif
-+#endif //  !defined(OS_ANDROID)
++#endif //  !BUILDFLAG(IS_ANDROID)
  
  void ChromePasswordManagerClient::RenderFrameCreated(
      content::RenderFrameHost* render_frame_host) {
-@@ -1427,7 +1410,9 @@ void ChromePasswordManagerClient::OnInpu
+@@ -1424,7 +1422,9 @@ void ChromePasswordManagerClient::OnInpu
    if (key_event.windows_key_code == (ui::VKEY_V & 0x1f)) {
      OnPaste();
    } else {
@@ -1224,9 +1201,9 @@
      password_reuse_detection_manager_.OnKeyPressedCommitted(key_event.text);
 +#endif  // defined(SYNC_PASSWORD_REUSE_DETECTION_ENABLED)
    }
- #endif  // defined(OS_ANDROID)
+ #endif  // BUILDFLAG(IS_ANDROID)
  }
-@@ -1466,6 +1451,7 @@ bool ChromePasswordManagerClient::IsPass
+@@ -1463,6 +1463,7 @@ bool ChromePasswordManagerClient::IsPass
      is_enabled = false;
    }
  
@@ -1234,7 +1211,7 @@
    // SafeBrowsing Delayed Warnings experiment can delay some SafeBrowsing
    // warnings until user interaction. If the current page has a delayed warning,
    // it'll have a user interaction observer attached. Disable password
-@@ -1476,6 +1462,7 @@ bool ChromePasswordManagerClient::IsPass
+@@ -1473,6 +1474,7 @@ bool ChromePasswordManagerClient::IsPass
      observer->OnPasswordSaveOrAutofillDenied();
      is_enabled = false;
    }
@@ -1244,7 +1221,7 @@
      password_manager::BrowserSavePasswordProgressLogger logger(
 --- a/chrome/browser/password_manager/chrome_password_manager_client.h
 +++ b/chrome/browser/password_manager/chrome_password_manager_client.h
-@@ -204,13 +204,14 @@ class ChromePasswordManagerClient
+@@ -206,13 +206,14 @@ class ChromePasswordManagerClient
    void AnnotateNavigationEntry(bool has_password_field) override;
    autofill::LanguageCode GetPageLanguage() const override;
  
@@ -1260,7 +1237,7 @@
  
    void CheckProtectedPasswordEntry(
        password_manager::metrics_util::PasswordType reused_password_type,
-@@ -218,6 +219,7 @@ class ChromePasswordManagerClient
+@@ -220,6 +221,7 @@ class ChromePasswordManagerClient
        const std::vector<password_manager::MatchingReusedCredential>&
            matching_reused_credentials,
        bool password_field_exists) override;
@@ -1338,21 +1315,57 @@
  void ContextualNotificationPermissionUiSelector::OnSafeBrowsingVerdictReceived(
 --- a/chrome/browser/permissions/prediction_based_permission_ui_selector.cc
 +++ b/chrome/browser/permissions/prediction_based_permission_ui_selector.cc
-@@ -212,10 +212,8 @@ bool PredictionBasedPermissionUiSelector
+@@ -306,47 +306,5 @@ bool PredictionBasedPermissionUiSelector
+ 
+ PredictionSource PredictionBasedPermissionUiSelector::GetPredictionTypeToUse(
      permissions::RequestType request_type) {
-   // We need to also check `kQuietNotificationPrompts` here since there is no
-   // generic safeguard anywhere else in the stack.
--  if (!base::FeatureList::IsEnabled(features::kQuietNotificationPrompts) ||
--      !safe_browsing::IsSafeBrowsingEnabled(*(profile_->GetPrefs()))) {
-+  if (!base::FeatureList::IsEnabled(features::kQuietNotificationPrompts))
-     return false;
+-  if (!safe_browsing::IsSafeBrowsingEnabled(*(profile_->GetPrefs()))) {
+     return PredictionSource::USE_NONE;
+-  }
+-
+-  bool is_server_side_prediction_enabled = false;
+-  bool is_ondevice_prediction_enabled = false;
+-
+-  bool is_tflite_available = false;
+-#if BUILDFLAG(BUILD_WITH_TFLITE_LIB)
+-  is_tflite_available = true;
+-#endif  // BUILDFLAG(BUILD_WITH_TFLITE_LIB)
+-
+-  // Notification supports both flavours of the quiet prompt
+-  if (request_type == permissions::RequestType::kNotifications &&
+-      (base::FeatureList::IsEnabled(features::kQuietNotificationPrompts) ||
+-       base::FeatureList::IsEnabled(
+-           permissions::features::kPermissionQuietChip))) {
+-    is_server_side_prediction_enabled =
+-        base::FeatureList::IsEnabled(features::kPermissionPredictions);
+-
+-    is_ondevice_prediction_enabled =
+-        is_tflite_available &&
+-        base::FeatureList::IsEnabled(
+-            permissions::features::kPermissionOnDeviceNotificationPredictions);
+-  }
+-
+-  // Geolocation supports only the quiet chip ui
+-  if (request_type == permissions::RequestType::kGeolocation &&
+-      base::FeatureList::IsEnabled(
+-          permissions::features::kPermissionQuietChip)) {
+-    is_server_side_prediction_enabled = base::FeatureList::IsEnabled(
+-        features::kPermissionGeolocationPredictions);
 -  }
-   double hold_back_chance = 0.0;
-   bool is_permissions_predictions_enabled = false;
-   switch (request_type) {
+-
+-  if (is_server_side_prediction_enabled && is_ondevice_prediction_enabled) {
+-    return PredictionSource::USE_ANY;
+-  } else if (is_server_side_prediction_enabled) {
+-    return PredictionSource::USE_SERVER_SIDE;
+-  } else if (is_ondevice_prediction_enabled) {
+-    return PredictionSource::USE_ONDEVICE;
+-  } else {
+-    return PredictionSource::USE_NONE;
+-  }
+ }
 --- a/chrome/browser/prefs/browser_prefs.cc
 +++ b/chrome/browser/prefs/browser_prefs.cc
-@@ -241,7 +241,6 @@
+@@ -244,7 +244,6 @@
  #include "chrome/browser/nearby_sharing/common/nearby_share_prefs.h"
  #include "chrome/browser/new_tab_page/modules/drive/drive_service.h"
  #include "chrome/browser/new_tab_page/modules/photos/photos_service.h"
@@ -1360,7 +1373,7 @@
  #include "chrome/browser/new_tab_page/modules/task_module/task_module_service.h"
  #include "chrome/browser/new_tab_page/promos/promo_service.h"
  #include "chrome/browser/search/background/ntp_custom_background_service.h"
-@@ -1283,7 +1282,6 @@ void RegisterProfilePrefs(user_prefs::Pr
+@@ -1348,7 +1347,6 @@ void RegisterProfilePrefs(user_prefs::Pr
    NewTabPageHandler::RegisterProfilePrefs(registry);
    NewTabPageUI::RegisterProfilePrefs(registry);
    NewTabUI::RegisterProfilePrefs(registry);
@@ -1370,14 +1383,14 @@
    PinnedTabCodec::RegisterProfilePrefs(registry);
 --- a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
 +++ b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
-@@ -506,7 +506,6 @@ void ChromeBrowserMainExtraPartsProfiles
+@@ -517,7 +517,6 @@ void ChromeBrowserMainExtraPartsProfiles
      SystemExtensionsProviderFactory::GetInstance();
  #endif
    TabRestoreServiceFactory::GetInstance();
 -  safe_browsing::TailoredSecurityServiceFactory::GetInstance();
    TemplateURLFetcherFactory::GetInstance();
    TemplateURLServiceFactory::GetInstance();
- #if !defined(OS_ANDROID)
+ #if !BUILDFLAG(IS_ANDROID)
 --- a/chrome/browser/reputation/reputation_service.cc
 +++ b/chrome/browser/reputation/reputation_service.cc
 @@ -119,9 +119,7 @@ void ReputationService::GetReputationSta
@@ -1393,7 +1406,7 @@
    if (service->EngagedSitesNeedUpdating()) {
 --- a/chrome/browser/resources/settings/privacy_page/privacy_review/privacy_review_page.ts
 +++ b/chrome/browser/resources/settings/privacy_page/privacy_review/privacy_review_page.ts
-@@ -16,7 +16,6 @@ import './privacy_review_completion_frag
+@@ -17,7 +17,6 @@ import './privacy_review_completion_frag
  import './privacy_review_cookies_fragment.js';
  import './privacy_review_history_sync_fragment.js';
  import './privacy_review_msbb_fragment.js';
@@ -1453,7 +1466,7 @@
  }  // namespace safe_browsing
 --- a/chrome/browser/ssl/chrome_security_blocking_page_factory.cc
 +++ b/chrome/browser/ssl/chrome_security_blocking_page_factory.cc
-@@ -142,15 +142,6 @@ CreateSettingsPageHelper() {
+@@ -143,15 +143,6 @@ CreateSettingsPageHelper() {
        CreateChromeSettingsPageHelper();
  }
  
@@ -1469,7 +1482,7 @@
  }  // namespace
  
  std::unique_ptr<SSLBlockingPage>
-@@ -174,10 +165,6 @@ ChromeSecurityBlockingPageFactory::Creat
+@@ -175,10 +166,6 @@ ChromeSecurityBlockingPageFactory::Creat
            Profile::FromBrowserContext(web_contents->GetBrowserContext()));
    state->DidDisplayErrorPage(cert_error);
  
@@ -1480,7 +1493,7 @@
    auto controller_client = std::make_unique<SSLErrorControllerClient>(
        web_contents, ssl_info, cert_error, request_url,
        std::move(metrics_helper), CreateSettingsPageHelper());
-@@ -247,10 +234,6 @@ ChromeSecurityBlockingPageFactory::Creat
+@@ -248,10 +235,6 @@ ChromeSecurityBlockingPageFactory::Creat
      std::unique_ptr<SSLCertReporter> ssl_cert_reporter,
      const net::SSLInfo& ssl_info,
      const std::string& mitm_software_name) {
@@ -1491,7 +1504,7 @@
    auto page = std::make_unique<MITMSoftwareBlockingPage>(
        web_contents, cert_error, request_url, std::move(ssl_cert_reporter),
        /*can_show_enhanced_protection_message=*/true, ssl_info,
-@@ -272,10 +255,6 @@ ChromeSecurityBlockingPageFactory::Creat
+@@ -273,10 +256,6 @@ ChromeSecurityBlockingPageFactory::Creat
      const GURL& request_url,
      std::unique_ptr<SSLCertReporter> ssl_cert_reporter,
      const net::SSLInfo& ssl_info) {
@@ -1545,7 +1558,7 @@
  }  // namespace
 --- a/chrome/browser/ui/BUILD.gn
 +++ b/chrome/browser/ui/BUILD.gn
-@@ -544,7 +544,6 @@ static_library("ui") {
+@@ -546,7 +546,6 @@ static_library("ui") {
      "//components/renderer_context_menu",
      "//components/resources",
      "//components/safe_browsing/content/browser",
@@ -1553,7 +1566,7 @@
      "//components/safe_browsing/content/browser/password_protection",
      "//components/safe_browsing/content/browser/web_ui",
      "//components/safe_browsing/core/browser/db:database_manager",
-@@ -4499,8 +4498,6 @@ static_library("ui") {
+@@ -4523,8 +4522,6 @@ static_library("ui") {
        "views/safe_browsing/password_reuse_modal_warning_dialog.h",
        "views/safe_browsing/prompt_for_scanning_modal_dialog.cc",
        "views/safe_browsing/prompt_for_scanning_modal_dialog.h",
@@ -1688,7 +1701,7 @@
    open_button_->SetEnabled((mode_ == download::DownloadItemMode::kNormal) ||
                             prompt_to_scan || allow_open_during_deep_scan);
  
-@@ -1428,7 +1430,9 @@ void DownloadItemView::ShowContextMenuIm
+@@ -1433,7 +1435,9 @@ void DownloadItemView::ShowContextMenuIm
  }
  
  void DownloadItemView::OpenDownloadDuringAsyncScanning() {
@@ -1710,7 +1723,7 @@
  
 --- a/chrome/browser/ui/webui/management/management_ui_handler.cc
 +++ b/chrome/browser/ui/webui/management/management_ui_handler.cc
-@@ -805,12 +805,6 @@ base::Value ManagementUIHandler::GetThre
+@@ -819,12 +819,6 @@ base::Value ManagementUIHandler::GetThre
                                    &info);
    }
  
@@ -1725,7 +1738,7 @@
  
 --- a/chrome/browser/webshare/share_service_impl.cc
 +++ b/chrome/browser/webshare/share_service_impl.cc
-@@ -15,7 +15,9 @@
+@@ -16,7 +16,9 @@
  #include "chrome/browser/browser_process.h"
  #include "chrome/browser/safe_browsing/safe_browsing_service.h"
  #include "chrome/common/chrome_features.h"
@@ -1735,7 +1748,7 @@
  #include "components/safe_browsing/core/browser/db/database_manager.h"
  #include "content/public/browser/web_contents.h"
  #include "mojo/public/cpp/bindings/self_owned_receiver.h"
-@@ -195,11 +197,13 @@ void ShareServiceImpl::Share(const std::
+@@ -196,11 +198,13 @@ void ShareServiceImpl::Share(const std::
      // Check if at least one file is marked by the download protection service
      // to send a ping to check this file type.
      const base::FilePath path = base::FilePath::FromUTF8Unsafe(file->name);
@@ -1749,7 +1762,7 @@
  
      // In the case where the original blob handle was to a native file (of
      // unknown size), the serialized data does not contain an accurate file
-@@ -209,6 +213,7 @@ void ShareServiceImpl::Share(const std::
+@@ -210,6 +214,7 @@ void ShareServiceImpl::Share(const std::
    }
  
    DCHECK(!safe_browsing_request_);
@@ -1757,7 +1770,7 @@
    if (should_check_url && g_browser_process->safe_browsing_service()) {
      safe_browsing_request_.emplace(
          g_browser_process->safe_browsing_service()->database_manager(),
-@@ -218,6 +223,7 @@ void ShareServiceImpl::Share(const std::
+@@ -219,6 +224,7 @@ void ShareServiceImpl::Share(const std::
                         std::move(files), std::move(callback)));
      return;
    }
@@ -1767,7 +1780,7 @@
                                 std::move(callback),
 --- a/chrome/test/BUILD.gn
 +++ b/chrome/test/BUILD.gn
-@@ -1212,7 +1212,6 @@ if (!is_android && !is_fuchsia) {
+@@ -1251,7 +1251,6 @@ if (!is_android && !is_fuchsia) {
        "//components/resources",
        "//components/safe_browsing:buildflags",
        "//components/safe_browsing/content/browser",
@@ -1775,7 +1788,7 @@
        "//components/safe_browsing/content/browser:safe_browsing_service",
        "//components/safe_browsing/content/browser/password_protection",
        "//components/safe_browsing/content/browser/password_protection:test_support",
-@@ -5348,7 +5347,6 @@ test("unit_tests") {
+@@ -5376,7 +5375,6 @@ test("unit_tests") {
      "//components/resources",
      "//components/safe_browsing:buildflags",
      "//components/safe_browsing/content/browser",
@@ -1796,7 +1809,7 @@
  }
 --- a/components/password_manager/core/browser/password_manager_client.h
 +++ b/components/password_manager/core/browser/password_manager_client.h
-@@ -340,11 +340,14 @@ class PasswordManagerClient {
+@@ -344,11 +344,14 @@ class PasswordManagerClient {
    // Returns the current best guess as to the page's display language.
    virtual autofill::LanguageCode GetPageLanguage() const;
  
@@ -1812,7 +1825,7 @@
    // Checks the safe browsing reputation of the webpage when the
    // user focuses on a username/password field. This is used for reporting
    // only, and won't trigger a warning.
-@@ -352,6 +355,7 @@ class PasswordManagerClient {
+@@ -356,6 +359,7 @@ class PasswordManagerClient {
                                             const GURL& frame_url) = 0;
  #endif
  
@@ -1820,7 +1833,7 @@
    // Checks the safe browsing reputation of the webpage where password reuse
    // happens. This is called by the PasswordReuseDetectionManager when a
    // protected password is typed on the wrong domain. This may trigger a
-@@ -364,6 +368,7 @@ class PasswordManagerClient {
+@@ -368,6 +372,7 @@ class PasswordManagerClient {
        const std::string& username,
        const std::vector<MatchingReusedCredential>& matching_reused_credentials,
        bool password_field_exists) = 0;

文件差異過大導致無法顯示
+ 138 - 128
patches/core/ungoogled-chromium/remove-unused-preferences-fields.patch


+ 3 - 3
patches/core/ungoogled-chromium/toggle-translation-via-switch.patch

@@ -1,7 +1,7 @@
 # Disables translation and removes the "Translate to" context menu when --translate-script-url flag is not set
 --- a/chrome/browser/renderer_context_menu/render_view_context_menu.cc
 +++ b/chrome/browser/renderer_context_menu/render_view_context_menu.cc
-@@ -136,6 +136,7 @@
+@@ -137,6 +137,7 @@
  #include "components/spellcheck/common/spellcheck_common.h"
  #include "components/spellcheck/spellcheck_buildflags.h"
  #include "components/strings/grit/components_strings.h"
@@ -9,7 +9,7 @@
  #include "components/translate/core/browser/translate_download_manager.h"
  #include "components/translate/core/browser/translate_manager.h"
  #include "components/translate/core/browser/translate_prefs.h"
-@@ -1765,6 +1766,8 @@ void RenderViewContextMenu::AppendPageIt
+@@ -1721,6 +1722,8 @@ void RenderViewContextMenu::AppendPageIt
      menu_model_.AddSeparator(ui::NORMAL_SEPARATOR);
    }
  
@@ -18,7 +18,7 @@
    ChromeTranslateClient* chrome_translate_client =
        ChromeTranslateClient::FromWebContents(embedder_web_contents_);
    const bool canTranslate =
-@@ -1786,6 +1789,7 @@ void RenderViewContextMenu::AppendPageIt
+@@ -1742,6 +1745,7 @@ void RenderViewContextMenu::AppendPageIt
          IDC_CONTENT_CONTEXT_TRANSLATE,
          l10n_util::GetStringFUTF16(IDS_CONTENT_CONTEXT_TRANSLATE, language));
    }

+ 26 - 26
patches/extra/bromite/fingerprinting-flags-client-rects-and-measuretext.patch

@@ -9,7 +9,7 @@
 
 --- a/chrome/browser/BUILD.gn
 +++ b/chrome/browser/BUILD.gn
-@@ -2379,6 +2379,7 @@ static_library("browser") {
+@@ -2373,6 +2373,7 @@ static_library("browser") {
      "//third_party/libyuv",
      "//third_party/metrics_proto",
      "//third_party/re2",
@@ -19,7 +19,7 @@
      "//third_party/widevine/cdm:headers",
 --- a/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
-@@ -148,6 +148,7 @@
+@@ -149,6 +149,7 @@
  #include "components/translate/core/browser/translate_ranker_impl.h"
  #include "components/translate/core/common/translate_util.h"
  #include "components/ui_devtools/switches.h"
@@ -44,7 +44,7 @@
  #endif  // CHROME_BROWSER_BROMITE_FLAG_ENTRIES_H_
 --- a/content/browser/BUILD.gn
 +++ b/content/browser/BUILD.gn
-@@ -223,6 +223,7 @@ source_set("browser") {
+@@ -224,6 +224,7 @@ source_set("browser") {
      "//third_party/libyuv",
      "//third_party/re2",
      "//third_party/sqlite",
@@ -54,7 +54,7 @@
      "//third_party/zlib",
 --- a/content/browser/renderer_host/render_process_host_impl.cc
 +++ b/content/browser/renderer_host/render_process_host_impl.cc
-@@ -69,6 +69,7 @@
+@@ -74,6 +74,7 @@
  #include "components/services/storage/public/mojom/cache_storage_control.mojom.h"
  #include "components/services/storage/public/mojom/indexed_db_control.mojom.h"
  #include "components/tracing/common/tracing_switches.h"
@@ -62,7 +62,7 @@
  #include "components/viz/common/switches.h"
  #include "components/viz/host/gpu_client.h"
  #include "content/browser/bad_message.h"
-@@ -3338,6 +3339,8 @@ void RenderProcessHostImpl::PropagateBro
+@@ -3352,6 +3353,8 @@ void RenderProcessHostImpl::PropagateBro
      switches::kEnableWebGLDraftExtensions,
      switches::kEnableWebGLImageChromium,
      switches::kFileUrlPathAlias,
@@ -91,7 +91,7 @@
  #include "ui/accessibility/accessibility_features.h"
  #include "ui/base/ui_base_features.h"
  #include "ui/events/blink/blink_features.h"
-@@ -484,6 +485,10 @@ void SetRuntimeFeaturesFromCommandLine(c
+@@ -486,6 +487,10 @@ void SetRuntimeFeaturesFromCommandLine(c
        {wrf::EnableWebGPU, switches::kEnableUnsafeWebGPU, true},
        {wrf::ForceOverlayFullscreenVideo, switches::kForceOverlayFullscreenVideo,
         true},
@@ -104,7 +104,7 @@
      if (command_line.HasSwitch(mapping.switch_name))
 --- a/third_party/blink/public/platform/web_runtime_features.h
 +++ b/third_party/blink/public/platform/web_runtime_features.h
-@@ -221,6 +221,8 @@ class WebRuntimeFeatures {
+@@ -219,6 +219,8 @@ class WebRuntimeFeatures {
    BLINK_PLATFORM_EXPORT static void EnableMediaControlsExpandGesture(bool);
    BLINK_PLATFORM_EXPORT static void EnableGetDisplayMedia(bool);
    BLINK_PLATFORM_EXPORT static void EnableAllowSyncXHRInPageDismissal(bool);
@@ -123,7 +123,7 @@
  #include "base/time/time.h"
  #include "cc/input/overscroll_behavior.h"
  #include "cc/input/scroll_snap_data.h"
-@@ -870,6 +871,14 @@ Range* Document::CreateRangeAdjustedToTr
+@@ -876,6 +877,14 @@ Range* Document::CreateRangeAdjustedToTr
                                       Position::BeforeNode(*shadow_host));
  }
  
@@ -138,7 +138,7 @@
  SelectorQueryCache& Document::GetSelectorQueryCache() {
    if (!selector_query_cache_)
      selector_query_cache_ = std::make_unique<SelectorQueryCache>();
-@@ -2173,6 +2182,15 @@ void Document::UpdateStyleAndLayoutTreeF
+@@ -2179,6 +2188,15 @@ void Document::UpdateStyleAndLayoutTreeF
  #if DCHECK_IS_ON()
    AssertLayoutTreeUpdated(*this, true /* allow_dirty_container_subtrees */);
  #endif
@@ -156,7 +156,7 @@
  void Document::InvalidateStyleAndLayoutForFontUpdates() {
 --- a/third_party/blink/renderer/core/dom/document.h
 +++ b/third_party/blink/renderer/core/dom/document.h
-@@ -457,6 +457,10 @@ class CORE_EXPORT Document : public Cont
+@@ -480,6 +480,10 @@ class CORE_EXPORT Document : public Cont
      has_xml_declaration_ = has_xml_declaration ? 1 : 0;
    }
  
@@ -167,7 +167,7 @@
    AtomicString visibilityState() const;
    bool IsPageVisible() const;
    bool hidden() const;
-@@ -2086,6 +2090,9 @@ class CORE_EXPORT Document : public Cont
+@@ -2132,6 +2136,9 @@ class CORE_EXPORT Document : public Cont
  
    base::ElapsedTimer start_time_;
  
@@ -179,22 +179,22 @@
    HeapVector<Member<ScriptElementBase>> current_script_stack_;
 --- a/third_party/blink/renderer/core/dom/element.cc
 +++ b/third_party/blink/renderer/core/dom/element.cc
-@@ -2052,6 +2052,11 @@ DOMRectList* Element::getClientRects() {
+@@ -2074,6 +2074,11 @@ DOMRectList* Element::getClientRects() {
    DCHECK(element_layout_object);
-   GetDocument().AdjustFloatQuadsForScrollAndAbsoluteZoom(
-       quads, *element_layout_object);
+   GetDocument().AdjustQuadsForScrollAndAbsoluteZoom(quads,
+                                                     *element_layout_object);
 +  if (RuntimeEnabledFeatures::FingerprintingClientRectsNoiseEnabled()) {
-+    for (FloatQuad& quad : quads) {
++    for (gfx::QuadF& quad : quads) {
 +      quad.Scale(GetDocument().GetNoiseFactorX(), GetDocument().GetNoiseFactorY());
 +    }
 +  }
    return MakeGarbageCollected<DOMRectList>(quads);
  }
  
-@@ -2069,6 +2074,9 @@ FloatRect Element::GetBoundingClientRect
+@@ -2091,6 +2096,9 @@ gfx::RectF Element::GetBoundingClientRec
    DCHECK(element_layout_object);
-   GetDocument().AdjustFloatRectForScrollAndAbsoluteZoom(result,
-                                                         *element_layout_object);
+   GetDocument().AdjustRectForScrollAndAbsoluteZoom(result,
+                                                    *element_layout_object);
 +  if (RuntimeEnabledFeatures::FingerprintingClientRectsNoiseEnabled()) {
 +    result.Scale(GetDocument().GetNoiseFactorX(), GetDocument().GetNoiseFactorY());
 +  }
@@ -204,11 +204,11 @@
 --- a/third_party/blink/renderer/core/dom/range.cc
 +++ b/third_party/blink/renderer/core/dom/range.cc
 @@ -1598,11 +1598,21 @@ DOMRectList* Range::getClientRects() con
-   Vector<FloatQuad> quads;
+   Vector<gfx::QuadF> quads;
    GetBorderAndTextQuads(quads);
  
 +  if (RuntimeEnabledFeatures::FingerprintingClientRectsNoiseEnabled()) {
-+    for (FloatQuad& quad : quads) {
++    for (gfx::QuadF& quad : quads) {
 +      quad.Scale(owner_document_->GetNoiseFactorX(), owner_document_->GetNoiseFactorY());
 +    }
 +  }
@@ -217,12 +217,12 @@
  }
  
  DOMRect* Range::getBoundingClientRect() const {
--  return DOMRect::FromFloatRect(BoundingRect());
+-  return DOMRect::FromRectF(BoundingRect());
 +  auto rect = BoundingRect();
 +  if (RuntimeEnabledFeatures::FingerprintingClientRectsNoiseEnabled()) {
 +    rect.Scale(owner_document_->GetNoiseFactorX(), owner_document_->GetNoiseFactorY());
 +  }
-+  return DOMRect::FromFloatRect(rect);
++  return DOMRect::FromRectF(rect);
  }
  
  // TODO(editing-dev): We should make
@@ -266,7 +266,7 @@
                const TextDirection&,
 --- a/third_party/blink/renderer/modules/canvas/canvas2d/canvas_rendering_context_2d.cc
 +++ b/third_party/blink/renderer/modules/canvas/canvas2d/canvas_rendering_context_2d.cc
-@@ -921,9 +921,15 @@ TextMetrics* CanvasRenderingContext2D::m
+@@ -920,9 +920,15 @@ TextMetrics* CanvasRenderingContext2D::m
    TextDirection direction =
        ToTextDirection(GetState().GetDirection(), canvas());
  
@@ -285,7 +285,7 @@
  void CanvasRenderingContext2D::fillFormattedText(
 --- a/third_party/blink/renderer/platform/BUILD.gn
 +++ b/third_party/blink/renderer/platform/BUILD.gn
-@@ -1684,6 +1684,7 @@ component("platform") {
+@@ -1663,6 +1663,7 @@ component("platform") {
      "//components/paint_preview/common",
      "//components/power_scheduler",
      "//components/search_engines:search_engine_utils",
@@ -295,7 +295,7 @@
      "//crypto",
 --- a/third_party/blink/renderer/platform/exported/web_runtime_features.cc
 +++ b/third_party/blink/renderer/platform/exported/web_runtime_features.cc
-@@ -697,4 +697,12 @@ void WebRuntimeFeatures::EnableCLSScroll
+@@ -691,4 +691,12 @@ void WebRuntimeFeatures::EnableCLSScroll
    RuntimeEnabledFeatures::SetCLSScrollAnchoringEnabled(enable);
  }
  
@@ -310,7 +310,7 @@
  }  // namespace blink
 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
-@@ -1102,6 +1102,12 @@
+@@ -1103,6 +1103,12 @@
        origin_trial_feature_name: "Fledge",
      },
      {

+ 8 - 8
patches/extra/bromite/flag-fingerprinting-canvas-image-data-noise.patch

@@ -34,7 +34,7 @@ approach to change color components.
  #endif  // CHROME_BROWSER_BROMITE_FLAG_ENTRIES_H_
 --- a/content/browser/renderer_host/render_process_host_impl.cc
 +++ b/content/browser/renderer_host/render_process_host_impl.cc
-@@ -3341,6 +3341,7 @@ void RenderProcessHostImpl::PropagateBro
+@@ -3355,6 +3355,7 @@ void RenderProcessHostImpl::PropagateBro
      switches::kFileUrlPathAlias,
      switches::kFingerprintingClientRectsNoise,
      switches::kFingerprintingCanvasMeasureTextNoise,
@@ -44,7 +44,7 @@ approach to change color components.
      switches::kForceGpuMemAvailableMb,
 --- a/content/child/runtime_features.cc
 +++ b/content/child/runtime_features.cc
-@@ -489,6 +489,8 @@ void SetRuntimeFeaturesFromCommandLine(c
+@@ -491,6 +491,8 @@ void SetRuntimeFeaturesFromCommandLine(c
         switches::kFingerprintingClientRectsNoise, true},
        {wrf::EnableFingerprintingCanvasMeasureTextNoise,
         switches::kFingerprintingCanvasMeasureTextNoise, true},
@@ -55,7 +55,7 @@ approach to change color components.
      if (command_line.HasSwitch(mapping.switch_name))
 --- a/third_party/blink/public/platform/web_runtime_features.h
 +++ b/third_party/blink/public/platform/web_runtime_features.h
-@@ -223,6 +223,7 @@ class WebRuntimeFeatures {
+@@ -221,6 +221,7 @@ class WebRuntimeFeatures {
    BLINK_PLATFORM_EXPORT static void EnableAllowSyncXHRInPageDismissal(bool);
    BLINK_PLATFORM_EXPORT static void EnableFingerprintingClientRectsNoise(bool);
    BLINK_PLATFORM_EXPORT static void EnableFingerprintingCanvasMeasureTextNoise(bool);
@@ -65,7 +65,7 @@ approach to change color components.
    BLINK_PLATFORM_EXPORT static void EnableSubresourceWebBundles(bool);
 --- 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
-@@ -30,6 +30,7 @@
+@@ -29,6 +29,7 @@
  #include "third_party/blink/renderer/platform/graphics/bitmap_image.h"
  #include "third_party/blink/renderer/platform/graphics/graphics_context.h"
  #include "third_party/blink/renderer/platform/graphics/skia/skia_utils.h"
@@ -73,7 +73,7 @@ approach to change color components.
  #include "third_party/blink/renderer/platform/graphics/stroke_data.h"
  #include "third_party/blink/renderer/platform/graphics/video_frame_image_util.h"
  #include "third_party/blink/renderer/platform/heap/garbage_collected.h"
-@@ -2055,6 +2056,9 @@ ImageData* BaseRenderingContext2D::getIm
+@@ -2050,6 +2051,9 @@ ImageData* BaseRenderingContext2D::getIm
            snapshot->PaintImageForCurrentFrame().GetSkImageInfo().bounds();
        DCHECK(!bounds.intersect(SkIRect::MakeXYWH(sx, sy, sw, sh)));
      }
@@ -85,7 +85,7 @@ approach to change color components.
    return image_data;
 --- a/third_party/blink/renderer/platform/BUILD.gn
 +++ b/third_party/blink/renderer/platform/BUILD.gn
-@@ -1641,7 +1641,9 @@ component("platform") {
+@@ -1621,7 +1621,9 @@ component("platform") {
      "//third_party/blink/renderer:non_test_config",
    ]
  
@@ -98,7 +98,7 @@ approach to change color components.
      "//third_party/blink/renderer/platform/blob",
 --- a/third_party/blink/renderer/platform/exported/web_runtime_features.cc
 +++ b/third_party/blink/renderer/platform/exported/web_runtime_features.cc
-@@ -705,4 +705,8 @@ void WebRuntimeFeatures::EnableFingerpri
+@@ -699,4 +699,8 @@ void WebRuntimeFeatures::EnableFingerpri
    RuntimeEnabledFeatures::SetFingerprintingCanvasMeasureTextNoiseEnabled(enable);
  }
  
@@ -322,7 +322,7 @@ approach to change color components.
    // Methods overridden by all sub-classes
 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
-@@ -1108,6 +1108,9 @@
+@@ -1109,6 +1109,9 @@
        name: "FingerprintingCanvasMeasureTextNoise",
      },
      {

+ 7 - 7
patches/extra/bromite/flag-max-connections-per-host.patch

@@ -17,7 +17,7 @@ with limited CPU/memory resources and it is disabled by default.
 
 --- a/chrome/browser/BUILD.gn
 +++ b/chrome/browser/BUILD.gn
-@@ -2134,6 +2134,7 @@ static_library("browser") {
+@@ -2128,6 +2128,7 @@ static_library("browser") {
      "//components/net_log",
      "//components/network_hints/common:mojo_bindings",
      "//components/network_session_configurator/browser",
@@ -62,7 +62,7 @@ with limited CPU/memory resources and it is disabled by default.
  #include "base/synchronization/waitable_event.h"
  #include "base/task/single_thread_task_runner.h"
  #include "base/task/task_traits.h"
-@@ -103,6 +105,7 @@
+@@ -104,6 +106,7 @@
  #include "components/metrics/metrics_service.h"
  #include "components/metrics_services_manager/metrics_services_manager.h"
  #include "components/metrics_services_manager/metrics_services_manager_client.h"
@@ -70,7 +70,7 @@ with limited CPU/memory resources and it is disabled by default.
  #include "components/network_time/network_time_tracker.h"
  #include "components/permissions/permissions_client.h"
  #include "components/policy/core/common/policy_service.h"
-@@ -135,6 +138,7 @@
+@@ -136,6 +139,7 @@
  #include "media/media_buildflags.h"
  #include "mojo/public/cpp/bindings/pending_receiver.h"
  #include "net/log/net_log.h"
@@ -78,9 +78,9 @@ with limited CPU/memory resources and it is disabled by default.
  #include "ppapi/buildflags/buildflags.h"
  #include "printing/buildflags/buildflags.h"
  #include "services/network/public/cpp/features.h"
-@@ -345,6 +349,18 @@ void BrowserProcessImpl::Init() {
+@@ -344,6 +348,18 @@ void BrowserProcessImpl::Init() {
+   pref_change_registrar_.Add(metrics::prefs::kMetricsReportingEnabled,
                               base::BindRepeating(&ApplyMetricsReportingPolicy));
- #endif
  
 +  int max_connections_per_host = 0;
 +  auto switch_value = base::CommandLine::ForCurrentProcess()->GetSwitchValueASCII(
@@ -99,7 +99,7 @@ with limited CPU/memory resources and it is disabled by default.
  
 --- a/chrome/browser/flag_descriptions.cc
 +++ b/chrome/browser/flag_descriptions.cc
-@@ -1583,6 +1583,10 @@ const char kLogJsConsoleMessagesDescript
+@@ -1559,6 +1559,10 @@ const char kLogJsConsoleMessagesDescript
      "Enable logging JS console messages in system logs, please note that they "
      "may contain PII.";
  
@@ -112,7 +112,7 @@ with limited CPU/memory resources and it is disabled by default.
  const char kMediaRouterCastAllowAllIPsDescription[] =
 --- a/chrome/browser/flag_descriptions.h
 +++ b/chrome/browser/flag_descriptions.h
-@@ -916,6 +916,9 @@ extern const char kLensCameraAssistedSea
+@@ -896,6 +896,9 @@ extern const char kLensCameraAssistedSea
  extern const char kLogJsConsoleMessagesName[];
  extern const char kLogJsConsoleMessagesDescription[];
  

+ 2 - 2
patches/extra/debian/disable/welcome-page.patch

@@ -4,11 +4,11 @@ bug-debian: http://bugs.debian.org/857767
 
 --- a/chrome/browser/profiles/profile_manager.cc
 +++ b/chrome/browser/profiles/profile_manager.cc
-@@ -1347,7 +1347,7 @@ void ProfileManager::InitProfileUserPref
+@@ -1370,7 +1370,7 @@ void ProfileManager::InitProfileUserPref
      profile->GetPrefs()->SetString(prefs::kSupervisedUserId,
                                     supervised_user_id);
    }
--#if !defined(OS_ANDROID)
+-#if !BUILDFLAG(IS_ANDROID)
 +#if 0
    // TODO(pmonette): Fix IsNewProfile() to handle the case where the profile is
    // new even if the "Preferences" file already existed. (For example: The

+ 4 - 15
patches/extra/inox-patchset/0006-modify-default-prefs.patch

@@ -12,7 +12,7 @@
  void BackgroundModeManager::RegisterProfile(Profile* profile) {
 --- a/chrome/browser/chrome_content_browser_client.cc
 +++ b/chrome/browser/chrome_content_browser_client.cc
-@@ -1253,7 +1253,7 @@ void ChromeContentBrowserClient::Registe
+@@ -1260,7 +1260,7 @@ void ChromeContentBrowserClient::Registe
  void ChromeContentBrowserClient::RegisterProfilePrefs(
      user_prefs::PrefRegistrySyncable* registry) {
    registry->RegisterBooleanPref(prefs::kDisable3DAPIs, false);
@@ -23,7 +23,7 @@
    // used for mapping the command-line flags).
 --- a/chrome/browser/net/profile_network_context_service.cc
 +++ b/chrome/browser/net/profile_network_context_service.cc
-@@ -324,7 +324,7 @@ void ProfileNetworkContextService::Updat
+@@ -332,7 +332,7 @@ void ProfileNetworkContextService::Updat
  void ProfileNetworkContextService::RegisterProfilePrefs(
      user_prefs::PrefRegistrySyncable* registry) {
    registry->RegisterBooleanPref(
@@ -52,7 +52,7 @@
 -      true,
 +      false,
        user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
- #if defined(OS_ANDROID)
+ #if BUILDFLAG(IS_ANDROID)
    registry->RegisterStringPref(
 --- a/chrome/browser/resources/settings/reset_page/reset_profile_dialog.html
 +++ b/chrome/browser/resources/settings/reset_page/reset_profile_dialog.html
@@ -67,7 +67,7 @@
      </cr-dialog>
 --- a/chrome/browser/signin/account_consistency_mode_manager.cc
 +++ b/chrome/browser/signin/account_consistency_mode_manager.cc
-@@ -111,7 +111,7 @@ AccountConsistencyModeManager::~AccountC
+@@ -110,7 +110,7 @@ AccountConsistencyModeManager::~AccountC
  // static
  void AccountConsistencyModeManager::RegisterProfilePrefs(
      user_prefs::PrefRegistrySyncable* registry) {
@@ -92,17 +92,6 @@
    registry->RegisterDictionaryPref(prefs::kBrowserWindowPlacement);
    registry->RegisterDictionaryPref(prefs::kBrowserWindowPlacementPopup);
    registry->RegisterDictionaryPref(prefs::kAppWindowPlacement);
---- a/chrome/service/cloud_print/connector_settings.cc
-+++ b/chrome/service/cloud_print/connector_settings.cc
-@@ -60,7 +60,7 @@ void ConnectorSettings::InitFrom(Service
-   DCHECK(server_url_.is_valid());
- 
-   connect_new_printers_ = prefs->GetBoolean(
--      prefs::kCloudPrintConnectNewPrinters, true);
-+      prefs::kCloudPrintConnectNewPrinters, false);
- 
-   xmpp_ping_enabled_ = prefs->GetBoolean(
-       prefs::kCloudPrintXmppPingEnabled, false);
 --- a/components/autofill/core/common/autofill_prefs.cc
 +++ b/components/autofill/core/common/autofill_prefs.cc
 @@ -131,10 +131,10 @@ const char kAutocompleteLastVersionReten

+ 1 - 1
patches/extra/inox-patchset/0008-restore-classic-ntp.patch

@@ -1,6 +1,6 @@
 --- a/chrome/browser/search/search.cc
 +++ b/chrome/browser/search/search.cc
-@@ -182,26 +182,7 @@ struct NewTabURLDetails {
+@@ -184,26 +184,7 @@ struct NewTabURLDetails {
                               : chrome::kChromeUINewTabPageThirdPartyURL);
  #endif
  

+ 1 - 1
patches/extra/inox-patchset/0018-disable-first-run-behaviour.patch

@@ -1,6 +1,6 @@
 --- a/chrome/browser/ui/startup/startup_tab_provider.cc
 +++ b/chrome/browser/ui/startup/startup_tab_provider.cc
-@@ -107,7 +107,7 @@ bool ValidateUrl(const GURL& url) {
+@@ -108,7 +108,7 @@ bool ValidateUrl(const GURL& url) {
  
  StartupTabs StartupTabProviderImpl::GetOnboardingTabs(Profile* profile) const {
  // Chrome OS has its own welcome flow provided by OOBE.

+ 5 - 17
patches/extra/iridium-browser/Remove-EV-certificates.patch

@@ -7,16 +7,15 @@ The team chose to let EV certificates appear just like normal
 certificates. The web of trust is considered a failure in itself, so
 do not give users a false sense of extra security with EV certs.
 Instead, let them appear just like regular ones.
----
- net/cert/ev_root_ca_metadata.cc | 14 +++++++++++++-
- 1 file changed, 13 insertions(+), 1 deletion(-)
 
 --- a/net/cert/ev_root_ca_metadata.cc
 +++ b/net/cert/ev_root_ca_metadata.cc
-@@ -41,6 +41,16 @@ struct EVMetadata {
+@@ -41,7 +41,17 @@ struct EVMetadata {
+   const base::StringPiece policy_oids[kMaxOIDsPerCA];
+ };
  
- // These certificates may be found in net/data/ssl/ev_roots.
- static const EVMetadata kEvRootCaMetadata[] = {
+-#include "net/data/ssl/ev_roots/chrome-ev-root-store-inc.cc"
++static const EVMetadata kEvRootCaMetadata[] = {
 +    // need some dummy thing to make compiler happy, because
 +    // arraysize() is implemented as a convoluted template rather than
 +    // the traditional sizeof(x)/sizeof(*x)
@@ -25,18 +24,7 @@ Instead, let them appear just like regular ones.
 +      {
 +        "0",
 +      }
-+    },
-+#if 0
-     // AC Camerfirma S.A. Chambers of Commerce Root - 2008
-     // https://www.camerfirma.com
-     {
-@@ -590,7 +600,9 @@ static const EVMetadata kEvRootCaMetadat
-           0xd2, 0x09, 0xb7, 0x37, 0xcb, 0xe2, 0xc1, 0x8c, 0xfb, 0x2c, 0x10,
-           0xc0, 0xff, 0x0b, 0xcf, 0x0d, 0x32, 0x86, 0xfc, 0x1a, 0xa2}},
-         {"2.16.840.1.114404.1.1.2.4.1", ""},
--    }};
 +    }
-+#endif
 +};
  
  #endif  // defined(PLATFORM_USES_CHROMIUM_EV_METADATA)

+ 3 - 7
patches/extra/iridium-browser/browser-disable-profile-auto-import-on-first-run.patch

@@ -3,18 +3,14 @@ From: Joachim Bauch <jojo@struktur.de>
 Date: Thu, 25 Jun 2015 15:51:59 +0200
 Subject: [PATCH 56/66] browser: disable profile auto-import on first run
 
----
- chrome/browser/chrome_browser_main.cc | 2 --
- 1 file changed, 2 deletions(-)
-
 --- a/chrome/browser/chrome_browser_main.cc
 +++ b/chrome/browser/chrome_browser_main.cc
-@@ -1490,8 +1490,6 @@ int ChromeBrowserMainParts::PreMainMessa
+@@ -1559,8 +1559,6 @@ int ChromeBrowserMainParts::PreMainMessa
    // and preferences have been registered since some of the import code depends
    // on preferences.
    if (first_run::IsChromeFirstRun()) {
--    first_run::AutoImport(profile_, master_prefs_->import_bookmarks_path);
+-    first_run::AutoImport(profile, master_prefs_->import_bookmarks_path);
 -
      // Note: This can pop-up the first run consent dialog on Linux & Mac.
-     first_run::DoPostImportTasks(profile_,
+     first_run::DoPostImportTasks(profile,
                                   master_prefs_->make_chrome_default_for_user);

+ 6 - 6
patches/extra/ungoogled-chromium/add-flag-for-close-confirmation.patch

@@ -1,6 +1,6 @@
 --- a/chrome/browser/ui/browser.cc
 +++ b/chrome/browser/ui/browser.cc
-@@ -140,6 +140,8 @@
+@@ -139,6 +139,8 @@
  #include "chrome/browser/ui/tabs/tab_strip_model.h"
  #include "chrome/browser/ui/tabs/tab_utils.h"
  #include "chrome/browser/ui/ui_features.h"
@@ -9,7 +9,7 @@
  #include "chrome/browser/ui/web_applications/app_browser_controller.h"
  #include "chrome/browser/ui/web_applications/web_app_launch_utils.h"
  #include "chrome/browser/ui/webui/signin/login_ui_service.h"
-@@ -464,6 +466,7 @@ Browser::Browser(const CreateParams& par
+@@ -462,6 +464,7 @@ Browser::Browser(const CreateParams& par
        omit_from_session_restore_(params.omit_from_session_restore),
        should_trigger_session_restore_(params.should_trigger_session_restore),
        cancel_download_confirmation_state_(NOT_PROMPTED),
@@ -17,7 +17,7 @@
        override_bounds_(params.initial_bounds),
        initial_show_state_(params.initial_show_state),
        initial_workspace_(params.initial_workspace),
-@@ -831,7 +834,7 @@ Browser::WarnBeforeClosingResult Browser
+@@ -829,7 +832,7 @@ Browser::WarnBeforeClosingResult Browser
    // If the browser can close right away (there are no pending downloads we need
    // to prompt about) then there's no need to warn. In the future, we might need
    // to check other conditions as well.
@@ -26,7 +26,7 @@
      return WarnBeforeClosingResult::kOkToClose;
  
    DCHECK(!warn_before_closing_callback_)
-@@ -861,6 +864,7 @@ bool Browser::TryToCloseWindow(
+@@ -859,6 +862,7 @@ bool Browser::TryToCloseWindow(
  
  void Browser::ResetTryToCloseWindow() {
    cancel_download_confirmation_state_ = NOT_PROMPTED;
@@ -34,7 +34,7 @@
    unload_controller_.ResetTryToCloseWindow();
  }
  
-@@ -2684,6 +2688,62 @@ bool Browser::CanCloseWithInProgressDown
+@@ -2682,6 +2686,62 @@ bool Browser::CanCloseWithInProgressDown
    return false;
  }
  
@@ -97,7 +97,7 @@
  void Browser::InProgressDownloadResponse(bool cancel_downloads) {
    if (cancel_downloads) {
      cancel_download_confirmation_state_ = RESPONSE_RECEIVED;
-@@ -2702,6 +2762,22 @@ void Browser::InProgressDownloadResponse
+@@ -2700,6 +2760,22 @@ void Browser::InProgressDownloadResponse
  
    std::move(warn_before_closing_callback_)
        .Run(WarnBeforeClosingResult::kDoNotClose);

+ 1 - 1
patches/extra/ungoogled-chromium/add-flag-for-custom-ntp.patch

@@ -1,6 +1,6 @@
 --- a/chrome/browser/chrome_content_browser_client.cc
 +++ b/chrome/browser/chrome_content_browser_client.cc
-@@ -758,6 +758,9 @@ bool HandleNewTabPageLocationOverride(
+@@ -762,6 +762,9 @@ bool HandleNewTabPageLocationOverride(
    Profile* profile = Profile::FromBrowserContext(browser_context);
    std::string ntp_location =
        profile->GetPrefs()->GetString(prefs::kNewTabPageLocationOverride);

+ 1 - 1
patches/extra/ungoogled-chromium/add-flag-for-omnibox-autocomplete-filtering.patch

@@ -60,7 +60,7 @@
    if (provider_types & AutocompleteProvider::TYPE_BUILTIN)
 --- a/components/omnibox/browser/history_url_provider.cc
 +++ b/components/omnibox/browser/history_url_provider.cc
-@@ -552,6 +552,9 @@ void HistoryURLProvider::Start(const Aut
+@@ -472,6 +472,9 @@ void HistoryURLProvider::Start(const Aut
    if (fixed_up_input.type() != metrics::OmniboxInputType::QUERY)
      matches_.push_back(what_you_typed_match);
  

+ 5 - 5
patches/extra/ungoogled-chromium/add-flag-for-pdf-plugin-name.patch

@@ -1,6 +1,6 @@
 --- a/chrome/browser/chrome_content_browser_client.cc
 +++ b/chrome/browser/chrome_content_browser_client.cc
-@@ -6053,7 +6053,7 @@ bool ChromeContentBrowserClient::ShouldA
+@@ -6079,7 +6079,7 @@ bool ChromeContentBrowserClient::ShouldA
      const url::Origin& embedder_origin,
      const content::PepperPluginInfo& plugin_info) {
  #if BUILDFLAG(ENABLE_PDF)
@@ -251,7 +251,7 @@
  #endif  // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_
 --- a/chrome/common/BUILD.gn
 +++ b/chrome/common/BUILD.gn
-@@ -248,6 +248,7 @@ static_library("common") {
+@@ -247,6 +247,7 @@ static_library("common") {
      "//components/no_state_prefetch/common",
      "//components/no_state_prefetch/common:mojo_bindings",
      "//components/page_load_metrics/common:common",
@@ -360,7 +360,7 @@
      FILE_PATH_LITERAL("internal-pdf-viewer");
 --- a/chrome/renderer/chrome_content_renderer_client.cc
 +++ b/chrome/renderer/chrome_content_renderer_client.cc
-@@ -1038,7 +1038,7 @@ WebPlugin* ChromeContentRendererClient::
+@@ -1041,7 +1041,7 @@ WebPlugin* ChromeContentRendererClient::
              }
            }
          } else if (info.name ==
@@ -369,7 +369,7 @@
            // Report PDF load metrics. Since the PDF plugin is comprised of an
            // extension that loads a second plugin, avoid double counting by
            // ignoring the creation of the second plugin.
-@@ -1070,7 +1070,7 @@ WebPlugin* ChromeContentRendererClient::
+@@ -1073,7 +1073,7 @@ WebPlugin* ChromeContentRendererClient::
  
  #if BUILDFLAG(ENABLE_PDF)
          if (info.name ==
@@ -378,7 +378,7 @@
            return pdf::CreateInternalPlugin(
                info, std::move(params), render_frame,
                std::make_unique<ChromePdfInternalPluginDelegate>());
-@@ -1083,7 +1083,7 @@ WebPlugin* ChromeContentRendererClient::
+@@ -1086,7 +1086,7 @@ WebPlugin* ChromeContentRendererClient::
          PluginUMAReporter::GetInstance()->ReportPluginDisabled(orig_mime_type,
                                                                 url);
          if (info.name ==

+ 1 - 1
patches/extra/ungoogled-chromium/add-flag-for-qr-generator.patch

@@ -27,7 +27,7 @@
    return true;
 --- a/chrome/browser/ui/views/location_bar/location_bar_view.cc
 +++ b/chrome/browser/ui/views/location_bar/location_bar_view.cc
-@@ -297,7 +297,8 @@ void LocationBarView::Init() {
+@@ -292,7 +292,8 @@ void LocationBarView::Init() {
      // the left most icon.
      params.types_enabled.push_back(PageActionIconType::kSendTabToSelf);
      params.types_enabled.push_back(PageActionIconType::kClickToCall);

+ 6 - 6
patches/extra/ungoogled-chromium/add-flag-for-search-engine-collection.patch

@@ -25,7 +25,7 @@
    if (!command_line.HasSwitch(switches::kDisableClientSidePhishingDetection))
      SetClientSidePhishingDetection();
  #endif
-@@ -201,14 +202,16 @@ void ChromeRenderFrameObserver::DidFinis
+@@ -200,14 +201,16 @@ void ChromeRenderFrameObserver::DidFinis
    if (frame->Parent())
      return;
  
@@ -70,7 +70,7 @@
  #include "base/containers/contains.h"
  #include "base/debug/crash_logging.h"
  #include "base/format_macros.h"
-@@ -198,6 +199,12 @@ bool IsCreatedByExtension(const Template
+@@ -199,6 +200,12 @@ bool IsCreatedByExtension(const Template
           template_url->type() == TemplateURL::OMNIBOX_API_EXTENSION;
  }
  
@@ -83,7 +83,7 @@
  }  // namespace
  
  // TemplateURLService::LessWithPrefix -----------------------------------------
-@@ -283,6 +290,7 @@ TemplateURLService::TemplateURLService(
+@@ -284,6 +291,7 @@ TemplateURLService::TemplateURLService(
      std::unique_ptr<TemplateURLServiceClient> client,
      const base::RepeatingClosure& dsp_change_callback)
      : prefs_(prefs),
@@ -91,7 +91,7 @@
        search_terms_data_(std::move(search_terms_data)),
        web_data_service_(web_data_service),
        client_(std::move(client)),
-@@ -364,8 +372,8 @@ bool TemplateURLService::CanAddAutogener
+@@ -365,8 +373,8 @@ bool TemplateURLService::CanAddAutogener
    // that may interfere with search queries).  An easy heuristic for this is
    // whether the user has a TemplateURL that has been manually modified (e.g.,
    // renamed) connected to the same host.
@@ -102,7 +102,7 @@
  }
  
  bool TemplateURLService::IsPrepopulatedOrCreatedByPolicy(
-@@ -1501,6 +1509,8 @@ SyncDataMap TemplateURLService::CreateGU
+@@ -1502,6 +1510,8 @@ SyncDataMap TemplateURLService::CreateGU
  
  void TemplateURLService::Init(const Initializer* initializers,
                                int num_initializers) {
@@ -111,7 +111,7 @@
    if (client_)
      client_->SetOwner(this);
  
-@@ -1637,6 +1647,9 @@ void TemplateURLService::ChangeToLoadedS
+@@ -1638,6 +1648,9 @@ void TemplateURLService::ChangeToLoadedS
  
  bool TemplateURLService::CanAddAutogeneratedKeywordForHost(
      const std::string& host) const {

+ 1 - 1
patches/extra/ungoogled-chromium/add-flag-for-tab-hover-cards.patch

@@ -27,7 +27,7 @@
  #include "base/compiler_specific.h"
  #include "base/containers/adapters.h"
  #include "base/containers/contains.h"
-@@ -1846,6 +1847,8 @@ void TabStrip::OnMouseEventInTab(views::
+@@ -1842,6 +1843,8 @@ void TabStrip::OnMouseEventInTab(views::
  }
  
  void TabStrip::UpdateHoverCard(Tab* tab, HoverCardUpdateType update_type) {

+ 1 - 1
patches/extra/ungoogled-chromium/add-flag-for-tabsearch-button.patch

@@ -1,6 +1,6 @@
 --- a/chrome/browser/ui/browser_command_controller.cc
 +++ b/chrome/browser/ui/browser_command_controller.cc
-@@ -1153,7 +1153,8 @@ void BrowserCommandController::InitComma
+@@ -1152,7 +1152,8 @@ void BrowserCommandController::InitComma
    command_updater_.UpdateCommandEnabled(IDC_WINDOW_CLOSE_OTHER_TABS,
                                          normal_window);
  

+ 3 - 3
patches/extra/ungoogled-chromium/add-flag-to-clear-data-on-exit.patch

@@ -8,7 +8,7 @@
  #include "components/browsing_data/core/pref_names.h"
  #include "components/keep_alive_registry/keep_alive_types.h"
  #include "components/keep_alive_registry/scoped_keep_alive.h"
-@@ -152,6 +153,21 @@ class BrowsingDataRemoverObserver
+@@ -153,6 +154,21 @@ class BrowsingDataRemoverObserver
  #endif
  };
  
@@ -30,7 +30,7 @@
  uint64_t GetOriginTypeMask(const base::Value& data_types) {
    uint64_t result = 0;
    for (const auto& data_type : data_types.GetList()) {
-@@ -293,8 +309,9 @@ void ChromeBrowsingDataLifetimeManager::
+@@ -295,8 +311,9 @@ void ChromeBrowsingDataLifetimeManager::
      bool keep_browser_alive) {
    auto* data_types = profile_->GetPrefs()->GetList(
        browsing_data::prefs::kClearBrowsingDataOnExitList);
@@ -42,7 +42,7 @@
      profile_->GetPrefs()->SetBoolean(
          browsing_data::prefs::kClearBrowsingDataOnExitDeletionPending, true);
      auto* remover = profile_->GetBrowsingDataRemover();
-@@ -305,8 +322,8 @@ void ChromeBrowsingDataLifetimeManager::
+@@ -307,8 +324,8 @@ void ChromeBrowsingDataLifetimeManager::
        DCHECK(keep_browser_alive);
  #endif
      remover->RemoveAndReply(base::Time(), base::Time::Max(),

+ 1 - 1
patches/extra/ungoogled-chromium/add-flag-to-close-window-with-last-tab.patch

@@ -8,7 +8,7 @@
  #include "base/containers/flat_map.h"
  #include "base/cxx17_backports.h"
  #include "base/memory/raw_ptr.h"
-@@ -1765,6 +1766,10 @@ bool TabStripModel::CloseTabs(base::span
+@@ -1766,6 +1767,10 @@ bool TabStripModel::CloseTabs(base::span
    if (items.empty())
      return true;
  

+ 1 - 1
patches/extra/ungoogled-chromium/add-flag-to-configure-extension-downloading.patch

@@ -50,7 +50,7 @@
  bool IsExtensionDownload(const download::DownloadItem& download_item);
 --- a/chrome/browser/download/download_target_determiner.cc
 +++ b/chrome/browser/download/download_target_determiner.cc
-@@ -1059,10 +1059,12 @@ DownloadConfirmationReason DownloadTarge
+@@ -1060,10 +1060,12 @@ DownloadConfirmationReason DownloadTarge
      return DownloadConfirmationReason::SAVE_AS;
  
  #if BUILDFLAG(ENABLE_EXTENSIONS)

+ 1 - 1
patches/extra/ungoogled-chromium/add-flag-to-convert-popups-to-tabs.patch

@@ -13,7 +13,7 @@
  #endif  // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_
 --- a/content/renderer/render_view_impl.cc
 +++ b/content/renderer/render_view_impl.cc
-@@ -73,6 +73,8 @@ WindowOpenDisposition RenderViewImpl::Na
+@@ -74,6 +74,8 @@ WindowOpenDisposition RenderViewImpl::Na
      case blink::kWebNavigationPolicyNewWindow:
        return WindowOpenDisposition::NEW_WINDOW;
      case blink::kWebNavigationPolicyNewPopup:

+ 1 - 1
patches/extra/ungoogled-chromium/add-flag-to-force-punycode-hostnames.patch

@@ -21,7 +21,7 @@
  #include "base/lazy_instance.h"
  #include "base/memory/raw_ptr.h"
  #include "base/numerics/safe_conversions.h"
-@@ -268,6 +269,13 @@ IDNConversionResult IDNToUnicodeWithAdju
+@@ -270,6 +271,13 @@ IDNConversionResult IDNToUnicodeWithAdju
    host16.reserve(host.length());
    host16.insert(host16.end(), host.begin(), host.end());
  

+ 1 - 1
patches/extra/ungoogled-chromium/add-flag-to-scroll-tabs.patch

@@ -38,7 +38,7 @@
  
  BrowserRootView::~BrowserRootView() {
    // It's possible to destroy the browser while a drop is active.  In this case,
-@@ -243,7 +258,7 @@ bool BrowserRootView::OnMouseWheel(const
+@@ -247,7 +262,7 @@ bool BrowserRootView::OnMouseWheel(const
  
    // Scroll-event-changes-tab is incompatible with scrolling tabstrip, so
    // disable it if the latter feature is enabled.

+ 1 - 1
patches/extra/ungoogled-chromium/add-flag-to-show-avatar-button.patch

@@ -1,6 +1,6 @@
 --- a/chrome/browser/ui/views/toolbar/toolbar_view.cc
 +++ b/chrome/browser/ui/views/toolbar/toolbar_view.cc
-@@ -275,14 +275,30 @@ void ToolbarView::Init() {
+@@ -280,14 +280,30 @@ void ToolbarView::Init() {
  
    std::unique_ptr<ToolbarAccountIconContainerView>
        toolbar_account_icon_container;

+ 8 - 8
patches/extra/ungoogled-chromium/add-ipv6-probing-option.patch

@@ -13,9 +13,9 @@
  #endif  // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_
 --- a/net/base/features.cc
 +++ b/net/base/features.cc
-@@ -260,5 +260,7 @@ const base::Feature kFirstPartySetsV2Com
- const base::Feature kRecordRadioWakeupTrigger{
-     "RecordRadioWakeupTrigger", base::FEATURE_DISABLED_BY_DEFAULT};
+@@ -266,5 +266,7 @@ const base::Feature kSwitchWebSocketThro
+ const base::FeatureParam<int> kRollingAverageWindow{
+     &kSwitchWebSocketThroughputWindow, "RollingAverageWindow", 100};
  
 +const base::Feature kSetIpv6ProbeFalse{"SetIpv6ProbeFalse", base::FEATURE_DISABLED_BY_DEFAULT};
 +
@@ -23,9 +23,9 @@
  }  // namespace net
 --- a/net/base/features.h
 +++ b/net/base/features.h
-@@ -389,6 +389,8 @@ NET_EXPORT extern const base::Feature kF
- // Android.
- NET_EXPORT extern const base::Feature kRecordRadioWakeupTrigger;
+@@ -393,6 +393,8 @@ NET_EXPORT extern const base::FeaturePar
+ NET_EXPORT extern const base::Feature kSwitchWebSocketThroughputWindow;
+ NET_EXPORT extern const base::FeatureParam<int> kRollingAverageWindow;
  
 +NET_EXPORT extern const base::Feature kSetIpv6ProbeFalse;
 +
@@ -34,7 +34,7 @@
  
 --- a/net/dns/host_resolver_manager.cc
 +++ b/net/dns/host_resolver_manager.cc
-@@ -144,11 +144,6 @@ const unsigned kMinimumTTLSeconds = kCac
+@@ -147,11 +147,6 @@ const unsigned kMinimumTTLSeconds = kCac
  // cached.
  const int kIPv6ProbePeriodMs = 1000;
  
@@ -46,7 +46,7 @@
  enum DnsResolveStatus {
    RESOLVE_STATUS_DNS_SUCCESS = 0,
    RESOLVE_STATUS_PROC_SUCCESS,
-@@ -3727,7 +3722,7 @@ bool HostResolverManager::IsIPv6Reachabl
+@@ -3919,7 +3914,7 @@ bool HostResolverManager::IsIPv6Reachabl
        (tick_clock_->NowTicks() - last_ipv6_probe_time_).InMilliseconds() >
            kIPv6ProbePeriodMs) {
      SetLastIPv6ProbeResult(

+ 10 - 10
patches/extra/ungoogled-chromium/add-suggestions-url-field.patch

@@ -3,7 +3,7 @@
 
 --- a/chrome/browser/resources/settings/search_engines_page/search_engine_dialog.html
 +++ b/chrome/browser/resources/settings/search_engines_page/search_engine_dialog.html
-@@ -27,6 +27,13 @@
+@@ -20,6 +20,13 @@
              value="{{queryUrl_}}" on-focus="validate_" on-input="validate_"
              disabled$="[[model.urlLocked]]">
          </cr-input>
@@ -33,17 +33,17 @@
        queryUrl_: String,
 +      suggestionsUrl_: String,
        dialogTitle_: String,
+       keywordFieldLabel_: String,
        actionButtonText_: String,
- 
-@@ -70,6 +72,7 @@ export class SettingsSearchEngineDialogE
+@@ -71,6 +73,7 @@ export class SettingsSearchEngineDialogE
    private searchEngine_: string;
    private keyword_: string;
    private queryUrl_: string;
 +  private suggestionsUrl_: string;
    private dialogTitle_: string;
+   private keywordFieldLabel_: string;
    private actionButtonText_: string;
-   private browserProxy_: SearchEnginesBrowserProxy =
-@@ -100,6 +103,7 @@ export class SettingsSearchEngineDialogE
+@@ -102,6 +105,7 @@ export class SettingsSearchEngineDialogE
        this.searchEngine_ = this.model.name;
        this.keyword_ = this.model.keyword;
        this.queryUrl_ = this.model.url;
@@ -51,7 +51,7 @@
      } else {
        this.dialogTitle_ =
            loadTimeData.getString('searchEnginesAddSearchEngine');
-@@ -135,8 +139,12 @@ export class SettingsSearchEngineDialogE
+@@ -141,8 +145,12 @@ export class SettingsSearchEngineDialogE
        }
      }
  
@@ -66,7 +66,7 @@
    }
  
    private cancel_() {
-@@ -145,7 +153,8 @@ export class SettingsSearchEngineDialogE
+@@ -151,7 +159,8 @@ export class SettingsSearchEngineDialogE
  
    private onActionButtonTap_() {
      this.browserProxy_.searchEngineEditCompleted(
@@ -76,7 +76,7 @@
      this.$.dialog.close();
    }
  
-@@ -173,9 +182,11 @@ export class SettingsSearchEngineDialogE
+@@ -179,9 +188,11 @@ export class SettingsSearchEngineDialogE
  
    private updateActionButtonState_() {
      const allValid = [
@@ -425,7 +425,7 @@
  
 --- a/components/search_engines/template_url_service.cc
 +++ b/components/search_engines/template_url_service.cc
-@@ -642,7 +642,8 @@ void TemplateURLService::IncrementUsageC
+@@ -643,7 +643,8 @@ void TemplateURLService::IncrementUsageC
  void TemplateURLService::ResetTemplateURL(TemplateURL* url,
                                            const std::u16string& title,
                                            const std::u16string& keyword,
@@ -435,7 +435,7 @@
    DCHECK(!IsCreatedByExtension(url));
    DCHECK(!keyword.empty());
    DCHECK(!search_url.empty());
-@@ -657,6 +658,7 @@ void TemplateURLService::ResetTemplateUR
+@@ -658,6 +659,7 @@ void TemplateURLService::ResetTemplateUR
    data.safe_for_autoreplace = false;
    data.last_modified = clock_->Now();
    data.is_active = TemplateURLData::ActiveStatus::kTrue;

+ 1 - 1
patches/extra/ungoogled-chromium/add-ungoogled-flag-headers.patch

@@ -1,6 +1,6 @@
 --- a/chrome/browser/about_flags.cc
 +++ b/chrome/browser/about_flags.cc
-@@ -2647,7 +2647,13 @@ const FeatureEntry::FeatureVariation kSn
+@@ -2678,7 +2678,13 @@ const FeatureEntry::FeatureVariation kUs
  // calculate and verify checksum.
  //
  // When adding a new choice, add it to the end of the list.

+ 7 - 7
patches/extra/ungoogled-chromium/disable-dial-repeating-discovery.patch

@@ -3,23 +3,23 @@
 
 --- a/chrome/browser/media/router/discovery/dial/dial_registry.cc
 +++ b/chrome/browser/media/router/discovery/dial/dial_registry.cc
-@@ -190,10 +190,6 @@ void DialRegistry::StartPeriodicDiscover
+@@ -150,10 +150,6 @@ void DialRegistry::StartPeriodicDiscover
+     return;
  
    dial_ = CreateDialService();
-   dial_->AddObserver(this);
 -  DoDiscovery();
 -  repeating_timer_ = std::make_unique<base::RepeatingTimer>();
 -  repeating_timer_->Start(FROM_HERE, refresh_interval_delta_, this,
 -                          &DialRegistry::DoDiscovery);
- }
- 
- void DialRegistry::DoDiscovery() {
-@@ -207,8 +203,6 @@ void DialRegistry::StopPeriodicDiscovery
+   // Always send the current device list with the next discovery request.  This
+   // may not be necessary, but is done to match previous behavior.
+   ++registry_generation_;
+@@ -170,8 +166,6 @@ void DialRegistry::StopPeriodicDiscovery
    if (!dial_)
      return;
  
 -  repeating_timer_->Stop();
 -  repeating_timer_.reset();
-   dial_->RemoveObserver(this);
    ClearDialService();
  }
+ 

+ 9 - 9
patches/extra/ungoogled-chromium/disable-download-quarantine.patch

@@ -9,10 +9,10 @@
 -#include "components/services/quarantine/quarantine.h"
  #include "crypto/secure_hash.h"
  
- #if defined(OS_WIN)
+ #if BUILDFLAG(IS_WIN)
 @@ -529,105 +528,6 @@ DownloadInterruptReason BaseFile::Publis
  }
- #endif  // defined(OS_ANDROID)
+ #endif  // BUILDFLAG(IS_ANDROID)
  
 -namespace {
 -
@@ -102,14 +102,14 @@
 -
 -void BaseFile::OnQuarantineServiceError(const GURL& source_url,
 -                                        const GURL& referrer_url) {
--#if defined(OS_WIN)
+-#if BUILDFLAG(IS_WIN)
 -  if (base::FeatureList::IsEnabled(quarantine::kOutOfProcessQuarantine)) {
 -    OnFileQuarantined(/*connection_error=*/true,
 -                      quarantine::SetInternetZoneIdentifierDirectly(
 -                          full_path_, source_url, referrer_url));
 -    return;
 -  }
--#endif  // defined(OS_WIN)
+-#endif  // BUILDFLAG(IS_WIN)
 -
 -  CHECK(false) << "In-process quarantine service should not have failed.";
 -}
@@ -122,7 +122,7 @@
      OnAnnotationDoneCallback on_annotation_done_callback) {
 -  GURL authority_url = GetEffectiveAuthorityURL(source_url, referrer_url);
 -  if (!remote_quarantine) {
--#if defined(OS_WIN)
+-#if BUILDFLAG(IS_WIN)
 -    quarantine::mojom::QuarantineFileResult result =
 -        quarantine::SetInternetZoneIdentifierDirectly(full_path_, authority_url,
 -                                                      referrer_url);
@@ -153,7 +153,7 @@
  }  // namespace download
 --- a/content/browser/BUILD.gn
 +++ b/content/browser/BUILD.gn
-@@ -83,7 +83,6 @@ source_set("browser") {
+@@ -82,7 +82,6 @@ source_set("browser") {
      "//components/permissions:permissions_common",
      "//components/power_scheduler",
      "//components/services/filesystem:lib",
@@ -218,7 +218,7 @@
 -                           std::move(quarantine_remote)),
 -            quarantine::mojom::QuarantineFileResult::ANNOTATION_FAILED));
 -  } else {
--#if defined(OS_WIN)
+-#if BUILDFLAG(IS_WIN)
 -    base::ThreadPool::PostTaskAndReplyWithResult(
 -        FROM_HERE, {base::MayBlock()},
 -        base::BindOnce(&quarantine::SetInternetZoneIdentifierDirectly,
@@ -257,7 +257,7 @@
      ppapi::host::ReplyMessageContext reply_context,
      const base::FilePath& path,
      base::File::Error error_code) {
--#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_CHROMEOS)
+-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
 +#if 0
    // Quarantining a file before its contents are available is only supported on
    // Windows and Linux.
@@ -266,7 +266,7 @@
  #endif
  }
  
--#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_CHROMEOS)
+-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
 +#if 0
  void PepperFileIOHost::OnLocalFileQuarantined(
      ppapi::host::ReplyMessageContext reply_context,

+ 1 - 1
patches/extra/ungoogled-chromium/disable-formatting-in-omnibox.patch

@@ -2,7 +2,7 @@
 
 --- a/components/url_formatter/url_formatter.cc
 +++ b/components/url_formatter/url_formatter.cc
-@@ -467,14 +467,14 @@ ComponentResult IDNToUnicodeOneComponent
+@@ -492,14 +492,14 @@ bool HasTwoViewSourceSchemes(base::Strin
  }  // namespace
  
  const FormatUrlType kFormatUrlOmitNothing = 0;

+ 1 - 1
patches/extra/ungoogled-chromium/enable-page-saving-on-more-pages.patch

@@ -14,7 +14,7 @@
    }
    return content_restrictions;
  }
-@@ -1352,8 +1347,7 @@ bool CanSavePage(const Browser* browser)
+@@ -1351,8 +1346,7 @@ bool CanSavePage(const Browser* browser)
        DownloadPrefs::DownloadRestriction::ALL_FILES) {
      return false;
    }

+ 3 - 3
patches/extra/ungoogled-chromium/enable-paste-and-go-new-tab-button.patch

@@ -4,7 +4,7 @@
    SetAnimateOnStateChange(true);
  // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch
  // of lacros-chrome is complete.
--#if defined(OS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)
+-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)
    SetTriggerableEventFlags(GetTriggerableEventFlags() |
                             ui::EF_MIDDLE_MOUSE_BUTTON);
 -#endif
@@ -13,7 +13,7 @@
        AddChildView(std::make_unique<views::InkDropContainerView>());
 --- a/chrome/browser/ui/views/tabs/tab_strip.cc
 +++ b/chrome/browser/ui/views/tabs/tab_strip.cc
-@@ -2341,8 +2341,6 @@ void TabStrip::NewTabButtonPressed(const
+@@ -2334,8 +2334,6 @@ void TabStrip::NewTabButtonPressed(const
  
      const ui::MouseEvent& mouse = static_cast<const ui::MouseEvent&>(event);
      if (mouse.IsOnlyMiddleMouseButton()) {
@@ -22,7 +22,7 @@
          ui::Clipboard* clipboard = ui::Clipboard::GetForCurrentThread();
          CHECK(clipboard);
          std::u16string clipboard_text;
-@@ -2350,7 +2348,6 @@ void TabStrip::NewTabButtonPressed(const
+@@ -2343,7 +2341,6 @@ void TabStrip::NewTabButtonPressed(const
                              /* data_dst = */ nullptr, &clipboard_text);
          if (!clipboard_text.empty())
            controller_->CreateNewTabWithLocation(clipboard_text);

+ 2 - 2
patches/extra/ungoogled-chromium/remove-disable-setuid-sandbox-as-bad-flag.patch

@@ -2,11 +2,11 @@
 
 --- a/chrome/browser/ui/startup/bad_flags_prompt.cc
 +++ b/chrome/browser/ui/startup/bad_flags_prompt.cc
-@@ -61,7 +61,6 @@ static const char* kBadFlags[] = {
+@@ -59,7 +59,6 @@ static const char* kBadFlags[] = {
      // These flags disable sandbox-related security.
      sandbox::policy::switches::kDisableGpuSandbox,
      sandbox::policy::switches::kDisableSeccompFilterSandbox,
 -    sandbox::policy::switches::kDisableSetuidSandbox,
      sandbox::policy::switches::kNoSandbox,
- #if defined(OS_WIN)
+ #if BUILDFLAG(IS_WIN)
      sandbox::policy::switches::kAllowThirdPartyModules,

+ 11 - 11
patches/extra/ungoogled-chromium/remove-uneeded-ui.patch

@@ -36,7 +36,7 @@
              shownAppsCount_, shownExtensionsCount_, apps, extensions)]]">
 --- a/chrome/browser/resources/extensions/sidebar.html
 +++ b/chrome/browser/resources/extensions/sidebar.html
-@@ -69,12 +69,3 @@
+@@ -76,12 +76,3 @@
      <paper-ripple></paper-ripple>
    </a>
  </iron-selector>
@@ -124,20 +124,20 @@
 +          <div class="flex cr-padded-text">
 +            <div>$i18n{themes}</div><div class="secondary">[[themeSublabel_]]</div>
 +          </div>
- <if expr="not is_linux or chromeos or lacros">
+ <if expr="not is_linux or chromeos_ash or chromeos_lacros">
            <template is="dom-if" if="[[prefs.extensions.theme.id.value]]">
              <div class="separator"></div>
 --- a/chrome/browser/resources/settings/autofill_page/passwords_section.html
 +++ b/chrome/browser/resources/settings/autofill_page/passwords_section.html
-@@ -107,6 +107,7 @@
-         label="$i18n{trustedVaultOptInLabel}"
-         sub-label="$i18n{trustedVaultOptInSubLabel}">
-     </cr-link-row>
+@@ -102,6 +102,7 @@
+         label="$i18n{passwordsAutosigninLabel}"
+         sub-label="$i18n{passwordsAutosigninDescription}">
+     </settings-toggle-button>
 +<if expr="false">
      <div id="checkPasswordsBannerContainer" class="cr-row"
          hidden$="[[!shouldShowBanner_]]">
        <picture>
-@@ -155,6 +156,7 @@
+@@ -156,6 +157,7 @@
        <!-- This div lays out the link correctly, relative to the text. -->
        <div class="cr-padded-text">$i18nRaw{managePasswordsLabel}</div>
      </div>
@@ -162,9 +162,9 @@
 --- a/chrome/browser/resources/settings/basic_page/basic_page.html
 +++ b/chrome/browser/resources/settings/basic_page/basic_page.html
 @@ -59,7 +59,7 @@
-             <settings-privacy-review-promo></settings-privacy-review-promo>
-           </settings-section>
-         </template>
+               prefs="{{prefs}}">
+           </settings-privacy-review-promo>
+         </settings-section>
 -        <template is="dom-if" if="[[showPage_(pageVisibility.safetyCheck)]]"
 +        <template is="dom-if" if="[[false]]"
              restamp>
@@ -243,7 +243,7 @@
    Profile* profile = browser()->profile();
    if (profile->IsOffTheRecord() || profile->IsGuestSession())
      return gfx::ImageSkia();
-@@ -457,8 +458,7 @@ void ProfileMenuView::BuildIdentity() {
+@@ -456,8 +457,7 @@ void ProfileMenuView::BuildIdentity() {
          menu_subtitle_);
    } else {
      menu_title_ = std::u16string();

+ 53 - 3
pruning.list

@@ -73,7 +73,7 @@ chrome/browser/resources/chromeos/accessibility/select_to_speak/earcons/null_sel
 chrome/browser/resources/media/mei_preload/preloaded_data.pb
 chrome/browser/ui/app_list/search/search_result_ranker/20190722_example_preprocessor_config.pb
 chrome/browser/ui/app_list/search/search_result_ranker/search_ranker_assets/20190923_example_preprocessor_config.pb
-chrome/build/pgo_profiles/chrome-linux-4758-1643195016-f5cfe4c93eff056f51290a33e603a214804dbd80.profdata
+chrome/build/pgo_profiles/chrome-linux-4844-1645552565-e55b1e0f9c604e7a16b316895229d42433e3ef9a.profdata
 chrome/chrome_cleaner/parsers/shortcut_parser/target/data/lnk_parser_fuzzer/Network Share Test.lnk
 chrome/chrome_cleaner/parsers/shortcut_parser/target/data/lnk_parser_fuzzer/New folder - Shortcut.lnk
 chrome/chrome_cleaner/parsers/shortcut_parser/target/data/lnk_parser_fuzzer/long_name.lnk
@@ -85,6 +85,7 @@ chrome/credential_provider/eventlog/gcp_eventlog_messages.mc
 chrome/installer/linux/debian/repo_signing_keys.gpg
 chrome/installer/test/data/SETUP.EX_
 chrome/services/cups_proxy/test/data/basic_handshake.bin
+chrome/test/media_router/resources/bigbuck.webm
 chrome/updater/test/data/selfupdate_test_key.der
 chrome/updater/test/data/signed.exe
 chrome/updater/test/data/signed.exe.gz
@@ -180,6 +181,7 @@ components/test/data/ad_tagging/allow.zip
 components/test/data/ad_tagging/bear-320x240-video-only.webm
 components/test/data/ad_tagging/disallow.zip
 components/test/data/autofill/automated_integration/testdata/Default/Web Data
+components/test/data/autofill_assistant/model/model.tflite
 components/test/data/cast_certificate/testsuite/testsuite1.pb
 components/test/data/crx_file/sample.zip
 components/test/data/crx_file/unsigned.crx3
@@ -1229,6 +1231,7 @@ net/data/ssl/certificates/multi-root-crlset-E.raw
 net/data/ssl/certificates/multi-root-crlset-unrelated.raw
 net/data/ssl/certificates/multi-root.keychain
 net/data/ssl/certificates/nist.der
+net/data/ssl/certificates/quic-ecdsa-leaf.key
 net/data/ssl/certificates/quic-leaf-cert.key
 net/data/ssl/certificates/quic-leaf-cert.key.sct
 net/data/ssl/certificates/treadclimber.sctlist
@@ -11007,6 +11010,7 @@ third_party/harfbuzz-ng/src/test/fuzzing/fonts/clusterfuzz-testcase-minimized-hb
 third_party/harfbuzz-ng/src/test/fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5169035432165376
 third_party/harfbuzz-ng/src/test/fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5179935334465536
 third_party/harfbuzz-ng/src/test/fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5181909018345472
+third_party/harfbuzz-ng/src/test/fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5205038086094848
 third_party/harfbuzz-ng/src/test/fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5206191479455744
 third_party/harfbuzz-ng/src/test/fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5229304507138048
 third_party/harfbuzz-ng/src/test/fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5241922561114112
@@ -11022,6 +11026,7 @@ third_party/harfbuzz-ng/src/test/fuzzing/fonts/clusterfuzz-testcase-minimized-hb
 third_party/harfbuzz-ng/src/test/fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5521982557782016
 third_party/harfbuzz-ng/src/test/fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5522792714993664
 third_party/harfbuzz-ng/src/test/fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5542653037903872
+third_party/harfbuzz-ng/src/test/fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5549945449480192
 third_party/harfbuzz-ng/src/test/fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5609112151916544
 third_party/harfbuzz-ng/src/test/fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5609911946838016
 third_party/harfbuzz-ng/src/test/fuzzing/fonts/clusterfuzz-testcase-minimized-hb-subset-fuzzer-5616763250278400
@@ -12137,6 +12142,7 @@ third_party/libaom/fuzz/av1_dec_fuzzer_corpus/soccer_cif_20f_q32_bd10.ivf
 third_party/libaom/fuzz/av1_dec_fuzzer_corpus/soccer_cif_20f_q48.ivf
 third_party/libaom/fuzz/av1_dec_fuzzer_corpus/soccer_cif_20f_q48_bd10.ivf
 third_party/libaom/fuzz/av1_dec_fuzzer_corpus/test-25fps.av1.ivf
+third_party/libavif/src/android_jni/gradle/wrapper/gradle-wrapper.jar
 third_party/libavif/src/tests/data/cosmos1650_yuv444_10bpc_p3pq.y4m
 third_party/libavif/src/tests/data/kodim03_yuv420_8bpc.y4m
 third_party/libavif/src/tests/data/kodim23_yuv420_8bpc.y4m
@@ -14493,6 +14499,10 @@ third_party/llvm/lldb/test/API/functionalities/object-file/bin/hello-ubuntu-14.0
 third_party/llvm/lldb/test/API/functionalities/object-file/bin/hello-ubuntu-14.04-x86_64-gcc-4.8.2
 third_party/llvm/lldb/test/API/functionalities/object-file/bin/hello-unknown-kalimba_arch4-kcc-36
 third_party/llvm/lldb/test/API/functionalities/object-file/bin/hello-unknown-kalimba_arch5-kcc-39
+third_party/llvm/lldb/test/API/functionalities/postmortem/FreeBSDKernel/vmcore-amd64-full.bz2
+third_party/llvm/lldb/test/API/functionalities/postmortem/FreeBSDKernel/vmcore-amd64-minidump.bz2
+third_party/llvm/lldb/test/API/functionalities/postmortem/FreeBSDKernel/vmcore-arm64-minidump.bz2
+third_party/llvm/lldb/test/API/functionalities/postmortem/FreeBSDKernel/vmcore-i386-minidump.bz2
 third_party/llvm/lldb/test/API/functionalities/postmortem/elf-core/altmain.core
 third_party/llvm/lldb/test/API/functionalities/postmortem/elf-core/altmain.out
 third_party/llvm/lldb/test/API/functionalities/postmortem/elf-core/gcore/linux-i386.core
@@ -15122,6 +15132,7 @@ third_party/llvm/llvm/test/tools/dsymutil/Inputs/global_downgraded_to_static/1.o
 third_party/llvm/llvm/test/tools/dsymutil/Inputs/global_downgraded_to_static/1.r.o
 third_party/llvm/llvm/test/tools/dsymutil/Inputs/global_downgraded_to_static/2.o
 third_party/llvm/llvm/test/tools/dsymutil/Inputs/inlined-low_pc/1.o
+third_party/llvm/llvm/test/tools/dsymutil/Inputs/inlined-static-variable/4.o
 third_party/llvm/llvm/test/tools/dsymutil/Inputs/invalid.o
 third_party/llvm/llvm/test/tools/dsymutil/Inputs/label.o
 third_party/llvm/llvm/test/tools/dsymutil/Inputs/lc_build_version.x86_64
@@ -15608,6 +15619,7 @@ third_party/llvm/llvm/test/tools/llvm-profdata/Inputs/unknown.section.compressed
 third_party/llvm/llvm/test/tools/llvm-profdata/Inputs/unknown.section.extbin.profdata
 third_party/llvm/llvm/test/tools/llvm-profdata/Inputs/weight-instr-bar.profdata
 third_party/llvm/llvm/test/tools/llvm-profdata/Inputs/weight-instr-foo.profdata
+third_party/llvm/llvm/test/tools/llvm-profgen/Inputs/callback-external-addr.perfbin
 third_party/llvm/llvm/test/tools/llvm-profgen/Inputs/coroutine.perfbin
 third_party/llvm/llvm/test/tools/llvm-profgen/Inputs/cs-preinline-cost.perfbin
 third_party/llvm/llvm/test/tools/llvm-profgen/Inputs/fs-discriminator.perfbin
@@ -16107,12 +16119,12 @@ third_party/pdfium/testing/resources/pixel/xfa_specific/bug_1258_1.in
 third_party/pdfium/testing/resources/pixel/xfa_specific/bug_1258_2.in
 third_party/pdfium/testing/resources/pixel/xfa_specific/bug_1258_3.in
 third_party/pdfium/third_party/NotoSansCJK/NotoSansSC-Regular.subset.otf
+third_party/perfetto/python/perfetto/trace_processor/metrics.descriptor
+third_party/perfetto/python/perfetto/trace_processor/trace_processor.descriptor
 third_party/perfetto/src/ipc/buffered_frame_deserializer_fuzzer_corpus/two_valid_frames
 third_party/perfetto/src/profiling/memory/shared_ring_buffer_fuzzer_corpus/empty
 third_party/perfetto/src/profiling/memory/shared_ring_buffer_fuzzer_corpus/overflow
 third_party/perfetto/src/profiling/memory/shared_ring_buffer_fuzzer_corpus/read
-third_party/perfetto/src/trace_processor/python/perfetto/trace_processor/metrics.descriptor
-third_party/perfetto/src/trace_processor/python/perfetto/trace_processor/trace_processor.descriptor
 third_party/perfetto/src/traced/probes/ftrace/cpu_reader_fuzzer_corpus/one_page_sched_switch
 third_party/private_membership/src/internal/testing/regression_test_data/cros_test_data.binarypb
 third_party/protobuf/benchmarks/datasets/google_message1/proto2/dataset.google_message1_proto2.pb
@@ -16752,6 +16764,8 @@ third_party/tflite/src/tensorflow/python/feature_column/testdata/embedding.ckpt.
 third_party/tflite/src/tensorflow/python/feature_column/testdata/unicode_vocabulary.tfrecord.gz
 third_party/tflite/src/tensorflow/python/feature_column/testdata/warriors_vocabulary.tfrecord.gz
 third_party/tflite/src/tensorflow/python/feature_column/testdata/wire_vocabulary.tfrecord.gz
+third_party/tflite/src/tensorflow/tools/tfg_graph_transforms/tests/savedmodel_v1/saved_model.pb
+third_party/tflite/src/tensorflow/tools/tfg_graph_transforms/tests/savedmodel_v2/saved_model.pb
 third_party/tflite/src/third_party/icu/data/icu_conversion_data.c.gz.aa
 third_party/tflite/src/third_party/icu/data/icu_conversion_data.c.gz.ab
 third_party/tflite/src/third_party/icu/data/icu_conversion_data.c.gz.ac
@@ -16761,12 +16775,47 @@ third_party/tflite/src/third_party/icu/data/icu_conversion_data.c.gz.af
 third_party/tflite/src/third_party/icu/data/icu_conversion_data.c.gz.ag
 third_party/tflite/src/third_party/icu/data/icu_conversion_data.c.gz.ah
 third_party/tflite/src/third_party/icu/data/icu_conversion_data.c.gz.aj
+third_party/tflite_support/src/tensorflow_lite_support/acceleration/configuration/testdata/mobilenet_v1_1.0_224_quant.tflite
+third_party/tflite_support/src/tensorflow_lite_support/acceleration/configuration/testdata/mobilenet_v1_1.0_224_quant_edgetpu.tflite
+third_party/tflite_support/src/tensorflow_lite_support/cc/test/testdata/task/text/test_model_nl_classifier.tflite
+third_party/tflite_support/src/tensorflow_lite_support/cc/test/testdata/task/text/test_model_nl_classifier_bool_output.tflite
+third_party/tflite_support/src/tensorflow_lite_support/cc/test/testdata/task/text/test_model_nl_classifier_with_associated_label.tflite
+third_party/tflite_support/src/tensorflow_lite_support/cc/test/testdata/task/text/test_model_nl_classifier_with_associated_label_builtin_ops.tflite
+third_party/tflite_support/src/tensorflow_lite_support/cc/test/testdata/task/text/test_model_nl_classifier_with_regex_tokenizer.tflite
+third_party/tflite_support/src/tensorflow_lite_support/cc/test/testdata/task/vision/automl_labeler_model.tflite
+third_party/tflite_support/src/tensorflow_lite_support/cc/test/testdata/task/vision/coco_efficientdet_lite0_v1_1.0_quant_2021_09_06.tflite
+third_party/tflite_support/src/tensorflow_lite_support/cc/test/testdata/task/vision/coco_ssd_mobilenet_v1_1.0_quant_2018_06_29.tflite
+third_party/tflite_support/src/tensorflow_lite_support/cc/test/testdata/task/vision/coco_ssd_mobilenet_v1_1.0_quant_2018_06_29_score_calibration.tflite
+third_party/tflite_support/src/tensorflow_lite_support/cc/test/testdata/task/vision/deeplabv3.tflite
+third_party/tflite_support/src/tensorflow_lite_support/cc/test/testdata/task/vision/dilated_conv.tflite
+third_party/tflite_support/src/tensorflow_lite_support/cc/test/testdata/task/vision/mobilenet_v1_0.25_224_1_default_1.tflite
+third_party/tflite_support/src/tensorflow_lite_support/cc/test/testdata/task/vision/mobilenet_v1_0.25_224_1_metadata_1.tflite
+third_party/tflite_support/src/tensorflow_lite_support/cc/test/testdata/task/vision/mobilenet_v1_0.25_224_quant.tflite
+third_party/tflite_support/src/tensorflow_lite_support/cc/test/testdata/task/vision/mobilenet_v1_0.25_224_quant_without_subgraph_metadata.tflite
+third_party/tflite_support/src/tensorflow_lite_support/cc/test/testdata/task/vision/mobilenet_v2_1.0_224.tflite
+third_party/tflite_support/src/tensorflow_lite_support/cc/test/testdata/task/vision/mobilenet_v2_1.0_224_without_labels.tflite
+third_party/tflite_support/src/tensorflow_lite_support/cc/test/testdata/task/vision/mobilenet_v3_small_100_224_embedder.tflite
 third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/sentencepiece/testdata/sentencepiece.model
 third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/testdata/whitespace_tokenizer_flex_delegate.tflite
 third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/testdata/whitespace_tokenizer_to_ragged_1d_input.tflite
 third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/testdata/whitespace_tokenizer_to_ragged_2d_input.tflite
 third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/testdata/whitespace_tokenizer_to_tensor.tflite
 third_party/tflite_support/src/tensorflow_lite_support/custom_ops/testdata/sentencepiece_tokenizer_flex_op.tflite
+third_party/tflite_support/src/tensorflow_lite_support/custom_ops/testdata/wiki40b-lm-en.tflite
+third_party/tflite_support/src/tensorflow_lite_support/metadata/java/src/javatests/org/tensorflow/lite/support/assets/mobilenet_v1_1.0_224_quant.tflite
+third_party/tflite_support/src/tensorflow_lite_support/metadata/python/tests/testdata/audio_classifier/two_heads.tflite
+third_party/tflite_support/src/tensorflow_lite_support/metadata/python/tests/testdata/audio_classifier/yamnet_tfhub.tflite
+third_party/tflite_support/src/tensorflow_lite_support/metadata/python/tests/testdata/audio_classifier/yamnet_wavin_quantized_mel_relu6.tflite
+third_party/tflite_support/src/tensorflow_lite_support/metadata/python/tests/testdata/audio_embedder/yamnet_embedding.tflite
+third_party/tflite_support/src/tensorflow_lite_support/metadata/python/tests/testdata/image_classifier/mobilenet_v2_1.0_224.tflite
+third_party/tflite_support/src/tensorflow_lite_support/metadata/python/tests/testdata/image_classifier/mobilenet_v2_1.0_224_quant.tflite
+third_party/tflite_support/src/tensorflow_lite_support/metadata/python/tests/testdata/image_segmenter/deeplabv3.tflite
+third_party/tflite_support/src/tensorflow_lite_support/metadata/python/tests/testdata/mobilenet_v2_1.0_224_quant.tflite
+third_party/tflite_support/src/tensorflow_lite_support/metadata/python/tests/testdata/nl_classifier/movie_review.tflite
+third_party/tflite_support/src/tensorflow_lite_support/metadata/python/tests/testdata/object_detector/coco_ssd_mobilenet_v1_1.0_quant_2018_06_29_no_metadata.tflite
+third_party/tflite_support/src/tensorflow_lite_support/metadata/python/tests/testdata/object_detector/coco_ssd_mobilenet_v1_1.0_quant_2018_06_29_score_calibration.tflite
+third_party/tflite_support/src/tensorflow_lite_support/metadata/python/tests/testdata/object_detector/efficientdet_lite0_v1.tflite
+third_party/tflite_support/src/tensorflow_lite_support/metadata/python/tests/testdata/object_detector/ssd_mobilenet_v1.tflite
 third_party/usrsctp/usrsctplib/fuzzer/CORPUS_CONNECT/addip-000000
 third_party/usrsctp/usrsctplib/fuzzer/CORPUS_CONNECT/addip-000001
 third_party/usrsctp/usrsctplib/fuzzer/CORPUS_CONNECT/addip-000002
@@ -17447,6 +17496,7 @@ third_party/zlib/google/test/data/test.zip
 third_party/zlib/google/test/data/test_encrypted.zip
 third_party/zlib/google/test/data/test_mismatch_size.zip
 third_party/zlib/google/test/data/test_nocompress.zip
+third_party/zlib/google/test/data/test_posix_permissions.zip
 tools/android/elf_compression/test/testdata/lib.so
 tools/binary_size/libsupersize/testdata/mock_apk/assets/en-US.pak
 tools/binary_size/libsupersize/testdata/mock_apk/assets/resources.pak

部分文件因文件數量過多而無法顯示